:root{--background:#f7f8fb;--foreground:#18202f;--muted:#667085;--line:#d9dee8;--panel:#ffffff;--brand:#1570ef;--brand-dark:#175cd3;--accent:#12b76a;--warning:#f79009}*{box-sizing:border-box}body,html{margin:0;min-height:100%;background:var(--background);color:var(--foreground);font-family:Arial,Microsoft JhengHei,PingFang HK,sans-serif}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.site-shell{min-height:100vh}.topbar{align-items:center;background:rgba(255,255,255,.92);border-bottom:1px solid var(--line);display:flex;gap:24px;justify-content:space-between;padding:18px 40px;position:-webkit-sticky;position:sticky;top:0;z-index:10}.brand-mark{color:var(--brand);font-weight:800;letter-spacing:0}.nav-links{display:flex;flex-wrap:wrap;gap:18px;color:var(--muted);font-size:14px}.hero{display:grid;grid-gap:36px;gap:36px;grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr);margin:0 auto;max-width:1180px;padding:72px 32px 40px}.eyebrow{color:var(--brand);font-size:14px;font-weight:700;margin:0 0 12px}h1,h2,h3,p{margin-top:0}h1{font-size:52px;line-height:1.08;margin-bottom:20px}h2{font-size:28px;margin-bottom:18px}h3{font-size:17px;margin-bottom:8px}.lead{color:var(--muted);font-size:20px;line-height:1.65;max-width:720px}.actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}.button{align-items:center;border-radius:8px;border:1px solid var(--line);display:inline-flex;font-weight:700;min-height:44px;padding:11px 16px}.button-primary{background:var(--brand);border-color:var(--brand);color:#fff}.button-primary:hover{background:var(--brand-dark)}.button-secondary{background:#fff}.button-danger{background:#b42318;border-color:#b42318;color:#fff}.button-danger:hover{background:#912018}.button:disabled{cursor:not-allowed;opacity:.5}.panel{background:var(--panel);border:1px solid var(--line);border-radius:8px;box-shadow:0 18px 48px rgba(16,24,40,.08);padding:24px}.card-grid,.metric-grid{display:grid;grid-gap:16px;gap:16px}.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.metric{border:1px solid var(--line);border-radius:8px;padding:16px}.metric strong{display:block;font-size:28px}.metric span,.muted{color:var(--muted)}.section{margin:0 auto;max-width:1180px;padding:42px 32px}.card-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.card{background:#fff;border:1px solid var(--line);border-radius:8px;padding:20px}.admin-shell{display:grid;grid-template-columns:240px minmax(0,1fr);min-height:100vh}.sidebar{background:#101828;color:#fff;padding:24px}.sidebar a{border-radius:8px;color:#d0d5dd;display:block;margin-top:8px;padding:10px 12px}.sidebar a:hover{background:#1d2939;color:#fff}.sidebar-logout{background:transparent;border:1px solid #344054;border-radius:8px;color:#d0d5dd;cursor:pointer;font-weight:700;margin-top:24px;min-height:40px;padding:9px 12px;text-align:left;width:100%}.sidebar-logout:hover{background:#1d2939;color:#fff}.login-page{align-items:center;background:#f2f4f7;display:flex;justify-content:center;min-height:100vh;padding:24px}.login-panel{background:#fff;border:1px solid var(--line);border-radius:8px;box-shadow:0 20px 50px rgba(16,24,40,.12);display:grid;grid-gap:22px;gap:22px;max-width:440px;padding:28px;width:100%}.login-panel h1{font-size:30px}.login-panel .button{justify-content:center;width:100%}.login-error{background:#fef3f2;border:1px solid #fecdca;border-radius:8px;color:#b42318;padding:10px 12px}.access-denied-panel{background:#fff;border:1px solid var(--line);border-radius:8px;display:grid;grid-gap:12px;gap:12px;max-width:620px;padding:24px}.access-denied-panel .button{justify-self:start}.staff-management-layout{align-items:start;display:grid;grid-gap:16px;gap:16px;grid-template-columns:minmax(300px,.75fr) minmax(500px,1.25fr)}.staff-list{background:#fff;border:1px solid var(--line);border-radius:8px;display:grid;overflow:hidden}.staff-row{align-items:center;background:#fff;border:0;cursor:pointer;display:flex;gap:14px;justify-content:space-between;padding:13px;text-align:left}.staff-row+.staff-row{border-top:1px solid var(--line)}.staff-row.active{background:#f5f8ff;box-shadow:inset 4px 0 0 var(--brand)}.staff-row>span{display:grid;grid-gap:3px;gap:3px}.staff-row>span:last-child{justify-items:end}.staff-row small{color:var(--muted)}.branch-access-list{display:flex;flex-wrap:wrap;gap:8px}.branch-access-list label,.toggle-row{align-items:center;border:1px solid var(--line);border-radius:8px;display:flex;gap:8px;min-height:40px;padding:8px 10px}.role-permission-summary{border:1px solid var(--line);border-radius:8px;display:grid;overflow:hidden}.role-permission-summary div{display:grid;grid-gap:3px;gap:3px;padding:10px 12px}.role-permission-summary div+div{border-top:1px solid var(--line)}.role-permission-summary span{color:var(--muted);font-size:12px}.admin-main{padding:32px}.admin-header{align-items:center;display:flex;gap:18px;justify-content:space-between;margin-bottom:26px}.admin-grid{display:grid;grid-gap:18px;gap:18px;grid-template-columns:minmax(0,1.7fr) minmax(320px,.8fr)}.toolbar{align-items:center;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;margin-bottom:16px}.search-input{background:#fff;border:1px solid var(--line);border-radius:8px;min-height:42px;min-width:280px;padding:10px 12px}.form-stack{display:grid;grid-gap:12px;gap:12px}.field{display:grid;grid-gap:6px;gap:6px}.field label{color:var(--muted);font-size:13px;font-weight:700}.field input,.field select,.field textarea{background:#fff;border:1px solid var(--line);border-radius:8px;min-height:40px;padding:9px 11px;width:100%}.field textarea{min-height:92px;resize:vertical}.money{font-weight:800;white-space:nowrap}.price-pair{display:flex;flex-direction:column;gap:3px}.price-original{text-decoration:line-through}.price-original,.table-meta{color:var(--muted);font-size:12px}.table-meta{display:block}.pos-page{background:#eef2f7}.pos-header{align-items:flex-start}.pos-header h1{font-size:36px;margin-bottom:8px}.checkout-actions,.pos-header-actions{display:flex;flex-wrap:wrap;gap:10px}.branch-switcher{display:grid;grid-gap:3px;gap:3px;min-width:160px}.branch-switcher label{color:var(--muted);font-size:11px;font-weight:700}.branch-switcher select{background:#fff;border:1px solid var(--line);border-radius:8px;min-height:42px;padding:8px 10px}.branch-management-layout{align-items:start;display:grid;grid-gap:16px;gap:16px;grid-template-columns:minmax(320px,.8fr) minmax(480px,1.2fr)}.branch-list{background:#fff;border:1px solid var(--line);border-radius:8px;display:grid;overflow:hidden}.branch-row{align-items:center;background:#fff;border:0;cursor:pointer;display:flex;gap:16px;justify-content:space-between;padding:14px;text-align:left}.branch-row+.branch-row{border-top:1px solid var(--line)}.branch-row.active{background:#f5f8ff;box-shadow:inset 4px 0 0 var(--brand)}.branch-row>span{display:grid;grid-gap:4px;gap:4px}.branch-row>span:last-child{justify-items:end}.branch-row small{color:var(--muted)}.branch-count-grid{display:grid;grid-gap:8px;gap:8px;grid-template-columns:repeat(4,minmax(0,1fr))}.branch-count-grid div{background:#f8fafc;border:1px solid var(--line);border-radius:8px;display:grid;grid-gap:2px;gap:2px;padding:10px}.branch-count-grid span{color:var(--muted);font-size:12px}.pos-student-selector{background:#fff;border:1px solid var(--line);border-radius:8px;display:grid;grid-gap:12px;gap:12px;margin-bottom:16px;padding:16px}.student-choice-list{display:grid;grid-gap:8px;gap:8px;grid-template-columns:repeat(3,minmax(0,1fr))}.student-choice{align-items:center;background:#fff;border:1px solid var(--line);border-radius:8px;cursor:pointer;display:flex;gap:12px;justify-content:space-between;min-height:62px;padding:10px 12px;text-align:left}.student-choice.active{background:#eff8ff;border-color:var(--brand)}.student-choice>span{display:grid;grid-gap:3px;gap:3px}.student-choice>span:last-child{justify-items:end}.student-choice small{color:var(--muted)}.selected-student-strip{background:#ecfdf3;border:1px solid #abefc6;border-radius:8px;display:grid;grid-gap:3px;gap:3px;padding:10px 12px}.selected-student-strip.warning{background:#fffaeb;border-color:#fedf89}.selected-student-strip span{color:var(--muted);font-size:12px}.pos-workspace{display:grid;grid-gap:16px;gap:16px;grid-template-columns:310px minmax(420px,1fr) 360px;min-height:calc(100vh - 150px)}.pos-panel{background:#fff;border:1px solid var(--line);border-radius:8px;box-shadow:0 14px 34px rgba(16,24,40,.06);display:flex;flex-direction:column;gap:16px;min-width:0;padding:18px}.pos-panel h2{font-size:21px;margin-bottom:0}.pos-panel-head{align-items:flex-start;display:flex;gap:12px;justify-content:space-between}.pos-search{min-width:0;width:100%}.student-card{border:1px solid var(--line);border-radius:8px;display:grid;grid-gap:14px;gap:14px;padding:16px}.student-card.selected{border-color:rgba(21,112,239,.55);box-shadow:inset 4px 0 0 var(--brand)}.student-card span,.student-card strong{display:block}.student-card span{color:var(--muted);font-size:13px;margin-top:3px}.student-card dl{display:grid;grid-gap:10px;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr));margin:0}.student-card dt{color:var(--muted);font-size:12px;font-weight:700}.student-card dd{margin:3px 0 0}.compact-list{display:grid;grid-gap:8px;gap:8px}.compact-row{align-items:center;background:#fff;border:1px solid var(--line);border-radius:8px;cursor:pointer;display:flex;justify-content:space-between;min-height:54px;padding:10px 12px;text-align:left}.compact-row:hover{border-color:var(--brand)}.compact-row small,.compact-row strong{display:block}.compact-row small{color:var(--muted);margin-top:3px}.pos-filters{display:flex;flex-wrap:wrap;gap:8px}.filter-pill{background:#fff;border:1px solid var(--line);border-radius:999px;cursor:pointer;font-weight:700;min-height:34px;padding:7px 12px}.filter-pill.active{background:#eaf2ff;border-color:var(--brand);color:var(--brand-dark)}.course-pick-list{display:grid;grid-gap:12px;gap:12px}.course-pick-card{align-items:center;border:1px solid var(--line);border-radius:8px;display:grid;grid-gap:14px;gap:14px;grid-template-columns:minmax(0,1fr) 150px;padding:16px}.course-pick-card h3{line-height:1.35;margin-bottom:8px}.course-pick-side{align-items:flex-end;display:grid;grid-gap:12px;gap:12px;justify-items:end}.pos-panel-foot{border-top:1px solid var(--line);margin-top:auto;padding-top:14px}.receipt-box{border:1px solid var(--line);border-radius:8px;padding:14px}.receipt-line,.totals div{align-items:flex-start;display:flex;gap:12px;justify-content:space-between}.receipt-line{border-top:1px solid var(--line);padding:12px 0}.receipt-line:first-of-type{border-top:0;padding-top:0}.receipt-line span{color:var(--muted);line-height:1.4}.receipt-line strong{white-space:nowrap}.totals{display:grid;grid-gap:10px;gap:10px}.totals div{color:var(--muted)}.totals strong{color:var(--foreground)}.total-due{border-top:1px solid var(--line);font-size:20px;padding-top:14px}.total-due strong{color:#b42318}.course-planning-summary{background:#fff;border:1px solid var(--line);border-radius:8px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:16px}.course-planning-summary div{display:grid;grid-gap:4px;gap:4px;padding:16px 18px}.course-planning-summary div+div{border-left:1px solid var(--line)}.course-planning-summary span,.course-price-preview small,.course-price-preview span{color:var(--muted);font-size:12px}.course-planning-summary strong{font-size:22px}.course-planning-layout{align-items:start;display:grid;grid-gap:16px;gap:16px;grid-template-columns:minmax(0,1fr) 320px}.course-program-list{display:grid;grid-gap:10px;gap:10px}.course-program-row{background:#fff;border:1px solid var(--line);border-radius:8px;display:grid;grid-gap:18px;gap:18px;grid-template-columns:minmax(0,1fr) 190px;padding:18px}.course-program-main{display:grid;grid-gap:10px;gap:10px}.course-program-title{align-items:flex-start;display:flex;gap:12px;justify-content:space-between}.course-program-title h2{font-size:21px;margin-bottom:0}.course-program-meta{display:flex;flex-wrap:wrap;gap:8px}.course-program-meta span{background:#f2f4f7;border-radius:6px;color:#344054;font-size:12px;font-weight:700;padding:5px 8px}.course-subjects{color:var(--foreground);font-size:14px;margin:0}.course-price-preview{border-left:1px solid var(--line);display:flex;flex-direction:column;gap:5px;justify-content:center;padding-left:18px}.course-price-preview strong{color:var(--brand-dark);font-size:20px}.course-side-panel{background:#fff;border:1px solid var(--line);border-radius:8px;display:grid;position:-webkit-sticky;position:sticky;top:18px}.course-side-panel>section{padding:18px}.course-side-panel>section+section{border-top:1px solid var(--line)}.course-side-panel h2{font-size:20px}.course-side-panel h3{font-size:16px;margin-bottom:12px}.branch-facts{display:grid;grid-gap:10px;gap:10px;margin:0}.branch-facts div{display:flex;gap:12px;justify-content:space-between}.branch-facts dt{color:var(--muted)}.branch-facts dd{font-weight:700;margin:0;text-align:right}.plain-check-list{display:grid;grid-gap:8px;gap:8px;margin:0;padding-left:20px}.addon-mini-list{display:grid;grid-gap:9px;gap:9px}.addon-mini-list div{display:grid;grid-gap:2px;gap:2px}.addon-mini-list span{font-size:13px}.addon-mini-list strong{color:var(--brand-dark);font-size:12px}.catalog-page{background:#f6f7fb}.segmented-control{background:#eaecf0;display:inline-grid;gap:3px;grid-template-columns:1fr 1fr;margin-bottom:14px}.segmented-control button{min-height:36px;padding:7px 14px}.segmented-control button.active{color:var(--brand-dark)}.catalog-layout{align-items:start;display:grid;grid-gap:16px;gap:16px;grid-template-columns:330px minmax(0,1fr)}.catalog-course-list{background:#fff;border:1px solid var(--line);border-radius:8px;display:grid;overflow:hidden}.catalog-course-row{align-items:center;background:#fff;border:0;border-left:5px solid var(--brand);cursor:pointer;display:grid;grid-gap:12px;gap:12px;grid-template-columns:minmax(0,1fr) auto;padding:14px;text-align:left}.archived-course-list{border-top:1px solid var(--line);padding:12px}.catalog-archived-row{align-items:stretch;display:grid;grid-gap:8px;gap:8px;grid-template-columns:minmax(0,1fr) auto;margin-top:10px}.course-color-picker{align-items:center;display:flex;flex-wrap:wrap;gap:10px}.course-color-picker>input{height:40px;padding:3px;width:56px}.course-color-picker>button{border:2px solid #fff;border-radius:50%;box-shadow:0 0 0 1px var(--line);cursor:pointer;height:28px;padding:0;width:28px}.course-color-picker>button.active{box-shadow:0 0 0 3px #172033}.grade-checkbox-grid{display:grid;grid-gap:8px;gap:8px;grid-template-columns:repeat(auto-fit,minmax(72px,1fr))}.grade-checkbox-grid label{align-items:center;background:#fff;border:1px solid var(--line);border-radius:6px;cursor:pointer;display:flex;gap:7px;min-height:42px;padding:8px 10px}.grade-checkbox-grid label.is-selected{background:#edf8f2;border-color:#2e8b57;color:#0f4a3a}.grade-checkbox-grid input{height:18px;margin:0;width:18px}.schedule-day-checkboxes{grid-template-columns:repeat(4,minmax(64px,1fr))}.catalog-course-row+.catalog-course-row{border-top:1px solid var(--line)}.catalog-course-row.active,.catalog-course-row:hover{background:#f5f8ff}.catalog-course-row.active{box-shadow:inset 4px 0 0 var(--brand)}.catalog-course-row>span{display:grid;grid-gap:4px;gap:4px;min-width:0}.catalog-course-row>span:last-child{justify-items:end}.catalog-course-row small{color:var(--muted);line-height:1.35}.catalog-editor,.catalog-editor-section{display:grid;grid-gap:16px;gap:16px}.catalog-editor-section{background:#fff;border:1px solid var(--line);border-radius:8px;padding:18px}.catalog-section-head{align-items:flex-start;display:flex;gap:12px;justify-content:space-between}.catalog-editor-section h2,.catalog-section-head h2{font-size:22px;margin-bottom:0}.catalog-section-head>strong{color:var(--brand-dark);white-space:nowrap}.catalog-form-actions{display:flex;gap:8px;justify-content:flex-end}.danger-text{color:#b42318}.catalog-price-list{border:1px solid var(--line);border-radius:8px;display:grid;overflow:hidden}.catalog-price-row{align-items:center;background:#fff;border:0;cursor:pointer;display:flex;gap:14px;justify-content:space-between;min-height:58px;padding:10px 12px;text-align:left}.catalog-price-row+.catalog-price-row{border-top:1px solid var(--line)}.catalog-price-row:hover{background:#f5f8ff}.catalog-price-row.inactive{opacity:.55}.catalog-price-row>span{display:grid;grid-gap:3px;gap:3px}.catalog-price-row>span:last-child{justify-items:end;text-align:right}.catalog-price-row small{color:var(--muted)}.price-version-form{background:#f8fafc;border:1px solid var(--line);border-radius:8px;display:grid;grid-gap:12px;gap:12px;padding:14px}.price-version-form h3{font-size:16px;margin:0}.price-history{border-top:1px solid var(--line);padding-top:12px}.price-history summary{cursor:pointer;font-weight:700}.price-history p{color:var(--muted);font-size:13px;margin:8px 0 0}.addon-management-layout{align-items:start;display:grid;grid-gap:16px;gap:16px;grid-template-columns:minmax(320px,.8fr) minmax(480px,1.2fr)}.shun-lee-pos-layout{align-items:start;display:grid;grid-gap:16px;gap:16px;grid-template-columns:minmax(0,1fr) 400px}.shun-lee-pos-layout .pos-checkout{position:-webkit-sticky;position:sticky;top:18px}.shun-lee-program-grid{display:grid;grid-gap:12px;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr))}.shun-lee-program-card{border:1px solid var(--line);border-top:5px solid var(--brand);border-radius:8px;display:grid;grid-gap:14px;gap:14px;padding:16px}.shun-lee-program-card h3{font-size:18px;margin-bottom:5px}.program-card-actions{align-items:center;display:flex;gap:12px;justify-content:space-between}.program-card-actions span{color:var(--muted);font-size:12px;line-height:1.4}.program-card-actions .button{flex:0 0 auto}.pos-addon-section{border-top:1px solid var(--line);display:grid;grid-gap:12px;gap:12px;padding-top:16px}.pos-addon-grid{display:grid;grid-gap:8px;gap:8px;grid-template-columns:repeat(2,minmax(0,1fr))}.pos-addon-button{align-items:center;background:#fff;border:1px solid var(--line);border-radius:8px;cursor:pointer;display:flex;gap:10px;justify-content:space-between;min-height:52px;padding:10px 12px;text-align:left}.pos-addon-button:hover{border-color:var(--brand)}.pos-addon-button span{font-size:13px}.pos-addon-button strong{color:var(--brand-dark);font-size:12px;white-space:nowrap}.empty-cart-copy{color:var(--muted);margin:0;padding:18px 0;text-align:center}.pos-cart-line{align-items:center;display:grid;grid-gap:10px;gap:10px;grid-template-columns:minmax(0,1fr) auto minmax(76px,88px) auto;padding:12px 0}.pos-cart-line+.pos-cart-line{border-top:1px solid var(--line)}.pos-cart-line>div:first-child{display:grid;grid-gap:3px;gap:3px}.pos-cart-line small,.pos-cart-line span{color:var(--muted);font-size:12px}.pos-cart-line>strong{font-size:13px;white-space:nowrap}.pos-cart-price{display:grid;grid-gap:3px;gap:3px}.pos-cart-price span{font-size:11px}.pos-cart-price input{min-height:34px;padding:6px 8px;width:100%}.pos-discount-panel{background:#f8fafc;border:1px solid var(--line);border-radius:8px;display:grid;grid-gap:10px;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr));padding:12px}.pos-discount-panel .field{margin:0}.pos-discount-reason{grid-column:1/-1}@media (max-width:720px){.pos-cart-line{align-items:flex-end;grid-template-columns:minmax(0,1fr) auto}.pos-cart-line>div:first-child{grid-column:1/-1}.pos-discount-panel{grid-template-columns:1fr}.pos-discount-reason{grid-column:auto}}.quantity-control{align-items:center;border:1px solid var(--line);border-radius:6px;display:grid;grid-template-columns:28px 28px 28px;overflow:hidden}.quantity-control button{background:#fff;border:0;cursor:pointer;min-height:30px}.quantity-control button:hover{background:#f2f4f7}.quantity-control strong{font-size:13px;text-align:center}.receipt-success{background:#ecfdf3;border:1px solid #abefc6;border-radius:8px;color:#067647;display:grid;grid-gap:3px;gap:3px;padding:12px}.receipt-success span{font-size:12px}.scheduling-page{background:#f6f7fb}.scheduling-summary{background:#fff;border:1px solid var(--line);border-radius:8px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:16px}.scheduling-summary div{display:grid;grid-gap:4px;gap:4px;padding:15px 18px}.scheduling-summary div+div{border-left:1px solid var(--line)}.scheduling-summary span{color:var(--muted);font-size:12px}.scheduling-summary strong{font-size:20px}.scheduling-toolbar{align-items:flex-end;background:#fff;border:1px solid var(--line);border-radius:8px;display:flex;flex-wrap:wrap;gap:12px;margin-bottom:16px;padding:12px 14px}.scheduling-toolbar .field{min-width:190px}.scheduling-layout{align-items:start;display:grid;grid-gap:16px;gap:16px;grid-template-columns:minmax(0,1fr) 370px}.weekly-planning-board{display:grid;grid-gap:18px;gap:18px;grid-template-columns:repeat(2,minmax(0,1fr))}.planning-day{min-width:0}.planning-day>header{align-items:center;border-bottom:2px solid #d0d5dd;display:flex;justify-content:space-between;margin-bottom:10px;padding:0 2px 10px}.planning-day>header h2{font-size:20px;margin:0}.planning-day>header span{color:var(--muted);font-size:12px;font-weight:700}.planning-class-list{display:grid;grid-gap:9px;gap:9px}.planning-empty{color:var(--muted);margin:0;padding:22px 4px}.planning-class-card{background:#fff;border:1px solid var(--line);border-left:4px solid #f79009;border-radius:8px;display:grid;grid-gap:10px;gap:10px;padding:13px}.planning-class-card.open{border-left-color:#12b76a}.planning-class-head{align-items:flex-start;display:flex;gap:10px;justify-content:space-between}.planning-class-head>div>span{color:var(--brand-dark);font-size:13px;font-weight:800}.planning-class-head h3{font-size:16px;line-height:1.35;margin:3px 0 0}.planning-subject{font-size:14px}.planning-class-facts{display:flex;flex-wrap:wrap;gap:5px}.planning-class-facts span{background:#f2f4f7;border-radius:5px;color:#475467;font-size:11px;padding:4px 6px}.planning-class-actions{border-top:1px solid var(--line);display:flex;gap:6px;justify-content:flex-end;padding-top:9px}.class-editor-panel{background:#fff;border:1px solid var(--line);border-radius:8px;display:grid;grid-gap:16px;gap:16px;padding:18px;position:-webkit-sticky;position:sticky;top:18px}.class-editor-panel h2{font-size:22px;margin-bottom:0}.class-editor-actions{display:flex;gap:8px;justify-content:flex-end;padding-top:4px}.timetable-toolbar{align-items:center;display:flex;flex-wrap:wrap;gap:12px;margin-bottom:18px;padding:14px}.timetable-toolbar,.timetable-toolbar select{background:#fff;border:1px solid var(--line);border-radius:8px}.timetable-toolbar select{min-height:38px;padding:8px 10px}.workspace-notice{background:#eff8ff;border:1px solid #b2ddff;border-radius:8px;color:#175cd3;font-weight:700;margin-bottom:18px;padding:12px 14px}.workspace-notice.notice-success{background:#ecfdf3;border-color:#abefc6;color:#067647}.workspace-notice.notice-error{background:#fef3f2;border-color:#fecdca;color:#b42318}.timetable-grid{display:grid;grid-gap:16px;gap:16px;grid-template-columns:repeat(2,minmax(0,1fr))}.timetable-layout{display:grid;grid-gap:16px;gap:16px;grid-template-columns:minmax(0,1fr) 390px;align-items:start}.day-column{background:#fff;border:1px solid var(--line);border-radius:8px;min-width:0}.day-head{align-items:center;border-bottom:1px solid var(--line);display:flex;gap:12px;padding:16px}.day-head span{background:#eaf2ff;border-radius:8px;color:var(--brand-dark);font-weight:800;padding:8px 10px}.day-head h2{font-size:22px;margin-bottom:0}.lesson-stack{padding:16px}.lesson-card,.lesson-stack{display:grid;grid-gap:14px;gap:14px}.lesson-card{border:1px solid var(--line);border-radius:8px;grid-template-columns:76px minmax(0,1fr);padding:14px}.lesson-card.active{border-color:rgba(21,112,239,.6);box-shadow:inset 4px 0 0 var(--brand)}.lesson-card-button{cursor:pointer;transition:border-color .15s ease,box-shadow .15s ease,transform .15s ease}.lesson-card-button:focus-visible,.lesson-card-button:hover{border-color:var(--brand);box-shadow:0 12px 28px rgba(21,112,239,.12);outline:none}.lesson-time{border-right:1px solid var(--line);display:grid;grid-gap:4px;gap:4px;padding-right:12px}.lesson-time strong{font-size:20px}.lesson-time span{color:var(--muted);font-size:13px}.lesson-main{display:grid;grid-gap:12px;gap:12px;min-width:0}.lesson-title-row{align-items:flex-start;display:flex;gap:12px;justify-content:space-between}.lesson-title-row h3{line-height:1.35;margin-bottom:4px}.student-roster{border:1px solid var(--line);border-radius:8px;overflow:hidden}.roster-row{align-items:center;display:grid;grid-gap:8px;gap:8px;grid-template-columns:minmax(0,1fr) 72px 48px;min-height:42px;padding:9px 10px}.roster-row+.roster-row{border-top:1px solid var(--line)}.roster-row small{color:var(--muted)}.mini-button{background:#fff;border:1px solid var(--line);border-radius:6px;cursor:pointer;font-size:12px;font-weight:700;min-height:28px}.mini-button:hover{border-color:var(--brand);color:var(--brand-dark)}.mini-button.active{background:var(--brand);border-color:var(--brand);color:#fff}.lesson-actions{display:flex;flex-wrap:wrap;gap:8px}.lesson-detail-panel{background:#fff;border:1px solid var(--line);border-radius:8px;box-shadow:0 14px 34px rgba(16,24,40,.07);display:grid;grid-gap:18px;gap:18px;padding:18px;position:-webkit-sticky;position:sticky;top:18px}.lesson-detail-head h2{font-size:24px;line-height:1.25;margin-bottom:8px}.lesson-summary-grid{display:grid;grid-gap:10px;gap:10px;grid-template-columns:repeat(4,minmax(0,1fr))}.lesson-summary-grid div{background:#f8fafc;border:1px solid var(--line);border-radius:8px;padding:12px}.lesson-summary-grid span,.lesson-summary-grid strong{display:block}.lesson-summary-grid strong{font-size:22px}.lesson-summary-grid span{color:var(--muted);font-size:12px;margin-top:3px}.detail-actions{display:grid;grid-gap:8px;gap:8px;grid-template-columns:1fr 1fr}.detail-actions .button:first-child{grid-column:1/-1;justify-content:center}.detail-roster,.detail-student{display:grid;grid-gap:10px;gap:10px}.detail-student{border:1px solid var(--line);border-radius:8px;padding:12px}.detail-student span,.detail-student strong{display:block}.detail-student>div:first-child span{color:var(--muted);font-size:13px;margin-top:3px}.detail-student p{background:#fffbeb;border:1px solid #fedf89;border-radius:8px;color:#93370d;font-size:13px;margin:0;padding:8px 10px}.detail-tags,.student-actions{display:flex;flex-wrap:wrap;gap:6px}.student-management-actions{border-top:1px solid var(--line);display:flex;gap:6px;justify-content:flex-end;padding-top:10px}.mini-button-danger{color:#b42318}.lesson-notes{display:grid;grid-gap:10px;gap:10px}.lesson-notes textarea{border:1px solid var(--line);border-radius:8px;min-height:96px;padding:10px;resize:vertical}.modal-backdrop{align-items:center;background:rgba(16,24,40,.44);display:flex;inset:0;justify-content:center;padding:24px;position:fixed;z-index:40}.modal-panel{background:#fff;border-radius:8px;box-shadow:0 24px 70px rgba(16,24,40,.22);max-height:calc(100vh - 48px);max-width:620px;overflow:auto;padding:22px;width:100%}.modal-panel-compact{max-width:480px}.modal-head{align-items:flex-start;display:flex;gap:12px;justify-content:space-between;margin-bottom:18px}.modal-head h2{margin-bottom:0}.form-grid-two{display:grid;grid-gap:12px;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid-three{display:grid;grid-gap:12px;gap:12px;grid-template-columns:repeat(3,minmax(0,1fr))}.billing-block{background:#f8fafc;border:1px solid var(--line);border-radius:8px;display:grid;grid-gap:12px;gap:12px;padding:14px}.billing-block h3{margin-bottom:0}.lesson-billing-line{color:var(--brand-dark);font-size:13px;font-weight:800;margin-bottom:0}.billing-summary{border:1px solid var(--line);border-radius:8px;display:grid;grid-gap:0;gap:0;overflow:hidden}.billing-summary div{align-items:center;display:flex;justify-content:space-between;padding:11px 12px}.billing-summary div+div{border-top:1px solid var(--line)}.transfer-summary{border:1px solid var(--line);border-radius:8px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));overflow:hidden}.transfer-summary div{display:grid;grid-gap:4px;gap:4px;padding:12px}.transfer-summary div:nth-child(2n){border-left:1px solid var(--line)}.transfer-summary div:nth-child(n+3){border-top:1px solid var(--line)}.removal-summary span,.transfer-summary span{color:var(--muted);font-size:13px}.removal-summary{border:1px solid var(--line);border-radius:8px;display:grid;grid-gap:5px;gap:5px;padding:14px}.removal-summary p{color:var(--muted);margin:8px 0 0}.billing-summary span{color:var(--muted)}.modal-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:6px}.table{background:#fff;border:1px solid var(--line);border-collapse:collapse;width:100%}.table td,.table th{border-bottom:1px solid var(--line);padding:12px 14px;text-align:left}.status{border-radius:999px;display:inline-flex;font-size:12px;font-weight:700;padding:4px 8px}.status-green{background:#dcfae6;color:#067647}.status-orange{background:#fef0c7;color:#b54708}.header-actions{align-items:center;display:flex;flex-wrap:wrap;gap:10px}.payment-method-layout,.student-crm-layout{align-items:start;display:grid;grid-gap:16px;gap:16px;grid-template-columns:minmax(290px,.72fr) minmax(620px,1.6fr)}.payment-method-list,.student-directory,.student-record-workspace{background:#fff;border:1px solid var(--line);border-radius:8px;overflow:hidden}.student-directory-toolbar{align-items:center;border-bottom:1px solid var(--line);display:grid;grid-gap:8px;gap:8px;padding:12px}.student-directory-toolbar span{color:var(--muted);font-size:13px}.student-directory-list{max-height:calc(100vh - 250px);overflow:auto}.payment-method-row,.student-directory-row{align-items:center;background:#fff;border:0;cursor:pointer;display:flex;gap:12px;justify-content:space-between;min-height:68px;padding:12px 14px;text-align:left;width:100%}.payment-method-row+.payment-method-row,.student-directory-row+.student-directory-row{border-top:1px solid var(--line)}.payment-method-row.active,.student-directory-row.active{background:#f5f8ff;box-shadow:inset 4px 0 0 var(--brand)}.payment-method-row>span,.student-directory-row>span{display:grid;grid-gap:4px;gap:4px}.payment-method-row>span:last-child,.student-directory-row>span:last-child{justify-items:end}.payment-method-row small,.student-directory-row small{color:var(--muted)}.account-toggle-heading,.parent-order-summary,.parent-student-heading,.payment-order-head,.record-heading{align-items:center;display:flex;gap:18px;justify-content:space-between}.record-heading{border-bottom:1px solid var(--line);padding:18px 20px;position:-webkit-sticky;position:sticky;top:0;z-index:4;background:#fff}.account-toggle-heading h3,.parent-student-heading h2,.record-heading h2{margin-bottom:0}.record-heading-actions{align-items:center;display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end}.segmented-control{background:#f2f4f7;border:1px solid var(--line);border-radius:8px;display:flex;padding:3px}.segmented-control button{background:transparent;border:0;border-radius:6px;cursor:pointer;font-weight:700;min-height:34px;padding:7px 12px}.segmented-control button.active{background:#fff;box-shadow:0 1px 3px rgba(16,24,40,.12);color:var(--brand)}.student-editor{display:grid}.editor-band{display:grid;grid-gap:14px;gap:14px;padding:20px}.editor-band+.editor-band{border-top:1px solid var(--line)}.editor-band h3{font-size:18px;margin:0}.parent-account-band{background:#f8fafc}.student-editor .catalog-form-actions{border-top:1px solid var(--line);padding:16px 20px 20px}.payment-history,.student-lesson-history{display:grid;grid-gap:14px;gap:14px;padding:20px}.student-lesson-summary{display:grid;grid-gap:1px;gap:1px;grid-template-columns:repeat(3,minmax(0,1fr));overflow:hidden}.student-lesson-summary>div{background:#f2f4f7;display:grid;grid-gap:5px;gap:5px;padding:14px}.student-lesson-summary span{color:var(--muted);font-size:13px}.student-lesson-summary strong{font-size:22px}.student-lesson-list{border:1px solid var(--line);border-radius:8px;display:grid;overflow:hidden}.student-lesson-row{align-items:center;display:grid;grid-gap:14px;gap:14px;grid-template-columns:120px minmax(220px,1fr) minmax(130px,auto) auto;padding:14px}.student-lesson-row+.student-lesson-row{border-top:1px solid var(--line)}.student-lesson-row time,.student-lesson-row>div{display:grid;grid-gap:4px;gap:4px}.student-lesson-row small,.student-lesson-row time span,.student-lesson-statuses{color:var(--muted);font-size:13px}.student-lesson-title{align-items:center;display:flex;flex-wrap:wrap;gap:7px}.student-lesson-title em{background:#e7f7ef;border-radius:4px;color:#087443;font-size:11px;font-style:normal;font-weight:800;padding:3px 6px}.student-lesson-actions,.student-lesson-statuses{align-items:flex-start;display:flex;flex-wrap:wrap;gap:6px}.student-lesson-actions{justify-content:flex-end}.student-lesson-actions .button{min-height:36px;padding:7px 10px}.text-success{color:#087443!important;font-weight:700}@media (max-width:980px){.student-lesson-row{grid-template-columns:110px minmax(0,1fr)}.student-lesson-actions,.student-lesson-statuses{justify-content:flex-start}}@media (max-width:620px){.student-lesson-row,.student-lesson-summary{grid-template-columns:1fr}}.payment-summary-grid{display:grid;grid-gap:1px;gap:1px;grid-template-columns:repeat(3,minmax(0,1fr));overflow:hidden}.payment-summary-grid div{background:#f2f4f7;display:grid;grid-gap:5px;gap:5px;padding:14px}.payment-summary-grid span{color:var(--muted);font-size:13px}.payment-summary-grid strong{font-size:22px}.parent-order-row,.payment-order{border:1px solid var(--line);border-radius:8px;overflow:hidden}.parent-order-summary,.payment-order-head{background:#f8fafc;padding:13px 15px}.parent-order-summary>span,.payment-order-head>span{display:grid;grid-gap:5px;gap:5px}.parent-order-summary>span:last-child,.payment-order-head>span:last-child{justify-items:end}.parent-order-summary small,.payment-order-head small{color:var(--muted)}.order-item-list,.payment-transaction-list{display:grid;padding:10px 15px}.order-item-list>div,.payment-transaction-list>div{align-items:center;display:flex;gap:16px;justify-content:space-between;padding:7px 0}.payment-transaction-list{border-top:1px solid var(--line)}.payment-transaction-list>div>span{display:grid;grid-gap:3px;gap:3px}.payment-transaction-list small{color:var(--muted)}.payment-order-footer{align-items:center;border-top:1px solid var(--line);color:var(--muted);display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;padding:11px 15px}.payment-order-footer strong{color:var(--foreground)}.payment-order-footer a:not(.button){color:var(--brand)}.payment-reversed{color:var(--muted)}.payment-reversed>strong{text-decoration:line-through}.order-detail-page{display:grid;grid-gap:18px;gap:18px}.order-detail-summary{display:grid;grid-gap:12px;gap:12px;grid-template-columns:repeat(4,minmax(0,1fr))}.order-detail-meta>div,.order-detail-summary>div{background:#fff;border:1px solid var(--line);border-radius:8px;display:grid;grid-gap:6px;gap:6px;padding:16px}.order-detail-list small,.order-detail-meta span,.order-detail-summary span{color:var(--muted);font-size:13px}.order-detail-summary strong{font-size:23px}.order-detail-grid{display:grid;grid-gap:18px;gap:18px;grid-template-columns:repeat(2,minmax(0,1fr))}.order-detail-list{padding:8px 18px}.order-detail-list>div{padding:12px 0}.order-detail-list span{display:grid;grid-gap:4px;gap:4px}.order-detail-meta{display:grid;grid-gap:12px;gap:12px;grid-template-columns:minmax(160px,.7fr) minmax(160px,.7fr) minmax(240px,1.6fr)}.order-detail-meta strong{white-space:pre-line}.order-action-panel{align-items:start;background:#fff;border:1px solid #fecdca;border-radius:8px;display:grid;grid-gap:16px;gap:16px;grid-template-columns:minmax(0,1fr) auto;padding:18px}.order-action-panel h2{font-size:19px;margin-bottom:4px}.order-action-confirm,.order-action-panel .workspace-notice{grid-column:1/-1}.order-action-confirm{display:grid;grid-gap:12px;gap:12px}.notice-warning{background:#fff4e5;border:1px solid #fedf89;border-radius:8px;color:#93370d;padding:12px}.order-action-note{background:#f8fafc;border:1px solid var(--line);border-radius:8px;color:var(--muted);padding:16px}.receipt-page{background:#eef2f6;min-height:100vh;padding:28px 18px 60px}.receipt-toolbar{display:flex;gap:10px;justify-content:flex-end;margin:0 auto 14px;max-width:820px}.receipt-document{background:#fff;border:1px solid #d0d5dd;box-shadow:0 16px 50px rgba(16,24,40,.1);margin:0 auto;max-width:820px;min-height:1080px;padding:48px;position:relative}.receipt-document.is-voided{color:#475467}.receipt-void-stamp{border:4px solid #b42318;color:#b42318;font-size:34px;font-weight:900;left:50%;opacity:.72;padding:10px 24px;position:absolute;top:130px;transform:translateX(-50%) rotate(-9deg)}.receipt-header{align-items:flex-start;border-bottom:2px solid #101828;display:flex;gap:24px;justify-content:space-between;padding-bottom:24px}.receipt-header h1{font-size:29px;margin:4px 0 8px}.receipt-header p{color:var(--muted);margin:3px 0}.receipt-number{display:grid;grid-gap:7px;gap:7px;justify-items:end;text-align:right}.receipt-number span,.receipt-party span,.receipt-totals span{color:var(--muted);font-size:13px}.receipt-number strong{font-size:18px}.receipt-party{display:grid;grid-gap:12px;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr));padding:24px 0}.receipt-party>div{display:grid;grid-gap:5px;gap:5px}.receipt-table{border-collapse:collapse;width:100%}.receipt-table td,.receipt-table th{border-bottom:1px solid var(--line);padding:12px 10px;text-align:left}.receipt-table td:nth-child(n+2),.receipt-table th:nth-child(n+2){text-align:right}.receipt-totals{display:grid;grid-gap:8px;gap:8px;margin-left:auto;padding:22px 0;width:min(100%,320px)}.receipt-totals>div{align-items:center;display:flex;justify-content:space-between}.receipt-totals>div:first-child{border-top:2px solid #101828;padding-top:12px}.receipt-payments{border-top:1px solid var(--line);padding-top:20px}.receipt-payments h2{font-size:17px}.receipt-payments>div{align-items:center;display:flex;justify-content:space-between;padding:8px 0}.receipt-payments span{display:grid;grid-gap:3px;gap:3px}.receipt-payments span:last-child{justify-items:end}.receipt-payments small{color:var(--muted)}.receipt-void-reason{background:#fef3f2;border:1px solid #fecdca;color:#912018;display:grid;grid-gap:6px;gap:6px;margin-top:20px;padding:14px}.receipt-footer{border-top:1px solid var(--line);color:var(--muted);margin-top:60px;padding-top:18px;text-align:center}.receipt-footer p{margin:4px 0}.text-warning{color:#b54708!important}.empty-state{color:var(--muted);padding:24px;text-align:center}.payment-method-list{display:grid}.parent-back-link{color:var(--brand);font-size:14px;text-align:center}.parent-login-page{background:#eef4f1}.parent-portal{background:#f5f7f6;min-height:100vh}.parent-portal-header{align-items:center;background:#fff;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;padding:14px max(24px,calc((100vw - 1120px) / 2))}.parent-portal-header>div{align-items:center;display:flex;gap:14px}.parent-portal-header span{color:var(--muted)}.parent-portal-main{display:grid;grid-gap:20px;gap:20px;margin:0 auto;max-width:1120px;padding:32px 24px 60px}.parent-welcome{align-items:flex-start;display:flex;gap:20px;justify-content:space-between}.parent-welcome h1{font-size:36px;margin-bottom:10px}.parent-dashboard-actions{align-items:flex-start;display:flex;gap:10px}.parent-add-student{position:relative}.parent-add-student-form{box-shadow:0 18px 45px rgba(16,24,40,.14);padding:18px;position:absolute;right:0;top:48px;width:min(620px,calc(100vw - 32px));z-index:30}.parent-add-student-form,.parent-student-section{background:#fff;border:1px solid var(--line);border-radius:8px}.parent-student-section{overflow:hidden}.parent-student-heading{border-bottom:1px solid var(--line);padding:18px 20px}.parent-student-heading>div:last-child{display:grid;grid-gap:5px;gap:5px;justify-items:end}.parent-student-heading span{color:var(--muted)}.parent-student-heading>div:last-child strong{font-size:22px}.parent-order-list{display:grid;grid-gap:12px;gap:12px;padding:16px}.parent-enrolment-list,.student-enrolment-list{display:grid;grid-gap:8px;gap:8px}.parent-enrolment-list>div,.student-enrolment-list>div{align-items:center;background:#f8fafc;border:1px solid var(--line);border-radius:8px;display:flex;gap:16px;justify-content:space-between;padding:12px 14px}.parent-enrolment-list span,.student-enrolment-list span{display:grid;grid-gap:3px;gap:3px}.parent-enrolment-list span:last-child,.student-enrolment-list span:last-child{justify-items:end}.parent-enrolment-list small,.student-enrolment-list small{color:var(--muted)}.parent-enrolment-list{border-bottom:1px solid var(--line);padding:16px 20px}.parent-enrolment-list h3{margin:0 0 4px}.lesson-generator{align-items:flex-end;background:#fff;border:1px solid var(--line);border-radius:8px;display:flex;flex-wrap:wrap;gap:12px;margin-bottom:14px;padding:14px}.lesson-generator .field{min-width:180px}.timetable-db-layout{align-items:start;display:grid;grid-gap:16px;gap:16px;grid-template-columns:minmax(0,1.5fr) minmax(340px,.62fr)}.timetable-week{background:#fff;border:1px solid var(--line);border-radius:8px;display:grid;grid-template-columns:repeat(7,minmax(170px,1fr));overflow-x:auto}.timetable-day-column{min-height:520px}.timetable-day-column+.timetable-day-column{border-left:1px solid var(--line)}.timetable-day-column>header{align-items:center;background:#f8fafc;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;padding:11px}.timetable-day-column>header span{color:var(--muted);font-size:13px}.timetable-day-column>div{display:grid;grid-gap:8px;gap:8px;padding:8px}.db-lesson-card{background:#fff;border:1px solid var(--line);border-left:5px solid var(--brand);border-radius:8px;cursor:pointer;display:grid;grid-gap:5px;gap:5px;min-height:120px;padding:10px;text-align:left;width:100%}.db-lesson-card.active,.db-lesson-card:hover{border-color:var(--brand);box-shadow:0 0 0 2px rgba(21,112,239,.1)}.db-lesson-card.cancelled{background:#fef3f2;opacity:.72}.db-lesson-card small,.db-lesson-card>span{color:var(--muted);font-size:12px}.timetable-empty{color:var(--muted);font-size:13px;padding:18px 4px;text-align:center}.timetable-roster-panel{background:#fff;border:1px solid var(--line);border-radius:8px;overflow:hidden;position:-webkit-sticky;position:sticky;top:20px}.roster-panel-head{align-items:flex-start;border-bottom:1px solid var(--line);display:flex;gap:14px;justify-content:space-between;padding:18px}.roster-panel-head h2{font-size:22px;margin-bottom:7px}.roster-panel-head span{color:var(--muted)}.roster-actions{border-bottom:1px solid var(--line);display:flex;flex-wrap:wrap;gap:8px;padding:12px 18px}.roster-actions .button{min-height:38px;padding:8px 11px}.db-roster-list{display:grid}.db-roster-row{align-items:center;display:grid;grid-gap:12px;gap:12px;grid-template-columns:minmax(0,1fr) minmax(130px,.55fr);padding:12px 18px}.db-roster-row+.db-roster-row{border-top:1px solid var(--line)}.db-roster-row>span{display:grid;grid-gap:4px;gap:4px}.db-roster-row small{color:var(--muted)}.db-roster-row select{min-height:38px}.schedule-price-choice-list{display:grid;grid-gap:7px;gap:7px;grid-template-columns:repeat(2,minmax(0,1fr))}.schedule-price-choice-list label{align-items:center;border:1px solid var(--line);border-radius:8px;cursor:pointer;display:flex;gap:9px;padding:9px}.schedule-price-choice-list label.is-selected{background:#eef8f3;border-color:#0f7a57}.schedule-price-choice-list span{display:grid;grid-gap:2px;gap:2px;min-width:0}.schedule-price-choice-list small{color:var(--muted)}.receipt-settings-layout{align-items:start;display:grid;grid-gap:18px;gap:18px;grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr)}.receipt-settings-preview{background:#fff;border:1px solid var(--line);border-radius:8px;display:grid;grid-gap:10px;gap:10px;padding:24px;position:-webkit-sticky;position:sticky;top:18px}.receipt-logo,.receipt-settings-preview img{height:auto;max-height:78px;max-width:180px;object-fit:contain;object-position:left center}.receipt-settings-preview h2{font-size:21px;margin:0}.receipt-settings-preview li,.receipt-settings-preview p{color:var(--muted);font-size:13px;margin:0}.receipt-settings-preview ol{display:grid;grid-gap:6px;gap:6px;margin:0;padding-left:20px}.receipt-logo{display:block;margin-bottom:12px}.receipt-terms{border-top:1px solid var(--line);margin-top:24px;padding-top:18px}.receipt-terms h2{font-size:16px;margin-bottom:10px}.receipt-terms ol{color:var(--muted);display:grid;font-size:12px;grid-gap:5px;gap:5px;margin:0;padding-left:20px}.timetable-view-switcher{background:#eef2f6;border:1px solid var(--line);border-radius:8px;display:inline-grid;grid-template-columns:repeat(3,42px);padding:3px}.timetable-view-switcher a{border-radius:6px;color:#475467;font-size:13px;font-weight:800;padding:8px 0;text-align:center;text-decoration:none}.timetable-view-switcher a.active{background:#fff;color:var(--brand-dark);box-shadow:0 1px 4px rgba(16,24,40,.12)}.timetable-day{grid-template-columns:minmax(0,1fr)}.timetable-month{grid-template-columns:repeat(7,minmax(125px,1fr))}.timetable-month-weekdays{background:#f2f4f7;display:grid;grid-column:1/-1;grid-template-columns:repeat(7,minmax(125px,1fr))}.timetable-month-weekdays strong{color:#475467;font-size:12px;padding:9px;text-align:center}.timetable-month .timetable-day-column{border-bottom:1px solid var(--line);min-height:190px}.timetable-month .db-lesson-card{min-height:88px;padding:8px}.timetable-month .db-lesson-card small:last-child{display:none}.db-roster-row.is-unpaid{background:#fff5f3;box-shadow:inset 4px 0 0 #d92d20}.db-roster-row.is-unpaid>span>strong{color:#b42318}.lesson-payment-label{font-size:12px;font-style:normal;font-weight:800}.lesson-payment-label.paid{color:#087443}.lesson-payment-label.unpaid{color:#b42318}.roster-row-controls{align-items:center;display:flex;flex-wrap:wrap;gap:6px;justify-content:flex-end}.roster-row-controls select{flex:1 1 130px}@media (max-width:760px){.receipt-settings-layout,.schedule-price-choice-list{grid-template-columns:1fr}.receipt-settings-preview{position:static}.receipt-toolbar,.roster-row-controls{flex-wrap:wrap}.db-roster-row{align-items:stretch;grid-template-columns:1fr}}.closure-layout{align-items:start;display:grid;grid-gap:16px;gap:16px;grid-template-columns:minmax(300px,.72fr) minmax(520px,1.28fr)}.closure-list{background:#fff;border:1px solid var(--line);border-radius:8px;display:grid;overflow:hidden}.closure-row{align-items:center;background:#fff;border:0;cursor:pointer;display:flex;gap:14px;justify-content:space-between;min-height:66px;padding:12px 14px;text-align:left}.closure-row+.closure-row{border-top:1px solid var(--line)}.closure-row.active{background:#fff8ed;box-shadow:inset 4px 0 0 var(--warning)}.closure-row>span:first-child{display:grid;grid-gap:4px;gap:4px}.closure-row small{color:var(--muted)}.closure-day-banner{background:#fff4e5;border:1px solid #fedf89;border-radius:8px;color:#93370d;display:grid;grid-gap:4px;gap:4px;padding:10px}.closure-day-banner span{font-size:12px}.reports-page{display:grid;grid-gap:18px;gap:18px}.report-filters{align-items:flex-end;background:#fff;border:1px solid var(--line);border-radius:8px;display:grid;grid-gap:12px;gap:12px;grid-template-columns:minmax(190px,1fr) repeat(2,minmax(150px,.7fr)) auto;padding:16px}.report-filters .field{margin:0}.report-metrics{display:grid;grid-gap:12px;gap:12px;grid-template-columns:repeat(5,minmax(0,1fr))}.report-metrics>div{background:#fff;border:1px solid var(--line);border-radius:8px;display:grid;grid-gap:6px;gap:6px;min-width:0;padding:16px}.course-income-list small,.report-breakdown-list small,.report-metrics small,.report-metrics span,.report-section-head>span,.table-meta{color:var(--muted)}.report-metrics strong{font-size:25px;line-height:1.15}.report-grid{display:grid;grid-gap:18px;gap:18px;grid-template-columns:repeat(2,minmax(0,1fr))}.report-section{background:#fff;border:1px solid var(--line);border-radius:8px;min-width:0;overflow:hidden}.report-section-head{align-items:flex-start;border-bottom:1px solid var(--line);display:flex;gap:16px;justify-content:space-between;padding:16px 18px}.report-section-head h2{font-size:19px;margin:2px 0 0}.report-section-head>span{font-size:12px;text-align:right}.daily-income-chart{display:grid;grid-gap:10px;gap:10px;max-height:390px;overflow:auto;padding:18px}.daily-income-chart>div{align-items:center;display:grid;grid-gap:10px;gap:10px;grid-template-columns:46px minmax(80px,1fr) 84px}.course-income-list>div>div,.daily-income-chart>div>div{background:#eaecf0;border-radius:3px;height:8px;overflow:hidden}.course-income-list i,.daily-income-chart i{background:#1570ef;display:block;height:100%}.course-income-list>div>strong,.daily-income-chart strong{font-size:13px;text-align:right}.course-income-list,.report-breakdown-list{display:grid;padding:0 18px}.course-income-list>div,.report-breakdown-list>div{align-items:center;display:grid;grid-gap:12px;gap:12px;min-height:66px}.report-breakdown-list>div{grid-template-columns:minmax(0,1fr) auto}.course-income-list>div{grid-template-columns:minmax(180px,.8fr) minmax(100px,1fr) 90px}.course-income-list>div+div,.report-breakdown-list>div+div{border-top:1px solid var(--line)}.course-income-list span,.report-breakdown-list span,.table-meta{display:grid;grid-gap:4px;gap:4px}.report-table-wrap{overflow:auto}.report-table-wrap .table{border:0;min-width:560px}.report-table-wrap .money{font-weight:700;text-align:right;white-space:nowrap}.table-meta{font-size:11px;margin-top:3px}.text-warning{color:#b54708}.public-site{--public-green:#0b4f3c;--public-green-dark:#073b2d;--public-blue:#1457a6;--public-coral:#e85d3f;--public-ink:#14221d;--public-soft:#eef5f1;min-height:100vh}.public-header{align-items:center;background:rgba(255,255,255,.96);border-bottom:1px solid #dde6e1;display:grid;grid-gap:24px;grid-template-columns:auto minmax(0,1fr) auto;min-height:78px;padding:10px max(24px,calc((100vw - 1200px) / 2));z-index:30}.public-brand{display:grid;flex:0 0 auto;grid-gap:2px;gap:2px;line-height:1.1}.public-brand span{color:var(--public-blue);font-size:12px;font-weight:800;text-transform:uppercase}.public-brand strong{color:var(--public-green);font-size:18px}.public-nav{display:flex;justify-content:center}.public-nav a{color:#43534c;padding:10px 0}.course-card-footer>a,.public-filter-clear,.public-nav a:hover,.public-section-heading>a,.resource-row>a{color:var(--public-blue)}.public-login{min-height:40px;padding:8px 14px}.public-kicker{font-size:12px;font-weight:800;margin:0 0 10px;text-transform:uppercase}.public-hero{align-items:center;display:flex;min-height:min(680px,calc(100vh - 78px));overflow:hidden;position:relative}.public-hero-image{object-fit:cover;object-position:center 26%;z-index:0}.public-hero-overlay{background:rgba(7,34,27,.76);inset:0;position:absolute;z-index:1}.public-hero-content{color:#fff;margin:0 auto;max-width:1200px;padding:64px 32px;position:relative;width:100%;z-index:2}.public-hero-content .public-kicker{color:#8ee6c0}.public-hero-content h1{font-size:clamp(46px,7vw,82px);line-height:1.03;margin:0 0 22px;max-width:820px}.public-hero-content>p:not(.public-kicker){font-size:20px;line-height:1.7;max-width:650px}.public-hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}.public-button-primary{color:#fff}.public-button-primary:hover{background:#cc452b;border-color:#cc452b}.public-hero-facts{border-top:1px solid rgba(255,255,255,.35);display:flex;flex-wrap:wrap;gap:22px 42px;margin-top:48px;max-width:760px;padding-top:18px}.public-hero-facts span{display:grid;font-size:13px;grid-gap:3px;gap:3px}.public-hero-facts strong{font-size:17px}.public-branch-band,.public-intro-band{align-items:center;display:grid;grid-gap:48px;gap:48px;grid-template-columns:minmax(0,1fr) minmax(320px,.9fr);margin:0 auto;max-width:1200px;padding:68px 32px}.public-branch-band h2,.public-intro-band h2{font-size:34px;line-height:1.2;margin:0}.public-branch-band p,.public-intro-band>p{color:#53635c;font-size:17px;line-height:1.8}.public-section{margin:0 auto;max-width:1200px;padding:72px 32px}.public-section-heading{align-items:flex-end;display:flex;gap:24px;justify-content:space-between;margin-bottom:28px}.public-section-heading h2{font-size:34px;margin:0}.public-section-heading>a{font-size:14px;font-weight:800}.public-course-grid{display:grid;grid-gap:20px;gap:20px;grid-template-columns:repeat(3,minmax(0,1fr))}.public-course-card{background:#fff;border:1px solid #dce5e0;border-radius:6px;display:grid;min-width:0;overflow:hidden}.course-card-media{aspect-ratio:4/3;background:#eef2f0;display:block;overflow:hidden;position:relative}.course-card-media img{object-fit:cover;object-position:center 12%;transition:transform .18s ease}.public-course-card:hover .course-card-media img{transform:scale(1.025)}.course-card-body{display:grid;grid-template-rows:auto auto minmax(72px,auto) auto auto;padding:18px}.course-card-facts,.course-card-meta{display:flex;flex-wrap:wrap;gap:6px}.course-card-meta span{font-size:11px;font-weight:800;padding:5px 7px}.course-card-body h3{font-size:21px;margin:15px 0 8px}.course-card-body>p{color:#5d6b65;font-size:14px;line-height:1.65}.course-card-facts{border-top:1px solid #edf1ef;color:#66756e;font-size:11px;padding-top:12px}.course-card-facts span+span:before{content:"·";margin-right:6px}.course-card-footer{align-items:flex-end;display:flex;gap:16px;justify-content:space-between;margin-top:16px}.course-card-footer>span{color:#5f6d67;font-size:12px}.course-card-footer>span strong{color:var(--public-ink);font-size:18px}.course-card-footer>a{font-size:13px;font-weight:800;white-space:nowrap}.public-method-band{color:#fff;padding:72px max(32px,calc((100vw - 1136px) / 2))}.public-method-band .public-kicker{color:#8ee6c0}.public-method-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}.public-method-grid article{border-left:1px solid rgba(255,255,255,.25);padding:8px 24px 8px 20px}.public-method-grid span{color:#8ee6c0;font-size:13px;font-weight:800}.public-method-grid h3{font-size:21px;margin:22px 0 10px}.public-method-grid p{color:#d5e6df;font-size:14px;line-height:1.7}.public-branch-band{border-bottom:1px solid #dce5e0;border-top:1px solid #dce5e0}.public-branch-actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end}.public-footer{background:#102039;color:#d9e2ee;display:grid;grid-gap:36px;gap:36px;grid-template-columns:1.6fr repeat(3,.7fr);padding:56px max(32px,calc((100vw - 1136px) / 2)) 28px}.public-brand-light span{color:#89bfff}.public-brand-light strong{color:#fff}.public-footer>div{align-content:start;display:grid;grid-gap:10px;gap:10px}.public-footer>div>strong{color:#fff;margin-bottom:4px}.public-footer a,.public-footer p{color:#b7c4d4;font-size:13px;line-height:1.6}.public-copyright{border-top:1px solid #33435a;grid-column:1/-1;margin:10px 0 0;padding-top:22px}.branch-detail-header,.public-page-header{background:var(--public-soft);padding:72px max(32px,calc((100vw - 1136px) / 2))}.branch-detail-header h1,.public-page-header h1{font-size:52px;margin-bottom:16px;max-width:820px}.branch-detail-header>p:last-of-type,.public-page-header>p:last-child{color:#56665f;font-size:18px;line-height:1.7;max-width:720px}.public-catalog-layout{margin:0 auto;max-width:1200px;padding:38px 32px 72px}.public-course-filters{align-items:flex-end;border-bottom:1px solid #dce5e0;display:grid;grid-gap:12px;gap:12px;grid-template-columns:minmax(220px,1.4fr) repeat(2,minmax(170px,.8fr)) auto auto;padding-bottom:22px}.public-course-filters .field{margin:0}.public-filter-clear{align-self:center;font-size:13px;font-weight:800;padding:10px}.public-results-heading{display:flex;justify-content:space-between;padding:24px 0 18px}.public-results-heading span{color:#66756e;font-size:13px}.public-empty{border-bottom:1px solid #dce5e0;border-top:1px solid #dce5e0;padding:54px 0;text-align:center}.public-empty p{color:#66756e}.course-detail-hero{align-items:center;display:grid;grid-gap:46px;gap:46px;grid-template-columns:minmax(0,1.05fr) minmax(340px,.75fr);margin:0 auto;max-width:1200px;min-height:650px;padding:54px 32px}.course-detail-copy h1{font-size:56px;margin-bottom:18px}.course-detail-copy>p:not(.public-kicker):not(.course-detail-starting){color:#56665f;font-size:19px;line-height:1.75}.public-breadcrumb{color:#6a7872;display:flex;flex-wrap:wrap;font-size:12px;gap:8px;margin-bottom:30px}.course-detail-tags{display:flex;flex-wrap:wrap;gap:7px;margin:22px 0 0}.course-detail-tags span{border:1px solid #cddbd4;color:var(--public-green);font-size:12px;font-weight:700;padding:7px 9px}.course-detail-starting{margin-top:22px}.course-detail-starting strong{color:var(--public-coral);font-size:23px}.course-detail-poster{aspect-ratio:4/5;max-height:580px;overflow:hidden;position:relative}.course-detail-poster img{object-fit:cover;object-position:center top}.course-detail-content{align-items:start;border-top:1px solid #dce5e0;display:grid;grid-gap:58px;gap:58px;grid-template-columns:minmax(0,1.35fr) minmax(310px,.65fr);margin:0 auto;max-width:1200px;padding:72px 32px}.course-detail-main{display:grid;grid-gap:56px;gap:56px}.course-detail-main h2,.course-detail-sidebar h2{font-size:29px}.course-detail-main section>p:last-child{color:#53635c;font-size:17px;line-height:1.85}.course-outcomes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.course-outcomes>div{align-items:start;border-top:1px solid #dce5e0;display:grid;grid-gap:12px;gap:12px;grid-template-columns:auto minmax(0,1fr);padding:16px 12px 16px 0}.course-outcomes span{color:var(--public-blue);font-size:12px}.course-outcomes strong{line-height:1.5}.course-detail-sidebar{border-left:1px solid #dce5e0;display:grid;grid-gap:34px;gap:34px;padding-left:30px;position:-webkit-sticky;position:sticky;top:100px}.public-class-list,.public-price-list{display:grid}.public-class-list>div,.public-price-list>div{align-items:center;border-top:1px solid #dce5e0;display:flex;gap:16px;justify-content:space-between;padding:13px 0}.public-class-list>div,.public-price-list span{display:grid;grid-gap:4px;gap:4px}.public-price-list>div>strong{color:var(--public-green);white-space:nowrap}.public-class-list span,.public-price-list small{color:#697770;font-size:11px}.course-teacher-list{display:grid}.course-teacher-list a{border-top:1px solid #dce5e0;display:grid;grid-gap:4px;gap:4px;padding:13px 0}.course-teacher-list a:hover strong{color:var(--public-blue)}.course-teacher-list span{color:#697770;font-size:12px}.trial-note{background:var(--public-soft);color:var(--public-green);font-size:13px;line-height:1.6;padding:12px}.course-sticky-cta{justify-content:center;width:100%}.related-courses{border-top:1px solid #dce5e0}.branch-directory,.contact-directory{display:grid;grid-gap:0;gap:0}.public-branch-row{align-items:center;border-top:1px solid #dce5e0;display:grid;grid-gap:28px;gap:28px;grid-template-columns:minmax(260px,1fr) minmax(260px,1fr) auto;padding:32px 0}.public-branch-row:last-child{border-bottom:1px solid #dce5e0}.public-branch-row h2{font-size:27px;margin-bottom:8px}.public-branch-row p,.public-branch-row span{color:#5d6b65}.branch-course-names{display:flex;flex-wrap:wrap;gap:6px}.branch-course-names span{background:var(--public-soft);font-size:12px;padding:6px 8px}.contact-branch{border-bottom:1px solid #dce5e0;display:grid;grid-gap:32px;gap:32px;grid-template-columns:minmax(230px,.8fr) minmax(300px,1.2fr) auto;padding:34px 0}.contact-branch dl{margin:0}.contact-branch dl>div{display:grid;grid-gap:4px;gap:4px;grid-template-columns:120px minmax(0,1fr);padding:7px 0}.contact-branch dt{color:#6b7872;font-size:13px}.contact-branch dd{margin:0}.resource-list{padding-top:36px}.resource-row{align-items:start;border-bottom:1px solid #dce5e0;display:grid;grid-gap:22px;gap:22px;grid-template-columns:40px minmax(0,1fr) auto;padding:28px 0}.resource-article>section>span,.resource-row>span{color:var(--public-blue);font-size:13px;font-weight:800}.resource-row h2{font-size:24px;margin-bottom:8px}.resource-row p:not(.public-kicker){color:#617069;margin-bottom:0}.resource-row>a{font-size:13px;font-weight:800;padding-top:24px}.resource-article{margin:0 auto;max-width:860px;padding:68px 32px 86px}.resource-article>h1{font-size:52px}.resource-lead{color:#56665f;font-size:20px;line-height:1.75;margin-bottom:50px}.resource-article>section{border-top:1px solid #dce5e0;display:grid;grid-gap:18px;gap:18px;grid-template-columns:42px minmax(0,1fr);padding:26px 0}.resource-article>section h2{font-size:24px}.resource-article>section p{color:#596961;line-height:1.8}.resource-cta{align-items:center;background:var(--public-soft);display:flex;gap:24px;justify-content:space-between;margin-top:42px;padding:26px}.resource-cta h2{font-size:22px;margin:0}.frontend-content-editor{background:#f8fafc;border:1px solid var(--line);border-radius:8px;display:grid;grid-gap:14px;gap:14px;padding:16px}.teacher-management-layout{align-items:start;display:grid;grid-gap:16px;gap:16px;grid-template-columns:minmax(280px,.68fr) minmax(560px,1.32fr)}.teacher-admin-list{background:#fff;border:1px solid var(--line);border-radius:8px;display:grid;overflow:hidden}.teacher-admin-row{align-items:center;background:#fff;border:0;cursor:pointer;display:grid;grid-gap:12px;gap:12px;grid-template-columns:48px minmax(0,1fr) auto;min-height:72px;padding:11px 12px;text-align:left}.teacher-admin-row+.teacher-admin-row{border-top:1px solid var(--line)}.teacher-admin-row.active{background:#f5f8ff;box-shadow:inset 4px 0 0 var(--brand)}.teacher-admin-initial,.teacher-admin-preview,.teacher-admin-row img{aspect-ratio:1;border-radius:8px;object-fit:cover}.teacher-admin-initial,.teacher-admin-row img{height:48px;width:48px}.teacher-admin-initial{align-items:center;background:#eaf2ff;color:var(--brand);display:flex;font-weight:800;justify-content:center}.teacher-admin-row>span:nth-child(2){display:grid;grid-gap:4px;gap:4px;min-width:0}.teacher-admin-row small{color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.teacher-editor-heading{align-items:center;display:flex;gap:18px;justify-content:space-between}.teacher-admin-preview{border:1px solid var(--line);height:88px;width:88px}.teacher-course-choices{border:1px solid var(--line);border-radius:8px;display:grid;max-height:300px;overflow-y:auto}.teacher-course-choices label{align-items:center;cursor:pointer;display:flex;gap:10px;padding:10px 12px}.teacher-course-choices label+label{border-top:1px solid var(--line)}.teacher-course-choices label>span{display:grid;grid-gap:3px;gap:3px}.teacher-course-choices small{color:var(--muted)}.legacy-archive-page{min-width:0}.legacy-metric-grid{display:grid;grid-gap:12px;gap:12px;grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:18px}.legacy-metric-grid>div{background:#fff;border:1px solid var(--line);border-radius:8px;display:grid;grid-gap:5px;gap:5px;min-height:110px;padding:16px}.legacy-metric-grid>div.warning{background:#fffaeb;border-color:#fedf89}.legacy-metric-grid small,.legacy-metric-grid span{color:var(--muted);font-size:12px}.legacy-metric-grid strong{font-size:30px}.legacy-type-strip{display:flex;gap:8px;margin-bottom:18px;overflow-x:auto;padding-bottom:4px}.legacy-type-strip button{background:#fff;border:1px solid var(--line);border-radius:8px;cursor:pointer;flex:0 0 auto;min-height:38px;padding:8px 11px}.legacy-type-strip button.active{background:#eaf2ff;border-color:var(--brand);color:var(--brand-dark)}.legacy-archive-toolbar{align-items:flex-end;display:flex;gap:18px;justify-content:space-between;margin-bottom:14px}.legacy-archive-toolbar .field{max-width:480px;width:100%}.legacy-archive-toolbar>span{color:var(--muted);font-size:13px;padding-bottom:11px}.legacy-archive-list{background:#fff;border:1px solid var(--line);border-radius:8px;overflow:hidden}.legacy-archive-list article{align-items:center;display:grid;grid-gap:14px;gap:14px;grid-template-columns:72px minmax(0,1fr) 118px auto;padding:13px 14px}.legacy-archive-list article+article{border-top:1px solid var(--line)}.legacy-type-label{color:var(--brand-dark);font-size:12px;font-weight:800}.legacy-archive-list h2{font-size:15px;margin:0 0 4px}.legacy-archive-list p{color:var(--muted);font-size:11px;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.legacy-row-status{display:grid;grid-gap:5px;gap:5px;justify-items:start}.legacy-row-status small{color:var(--muted);font-size:11px}.legacy-archive-list .button{min-height:36px;padding:7px 10px;white-space:nowrap}.legacy-failure-list{background:#fff;border:1px solid var(--line);border-radius:8px;margin-top:16px;padding:14px}.legacy-failure-list summary{cursor:pointer;font-weight:800}.legacy-failure-list div{display:grid;grid-gap:3px;gap:3px;padding:10px 0}.legacy-failure-list div+div{border-top:1px solid var(--line)}.legacy-failure-list small,.legacy-failure-list span{overflow-wrap:anywhere}.legacy-failure-list small{color:var(--muted)}.public-teacher-grid{display:grid;grid-gap:18px;gap:18px;grid-template-columns:repeat(4,minmax(0,1fr))}.public-teacher-card{border:1px solid #dce5e0;border-radius:6px;display:grid;grid-template-rows:auto 1fr;min-width:0;overflow:hidden}.teacher-card-photo{aspect-ratio:1;background:var(--public-soft);display:block;overflow:hidden;position:relative}.teacher-card-photo img{object-fit:cover;transition:transform .18s ease}.teacher-card-photo>span{align-items:center;color:var(--public-green);display:flex;font-size:54px;font-weight:800;height:100%;justify-content:center}.public-teacher-card:hover .teacher-card-photo img{transform:scale(1.025)}.teacher-card-copy{display:grid;grid-template-rows:auto auto auto 1fr auto;padding:17px}.teacher-card-subjects{display:flex;flex-wrap:wrap;gap:5px}.teacher-card-subjects span,.teacher-subject-list span{background:var(--public-soft);color:var(--public-green);font-size:11px;font-weight:800;padding:5px 7px}.teacher-card-copy h3{font-size:22px;margin:14px 0 3px}.teacher-card-copy>strong{font-size:13px}.teacher-card-copy>p{color:#5d6b65;font-size:13px;line-height:1.65;margin:14px 0 18px}.teacher-card-copy>a{color:var(--public-blue);font-size:13px;font-weight:800}.teacher-directory{padding-top:42px}.teacher-detail-hero{align-items:center;display:grid;grid-gap:56px;gap:56px;grid-template-columns:minmax(300px,.75fr) minmax(0,1.25fr);margin:0 auto;max-width:1100px;min-height:640px;padding:58px 32px}.teacher-detail-photo{aspect-ratio:1;background:var(--public-soft);overflow:hidden;position:relative}.teacher-detail-photo img{object-fit:cover}.teacher-detail-photo>span{align-items:center;color:var(--public-green);display:flex;font-size:82px;font-weight:800;height:100%;justify-content:center}.teacher-detail-copy h1{font-size:64px;margin-bottom:10px}.teacher-detail-copy>strong{color:var(--public-blue);display:block;font-size:20px;margin-bottom:22px}.teacher-detail-copy>p:last-child{color:#53635c;font-size:18px;line-height:1.85;max-width:650px}.teacher-detail-content{border-bottom:1px solid #dce5e0;border-top:1px solid #dce5e0;display:grid;grid-gap:64px;gap:64px;grid-template-columns:minmax(0,1.35fr) minmax(250px,.65fr);margin:0 auto;max-width:1100px;padding:64px 32px}.teacher-detail-content h2{font-size:30px}.teacher-detail-content aside{border-left:1px solid #dce5e0;padding-left:32px}.teacher-qualification-list{display:grid}.teacher-qualification-list>div{align-items:start;border-top:1px solid #dce5e0;display:grid;grid-gap:14px;gap:14px;grid-template-columns:32px minmax(0,1fr);padding:16px 0}.teacher-qualification-list span{color:var(--public-blue);font-size:12px;font-weight:800}.teacher-qualification-list strong{line-height:1.55}.teacher-subject-list{display:flex;flex-wrap:wrap;gap:8px}.teacher-current-courses{border-bottom:1px solid #dce5e0}.legacy-course-band{background:#f6f8f7;padding:68px max(32px,calc((100vw - 1136px) / 2))}.legacy-course-band .public-section-heading{align-items:start}.legacy-course-band .public-section-heading>p{color:#5d6b65;font-size:13px;line-height:1.6;max-width:360px}.legacy-course-grid{display:grid;grid-gap:18px;gap:18px;grid-template-columns:repeat(3,minmax(0,1fr))}.legacy-course-grid article{background:#fff;border:1px solid #dce5e0;border-radius:6px;overflow:hidden}.legacy-course-image{aspect-ratio:4/3;overflow:hidden;position:relative}.legacy-course-image img{object-fit:cover}.legacy-course-grid article>div:last-child{padding:16px}.legacy-course-grid span{color:var(--public-blue);font-size:11px;font-weight:800}.legacy-course-grid h3{font-size:18px;line-height:1.45;margin:9px 0}.legacy-course-grid p{color:#68766f;font-size:12px;margin-bottom:0}@media (max-width:1080px){.public-course-grid,.public-method-grid,.public-teacher-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.public-method-grid article:nth-child(n+3){margin-top:30px}.public-course-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.public-course-filters .button{justify-content:center}.teacher-management-layout{grid-template-columns:minmax(250px,.7fr) minmax(480px,1.3fr)}.legacy-metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:860px){.topbar{align-items:flex-start;flex-direction:column;padding:16px 20px}.sidebar{align-items:center;display:flex;gap:6px;overflow-x:auto;padding:10px 12px}.sidebar .brand-mark{margin-right:8px}.sidebar .brand-mark,.sidebar a{flex:0 0 auto;white-space:nowrap}.sidebar a{margin:0}.sidebar-logout{flex:0 0 auto;margin:0 0 0 6px;padding-left:14px;padding-right:14px;width:auto}.public-header{display:grid;grid-gap:14px;gap:14px;grid-template-columns:minmax(0,1fr) auto;min-height:0;overflow:visible;padding:9px 14px}.public-brand{min-width:0}.public-brand strong{font-size:15px;white-space:nowrap}.public-nav{grid-column:1/-1;grid-row:2;gap:16px;justify-content:flex-start;overflow-x:auto;padding-bottom:3px;scrollbar-width:none;width:100%}.public-nav::-webkit-scrollbar{display:none}.public-login,.public-nav a{white-space:nowrap}.public-login{align-self:center;grid-column:2;grid-row:1;justify-self:end}.public-hero{min-height:620px}.public-hero-content{padding:52px 20px 36px}.public-hero-content h1{font-size:44px}.public-hero-content>p:not(.public-kicker){font-size:17px}.public-hero-facts{gap:18px 28px;margin-top:34px}.contact-branch,.course-detail-content,.course-detail-hero,.public-branch-band,.public-branch-row,.public-intro-band,.teacher-detail-content,.teacher-detail-hero{grid-template-columns:1fr}.course-detail-content,.public-branch-band,.public-catalog-layout,.public-intro-band,.public-section{padding-left:20px;padding-right:20px}.public-branch-band,.public-intro-band{gap:22px;padding-bottom:46px;padding-top:46px}.public-branch-band h2,.public-intro-band h2,.public-section-heading h2{font-size:29px}.legacy-course-grid,.public-course-grid,.public-teacher-grid{grid-template-columns:1fr}.teacher-detail-hero{gap:28px;min-height:0;padding:42px 20px}.teacher-detail-photo{max-width:430px;width:100%}.teacher-detail-copy h1{font-size:44px}.teacher-detail-content{gap:36px;padding:48px 20px}.teacher-detail-content aside{border-left:0;border-top:1px solid #dce5e0;padding-left:0;padding-top:30px}.legacy-course-band{padding:50px 20px}.legacy-course-band .public-section-heading{align-items:start;flex-direction:column}.legacy-archive-list article{align-items:start;grid-template-columns:68px minmax(0,1fr)}.legacy-archive-list .button,.legacy-row-status{grid-column:2}.public-method-band{padding:56px 20px}.public-method-grid{grid-template-columns:1fr}.public-method-grid article,.public-method-grid article:nth-child(n+3){border-left:0;border-top:1px solid rgba(255,255,255,.25);margin-top:0;padding:22px 0}.public-branch-actions{justify-content:flex-start}.public-footer{grid-template-columns:repeat(2,minmax(0,1fr));padding:46px 20px 24px}.public-footer>div:first-child{grid-column:1/-1}.branch-detail-header,.public-page-header{padding:54px 20px}.branch-detail-header h1,.public-page-header h1,.resource-article>h1{font-size:40px}.public-course-filters{grid-template-columns:1fr}.public-results-heading{gap:12px}.course-detail-hero{gap:30px;min-height:0;padding:44px 20px}.course-detail-copy h1{font-size:42px}.course-detail-poster{max-height:none}.course-detail-sidebar{border-left:0;border-top:1px solid #dce5e0;padding-left:0;padding-top:28px;position:static}.course-outcomes{grid-template-columns:1fr}.contact-branch,.public-branch-row{gap:20px}.contact-branch dl>div{grid-template-columns:100px minmax(0,1fr)}.resource-row{grid-template-columns:32px minmax(0,1fr)}.resource-row>a{grid-column:2;padding-top:0}.resource-article{padding:48px 20px 68px}.resource-cta{align-items:stretch;flex-direction:column}.addon-management-layout,.admin-grid,.admin-shell,.branch-management-layout,.card-grid,.catalog-layout,.closure-layout,.course-planning-layout,.course-planning-summary,.hero,.order-detail-grid,.order-detail-meta,.order-detail-summary,.payment-method-layout,.payment-summary-grid,.pos-addon-grid,.pos-workspace,.report-filters,.report-grid,.report-metrics,.scheduling-layout,.scheduling-summary,.shun-lee-pos-layout,.shun-lee-program-grid,.staff-management-layout,.student-choice-list,.student-crm-layout,.teacher-management-layout,.timetable-db-layout,.timetable-grid,.timetable-layout,.weekly-planning-board{grid-template-columns:1fr}.report-filters{align-items:stretch}.report-section-head{flex-direction:column}.report-section-head>span{text-align:left}.course-income-list>div{align-items:start;grid-template-columns:1fr auto;padding:12px 0}.course-income-list>div>div{grid-column:1/-1;grid-row:2}.order-action-panel{grid-template-columns:1fr}.receipt-page{padding:12px 0 32px}.receipt-toolbar{padding:0 12px}.receipt-document{border-left:0;border-right:0;box-shadow:none;min-height:0;padding:24px 18px}.receipt-header{flex-direction:column}.receipt-number{justify-items:start;text-align:left}.receipt-party{grid-template-columns:1fr}.receipt-table{font-size:12px}.receipt-table td,.receipt-table th{padding:9px 5px}.course-planning-summary div+div,.scheduling-summary div+div{border-left:0;border-top:1px solid var(--line)}.course-program-row{grid-template-columns:1fr}.catalog-course-row{grid-template-columns:minmax(0,1fr) auto}.course-price-preview{border-left:0;border-top:1px solid var(--line);padding-left:0;padding-top:14px}.class-editor-panel,.course-side-panel,.lesson-detail-panel,.shun-lee-pos-layout .pos-checkout{position:static}.lesson-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid-three,.form-grid-two,.transfer-summary{grid-template-columns:1fr}.transfer-summary div:nth-child(2n){border-left:0}.transfer-summary div+div{border-top:1px solid var(--line)}.modal-actions{justify-content:stretch}.modal-actions .button{justify-content:center}.lesson-card{grid-template-columns:1fr}.lesson-time{border-right:0;border-bottom:1px solid var(--line);grid-template-columns:auto auto;justify-content:start;padding-bottom:10px;padding-right:0}.hero{padding:44px 20px 24px}h1{font-size:38px}.admin-main,.section{padding:28px 20px}.student-directory-list{max-height:360px}.account-toggle-heading,.parent-enrolment-list>div,.parent-order-summary,.parent-portal-header,.parent-student-heading,.payment-order-head,.record-heading,.student-enrolment-list>div{align-items:stretch;flex-direction:column}.parent-enrolment-list span:last-child,.student-enrolment-list span:last-child{justify-items:start}.timetable-roster-panel{position:static}.lesson-generator{align-items:stretch;flex-direction:column}.lesson-generator .field{min-width:0}.record-heading-actions{align-items:stretch;justify-content:stretch}.record-heading-actions .button{justify-content:center}.segmented-control button{flex:1 1}.parent-order-summary>span:last-child,.parent-student-heading>div:last-child,.payment-order-head>span:last-child{justify-items:start}}@media (max-width:1180px) and (min-width:861px){.pos-workspace{grid-template-columns:280px minmax(360px,1fr)}.pos-checkout{grid-column:1/-1}.shun-lee-pos-layout{grid-template-columns:1fr}.shun-lee-pos-layout .pos-checkout{position:static}.scheduling-layout{grid-template-columns:1fr}.class-editor-panel{position:static}}@media print{@page{margin:12mm;size:A4}body{background:#fff}.no-print{display:none!important}.receipt-page{background:#fff;padding:0}.receipt-document{border:0;box-shadow:none;margin:0;max-width:none;min-height:0;padding:0}}.public-site{--public-green:#0f4c3a;--public-green-dark:#09382b;--public-blue:#176b96;--public-blue-soft:#dff1f7;--public-coral:#eb6848;--public-coral-dark:#cf4e31;--public-leaf:#55a46d;--public-yellow:#f2c84b;--public-ink:#14231d;--public-muted:#5d6c65;--public-soft:#edf6f1;color:var(--public-ink)}.public-header{border-bottom:1px solid #d9e5df;box-shadow:0 4px 18px rgba(20,35,29,.06);gap:30px;min-height:86px;padding-bottom:10px;padding-top:10px}.public-brand{align-items:center;display:flex;gap:11px;min-width:0}.public-brand-mark{background:#fff;display:block;flex:0 0 54px;height:54px;overflow:hidden;position:relative;width:54px}.public-brand-mark img{height:76px;left:-11px;max-width:none;position:absolute;top:-5px;width:76px}.public-brand-copy{display:grid;grid-gap:3px;gap:3px;min-width:0}.public-brand-copy strong{color:var(--public-green);font-size:18px;line-height:1.15;white-space:nowrap}.public-brand-copy small{color:var(--public-blue);font-size:10px;font-weight:800;line-height:1.2;text-transform:uppercase;white-space:nowrap}.public-nav{gap:30px}.public-nav a{color:#33483f;font-size:14px;padding:13px 0;position:relative}.public-nav a:after{background:var(--public-coral);bottom:5px;content:"";height:2px;left:0;position:absolute;transform:scaleX(0);transform-origin:left;transition:transform .16s ease;width:100%}.public-nav a:hover:after{transform:scaleX(1)}.public-login{background:var(--public-green);border-color:var(--public-green);color:#fff;min-height:42px;padding:9px 15px}.public-login:hover{background:var(--public-green-dark);border-color:var(--public-green-dark)}.public-kicker{color:var(--public-blue);letter-spacing:0}.public-hero{min-height:620px}.public-hero-image{object-position:center 42%}.public-hero-overlay{background:rgba(8,49,38,.76)}.public-hero-content{display:flex;justify-content:flex-end;padding-bottom:72px;padding-top:72px}.public-hero-copy{max-width:650px;width:55%}.public-hero-content h1{font-size:68px;line-height:1.08;margin-bottom:22px}.public-hero-content>p:not(.public-kicker),.public-hero-copy>p:not(.public-kicker){color:#e7f2ed;font-size:19px;line-height:1.75}.public-button-primary{background:var(--public-coral);border-color:var(--public-coral)}.public-button-primary:hover{background:var(--public-coral-dark);border-color:var(--public-coral-dark)}.public-button-light{background:#fff;border-color:#fff;color:var(--public-green)}.public-hero-facts{gap:18px 36px;margin-top:42px}.public-hero-facts strong{color:#fff;font-size:18px}.public-hero-facts span{color:#cce2d8}.home-pathways{border-bottom:1px solid #d9e5df;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:0 auto;max-width:1200px}.home-pathways>a{align-items:center;display:grid;grid-gap:16px;gap:16px;grid-template-columns:36px minmax(0,1fr);min-height:116px;padding:22px 28px}.home-pathways>a+a{border-left:1px solid #d9e5df}.home-pathways>a:hover{background:#f4faf7}.home-pathways>a>span{color:var(--public-coral);font-size:13px;font-weight:800}.home-pathways div{display:grid;grid-gap:5px;gap:5px}.home-pathways strong{color:var(--public-green);font-size:19px}.home-pathways small{color:var(--public-muted);font-size:12px;line-height:1.5}.home-intro-band{gap:70px;padding-bottom:82px;padding-top:82px}.home-intro-band h2{color:var(--public-green);font-size:38px;line-height:1.35}.home-intro-copy{display:grid;grid-gap:20px;gap:20px}.home-intro-copy>p{color:var(--public-muted);font-size:17px;line-height:1.85;margin:0}.home-intro-points{border-top:1px solid #d9e5df;display:flex;flex-wrap:wrap;gap:0 24px;padding-top:16px}.home-intro-points span{color:var(--public-green);font-size:13px;font-weight:800}.home-intro-points span:before{color:var(--public-leaf);content:"✓";margin-right:6px}.home-course-section{border-top:1px solid #e1e9e5}.home-course-categories{display:flex;flex-wrap:wrap;gap:8px;margin:-10px 0 28px}.home-course-categories a{padding:9px 12px;color:var(--public-green);background:#fff;border:1px solid #cadbd2;border-radius:6px;font-weight:800}.home-course-groups{display:grid;grid-gap:48px;gap:48px}.home-course-group-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:16px}.home-course-group-head h3{color:var(--public-green);font-size:26px}.home-course-group-head a{color:var(--public-blue);font-weight:800}.public-enrol-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,360px);grid-gap:24px;gap:24px;width:min(1180px,calc(100% - 40px));margin:36px auto 80px;align-items:start}.enrol-login-gate,.parent-payment-shell,.public-enrol-form,.public-enrol-summary{background:#fff;border:1px solid #d9e5df;border-radius:8px;box-shadow:0 10px 28px rgba(20,35,29,.07)}.public-enrol-form{display:grid;grid-gap:0;gap:0;padding:8px 24px}.enrol-step{display:grid;grid-template-columns:34px minmax(0,1fr);grid-gap:14px;gap:14px;padding:22px 0;border-bottom:1px solid #e1e9e5}.enrol-step>span{display:grid;place-items:center;width:30px;height:30px;color:#fff;background:var(--public-green);border-radius:50%;font-weight:900}.recorded-course-enrol-note{padding:16px;border:1px solid #b9d8ca;border-radius:6px;background:#edf8f3}.recorded-course-enrol-note strong{color:var(--public-green)}.recorded-course-enrol-note p{margin:6px 0 0;color:var(--public-muted)}.public-time-choice-list{display:grid;grid-gap:8px;gap:8px}.public-time-choice-list label{display:grid;grid-template-columns:20px minmax(0,1fr);grid-gap:10px;gap:10px;padding:12px;border:1px solid #d8e1dd;border-radius:6px;cursor:pointer}.public-time-choice-list label.is-selected{background:#edf8f3;border-color:var(--public-green)}.public-time-choice-list span{display:grid;grid-gap:4px;gap:4px}.public-time-choice-list small{color:var(--public-muted)}.public-enrol-summary{position:-webkit-sticky;position:sticky;top:90px;display:grid;grid-gap:16px;gap:16px;padding:24px}.enrol-login-gate h2,.public-enrol-summary h2{color:var(--public-green)}.public-enrol-summary dl{display:grid;grid-gap:0;gap:0}.public-enrol-summary dl div{display:flex;justify-content:space-between;gap:16px;padding:11px 0;border-bottom:1px solid #e1e9e5}.public-enrol-summary dd{margin:0;text-align:right;font-weight:800}.enrol-login-gate{width:min(720px,calc(100% - 40px));margin:40px auto 90px;padding:34px;text-align:center}.enrol-login-gate>div{display:flex;justify-content:center;gap:10px;margin-top:20px}.parent-payment-page{min-height:100vh;padding:24px;background:#f4f7f5}.parent-payment-page>header{display:flex;justify-content:space-between;width:min(760px,100%);margin:0 auto 20px}.parent-payment-shell{display:grid;grid-gap:22px;gap:22px;width:min(760px,100%);margin:auto;padding:30px}.parent-payment-history,.parent-payment-order,.parent-payment-review-list{display:grid;grid-gap:8px;gap:8px}.parent-payment-history>div,.parent-payment-order>div{display:flex;justify-content:space-between;gap:16px;padding:10px 0;border-bottom:1px solid var(--line)}.parent-payment-form{display:grid;grid-gap:14px;gap:14px}.parent-payment-pending{display:grid;grid-gap:10px;gap:10px;padding:16px;background:#fff8df;border:1px solid #ebce70;border-radius:6px}.parent-payment-review{margin-top:16px}.parent-payment-review-list article{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:12px;gap:12px;padding:14px 0;border-bottom:1px solid var(--line)}.parent-payment-review-list article>span{display:grid;grid-gap:3px;gap:3px}.parent-payment-review-list article>div{display:flex;gap:8px}.parent-payment-reject{grid-column:1/-1}@media (max-width:760px){.public-enrol-layout{grid-template-columns:1fr;width:min(100% - 24px,680px)}.public-enrol-summary{position:static}.parent-payment-review-list article{grid-template-columns:1fr}.parent-payment-review-list article>div{flex-wrap:wrap}}.public-section{padding-bottom:82px;padding-top:82px}.public-section-heading{margin-bottom:34px}.public-section-heading h2{color:var(--public-green);font-size:36px}.public-section-heading>div>p:last-child:not(.public-kicker){color:var(--public-muted);line-height:1.7;margin:12px 0 0;max-width:620px}.public-section-heading>a{border-bottom:2px solid var(--public-coral);color:var(--public-green);padding-bottom:5px}.public-course-grid{gap:22px}.public-course-card{border-color:#d9e5df;border-radius:8px;box-shadow:0 10px 28px rgba(20,35,29,.07);transition:box-shadow .18s ease,transform .18s ease}.public-course-card:hover{box-shadow:0 15px 34px rgba(20,35,29,.12);transform:translateY(-3px)}.course-card-media{background:var(--public-blue-soft)}.course-card-body{padding:20px}.course-card-meta span{background:var(--public-soft);color:var(--public-green);padding:6px 8px}.course-card-meta span:nth-child(2){background:#fff5e7;color:#8b5a00}.course-card-body h3{color:var(--public-ink);font-size:22px}.course-card-body>p{color:var(--public-muted)}.course-card-footer>span strong{color:var(--public-coral-dark)}.course-card-footer>a{color:var(--public-blue)}.home-teacher-band{background:var(--public-blue-soft);border-bottom:1px solid #cfe5ec;border-top:1px solid #cfe5ec}.home-teacher-band .public-section-heading h2{max-width:700px}.public-teacher-grid{gap:20px}.public-teacher-card{background:#fff;border-color:#cadde3;border-radius:8px;box-shadow:0 10px 26px rgba(23,107,150,.08)}.teacher-card-photo{background:#d7ebe3}.teacher-card-copy{padding:18px}.teacher-card-subjects span{background:var(--public-soft)}.teacher-card-copy h3{color:var(--public-green)}.teacher-card-copy>strong{color:var(--public-blue)}.teacher-card-copy>p{color:var(--public-muted);display:-webkit-box;min-height:64px;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:3}.teacher-card-copy>a{color:var(--public-coral-dark)}.public-method-band{background:var(--public-green);padding-bottom:80px;padding-top:80px}.public-method-band .public-section-heading h2{color:#fff}.public-method-band .public-kicker,.public-method-grid span{color:#90dfbd}.public-method-grid article{border-left-color:rgba(255,255,255,.23)}.public-method-grid article:nth-child(2) span{color:#89d6f1}.public-method-grid article:nth-child(3) span{color:#ffd56a}.public-method-grid article:nth-child(4) span{color:#ff9f87}.public-branch-band{background:var(--public-blue);border:0;color:#fff;max-width:none;padding-left:max(32px,calc((100vw - 1136px) / 2));padding-right:max(32px,calc((100vw - 1136px) / 2))}.public-branch-band .public-kicker{color:#bce9f7}.public-branch-band h2{color:#fff}.public-branch-band p{color:#e0f0f5}.public-footer{background:#102d29;border-top:5px solid var(--public-coral)}.public-brand-light .public-brand-mark{background:#fff}.public-brand-light .public-brand-copy strong{color:#fff}.public-brand-light .public-brand-copy small{color:#9dd6e7}@media (max-width:1080px){.public-header{gap:18px;grid-template-columns:minmax(270px,auto) minmax(0,1fr) auto}.public-nav{gap:18px}.public-hero-copy{width:62%}.home-pathways>a{padding-left:20px;padding-right:20px}}@media (max-width:860px){.public-header{gap:10px 14px;grid-template-columns:minmax(0,1fr) auto;padding:8px 14px}.public-brand-mark{flex-basis:46px;height:46px;width:46px}.public-brand-mark img{height:66px;left:-10px;top:-5px;width:66px}.public-brand-copy strong{font-size:15px}.public-brand-copy small{font-size:8px}.public-login{min-height:38px;padding:8px 11px}.public-nav{gap:18px}.public-hero{min-height:620px}.public-hero-image{object-position:58% center}.public-hero-overlay{background:rgba(8,49,38,.8)}.public-hero-content{justify-content:flex-start;padding:54px 20px 42px}.public-hero-copy{max-width:590px;width:100%}.public-hero-content h1{font-size:44px}.public-hero-copy>p:not(.public-kicker){font-size:17px}.public-hero-facts{gap:16px 24px;margin-top:32px}.home-pathways{grid-template-columns:1fr}.home-pathways>a{min-height:92px;padding:18px 20px}.home-pathways>a+a{border-left:0;border-top:1px solid #d9e5df}.home-intro-band{gap:24px;padding-bottom:56px;padding-top:56px}.home-intro-band h2{font-size:31px}.public-section{padding-bottom:58px;padding-top:58px}.public-section-heading{align-items:flex-start;flex-direction:column}.public-section-heading h2{font-size:30px}.public-method-band{padding-bottom:56px;padding-top:56px}.public-branch-band{padding-left:20px;padding-right:20px}}@media (max-width:480px){.public-brand-copy small{display:none}.public-brand-copy strong{font-size:14px}.public-hero{min-height:650px}.public-hero-content h1{font-size:40px}.public-hero-actions .button{justify-content:center;width:100%}.public-hero-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.home-intro-points{display:grid;grid-gap:10px;gap:10px}}.public-site{--public-green:#0f4a3a;--public-green-dark:#0a382c;--public-coral:#f26b4f;--public-coral-dark:#dc563b;--public-cream:#f8f5ee;background:#fff}.public-header{gap:24px;grid-template-columns:minmax(300px,auto) minmax(0,1fr) auto;min-height:76px;padding-bottom:6px;padding-top:6px}.public-brand-mark{flex-basis:58px;height:58px;width:58px}.public-brand-mark img{height:82px;left:-12px;top:-6px;width:82px}.public-nav{gap:26px;justify-content:flex-end}.public-nav a{color:#20362d;font-size:15px;font-weight:700}.public-login{background:var(--public-coral);border-color:var(--public-coral);min-height:44px;padding:10px 18px}.public-login:hover{background:var(--public-coral-dark);border-color:var(--public-coral-dark)}.public-hero{background:var(--public-cream);border-radius:8px;margin:24px auto 0;max-width:1340px;min-height:570px}.public-hero-image{left:auto!important;object-position:center;right:0!important;width:52%!important}.public-hero-overlay{background:var(--public-cream);bottom:0;left:0;right:auto;top:0;width:52%}.public-hero-content{color:var(--public-ink);justify-content:flex-start;max-width:1340px;padding:64px 56px}.public-hero-copy{max-width:660px;width:51%}.public-hero-content .public-kicker{color:var(--public-green);font-size:14px;margin-bottom:18px}.public-hero-content h1{color:var(--public-green);font-size:54px;line-height:1.2;margin-bottom:24px;max-width:650px}.public-hero-copy>p:not(.public-kicker){color:#3e5149;font-size:18px;line-height:1.8;max-width:610px}.public-hero-actions{margin-top:32px}.public-hero-actions .button{font-size:16px;min-height:52px;padding:13px 20px}.public-hero .public-button-light{background:transparent;border-color:var(--public-green);color:var(--public-green)}.home-trust-strip{display:grid;grid-gap:16px;gap:16px;grid-template-columns:repeat(3,minmax(0,1fr));margin:-30px auto 0;max-width:1240px;padding:0 20px;position:relative;z-index:3}.home-trust-strip article{align-items:center;background:#fff;border:1px solid #dfe7e2;border-radius:8px;box-shadow:0 14px 36px rgba(15,74,58,.11);display:grid;grid-gap:16px;gap:16px;grid-template-columns:64px minmax(0,1fr);min-height:122px;padding:22px}.home-trust-strip article>span{align-items:center;background:var(--public-green);border-radius:50%;color:#fff;display:flex;font-size:18px;font-weight:900;height:64px;justify-content:center;width:64px}.home-trust-strip strong{color:var(--public-green);display:block;font-size:18px;line-height:1.35}.home-trust-strip p{color:var(--public-muted);font-size:14px;line-height:1.55;margin:6px 0 0}.home-problem-section{display:grid;grid-gap:48px;gap:48px;grid-template-columns:minmax(280px,.78fr) minmax(0,1.5fr);margin:0 auto;max-width:1240px;padding:92px 20px 76px}.home-problem-heading{align-self:start;position:-webkit-sticky;position:sticky;top:100px}.home-problem-heading h2{color:var(--public-green);font-size:38px;line-height:1.25;margin:0 0 18px}.home-problem-heading>p:last-child{color:var(--public-muted);font-size:17px;line-height:1.75;margin:0}.home-problem-grid{display:grid;grid-gap:14px;gap:14px;grid-template-columns:repeat(2,minmax(0,1fr))}.home-problem-grid article{background:var(--public-cream);border:1px solid #e6dfd2;border-radius:8px;min-height:210px;padding:26px}.home-problem-grid article>span{color:var(--public-coral);display:block;font-size:14px;font-weight:900;margin-bottom:26px}.home-problem-grid h3{color:var(--public-green);font-size:22px;margin:0 0 12px}.home-problem-grid p{color:var(--public-muted);font-size:16px;line-height:1.7;margin:0}@media (max-width:1080px){.public-header{grid-template-columns:minmax(260px,auto) minmax(0,1fr) auto}.public-nav{gap:16px}.public-hero-content{padding-left:36px;padding-right:36px}.public-hero-content h1{font-size:46px}.home-trust-strip article{grid-template-columns:54px minmax(0,1fr);padding:18px}.home-trust-strip article>span{height:54px;width:54px}}@media (max-width:860px){.public-header{min-height:70px}.public-login{background:var(--public-coral);border-color:var(--public-coral)}.public-hero{border-radius:0;display:block;margin-top:0;min-height:760px}.public-hero-image{bottom:auto!important;height:260px!important;left:0!important;object-position:center 38%;right:0!important;top:0!important;width:100%!important}.public-hero-overlay{bottom:0;top:250px;width:100%}.public-hero-content{padding:302px 20px 48px}.public-hero-copy{max-width:none;width:100%}.public-hero-content h1{font-size:40px}.public-hero-copy>p:not(.public-kicker){color:#3e5149;font-size:17px}.home-trust-strip{gap:12px;grid-template-columns:1fr;margin:0;padding:20px}.home-trust-strip article{min-height:108px}.home-problem-section{gap:30px;grid-template-columns:1fr;padding-bottom:60px;padding-top:56px}.home-problem-heading{position:static}}@media (max-width:520px){.public-brand-copy strong{font-size:15px}.public-login{font-size:14px;min-height:40px;padding:8px 12px}.public-hero{min-height:790px}.public-hero-image{height:230px!important}.public-hero-overlay{top:220px}.public-hero-content{padding:264px 18px 40px}.public-hero-content .public-kicker{font-size:13px;margin-bottom:14px}.public-hero-content h1{font-size:36px;line-height:1.24;margin-bottom:18px}.public-hero-copy>p:not(.public-kicker){font-size:16px;line-height:1.75}.public-hero-actions{margin-top:26px}.public-hero-actions .button{justify-content:center;width:100%}.home-trust-strip{padding:16px}.home-trust-strip article{grid-template-columns:50px minmax(0,1fr);min-height:102px;padding:16px}.home-trust-strip article>span{font-size:16px;height:50px;width:50px}.home-trust-strip strong{font-size:17px}.home-problem-section{padding-left:16px;padding-right:16px}.home-problem-heading h2{font-size:32px}.home-problem-grid{grid-template-columns:1fr}.home-problem-grid article{min-height:0;padding:22px}}.trial-page{background:var(--public-cream);display:grid;grid-gap:52px;gap:52px;grid-template-columns:minmax(280px,.75fr) minmax(520px,1.25fr);margin:0 auto;max-width:1240px;padding:64px 28px 84px}.trial-intro{align-self:start;padding-top:28px;position:-webkit-sticky;position:sticky;top:94px}.trial-intro h1{color:var(--public-green);font-size:44px;line-height:1.22;margin:0 0 22px}.trial-intro>p:not(.public-kicker){color:var(--public-muted);font-size:17px;line-height:1.75}.trial-steps{display:grid;grid-gap:20px;gap:20px;margin-top:36px}.trial-steps>div{align-items:center;display:grid;grid-gap:14px;gap:14px;grid-template-columns:40px minmax(0,1fr)}.trial-steps span{align-items:center;background:var(--public-green);border-radius:50%;color:#fff;display:flex;font-weight:900;height:40px;justify-content:center;width:40px}.trial-steps p{color:var(--public-muted);line-height:1.5;margin:0}.trial-steps strong{color:var(--public-green);display:block}.trial-form,.trial-success{background:#fff;border:1px solid #dce6e0;border-radius:8px;box-shadow:0 18px 46px rgba(15,74,58,.08);padding:36px}.trial-form-heading h2,.trial-success h2{color:var(--public-green);font-size:30px;margin:0 0 10px}.trial-form-heading>p:last-child,.trial-success>p{color:var(--public-muted);line-height:1.65}.trial-field-grid{display:grid;grid-gap:18px;gap:18px;grid-template-columns:repeat(2,minmax(0,1fr))}.trial-field-wide{grid-column:1/-1}.trial-form-divider{border-top:1px solid #e2e8e4;margin:28px 0}.trial-form-error{background:#fff0ed;border:1px solid #f2b4a6;border-radius:6px;color:#9d321e;margin:22px 0;padding:12px 14px}.trial-honeypot{height:0;left:-9999px;overflow:hidden;position:absolute;width:0}.trial-consent{align-items:flex-start;color:var(--public-muted);display:flex;font-size:14px;gap:10px;line-height:1.55;margin:26px 0 18px}.trial-consent input{flex:0 0 auto;margin-top:3px}.trial-submit{justify-content:center;min-height:52px;width:100%}.trial-success{align-self:start;text-align:center}.trial-success>span{align-items:center;background:var(--public-green);border-radius:50%;color:#fff;display:flex;font-size:26px;height:64px;justify-content:center;margin:0 auto 24px;width:64px}.trial-reference{background:var(--public-cream);border-radius:6px;padding:12px}.trial-success .public-hero-actions{justify-content:center}.inquiries-page{min-width:0}.inquiry-summary{display:grid;grid-gap:8px;gap:8px;grid-template-columns:repeat(3,88px)}.inquiry-summary>div{background:#fff;border:1px solid var(--line);border-radius:6px;padding:12px;text-align:center}.inquiry-summary span{color:var(--primary);display:block;font-size:24px;font-weight:900}.inquiry-summary small{color:var(--muted)}.inquiry-filters{display:grid;grid-gap:10px;gap:10px;grid-template-columns:minmax(240px,1fr) 180px 180px;margin-bottom:16px}.inquiry-workspace{background:#fff;border:1px solid var(--line);border-radius:8px;display:grid;grid-template-columns:minmax(280px,.36fr) minmax(0,1fr);min-height:680px;overflow:hidden}.inquiry-list{border-right:1px solid var(--line);min-width:0}.inquiry-list>p{color:var(--muted);font-size:13px;margin:0;padding:14px 16px 10px}.inquiry-list>button{align-items:start;background:#fff;border:0;border-top:1px solid var(--line);cursor:pointer;display:grid;grid-gap:10px;gap:10px;grid-template-columns:10px minmax(0,1fr) auto;padding:16px;text-align:left;width:100%}.inquiry-list>button.is-active,.inquiry-list>button:hover{background:#eef6f2}.inquiry-list>button.is-active{box-shadow:inset 3px 0 0 var(--primary)}.inquiry-list small,.inquiry-list strong{display:block}.inquiry-list small{color:var(--muted);line-height:1.45;margin-top:4px}.inquiry-list time{color:var(--muted);font-size:12px}.inquiry-dot{background:#89958f;border-radius:50%;height:9px;margin-top:5px;width:9px}.inquiry-dot-new,.inquiry-status-new{background:#fff1cf;color:#795800}.inquiry-dot-contacted,.inquiry-status-contacted{background:#d9edf7;color:#145e7d}.inquiry-dot-trial_booked,.inquiry-status-trial_booked{background:#d9eee4;color:#0f684a}.inquiry-dot-enrolled,.inquiry-status-enrolled{background:#dff0d3;color:#33691e}.inquiry-dot-closed,.inquiry-status-closed{background:#e7e9e8;color:#56605b}.inquiry-dot-closed,.inquiry-dot-contacted,.inquiry-dot-enrolled,.inquiry-dot-new,.inquiry-dot-trial_booked{color:transparent}.inquiry-detail{min-width:0;padding:28px}.inquiry-detail-heading{align-items:flex-start;display:flex;gap:20px;justify-content:space-between}.inquiry-detail-heading h2{margin:4px 0 6px}.inquiry-detail-heading h2 span{color:var(--muted);font-size:16px;font-weight:700}.inquiry-status{border-radius:999px;display:inline-flex;font-size:13px;font-weight:800;padding:7px 10px;white-space:nowrap}.inquiry-contact-actions{display:flex;flex-wrap:wrap;gap:8px;margin:22px 0}.inquiry-info-grid{display:grid;grid-gap:10px;gap:10px;grid-template-columns:repeat(3,minmax(0,1fr))}.inquiry-info-grid>div,.inquiry-needs{background:#f6f8f7;border:1px solid var(--line);border-radius:6px;padding:14px}.inquiry-info-grid small,.inquiry-needs small{color:var(--muted);display:block;margin-bottom:5px}.inquiry-info-grid strong{display:block;overflow-wrap:anywhere}.inquiry-needs{margin-top:10px}.inquiry-needs p{line-height:1.6;margin:0;white-space:pre-wrap}.inquiry-conversion{border-top:1px solid var(--line);margin-top:24px;padding-top:24px}.inquiry-conversion h3{margin:0 0 14px}.inquiry-conversion-step{align-items:center;background:#f8faf9;border:1px solid var(--line);border-radius:6px;display:grid;grid-gap:14px;gap:14px;grid-template-columns:34px minmax(180px,1fr) auto;padding:14px}.inquiry-conversion-step+.inquiry-conversion-step{margin-top:10px}.inquiry-conversion-step>span{align-items:center;background:var(--primary);border-radius:50%;color:#fff;display:flex;font-weight:900;height:34px;justify-content:center;width:34px}.inquiry-conversion-step p{color:var(--muted);font-size:13px;line-height:1.5;margin:4px 0 0}.inquiry-trial-controls{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.inquiry-trial-controls select{min-width:260px}.inquiry-conversion-hint{color:var(--muted);font-size:13px;margin:10px 0 0}.inquiry-followup{border-top:1px solid var(--line);margin-top:24px;padding-top:24px}.inquiry-followup h3{margin:0 0 16px}.inquiry-followup-grid{display:grid;grid-gap:14px;gap:14px;grid-template-columns:repeat(2,minmax(0,1fr))}.inquiry-notes-field{grid-column:1/-1}.inquiry-save-row{align-items:center;display:flex;gap:16px;justify-content:space-between;margin-top:14px}.inquiry-save-row p{margin:0}.inquiry-detail-empty{align-content:center;display:grid;justify-items:center;text-align:center}@media (max-width:980px){.trial-page{gap:32px;grid-template-columns:1fr}.trial-intro{padding-top:0;position:static}.trial-intro h1{font-size:38px}.trial-steps{grid-template-columns:repeat(3,minmax(0,1fr))}.trial-steps>div{align-items:start;grid-template-columns:34px minmax(0,1fr)}.trial-steps span{height:34px;width:34px}.inquiry-workspace{grid-template-columns:1fr}.inquiry-list{border-bottom:1px solid var(--line);border-right:0;max-height:350px;overflow-y:auto}.inquiry-info-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:700px){.trial-page{padding:40px 16px 60px}.trial-intro h1{font-size:34px}.trial-steps{grid-template-columns:1fr}.trial-form,.trial-success{padding:24px 18px}.trial-field-grid{grid-template-columns:1fr}.trial-field-wide{grid-column:auto}.inquiry-summary{grid-template-columns:repeat(3,minmax(70px,1fr));width:100%}.inquiry-filters{grid-template-columns:1fr}.inquiry-workspace{min-height:0}.inquiry-detail{padding:20px 16px}.inquiry-detail-heading{display:grid}.inquiry-followup-grid,.inquiry-info-grid{grid-template-columns:1fr}.inquiry-conversion-step{align-items:start;grid-template-columns:34px minmax(0,1fr)}.inquiry-conversion-step>.button,.inquiry-trial-controls{grid-column:1/-1}.inquiry-trial-controls{display:grid;justify-content:stretch}.inquiry-trial-controls select{min-width:0;width:100%}.inquiry-notes-field{grid-column:auto}.inquiry-save-row{align-items:stretch;flex-direction:column}}.parent-register-page{background:#eef4f1;display:grid;grid-template-columns:minmax(300px,.8fr) minmax(560px,1.2fr);min-height:100vh}.parent-register-intro{align-content:center;background:#0f4a3a;color:#fff;display:grid;padding:64px max(40px,calc((100vw - 1200px) / 2))}.parent-register-intro .brand-mark{color:#fff;margin-bottom:56px}.parent-register-intro .eyebrow{color:#9dd8c2}.parent-register-intro h1{font-size:46px;line-height:1.2;margin:0 0 18px}.parent-register-intro>p:not(.eyebrow){color:#d9ebe4;font-size:17px;line-height:1.7}.parent-register-note{border-top:1px solid rgba(255,255,255,.24);margin-top:32px;padding-top:24px}.parent-register-note p{color:#c7ddd4;line-height:1.6;margin:6px 0 0}.parent-register-panel{align-self:center;background:#fff;border:1px solid var(--line);border-radius:8px;margin:40px;max-width:760px;padding:36px}.parent-register-panel h2{font-size:30px;margin:0 0 22px}.parent-register-login{color:var(--muted);margin:20px 0 0;text-align:center}.parent-register-link,.parent-register-login a{color:var(--brand)}.parent-register-link{justify-content:center}.pos-class-choice-list{display:grid;grid-gap:7px;gap:7px}.pos-class-choice-list>label{align-items:center;background:#fff;border:1px solid var(--line);border-radius:6px;cursor:pointer;display:flex;gap:10px;min-height:50px;padding:9px 11px}.pos-class-choice-list>label.is-selected{background:#eef7f2;border-color:#70a78f}.pos-class-choice-list>label:has(input:disabled){cursor:not-allowed;opacity:.55}.pos-class-choice-list span{display:grid;grid-gap:2px;gap:2px}.pos-class-choice-list small{color:var(--muted)}.pos-lesson-choice-list{display:grid;grid-gap:7px;gap:7px;max-height:330px;overflow-y:auto;padding-right:4px}.pos-lesson-choice-list>label{align-items:center;background:#fff;border:1px solid var(--line);border-radius:6px;cursor:pointer;display:flex;gap:10px;min-height:54px;padding:9px 11px}.pos-lesson-choice-list>label.is-selected{background:#eef7f2;border-color:#0f7a57}.pos-lesson-choice-list span{display:grid;grid-gap:2px;gap:2px;min-width:0}.pos-lesson-choice-list small{color:var(--muted)}.fixed-lesson-count{background:#eef7f2;border-radius:6px;color:#0f6b4c;font-size:13px;font-weight:800;padding:7px 9px;white-space:nowrap}.pos-checkout-notice{background:#f5f8fa;border:1px solid var(--line);border-radius:6px;color:#475467;font-size:12px;line-height:1.5;margin-top:12px;padding:10px}.receipt-success-actions{display:flex;flex-wrap:wrap;gap:6px;grid-column:1/-1}.receipt-success-actions .button{min-height:34px;padding:7px 9px}.outstanding-order-row{display:grid;grid-gap:10px;gap:10px;padding:12px 0;border-bottom:1px solid var(--line)}.archived-class-list article,.outstanding-order-actions,.outstanding-order-row>div:first-child{display:flex;align-items:center;justify-content:space-between;gap:10px}.archived-class-list span,.outstanding-order-row span{display:grid;grid-gap:3px;gap:3px}.outstanding-order-row em{width:max-content;color:#176448;font-size:12px;font-style:normal;font-weight:700}.outstanding-order-actions{justify-content:flex-start;flex-wrap:wrap}.outstanding-order-editor{display:grid;grid-template-columns:minmax(140px,1fr) minmax(160px,1fr);grid-gap:10px;gap:10px;padding:12px;background:#f7f9fc;border:1px solid var(--line);border-radius:6px}.outstanding-order-editor .modal-actions{grid-column:1/-1}.lesson-card-students{margin-top:5px;padding-top:5px;border-top:1px solid #e3e8f1;color:#23405f;font-size:12px;line-height:1.35}.student-name-action{padding:0;color:#1261c9;background:transparent;border:0;font:inherit;font-weight:800;text-align:left;cursor:pointer;text-decoration:none}.student-name-action:disabled{color:inherit;cursor:not-allowed}.archived-class-section{margin-top:20px;padding:18px;background:#fff;border:1px solid var(--line);border-radius:8px}.archived-class-list{display:grid;grid-gap:8px;gap:8px;margin-top:12px}.archived-class-list article{padding:12px;background:#f7f9fc;border:1px solid var(--line);border-radius:6px}@media (max-width:720px){.outstanding-order-editor{grid-template-columns:1fr}.archived-class-list article{align-items:stretch;flex-direction:column}}.parent-registration-row{border-left:3px solid var(--brand)!important}.parent-schedule{border-bottom:1px solid var(--line);display:grid;grid-gap:8px;gap:8px;padding:16px 20px}.parent-schedule-heading{align-items:center;display:flex;gap:16px;justify-content:space-between}.parent-schedule-heading h3{margin:0}.parent-schedule-heading span{color:var(--brand);font-size:13px}.parent-lesson-row{align-items:center;background:#f8faf9;border:1px solid var(--line);border-radius:6px;display:grid;grid-gap:14px;gap:14px;grid-template-columns:110px minmax(0,1fr) auto;padding:13px}.parent-lesson-date,.parent-lesson-row>div:nth-child(2){display:grid;grid-gap:4px;gap:4px}.parent-lesson-date span,.parent-lesson-row>div:nth-child(2)>span{color:var(--muted);font-size:13px}.parent-leave-status{align-items:center;border-radius:5px;display:flex;flex-wrap:wrap;font-size:12px;gap:7px;margin-top:5px;padding:6px 8px}.leave-pending{background:#fff1cf;color:#795800}.leave-approved{background:#dff0e6;color:#166044}.leave-cancelled,.leave-rejected{background:#ecefed;color:#5c6661}.parent-leave-form{background:#fff;border-top:1px solid var(--line);display:grid;grid-gap:10px;gap:10px;grid-column:1/-1;padding-top:14px}.parent-leave-form .trial-consent{margin:0}.leave-detail{min-width:0;padding:28px}.leave-original-lesson{background:#eef6f2;border-left:4px solid var(--brand);display:grid;grid-gap:5px;gap:5px;margin:22px 0 10px;padding:14px}.leave-original-lesson small,.leave-original-lesson span{color:var(--muted)}.leave-review-form{border-top:1px solid var(--line);display:grid;grid-gap:14px;gap:14px;margin-top:22px;padding-top:22px}.leave-review-form .trial-consent{margin:0}.leave-review-actions{display:flex;gap:10px;justify-content:flex-end}.leave-current-makeup{background:#eef6f2;border-radius:6px;color:var(--brand);margin:0;padding:10px 12px}@media (max-width:900px){.parent-register-page{grid-template-columns:1fr}.parent-register-intro{padding:42px 24px}.parent-register-intro .brand-mark{margin-bottom:32px}.parent-register-panel{margin:20px;max-width:none}}@media (max-width:620px){.parent-register-intro h1{font-size:36px}.parent-register-panel{margin:12px;padding:24px 18px}.parent-lesson-row{align-items:start;grid-template-columns:86px minmax(0,1fr)}.parent-lesson-actions{grid-column:1/-1}.parent-lesson-actions .button{justify-content:center;width:100%}.leave-review-actions{display:grid;grid-template-columns:1fr}}.pos-start-date-field{margin:16px 0}.booking-month-calendar{background:#f8faf9;border:1px solid #d8e2dd;border-radius:8px;margin:18px 0;padding:16px}.booking-calendar-head{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.booking-calendar-head strong{color:#0f4a3a;font-size:17px}.booking-calendar-head span{color:#527064;font-size:13px;font-weight:700}.booking-calendar-grid,.booking-calendar-weekdays{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.booking-calendar-weekdays span{color:#6a7a73;font-size:12px;font-weight:700;padding:5px 0;text-align:center}.booking-calendar-grid>div{align-content:start;background:#fff;border-bottom:1px solid #e3e9e6;border-right:1px solid #e3e9e6;display:grid;grid-gap:2px;gap:2px;min-height:58px;padding:6px}.booking-calendar-grid>div:nth-child(7n+1){border-left:1px solid #e3e9e6}.booking-calendar-grid>div:nth-child(-n+7){border-top:1px solid #e3e9e6}.booking-calendar-grid>div.is-empty{background:#f4f6f5}.booking-calendar-grid>div.has-lesson{background:#eaf6ef;box-shadow:inset 0 0 0 1px #74b78d}.booking-calendar-grid>div.is-start{box-shadow:inset 0 0 0 2px #f26b4f}.booking-calendar-grid strong{color:#24362f;font-size:12px}.booking-calendar-grid small{color:#0f4a3a;font-size:10px;font-weight:700;line-height:1.2}.booking-calendar-list{display:grid;grid-gap:6px;gap:6px;margin-top:12px;max-height:190px;overflow:auto}.booking-calendar-list span{align-items:center;background:#fff;border-left:3px solid #2e8b57;color:#465b52;display:flex;font-size:12px;gap:8px;padding:7px 9px}.booking-calendar-list strong{color:#0f4a3a;min-width:36px}.booking-month-calendar.is-compact{padding:12px}.booking-month-calendar.is-compact .booking-calendar-grid>div{min-height:42px;padding:4px}.booking-month-calendar.is-compact .booking-calendar-list{max-height:150px}@media (max-width:640px){.parent-dashboard-actions,.parent-welcome{align-items:stretch;flex-direction:column}.parent-add-student-form{left:0;right:auto}.catalog-archived-row{grid-template-columns:1fr}.booking-calendar-head{align-items:flex-start;flex-direction:column;gap:4px}.booking-calendar-grid>div{min-height:42px;padding:4px}.booking-calendar-grid small{font-size:9px}}.admin-mobile-menu,.public-mobile-menu,.sidebar-nav-mobile{display:none}.public-header{background:rgba(255,255,255,.98);border-bottom:1px solid #e5ebe7;box-shadow:0 2px 12px rgba(15,74,58,.04);min-height:72px;padding-left:max(20px,calc((100vw - 1320px) / 2));padding-right:max(20px,calc((100vw - 1320px) / 2));position:-webkit-sticky;position:sticky;top:0;z-index:60}.public-header .public-brand{min-width:280px}.public-header .public-brand-copy strong{letter-spacing:0}.public-header .public-login{border-radius:6px;box-shadow:0 5px 14px rgba(242,107,79,.18)}.admin-shell{background:#f4f6f5;grid-template-columns:226px minmax(0,1fr)}.sidebar{background:#17231f;height:100vh;overflow-y:auto;padding:18px 12px;position:-webkit-sticky;position:sticky;top:0;z-index:45}.sidebar-brand-row{display:grid}.sidebar .sidebar-brand{border-bottom:1px solid rgba(255,255,255,.13);color:#fff;display:grid;grid-gap:3px;gap:3px;margin:0 4px 16px;padding:4px 8px 17px}.sidebar .sidebar-brand:hover{background:transparent;color:#fff}.sidebar-brand strong{font-size:17px;letter-spacing:0}.sidebar-brand span{color:#9fb4aa;font-size:12px}.sidebar-nav{display:grid;grid-gap:16px;gap:16px}.sidebar .sidebar-nav-mobile{display:none}.sidebar-nav-group{display:grid;grid-gap:3px;gap:3px}.sidebar-group-label{color:#81978d;font-size:11px;font-weight:800;padding:0 12px 4px}.sidebar .sidebar-nav a{border-radius:6px;color:#c9d5cf;font-size:14px;font-weight:650;margin:0;min-height:38px;padding:9px 12px}.sidebar .sidebar-nav a:hover{background:rgba(255,255,255,.08)}.sidebar .sidebar-nav a.active{background:#fff;box-shadow:0 6px 16px rgba(0,0,0,.14);color:#0f4a3a}.sidebar .sidebar-logout{border-color:rgba(255,255,255,.18);border-radius:6px;margin:2px 0 0}.admin-main{min-width:0;padding:28px clamp(20px,2.3vw,38px) 48px}.admin-header{border-bottom:1px solid #dce3df;gap:22px;margin-bottom:22px;padding-bottom:20px}.admin-header h1,.pos-header h1{font-size:clamp(29px,2.5vw,38px);letter-spacing:0;line-height:1.18}.admin-header>div:first-child>p:last-child{color:#66766f;line-height:1.55;margin:7px 0 0}.branch-switcher select,.button,.field input,.field select,.field textarea,.mini-button,.search-input{border-radius:6px}.button{font-weight:750}.field input:focus,.field select:focus,.field textarea:focus,.search-input:focus{border-color:#2b7a64;box-shadow:0 0 0 3px rgba(43,122,100,.13);outline:none}.workspace-notice{border-radius:6px;margin-bottom:16px}.catalog-course-list{max-height:calc(100vh - 185px);overflow-y:auto;position:-webkit-sticky;position:sticky;top:20px}.catalog-course-row{min-height:82px}.catalog-course-row strong,.catalog-price-row strong{line-height:1.35;overflow-wrap:anywhere}.catalog-price-row{min-height:66px;padding:12px 14px}.catalog-price-row>span:first-child{min-width:0}.catalog-price-row small{line-height:1.45}.grade-checkbox-grid{grid-template-columns:repeat(auto-fit,minmax(66px,1fr))}.grade-shortcuts{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:7px}.grade-shortcuts button{background:#fff;border:1px solid #cfd9d4;border-radius:5px;color:#36574b;cursor:pointer;font-size:12px;font-weight:750;min-height:30px;padding:5px 9px}.grade-shortcuts button:hover{background:#edf6f2;border-color:#7aa998}.grade-checkbox-grid label{min-height:40px}.scheduling-summary{box-shadow:0 5px 18px rgba(21,35,31,.035)}.scheduling-layout{grid-template-columns:minmax(0,1fr) 410px}.planning-class-card{box-shadow:0 5px 16px rgba(18,35,29,.045)}.planning-class-card>small{color:#66766f;line-height:1.4}.planning-class-facts{align-items:center}.planning-class-facts span:first-child{max-width:min(100%,250px);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.planning-class-actions .mini-button{min-height:34px;padding:6px 10px}.schedule-price-choice-list{grid-template-columns:repeat(2,minmax(145px,1fr))}.schedule-price-choice-list label{min-height:58px}.schedule-price-choice-list strong{line-height:1.35;overflow-wrap:anywhere}.catalog-editor-section,.class-editor-panel,.pos-panel,.pos-student-selector,.shun-lee-program-card,.timetable-roster-panel{box-shadow:0 6px 20px rgba(18,35,29,.045)}.shun-lee-program-card{align-content:start;background:#fff}.shun-lee-program-card .field>select{font-size:14px}.pos-class-choice-list label,.pos-lesson-choice-list label{min-width:0}.pos-class-choice-list strong,.pos-lesson-choice-list strong{overflow-wrap:anywhere}.lesson-card-students{background:#f0f6f3;border-radius:4px;color:#245b49!important;display:block;font-size:11px!important;line-height:1.45;padding:5px 6px;white-space:normal}.db-roster-row{min-height:76px}.parent-portal-header{box-shadow:0 3px 14px rgba(15,74,58,.05);position:-webkit-sticky;position:sticky;top:0;z-index:40}.parent-order-summary,.parent-student-section{box-shadow:0 6px 20px rgba(18,35,29,.045)}@media (max-width:1380px){.scheduling-layout{grid-template-columns:1fr}.class-editor-panel{position:static}.shun-lee-program-grid{grid-template-columns:1fr}}@media (max-width:1080px){.public-header .public-brand{min-width:240px}.public-header .public-nav{gap:14px}.public-header .public-nav a{font-size:14px}.catalog-layout{grid-template-columns:270px minmax(0,1fr)}}@media (max-width:860px){.admin-shell{display:block}.sidebar{height:auto;overflow:visible;padding:10px 14px;position:-webkit-sticky;position:sticky}.sidebar-brand-row{align-items:center;display:flex;gap:14px;justify-content:space-between}.sidebar .sidebar-brand{border:0;margin:0;padding:3px 0}.sidebar-brand span,.sidebar-nav-desktop{display:none}.admin-mobile-menu{display:block;position:relative}.admin-mobile-menu>summary{background:#fff;border-radius:6px;color:#163d30;cursor:pointer;font-size:14px;font-weight:800;list-style:none;padding:9px 12px}.admin-mobile-menu>summary::-webkit-details-marker,.public-mobile-menu>summary::-webkit-details-marker{display:none}.admin-mobile-menu[open] .sidebar-nav-mobile{background:#17231f;box-shadow:0 18px 34px rgba(0,0,0,.22);display:grid;grid-gap:12px;gap:12px;max-height:calc(100vh - 76px);overflow-y:auto;padding:14px;position:absolute;right:-14px;top:47px;width:min(92vw,430px)}.sidebar-nav-mobile .sidebar-nav-group{grid-template-columns:repeat(2,minmax(0,1fr))}.sidebar-nav-mobile .sidebar-group-label{grid-column:1/-1}.admin-main{padding:22px 16px 40px}.admin-header{flex-direction:column}.admin-header,.pos-header-actions,.record-heading-actions{align-items:stretch}.pos-header-actions>*,.record-heading-actions>*{flex:1 1 150px}.public-header{gap:10px 14px;grid-template-columns:minmax(0,1fr) auto;padding:8px 14px}.public-header .public-brand{min-width:0}.public-header>.public-nav{display:none}.public-header .public-login{grid-column:2;grid-row:1}.public-mobile-menu{display:block;grid-column:1/-1;grid-row:2}.public-mobile-menu>summary{color:#0f4a3a;cursor:pointer;font-size:14px;font-weight:850;list-style:none;padding:5px 0 3px}.public-mobile-menu>summary:after{content:"+";float:right;font-size:18px;line-height:1}.public-mobile-menu[open]>summary:after{content:"−"}.public-mobile-nav{border-top:1px solid #e1e8e4;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:5px;padding-top:8px}.public-mobile-nav a{color:#25463b;font-size:14px;font-weight:750;padding:10px 4px}.catalog-layout,.shun-lee-pos-layout,.timetable-db-layout{grid-template-columns:1fr}.catalog-course-list{max-height:330px;position:static}.weekly-planning-board{grid-template-columns:1fr}.scheduling-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.scheduling-summary div:nth-child(3){border-left:0}.scheduling-summary div:nth-child(n+3){border-top:1px solid var(--line)}.shun-lee-pos-layout .pos-checkout,.timetable-roster-panel{position:static}}@media (max-width:560px){.public-header .public-brand-mark{flex-basis:48px;height:48px;width:48px}.public-header .public-brand-mark img{height:68px;left:-10px;top:-5px;width:68px}.public-header .public-brand-copy small{display:none}.public-header .public-login{font-size:13px;min-height:38px;padding:8px 11px}.public-mobile-nav,.sidebar-nav-mobile .sidebar-nav-group{grid-template-columns:1fr}.admin-header h1,.pos-header h1{font-size:29px}.admin-header .button,.branch-switcher,.pos-header-actions .button{width:100%}.scheduling-summary{grid-template-columns:1fr}.scheduling-summary div+div,.scheduling-summary div:nth-child(3){border-left:0;border-top:1px solid var(--line)}.scheduling-toolbar{align-items:stretch;flex-direction:column}.scheduling-toolbar .field{min-width:0}.grade-checkbox-grid.schedule-day-checkboxes,.schedule-price-choice-list{grid-template-columns:1fr}.catalog-editor-section,.class-editor-panel,.pos-panel,.pos-student-selector{padding:14px}.catalog-price-row,.catalog-section-head,.planning-class-head,.program-card-actions{align-items:stretch;flex-direction:column}.catalog-price-row>span:last-child{justify-items:start;text-align:left}.catalog-form-actions,.class-editor-actions,.planning-class-actions{align-items:stretch;flex-direction:column}.catalog-form-actions .button,.class-editor-actions .button,.planning-class-actions .mini-button{justify-content:center;width:100%}.db-roster-row{align-items:stretch;grid-template-columns:1fr}}