.schedule-school{display:flex;align-items:center;gap:10px;text-decoration:none;min-width:0}.school-logo{width:72px;height:44px;object-fit:contain;flex-shrink:0}.schedule-school>span{overflow-wrap:anywhere}.dance-style-initial{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:var(--ui-tint);color:var(--ui-role-text);font-size:20px;font-weight:650;flex-shrink:0}.school-contacts{display:flex;flex-wrap:wrap;gap:8px 18px;margin-top:16px;font-size:13px;color:var(--ui-muted)}.app .calendar-item .session.social{background:#fff3d4}@media(max-width:650px){.school-logo{width:64px;height:38px}.dance-style-initial{width:40px;height:40px}}@media(max-width:650px){.grouped-calendar .calendar{min-width:var(--mobile-calendar-min-width,0px)}.calendar-time-axis,.calendar-time-heading{position:sticky;left:0;z-index:3;background:var(--ui-bg)}}.app .style-name{white-space:normal;overflow-wrap:anywhere}.teacher-lesson-list{max-width:1096px;padding-bottom:24px}.teacher-lesson-items{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:10px}.lesson-row{display:grid;grid-template-columns:152px minmax(0,1fr) auto 20px;align-items:center;gap:24px;width:100%;min-height:112px;padding:18px 20px;border:1px solid var(--ui-divider);border-radius:var(--radius-control);background:var(--ui-surface);text-align:left;color:var(--ui-text)}.lesson-row:hover{background:var(--ui-surface-raised);border-color:var(--ui-border)}.lesson-when{display:flex;flex-direction:column;gap:6px;font-size:14px;line-height:20px}.lesson-when>strong{font-weight:600}.lesson-time-line{display:flex;flex-wrap:wrap;align-items:center;gap:5px 8px}.lesson-time{font-size:15px;line-height:22px;font-variant-numeric:tabular-nums;white-space:nowrap}.lesson-duration{font-size:13px;line-height:18px;font-weight:600;color:var(--ui-muted);white-space:nowrap}.lesson-content{display:flex;flex-direction:column;gap:10px;min-width:0}.lesson-list-heading{display:flex;align-items:baseline;flex-wrap:wrap;gap:6px 10px}.lesson-list-heading>strong{font-size:17px;line-height:24px;font-weight:600;overflow-wrap:anywhere}.lesson-list-level{max-width:100%;font-size:12px;line-height:18px;font-weight:400;color:var(--ui-muted);white-space:normal}.lesson-row .teacher-names{gap:8px 16px}.lesson-row .teacher-name{font-size:14px;line-height:20px;gap:7px}.lesson-start{font-size:13px;line-height:20px;color:var(--ui-role-text)}.lesson-location{display:flex;align-items:center;white-space:nowrap}.lesson-open-icon{display:block;width:20px;height:20px;flex-shrink:0;background:var(--ui-muted);mask:url(/assets/icons/caret-down-fill.svg) center/contain no-repeat;transform:rotate(-90deg)}@media(max-width:800px){.lesson-row{grid-template-columns:130px minmax(0,1fr) auto 16px;gap:16px;padding:16px}.lesson-open-icon{width:16px;height:16px}}@media(max-width:650px){.teacher-lesson-items{gap:10px}.lesson-row{grid-template-columns:minmax(0,1fr) 20px;gap:12px;padding:16px;min-height:0}.lesson-when{grid-column:1/-1;flex-direction:row;flex-wrap:wrap;justify-content:flex-start;align-items:baseline;gap:4px 8px}.lesson-time-line{justify-content:flex-start}.lesson-time{font-size:14px;line-height:20px}.lesson-content{grid-column:1;grid-row:2;gap:10px}.lesson-list-heading>strong{font-size:16px;line-height:22px}.lesson-row .teacher-names{gap:8px 12px}.lesson-location{grid-column:1;grid-row:3}.lesson-open-icon{grid-column:2;grid-row:2/4;justify-self:end;width:20px;height:20px}}.level-picker{width:100%;min-width:0}.level-picker-options{display:grid;grid-template-columns:minmax(116px,.62fr) repeat(var(--numbered-levels),minmax(0,1fr));gap:8px;width:100%}.level-option-card{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;align-content:center;gap:2px 6px;min-width:0;min-height:72px;padding:10px;border:1px solid var(--ui-divider);border-radius:var(--radius-control);background:var(--ui-surface);text-align:left;font-size:14px;line-height:20px}.level-option-copy{min-width:0}.level-option-name{font-weight:500}.level-option-card .level-option-code{white-space:nowrap;font-weight:700}.level-option-dot{font-weight:400;color:var(--ui-muted)}.level-option-practice{grid-column:1/-1;font-size:13px;line-height:18px;font-weight:400;color:var(--ui-muted)}.level-option-check{display:block;flex:0 0 18px;width:18px;height:18px;margin-left:auto;background:currentColor;mask:url(/assets/icons/check-circle-fill.svg) center/contain no-repeat;opacity:0}.level-option-card:hover{background:var(--ui-surface-raised);border-color:var(--ui-border)}.level-option-card[aria-pressed=true]{background:var(--ui-tint);border-color:var(--ui-role-text);box-shadow:inset 0 0 0 1px var(--ui-role-text);color:var(--ui-role-text)}.level-option-card[aria-pressed=true] .level-option-name{font-weight:600}.level-option-card[aria-pressed=true] .level-option-check{opacity:1}.level-option-card:focus-visible{z-index:1}.level-picker-help{display:flex;justify-content:flex-end;margin-top:4px}.level-picker-help .text-button{min-height:44px}@media(max-width:1150px){.level-picker-options{grid-template-columns:repeat(var(--tablet-level-columns),minmax(0,1fr));width:100%}}@media(max-width:650px){.level-picker-options{grid-template-columns:repeat(var(--mobile-level-columns),minmax(0,1fr))}.level-option-card{min-height:66px;padding:8px;font-size:13px;column-gap:6px}.level-option-check{flex-basis:16px;width:16px;height:16px}}@media(max-width:380px){.level-option-card{padding-inline:6px;column-gap:4px}.level-option-check{flex-basis:12px;width:12px;height:12px}.sticky-filter-panel .level-option-card{padding-inline:4px;column-gap:2px}}.teacher-stage .teacher-picker.teacher-overflow-picker{display:block;width:100%;max-width:none;min-width:0}.teacher-stage .teacher-overflow-picker .teacher-options{--teacher-item-min:74px;display:grid;grid-template-columns:repeat(var(--teacher-columns),minmax(0,120px));align-items:start;justify-content:start;gap:12px 16px;width:100%;max-width:none;min-width:0;padding:6px;overflow:visible}.teacher-stage .teacher-overflow-picker .teacher-option{min-width:0;width:100%;min-height:86px}.teacher-stage .teacher-overflow-picker .teacher-option[hidden]{display:none}.teacher-overflow-count{display:grid;place-items:center;width:56px;height:56px;border:1px solid var(--ui-divider);border-radius:50%;background:var(--ui-surface);font-size:18px;font-weight:600;color:var(--ui-text)}.teacher-overflow-toggle:hover .teacher-overflow-count{border-color:var(--ui-border);background:var(--ui-surface-raised)}.teacher-overflow-toggle.has-selection .teacher-overflow-count{border-color:var(--ui-role-text);background:var(--ui-tint);color:var(--ui-role-text)}@media(max-width:650px){.teacher-stage .teacher-overflow-picker .teacher-options{--teacher-item-min:68px;column-gap:10px}}.sticky-filters-host{position:sticky;top:0;height:64px;margin-bottom:-64px;z-index:30;isolation:isolate}.sticky-filters-host[hidden]{display:none}.sticky-filters-bar{position:absolute;top:0;left:0;right:0;height:64px;box-sizing:border-box;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:6px 0;background:var(--ui-bg);border-bottom:1px solid var(--ui-divider)}.sticky-filter-trigger{display:flex;align-items:center;justify-content:space-between;gap:12px;min-width:0;min-height:44px;padding:5px 12px;border:1px solid var(--ui-divider);border-radius:var(--radius-control);background:var(--ui-surface);color:var(--ui-text);text-align:left}.sticky-filter-trigger:hover{background:var(--ui-surface-raised);border-color:var(--ui-border)}.sticky-filter-trigger[aria-expanded=true]{background:var(--ui-tint);border-color:var(--ui-role-text)}.sticky-filter-copy{display:flex;flex-direction:column;min-width:0;gap:1px}.sticky-filter-label{font-size:13px;line-height:17px;color:var(--ui-muted)}.sticky-filter-summary{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px;line-height:20px;font-weight:600}.sticky-filter-chevron{flex:0 0 16px;width:16px;height:16px;background:var(--ui-muted);mask:url(/assets/icons/caret-down-fill.svg) center/contain no-repeat}.sticky-filter-trigger[aria-expanded=true] .sticky-filter-chevron{transform:rotate(180deg)}.sticky-filter-panel{position:absolute;top:64px;left:0;right:0;max-height:calc(100dvh - 80px);box-sizing:border-box;overflow:auto;overscroll-behavior:contain;background:var(--ui-surface);border:1px solid var(--ui-divider);border-radius:0 0 var(--radius-control) var(--radius-control);box-shadow:0 8px 24px color-mix(in srgb,var(--ui-text) 12%,transparent);padding:0 18px 18px}.sticky-filter-panel:focus{outline:none}.sticky-filter-panel-heading{position:sticky;top:0;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:60px;background:var(--ui-surface);border-bottom:1px solid var(--ui-divider);margin-bottom:14px}.bc-root .sticky-filter-panel-heading h2{font:600 15px/22px var(--font-body);margin:0}.sticky-filter-panel-title{display:flex;align-items:center;gap:16px;min-width:0}.sticky-filter-panel-footer{display:none}.sticky-filter-close{display:flex;align-items:center;justify-content:center;gap:10px;min-width:72px;min-height:44px;padding:6px 8px;border:0;background:transparent;color:var(--ui-text);font-size:14px;font-weight:500;border-radius:var(--radius-control)}.sticky-filter-close:hover{background:var(--ui-surface-raised)}.sticky-filter-done-icon{width:18px;height:18px;background:currentColor;mask:url(/assets/icons/check-circle-fill.svg) center/contain no-repeat}.sticky-filter-trigger:focus-visible,.sticky-filter-close:focus-visible{outline:2px solid var(--ui-focus);outline-offset:2px}.sticky-filter-panel .filter-section-heading{display:none}.sticky-filter-panel .filter-journey{gap:0}.sticky-filter-panel .teacher-stage{margin:0;padding:0;border:0}.sticky-filter-panel .teacher-options{overflow:visible;flex-wrap:wrap;gap:16px}.sticky-filter-panel .style-options,.sticky-filter-panel .level-picker{max-width:none}.sticky-filter-panel .filter-panel-content{padding-top:4px}@media(max-width:650px){.sticky-filters-bar{gap:5px}.sticky-filter-trigger{padding:5px 7px;gap:4px}.sticky-filter-summary{font-size:13px}.sticky-filter-chevron{flex-basis:12px;width:12px;height:12px}.sticky-filter-panel{padding:0 12px 12px}.sticky-level-panel .sticky-filter-panel-title{flex:1;justify-content:space-between}.sticky-level-panel .sticky-filter-panel-heading>.sticky-filter-close{display:none}.sticky-filter-panel-footer{display:flex;justify-content:flex-end;margin-top:10px}.sticky-filter-panel .teacher-options{gap:10px}}:root{--font-body: "Bailami Sans", sans-serif;--font-display: "Bailami Display", "Bailami Sans", serif;--font-mono: ui-monospace, SFMono-Regular, Consolas, monospace;--text-display: clamp(2.75rem, 5.8vw, 5.5rem);--text-page-title: clamp(2rem, 3.5vw, 3.25rem);--text-section-title: clamp(1.5rem, 2.2vw, 2rem);--text-card-title: 1.25rem;--text-body: 1rem;--text-body-emphasis: 1rem;--text-data: 1rem;--text-body-small: .875rem;--text-label: .875rem;--text-caption: .8125rem;--leading-display: 1.08;--leading-heading: 1.2;--leading-body: 1.6;--leading-control: 1.4;--weight-regular: 400;--weight-medium: 500;--weight-semibold: 600;--weight-display: 550;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--space-10: 40px;--space-12: 48px;--space-16: 64px;--radius-control: 10px;--radius-card: 18px;--radius-pill: 999px;--content-max: 1200px;--reading-max: 65ch;--control-min: 44px;--layer-base: 0;--layer-sticky: 10;--layer-menu: 20;--layer-dialog: 100;--motion-duration-none: 0ms;--motion-duration-feedback: .12s;--motion-duration-standard: .18s;--motion-ease: cubic-bezier(.2,0,.2,1);--motion-distance: 8px;--brand-practice: #FEB511;--brand-teach: #00966A;--brand-school: #C24040;--ui-bg: #F7F5F1;--ui-surface: #FFFFFF;--ui-surface-raised: #EEEAE3;--ui-text: #282623;--ui-muted: #635F59;--ui-border: #898279;--ui-divider: #DED9D0;--ui-action: #282623;--ui-on-action: #FFFFFF;--ui-focus: #2969AE;--ui-danger: #A3244A;--ui-danger-tint: #FFE5EE;--ui-success: #2D6A1E;--ui-success-tint: #E6F6E3;--ui-warning: #944700;--ui-warning-tint: #FFECE1;--ui-info: #245C9E;--ui-info-tint: #EAF1FC;--shadow-raised: 0 8px 28px rgb(40 38 35 / .08);--ui-accent: #FEB511;--ui-role-text: #795000;--ui-tint: #FFF3D4}[data-theme=light]{--ui-bg: #F7F5F1;--ui-surface: #FFFFFF;--ui-surface-raised: #EEEAE3;--ui-text: #282623;--ui-muted: #635F59;--ui-border: #898279;--ui-divider: #DED9D0;--ui-action: #282623;--ui-on-action: #FFFFFF;--ui-focus: #2969AE;--ui-danger: #A3244A;--ui-danger-tint: #FFE5EE;--ui-success: #2D6A1E;--ui-success-tint: #E6F6E3;--ui-warning: #944700;--ui-warning-tint: #FFECE1;--ui-info: #245C9E;--ui-info-tint: #EAF1FC;--shadow-raised: 0 8px 28px rgb(40 38 35 / .08)}[data-theme=dark]{--ui-bg: #1B1C1A;--ui-surface: #252724;--ui-surface-raised: #30332F;--ui-text: #F6F4EE;--ui-muted: #BCBDB5;--ui-border: #72756C;--ui-divider: #454840;--ui-action: #F6F4EE;--ui-on-action: #1B1C1A;--ui-focus: #90B9FA;--ui-danger: #FBAFBB;--ui-danger-tint: #371E22;--ui-success: #A9D69E;--ui-success-tint: #1C2B18;--ui-warning: #F7B791;--ui-warning-tint: #362113;--ui-info: #9EC8FF;--ui-info-tint: #233044;--shadow-raised: 0 8px 28px rgb(0 0 0 / .2);--ui-accent: #FEB511;--ui-role-text: #FEB511;--ui-tint: #342B14}[data-product=practice]{--ui-accent: #FEB511;--ui-role-text: #795000;--ui-tint: #FFF3D4}[data-theme=dark][data-product=practice],[data-theme=dark] [data-product=practice]{--ui-accent: #FEB511;--ui-role-text: #FEB511;--ui-tint: #342B14}[data-theme=light][data-product=practice],[data-theme=light] [data-product=practice]{--ui-accent: #FEB511;--ui-role-text: #795000;--ui-tint: #FFF3D4}[data-product=teach]{--ui-accent: #00966A;--ui-role-text: #006747;--ui-tint: #E7F6EE}[data-theme=dark][data-product=teach],[data-theme=dark] [data-product=teach]{--ui-accent: #00966A;--ui-role-text: #62D6AC;--ui-tint: #15382B}[data-theme=light][data-product=teach],[data-theme=light] [data-product=teach]{--ui-accent: #00966A;--ui-role-text: #006747;--ui-tint: #E7F6EE}[data-product=school]{--ui-accent: #C24040;--ui-role-text: #A22E32;--ui-tint: #FBECEE}[data-theme=dark][data-product=school],[data-theme=dark] [data-product=school]{--ui-accent: #C24040;--ui-role-text: #F19393;--ui-tint: #392527}[data-theme=light][data-product=school],[data-theme=light] [data-product=school]{--ui-accent: #C24040;--ui-role-text: #A22E32;--ui-tint: #FBECEE}[data-theme=light][data-product=practice]{--ui-accent: #FEB511;--ui-role-text: #795000;--ui-tint: #FFF3D4}[data-theme=dark][data-product=practice]{--ui-accent: #FEB511;--ui-role-text: #FEB511;--ui-tint: #342B14}[data-theme=light][data-product=teach]{--ui-accent: #00966A;--ui-role-text: #006747;--ui-tint: #E7F6EE}[data-theme=dark][data-product=teach]{--ui-accent: #00966A;--ui-role-text: #62D6AC;--ui-tint: #15382B}[data-theme=light][data-product=school]{--ui-accent: #C24040;--ui-role-text: #A22E32;--ui-tint: #FBECEE}[data-theme=dark][data-product=school]{--ui-accent: #C24040;--ui-role-text: #F19393;--ui-tint: #392527}.text-display{font-family:var(--font-display);font-size:var(--text-display);font-weight:550;line-height:1.08;letter-spacing:-.025em;color:var(--ui-text)}.text-page-title{font-family:var(--font-display);font-size:var(--text-page-title);font-weight:550;line-height:1.2;letter-spacing:-.025em;color:var(--ui-text)}.text-section-title{font-family:var(--font-body);font-size:var(--text-section-title);font-weight:600;line-height:1.25;letter-spacing:normal;color:var(--ui-text)}.text-card-title{font-family:var(--font-body);font-size:var(--text-card-title);font-weight:600;line-height:1.35;letter-spacing:normal;color:var(--ui-text)}.text-body{font-family:var(--font-body);font-size:var(--text-body);font-weight:400;line-height:1.6;letter-spacing:normal;color:var(--ui-text)}.text-body-emphasis{font-family:var(--font-body);font-size:var(--text-body-emphasis);font-weight:600;line-height:1.6;letter-spacing:normal;color:var(--ui-text)}.text-body-small{font-family:var(--font-body);font-size:var(--text-body-small);font-weight:400;line-height:1.6;letter-spacing:normal;color:var(--ui-muted)}.text-label{font-family:var(--font-body);font-size:var(--text-label);font-weight:600;line-height:1.4;letter-spacing:normal;color:var(--ui-text)}.text-caption{font-family:var(--font-body);font-size:var(--text-caption);font-weight:400;line-height:1.5;letter-spacing:normal;color:var(--ui-muted)}.text-data{font-family:var(--font-body);font-size:var(--text-data);font-weight:500;line-height:1.5;letter-spacing:normal;color:var(--ui-text);font-variant-numeric:tabular-nums}[data-reduced-motion=true]{--motion-duration-none: 0ms;--motion-duration-feedback: 0ms;--motion-duration-standard: 0ms;--motion-distance: 0px}@media(prefers-reduced-motion:reduce){:root{--motion-duration-none: 0ms;--motion-duration-feedback: 0ms;--motion-duration-standard: 0ms;--motion-distance: 0px}}@font-face{font-family:Bailami Display;font-style:normal;font-weight:100 900;font-display:swap;src:url(/assets/Fraunces-BR5x10i8.ttf) format("truetype")}@font-face{font-family:Bailami Sans;font-style:normal;font-weight:400 700;font-stretch:100%;font-display:swap;src:url(/assets/noto-sans-000-Caa4yx57.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Bailami Sans;font-style:normal;font-weight:400 700;font-stretch:100%;font-display:swap;src:url(/assets/noto-sans-001-DgOZupFD.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Bailami Sans;font-style:normal;font-weight:400 700;font-stretch:100%;font-display:swap;src:url(/assets/noto-sans-002-DtFfPIYk.woff2) format("woff2");unicode-range:U+0900-097F,U+1CD0-1CF9,U+200C-200D,U+20A8,U+20B9,U+20F0,U+25CC,U+A830-A839,U+A8E0-A8FF,U+11B00-11B09}@font-face{font-family:Bailami Sans;font-style:normal;font-weight:400 700;font-stretch:100%;font-display:swap;src:url(/assets/noto-sans-003-o4brND5H.woff2) format("woff2");unicode-range:U+1F00-1FFF}@font-face{font-family:Bailami Sans;font-style:normal;font-weight:400 700;font-stretch:100%;font-display:swap;src:url(/assets/noto-sans-004-BJIBI7Jg.woff2) format("woff2");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Bailami Sans;font-style:normal;font-weight:400 700;font-stretch:100%;font-display:swap;src:url(/assets/noto-sans-005-BNxRNrp3.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Bailami Sans;font-style:normal;font-weight:400 700;font-stretch:100%;font-display:swap;src:url(/assets/noto-sans-006-Yer4Bbkz.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Bailami Sans;font-style:normal;font-weight:400 700;font-stretch:100%;font-display:swap;src:url(/assets/noto-sans-007-avyUD5lZ.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}bailami-playground{display:block;min-width:0}.bc-root,.bc-dialog{font-family:var(--font-local-sans,var(--font-body,"Bailami Sans",sans-serif));color:var(--ui-text,#282623);font-size:var(--text-body,1rem);line-height:var(--leading-body,1.5);text-align:start}.bc-root *,.bc-dialog *{box-sizing:border-box}.bc-root :is(h2,h3,h4,p),.bc-dialog :is(h2,h3,p){margin:0}.bc-root :is(button,input,select,textarea),.bc-dialog :is(button,input,select,textarea){font-family:var(--font-local-sans,var(--font-body,"Bailami Sans",sans-serif))}.bc-root :focus-visible,.bc-dialog :focus-visible{outline:3px solid var(--ui-focus,#4564bf);outline-offset:3px}.bc-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.bc-card{min-width:0;border:1px solid var(--ui-border,#dedbd4);background:var(--ui-surface,#fff);border-radius:var(--radius-card,18px);padding:var(--space-6,24px)}.bc-card-header{display:flex;align-items:start;justify-content:space-between;gap:var(--space-3,12px);margin-bottom:22px}.bc-root h3,.bc-root h4{font-weight:650;line-height:1.25;font-size:1.125rem}.bc-root h4{font-size:1rem}.bc-eyebrow{font-size:.75rem;font-weight:650;letter-spacing:.06em;text-transform:uppercase;color:var(--ui-muted,#68645f)}.bc-note,.bc-help{font-size:var(--text-caption,.8125rem);line-height:1.5;color:var(--ui-muted,#68645f)}.bc-stack{display:flex;flex-direction:column;gap:var(--space-4,16px);min-width:0}.bc-stack-tight{gap:8px}.bc-row{display:flex;align-items:center;flex-wrap:wrap;gap:10px;min-width:0}.bc-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:var(--control-min,44px);max-width:100%;padding:10px 17px;border:1px solid transparent;border-radius:var(--radius-control,10px);background:var(--ui-action,#282623);color:var(--ui-on-action,#fff);font-family:var(--font-local-sans,var(--font-body,"Bailami Sans",sans-serif));font-size:var(--text-label,.875rem);font-weight:var(--weight-semibold,600);line-height:var(--leading-control,1.4);text-align:center;cursor:pointer;transition:filter var(--motion-duration-feedback,.12s) var(--motion-ease,cubic-bezier(.2,0,.2,1));touch-action:manipulation}.bc-button:hover:not(:disabled){filter:brightness(.92)}.bc-button:active:not(:disabled){filter:brightness(.86)}.bc-button[data-variant=secondary]{border-color:var(--ui-border,#dedbd4);background:var(--ui-surface,#fff);color:var(--ui-text,#282623)}.bc-button[data-variant=quiet]{background:transparent;color:var(--ui-text,#282623)}.bc-button[data-variant=danger]{background:var(--ui-danger,#a92828);color:var(--ui-surface,#fff)}.bc-button:disabled{opacity:.46;cursor:not-allowed}.bc-button[aria-busy=true]{opacity:.75;cursor:progress}.bc-icon{display:inline-block;flex-shrink:0;vertical-align:-.125em;fill:currentColor;pointer-events:none}.bc-button-icon{padding:0;min-width:var(--control-min,44px);width:var(--control-min,44px)}.bc-spinner{flex-shrink:0}.bc-field{display:grid;gap:7px;min-width:0}.bc-label{font-size:var(--text-label,.875rem);font-weight:var(--weight-semibold,600);line-height:var(--leading-control,1.4)}.bc-input,.bc-select{font-size:var(--text-body,1rem);font-weight:var(--weight-regular,400);width:100%;min-width:0;min-height:46px;border:1px solid var(--ui-border,#dedbd4);border-radius:var(--radius-control,10px);background:var(--ui-bg,#faf9f6);color:var(--ui-text,#282623);padding:10px 12px;line-height:1.5}textarea.bc-input{resize:vertical;min-height:100px}.bc-input::placeholder{color:var(--ui-muted,#68645f);opacity:1}.bc-input[aria-invalid=true]{border:2px solid var(--ui-danger,#a92828);padding:9px 11px}.bc-input:disabled{opacity:.58;cursor:not-allowed}.bc-error{font-size:var(--text-caption,.8125rem);color:var(--ui-danger,#a92828)}.bc-tabs{display:flex;gap:4px;flex-wrap:wrap;padding:5px;border:1px solid var(--ui-border,#dedbd4);border-radius:14px;background:var(--ui-bg,#faf9f6)}.bc-tab{flex:1;display:flex;align-items:center;justify-content:center;gap:7px;min-height:var(--control-min,44px);padding:9px 12px;border:0;border-radius:9px;background:transparent;color:var(--ui-muted,#68645f);font-weight:var(--weight-display,550);font-size:var(--text-label,.875rem);cursor:pointer}.bc-tab[aria-selected=true]{background:var(--ui-surface-raised,#fff);color:var(--ui-text,#282623);box-shadow:0 1px 4px #0000000d}.bc-product-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0;background:var(--ui-accent,#FEB511)}.bc-product-dot[data-product=practice]{background:var(--brand-practice)}.bc-product-dot[data-product=teach]{background:var(--brand-teach)}.bc-product-dot[data-product=school]{background:var(--brand-school)}.bc-tabpanel{padding-block-start:18px}.bc-badge{display:inline-flex;align-items:center;gap:6px;max-width:100%;border-radius:6px;padding:4px 8px;background:var(--ui-tint,#fff1bf);color:var(--ui-text,#282623);font-size:.75rem;font-weight:var(--weight-semibold,600)}.bc-lesson{padding:0;overflow:hidden;max-width:440px}.bc-media{position:relative;aspect-ratio:16/10;display:grid;place-items:center;background:var(--ui-bg,#faf9f6);border-bottom:1px solid var(--ui-border,#dedbd4)}.bc-media-frame{width:66%;height:70%;display:grid;place-items:center;border:1px solid var(--ui-border,#dedbd4);border-radius:18px;background:var(--ui-surface-raised,#fff)}.bc-media-figure{font-family:var(--font-local-sans,var(--font-display,serif));font-size:clamp(2rem,6vw,4rem);color:var(--ui-text,#282623);font-weight:var(--weight-display,550);letter-spacing:-.04em}.bc-media-tag{position:absolute;inset-inline-start:14px;bottom:12px;padding:4px 8px;border-radius:5px;background:var(--ui-surface,#fff);font-size:.6875rem;color:var(--ui-muted,#68645f)}.bc-lesson-body{padding:20px;display:grid;gap:var(--space-3,12px)}.bc-lesson-title{font-family:var(--font-local-sans,var(--font-display,serif));font-size:1.7rem!important;line-height:1.15!important;font-weight:var(--weight-display,550)!important;letter-spacing:-.02em}.bc-progress{width:100%;height:5px;border-radius:4px;overflow:hidden;background:var(--ui-border,#dedbd4)}.bc-progress span{height:100%;display:block;background:var(--ui-accent,#FEB511)}.bc-notice{display:flex;align-items:start;gap:var(--space-3,12px);border:1px solid var(--ui-border,#dedbd4);border-inline-start:3px solid var(--ui-muted,#68645f);padding:16px;border-radius:12px;background:var(--ui-bg,#faf9f6)}.bc-notice[data-tone=danger]{border-color:var(--ui-danger,#a92828);background:var(--ui-danger-tint,#fff1f1)}.bc-notice[data-tone=success]{border-color:var(--ui-success,#226748);background:var(--ui-success-tint,#eef8f1)}.bc-notice[data-tone=warning]{border-color:var(--ui-warning,#815700);background:var(--ui-warning-tint,#fff7dd)}.bc-notice-symbol{flex-shrink:0;margin-top:1px}.bc-notice[data-tone=danger]>.bc-icon{color:var(--ui-danger)}.bc-notice[data-tone=success]>.bc-icon{color:var(--ui-success)}.bc-notice[data-tone=warning]>.bc-icon{color:var(--ui-warning)}.bc-notice-body{display:grid;gap:8px;min-width:0;flex:1}.bc-notice-body>strong{font-size:var(--text-label,.875rem);line-height:var(--leading-control,1.4)}.bc-empty{text-align:center;padding:28px 16px;display:grid;justify-items:center;gap:14px}.bc-empty-mark{width:52px;height:52px;display:grid;place-items:center;border:1px solid var(--ui-border,#dedbd4);border-radius:16px;font-size:1.5rem;color:var(--ui-muted,#68645f)}.bc-skeleton{display:grid;gap:var(--space-3,12px);width:100%;padding:12px 0}.bc-skeleton span{height:13px;max-width:100%;border-radius:6px;background:var(--ui-border,#dedbd4)}.bc-skeleton span:first-child{height:96px;width:100%;border-radius:12px}.bc-skeleton span:nth-child(2){width:78%}.bc-skeleton span:nth-child(3){width:46%}.bc-dialog{max-width:min(480px,calc(100vw - 32px));max-height:calc(100dvh - 48px);overflow:auto;border:1px solid var(--ui-border,#dedbd4);padding:28px;border-radius:var(--radius-card,18px);background:var(--ui-surface,#fff);color:var(--ui-text,#282623);box-shadow:0 20px 90px #0004}.bc-dialog[open]{animation:bc-fade var(--motion-duration-standard,.18s) var(--motion-ease,cubic-bezier(.2,0,.2,1)) backwards}.bc-dialog::backdrop{background:#10101088}.bc-dialog h2{font-family:var(--font-local-sans,var(--font-display,serif));font-size:1.75rem;line-height:1.2;font-weight:var(--weight-display,550)}.bc-dialog-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px}.bc-sr{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.bc-simulation{display:inline-block;color:var(--ui-muted,#68645f);font-size:.75rem;line-height:var(--leading-control,1.4)}.bc-recovery{display:grid;grid-template-columns:minmax(185px,.65fr) minmax(0,1.6fr);gap:28px}.bc-recovery-nav{display:flex;flex-direction:column;gap:var(--space-4,16px);min-width:0}.bc-recovery-stage{min-width:0;display:grid;gap:18px;align-content:start}.bc-recovery-preview{display:grid;gap:18px;min-width:0;border:1px solid var(--ui-border,#dedbd4);border-radius:var(--radius-card,18px);padding:var(--space-6,24px);background:var(--ui-surface,#fff)}.bc-case-heading{display:flex;justify-content:space-between;align-items:start;gap:var(--space-3,12px)}.bc-case-heading h3{font-family:var(--font-local-sans,var(--font-display,serif));font-size:1.5rem;font-weight:var(--weight-display,550)}.bc-file{display:flex;align-items:center;gap:var(--space-3,12px);padding:14px;border:1px solid var(--ui-border,#dedbd4);border-radius:12px}.bc-file>span:first-child{font-size:1.5rem}.bc-file-text{display:grid;gap:2px;flex:1;min-width:0}.bc-file-text strong{font-size:var(--text-label,.875rem);overflow-wrap:anywhere}.bc-comparison{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3,12px)}.bc-comparison>div{padding:14px;border:1px solid var(--ui-border,#dedbd4);border-radius:10px;display:grid;gap:8px}.bc-comparison p{font-size:var(--text-label,.875rem);overflow-wrap:anywhere}.bc-contract{display:grid;gap:7px;padding:0;margin:0;list-style:none;color:var(--ui-muted,#68645f);font-size:var(--text-caption,.8125rem)}.bc-contract li{padding-inline-start:15px;position:relative}.bc-contract li:before{content:"·";position:absolute;inset-inline-start:2px;font-weight:700}.bc-demo-status{min-height:1.3em;font-size:var(--text-caption,.8125rem);color:var(--ui-muted,#68645f)}.bc-code{font-family:ui-monospace,SFMono-Regular,monospace;font-size:.75rem;overflow-wrap:anywhere;background:var(--ui-bg,#faf9f6);padding:14px;border:1px solid var(--ui-border,#dedbd4);border-radius:10px;white-space:pre-wrap}.bc-reveal{animation:bc-arrive var(--motion-duration-standard,.18s) var(--motion-ease,cubic-bezier(.2,0,.2,1)) backwards}@keyframes bc-arrive{0%{opacity:0;transform:translateY(var(--motion-distance,8px))}to{opacity:1;transform:none}}@keyframes bc-fade{0%{opacity:0}to{opacity:1}}@media(max-width:700px){.bc-grid{grid-template-columns:1fr}.bc-recovery{grid-template-columns:1fr;gap:20px}.bc-recovery-nav{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:var(--space-3,12px)}.bc-recovery-nav>.bc-note{grid-column:1/-1}.bc-card,.bc-recovery-preview{padding:20px}.bc-comparison{grid-template-columns:1fr}}@media(max-width:380px){.bc-card,.bc-recovery-preview{padding:16px}.bc-tab{padding:9px 7px}.bc-dialog{padding:20px}.bc-recovery-nav{grid-template-columns:1fr}.bc-button{padding:10px 13px}.bc-dialog-actions .bc-button{flex:1}.bc-notice{padding:12px;gap:9px}}@media(prefers-reduced-motion:reduce){.bc-root *,.bc-dialog,.bc-dialog *{animation:none!important;transition:none!important;scroll-behavior:auto!important}.bc-button:active:not(:disabled){transform:none}}[data-reduced-motion=true] .bc-root *,[data-reduced-motion=true] .bc-dialog,[data-reduced-motion=true] .bc-dialog *{animation:none!important;transition:none!important;scroll-behavior:auto!important}[data-reduced-motion=true] .bc-button:active:not(:disabled){transform:none}.bc-icon-family{display:grid;grid-template-columns:repeat(auto-fit,minmax(96px,1fr));gap:16px}.bc-icon-specimen{display:grid;justify-items:center;align-content:center;gap:12px;min-height:112px;padding:16px;border:1px solid var(--ui-border);border-radius:var(--radius-control);background:var(--ui-surface);font-size:var(--text-caption);color:var(--ui-text)}*{box-sizing:border-box}body{margin:0;background:var(--ui-bg);color:var(--ui-text);font-family:var(--font-body);font-size:14px}button,select,input{font:inherit}button{cursor:pointer;color:inherit;touch-action:manipulation}a{color:inherit}button:focus-visible,a:focus-visible,select:focus-visible,input:focus-visible{outline:3px solid var(--ui-focus);outline-offset:3px}img{display:block}h1,h2,h3,p{margin:0}.app{min-height:100vh}.skip-link{position:fixed;top:-80px;left:20px;padding:12px;background:var(--ui-surface);z-index:200}.skip-link:focus{top:12px}.preview-label{margin-left:auto;color:var(--ui-muted);font-size:13px}main{padding:26px 32px 18px;max-width:1840px;margin:auto}.filters{display:flex;align-items:center;gap:20px}.filters label{display:flex;align-items:center;gap:10px;font-size:13px;white-space:nowrap}select{height:44px;min-width:128px;background:var(--ui-surface);border:1px solid var(--ui-border);border-radius:var(--radius-control);padding:0 28px 0 12px;color:var(--ui-text);font-size:14px}.social-toggle{position:relative;padding-left:18px;border-left:1px solid var(--ui-divider);height:44px;cursor:pointer}.social-toggle input{position:absolute;right:0;width:42px;height:44px;opacity:0;cursor:pointer}.switch{display:inline-block;position:relative;width:38px;height:22px;border-radius:var(--radius-pill);background:var(--ui-muted);pointer-events:none}.switch:after{content:"";position:absolute;width:16px;height:16px;top:3px;left:3px;border-radius:var(--radius-pill);background:var(--ui-surface)}.social-toggle input:checked+.switch{background:var(--ui-accent)}.social-toggle input:checked+.switch:after{left:19px}.social-toggle input:focus-visible+.switch{outline:3px solid var(--ui-focus);outline-offset:4px}.teacher-picker{display:flex;align-items:center;gap:18px;border:1px solid var(--ui-divider);border-radius:var(--radius-control);padding:12px 18px;min-height:116px}.teacher-intro{flex:0 0 132px;display:flex;flex-direction:column;gap:4px}.teacher-intro strong{font-size:17px}.teacher-intro span{font-size:13px;color:var(--ui-muted)}.teacher-options{display:flex;justify-content:space-between;align-items:center;gap:7px;flex:1;min-width:0}.teacher-option{display:flex;align-items:center;flex-direction:column;justify-content:center;gap:6px;min-width:64px;padding:3px 4px;border:0;background:none;border-radius:var(--radius-control);font-size:13px;line-height:1.3;min-height:86px}.teacher-option:hover{background:var(--ui-surface-raised)}.teacher-option .avatar{outline:2px solid transparent;outline-offset:3px}.teacher-option.selected .avatar{outline-color:var(--ui-role-text)}.teacher-option.selected{font-weight:600;color:var(--ui-role-text)}.all-avatar{display:grid;align-content:center;text-align:center;width:56px;height:56px;border:1px solid var(--ui-divider);border-radius:var(--radius-pill);font-size:12px;color:var(--ui-text);line-height:1.3}.teacher-option.selected .all-avatar{border-color:var(--ui-role-text);background:var(--ui-tint)}.all-caption{font-size:13px}.avatar{position:relative;display:inline-block;flex-shrink:0;border-radius:50%;overflow:hidden;background:var(--ui-surface-raised);vertical-align:middle}.avatar img{position:absolute;max-width:none;height:auto;pointer-events:none}.initials{display:inline-flex;align-items:center;justify-content:center;font-weight:500;color:var(--ui-muted)}.schedule-status{display:flex;align-items:center;justify-content:space-between;min-height:52px;gap:16px;font-size:13px;color:var(--ui-muted);padding:4px 2px}.schedule-status>div{display:flex;gap:18px;align-items:center}.schedule-status strong{color:var(--ui-role-text)}.quiet-status{min-height:52px;font-size:13px}.quiet-status>span{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.text-button{display:inline-flex;align-items:center;min-height:44px;border:0;background:none;padding:0;color:var(--ui-muted);text-decoration:underline;text-underline-offset:3px;font-size:13px}.text-button:hover{color:var(--ui-text)}.only-matching{display:flex;align-items:center;gap:7px;min-height:44px;color:var(--ui-text)}.only-matching input{width:18px;height:18px;accent-color:var(--ui-role-text)}.day-filter{display:flex;align-items:center;gap:10px}.week-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:0}.day-column{min-width:0;padding:0 20px;border-left:1px solid var(--ui-divider)}.day-column:first-child{border-left:0;padding-left:10px}.day-column:last-child{padding-right:8px}.day-heading{padding-bottom:18px}.bc-root .day-heading h2{font-size:23px;line-height:1.3;font-weight:650;font-family:var(--font-body)}.day-heading>span{font-size:13px;color:var(--ui-muted);display:block;margin-top:2px}.time-group{margin-bottom:14px}.bc-root .time-group h3{font-size:19px;line-height:1.3;font-weight:650;padding:0 0 2px 2px}.session{display:flex;flex-direction:column;text-align:left;position:relative;background:transparent;border:1px solid transparent;border-bottom:1px solid var(--ui-divider);padding:4px 2px 9px;margin:0;width:100%;min-height:44px;line-height:1.4;border-radius:0}.session+.session{padding-top:8px}.session:hover{background:var(--ui-surface-raised);border-radius:7px}.session-main{display:flex;flex-direction:column;gap:5px;width:100%;min-width:0}.session-title{font-size:15px;font-weight:650;line-height:1.28;overflow-wrap:break-word}.session-level{white-space:nowrap;font-weight:550}.teacher-names{display:flex;align-items:center;gap:4px 8px;flex-wrap:wrap;width:100%}.teacher-name{display:inline-flex;align-items:center;gap:5px;font-size:13px;color:var(--ui-muted);line-height:1.2;white-space:nowrap}.room,.start-note{font-size:13px;line-height:1.3;color:var(--ui-muted)}.start-note{color:var(--ui-role-text)}.session.highlighted{background:var(--ui-tint);border-radius:8px;border-color:var(--ui-role-text)}.session.highlighted .teacher-name{color:var(--ui-text)}.session.social{background:var(--ui-tint);border-radius:7px;padding:8px;margin-top:3px}.session.social.highlighted{background:var(--ui-tint)}.empty-day{font-size:14px;color:var(--ui-muted);padding:12px 0}.empty-state{display:grid;justify-items:center;text-align:center;gap:14px;padding:70px 20px;min-height:350px}.empty-state h2{font-size:22px}.empty-state p{color:var(--ui-muted)}footer{border-top:1px solid var(--ui-divider);margin-top:18px;display:flex;justify-content:space-between;gap:24px;align-items:center;min-height:55px;font-size:13px;color:var(--ui-muted)}footer>div{display:flex;align-items:center;gap:22px}.footer-note{border-left:1px solid var(--ui-divider);padding-left:22px}.mobile-day-picker{display:none}.class-list{max-width:1120px;margin:0 auto}.list-session{display:flex;flex-direction:row;align-items:center;padding:16px 10px;gap:28px;border-bottom:1px solid var(--ui-divider);border-radius:0}.list-session+.list-session{padding-top:16px}.list-session .session-main{flex:1;gap:7px}.list-session .session-title{font-size:18px}.list-date{display:flex;flex-direction:column;min-width:130px;font-size:15px;gap:4px}.list-date strong{font-weight:600}.view-details{font-size:13px;text-decoration:underline;white-space:nowrap}.list-session.highlighted{padding:16px 10px}.details{width:560px;max-width:calc(100vw - 28px);padding:32px;font-size:14px;line-height:1.6;position:fixed;max-height:calc(100dvh - 40px)}.details::backdrop{background:#28262366}.details .close-button{position:absolute;top:10px;right:10px}.eyebrow{font-size:13px;color:var(--ui-muted);margin-bottom:10px!important}.details h2{font-family:var(--font-display);font-weight:550;font-size:30px;padding-right:15px;line-height:1.2;margin-bottom:12px!important}.detail-level{font-size:13px;color:var(--ui-muted)}.detail-time{display:flex;justify-content:space-between;gap:12px;padding:18px 0;border-bottom:1px solid var(--ui-divider);font-size:18px}.detail-teachers{padding:22px 0;display:flex;gap:20px;flex-wrap:wrap}.detail-teacher{display:flex;align-items:center;gap:14px;width:100%}.detail-teacher>div{display:flex;flex-direction:column}.detail-teacher strong{font-size:18px;font-weight:600}.detail-teacher>div>span{font-size:13px;color:var(--ui-muted)}.detail-teacher .text-button{font-size:13px}.detail-facts{margin:0 0 18px}.detail-facts>div{display:grid;grid-template-columns:120px 1fr;gap:16px;padding:12px 0;border-top:1px solid var(--ui-divider)}.detail-facts dt{color:var(--ui-muted)}.detail-facts dd{margin:0;font-weight:500}.detail-facts dd span{display:block;font-size:13px;color:var(--ui-muted);font-weight:400}.detail-note{display:flex;align-items:flex-start;gap:10px;background:var(--ui-surface-raised);padding:14px;border-radius:10px;font-size:13px;color:var(--ui-muted)}.detail-note img{flex-shrink:0;margin-top:2px}.school-link{display:flex;margin-top:20px;text-decoration:none}.muted{color:var(--ui-muted)}.class-note{margin:12px 0 16px!important}.rental-list{padding-left:22px;line-height:2.1}.details[open]{animation:none}@media(min-width:1600px){.session-title{font-size:16px}.teacher-name{font-size:14px}.teacher-options{max-width:1350px}.teacher-picker{justify-content:space-between}.time-group{margin-bottom:18px}}@media(max-width:1280px){.filters{width:100%;justify-content:flex-start}.teacher-intro{flex-basis:110px}.teacher-options{overflow-x:auto;justify-content:flex-start;gap:13px;padding:5px}.teacher-option{flex-shrink:0}.day-column{padding:0 12px}.preview-label{max-width:170px;text-align:right;font-size:13px}}@media(max-width:1000px){.week-grid{grid-template-columns:repeat(3,minmax(0,1fr));row-gap:32px}.day-column:nth-child(4){border-left:0;padding-left:10px}.day-heading{padding-bottom:12px}.session-title{font-size:16px}.teacher-names{gap:7px}.preview-label{display:none}.teacher-intro{flex-basis:120px}main{padding:24px}.day-column{padding:0 20px}}@media(max-width:650px){main{padding:22px 16px}.filters{flex-wrap:wrap;gap:12px}.filters label{display:flex;flex-direction:column;align-items:flex-start;gap:5px;flex:1 1 calc(33% - 12px)}select{min-width:0;width:100%;font-size:13px;padding:0 5px 0 8px}.filters .social-toggle{flex-direction:row;flex:0 0 auto;align-items:center;gap:10px;padding-left:0;border-left:0}.teacher-picker{display:block;padding:12px 8px 8px}.teacher-intro{padding:0 6px 8px;display:flex;flex-direction:row;align-items:baseline;justify-content:space-between}.teacher-intro strong{font-size:15px}.teacher-options{gap:12px;padding:6px}.teacher-option{min-width:64px}.schedule-status{align-items:flex-start;flex-direction:column;gap:4px;padding-top:10px;min-height:46px}.schedule-status>div{flex-wrap:wrap;gap:4px 16px}.quiet-status{min-height:14px;padding:0}.only-matching{font-size:13px}.mobile-day-picker{display:flex;border-bottom:1px solid var(--ui-divider);margin:12px 0 20px;justify-content:space-between;gap:4px}.mobile-day-picker button{flex:1;min-width:44px;min-height:44px;border:0;border-bottom:3px solid transparent;background:none;font-size:14px}.mobile-day-picker button.selected{border-bottom-color:var(--ui-role-text);font-weight:600;color:var(--ui-role-text)}.week-grid{display:block}.day-column{display:none;border-left:0;padding:0!important}.day-column.mobile-active{display:block}.day-heading{display:flex;align-items:center;justify-content:space-between;padding:0 4px 18px}.bc-root .day-heading h2{font-size:23px}.time-group{margin-bottom:24px}.bc-root .time-group h3{font-size:20px;margin:0 4px 5px}.session{padding:10px 5px 14px}.session+.session{padding-top:14px}.session-main{gap:8px}.session-title{font-size:18px}.teacher-name{font-size:14px;gap:7px}.teacher-names{gap:14px}.room,.start-note{font-size:14px}.session.highlighted,.session.social{padding:12px}.class-list{margin-top:10px}.list-session{flex-wrap:wrap;gap:9px;padding:14px 4px}.list-session .session-main{flex:1 1 100%}.list-date{flex-direction:row;justify-content:space-between;flex:1 1 100%;font-size:14px}.view-details{display:none}.day-filter{width:100%;justify-content:space-between}.day-filter select{width:170px}footer,footer>div{align-items:flex-start;flex-direction:column;gap:0}.footer-note{border-left:0;padding:0;font-size:13px}footer>button{margin-top:12px}.details{padding:28px 22px 22px}.details h2{font-size:27px}.detail-facts>div{grid-template-columns:92px 1fr;gap:10px}.detail-time{font-size:17px}.detail-teacher .text-button{text-align:left}}@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}.avatar{background:var(--teacher-tint,var(--ui-surface-raised))}.initials{color:var(--ui-text)}.table-note{font-size:13px;color:var(--ui-muted);margin:0 0 16px}.session-people{display:flex;flex-wrap:wrap;align-items:center;gap:7px 12px}.session-people:empty{display:none}.session-people .teacher-names{width:auto}.calendar{min-width:calc(var(--desktop-lanes)*112px + 52px);--visible-lanes:var(--desktop-lanes);--half-hour:76px;--axis:52px}.calendar-headers,.calendar-body{display:grid;grid-template-columns:var(--axis) repeat(var(--visible-lanes),minmax(0,1fr))}.calendar-headers{position:sticky;top:0;z-index:4;grid-template-rows:38px;background:var(--ui-bg)}.calendar-time-heading{grid-column:1;grid-row:1;align-self:end;padding-bottom:9px;font-size:13px;color:var(--ui-muted)}.calendar-day{grid-row:1;grid-column:var(--day-column) / span var(--day-span);padding:5px 8px 8px;border-left:1px solid var(--ui-divider)}.calendar-day strong{display:block;font-size:18px;line-height:1.3;font-weight:650}.calendar-day>span{display:block;font-size:13px;color:var(--ui-muted);margin-top:4px}.calendar-body{grid-template-rows:repeat(var(--row-count),var(--half-hour));position:relative;border-bottom:1px solid var(--ui-border)}.calendar-time-axis{grid-column:1;grid-row:1 / span var(--row-count);display:grid;grid-template-rows:repeat(var(--row-count),var(--half-hour));position:relative}.calendar-time-axis time{font-size:13px;font-weight:600;line-height:1.2;align-self:start;padding-top:5px;font-variant-numeric:tabular-nums}.calendar-time-axis .calendar-end-time{position:absolute;bottom:-20px;left:0}.calendar-hour-line{grid-column:1/-1;border-top:1px solid var(--ui-divider);align-self:start;pointer-events:none}.calendar-lane{grid-row:1 / span var(--row-count);grid-column:var(--day-column);display:grid;grid-template-rows:repeat(var(--row-count),var(--half-hour));border-left:1px solid var(--ui-divider);min-width:0}.calendar-item{margin:3px;min-width:0;min-height:0;z-index:1;container-type:inline-size}.calendar-item .session{height:100%;border:1px solid var(--ui-divider);padding:7px 2px;border-radius:7px;background:var(--ui-surface);margin:0;overflow:hidden;min-height:0}.calendar-item .session:hover{border-color:var(--ui-border);background:var(--ui-surface-raised)}.calendar-item .session.highlighted{border-color:var(--ui-role-text);background:var(--ui-tint)}.calendar-item .session.social{background:var(--ui-tint)}.calendar-item .session-title{font-size:13px;line-height:1.25;overflow-wrap:normal}.calendar-item .session-level{white-space:normal}.calendar-item .teacher-names{display:flex;flex-direction:column;align-items:flex-start;gap:4px;width:auto}.calendar-item .teacher-name{font-size:13px;gap:3px;white-space:nowrap}.calendar-item .session-people{gap:6px;align-items:flex-start}.calendar-item .start-note{font-size:13px;line-height:1.25}.class-time{font-size:13px;line-height:1.2;color:var(--ui-muted);white-space:nowrap;font-variant-numeric:tabular-nums}.calendar-item.half-hour .session{padding:4px}.calendar-item.half-hour .session-main{gap:3px}.calendar-item.half-hour .session-people{display:none}.rental-slot{position:relative;width:100%;height:100%;background:transparent;border:1px solid transparent;border-radius:7px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:7px;padding:10px 5px;color:var(--ui-muted);font-size:13px;min-height:44px}.rental-slot>span{font-variant-numeric:tabular-nums;white-space:nowrap;font-size:13px}.rental-slot strong{font-size:13px;color:var(--ui-role-text);text-decoration:underline;text-underline-offset:3px;font-weight:500}.rental-slot:hover,.rental-slot:focus-visible{border-color:var(--ui-role-text);background:var(--ui-tint)}.half-hour .rental-slot{padding:5px;gap:4px}.reservation-card,.filtered-occupancy{width:100%;height:100%;padding:9px 6px;border-radius:7px;display:flex;flex-direction:column;align-items:flex-start;text-align:left;gap:8px;font-size:13px;border:1px solid var(--ui-divider);min-height:0}.reservation-card{background:var(--ui-success-tint);color:var(--ui-text);border-color:var(--ui-success)}.filtered-occupancy{background:var(--ui-surface-raised);color:var(--ui-muted);font-size:13px}.calendar-scroll{padding-bottom:26px;overflow-x:auto}.booking-fields{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:24px 0}.booking-fields label{display:flex;flex-direction:column;gap:7px;font-size:14px}.booking-fields select{width:100%}.booking-summary{display:flex;flex-direction:column;gap:6px;padding:20px;background:var(--ui-surface-raised);border-radius:10px;margin:20px 0;color:var(--ui-muted)}.booking-summary strong{font-size:27px;color:var(--ui-text);font-weight:600}.booking-primary{display:block;width:100%;margin-top:24px}.booking-caption{font-size:13px;color:var(--ui-muted);text-align:center;margin-top:10px!important}.booking-error{color:var(--ui-danger);font-size:14px}.cancel-booking{display:flex;margin:8px auto 0}.text-button:disabled{cursor:default;opacity:.5;text-decoration:none}@media(max-width:650px){.calendar{min-width:0;--visible-lanes:var(--room-count);--half-hour:76px;--axis:47px}.calendar-day:not(.mobile-active),.calendar-lane:not(.mobile-active){display:none}.calendar-day{grid-column:2 / span var(--room-count)}.calendar-lane{grid-column:var(--room-column)}.calendar-day strong{font-size:19px}.calendar-item{margin:3px}.calendar-item .session{padding:8px 6px}.calendar-item .session-title{font-size:14px}.calendar-item .teacher-name{font-size:13px}.calendar-item .teacher-names{gap:2px 4px}.calendar-item .start-note{font-size:13px}.rental-slot{padding:12px 8px}.rental-slot strong{font-size:14px}.rental-slot>span{font-size:13px}.calendar-item.half-hour .session{padding:4px}.calendar-item.half-hour .session-title{font-size:13px}.mobile-day-picker{gap:0}.mobile-day-picker button{min-width:40px}.table-note{font-size:13px;line-height:1.5}.booking-fields{gap:12px}.booking-summary strong{font-size:25px}}.half-hour .reservation-card,.half-hour .filtered-occupancy{padding:4px;gap:4px}.filters{gap:12px;align-items:flex-end}.select-field{display:flex;flex-direction:column;gap:6px;min-width:0}.filters .select-field{width:144px}.select-field>label,.filters .select-field>label{display:block;font-size:13px;font-weight:500;color:var(--ui-muted);line-height:18px}.select-trigger{width:100%;min-width:0;min-height:44px;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;background:var(--ui-surface);color:var(--ui-text);border:1px solid var(--ui-border);border-radius:var(--radius-control);font-size:14px;font-weight:500;text-align:left;line-height:22px}.select-trigger:hover{background:var(--ui-surface-raised)}.select-trigger.is-filtered{background:var(--ui-tint);border-color:var(--ui-role-text);color:var(--ui-role-text)}.select-trigger[data-state=open]{outline:2px solid var(--ui-role-text);outline-offset:2px}.select-value{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.select-chevron{font-size:15px;line-height:1;flex-shrink:0;color:var(--ui-muted)}.select-trigger[data-state=open] .select-chevron{transform:rotate(180deg)}.select-menu{z-index:210;min-width:max(192px,var(--radix-select-trigger-width));max-width:calc(100vw - 24px);max-height:min(540px,var(--radix-select-content-available-height));overflow:hidden;background:var(--ui-surface);color:var(--ui-text);border:1px solid var(--ui-divider);border-radius:var(--radius-control);box-shadow:0 8px 24px color-mix(in srgb,var(--ui-text) 12%,transparent);font-family:var(--font-body);font-size:14px}.select-menu-detailed{width:280px}.select-options{padding:6px}.select-menu-label{padding:8px 10px 10px;font-size:13px;color:var(--ui-muted);font-weight:500}.select-option{display:flex;align-items:center;justify-content:space-between;position:relative;gap:12px;min-height:44px;padding:10px;border-radius:6px;cursor:pointer;outline:none;-webkit-user-select:none;user-select:none;font-size:14px;line-height:20px}.select-option-copy{display:flex;flex-direction:column;gap:2px;min-width:0}.select-description{font-size:13px;line-height:18px;color:var(--ui-muted);font-weight:400;white-space:normal}.select-option[data-state=checked]{background:var(--ui-tint);color:var(--ui-role-text);font-weight:600}.select-option[data-highlighted]{background:var(--ui-surface-raised);box-shadow:inset 0 0 0 2px var(--ui-focus)}.select-check{color:var(--ui-role-text);font-size:18px;flex-shrink:0;width:18px;text-align:center}.select-separator{height:1px;background:var(--ui-divider);margin:6px 4px}.select-scroll{display:flex;justify-content:center;align-items:center;height:26px;color:var(--ui-muted);background:var(--ui-surface);font-size:16px}.filters .social-toggle{margin-left:4px}.day-select{min-width:160px}.booking-fields .select-trigger{font-variant-numeric:tabular-nums}@media(max-width:650px){.filters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px 8px}.filters .select-field{width:auto}.select-trigger{padding:10px 8px;gap:5px;font-size:13px}.select-chevron{font-size:13px}.filters .social-toggle{grid-column:1/-1;justify-self:start;margin-left:0}.select-menu{max-height:min(480px,var(--radix-select-content-available-height))}.day-select{width:170px}}.teacher-calendar{width:min(100%,calc(var(--desktop-lanes)*240px + 52px));min-width:calc(var(--desktop-lanes)*112px + 52px)}.teacher-calendar .calendar-item .session{padding:9px 8px}.teacher-calendar .calendar-item .session-title{font-size:14px}.teacher-calendar .calendar-item .session-main{gap:7px}.teacher-calendar .calendar-item .teacher-name{gap:5px}.teacher-option.selected:not(.all-option)>span:last-child{text-decoration:underline;text-underline-offset:4px}@media(max-width:650px){.teacher-calendar{width:100%;min-width:0}.teacher-calendar .calendar-item .session{padding:8px 6px}.teacher-calendar .calendar-item .teacher-name{gap:3px}}.session-badge{display:inline-block;align-self:flex-start;width:max-content;max-width:100%;font-size:13px;line-height:17px;font-weight:500;border:1px solid var(--ui-border);border-radius:var(--radius-pill);padding:2px 7px;white-space:nowrap;color:var(--ui-text);background:var(--ui-surface-raised)}.session-title .price-badge{margin-left:4px;vertical-align:baseline;padding:0 3px;line-height:16px;background:var(--ui-surface);border-color:var(--ui-role-text);color:var(--ui-role-text)}.calendar-item .session.social,.session.list-session.social{background:var(--ui-tint)}.calendar-item .session.open-class{background:var(--ui-surface)}.calendar-item .all-levels-badge{padding:1px 5px}.calendar-item.half-hour .session.social .session-title{line-height:17px}.details>.price-badge{background:var(--ui-tint);border-color:var(--ui-role-text);color:var(--ui-role-text)}.rental-slot{overflow:hidden;border:1px dotted color-mix(in srgb,var(--ui-muted) 35%,transparent)}.rental-slot:hover,.rental-slot:focus-visible,.rental-slot:active{border-style:solid;border-color:var(--ui-role-text);background:var(--ui-tint)}.rental-wallpaper{position:absolute;left:50%;top:50%;display:flex;align-items:center;justify-content:center;gap:.3em;transform:translate(-50%,-50%) rotate(-48deg);color:var(--ui-muted);opacity:.24;pointer-events:none;font-size:13px;line-height:18px;transition:opacity .14s ease}.half-hour .rental-wallpaper{flex-direction:column;gap:0;transform:translate(-50%,-50%) rotate(-24deg)}.rental-action{display:flex;flex-direction:column;align-items:center;gap:7px;opacity:0;transition:opacity .14s ease}.rental-slot:hover .rental-action,.rental-slot:focus-visible .rental-action,.rental-slot:active .rental-action{opacity:1}.rental-slot:hover .rental-wallpaper,.rental-slot:focus-visible .rental-wallpaper,.rental-slot:active .rental-wallpaper{opacity:0}.half-hour .rental-action{gap:3px}.filter-journey{display:flex;flex-direction:column;gap:20px}.stage-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:36px;margin-bottom:10px}.bc-root .stage-heading h2{display:flex;align-items:center;gap:10px;font-family:var(--font-body);font-size:14px;font-weight:600;line-height:24px}.stage-heading .text-button{min-height:44px}.selection-mark{display:block;flex:0 0 18px;width:18px;height:18px;background:currentColor;mask:url(/assets/icons/check-circle-fill.svg) center/contain no-repeat;opacity:0}[aria-pressed=true]>.selection-mark{opacity:1}.style-options{display:grid;grid-template-columns:minmax(116px,.62fr) repeat(var(--style-columns,5),minmax(0,1fr));gap:8px;width:100%;min-width:0}.style-choice{display:flex;align-items:center;gap:6px;min-width:0;min-height:72px;padding:10px;border:1px solid var(--ui-divider);border-radius:var(--radius-control);background:var(--ui-surface);font-size:14px;line-height:20px;text-align:left}.style-choice .dance-icon{display:block;flex:0 0 44px;width:44px;height:44px;object-fit:contain}.dance-icon{transform:scale(var(--style-icon-scale,1));flex-shrink:0}.style-name{font-weight:500;white-space:nowrap}.style-choice>.selection-mark{margin-left:auto}.style-choice.all-styles{justify-content:center;padding-inline:12px}.style-choice:hover{background:var(--ui-surface-raised);border-color:var(--ui-border)}.style-choice[aria-pressed=true]{background:var(--ui-tint);border-color:var(--ui-role-text);box-shadow:inset 0 0 0 1px var(--ui-role-text);color:var(--ui-role-text)}.style-choice[aria-pressed=true] .style-name{font-weight:600}.level-selector{max-width:1096px}.level-actions{display:flex;align-items:center;gap:16px;flex-shrink:0}.bc-root .practice-hint{font-size:13px;line-height:20px;color:var(--ui-muted);margin:0 0 12px}.details .level-guide-intro{margin-bottom:16px}.details .muted+.muted{margin-top:12px}.level-options{display:grid;grid-template-columns:116px repeat(var(--level-columns),minmax(0,1fr));gap:8px;width:min(100%,calc(116px + var(--level-columns)*196px))}.level-choice{display:flex;flex-direction:column;align-items:stretch;justify-content:center;gap:4px;min-width:0;min-height:72px;padding:12px;border:1px solid var(--ui-divider);border-radius:var(--radius-control);background:var(--ui-surface);text-align:left}.level-choice-title{display:flex;align-items:center;justify-content:space-between;gap:8px}.level-choice strong{font-size:14px;font-weight:600;line-height:20px;white-space:nowrap}.level-practice{font-size:13px;color:var(--ui-muted);line-height:18px;white-space:nowrap}.level-choice .selection-mark{flex-basis:16px;width:16px;height:16px}.level-choice:hover{background:var(--ui-surface-raised);border-color:var(--ui-border)}.level-choice[aria-pressed=true]{background:var(--ui-tint);border-color:var(--ui-role-text);box-shadow:inset 0 0 0 1px var(--ui-role-text);color:var(--ui-role-text)}.level-choice[aria-pressed=true] .selection-mark{opacity:1}.level-choice:focus-visible{z-index:1}.teacher-stage{margin-top:20px;padding-top:16px;border-top:1px solid var(--ui-divider)}.teacher-stage .teacher-picker{padding:0;border:0;min-height:96px}.teacher-stage .teacher-options{justify-content:flex-start;gap:16px;padding:6px;overflow-x:auto}.teacher-stage .teacher-option{min-width:74px;flex-shrink:0}.flow-note{font-size:13px;line-height:20px;color:var(--ui-muted);margin-top:12px}.filter-journey>.flow-note{margin-top:0}@media(max-width:1150px){.style-options{grid-template-columns:repeat(3,minmax(0,1fr))}.style-choice.all-styles{justify-content:flex-start}.level-stage>.stage-heading{max-width:680px}.level-options{grid-template-columns:repeat(var(--level-tablet-columns),minmax(0,1fr));width:min(100%,680px)}}@media(max-width:650px){.filter-journey{gap:16px}.style-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.style-choice{font-size:13px;gap:6px;padding:8px;min-height:66px}.style-choice .dance-icon{flex-basis:40px;width:40px;height:40px}.style-choice .selection-mark{flex-basis:16px;width:16px;height:16px}.stage-heading{margin-bottom:8px}.level-options{grid-template-columns:repeat(var(--level-mobile-columns),minmax(0,1fr));width:100%}.level-choice{min-height:66px;padding:10px 12px}.teacher-stage .teacher-options{gap:10px}.schedule-status{flex-direction:row;align-items:center;flex-wrap:wrap;column-gap:12px;padding-top:4px}}@media(max-width:380px){.style-choice{gap:4px;padding-inline:6px}.style-choice .dance-icon{flex-basis:32px;width:32px;height:32px}}.schedule-header{border-bottom:1px solid var(--ui-divider)}.schedule-heading{display:flex;align-items:center;flex-wrap:wrap;gap:8px 20px;min-height:72px;max-width:1840px;margin:0 auto;padding:16px 32px}.schedule-school{font-family:var(--font-display);font-size:22px;font-weight:550;line-height:28px}.bc-root .schedule-heading h1{margin:0;padding-left:20px;border-left:1px solid var(--ui-divider);font-family:var(--font-display);font-size:18px;font-weight:550;line-height:26px;color:var(--ui-muted)}.schedule-heading time{margin-left:auto;font-size:14px;line-height:22px;color:var(--ui-muted);white-space:nowrap}@media(max-width:1000px){.schedule-heading{padding-inline:24px}}@media(max-width:650px){.schedule-heading{gap:4px 16px;padding:14px 16px;min-height:0}.schedule-school{flex-basis:100%;font-size:20px;line-height:26px}.bc-root .schedule-heading h1{padding-left:0;border-left:0;font-size:16px;line-height:24px}.schedule-heading time{font-size:13px;line-height:24px}}.filter-section+.filter-section{padding-top:14px;border-top:1px solid var(--ui-divider)}.bc-root .filter-section-heading{font:600 14px/24px var(--font-body);margin:0 0 10px;min-width:0}.desktop-filter-label{display:flex;align-items:center;min-height:36px}.filter-section-header.has-action{display:flex;align-items:center;gap:16px;margin-bottom:10px}.bc-root .filter-section-header.has-action .filter-section-heading{margin:0}.filter-disclosure{display:none}.filter-panel{display:grid;grid-template-rows:1fr;opacity:1;margin:0 -4px;transition:grid-template-rows var(--motion-duration-standard) var(--motion-ease),opacity var(--motion-duration-feedback) var(--motion-ease)}.filter-panel[data-expanded=false]{grid-template-rows:0fr;opacity:0;pointer-events:none}.filter-panel-clip{min-height:0;overflow:hidden}.filter-panel-content{padding:4px}@media(max-width:650px){.filter-journey{gap:12px}.filter-section+.filter-section{padding-top:0;border-top:0}.teacher-stage{margin-top:12px;padding-top:0;border-top:0}.bc-root .filter-section-heading{margin:0}.desktop-filter-label{display:none}.filter-disclosure{display:flex;align-items:center;gap:12px;width:100%;min-height:80px;padding:12px 14px;border:1px solid var(--ui-divider);background:var(--ui-surface);text-align:left;border-radius:var(--radius-control)}.filter-heading-copy{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}.filter-heading-label{font-size:13px;line-height:18px;font-weight:400;color:var(--ui-muted)}.filter-disclosure.is-default .filter-heading-label{font-size:15px;line-height:22px;font-weight:600;color:var(--ui-text)}.filter-summary-line{display:flex;align-items:center;gap:8px;min-width:0}.filter-summary{display:block;overflow-wrap:anywhere;font-size:15px;line-height:22px;font-weight:600;color:var(--ui-text)}.filter-summary-count{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;min-width:26px;min-height:24px;padding:0 5px;border-radius:var(--radius-pill);background:var(--ui-surface-raised);color:var(--ui-muted);font-size:13px;line-height:20px;font-weight:500}.filter-summary-detail{font-size:13px;line-height:18px;font-weight:400;color:var(--ui-muted)}.filter-summary-preview{display:flex;align-items:center;flex-shrink:0}.filter-style-preview{display:flex;gap:4px;align-items:center}.filter-style-preview .dance-icon{width:32px;height:32px;object-fit:contain}.filter-teacher-preview{display:flex;align-items:center;padding:2px}.filter-teacher-preview>span{display:flex;box-shadow:0 0 0 2px var(--ui-surface);border-radius:50%}.filter-teacher-preview>span+span{margin-left:-6px}.filter-toggle-icon{display:flex;align-items:center;justify-content:center;flex:0 0 32px;height:32px;border-radius:var(--radius-pill);background:var(--ui-surface-raised)}.filter-chevron{display:block;width:18px;height:18px;background:var(--ui-muted);mask:url(/assets/icons/caret-down-fill.svg) center/contain no-repeat;transition:transform var(--motion-duration-standard) var(--motion-ease)}.filter-disclosure[aria-expanded=true] .filter-chevron{transform:rotate(180deg)}.filter-panel-content{padding-top:12px;padding-bottom:4px}.level-actions,.level-toolbar{gap:12px}}@media(max-width:380px){.level-toolbar{flex-wrap:wrap;gap:4px}.level-toolbar .practice-hint{flex-basis:100%}.level-actions{width:100%;justify-content:space-between}}.calendar-item .session{padding:6px;gap:4px;justify-content:space-between}.calendar-item .session-main{gap:4px}.session-heading{display:block;line-height:18px}.calendar-item .session-title{display:block;font-size:13px;font-weight:650;line-height:18px;overflow-wrap:anywhere}.calendar-item .social .session-title{display:inline}.lesson-level{display:block;max-width:100%;font-size:12px;font-weight:400;line-height:15px;color:var(--ui-muted);white-space:normal;overflow-wrap:normal;margin:2px 0 0}.session-heading .price-badge{padding:0 4px;line-height:17px;margin-left:5px;background:var(--ui-surface);border-color:var(--ui-role-text);color:var(--ui-role-text)}.calendar-item .session-people{margin-top:0}.calendar-item .teacher-name{gap:3px;font-size:13px;line-height:20px;white-space:nowrap}.calendar-item .teacher-names{gap:2px 4px}.session-footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:2px 5px;width:100%;margin-top:auto;color:var(--ui-muted)}.room-badge{display:inline-flex;align-items:center;gap:3px;font-size:13px;line-height:18px;white-space:nowrap;font-weight:500;color:var(--ui-muted)}.room-icon-box{display:flex;align-items:center;justify-content:center;width:18px;height:18px;flex-shrink:0}.room-icon{display:block;width:18px;height:18px;background:currentColor;mask:url(/assets/icons/room-door-fill.svg) center/contain no-repeat}.room-symbol-diamond{-webkit-mask-image:url(/assets/icons/room-diamond-fill.svg);mask-image:url(/assets/icons/room-diamond-fill.svg)}.room-symbol-circle{-webkit-mask-image:url(/assets/icons/room-circle-fill.svg);mask-image:url(/assets/icons/room-circle-fill.svg)}.room-symbol-triangle{-webkit-mask-image:url(/assets/icons/room-triangle-fill.svg);mask-image:url(/assets/icons/room-triangle-fill.svg)}.calendar-lane{border-left-style:dashed}.calendar-lane[data-first-room=true]{border-left-style:solid}.calendar-item.half-hour .session{padding:3px 4px;gap:1px}.calendar-item.half-hour .session-main{gap:1px}.calendar-item.half-hour .session-heading,.calendar-item.half-hour .session-title,.calendar-item.half-hour .session-footer,.calendar-item.half-hour .room-badge{line-height:16px}.calendar-item.half-hour .room-icon-box{height:16px}.rental-slot>.room-badge{position:absolute;left:6px;bottom:6px;white-space:nowrap}.rental-slot .rental-action{padding-bottom:20px}.half-hour .rental-slot{padding:2px 4px}.half-hour .rental-slot .rental-action{padding-bottom:18px;gap:1px;line-height:16px}.half-hour .rental-slot>.room-badge{bottom:3px}.reservation-card>.room-badge,.filtered-occupancy>.room-badge{margin-top:auto}.half-hour .filtered-occupancy,.half-hour .reservation-card{gap:1px;font-size:13px;line-height:16px}.half-hour .filtered-occupancy>.room-badge,.half-hour .reservation-card>.room-badge{line-height:16px}.teacher-calendar .calendar-item .session{padding:10px}.teacher-calendar .calendar-item .session-title{font-size:15px;line-height:20px}.teacher-calendar .calendar-item .session-main{gap:8px}@container (min-width:180px){.calendar-event .teacher-name{--calendar-avatar-size:28px;gap:5px}.calendar-item .teacher-names{flex-direction:row;flex-wrap:wrap;gap:4px 10px}}@media(max-width:650px){.calendar-item .session-title{font-size:14px}.calendar-item .session{padding:6px 8px}.calendar-item .teacher-names{flex-direction:row;flex-wrap:wrap;gap:4px 10px}.calendar-item.half-hour .session-title{font-size:13px}}@media(max-width:650px)and (hover:hover){.filter-disclosure:hover{border-color:var(--ui-border)}}.class-level-short,.room-name-short{display:none}.level-option-code{white-space:nowrap;font-weight:650}.weekly-calendar{min-width:0}#schedule{scroll-margin-top:72px}.calendar-sticky-top{position:sticky;top:var(--sticky-filter-height,0px);z-index:10;background:var(--ui-bg);box-shadow:0 1px 0 var(--ui-divider)}.calendar-header-scroll{overflow:hidden}.calendar-sticky-top .calendar-headers{position:relative;top:auto}.calendar-sticky-top .calendar-time-heading{align-self:stretch;padding:0}.calendar-event,.rental-slot,.reservation-card{scroll-margin-top:calc(92px + var(--sticky-filter-height,0px))}.grouped-calendar{display:grid;grid-template-columns:minmax(0,calc((100% - 100px)*.7142857 + 44px)) minmax(0,1fr);gap:12px;align-items:start}.calendar-group{min-width:0}.calendar-group-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:40px;padding-bottom:8px}.bc-root .calendar-group-heading h2{margin:0;font:600 16px/24px var(--font-body)}.calendar-group-heading>span{font-size:13px;line-height:18px;color:var(--ui-muted)}.grouped-calendar .calendar{--quiet-half-hour:40px}.grouped-calendar .calendar-body,.grouped-calendar .calendar-time-axis,.grouped-calendar .calendar-lane{grid-template-rows:var(--calendar-rows)}.calendar-quiet-hour{grid-column:2 / -1;background:var(--ui-surface-raised);opacity:.35;pointer-events:none}.calendar-time-axis time.compact-time{color:var(--ui-muted);font-weight:500}.compact-slot .rental-slot{padding:4px;gap:0;justify-content:center;min-height:44px}.compact-slot .rental-slot>.room-badge{left:4px;bottom:4px;line-height:18px;font-size:12px}.compact-slot .rental-slot .room-icon-box{width:16px;height:16px}.compact-slot .rental-wallpaper{top:calc(50% - 12px);flex-direction:column;gap:0;line-height:16px;transform:translate(-50%,-50%) rotate(-18deg)}.compact-slot .rental-slot .rental-action{padding-bottom:20px;gap:1px;font-size:12px;line-height:16px}.compact-slot .rental-slot .rental-action strong{font-size:13px;line-height:18px}@media(max-width:1000px)and (min-width:651px){.grouped-calendar{grid-template-columns:1fr;gap:28px}}@media(max-width:650px){.grouped-calendar{display:block}.calendar-group-heading{min-height:36px}.bc-root .calendar-group-heading h2{font-size:14px}.compact-slot .rental-slot>.room-badge{font-size:13px}}.calendar-item:not(.half-hour) .session-main{display:grid;grid-template-rows:var(--card-title-height) var(--card-level-height) minmax(42px,auto);align-content:start;gap:2px}.calendar-item:not(.half-hour) .session-heading{display:contents}.calendar-item:not(.half-hour) .session-title{grid-row:1;align-self:start}.calendar-item:not(.half-hour) .lesson-level{grid-row:2;align-self:start;margin:0;padding:0}.calendar-item:not(.half-hour) .session-people{grid-row:3;align-self:start}.calendar-item:not(.half-hour) .start-note{grid-row:3;align-self:start}.calendar-item:not(.half-hour) .session-heading>.price-badge{grid-row:2;justify-self:start;align-self:start;margin:0}.calendar-item .session-footer{flex-shrink:0}@media(min-width:651px){main{padding-inline:16px;max-width:none}.schedule-heading{padding-inline:16px;max-width:none}.calendar{--axis:44px;--minimum-lane:96px;--half-hour:76px;width:100%;min-width:calc(var(--desktop-lanes)*var(--minimum-lane) + var(--axis))}.grouped-calendar .calendar{--minimum-lane:92px}.grouped-calendar .calendar-item .session{padding-inline:3px}.calendar-item .session{padding:4px;gap:3px}.calendar-item:not(.half-hour) .session-main{display:flex;flex-direction:column;gap:10px}.calendar-item:not(.half-hour) .session-heading{display:block;line-height:18px}.calendar-item:not(.half-hour) .session-title{display:inline;font-size:13px;line-height:18px;overflow-wrap:normal}.calendar-item:not(.half-hour) .lesson-level{display:inline;font-size:13px;line-height:18px;font-weight:800;color:var(--ui-text);white-space:nowrap}.calendar-item:not(.half-hour) .all-levels-badge{white-space:normal}.grouped-calendar .calendar-item:not(.half-hour) .lesson-level{display:inline-block;max-width:100%}.class-level-separator{font-weight:500;color:var(--ui-muted)}.lesson-list-heading{display:block;line-height:24px}.lesson-list-level{display:inline;font-size:14px;font-weight:800;line-height:24px;color:var(--ui-text);white-space:nowrap}.calendar-item .teacher-names{flex-direction:column;align-items:flex-start;gap:2px}.calendar-item .teacher-name{--calendar-avatar-size:20px;gap:3px;font-size:13px;line-height:20px}.class-level-short,.room-name-short{display:inline}.class-level-long,.room-name-long{display:none}.calendar-day strong{font-size:16px}.calendar-time-axis,.calendar-time-heading{position:sticky;left:0;z-index:3;background:var(--ui-bg)}.calendar-item.half-hour .session{padding:3px 4px}.calendar-item.half-hour .session-heading{display:block}.calendar-item.half-hour .session-title{display:inline;font-size:12px;line-height:15px}.calendar-item.half-hour .price-badge{font-size:11px;line-height:14px;padding:0 3px;margin-left:3px}.calendar-item.half-hour .room-badge{font-size:12px}}@media(max-width:650px){.calendar{--card-title-height:36px;--card-level-height:30px;--half-hour:84px}.calendar-item:not(.half-hour) .session-title{line-height:18px}.calendar-item:not(.half-hour) .lesson-level{line-height:15px}}@media(max-width:380px){.calendar{--card-title-height:54px;--card-level-height:45px;--half-hour:96px}}
