:root{--ink:#202824;--muted:#707875;--line:#e2e7e4;--surface:#f6f8f7;--green:#17694c;--green-light:#eaf4ee;--red:#aa4343;--red-light:#fff0ed;--amber:#946919;--amber-light:#fbf3df;--teal:#147d8b;--teal-light:#e8f4f6;--purple:#77599a;--purple-light:#f2edf7;--header:76px;--sidebar:216px}
*{box-sizing:border-box;letter-spacing:0}body{margin:0;color:var(--ink);font:14px/1.5 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:#fff}button,input,select{font:inherit}button,a,input,select{ -webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{opacity:.48;cursor:not-allowed}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #66aa88;outline-offset:3px}button svg{flex-shrink:0}svg{width:18px;height:18px;stroke-width:1.8;flex-shrink:0}a{color:var(--green);text-decoration:none}a:hover{text-decoration:underline}h1,h2,h3,p{margin:0}h1{font-size:30px;line-height:1.2;font-weight:650}h2{font-size:18px;line-height:1.4;font-weight:600}h3{font-size:16px;font-weight:600}.muted{color:var(--muted);font-size:12px}[hidden]{display:none!important}.eyebrow{font-size:10px;font-weight:650;color:var(--muted);margin-bottom:8px}.topbar{height:var(--header);position:fixed;inset:0 0 auto;display:flex;align-items:center;justify-content:space-between;padding:0 28px;background:#fff;border-bottom:1px solid var(--line);z-index:30;gap:16px}.brand{display:flex;align-items:center;gap:12px;color:var(--ink);flex-shrink:0}.brand:hover{text-decoration:none}.brand-mark{display:grid;place-items:center;width:38px;height:40px;background:var(--green);border-radius:7px;color:white}.brand-mark svg{width:23px;height:23px}.brand strong{display:block;font-size:20px;font-weight:700;line-height:1.1}.brand small{display:block;color:var(--muted);font-size:11px;margin-top:3px}.topbar-right{display:flex;gap:22px;align-items:center}.demo-label{font-size:11px;font-weight:600;color:var(--amber);background:var(--amber-light);border:1px solid #eee0b9;border-radius:4px;padding:4px 9px;white-space:nowrap}.worker-status{display:flex;align-items:center;gap:7px;font-size:11px;color:var(--muted)}.status-dot{width:6px;height:6px;flex-shrink:0;border-radius:50%;background:#aab3ad}.worker-status.online .status-dot{background:#2c9b65}.profile-button{display:flex;align-items:center;gap:9px;background:none;border:0;padding:0;font-size:12px}.profile-button>svg{width:14px}.avatar{background:#e9eeeb;color:var(--green);border-radius:50%;width:32px;height:32px;display:grid;place-items:center;font-weight:600}.sidebar{position:fixed;inset:var(--header) auto 0 0;width:var(--sidebar);padding:34px 16px 20px;border-right:1px solid var(--line);background:#fcfdfc;display:flex;flex-direction:column;z-index:20}.nav-label{font-size:9px;font-weight:650;color:#929a96;padding:0 16px;margin-bottom:13px}.sidebar nav{display:grid;gap:5px}.nav-item{border:0;background:transparent;color:#6d7570;display:flex;align-items:center;gap:12px;padding:12px 15px;border-radius:6px;text-align:left;font-size:12px;min-height:43px}.nav-item:hover{background:#f0f3f1}.nav-item.active{color:var(--green);background:var(--green-light);font-weight:600}.nav-count{margin-left:auto;font-size:10px;background:#d8eadd;padding:1px 5px;border-radius:3px;min-width:17px;text-align:center}.sidebar-bottom{margin-top:auto;display:grid;gap:22px;padding:18px 16px 0;border-top:1px solid var(--line)}.club-connection{display:flex;align-items:center;gap:8px;font-size:11px;color:var(--muted)}.club-connection.connected{color:var(--green)}.club-logo{width:136px;max-width:100%;height:auto;opacity:.85}.logout-button{background:transparent;border:0;color:var(--muted);display:flex;align-items:center;gap:10px;font-size:12px;padding:0}.workspace{margin-left:var(--sidebar);padding:calc(var(--header) + 34px) 38px 100px;max-width:1660px}.page-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:28px;gap:20px}.date-control{display:flex;align-items:center;gap:9px}.icon-button{height:34px;width:34px;min-width:34px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:5px;background:#fff;color:#626d66;padding:0}.icon-button:hover{background:var(--surface)}.date-picker{display:flex;align-items:center;gap:8px;background:var(--surface);border:1px solid var(--line);padding:6px 10px;border-radius:5px}.date-picker input{border:0;background:transparent;font-size:12px;width:120px;color:var(--ink);padding:0;min-height:23px}.date-picker svg{width:16px;color:var(--muted)}.overview-band{display:flex;gap:40px;padding:18px 0 21px;border-bottom:1px solid var(--line);margin-bottom:28px}.overview-band>div{display:flex;align-items:center;gap:8px;font-size:11px;color:var(--muted);flex-wrap:wrap}.overview-band strong{font-weight:600;color:var(--ink);font-size:12px}.overview-band svg{width:16px;height:16px;color:#8b9590}.week-strip{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;margin-bottom:26px}.day-button{height:77px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;background:#fff;border:1px solid var(--line);border-radius:6px;color:var(--muted);position:relative}.day-button:hover{border-color:#9db9a8}.day-button span{font-size:11px}.day-button strong{font-size:22px;line-height:1;font-weight:500;color:var(--ink)}.day-button.active{background:var(--green);color:#d5e9df;border-color:var(--green)}.day-button.active strong{color:#fff}.day-button.today:after{content:"";width:3px;height:3px;background:currentColor;border-radius:50%;position:absolute;bottom:6px}.day-button:disabled{background:#fafbfa;opacity:.5}.roster-toolbar{display:flex;gap:12px;align-items:center;margin-bottom:28px}.search-field{position:relative;flex:1;display:flex;align-items:center;gap:9px;max-width:360px;border:1px solid var(--line);border-radius:5px;padding:8px 11px;color:#89938d;height:37px}.search-field input{width:100%;border:0;background:transparent;outline:none;padding:0;font-size:12px;min-width:0}.roster-toolbar select{margin-left:auto;max-width:160px;font-size:12px;border:1px solid var(--line);border-radius:5px;background:white;padding:8px 10px;height:37px;color:#5b655f}.checkbox-label{display:flex;align-items:center;gap:6px;font-size:11px;color:var(--muted);white-space:nowrap}.checkbox-label input,input[type=checkbox]{accent-color:var(--green);cursor:pointer}.section-caption{display:flex;justify-content:space-between;align-items:center;margin-bottom:13px;gap:16px}.section-caption h2{font-size:14px;font-weight:600}.lesson-table-header,.lesson-row{display:grid;grid-template-columns:34px 96px minmax(100px,1fr) 75px 158px;column-gap:16px;align-items:center}.lesson-table-header{height:35px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#f9faf9;color:#929a95;font-size:9px;padding:0 13px;font-weight:500}.lesson-row{min-height:92px;padding:18px 13px;border-bottom:1px solid var(--line);transition:background .12s}.lesson-row.selected{background:#f3f8f4}.lesson-row.past{opacity:.52}.lesson-check{width:16px;height:16px;margin:0}.lesson-time strong{display:block;font-size:14px;font-weight:600}.lesson-time span{color:var(--muted);font-size:11px}.lesson-info{display:flex;align-items:center;gap:13px;min-width:0}.activity-icon{width:36px;height:36px;border-radius:6px;display:grid;place-items:center;flex-shrink:0;background:var(--green-light);color:var(--green)}.activity-icon svg{width:20px;height:20px}.activity-icon.cycle{background:var(--teal-light);color:var(--teal)}.activity-icon.wellness{background:var(--amber-light);color:var(--amber)}.activity-icon.strength{background:var(--red-light);color:var(--red)}.activity-icon.pilates{background:var(--purple-light);color:var(--purple)}.lesson-name{font-size:13px;font-weight:600;overflow-wrap:anywhere}.lesson-studio{font-size:11px;color:var(--muted);margin-top:3px}.lesson-places{font-size:12px}.lesson-places strong{font-size:14px;font-weight:600}.lesson-places span{font-size:10px;color:var(--muted);margin-left:3px}.lesson-booking{display:flex;flex-direction:column;align-items:flex-start;gap:5px}.badge{display:inline-flex;align-items:center;gap:4px;font-size:10px;font-weight:500;color:var(--muted);background:#f0f2f1;padding:3px 7px;border-radius:4px;white-space:nowrap;max-width:100%}.badge.green{color:var(--green);background:var(--green-light)}.badge.amber{color:var(--amber);background:var(--amber-light)}.badge.red{color:var(--red);background:var(--red-light)}.badge.teal{color:var(--teal);background:var(--teal-light)}.badge svg{width:11px;height:11px}.booking-detail{font-size:10px;color:var(--muted)}.primary,.secondary,.danger-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:37px;border-radius:5px;padding:8px 14px;font-size:12px;font-weight:550;white-space:normal;text-align:center}.primary{background:var(--green);color:#fff;border:1px solid var(--green)}.primary:hover{background:#10553d}.secondary{background:#fff;color:var(--ink);border:1px solid var(--line)}.secondary:hover{background:var(--surface)}.danger-button{background:var(--red);color:white;border:1px solid var(--red)}.text-button{border:0;background:none;color:var(--muted);font-size:11px;padding:7px 10px}.text-button.danger{color:var(--red)}.selection-bar{position:fixed;bottom:0;left:var(--sidebar);right:0;z-index:25;background:#fff;border-top:1px solid #c9d9ce;box-shadow:0 -3px 16px #1d3b2410;display:flex;justify-content:space-between;align-items:center;padding:15px 38px;min-height:71px;gap:12px}.selection-bar>div{display:flex;align-items:center;gap:10px}.selection-bar strong{font-size:12px}.empty-state{padding:64px 20px;text-align:center;color:var(--muted);display:flex;flex-direction:column;align-items:center;gap:12px}.empty-state>svg{width:30px;height:30px;color:#92aa9b}.empty-state h3{color:#55635a}.empty-state p{font-size:12px;max-width:320px}.empty-state .primary{margin-top:6px}.spin{animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.schedule-row{display:grid;grid-template-columns:42px minmax(130px,1fr) 190px 98px 114px;gap:16px;align-items:center;padding:20px 8px;border-bottom:1px solid var(--line)}.schedule-row:first-child{border-top:1px solid var(--line)}.schedule-meta{font-size:11px;color:var(--muted);margin-top:4px}.schedule-target strong{display:block;font-size:12px;font-weight:550}.schedule-target span{font-size:10px;color:var(--muted)}.row-actions{display:flex;gap:6px;justify-content:flex-end}.row-actions .icon-button{width:30px;min-width:30px;height:30px}.row-actions svg{width:15px;height:15px}.history-row{display:grid;grid-template-columns:36px minmax(120px,1fr) 165px 145px;align-items:center;gap:15px;padding:17px 8px;border-bottom:1px solid var(--line)}.history-row:first-child{border-top:1px solid var(--line)}.history-row .message{font-size:11px;color:var(--muted);margin-top:5px;max-width:500px}.mail-heading{margin-top:38px}.mail-row{display:grid;grid-template-columns:25px minmax(160px,1fr) 135px;align-items:center;gap:12px;padding:15px 8px;border-bottom:1px solid var(--line)}.mail-row>svg{color:#95a49b}.mail-row strong{font-size:12px;font-weight:500}.mail-row p{font-size:11px;color:var(--red);margin-top:5px;overflow-wrap:anywhere}.settings-section{display:grid;grid-template-columns:230px minmax(0,560px);gap:28px;padding:28px 0;border-top:1px solid var(--line)}.settings-label{display:flex;align-items:flex-start;gap:9px;flex-wrap:wrap}.settings-label>svg{margin-top:2px;color:var(--muted)}.settings-label h2{font-size:14px}.settings-label .badge{margin-left:26px}.settings-form{display:flex;flex-direction:column;gap:20px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}label:not(.checkbox-label):not(.toggle-label):not(.search-field):not(.date-picker){display:flex;flex-direction:column;gap:7px;font-size:12px;font-weight:500}input:not([type=checkbox]):not([type=hidden]){min-height:39px;border:1px solid #d8dfda;border-radius:5px;padding:9px 11px;background:#fff;color:var(--ink);width:100%;min-width:0;font-size:13px}.search-field input:not([type=checkbox]){min-height:0;border:0;padding:0;font-size:12px}.date-picker input:not([type=checkbox]){min-height:23px;border:0;padding:0;background:transparent;font-size:12px;width:120px}.form-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.toggle-label{display:flex;align-items:center;gap:10px;font-size:12px}.switch{appearance:none;background:#d7ded9;width:32px;height:18px;border-radius:20px;position:relative;transition:background .15s;margin:0}.switch:before{content:"";position:absolute;width:12px;height:12px;left:3px;top:3px;border-radius:50%;background:#fff;transition:transform .15s}.switch:checked{background:var(--green)}.switch:checked:before{transform:translateX(14px)}.account-summary{align-items:flex-start;font-size:12px;color:var(--muted)}.settings-form>.secondary{align-self:flex-start}.notice{border-radius:5px;padding:12px 14px;font-size:12px;margin-bottom:20px;border:1px solid var(--line)}.notice.error{background:var(--red-light);color:var(--red);border-color:#f4d8d1}.notice.success{background:var(--green-light);color:var(--green);border-color:#cce3d3}.toast{position:fixed;bottom:95px;left:50%;transform:translateX(-50%);padding:12px 18px;background:#263b30;color:white;border-radius:6px;font-size:12px;max-width:calc(100% - 32px);width:max-content;box-shadow:0 6px 24px #0002;z-index:100}.toast.error{background:var(--red)}dialog{border:1px solid var(--line);border-radius:8px;padding:24px;width:520px;max-width:calc(100% - 28px);color:var(--ink);box-shadow:0 20px 80px #15321a26;max-height:calc(100dvh - 40px)}dialog::backdrop{background:#15271d66}.dialog-header{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:23px}.dialog-header .eyebrow{margin-bottom:5px}.dialog-header h2{font-size:21px}.dialog-header>.icon-button{border:0}.segmented{display:flex;padding:3px;border:1px solid var(--line);border-radius:6px;background:var(--surface);margin-bottom:22px}.segmented button{display:flex;flex:1;justify-content:center;align-items:center;gap:7px;border:0;background:transparent;padding:8px;border-radius:4px;font-size:12px;color:var(--muted)}.segmented button.active{background:#fff;box-shadow:0 1px 4px #0001;color:var(--green);font-weight:600}.confirm-row{padding:12px 0;border-bottom:1px solid var(--line)}.confirm-row strong{font-size:13px}.confirm-row>div{display:flex;align-items:center;justify-content:space-between;gap:10px}.confirm-row p{font-size:11px;color:var(--muted);margin-top:5px}.dialog-footer{display:flex;justify-content:flex-end;gap:10px;margin-top:24px}.dialog-copy{font-size:13px;color:var(--muted)}.mobile-nav{display:none}.auth-page{background:var(--surface);min-height:100dvh}.auth-page .topbar{background:transparent;position:static}.auth-main{min-height:calc(100dvh - 135px);display:flex;justify-content:center;align-items:center;padding:40px 20px}.auth-form{width:414px;background:#fff;border:1px solid var(--line);border-radius:8px;padding:32px 34px;box-shadow:0 3px 16px #1c3b2610}.auth-heading{margin-bottom:25px}.auth-heading img{display:block;object-fit:contain;margin:0 auto 26px;max-width:100%}.auth-heading .eyebrow{margin-bottom:6px}.auth-heading h1{font-size:28px}.auth-form form{display:flex;flex-direction:column;gap:19px}.auth-form label{font-size:12px}.form-link{font-size:11px;align-self:flex-end;margin-top:-9px}.full-width{width:100%;justify-content:space-between;min-height:42px}.auth-footer{margin-top:24px;font-size:12px;color:var(--muted);text-align:center}.auth-bottom{height:55px;text-align:center;font-size:11px;color:#929c95;padding:10px}.view{animation:appear .2s ease-out}@keyframes appear{from{opacity:.5}to{opacity:1}}
@media(min-width:1600px){.workspace{padding-left:50px;padding-right:50px}.lesson-row{min-height:100px}.overview-band{gap:65px}}
@media(max-width:1120px){.workspace{padding-left:24px;padding-right:24px}.lesson-table-header,.lesson-row{column-gap:10px;grid-template-columns:26px 76px minmax(105px,1fr) 54px 130px}.activity-icon{width:31px;height:33px}.lesson-info{gap:9px}.overview-band{gap:22px}.settings-section{grid-template-columns:180px minmax(0,1fr);gap:20px}.schedule-row{grid-template-columns:34px minmax(110px,1fr) 140px 76px 74px;gap:10px}.row-actions{flex-wrap:wrap}.history-row{grid-template-columns:30px minmax(120px,1fr) 135px 120px;gap:10px}.profile-name{max-width:90px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}}
@media(max-width:900px){:root{--sidebar:74px}.sidebar{padding:30px 10px 20px}.nav-label,.nav-item span,.sidebar-bottom .club-logo,.sidebar-bottom .club-connection span,.logout-button span{display:none}.nav-item{justify-content:center;padding:13px}.sidebar-bottom{padding:15px 12px 0}.club-connection,.logout-button{justify-content:center}.topbar-right{gap:14px}.overview-band{flex-wrap:wrap;gap:12px 24px}.settings-section{grid-template-columns:160px minmax(0,1fr)}.selection-bar{padding-left:24px;padding-right:24px}}
@media(max-width:640px){:root{--header:67px;--sidebar:0px}h1{font-size:27px}.topbar{padding:0 17px;gap:10px}.brand{gap:8px}.brand strong{font-size:19px}.brand-mark{width:32px;height:35px}.brand small{font-size:10px}.profile-name,.profile-button>svg,.worker-status{display:none}.topbar-right{gap:9px}.demo-label{font-size:9px;padding:3px 5px;white-space:normal;max-width:119px;text-align:center}.sidebar{display:none}.workspace{margin:0;padding:calc(var(--header) + 25px) 17px 145px}.page-heading{gap:15px;align-items:flex-start;flex-wrap:wrap;margin-bottom:22px}.page-heading .eyebrow{font-size:9px}.date-control{gap:7px;margin-left:auto;margin-top:7px}.date-picker{padding:3px 6px;gap:4px}.date-picker>svg{display:none}.date-picker input:not([type=checkbox]){width:108px;font-size:11px}.date-control .icon-button{width:28px;min-width:28px;height:30px}.overview-band{padding:12px 0 17px;margin-bottom:20px;gap:10px 20px}.overview-band>div:first-child{flex-basis:100%}.overview-band>div{font-size:10px}.overview-band strong{font-size:11px}.week-strip{gap:5px;margin-bottom:19px}.day-button{height:65px;gap:6px;border-radius:5px}.day-button strong{font-size:19px}.day-button span{font-size:9px}.roster-toolbar{gap:8px;flex-wrap:wrap;margin-bottom:22px}.search-field{flex-basis:100%;max-width:none;height:36px}.roster-toolbar select{margin-left:0;max-width:none;flex:1;height:33px;padding:5px 8px}.roster-toolbar .icon-button{height:33px;width:33px;min-width:33px}.section-caption h2{font-size:12px}.section-caption .muted{font-size:10px}.lesson-table-header,.lesson-row{grid-template-columns:20px 47px minmax(100px,1fr) 66px;gap:9px;padding-left:2px;padding-right:2px}.lesson-table-header{height:31px;font-size:8px}.lesson-table-header>span:nth-child(4){display:none}.lesson-row{min-height:101px;position:relative;padding-top:16px;padding-bottom:26px;align-items:start}.lesson-check{width:15px;height:15px;margin-top:3px}.lesson-time strong{font-size:12px;line-height:1.7}.lesson-time span{font-size:10px}.lesson-info{gap:7px}.activity-icon{display:none}.lesson-name{font-size:12px;line-height:1.8}.lesson-studio{font-size:10px;margin-top:0}.lesson-places{position:absolute;bottom:10px;left:78px;font-size:10px}.lesson-places strong{font-size:11px}.lesson-booking{align-items:flex-end;text-align:right;padding-top:2px;gap:5px}.badge{font-size:8px;padding:2px 5px}.booking-detail{font-size:8px;white-space:normal;max-width:66px}.mobile-nav{position:fixed;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));inset:auto 0 0;z-index:40;background:#fff;border-top:1px solid var(--line);height:65px;padding:5px 10px max(5px,env(safe-area-inset-bottom))}.mobile-nav button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;background:none;border:0;font-size:10px;color:var(--muted);padding:3px}.mobile-nav button svg{width:19px;height:19px}.mobile-nav button.active{color:var(--green);font-weight:600}.selection-bar{left:0;bottom:65px;padding:12px 17px;min-height:66px}.selection-bar strong{font-size:11px}.selection-bar>div{gap:2px}.selection-bar .primary{font-size:11px;padding:8px 10px}.selection-bar .text-button{font-size:10px;padding:5px}.selection-bar .primary svg{width:15px}.schedule-row{grid-template-columns:27px minmax(130px,1fr) 67px;gap:10px;padding:17px 0}.schedule-target{grid-column:2;grid-row:2}.schedule-row>.badge{grid-column:3;grid-row:1;justify-self:end}.schedule-row>.row-actions{grid-column:3;grid-row:2}.schedule-meta{font-size:10px}.schedule-target strong{font-size:11px}.history-row{grid-template-columns:26px minmax(115px,1fr) 90px;padding:17px 0;gap:8px}.history-row>.history-date{grid-column:2;grid-row:2}.history-row>.badge{grid-column:3;grid-row:1;justify-self:end}.history-date{font-size:10px}.mail-row{grid-template-columns:20px minmax(120px,1fr) 75px;gap:8px;padding:13px 0}.mail-row strong{font-size:11px}.settings-section{grid-template-columns:1fr;gap:19px;padding:23px 0}.settings-label{align-items:center}.settings-label .badge{margin-left:auto}.form-grid{grid-template-columns:1fr;gap:18px}.settings-form{gap:18px}.settings-label h2{font-size:15px}.toast{bottom:145px}.auth-main{padding:25px 17px;min-height:calc(100dvh - 122px)}.auth-form{padding:28px 24px}.auth-heading img{margin-bottom:22px;width:150px;height:78px}dialog{padding:20px;max-height:calc(100dvh - 26px)}.dialog-header h2{font-size:19px}.confirm-row>div{align-items:flex-start}.confirm-row strong{font-size:12px}.confirm-row .muted{font-size:10px;max-width:110px;text-align:right}.page-heading>.primary{font-size:11px}.settings-form label{font-size:12px}.auth-page .demo-label{max-width:126px}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
.language-form{margin:0}.language-form label{display:flex;align-items:center;gap:6px}.language-select{max-width:148px;border:1px solid var(--line);border-radius:4px;background:white;padding:6px;font-size:11px;color:var(--ink)}.language-form svg{width:16px}.account-summary,.history-row>div{overflow-wrap:anywhere}
.booking-brand{min-width:0;flex-shrink:1}.booking-brand .brand-mark{flex-shrink:0}.booking-brand>span:last-child{min-width:0}.booking-brand strong,.booking-brand small{overflow-wrap:anywhere}
@media(max-width:640px){.topbar .brand.booking-brand strong{font-size:13px}}
.settings-form select{border:1px solid #d4dcd7;border-radius:4px;padding:10px;background:#fff;width:100%;min-height:40px}#account-list .history-row{grid-template-columns:26px minmax(0,1fr) 120px}#account-list .badge{justify-self:end}
.language-form label{flex-direction:row}
.email-preferences{border:0;padding:0;margin:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 20px}.email-preferences legend{font-size:12px;font-weight:600;margin-bottom:10px}.email-preferences .toggle-label{min-height:36px;cursor:pointer}.lesson-select{display:flex;align-items:center;min-height:32px;cursor:pointer}.booked-actions{display:flex;gap:10px;align-items:center;justify-content:flex-end}
.lesson-booking .badge{white-space:normal;overflow-wrap:anywhere;line-height:1.4}
.lesson-row.booked,.lesson-row.booked:hover{background:#eaf4ee;box-shadow:inset 3px 0 #247447}.lesson-row.booked .activity-icon{background:#d7eadf;color:#17694c}.lesson-row.unavailable{background:#fafafa}.lesson-booking .booking-detail{overflow-wrap:anywhere;white-space:normal;max-width:100%}.settings-form textarea{font:inherit;border:1px solid #d4dcd7;border-radius:4px;padding:10px;background:#fff;width:100%;min-height:88px;resize:vertical}.settings-form textarea:focus-visible{outline:3px solid #66aa88;outline-offset:3px}
.schedule-tabs{display:flex;border-bottom:1px solid var(--line);gap:24px;margin-bottom:22px}.schedule-tabs button{display:flex;align-items:center;gap:8px;border:0;border-bottom:2px solid transparent;background:none;padding:12px 0;color:var(--muted);font-size:13px}.schedule-tabs button[aria-selected=true]{border-bottom-color:var(--green);color:var(--green);font-weight:600}.booked-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.booked-toolbar>div{display:flex;align-items:center;gap:10px}.booked-row{display:grid;grid-template-columns:28px minmax(0,1fr) 170px 100px;align-items:center;gap:14px;padding:22px 0;border-bottom:1px solid var(--line)}.booked-row>svg{color:var(--green)}.booked-row>.badge{justify-self:end}.booked-time{display:grid;gap:3px;font-size:12px}.booked-time span{color:var(--muted)}
@media(max-width:640px){.schedule-tabs{gap:18px}.schedule-tabs button{font-size:12px;gap:6px}.schedule-tabs svg{width:16px}.booked-toolbar{align-items:flex-start}.booked-toolbar>div{gap:5px}.booked-toolbar #booked-sync{font-size:10px;max-width:102px;text-align:right}.booked-row{grid-template-columns:22px minmax(0,1fr) 78px;gap:8px;padding:17px 0}.booked-time{grid-column:2;grid-row:2;font-size:11px}.booked-row>.badge{grid-column:3;grid-row:1}.booked-toolbar .checkbox-label{font-size:10px}}
@media(max-width:640px){.schedule-row{grid-template-columns:minmax(0,1fr) 76px;gap:10px}.schedule-row>div:nth-child(2){grid-column:1;grid-row:1}.schedule-target{grid-column:1;grid-row:2}.schedule-row>.badge{grid-column:2;grid-row:1}.schedule-row>.row-actions{grid-column:2;grid-row:2}.schedule-row .lesson-name{overflow-wrap:normal}.schedule-meta{overflow-wrap:anywhere}#account-list .history-row{grid-template-columns:20px minmax(0,1fr) 64px}}
@media(max-width:640px){.topbar-right{gap:8px}.language-select{max-width:106px;font-size:10px;padding:4px}.language-form svg{display:none}.topbar .worker-status,.topbar .demo-label{display:none}.mobile-nav{grid-template-columns:repeat(auto-fit,minmax(0,1fr))}.topbar .brand strong{font-size:17px}.profile-name{display:none}.brand{gap:6px}.topbar{gap:8px}.section-caption h2{font-size:15px}.overview-band strong{overflow-wrap:anywhere}.settings-label{flex-wrap:wrap}.form-actions{flex-wrap:wrap}.history-row>div{min-width:0}.auth-page .topbar{justify-content:space-between}.auth-page .demo-label{display:none}}
@media(max-width:640px){:root{--mobile-nav-height:72px}.topbar{padding-left:14px;padding-right:14px}.profile-button{min-width:44px;min-height:44px;justify-content:center}.language-select{min-height:44px;font-size:12px;max-width:98px}.primary,.secondary,.danger-button,.text-button{min-height:48px;font-size:14px;padding:11px 14px}.icon-button,.date-control .icon-button,.roster-toolbar .icon-button{height:44px;width:44px;min-width:44px}.date-control{margin-top:0}.date-picker{min-height:44px;padding:4px 8px}.date-picker input:not([type=checkbox]){font-size:16px;width:134px;min-height:32px}.search-field,.roster-toolbar select{min-height:44px;height:44px}.search-field input,.roster-toolbar select,.settings-form input:not([type=checkbox]),.settings-form textarea,.settings-form select,.auth-form input:not([type=checkbox]){font-size:16px}.checkbox-label,.toggle-label{min-height:44px;cursor:pointer;white-space:normal}.checkbox-label input{width:22px;height:22px;flex-shrink:0}.week-strip{gap:2px;grid-template-columns:repeat(7,minmax(44px,1fr));overflow-x:auto}.day-button{min-width:44px}.lesson-table-header,.lesson-row{grid-template-columns:44px 48px minmax(0,1fr) 76px;gap:7px}.lesson-select{width:44px;min-height:44px;justify-content:center}.lesson-check{width:24px;height:24px;margin:0}.lesson-places{left:106px}.booking-detail{max-width:76px}.mobile-nav{height:var(--mobile-nav-height)}.mobile-nav button{min-height:52px;font-size:11px}.selection-bar{bottom:var(--mobile-nav-height);display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;padding:12px 14px}.selection-bar>div{gap:6px;min-width:0}.selection-bar strong{min-width:0;overflow-wrap:anywhere}.selection-bar .primary{font-size:12px;min-height:48px;max-width:160px;padding:10px}.selection-bar .primary svg{width:18px}.schedule-row{grid-template-columns:minmax(0,1fr) 98px}.row-actions{flex-wrap:nowrap}.schedule-tabs button{min-height:48px;font-size:13px}.form-actions>button{flex:1;min-width:140px}.dialog-footer{flex-wrap:wrap}.dialog-footer>button{flex:1;min-width:110px}.segmented button{flex-direction:column;min-width:0;min-height:68px;font-size:12px;padding:8px 4px}.email-preferences{grid-template-columns:minmax(0,1fr);gap:4px}.email-preferences .toggle-label{min-height:48px}.booked-actions{grid-column:3;grid-row:1;flex-direction:column;align-items:flex-end}.booked-actions .icon-button{flex-shrink:0}.workspace{padding-bottom:160px}.toast{bottom:154px}}
