.calendar-main{background:radial-gradient(circle at 85% -12%,rgba(217,164,65,.07),transparent 29%),#080908}.calendar-header>div:first-of-type>small{display:block;color:var(--primary);font-size:8px;letter-spacing:.2em;margin-bottom:5px}.calendar-content{padding:22px clamp(16px,2.5vw,40px) 60px;max-width:1650px;margin:auto}.calendar-toolbar{min-height:62px;display:flex;align-items:center;gap:18px;border:1px solid var(--ts-border-color);padding:0 15px;background:var(--ts-card-bg)}.calendar-toolbar>div:first-child{display:flex;align-items:center;gap:12px}.calendar-toolbar h2{font:600 22px var(--font-display);margin:0;min-width:190px;text-align:center}.calendar-toolbar a{color:#aaa;border:1px solid var(--ts-border-color);padding:8px 10px;font-size:9px}.calendar-toolbar a:hover{color:var(--primary);border-color:var(--primary)}.calendar-legend{margin-left:auto;display:flex;gap:13px}.calendar-legend span{font-size:8px;color:#888}.calendar-legend span:before{content:"";display:inline-block;width:7px;height:7px;margin-right:6px;background:#777}.calendar-legend .workout:before{background:var(--primary)}.calendar-legend .session:before{background:#5c8fcb}.calendar-legend .checkin:before{background:var(--success)}.calendar-legend .assessment:before{background:#aaa}.calendar-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:14px;margin-top:14px;align-items:start}.calendar-layout.with-form{grid-template-columns:minmax(700px,1fr) 320px}.month-calendar{border:1px solid var(--ts-border-color);background:#0b0c0b;overflow:hidden}.calendar-weekdays,.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr)}.calendar-weekdays{height:36px;align-items:center;color:#666;font-size:7px;letter-spacing:.12em;border-bottom:1px solid var(--ts-border-color)}.calendar-weekdays span{padding-left:10px}.calendar-day{min-height:122px;padding:7px;border-right:1px solid var(--ts-border-color);border-bottom:1px solid var(--ts-border-color);background:#0d0f0d}.calendar-day:nth-child(7n){border-right:0}.calendar-day.outside{opacity:.35;background:#090a09}.calendar-day>header{display:flex;align-items:center;justify-content:space-between;height:22px}.calendar-day>header>span{font:600 12px var(--font-display);color:#aaa}.calendar-day.today>header>span{display:grid;place-items:center;width:23px;height:23px;background:var(--primary);color:#111}.calendar-day header em{font-style:normal;font-size:6px;color:var(--primary);letter-spacing:.1em}.calendar-day>div{display:grid;gap:4px;margin-top:5px}.calendar-event{width:100%;min-width:0;display:grid;grid-template-columns:31px 1fr;text-align:left;padding:5px 6px;border:0;border-left:2px solid;background:#171916;color:#ddd;font-size:8px}.calendar-event time{color:#777}.calendar-event span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.calendar-event small{grid-column:2;color:#666;font-size:6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.calendar-event.workout{border-color:var(--primary);background:#d9a4410c}.calendar-event.session{border-color:#5c8fcb;background:#5c8fcb0c}.calendar-event.checkin{border-color:var(--success);background:#a6c35c0c}.calendar-event.assessment{border-color:#aaa}.calendar-event.blocked{border-color:var(--danger)}.calendar-form-panel{position:sticky;top:124px;border:1px solid var(--ts-border-color);background:var(--ts-card-bg)}.calendar-form-head{height:67px;padding:0 16px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--ts-border-color)}.calendar-form-head small{font-size:7px;color:var(--primary);letter-spacing:.14em}.calendar-form-head h2{font:600 20px var(--font-display);margin:3px 0 0}.calendar-form-head button{display:none;border:0;background:none;color:#777}.calendar-form-panel form{padding:14px 16px;display:grid;gap:11px}.calendar-form-panel label{display:grid;gap:6px;color:#777;font-size:7px;letter-spacing:.1em}.calendar-form-panel input,.calendar-form-panel select,.calendar-form-panel textarea{width:100%;background:#090a09;border:1px solid var(--ts-border-color);color:#ddd;padding:9px;outline:0;letter-spacing:0}.calendar-form-panel input,.calendar-form-panel select{height:39px}.calendar-form-panel input:focus,.calendar-form-panel select:focus,.calendar-form-panel textarea:focus{border-color:var(--primary)}.calendar-form-panel label>span{color:var(--danger);letter-spacing:0}.calendar-form-row{display:grid;grid-template-columns:1fr 1fr;gap:9px}.calendar-submit{width:100%;justify-content:space-between;margin-top:4px}
@media(max-width:1250px){.calendar-layout.with-form{grid-template-columns:1fr}.calendar-form-panel{position:static;display:none}.calendar-form-panel.open{display:block}.calendar-form-head button{display:block}.calendar-legend{display:none}}
@media(max-width:800px){.calendar-header>div:first-of-type>small,.calendar-header p{display:none}.calendar-header .btn-gold{width:42px;padding:0;justify-content:center;font-size:0}.calendar-header .btn-gold i{font-size:14px}.calendar-content{padding:12px 8px 50px}.calendar-toolbar{flex-wrap:wrap;padding:10px}.calendar-toolbar h2{font-size:18px;min-width:150px}.month-calendar{overflow-x:auto}.calendar-weekdays,.calendar-grid{min-width:820px}.calendar-day{min-height:105px}.calendar-form-panel{position:fixed;inset:70px 8px 8px;z-index:80;overflow:auto;box-shadow:0 20px 60px #000}}
.calendar-view-switch{display:flex;gap:6px}.calendar-view-switch a.active{background:var(--primary);border-color:var(--primary);color:#111}.calendar-day header a{border:0;padding:0;color:#aaa;font:600 12px var(--font-display)}.calendar-day.today header a{display:grid;place-items:center;width:23px;height:23px;background:var(--primary);color:#111}.day-calendar{border:1px solid var(--ts-border-color);background:#0b0c0b}.day-calendar-head{height:58px;display:flex;align-items:center;justify-content:space-between;padding:0 16px;border-bottom:1px solid var(--ts-border-color)}.day-calendar-head a{color:#aaa;font-size:9px}.day-calendar-head strong{font:600 18px var(--font-display);color:#ddd}.day-slots{display:grid}.day-slot{display:grid;grid-template-columns:72px 1fr;min-height:52px;border-bottom:1px solid var(--ts-border-color)}.day-slot>time{padding:13px 12px;color:var(--primary);font-size:10px;border-right:1px solid var(--ts-border-color)}.day-slot>div{display:grid;gap:6px;align-content:start;padding:8px}.empty-slot{color:#444;font-size:8px;letter-spacing:.08em;text-transform:uppercase}.day-slot .calendar-event{max-width:520px;grid-template-columns:42px 1fr}@media(max-width:800px){.calendar-view-switch{width:100%}.day-calendar{overflow-x:auto}.day-slots{min-width:680px}}
[data-theme=white-luxury] .calendar-main{background:radial-gradient(circle at 85% -12%,rgba(184,138,45,.18),transparent 29%),linear-gradient(180deg,#fffdf8,#f5efe3)!important}[data-theme=white-luxury] :is(.month-calendar,.day-calendar,.calendar-day,.calendar-day.outside,.calendar-form-panel){background:#fffdf8!important;border-color:var(--ts-border-color)!important}[data-theme=white-luxury] .calendar-weekdays{background:#f0e4cc;color:#806329;border-color:var(--ts-border-color)}[data-theme=white-luxury] .calendar-day.outside{opacity:.55;background:#f6eddb!important}[data-theme=white-luxury] :is(.calendar-toolbar,.day-calendar-head){background:#fffaf0;color:var(--text);border-color:var(--ts-border-color)}[data-theme=white-luxury] :is(.calendar-toolbar a,.calendar-day header a,.calendar-day>header>span,.day-calendar-head a,.day-calendar-head strong){color:var(--text)!important}[data-theme=white-luxury] .calendar-event{background:#fff5df!important;color:var(--text)!important}[data-theme=white-luxury] .calendar-event :is(time,small){color:var(--text-secondary)!important}[data-theme=white-luxury] .empty-slot{color:#b5a789}[data-theme=white-luxury] .calendar-form-panel :is(input,select,textarea){background:#fffaf2!important;color:var(--text)!important;border-color:var(--ts-border-color)!important}
