:root{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#f3f3f3;background:#0c0d0f;font-size:14px;font-synthesis:none;-webkit-font-smoothing:antialiased;--red: #e51b2b;--muted: #a6a7ae;--line: #2c2d32;--panel: #151619;--display: Impact, "Arial Narrow", "Helvetica Neue", sans-serif;color-scheme:dark}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit;color:inherit}button,a{touch-action:manipulation;-webkit-tap-highlight-color:transparent}button{cursor:pointer;border:0;transition:background .15s,border-color .15s}button:disabled{cursor:not-allowed;opacity:.65}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,[tabindex]:focus-visible{outline:3px solid #ff6b77;outline-offset:4px}a{color:inherit}h1,h2,h3,p{margin:0}svg{flex-shrink:0}input,select{min-width:0}.app-shell{display:flex;min-height:100vh}.sidebar{width:232px;position:fixed;inset:0 auto 0 0;padding:30px 18px 22px;background:#111214;border-right:1px solid var(--line);display:flex;flex-direction:column;z-index:5}.brand{display:flex;align-items:center;gap:11px;text-decoration:none;font-size:21px;font-weight:900;letter-spacing:-1px}.brand>span:last-child{line-height:1.05}.brand small{display:block;font-size:9px;letter-spacing:3.7px;font-weight:600;color:#a6a7ae;margin-top:7px}.club-badge{width:61px;height:61px;display:inline-grid;place-content:center;flex-shrink:0}.club-badge img{width:100%;height:100%;display:block;border-radius:50%}.badge-fallback{display:grid;place-content:center;border:2px solid var(--red);border-radius:50%;height:58px;width:58px;font-weight:950;font-size:23px;text-align:center}.badge-fallback>span{font-size:5px;letter-spacing:1px}.brand-mark{width:52px;height:52px;border-radius:10px;background:var(--red);display:grid;place-content:center;font-weight:950;font-size:35px}.club-label{font-size:8px;letter-spacing:1.1px;color:#777981;margin:46px 11px 17px;font-weight:700}.sidebar nav{display:grid;gap:7px}.nav-item{display:flex;gap:10px;align-items:center;text-align:left;padding:14px 12px;width:100%;background:transparent;border-radius:6px;color:#a6a7ae;font-size:12px;font-weight:550;border:1px solid transparent}.nav-item:hover{background:#1b1c20}.nav-item.active{background:#2a1519;color:#fff;border-color:#5e222a;box-shadow:inset 3px 0 var(--red)}.nav-item.active>svg:first-child{color:#ff5362}.nav-chevron,.nav-count{margin-left:auto}.nav-count{background:#343038;border-radius:4px;padding:3px 6px;font-size:9px}.sidebar-bottom{margin-top:auto;padding-top:55px}.team-card{padding:19px 16px;border:1px solid #3e2329;border-radius:8px;background:linear-gradient(135deg,#281417,#151619)}.team-card-kicker{color:#ff6975;font-size:8px;font-weight:700;letter-spacing:1.3px}.team-card strong{display:block;font-family:var(--display);font-size:29px;font-weight:500;line-height:1.1;text-transform:uppercase;margin:14px 0 20px}.team-card a{display:flex;justify-content:space-between;align-items:center;text-decoration:none;font-size:11px;color:#c2b6b8}.reset-link{display:flex;gap:8px;align-items:center;background:none;font-size:11px;color:#9c9da5;padding:0;margin:25px 4px}.sidebar-footer{display:flex;align-items:center;gap:7px;border-top:1px solid var(--line);padding-top:18px;font-size:8px;letter-spacing:.7px;color:#777982}.sidebar-footer>span:last-child{margin-left:auto}.online-dot{background:var(--red);height:5px;width:5px;border-radius:50%}.main-shell{margin-left:232px;flex:1;min-width:0}.topbar{height:78px;border-bottom:1px solid var(--line);background:#111214;display:flex;align-items:center;justify-content:space-between;gap:15px;padding:0 38px}.breadcrumb{display:flex;align-items:center;gap:12px;font-size:11px;color:#8a8d96}.breadcrumb strong{color:#cccdd1;font-weight:500}.slash{color:#4f515a}.top-actions{display:flex;align-items:center;gap:17px}.demo-pill{display:flex;align-items:center;gap:6px;padding:6px 8px;border:1px solid #513038;border-radius:4px;font-size:8px;letter-spacing:.7px;color:#ee9ba3;background:#29181c;font-weight:700;white-space:nowrap}.demo-pill>span{background:#f36a78;height:4px;width:4px;border-radius:50%}.role-switch{display:flex;padding:3px;border:1px solid #35363d;border-radius:6px;background:#1d1e22;gap:3px}.role-switch button{background:none;font-size:11px;color:#a4a6ae;padding:7px 14px;border-radius:3px}.role-switch button.selected{background:#3d2026;color:#fff}.main-content{max-width:1510px;margin:0 auto;padding:24px 38px 0}.demo-bar{display:flex;align-items:center;gap:9px;background:#18191d;border:1px solid #303137;border-radius:5px;color:#a6a7af;font-size:11px;line-height:1.6;padding:10px 13px}.demo-bar strong{color:#dedee2}.demo-bar>svg{color:#d75b69}.local-state{margin-left:auto;font-size:10px;white-space:nowrap;color:#83858e}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:22px;margin:30px 0 25px}.eyebrow{color:#d66570;font-size:9px;letter-spacing:1.6px;font-weight:700;margin-bottom:9px}h1{font-size:32px;letter-spacing:-1.1px;font-weight:750;line-height:1.25}.heading-dot{display:none}.page-heading p{color:var(--muted);font-size:12px;margin-top:9px;line-height:1.7}.profile-picker{display:grid;gap:7px;max-width:45%}.profile-picker>span{color:#999ca5;font-size:8px;letter-spacing:1.1px;font-weight:700}.profile-picker select{border:1px solid #393a42;border-radius:5px;background:#191a1e;color:#dddde3;padding:11px;width:245px;max-width:100%;font-size:11px}.hero{position:relative;overflow:hidden;isolation:isolate;border:1px solid #472027;border-radius:9px;background:radial-gradient(ellipse at 78% 90%,#6c1721 0,transparent 48%),linear-gradient(120deg,#141416,#1d1115);padding:29px 32px;min-height:265px}.hero:before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(115deg,transparent 0 60px,#ffffff03 61px 62px);z-index:-1}.hero-copy{position:relative;z-index:2;max-width:65%}.hero-kicker{display:flex;align-items:center;gap:7px;color:#d4bcc0;font-size:9px;letter-spacing:2px;font-weight:650}.hero-kicker>span{width:15px;height:3px;background:var(--red)}.hero h2{font-family:var(--display);font-weight:500;font-size:53px;line-height:1.01;letter-spacing:.4px;margin:17px 0 15px;transform:skew(-3deg)}.hero h2 em{font-style:normal;color:#f3273c}.hero p{color:#bfb3b7;font-size:12px;line-height:1.7}.hero-link{display:inline-flex;align-items:center;gap:19px;margin-top:20px;font-size:11px;font-weight:650;text-decoration:none;color:#f1d5d9}.hero-link>svg{color:#ff4156}.hero-badge{position:absolute;width:166px;height:166px;top:49px;right:55px;filter:drop-shadow(0 12px 32px #0008)}.hero-stamp{position:absolute;bottom:18px;right:23px;text-align:right;font-size:7px;letter-spacing:1.6px;line-height:1.8;color:#d27883}.hero-stamp strong{color:#b9949b;font-weight:550}.stats{display:grid;grid-template-columns:1.1fr 1fr 1fr;gap:13px;margin:18px 0 34px}.stat{display:flex;align-items:center;gap:12px;background:#151619;border:1px solid var(--line);border-radius:7px;padding:17px 15px;min-width:0}.stat-icon{display:grid;place-content:center;width:37px;height:40px;border-radius:8px;flex-shrink:0}.lime{background:#282920;color:#c1c69f}.lavender{background:#2c2128;color:#d5a5bf}.peach{background:#2b2420;color:#ccb09e}.stat>div{display:grid;gap:5px}.stat>div>span{font-size:10px;color:#9a9ca5}.stat strong{font-size:12px;line-height:1.5}.stat small{font-size:9px;color:#8f929b;line-height:1.6}.stat-unit{font-size:11px;font-weight:500}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:18px}.section-heading h2{display:flex;align-items:center;gap:10px;font-size:23px;font-family:var(--display);text-transform:uppercase;letter-spacing:.8px;font-weight:500}.number-badge{font-family:Segoe UI,sans-serif;border:1px solid #484047;border-radius:4px;background:#2e2025;color:#e7a1ab;font-size:10px;padding:3px 6px;letter-spacing:0}.filter{display:flex;align-items:center;gap:7px;color:#9b9da6}.filter select{background:#1b1c21;border:1px solid #393a42;border-radius:5px;padding:8px;font-size:11px;color:#cbccd3}.schedule-toolbar{display:flex;align-items:center;justify-content:space-between;gap:13px;margin-bottom:18px}.layout-switch{display:flex;border-bottom:1px solid #3d3e45;gap:16px}.layout-switch button{padding:10px 2px;font-size:12px;color:#9497a1;background:none;border-bottom:2px solid transparent}.layout-switch button.selected{border-bottom-color:var(--red);color:#fff}.schedule-source{font-size:10px;color:#858891}.week-nav{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:16px}.week-nav>div{display:flex;gap:8px;align-items:center}.week-nav>div:first-child{color:#b6b8c1;font-size:12px}.week-nav strong{font-weight:550}.today-button{border:1px solid #393b43;background:#191a1f;padding:7px 10px;font-size:10px;border-radius:4px;color:#b2b4bd}.icon-button{display:grid;place-content:center;width:32px;height:32px;border:1px solid #3c3d45;background:#1c1d22;border-radius:4px;color:#c2c4cb}.week-nav .icon-button{width:28px;height:28px}.day-tabs{display:grid;grid-template-columns:1.2fr repeat(7,1fr);gap:7px;margin-bottom:20px}.day-tab{display:flex;flex-direction:column;align-items:center;gap:6px;border:1px solid #34353d;background:#16171b;padding:11px 3px 8px;border-radius:5px;min-width:0;position:relative}.day-tab>span:first-child{font-size:9px;color:#9396a0;letter-spacing:.6px;text-transform:uppercase}.day-tab strong{font-size:17px;font-weight:600}.day-tab:first-child strong{font-size:14px;margin-top:3px}.day-tab:first-child>span:first-child{font-size:7px}.day-tab.selected{border-color:#a72b3c;background:#491d27}.day-tab.selected>span:first-child{color:#f6b9c2}.day-dot{height:3px;width:3px;background:#a64b59;border-radius:50%;margin-top:2px}.day-dot.empty{background:transparent}.day-tab.is-today:after{content:"";position:absolute;top:6px;right:6px;height:4px;width:4px;border-radius:50%;background:var(--red)}.table-instruction{color:#aaaeb8;font-size:11px;line-height:1.7;margin-bottom:13px}.table-instruction span{display:none}.timetable-scroll{overflow-x:auto;border:1px solid #383a42;border-radius:6px;scrollbar-color:#742e3b #191a1f}.timetable{border-collapse:collapse;width:100%;min-width:760px;table-layout:fixed;background:#121316}.timetable caption{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.timetable th,.timetable td{border-right:1px solid #303139;border-bottom:1px solid #303139;text-align:center}.timetable thead th{padding:15px 5px;background:#1c1d21;font-family:var(--display);text-transform:uppercase;font-size:17px;font-weight:500;letter-spacing:.7px}.timetable thead th>span{display:inline-block;border-bottom:2px solid var(--red);padding-bottom:5px}.timetable thead small{display:block;font-family:Segoe UI,sans-serif;font-size:9px;color:#9296a1;margin-top:6px;letter-spacing:.3px}.timetable thead th:first-child{width:82px;font-size:14px;color:#8e929c}.timetable .today-column{background:#301a21}.timetable tbody th{font-size:13px;font-weight:650;padding:10px 6px;background:#191a1e;color:#ececf0}.timetable tbody th>span{display:block;color:#737883;font-size:10px;margin-top:5px;font-weight:400}.timetable td{padding:4px;height:69px}.timetable tr:last-child>*{border-bottom:0}.timetable tr>*:last-child{border-right:0}.timetable-slot{width:100%;min-height:61px;padding:8px 4px;background:#261b21;border:1px solid #66313c;border-left:3px solid #c74558;border-radius:4px;display:grid;place-content:center;gap:5px}.timetable-slot strong{font-family:var(--display);text-transform:uppercase;font-size:15px;line-height:1.15;letter-spacing:.3px;font-weight:500}.timetable-slot small{font-size:9px;color:#d5abb4}.timetable-slot:hover{filter:brightness(1.22)}.timetable-slot.past-slot{opacity:.45}.timetable-slot.competitors{background:#30211b;border-color:#77412b;border-left-color:#c77650}.timetable-slot.competitors small{color:#d7b399}.timetable-slot.junior{background:#212638;border-color:#3f4d77;border-left-color:#7c90cb}.timetable-slot.junior small{color:#adbce4}.timetable-slot.baby{background:#2d2338;border-color:#614879;border-left-color:#a77cc8}.timetable-slot.baby small{color:#cdb1e2}.timetable-slot.kickboxing{background:#1c2d2c;border-color:#345f5b;border-left-color:#69a89f}.timetable-slot.kickboxing small{color:#9ec7c1}.no-class{color:#525762}.timetable-footnote{font-size:10px;color:#9498a4;margin-top:13px;line-height:1.8}.lesson-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.lesson-card{background:var(--panel);border:1px solid #32333b;border-radius:7px;padding:20px;overflow:hidden}.lesson-card.is-booked{border-color:#b24d5d;box-shadow:0 0 0 1px #b24d5d20}.card-top{display:flex;align-items:center;justify-content:space-between;gap:6px;margin-bottom:15px}.category{display:inline-flex;align-items:center;gap:5px;font-size:9px;font-weight:600;padding:5px 7px;border-radius:3px}.category.boxing{background:#3b2029;color:#ed9bac}.category.competitors{background:#39291f;color:#dcb096}.category.junior{background:#232c41;color:#a9bcec}.category.baby{background:#30233f;color:#d3acef}.category.kickboxing{background:#1e3431;color:#98d2c5}.availability{display:flex;align-items:center;gap:5px;color:#aabca2;font-size:10px}.availability:before{content:"";height:4px;width:4px;border-radius:50%;background:#95a88a}.availability.full{color:#ce9e9f}.availability.full:before{background:#d78287}.lesson-card h3{font-size:19px;letter-spacing:-.4px;line-height:1.45}.lesson-meta{display:flex;flex-wrap:wrap;gap:13px;row-gap:7px;margin-top:12px}.lesson-meta>span{display:flex;align-items:center;gap:5px;color:#acb0bc;font-size:12px}.duration{color:#7d828e}.coach-line{display:flex;align-items:center;gap:7px;color:#9da1ad;font-size:11px;margin:19px 0 16px}.coach-avatar{display:grid;place-content:center;height:22px;width:22px;font-size:7px;font-weight:700;background:#33252b;color:#cc929f;border-radius:50%}.room{margin-left:auto;font-size:9px;color:#777d88}.capacity-track{height:3px;background:#292b32;border-radius:2px;margin-bottom:12px;overflow:hidden}.capacity-track>span{display:block;height:100%;background:#a63f52}.roster-line{display:flex;align-items:center;justify-content:space-between;gap:5px;margin-bottom:15px;min-height:28px}.roster-button{display:flex;align-items:center;gap:7px;background:none;padding:0;text-align:left;font-size:11px;color:#a8aebb;min-height:30px}.avatar-stack{display:flex;padding-left:3px}.avatar-stack>span{display:grid;place-content:center;width:24px;height:24px;border-radius:50%;font-size:6px;border:2px solid #151619;background:#493139;color:#e2bec7;margin-left:-4px}.avatar-stack>span:nth-child(2){background:#333844;color:#bcc4d4}.avatar-stack>span:nth-child(3){background:#3d3a2d;color:#d5cfad}.booked-label{display:flex;align-items:center;gap:4px;color:#f293a4;font-size:10px;white-space:nowrap}.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:11px 14px;border:1px solid transparent;border-radius:4px;text-decoration:none;font-size:12px;font-weight:650;line-height:1.5}.primary{color:#fff;background:#ce1526;border-color:#e13343}.primary:hover:not(:disabled){background:#e51b2b}.secondary{background:#202127;border-color:#3c3f48;color:#c5c9d2}.secondary:hover{background:#2c2d35}.booking-button{width:100%;min-height:41px}.booking-button>svg:first-child{margin-right:auto}.booking-button>svg:last-child:not(:first-child){margin-left:auto}.booking-button.cancel{background:#3a202b;border-color:#74404e;color:#efb1bf}.blocked{background:#202126;color:#9a9da7;border-color:#33353d}.block-reason{font-size:11px;line-height:1.7;color:#c79f92;margin-top:9px}.coach-card-actions{display:flex;gap:8px}.coach-card-actions>.primary{flex:1}.schedule-note{display:flex;align-items:center;justify-content:center;gap:7px;font-size:10px;color:#8d929e;line-height:1.8;text-align:center;margin-top:24px}.privacy-card{display:flex;align-items:center;gap:13px;background:#18191e;border:1px solid #34363f;padding:17px 20px;border-radius:6px;margin-top:26px}.privacy-icon{color:#b17c8a}.privacy-card strong{font-size:12px}.privacy-card p{font-size:11px;color:#9fa3af;line-height:1.8;margin-top:4px}.switch{position:relative;display:inline-block;width:36px;height:22px;margin-left:auto;flex-shrink:0}.switch input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer;margin:0}.switch>span{display:block;width:36px;height:22px;border-radius:20px;background:#505460;pointer-events:none}.switch>span:before{content:"";position:absolute;height:16px;width:16px;top:3px;left:3px;background:#fff;border-radius:50%;transition:transform .2s}.switch input:checked+span{background:#c7243d}.switch input:checked+span:before{transform:translate(14px)}.switch input:focus-visible+span{outline:3px solid #ff6b77;outline-offset:4px}.page-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid #2b2e36;padding:24px 0;margin-top:25px;font-size:9px;color:#7b808e}.page-footer>span:first-child{letter-spacing:1px;color:#b2b6c0;font-weight:700}.page-footer strong{font-weight:400;color:#d4455b}.mobile-tools{display:none}.eligibility-warning{display:flex;align-items:flex-start;gap:11px;padding:17px 20px;border:1px solid #705238;background:#30251c;color:#e2bd92;border-radius:6px;margin:0 0 24px}.eligibility-warning strong{font-size:12px}.eligibility-warning p{font-size:11px;line-height:1.8;margin-top:5px}.muted{color:#9da2ae;font-size:11px;line-height:1.8}.student-list{background:#151619;border:1px solid #34363e;border-radius:7px;overflow:hidden}.student-row{display:flex;gap:13px;align-items:center;border-bottom:1px solid #2b2d34;padding:21px}.student-row:last-child{border-bottom:0}.avatar{height:38px;width:38px;display:grid;place-content:center;border-radius:50%;background:#3b2630;color:#e0acbb;font-weight:650;font-size:11px;flex-shrink:0}.student-info{display:grid;gap:6px;flex:1}.student-info strong{font-size:13px}.student-info>span{font-size:11px;color:#969daa}.status{padding:5px 8px;border-radius:4px;font-size:10px;white-space:nowrap;margin-right:9px}.valid{background:#253228;color:#b0caad}.expired{background:#3c2527;color:#e9b2af}.warning{background:#392f1f;color:#dfcc96}.empty-state{padding:50px 23px;border:1px dashed #434650;border-radius:7px;text-align:center;color:#a2a6b2}.empty-state>svg{margin-bottom:17px;color:#b86478}.empty-state h3{font-size:19px;color:#e2e4ea}.empty-state p{font-size:12px;line-height:1.8;margin:12px 0 23px}.toast{position:fixed;bottom:25px;left:calc(50% + 116px);transform:translate(-50%);display:flex;align-items:center;gap:12px;width:max-content;max-width:calc(100% - 38px);padding:16px 18px;background:#25322a;color:#e6f2e9;border:1px solid #526d59;box-shadow:0 10px 50px #0007;border-radius:7px;font-size:12px;line-height:1.6;z-index:30}.toast.error{background:#49282b;border-color:#a15d64;color:#ffe5e8}.toast button{background:none;color:inherit;display:grid;place-content:center;padding:2px}.modal{width:540px;max-width:calc(100% - 28px);max-height:calc(100dvh - 40px);overflow-y:auto;background:#17181d;color:#eeeff4;padding:27px;border:1px solid #454851;border-radius:10px;box-shadow:0 20px 90px #0006}.modal::backdrop{background:#060709ca;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.modal-head{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:23px}.modal h2{font-size:21px;letter-spacing:-.5px;line-height:1.4}.modal>p{font-size:12px;line-height:1.8;color:#acb0bc}.modal-head .icon-button{flex-shrink:0}.modal-subtitle{margin-top:-10px;margin-bottom:20px}.editor-form{display:grid;gap:18px}.editor-form label,.manual-booking label{display:grid;gap:8px;font-size:12px;color:#c2c5d0}.editor-form input:not([type=checkbox]),.editor-form select,.manual-booking select{width:100%;background:#111216;color:#f1f2f6;border:1px solid #494c57;padding:12px;border-radius:5px;font-size:14px;min-height:44px}.form-columns{display:grid;grid-template-columns:1fr 1fr;gap:14px}.inline-note{background:#22232a;color:#b5bac7;padding:13px;border:1px solid #3a3d47;border-radius:5px;font-size:11px;line-height:1.8}.form-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:12px}.checkbox-label{display:flex!important;align-items:center;gap:11px!important;line-height:1.6}.checkbox-label input{accent-color:var(--red);width:18px;height:18px}.checkbox-label small{display:block;font-size:11px;color:#9fa6b6;margin-top:4px}.modal-error{background:#41292c;color:#ffc8ce!important;border:1px solid #86515a;padding:12px;margin-bottom:18px!important;border-radius:5px}.roster-list{display:grid;gap:13px}.roster-person{display:flex;align-items:center;gap:10px;padding:7px 0}.roster-person>div{display:grid;gap:5px;min-width:0}.roster-person strong{font-size:12px}.roster-person small{font-size:10px;color:#9ba2b1}.text-danger{margin-left:auto;padding:10px 2px;background:none;color:#f18d9e;font-size:11px}.manual-booking{border-top:1px solid #383c47;padding-top:23px;margin-top:22px;display:grid;gap:13px}.manual-booking h3{font-size:15px}.manual-booking>p{font-size:11px;line-height:1.8;color:#a4abbb}.manual-booking .field-error{color:#e5b0a1}.roster-booking{border-top:1px solid #383c47;padding-top:20px;margin-top:20px}.roster-booking .button{width:100%}.roster-confirmed{display:flex;align-items:center;gap:8px;margin-top:20px;color:#e5acbb!important}.install-help{display:grid;gap:22px;font-size:12px;line-height:1.9;color:#a4acba}.install-help strong{color:#e4e7ed}.loading{display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;gap:25px;min-height:100vh;padding:24px}.loading p{line-height:1.8}@media(min-width:1500px){.hero{min-height:285px}.hero h2{font-size:65px}.ring-art{right:20px}.main-content{padding-top:30px}}@media(max-width:1150px){.sidebar{width:210px;padding:27px 14px 20px}.main-shell{margin-left:210px}.brand{font-size:18px;gap:8px}.club-badge{width:55px;height:55px}.main-content{padding:22px 25px 0}.topbar{padding:0 25px}.stats{gap:9px}.stat{padding:15px 10px;gap:9px}.stat-icon{width:30px;height:34px}.stat-icon svg{width:18px}.stat strong{font-size:11px}.stat small{font-size:8px}.toast{left:calc(50% + 105px)}.schedule-source{display:none}.hero h2{font-size:46px}}@media(max-width:900px){.sidebar{width:79px;padding:22px 10px;align-items:center}.brand>span:last-child,.club-label,.sidebar-bottom,.nav-item>svg~*{display:none}.sidebar nav{width:100%;margin-top:40px}.nav-item{justify-content:center;font-size:0;padding:15px 0;gap:0}.nav-item>svg:first-child{display:block}.main-shell{margin-left:79px}.stats{grid-template-columns:1fr 1fr}.stat{padding:15px;gap:12px}.stat strong{font-size:12px}.stat small{font-size:10px}.stat:nth-child(3){display:none}.toast{left:calc(50% + 39px)}.hero{padding:25px}.hero h2{font-size:45px}.ring-art{right:-32px;width:54%}.profile-picker select{width:220px}.mobile-tools{display:flex;justify-content:center;margin-top:22px}.mobile-tools button{display:flex;align-items:center;gap:8px;min-height:44px;background:none;font-size:11px;color:#a9afbb}.student-row{padding:18px 13px;gap:10px}.status{margin-right:0}}@media(max-width:640px){.app-shell{display:block}.sidebar{position:static;width:auto;padding:0;border:0;background:none;display:block}.sidebar .brand{position:absolute;top:12px;left:14px;z-index:6}.brand .club-badge{width:45px;height:45px}.main-shell{margin-left:0}.sidebar nav{position:fixed;bottom:0;left:0;right:0;z-index:10;margin:0;width:100%;display:flex;gap:4px;padding:6px 7px calc(6px + env(safe-area-inset-bottom));background:#15161aef;border-top:1px solid #353843;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.nav-item{display:flex;flex-direction:column;align-items:center;gap:5px;font-size:9px;flex:1;padding:10px 2px;width:auto;border-radius:4px;white-space:nowrap}.nav-item.active{box-shadow:inset 0 2px var(--red)}.nav-item>svg:first-child{width:18px;height:18px}.topbar{height:70px;padding:0 14px;justify-content:flex-end}.breadcrumb{display:none}.top-actions{gap:9px}.demo-pill{font-size:7px;padding:5px 6px;letter-spacing:.3px}.role-switch button{font-size:10px;padding:7px 10px}.main-content{padding:16px 15px 82px}.demo-bar{align-items:flex-start;font-size:10px;padding:9px 10px;gap:7px}.demo-bar>svg{width:13px;margin-top:2px}.local-state{display:none}.page-heading{flex-wrap:wrap;align-items:flex-start;margin:25px 0 21px;gap:17px}.page-heading>div:first-child{width:100%}h1{font-size:30px}.eyebrow{font-size:8px}.page-heading p{font-size:12px}.profile-picker{display:flex;align-items:center;width:100%;max-width:100%;gap:10px}.profile-picker>span{max-width:64px;font-size:8px;line-height:1.6}.profile-picker select{flex:1;width:auto;font-size:16px;padding:11px 8px}.hero{min-height:253px;padding:24px 21px}.hero-copy{max-width:90%}.hero-kicker{font-size:8px}.hero h2{font-size:43px;line-height:1.02}.hero p{font-size:11px;max-width:220px}.hero-link{font-size:11px;margin-top:18px}.ring-art{width:73%;height:auto;top:52px;right:-100px;opacity:.45;z-index:-1}.hero-stamp{font-size:6px;right:14px;bottom:13px}.stats{gap:9px;margin:13px 0 29px}.stat{padding:13px 10px;gap:8px;align-items:flex-start}.stat-icon{width:27px;height:30px}.stat strong{font-size:10px}.stat>div>span{font-size:9px}.stat small,.stat-unit{font-size:9px}.section-heading{gap:7px}.section-heading h2{font-size:22px}.filter{gap:4px}.filter>svg{width:13px}.filter select{font-size:11px;padding:7px 4px;max-width:135px}.number-badge{font-size:9px}.schedule-toolbar{margin-bottom:17px}.layout-switch{gap:19px}.layout-switch button{font-size:12px}.week-nav{gap:4px}.week-nav>div{gap:5px}.week-nav>div:first-child{font-size:10px;gap:5px}.week-nav>div:first-child>svg{display:none}.today-button{font-size:8px;padding:7px 6px}.week-nav .icon-button{height:27px;width:25px}.day-tabs{gap:4px;grid-template-columns:1.1fr repeat(7,1fr)}.day-tab{padding:9px 2px 7px;border-radius:4px;gap:5px}.day-tab>span:first-child{font-size:7px;letter-spacing:.1px}.day-tab:first-child>span:first-child{font-size:5px;letter-spacing:0}.day-tab strong{font-size:16px}.day-tab:first-child strong,.table-instruction{font-size:11px}.table-instruction span{display:inline}.timetable-scroll{max-width:100%}.timetable{min-width:760px}.timetable-footnote{font-size:10px}.lesson-grid{grid-template-columns:1fr;gap:13px}.lesson-card{padding:19px 18px}.lesson-card h3{font-size:20px}.category,.availability{font-size:10px}.lesson-meta{gap:12px}.lesson-meta>span{font-size:12px}.room{font-size:9px}.booking-button{min-height:44px}.schedule-note{align-items:flex-start;font-size:10px}.schedule-note>svg{margin-top:3px}.privacy-card{gap:10px;padding:16px 13px}.privacy-card strong{font-size:11px}.privacy-card p{font-size:10px}.privacy-icon svg{width:18px}.page-footer{flex-wrap:wrap;gap:12px;padding:22px 0 15px;font-size:8px}.page-footer>span:nth-child(2){margin-left:auto}.page-footer>span:last-child{width:100%;text-align:center;margin-top:6px}.toast{left:14px;right:14px;bottom:calc(90px + env(safe-area-inset-bottom));transform:none;width:auto;max-width:none;padding:13px;font-size:11px;z-index:50}.toast button{margin-left:auto}.eligibility-warning{padding:15px}.eligibility-warning strong,.eligibility-warning p{font-size:11px}.students-section .section-heading{flex-wrap:wrap}.student-row{flex-wrap:wrap;padding:18px 14px;gap:10px}.student-info{min-width:calc(100% - 55px)}.student-info>span{font-size:11px}.student-row .status{margin-left:48px;margin-right:auto}.student-row .button{padding:9px 13px}.empty-state{padding:35px 17px}.empty-state h3{font-size:17px}.modal{padding:22px 18px;max-height:calc(100dvh - 30px)}.modal h2{font-size:19px}.modal-head{gap:10px}.editor-form input:not([type=checkbox]),.editor-form select,.manual-booking select{font-size:16px}.roster-person strong{font-size:11px}.modal-subtitle{font-size:11px!important}}@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}.lesson-grid{grid-template-columns:minmax(0,1fr)}.session-identity{display:flex;align-items:center;gap:9px;font-size:11px;color:#d8adb9;margin:17px 0 -9px;flex-wrap:wrap}.session-identity>span{color:#959faf}.register-link{width:100%;margin-top:13px}.login-feedback{padding:13px;border:1px solid #4b5148;background:#232a23;border-radius:5px;color:#c2ddc2;font-size:12px;line-height:1.8;margin:20px 0}.login-feedback.field-error{background:#3a232c;border-color:#71404f;color:#f0b5c4}.demo-access{margin-top:27px;padding-top:21px;border-top:1px solid #3c343e}.demo-access summary{cursor:pointer;font-size:12px;font-weight:650;color:#c9a8b4}.demo-access>p{font-size:11px;color:#979fae;line-height:1.8;margin:13px 0 21px}.editor-form label>small{font-size:10px;line-height:1.7;color:#929faf}.editor-form input[readonly]{color:#b5bdcd;background:#1e2129}.managers-list{display:grid;grid-template-columns:1fr;gap:14px;margin-top:22px}.manager-card{display:flex;align-items:center;gap:15px;flex-wrap:wrap;background:#171a21;border:1px solid #39404f;border-radius:7px;padding:21px}.manager-card>div{flex:1;min-width:150px}.manager-card strong{font-size:18px;color:#e9cfdb}.manager-card p{font-size:12px;color:#a3afc3;line-height:1.8;margin-top:6px}.manager-card .manager-access-kind{flex-basis:100%;margin-top:0}.manager-card>small{color:#7e8da4;font-size:10px;flex:1;line-height:1.8}.admin-table td>small{display:block;font-size:10px;color:#95a1b6;margin-top:6px}@media(max-width:640px){.login-page{display:block}.login-card{width:100%;margin:0 auto;max-width:460px}.nav-item{font-size:7px;letter-spacing:-.2px}.sidebar nav{gap:2px;padding-left:3px;padding-right:3px}.manager-card{padding:17px 14px}.manager-card strong{font-size:16px}.manager-card>.button{width:100%}.manager-card>small{flex-basis:100%}.session-identity{font-size:10px;margin-top:14px}.session-identity>span{font-size:9px}}.scenario-note{font-size:11px;color:#b9a1aa;margin:7px 0}.roster-button small{color:#848c9b;margin-left:4px}.logout-button{background:transparent;color:#c7cbd5;font-size:11px;padding:9px 4px;text-decoration:underline;text-underline-offset:4px}.login-page{min-height:100dvh;display:grid;place-content:center;padding:30px 18px;background:radial-gradient(ellipse at 60% 15%,#42161f,transparent 65%),#0c0d0f}.login-card{width:460px;max-width:100%;padding:32px;border:1px solid #4e2c35;background:#15161be8;border-radius:10px;box-shadow:0 20px 90px #0007}.login-card>.club-badge{width:85px;height:85px;margin-bottom:24px}.login-card>.eyebrow{display:block}.login-card h1{font-size:30px}.login-card>p{margin:12px 0 22px;color:#b0b5c3;font-size:12px;line-height:1.8}.login-card>.inline-note{margin:24px 0}.login-card .button{width:100%;margin-top:8px}.login-card>.login-recovery{display:flex;align-items:flex-start;gap:9px;font-size:11px;margin:24px 0 0}.login-recovery svg{margin-top:3px}.access-fieldset{margin:0;padding:16px;border:1px solid #41444e;border-radius:6px;display:grid;gap:14px}.access-fieldset legend{font-weight:650;font-size:12px;padding:0 6px;color:#e2d1d7}.field-error{color:#f2adb8;font-size:12px;line-height:1.7}.admin-table-scroll{max-width:100%;overflow-x:auto;border:1px solid #3a3e48;border-radius:6px;margin-bottom:20px}.admin-table{width:100%;min-width:1070px;border-collapse:collapse;background:#15171c;font-size:12px}.admin-table th{text-align:left;font-weight:650;color:#d9bcc6;background:#231c23;padding:17px 12px;line-height:1.7}.admin-table td{border-top:1px solid #363b45;padding:17px 12px;vertical-align:top;line-height:1.7}.admin-table td:first-child{min-width:150px}.admin-table td:nth-child(3){min-width:170px;max-width:210px}.admin-table td:nth-child(4){white-space:nowrap}.admin-table .status{display:inline-block;margin:0}.admin-table .button{padding:8px 11px;font-size:11px}.course-chips{display:flex;flex-wrap:wrap;gap:5px}.course-chips span{padding:2px 6px;background:#30242d;color:#d5b5c4;font-size:10px;border-radius:3px}.attendance-count{font-size:20px;font-variant-numeric:tabular-nums;color:#eed8df}.month-toggle{display:flex;gap:8px;align-items:center;font-size:11px;cursor:pointer}.month-toggle input,.attendance-toggle input{accent-color:#df2844;height:17px;width:17px;margin:0;cursor:pointer}.permission-date{display:block;font-size:10px;color:#939cab;max-width:180px;min-width:135px;margin-top:9px;line-height:1.8}.attendance-toggle{margin-left:auto;display:inline-flex;gap:6px;align-items:center;font-size:10px;color:#b8d4ba}.roster-person .text-danger{margin-left:auto}.account-panel{max-width:700px;padding:25px;border:1px solid #373c47;background:#16181e;border-radius:8px}.account-panel .section-heading h2{font-size:25px}.account-summary{margin-top:27px;border-top:1px solid #3b414d;padding-top:22px}.account-summary h3{font-size:15px;margin-bottom:13px}.account-summary p{font-size:12px;line-height:1.9;color:#acb6c8;margin:9px 0}.account-summary>.button{margin-top:8px}.audit-search{display:grid;gap:9px;color:#bac2d2;font-size:12px;margin:24px 0}.audit-search input{width:100%;background:#15181e;border:1px solid #414956;padding:13px;border-radius:5px;color:#fff}.audit-list{display:grid;gap:12px}.audit-entry{padding:18px;background:#15181f;border:1px solid #353d4b;border-radius:6px}.audit-entry>div{display:flex;align-items:center;gap:13px;flex-wrap:wrap}.audit-entry strong{font-size:12px;color:#ded5df}.audit-entry time{margin-left:auto;color:#99a5b9;font-size:11px}.audit-entry p{font-size:12px;line-height:1.8;color:#b7c1d3;margin-top:12px}.audit-entry>small{display:block;font-size:10px;line-height:1.8;color:#8693a9;margin-top:9px;overflow-wrap:anywhere}.update-notice{position:fixed;z-index:40;top:18px;right:18px;width:410px;max-width:calc(100% - 36px);background:#35202a;border:1px solid #b45770;border-radius:8px;box-shadow:0 12px 60px #0009;padding:20px}.update-notice strong{font-size:14px}.update-notice p{font-size:12px;color:#d8bac5;line-height:1.8;margin:11px 0}.update-notice>div{display:flex;gap:9px;margin-top:16px}@media(max-width:640px){.login-page{padding:20px 14px}.login-card{width:auto;padding:25px 21px}.login-card h1{font-size:28px}.login-card input:not([type=checkbox]),.login-card select{font-size:16px}.logout-button{font-size:10px;padding:7px 3px}.top-actions{gap:6px}.top-actions .role-switch button{padding:7px 8px;font-size:9px}.nav-item{font-size:8px}.nav-item>svg:first-child{width:17px;height:17px}.account-panel{padding:19px 15px}.account-panel .section-heading{flex-wrap:wrap}.account-panel .section-heading h2{font-size:24px}.audit-search input{font-size:16px}.audit-entry{padding:15px}.audit-entry time{width:100%;margin-left:0}.roster-person{flex-wrap:wrap}.roster-person>div{max-width:calc(100% - 50px)}.attendance-toggle{margin-left:48px}.roster-person .text-danger{padding:6px 2px}.update-notice{right:12px;top:12px;max-width:calc(100% - 24px);padding:17px}.update-notice .button{font-size:11px}}@media(max-width:640px){.sidebar .nav-item{min-width:0;white-space:normal;text-align:center;font-size:8px;line-height:1.4;min-height:59px;justify-content:center}.main-content{padding-bottom:100px}}@media(max-width:900px){.hero-badge{width:141px;height:141px;right:25px;top:65px}}@media(max-width:640px){.hero-badge{width:124px;height:124px;right:-16px;top:58px;opacity:.23;z-index:-1}.hero h2{max-width:290px}}.coverage-hint{display:block;font-size:11px;color:#aeb6c5;line-height:1.7;white-space:normal}.checkbox-label input:disabled,.month-toggle input:disabled{cursor:not-allowed;opacity:.45}.compact-heading{margin:24px 0!important;padding:20px 23px;border:1px solid #45252e;border-radius:8px;background:linear-gradient(120deg,#211a20,#3c131c);min-height:86px;align-items:center}.club-social{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 0;color:#c9aeb9;font-size:12px;text-decoration:none}.compact-heading h1{font-size:30px;line-height:1.2}.dashboard-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;margin:20px 0 28px}.dashboard-stat{text-align:left;display:flex;flex-direction:column;gap:9px;min-height:112px;padding:18px;background:#19191e;border:1px solid #38343d;border-radius:7px;color:#dde1ea}.dashboard-stat:hover,.next-lesson:hover{border-color:#d92a40;background:#271b23}.dashboard-stat>span{font-size:12px;color:#afb6c5}.dashboard-stat>strong{font-size:26px}.dashboard-stat>small{color:#c4a8b4;font-size:11px}.payment-alert{border-color:#875333}.next-lessons{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px;margin:20px 0}.next-lesson{display:flex;flex-direction:column;text-align:left;gap:12px;padding:21px;border:1px solid #3b333d;border-radius:7px;background:#19191f;min-height:156px;color:#dee0e9}.next-lesson>strong{font-size:20px}.next-lesson>span{font-size:12px;color:#aab4c3}.next-lesson>b{font-size:15px;color:#dfbbc7}.next-lesson>small{font-size:11px;color:#d08c9f}.student-filters{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;margin:22px 0}.student-filters label{display:flex;flex-direction:column;gap:9px;font-size:12px;color:#bfc4d0}.student-filters input,.student-filters select{width:100%;min-height:44px;padding:11px;background:#16171c;border:1px solid #46404b;color:#eee;border-radius:5px;font:inherit}.text-button{color:#e9b6c5;background:transparent;text-align:left;padding:12px 0;text-decoration:underline;text-underline-offset:3px;font-size:12px;display:block;line-height:1.5}.login-links{display:flex;justify-content:space-between;gap:16px}.recovery-result{padding:20px;border:1px solid #9e6274;background:#31212a;border-radius:8px;margin:20px 0}.recovery-result output{display:block;font-family:monospace;font-size:17px;overflow-wrap:anywhere;line-height:1.8;margin:12px 0;color:#ffe4ee}.recovery-result p{font-size:12px;line-height:1.9;color:#c8b5c1;margin:12px 0}.permission-switches{align-items:start}.permission-switches .checkbox-label{margin:0;min-width:0}.admin-table .text-button{max-width:160px}@media(max-width:1000px){.student-filters{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.compact-heading{padding:17px!important;min-height:70px}.compact-heading h1{font-size:24px}.dashboard-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:16px 0 23px}.dashboard-stat{padding:14px;min-height:105px}.dashboard-stat>strong{font-size:23px}.dashboard-stat>span,.dashboard-stat>small{font-size:10px}.next-lessons{grid-template-columns:1fr}.next-lesson{min-height:135px;padding:18px}.student-filters input,.student-filters select{font-size:16px}.student-filters{grid-template-columns:1fr}.sidebar nav .nav-item{font-size:7px}.recovery-result{padding:16px}.permission-switches{gap:16px}}@media(max-width:640px){.admin-dashboard .next-lesson{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px 9px;min-height:98px;padding:15px}.admin-dashboard .next-lesson>strong{font-size:17px;grid-column:1;grid-row:1}.admin-dashboard .next-lesson>b{grid-column:2;grid-row:1;font-size:12px;align-self:center}.admin-dashboard .next-lesson>span{grid-column:1/3;grid-row:2;font-size:11px}.admin-dashboard .next-lesson>small{grid-column:1/3;grid-row:3;font-size:10px}.admin-dashboard .section-heading h2{font-size:20px}.admin-dashboard .section-heading>.button{font-size:10px;padding:10px}.admin-dashboard .next-lessons{gap:9px}.admin-dashboard .dashboard-stat{min-height:98px}}.password-input{display:flex;align-items:stretch;position:relative;width:100%;min-width:0}.password-input>input{width:100%;padding-right:48px!important}.password-input>button{position:absolute;right:1px;top:1px;bottom:1px;width:44px;display:grid;place-items:center;background:transparent;color:#d5b6c2;border-radius:5px}.password-input>button:hover{background:#382731}.heading-badge{width:58px;height:58px;flex-shrink:0;margin-left:auto}.compact-heading>div{min-width:0}.compact-heading{gap:16px}.student-actions{display:flex;flex-direction:column;gap:8px;min-width:140px}.student-actions .text-danger{margin-left:0;text-align:left}.calendar-tabs{margin-bottom:20px}.day-selector{display:flex;gap:6px;flex-wrap:wrap}.day-selector>button{padding:12px;background:#1b1d24;border:1px solid #3e3a45;border-radius:5px;color:#ccc}.day-selector>button.selected{background:#4a1925;border-color:#c92a41;color:#fff}.day-selector small{color:#b9a3ae}.template-row{display:grid;grid-template-columns:1.6fr 1fr .7fr .7fr 1.4fr;gap:12px;border:1px solid #443541;border-radius:6px;padding:16px}.template-row legend{font-size:12px;padding:0 7px;color:#dfbbc8}.template-row .text-danger{grid-column:1/-1;justify-self:end}.closure-list{display:grid;gap:12px;margin:22px 0}.closure-list>article{padding:18px;border:1px solid #3e3540;background:#18191f;display:flex;gap:12px;align-items:center;border-radius:6px}.closure-list>article>div{flex:1}.closure-list p{font-size:12px;color:#b6acb8;margin-top:8px}.student-overview .dashboard-stat>strong{font-size:18px;line-height:1.4}.student-notifications{display:grid;gap:10px;margin:20px 0}.student-notifications>article{padding:16px;display:flex;gap:15px;justify-content:space-between;align-items:center;border:1px solid #8c5268;background:#2b1d26;border-radius:6px}.student-notifications p{font-size:12px;line-height:1.8}.student-notifications .button{flex-shrink:0}.waitlist-control{padding:16px;margin-top:16px;border:1px solid #63526a;background:#251e2b;border-radius:6px;display:grid;gap:12px}.waitlist-control p{font-size:12px;line-height:1.7}.waitlist-control small{font-size:10px;color:#b7acbe;line-height:1.8}.lesson-cancellation{border-top:1px solid #663343;padding-top:18px;margin-top:22px}.lesson-cancellation summary{cursor:pointer;font-size:14px;color:#e8a5b6;margin-bottom:15px}.lesson-cancellation label,.manual-booking label{display:grid;gap:9px;font-size:12px;color:#b4bac7}.lesson-cancellation input,.manual-booking textarea{width:100%;padding:13px;border:1px solid #48414d;background:#111317;border-radius:5px;color:#eee;font:inherit}.manual-booking textarea{min-height:90px;resize:vertical}.manual-booking .checkbox-label{display:flex}.lesson-cancellation p{font-size:12px;color:#b5adbd;line-height:1.8;margin:14px 0}.roster-waiting p{padding:10px 0;font-size:12px;color:#c6b6c4}@media(max-width:900px){.template-row{grid-template-columns:1fr 1fr}.template-row>label:first-of-type{grid-column:1/-1}.template-row>label:last-of-type{grid-column:1/-1}}@media(max-width:640px){.heading-badge{width:44px;height:44px}.compact-heading{gap:10px}.compact-heading h1{font-size:22px}.template-row{padding:13px;gap:10px}.closure-list>article{flex-wrap:wrap}.closure-list>article>div{width:100%;flex-basis:100%}.student-notifications>article{flex-direction:column;align-items:flex-start}.password-input>input,.manual-booking textarea,.lesson-cancellation input{font-size:16px}.student-overview .dashboard-stats{grid-template-columns:1fr}.student-overview .dashboard-stat{min-height:96px}.student-overview .dashboard-stat>strong{font-size:17px}.sidebar nav{flex-wrap:wrap}.sidebar .nav-item{min-width:46px}.main-content{padding-bottom:145px}.manual-booking .button{min-height:44px}.day-selector>button{font-size:12px;padding:10px}.day-selector{gap:5px}}@media(max-width:640px){.compact-heading>div:first-child{width:auto;flex:1}.compact-heading>.heading-badge{order:2}.compact-heading>.button{order:3;flex-basis:100%}.student-overview .dashboard-stat small{font-size:11px}}.calendar-warnings{border:1px solid #876641;border-radius:7px;background:#2b231a;padding:18px;margin:18px 0;color:#ead5b4;font-size:13px;line-height:1.7}.calendar-warnings summary{cursor:pointer;margin-top:10px}.calendar-warnings article{padding:14px 0;border-top:1px solid #614f3b;overflow-wrap:anywhere}.calendar-warnings p{margin:8px 0}.calendar-review-counts{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0}.calendar-review-counts p{background:#29202b;border:1px solid #524050;border-radius:4px;padding:8px;font-size:12px}.calendar-review-list{max-height:45vh;overflow:auto;border:1px solid #493a47;padding:12px;border-radius:6px}.calendar-review-list summary{cursor:pointer;font-size:13px;color:#f2d9e5;padding:10px 0}.calendar-review-list p{font-size:12px;line-height:1.8;border-top:1px solid #392d36;padding:9px 0;overflow-wrap:anywhere}.calendar-review .form-actions{position:sticky;bottom:0;background:#18191e;padding-top:15px}.weekly-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap}.template-controls{display:flex;gap:8px;flex-wrap:wrap}.draft-note{font-size:12px;line-height:1.8;border-left:3px solid #d9a85e;padding:10px 14px;color:#e8c58f;background:#28221c}.audit-undo{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:14px}.compact-heading h1 em{font-weight:inherit}.template-controls .button{min-height:44px}.weekly-toolbar .day-selector{flex:1}.audit-entry{overflow-wrap:anywhere}@media(max-width:640px){.template-controls{width:100%}.template-controls .button{flex:1;padding:12px 10px}.weekly-toolbar .day-selector{flex-basis:100%}}.sidebar .mobile-more{display:none}.more-menu{display:grid;gap:12px;max-width:620px}.more-menu .button{justify-content:space-between;min-height:56px;font-size:16px}.compact-heading>.help-button{flex-shrink:0}.compact-heading>.heading-badge{margin-left:auto}.page-help-row{display:flex;justify-content:flex-end;margin:10px 0 18px}.help-button{display:flex;align-items:center;gap:7px;color:#d5c5cb;background:transparent;min-height:44px;padding:8px 0;font-size:13px}.help-dialog ol{padding-left:23px;margin:15px 0 24px}.help-dialog li{font-size:15px;line-height:1.7;margin-bottom:16px}.help-dialog>.button{width:100%}.birth-date{border:0;min-width:0;margin:0;padding:0}.birth-date legend{font-size:13px;margin-bottom:10px;color:#c4c7d0}.birth-date-fields{display:grid;grid-template-columns:1fr 1.7fr 1.2fr;gap:10px}.birth-date-fields label{min-width:0}.birth-date-fields select{width:100%;min-width:0;padding:12px 8px!important}.daily-schedule{max-width:850px;margin:0 auto}.daily-date{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:8px 0 20px}.daily-date>.icon-button{width:46px;height:46px;flex-shrink:0}.daily-date label{position:relative;display:grid;text-align:center;gap:5px;padding:12px;cursor:pointer;min-width:0;flex:1}.daily-date strong{font-size:22px;text-transform:capitalize}.daily-date label span{display:flex;align-items:center;justify-content:center;gap:7px;color:#c2b7c2;font-size:12px}.daily-date input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}.daily-date input::-webkit-calendar-picker-indicator{position:absolute;inset:0;width:100%;height:100%;cursor:pointer}.daily-date label:focus-within{outline:2px solid #e9a4b0;outline-offset:2px;border-radius:6px}.daily-filters{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px}.daily-filters label{display:flex;gap:10px;align-items:center;font-size:13px;color:#b9b7c1}.daily-filters select{font:inherit;color:#eee;background:#1b1d23;border:1px solid #45404b;border-radius:6px;padding:11px;max-width:230px}.daily-filters>.text-button{min-height:44px}.daily-lessons{display:grid;gap:16px}.daily-lesson{display:grid;grid-template-columns:56px minmax(0,1fr) auto;gap:13px 15px;align-items:center;padding:24px;border:1px solid #34313a;border-radius:16px;background:#191a1e}.daily-lesson.is-booked{border-color:#9e4153}.daily-lesson>.club-badge{grid-column:1;grid-row:1/3;width:56px;height:56px}.daily-lesson h3{grid-column:2;grid-row:1;font-size:23px;line-height:1.3}.daily-time{grid-column:3;grid-row:1/3;display:grid;gap:5px;text-align:right}.daily-time strong{font-size:31px;line-height:1.2}.daily-time span{font-size:17px;color:#b3afb9}.daily-places{grid-column:2;font-size:15px;color:#ccc5cf;line-height:1.6}.daily-places strong{color:#f1b4c0}.participants-button{grid-column:1/3;justify-self:start;min-height:44px;font-size:14px}.daily-book{grid-column:3;min-width:140px;min-height:48px;font-size:17px}.daily-lesson .block-reason,.daily-lesson .grace-note,.daily-lesson .waitlist-control{grid-column:1/-1;margin-top:0}.grace-note{padding:12px 14px;background:#342c20;border:1px solid #806332;border-radius:6px;font-size:13px;line-height:1.7;color:#f4d6a4;margin-top:12px}@media(max-width:900px)and (min-width:641px){.nav-item{font-size:11px;flex-direction:column;gap:5px}.sidebar .nav-item>svg~*{display:none}.sidebar .nav-item.mobile-more{display:none}}@media(max-width:640px){.sidebar nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));flex-wrap:nowrap;padding:6px 8px calc(6px + env(safe-area-inset-bottom));gap:6px}.sidebar .desktop-nav{display:none!important}.sidebar .mobile-more{display:flex}.sidebar nav .nav-item{font-size:13px;line-height:1.2;letter-spacing:0;min-height:59px;padding:9px 3px;gap:6px;flex-direction:column;white-space:nowrap}.sidebar nav .nav-item>svg:first-child{width:23px;height:23px}.sidebar nav .nav-count,.sidebar nav .nav-chevron{display:none}.main-content{padding:12px 14px 100px}.page-footer{margin-top:25px}.compact-heading{margin-bottom:0!important}.compact-heading h1{font-size:21px}.page-help-row{margin:0 0 6px}.demo-bar{padding:10px;font-size:10px;margin-bottom:12px}.demo-bar .local-state{display:none}.session-identity{margin-top:8px}.schedule-section>.section-heading{display:none}.schedule-toolbar{margin:0 0 12px}.layout-switch{gap:14px}.layout-switch button{font-size:12px;padding:9px 0;min-height:40px}.schedule-note{font-size:10px}.compact-heading>.help-button{order:4;width:40px;justify-content:center;padding:0}.compact-heading>.help-button span{display:none}.page-schedule .compact-heading{background:none;border:0;padding:8px 0!important;min-height:50px;margin-bottom:6px!important}.page-schedule .compact-heading>.heading-badge{display:none}.demo-bar>span{display:none}.demo-bar:after{content:"DEMO · Dati solo su questo dispositivo";font-size:11px}.is-online .demo-bar:after{content:"Dati condivisi con la palestra"}.student-overview .dashboard-stat:disabled{display:none!important}.page-schedule .compact-heading{margin-top:6px!important}.page-schedule .topbar{height:66px}.demo-bar{padding:7px 10px;margin-bottom:7px}.daily-date{gap:3px;margin:0 0 10px}.daily-date strong{font-size:19px}.daily-date label{padding:8px 2px}.daily-date>.icon-button{height:44px;width:36px}.daily-filters{margin-bottom:14px}.daily-filters label{font-size:12px}.daily-filters select{font-size:16px;max-width:220px}.daily-lesson{padding:19px 16px;grid-template-columns:43px minmax(0,1fr) auto;gap:9px 10px;border-radius:15px}.daily-lesson>.club-badge{width:43px;height:43px}.daily-lesson h3{font-size:19px}.daily-time strong{font-size:27px}.daily-time span{font-size:15px}.daily-places{font-size:13px;grid-column:1/3;grid-row:3}.daily-lesson>.club-badge{grid-row:1/3}.daily-lesson h3{grid-row:1/3}.daily-book{grid-column:2/4;grid-row:4;justify-self:end;min-width:145px;font-size:17px;min-height:46px}.participants-button{grid-column:1/2;grid-row:4;font-size:12px;white-space:nowrap;min-width:95px}.daily-lesson>.block-reason,.daily-lesson>.grace-note{font-size:12px}.birth-date-fields{gap:7px}.birth-date-fields select{font-size:16px!important}.student-overview .dashboard-stats{display:block;margin:12px 0}.student-overview .dashboard-stat{display:none}.student-overview .dashboard-stat:first-child{display:grid;min-height:auto;padding:13px;gap:5px;width:100%;text-align:left}.student-overview .dashboard-stat:first-child>span{font-size:11px}.student-overview .dashboard-stat:first-child>strong{font-size:15px}.student-overview .dashboard-stat:first-child>small{font-size:12px}.mobile-tools{display:none}}@media(max-width:640px){.student-overview .dashboard-stat:first-child{grid-template-columns:minmax(0,1fr) auto;padding:10px 12px;gap:4px}.student-overview .dashboard-stat:first-child>span{grid-column:1;grid-row:1}.student-overview .dashboard-stat:first-child>strong{grid-column:1;grid-row:2}.student-overview .dashboard-stat:first-child>small{grid-column:2;grid-row:1/3;max-width:110px;text-align:right;align-self:center}.daily-date label{display:flex;align-items:center;justify-content:center;gap:8px}.daily-date label span{font-size:0}.daily-date strong{font-size:17px}}.editor-form .payment-modes{display:grid;gap:12px;justify-items:center}.editor-form .payment-mode-option{display:flex;align-items:center;gap:14px;width:min(100%,430px);padding:12px;cursor:pointer}.editor-form .payment-mode-option input[type=radio]{width:22px;height:22px;min-width:22px;accent-color:var(--red);min-height:22px;padding:0;margin:0}.payment-mode-option span{display:grid;gap:5px;text-align:left}.operator-choices{display:grid;gap:10px;border:0;padding:0}.editor-form .operator-choice{display:flex;align-items:center;gap:12px;border:1px solid var(--border, #3b3c43);border-radius:8px;padding:14px;cursor:pointer}.operator-choice.selected{background:#41191f;border-color:#ed1a32}.editor-form .operator-choice input{width:20px;height:20px;min-height:20px;accent-color:var(--red);padding:0;margin:0}.operator-modal{max-width:540px}.template-dates{display:flex;gap:14px;flex-wrap:wrap;grid-column:1 / -1}.template-dates label{flex:1 1 160px}.closure-list article{flex-wrap:wrap}.calendar-tabs{flex-wrap:wrap}.renewal-summary p{font-size:12px;line-height:1.6;margin:7px 0}.renewal-summary>strong{font-size:15px}.renewal-summary{min-width:0;overflow-wrap:anywhere}@media(max-width:640px){.student-overview .dashboard-stat.renewal-status{display:block;margin-top:8px;padding:12px;min-height:0}.renewal-summary p{margin:4px 0}.renewal-summary>strong{font-size:14px}}
