:root{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#242628;background:#f7f8fa;font-synthesis:none;--muted:#898b92;--line:#eceef1;--green:#305e4e;--accent:#e8eee9}*{box-sizing:border-box}body{margin:0;font-size:14px}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:default;opacity:.45}button:focus-visible,a:focus-visible{outline:3px solid #89a99c;outline-offset:3px}a{color:inherit;text-decoration:none}.shell{display:flex;min-height:100vh}.sidebar{width:248px;position:fixed;inset:0 auto 0 0;background:#fff;border-right:1px solid var(--line);padding:32px 20px 0;display:flex;flex-direction:column}.brand{display:flex;align-items:center;gap:12px;margin:0 8px 39px;font-weight:750;letter-spacing:1.5px;font-size:17px}.brand small{display:block;font-size:9px;letter-spacing:.5px;font-weight:400;color:#92949b;margin-top:5px}.brand-icon{font-size:25px;letter-spacing:-4px;background:#305e4e;color:white;display:flex;align-items:center;justify-content:center;width:39px;height:39px;border-radius:13px;font-weight:500;padding-right:4px}.brand-icon span{font-weight:300}.studio{display:flex;align-items:center;gap:11px;border:1px solid var(--line);border-radius:12px;padding:13px 12px;margin-bottom:34px}.studio-mark{display:grid;place-items:center;width:31px;height:31px;background:#f0ede8;border-radius:9px;color:#827566}.studio b{font-size:12px;font-weight:600}.studio small,.profile small{display:block;color:var(--muted);font-size:10px;margin-top:4px}.studio-dot{width:6px;height:6px;background:#78a48c;border-radius:50%;margin-left:auto}.nav-label{font-size:9px;letter-spacing:1.4px;color:#a5a6ad;margin:0 12px 12px}nav{display:flex;flex-direction:column;gap:6px}.nav-item{border:0;background:none;color:#83858d;text-align:left;width:100%;display:flex;gap:12px;align-items:center;padding:13px 14px;border-radius:9px;font-size:12px}.nav-item.active{background:#eaf0eb;color:#315e4e;font-weight:600}.nav-item:hover{background:#f1f4f1}svg{width:18px;height:18px;vertical-align:middle;flex-shrink:0}.nav-count{margin-left:auto;font-size:10px;background:#f0f1f2;border-radius:5px;padding:2px 6px;color:#7d8086}.sidebar-bottom{margin-top:auto}.demo-note{font-size:10px;color:#496e5a;padding:30px 12px 24px}.demo-note small{font-size:10px;line-height:1.7;color:#a0a2a8;display:block;margin-top:8px}.pulse{display:inline-block;background:#7caa8b;width:5px;height:5px;border-radius:50%;margin-right:5px}.profile{border-top:1px solid var(--line);margin:0 -20px;padding:20px;display:flex;align-items:center;gap:10px}.profile b{font-size:11px;font-weight:500}.avatar{height:35px;width:35px;border-radius:50%;display:grid;place-items:center;background:#efece6;color:#8a7763;font-size:12px;flex-shrink:0}.owner{background:#e5eae7;color:#597260}main{margin-left:248px;flex:1;min-width:0}.topbar{height:76px;padding:0 42px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;background:#ffffff70}.breadcrumb{color:#9a9ca4;font-size:11px}.breadcrumb span{margin:0 14px;color:#ccc}.breadcrumb b{font-weight:400;color:#565a60}.connection{font-size:10px;color:#93979a;display:flex;align-items:center;gap:7px}.connection i{width:5px;height:5px;border-radius:50%;background:#79a189}.content{padding:39px 42px 0;max-width:1700px;margin:auto}.page-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:30px;gap:16px}.eyebrow{font-size:9px;color:#9c9fa6;letter-spacing:1.7px;margin-bottom:10px}h1{font-weight:550;letter-spacing:-1.1px;font-size:33px;margin:0}h1+p{color:#93969c;font-size:12px;margin:9px 0 0}.button{border:1px solid #e1e4e8;border-radius:9px;background:white;padding:10px 14px;display:inline-flex;align-items:center;justify-content:center;gap:7px;color:#596068;font-size:11px;font-weight:500;white-space:nowrap;transition:background .15s}.button:hover{background:#f2f5f2}.button.primary{background:var(--green);border-color:var(--green);color:white;box-shadow:0 3px 6px #305e4e14}.button.primary:hover{background:#214c3e}.button svg{width:14px;height:14px}.button.ghost{border:0;background:transparent;padding:7px}.button.danger{color:#aa635e}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:25px}.stat{background:white;border:1px solid var(--line);border-radius:13px;padding:19px 21px;position:relative}.stat-label{font-size:10px;color:#91949a;display:flex;align-items:center;gap:8px}.stat-label svg{width:14px;height:14px;color:#9ba59f}.stat-number{font-size:29px;letter-spacing:-1px;margin:12px 0 7px;font-weight:500}.stat-note{font-size:9px;color:#a1a4ab}.stat-note.green{color:#7e9b87}.panel{background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden}.schedule-toolbar{padding:20px 22px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:12px}.date-nav{display:flex;align-items:center;gap:15px}.date-title{font-size:15px;font-weight:550;min-width:175px;letter-spacing:-.3px}.arrow{height:27px;width:27px;border:1px solid var(--line);border-radius:7px;display:grid;place-items:center;background:#fff;color:#878c91}.arrow:hover{background:#f5f6f7}.arrow svg{width:13px;height:13px}.date-arrows{display:flex;gap:5px}.today{font-size:10px;color:#878c91;border:0;border-radius:6px;background:#f5f6f7;padding:7px 11px}.toolbar-right{display:flex;gap:10px;align-items:center}.select{border:1px solid var(--line);padding:8px 10px;border-radius:7px;font-size:10px;color:#82868d;background:white;max-width:155px}.weekstrip{display:grid;grid-template-columns:repeat(7,1fr);padding:14px 19px;border-bottom:1px solid var(--line);gap:8px}.day{border:0;background:transparent;border-radius:9px;padding:11px 0;position:relative;color:#9c9fa6}.day span{font-size:9px;display:block;margin-bottom:8px}.day b{font-size:17px;font-weight:500;color:#62676c}.day.selected{background:#305e4e;color:#bdcfc5}.day.selected b{color:white}.day:hover:not(.selected){background:#f5f7f5}.day .today-dot{display:block;width:3px;height:3px;border-radius:50%;background:#719581;position:absolute;bottom:5px;left:calc(50% - 1px)}.day.selected .today-dot{background:white}.schedule-caption{padding:19px 25px 12px;color:#a0a3aa;font-size:9px;letter-spacing:1px;display:flex;justify-content:space-between}.class-row{display:grid;grid-template-columns:92px minmax(150px,1.3fr) minmax(105px,.8fr) minmax(100px,1fr) 112px;align-items:center;gap:20px;margin:0 23px;padding:22px 0;border-bottom:1px solid #f0f1f3}.class-row:last-child{border:0}.time{font-size:16px;font-weight:500;letter-spacing:-.3px}.time small{display:block;margin-top:5px;color:#a1a4ab;font-size:9px;font-weight:400;letter-spacing:0}.class-name{display:flex;gap:12px;align-items:center}.class-line{width:3px;height:36px;border-radius:4px;background:#c6d8c7;flex-shrink:0}.class-row:nth-child(3n) .class-line{background:#d9cec0}.class-row:nth-child(3n + 1) .class-line{background:#c8cfdf}.class-name b{display:block;font-size:12px;font-weight:550;margin-bottom:6px}.class-name small{color:#a1a4ab;font-size:9px}.trainer{display:flex;gap:9px;align-items:center;font-size:10px;color:#7a7f86}.trainer .avatar{width:27px;height:27px;font-size:9px;background:#f0ece8;color:#96816f}.capacity-label{display:flex;justify-content:space-between;gap:8px;font-size:9px;color:#7c8d82}.capacity-label span:last-child{color:#a5a8ae}.track{height:3px;border-radius:5px;background:#edf2ee;margin-top:9px;max-width:160px;overflow:hidden}.track i{display:block;height:3px;background:#96b19c;border-radius:5px}.class-action{font-size:10px;padding:8px 13px;background:#f7f8f9;border:1px solid #eaecef;border-radius:7px;color:#686f76;text-align:center}.class-action:hover{background:#eaf0eb;color:#305e4e}.legend{display:flex;gap:20px;align-items:center;justify-content:flex-end;margin-top:14px;font-size:9px;color:#9da1a8}.legend i{display:inline-block;width:5px;height:5px;border-radius:50%;background:#a4baa8;margin-right:5px}.legend .sand{background:#cfbaa1}.help-card{margin-top:23px;border:1px solid #e6ebe6;border-radius:11px;padding:16px 20px;display:flex;gap:12px;align-items:center;color:#72907e;background:#f0f4ef7a}.help-card svg{width:17px;height:17px}.help-card b{font-weight:500;display:block;font-size:11px;color:#6c8274;margin-bottom:4px}.help-card p{margin:0;font-size:10px;color:#96a29a;line-height:1.6}footer{display:flex;gap:15px;font-size:9px;color:#a9adb3;padding:30px 0 23px;letter-spacing:.3px}footer>span:first-child{color:#b3b6bc;letter-spacing:0}.footer-demo{margin-left:auto;letter-spacing:0}.searchbar{display:flex;gap:12px;padding:18px 21px;border-bottom:1px solid var(--line);align-items:center}.searchbox{display:flex;gap:10px;align-items:center;background:#f7f8fa;padding:10px 12px;border-radius:8px;max-width:350px;flex:1}.searchbox svg{width:14px;height:14px;color:#adb1b6}.searchbox input{background:none;border:0;outline:0;width:100%;font-size:11px}.count-note{color:#a1a5ab;font-size:10px;margin-left:auto}.client-table{width:100%;border-collapse:collapse;text-align:left}.client-table th{font-weight:400;font-size:9px;letter-spacing:.4px;color:#a6a9ae;padding:15px 23px;background:#fcfcfd;border-bottom:1px solid var(--line)}.client-table td{padding:18px 23px;border-bottom:1px solid #f1f2f4;font-size:11px;color:#8d9299}.client-table tr:last-child td{border:0}.client-table tbody tr{cursor:pointer}.client-table tbody tr:hover{background:#fafbf9}.client-person{display:flex;align-items:center;gap:12px}.client-person b{font-size:12px;font-weight:500;color:#474d53}.client-person small{display:block;font-size:9px;color:#adb0b6;margin-top:4px}.pill{font-size:9px;background:#eef3ef;border-radius:5px;color:#718975;padding:5px 8px;display:inline-block}.pill.grey{background:#f3f3f5;color:#91949b}.tariff-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.tariff{padding:27px;background:white;border:1px solid var(--line);border-radius:15px;position:relative}.tariff.featured{background:#305e4e;color:white;border-color:#305e4e}.tariff .eyebrow{font-size:9px}.tariff h2{font-size:25px;font-weight:500;letter-spacing:-.7px;margin:19px 0 8px}.tariff p{font-size:11px;color:#9ba19e;line-height:1.8}.tariff.featured p,.tariff.featured .eyebrow{color:#bfd0c7}.price{font-size:34px;letter-spacing:-1px;margin-top:35px}.price small{font-size:14px;letter-spacing:0}.tariff-rule{font-size:10px;border-top:1px solid #eef0ee;margin-top:24px;padding-top:17px;color:#9aa49c;line-height:1.7}.featured .tariff-rule{border-color:#ffffff25;color:#c4d6ca}.section-title{font-size:15px;font-weight:500;margin:31px 0 16px}.empty{padding:45px 25px;text-align:center;color:#a3a6ad;font-size:12px;line-height:1.8}.empty svg{width:26px;height:26px;margin-bottom:12px}.activity{padding:0 24px}.event{padding:19px 0;border-bottom:1px solid var(--line);display:flex;gap:15px;align-items:flex-start}.event:last-child{border:0}.event-icon{width:30px;height:30px;border-radius:9px;background:#f0f4f0;color:#88a18d;display:grid;place-items:center}.event-icon svg{width:14px;height:14px}.event b{font-size:11px;font-weight:450;line-height:1.6}.event small{font-size:9px;color:#a6aab0;display:block;margin-top:5px}.loading{padding:70px;text-align:center;color:#8c9a8f}.error-box{padding:30px;border:1px solid #e6c6c2;background:#fff7f5;border-radius:12px;color:#965c52}.error-box button{margin-top:15px}dialog{border:0;border-radius:18px;padding:0;width:min(570px,calc(100vw - 32px));box-shadow:0 24px 100px #1f302d30;max-height:88vh;color:#333b38}dialog::backdrop{background:#1b292747;backdrop-filter:blur(5px)}.modal-header{padding:25px 27px 20px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line)}.modal-header h2{margin:0;font-weight:550;font-size:20px;letter-spacing:-.5px}.modal-header small{color:#959e98;font-size:10px;display:block;margin-top:7px}.close{border:0;background:#f4f5f5;border-radius:50%;width:28px;height:28px;color:#939a95;font-size:18px}.modal-content{padding:24px 27px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:17px}.form-grid .full{grid-column:1/-1}label{font-size:11px;color:#818981;display:block}label input,label select,label textarea{width:100%;margin-top:8px;border:1px solid #e2e7e3;border-radius:8px;background:#fbfcfb;padding:11px 12px;color:#404d45;outline:0;resize:vertical}label input:focus,label select:focus,label textarea:focus{border-color:#7b9c87;box-shadow:0 0 0 3px #e8f0e9}.modal-footer{padding:18px 27px;border-top:1px solid var(--line);display:flex;gap:10px;justify-content:flex-end}.form-error{font-size:11px;line-height:1.6;color:#ac635c;margin:15px 0 0}.modal-meta{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:20px}.attendee{display:flex;align-items:center;gap:10px;padding:13px 0;border-bottom:1px solid #f0f2f0}.attendee:last-child{border:0}.attendee .name{flex:1;font-size:12px}.attendee .button{padding:6px 8px;font-size:9px}.book-form{border-top:1px solid var(--line);padding-top:18px;margin-top:18px;display:flex;gap:10px}.book-form select{flex:1;min-width:0;border:1px solid #e2e7e3;border-radius:8px;padding:9px;font-size:11px}.modal-notice{font-size:10px;color:#a1a9a3;line-height:1.7;margin:15px 0 0}.client-detail-head{display:flex;align-items:center;gap:15px;margin-bottom:25px}.client-detail-head .avatar{width:50px;height:50px;font-size:17px}.client-detail-head h3{font-weight:500;font-size:18px;margin:0}.client-detail-head p{font-size:11px;color:#99a19b;margin:7px 0 0}.timeline-title{font-size:10px;color:#9da69f;letter-spacing:.8px;margin:25px 0 8px}#toast{position:fixed;bottom:28px;left:calc(50% + 100px);transform:translate(-50%,20px);background:#2d4a3b;color:white;border-radius:10px;padding:13px 22px;font-size:12px;box-shadow:0 8px 30px #29403322;opacity:0;pointer-events:none;transition:all .2s;z-index:20}#toast.visible{opacity:1;transform:translate(-50%,0)}#toast.error{background:#925a53}.hidden{display:none!important}.inline-note{font-size:11px;color:#99a39b;line-height:1.8}.table-wrap{overflow-x:auto}
@media(min-width:1500px){.content{padding-top:48px}.class-row{padding:27px 0}.stats{gap:22px}.stat{padding:23px}}@media(max-width:1150px){.sidebar{width:210px;padding:28px 14px 0}.brand{font-size:14px;gap:8px;margin-left:4px}.brand small{font-size:8px}.brand-icon{width:33px;height:33px;font-size:22px}.profile{margin:0 -14px;padding:16px 14px}.profile small{font-size:8px}main{margin-left:210px}.content{padding:30px 25px 0}.topbar{padding:0 25px}.class-row{grid-template-columns:70px minmax(130px,1fr) 90px 100px 85px;gap:12px}.stat{padding:17px}.footer-demo{display:none}.date-title{min-width:150px}.toolbar-right .select{max-width:120px}}
@media(max-width:850px){.sidebar{width:76px;padding:25px 12px}.brand{margin:0 4px 30px}.brand>span:last-child,.studio,.nav-label,.nav-item>span:not(:first-child),.sidebar-bottom,.nav-count{display:none}.nav-item{font-size:0;justify-content:center;padding:15px 0;gap:0}.nav-item svg{width:19px;height:19px}.nav-item>span:first-child{display:block}main{margin-left:76px}.content{padding:25px 20px 0}.topbar{height:60px;padding:0 20px}.class-row{grid-template-columns:55px 1fr 95px 85px;gap:12px}.class-row>.trainer{display:none}.stats{gap:9px}.stat{padding:14px 12px}.stat-label{font-size:9px}.stat-label svg{display:none}.stat-number{font-size:25px}.stat-note{font-size:8px}.tariff-grid{gap:10px}.tariff{padding:18px}.tariff h2{font-size:21px}.price{font-size:29px}#toast{left:calc(50% + 30px)}}
@media(max-width:600px){.sidebar{width:60px;padding:20px 7px}.brand{margin-left:6px}.brand-icon{width:30px;height:30px;border-radius:10px;font-size:20px}main{margin-left:60px}.content{padding:23px 14px 0}.topbar{padding:0 15px;height:54px}.connection{font-size:0}.connection i{width:6px;height:6px}.breadcrumb{font-size:10px}.page-heading{align-items:flex-start;margin-bottom:22px}.eyebrow{font-size:7px;letter-spacing:1px}h1{font-size:27px}h1+p{font-size:10px;max-width:175px;line-height:1.6}.page-heading>.button{font-size:0;width:34px;height:34px;padding:0;margin-top:20px}.page-heading>.button svg{width:16px;height:16px}.stats{grid-template-columns:repeat(2,1fr);gap:9px;margin-bottom:18px}.stat{padding:14px}.stat-number{margin:8px 0}.schedule-toolbar{padding:15px 12px;flex-wrap:wrap}.date-nav{gap:8px;width:100%}.date-title{font-size:13px;min-width:0;flex:1}.toolbar-right{width:100%}.toolbar-right .select{max-width:none;width:50%;font-size:9px}.weekstrip{padding:10px 8px;gap:3px}.day{padding:10px 0}.day span{font-size:8px}.day b{font-size:14px}.schedule-caption{padding:16px 13px 5px;font-size:8px;letter-spacing:.3px}.class-row{grid-template-columns:43px 1fr 65px;gap:10px;margin:0 12px;padding:18px 0;position:relative}.class-row>.capacity{grid-column:2;grid-row:auto}.class-row>.class-action{grid-column:3;grid-row:1/3;font-size:9px;padding:8px}.class-row .time{grid-column:1;grid-row:1/3;align-self:start;font-size:13px}.class-row .time small{font-size:8px}.class-name{gap:8px}.class-name b{font-size:11px}.class-name small{font-size:8px}.class-line{height:30px;width:2px}.capacity-label{font-size:8px;max-width:140px}.track{max-width:140px}.help-card{padding:12px;align-items:flex-start;gap:9px}.help-card b{font-size:10px}.help-card p{font-size:9px}.legend{font-size:8px;gap:12px}.tariff-grid{grid-template-columns:1fr}.tariff{padding:22px}.tariff h2{font-size:24px}.tariff .price{margin-top:15px}.tariff-rule{margin-top:15px;padding-top:12px}.client-table th,.client-table td{padding:14px 15px}.client-table th:nth-child(3),.client-table td:nth-child(3){display:none}.client-person{gap:8px}.client-person b{font-size:10px}.client-person .avatar{width:27px;height:27px;font-size:10px}.searchbar{padding:13px;gap:8px}.count-note{font-size:8px}.searchbox{padding:9px}.searchbox input{font-size:10px}footer{font-size:8px;display:block;line-height:2}footer>span:first-child{display:block}.form-grid{grid-template-columns:1fr}.form-grid .full{grid-column:auto}.modal-header{padding:20px}.modal-content{padding:20px}.modal-footer{padding:16px 20px}.modal-header h2{font-size:18px}.attendee{flex-wrap:wrap}.attendee .name{min-width:100px}.attendee .button{font-size:8px}.book-form{flex-wrap:wrap}.book-form select{width:100%}.event b{font-size:10px}.activity{padding:0 16px}#toast{max-width:calc(100vw - 40px);left:50%;white-space:normal;text-align:center;min-width:220px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}

.class-action{display:inline-flex;align-items:center;justify-content:center;gap:5px}.class-action svg{width:12px;height:12px}
/* Calendar: time rows and trainer/day columns. */
.calendar-shell{border:1px solid #e2e5e8;background:white;border-radius:12px;overflow:hidden}.calendar-toolbar{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:16px 18px;border-bottom:1px solid var(--line);flex-wrap:wrap}.calendar-toolbar .date-title{min-width:0;font-size:16px;white-space:nowrap}.calendar-toolbar .date-nav{gap:12px}.calendar-controls{display:flex;gap:12px;align-items:center}.calendar-picker{position:relative;color:#8b9690;display:flex;align-items:center;justify-content:center;border:1px solid #e8ebe9;width:29px;height:29px;border-radius:7px;overflow:hidden;cursor:pointer}.calendar-picker svg{width:14px;height:14px}.calendar-picker input{position:absolute;inset:0;opacity:0;width:100%;height:100%;padding:0;margin:0;cursor:pointer}.calendar-picker input::-webkit-calendar-picker-indicator{position:absolute;inset:0;width:100%;height:100%;cursor:pointer}.view-switch{display:flex;padding:3px;background:#f1f3f4;border-radius:7px;gap:3px}.view-switch button{border:0;color:#949ba0;background:none;border-radius:5px;font-size:11px;padding:6px 12px}.view-switch .selected{background:#fff;color:#334e42;box-shadow:0 1px 4px #0000000a}.calendar-summary{display:flex;justify-content:space-between;gap:12px;padding:12px 19px;background:#fcfcfd;border-bottom:1px solid #e9ecee;font-size:10px;color:#8d9790}.calendar-summary b{font-weight:600;color:#5b6c61}.calendar-summary span{color:#a6ada9}.calendar-summary div>span{margin:0 8px}.calendar-scroll{height:calc(100vh - 330px);min-height:400px;max-height:1000px;overflow:auto;scrollbar-width:thin;scrollbar-color:#cdd5ce #f7f9f7;position:relative;isolation:isolate}.calendar-table{min-width:650px}.calendar-table.week-view{min-width:1100px}.calendar-head{display:grid;grid-template-columns:64px repeat(var(--columns),minmax(0,1fr));position:sticky;top:0;z-index:7;background:#fff;box-shadow:0 1px 0 #dde3df}.calendar-corner{display:flex;align-items:center;justify-content:center;font-size:9px;color:#a0a9a2;background:#fafbfa;border-right:1px solid #e4e9e6}.calendar-column-head{height:65px;display:flex;align-items:center;justify-content:center;gap:10px;border-right:1px solid #e4e9e6;position:relative}.calendar-column-head:last-child{border:0}.calendar-column-head b{font-size:12px;font-weight:550;display:block;text-transform:capitalize;color:#526257}.calendar-column-head small{display:block;font-size:10px;color:#9da69f;margin-top:5px}.calendar-column-head.is-today{background:#f5f8f5}.calendar-column-head.is-today b{color:#325e46}.trainer-avatar{width:31px;height:31px;border-radius:50%;display:grid;place-items:center;font-size:12px;background:#e6efe7;color:#71937a}.head-today-dot{width:5px;height:5px;background:#739b7a;border-radius:50%;position:absolute;top:14px;right:14px}.calendar-body{display:grid;grid-template-columns:64px repeat(var(--columns),minmax(0,1fr))}.time-rail{position:sticky;left:0;z-index:5;height:var(--calendar-height);background:#fafbfa;border-right:1px solid #dfe5e1}.time-rail span{position:absolute;width:100%;text-align:center;transform:translateY(-50%);font-size:10px;letter-spacing:.2px;color:#9ba49e}.time-rail span:first-child{transform:translateY(4px)}.calendar-column{position:relative;border-right:1px solid #e4e9e6}.calendar-column:last-child{border:0}.calendar-slot{position:absolute;left:0;width:100%;background:#fff;border:0;border-top:1px dashed #edf0ee;text-align:left;padding:5px 10px;z-index:0}.calendar-slot.hour-slot{border-top:1px solid #e3e9e5}.calendar-slot span{display:none;font-size:11px;color:#8fa394}.calendar-slot:hover{background:#f4f8f3}.calendar-slot:hover span,.calendar-slot:focus-visible span{display:block}.calendar-slot:focus-visible{outline:2px solid #8eaf95;outline-offset:-2px;z-index:1}.calendar-event{position:absolute;z-index:2;text-align:left;display:flex;flex-direction:column;gap:5px;align-items:stretch;background:#e8f0e6;border:1px solid #dce7d9;border-left:3px solid #96b78a;border-radius:5px;padding:7px 10px;color:#455b40;overflow:hidden;box-shadow:0 1px 2px #24412b05;min-width:0;transition:box-shadow .12s,filter .12s}.calendar-event:hover{filter:brightness(.985);box-shadow:0 3px 12px #24412b19;z-index:3}.calendar-event>b{font-size:12px;line-height:1.3;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.event-time{font-size:9px;font-weight:450;display:flex;justify-content:space-between;gap:4px;line-height:1.2;white-space:nowrap;flex-shrink:0}.event-bottom{display:flex;justify-content:space-between;gap:6px;align-items:center;font-size:9px;opacity:.8;white-space:nowrap}.event-bottom>span:first-child{overflow:hidden;text-overflow:ellipsis}.event-capacity{display:flex;gap:3px;align-items:center;flex-shrink:0;font-weight:550}.event-capacity svg{width:11px;height:11px}.event-free{font-size:9px;margin-top:auto;opacity:.7;white-space:nowrap}.tone-1.calendar-event{background:#e9edf5;border-color:#dde3f0;border-left-color:#98a9cd;color:#4f6389}.tone-2.calendar-event{background:#f3ece3;border-color:#eadfce;border-left-color:#ccb08b;color:#8c7353}.tone-3.calendar-event{background:#efe8f1;border-color:#e5dcea;border-left-color:#b69abd;color:#82658c}.trainer-avatar.tone-1{background:#e7ebf4;color:#8395b3}.trainer-avatar.tone-2{background:#f0e8dc;color:#b49b7f}.trainer-avatar.tone-3{background:#eee7f1;color:#a088ad}.calendar-event.event-closed{background:#f0f1f2;border-color:#e2e4e6;border-left-color:#a9afb3;color:#818b87}.event-lock{font-size:8px;opacity:.8}.now-line{position:absolute;left:0;right:0;height:1px;background:#cf8079;z-index:4;pointer-events:none}.now-line i{position:absolute;width:5px;height:5px;border-radius:50%;background:#cf8079;left:-2px;top:-2px}.calendar-bottom{display:flex;gap:17px;padding:12px 18px;font-size:9px;color:#9ca69e;border-top:1px solid #e5eae6}.calendar-dot{display:inline-block;width:6px;height:6px;background:#a3bd99;border-radius:2px;margin-right:4px}.closed-dot{background:#b9bfc1}.calendar-bottom-right{margin-left:auto}.week-view .calendar-event{padding:6px 7px;gap:4px}.week-view .calendar-event>b{font-size:11px}.week-view .event-bottom{font-size:8px}.week-view .event-time{font-size:8px}.week-view .event-free{font-size:8px}
@media(min-width:1500px){.calendar-scroll{height:calc(100vh - 340px)}.calendar-table.week-view{min-width:1150px}}@media(max-width:1150px){.calendar-summary>span{display:none}.calendar-toolbar .date-title{font-size:14px}.calendar-scroll{height:calc(100vh - 340px)}}@media(max-width:600px){.calendar-toolbar{padding:13px;gap:13px}.calendar-toolbar .date-nav{width:100%;gap:9px;flex-wrap:wrap}.calendar-controls{width:100%;justify-content:space-between}.calendar-summary{padding:11px 13px;font-size:9px}.calendar-toolbar .date-title{font-size:12px;flex:1}.calendar-toolbar .today{font-size:9px}.calendar-table{min-width:520px}.calendar-table.week-view{min-width:1050px}.calendar-scroll{height:calc(100vh - 330px);min-height:420px}.calendar-bottom-right{display:none}.calendar-bottom{padding:10px 13px;font-size:8px}.calendar-picker{width:25px;height:25px}}
.calendar-slot:disabled{opacity:1;cursor:default}.calendar-slot:disabled:hover{background:#fff}.calendar-slot:disabled:hover span{display:none}
.calendar-corner{position:sticky;left:0;z-index:8}.calendar-summary+ .calendar-scroll{background:#fff}
