/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before{box-sizing:border-box;border:0 solid;margin:0;padding:0}::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.block{display:block}}:root{--bg:#f7f5f0;--card:#fffefa;--ink:#292b30;--muted:#686660;--line:#e2ded5;--accent:#f4b544;--soft:#eeebe4;--red:#a73c31}*{box-sizing:border-box}html[data-theme=dark]{--bg:#1d2025;--card:#26292e;--ink:#f0ece4;--muted:#b9b6b0;--line:#424247;--soft:#303237}body{background:var(--bg);color:var(--ink);margin:0;font-family:Arial,PingFang SC,Microsoft YaHei,sans-serif;font-size:14px;line-height:1.6}button,input,select,textarea{font:inherit}button,a,input,select,textarea{outline-offset:4px}button,a{touch-action:manipulation}button{border:1px solid var(--line);background:var(--card);color:var(--ink);cursor:pointer;border-radius:9px;padding:10px 16px;transition:background .15s,transform .15s}button:hover{border-color:var(--selected-border);transform:translateY(-1px)}button:disabled{opacity:.45;cursor:not-allowed;transform:none}a{color:inherit;text-decoration:none}input,select,textarea{background:var(--card);color:var(--ink);border:1px solid var(--line);border-radius:8px;max-width:100%;padding:11px}input[type=checkbox]{accent-color:var(--focus);width:18px;height:18px}header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:20px;height:94px;padding:0 max(5vw,24px);display:flex}.brand{align-items:center;gap:12px;font-size:16px;font-weight:700;display:flex}.brand small{letter-spacing:2px;font-size:8px;font-weight:400;display:block}.brand-mark{letter-spacing:-8px;padding-right:8px;font-family:Georgia,serif;font-size:42px;line-height:1}.brand-mark span{color:var(--accent)}.brand img{object-fit:contain;width:46px;height:46px}.header-tools{align-items:center;gap:12px;display:flex}.header-tools select{font-size:12px}.header-tools button{padding:7px 13px}.header-tools a{font-size:12px}.announcement{background:var(--quiet-bg);color:var(--quiet-ink);text-align:center;letter-spacing:1px;padding:10px;font-size:11px}.announcement span{color:var(--muted);margin-left:25px}main{max-width:1370px;margin:auto;padding:0 5vw}.hero{grid-template-columns:1.4fr 1fr;align-items:center;gap:60px;padding:55px 0 48px;display:grid}.eyebrow{letter-spacing:2px;color:var(--muted);margin:0 0 18px;font-size:10px;font-weight:700}h1{letter-spacing:-1.5px;margin:0 0 22px;font-size:clamp(30px,3.3vw,52px);font-weight:700;line-height:1.25}h1 em{z-index:0;font-style:normal;position:relative}h1 em:after{content:"";background:var(--accent);z-index:-1;height:12px;position:absolute;bottom:1px;left:0;right:0}h2{letter-spacing:-.6px;margin:0 0 14px;font-size:25px;line-height:1.4}h3{margin:0;font-size:17px}p{margin:12px 0}.hero p:not(.eyebrow){color:var(--muted);font-size:14px;line-height:1.9}.hero-tags{gap:24px;margin-top:24px;font-size:11px;display:flex}.hero-art{background:radial-gradient(#d9cdb54d,#0000 69%);justify-content:center;align-items:center;height:280px;display:flex;position:relative}.art-card{color:#303035;background:#f4bd55;border-radius:18px;width:275px;height:247px;padding:25px 28px;position:relative;transform:rotate(-7deg);box-shadow:12px 12px #b3a68d33}.art-card small{letter-spacing:2px;font-size:9px}.art-card strong{letter-spacing:-4px;font-family:Georgia,serif;font-size:88px;font-weight:400;line-height:1.1;display:block}.art-card p{color:#4e4433!important;margin:3px!important;font-size:12px!important;line-height:1.5!important}.sun{z-index:2;color:#df9529;font-size:100px;position:absolute;top:-30px;right:0}.book{color:#f2e8d7;background:#34383e;border:5px solid #efe5d2;padding:22px 20px;position:absolute;bottom:-15px;right:-25px;transform:rotate(14deg);box-shadow:4px 4px #a79b87}.art-label{background:var(--card);color:var(--ink);border:1px solid var(--line);border-radius:30px;padding:7px 16px;font-size:11px;position:absolute;bottom:4px;left:0;transform:rotate(-8deg)}.workspace{grid-template-columns:minmax(0,1fr) 285px;align-items:start;gap:25px;display:grid}.steps{border-bottom:1px solid var(--line);justify-content:space-between;gap:5px;margin-bottom:22px;padding:0 0 25px;display:flex}.steps span{color:var(--muted);flex-direction:column;gap:6px;font-size:9px;display:flex}.steps b{border:1px solid var(--line);border-radius:50%;place-items:center;width:25px;height:25px;font-size:10px;font-weight:400;display:grid}.steps .current{color:var(--ink);font-weight:700}.steps .current b{background:var(--accent);color:#292b30;border-color:var(--accent)}.steps .done b{background:var(--success-bg);color:var(--success-ink)}.child-tabs{flex-wrap:wrap;gap:7px;margin-bottom:15px;display:flex}.child-tabs button{padding:8px 12px;font-size:11px}.child-tabs small{opacity:.6;margin-left:8px}.active,.chosen{background:var(--selected)!important;border-color:var(--selected-border)!important;color:var(--selected-ink)!important}.panel{background:var(--card);border:1px solid var(--line);border-radius:16px;min-height:400px;padding:30px}.muted{color:var(--muted);font-size:12px}.choice-grid{grid-template-columns:repeat(3,1fr);gap:12px;margin:28px 0;display:grid}.choice{text-align:left;flex-direction:column;gap:9px;padding:20px 15px;display:flex}.choice>span{font-size:26px}.choice strong{font-size:13px}.choice small{color:var(--muted);font-size:10px;line-height:1.7}.primary{background:var(--accent);border-color:var(--accent);color:var(--selected-ink);font-weight:700}.grade-grid{grid-template-columns:repeat(6,1fr);gap:12px;margin:26px 0;display:grid}.grade-grid button{font-size:24px;font-weight:700}.grade-grid small{color:var(--muted);font-size:10px;display:block}.segmented{background:var(--soft);border-radius:10px;gap:3px;margin:25px 0 12px;padding:4px;display:flex}.segmented button{background:0 0;border-color:#0000;flex:1;padding:10px 6px;font-size:12px}.segmented .active{box-shadow:0 2px 4px #0000000a;background:var(--card)!important}.section-title{justify-content:space-between;align-items:center;gap:12px;margin:20px 0 15px;display:flex}.section-title strong{font-size:12px}.text{background:0 0;border:0;padding:6px;font-size:11px}.subject-grid{grid-template-columns:repeat(2,1fr);gap:12px;display:grid}.subject-grid button{text-align:left;grid-template-columns:36px 1fr 20px;align-items:center;gap:7px;padding:16px 12px;display:grid}.subject-grid strong{font-size:12px}.subject-grid small{color:var(--muted);grid-column:2/4;font-size:9px}.subject-icon{color:#76603d;background:#eee4d1;border-radius:9px;place-items:center;height:35px;font-size:16px;display:grid}.color1{color:#59664f;background:#e4e7df}.color2{color:#8b5e50;background:#ece1dc}.color3{color:#536775;background:#e0e5e8}.check{border:1px solid var(--line);text-align:center;border-radius:50%;width:20px;height:20px;font-size:12px;line-height:18px}.chosen .check{background:var(--focus);color:#fff;border-color:var(--focus)}.quick{flex-wrap:wrap;gap:5px;display:flex}.quick button{padding:6px 10px;font-size:10px}.navigation{border-top:1px solid var(--line);justify-content:space-between;margin-top:30px;padding-top:22px;display:flex}.summary{background:var(--card);border:1px solid var(--line);border-radius:15px;padding:24px 20px}.summary .eyebrow{font-size:8px}.summary h3{margin-bottom:22px;font-size:20px}.summary p{font-size:11px}.summary small{color:var(--muted);font-size:9px;display:block}.tag{background:var(--quiet-bg);color:var(--quiet-ink);white-space:nowrap;border-radius:5px;padding:4px 8px;font-size:9px}.summary-subjects{flex-wrap:wrap;gap:5px;display:flex}.summary-subjects span{background:var(--soft);border-radius:5px;padding:4px 8px;font-size:9px}hr{border:0;border-top:1px dashed var(--line);margin:22px 0}dl{color:var(--muted);grid-template-columns:1fr auto;gap:8px;font-size:11px;display:grid}dd{color:var(--ink);text-align:right;margin:0}.price{padding-top:18px}.price span{font-size:10px;display:block}.price strong{letter-spacing:-1px;font-size:30px}.help-card{background:var(--quiet-bg);color:var(--quiet-ink);border-radius:14px;margin-top:15px;padding:23px;font-size:12px}.help-card p{font-size:11px}.help-card a{font-weight:700;text-decoration:underline;display:block}.help-card>span{font-size:11px}.restart{width:100%;color:var(--muted);background:0 0;border:0;margin-top:12px;font-size:10px;display:block}.notice,.error{background:var(--notice-bg);color:var(--notice-ink);border-radius:9px;margin-bottom:16px;padding:13px 17px;font-size:12px}.notice button{float:right;background:0 0;border:0;padding:0 6px}.error{background:var(--error-bg);color:var(--error-ink)}.package{border:1px solid var(--line);border-radius:12px;margin:18px 0;padding:18px}.package .section-title{margin:0 0 8px}.package>p{color:var(--muted);font-size:10px}.course-row{border-top:1px solid var(--line);grid-template-columns:1fr 1fr auto;align-items:center;gap:8px;padding:12px 0;font-size:11px;display:grid}.course-row small{color:var(--muted);font-size:9px;display:block}.manual-row{align-items:center;gap:10px;display:flex}.manual-row .course-row{flex:1}.filters{gap:10px;margin:15px 0;display:flex}.filters select{flex:1;font-size:12px}.week-grid{border:1px solid var(--line);border-radius:10px;grid-template-columns:repeat(7,1fr);display:grid;overflow:hidden}.day{border-right:1px solid var(--line);min-width:0}.day:last-child{border:0}.day h4{text-align:center;background:var(--soft);margin:0;padding:10px 0;font-size:9px}.day-timeline{background:repeating-linear-gradient(to bottom, transparent, transparent 41px, var(--line) 42px);height:630px;position:relative}.hour{color:var(--muted);font-size:8px;position:absolute;left:3px}.lesson{background:var(--selected);color:var(--selected-ink);border-left:2px solid var(--selected-border);z-index:1;border-radius:4px;padding:4px;font-size:8px;position:absolute;left:2px;right:2px;overflow:auto}.lesson strong,.lesson small{font-size:8px;display:block}.day-mobile{display:none}.download-bar{flex-wrap:wrap;gap:8px;margin:20px 0;display:flex}.download-bar select{flex:1;font-size:11px}.add-child{background:var(--soft);border-style:dashed;width:100%;font-size:12px}.form-grid{grid-template-columns:1fr 1fr;gap:15px;margin:20px 0;display:grid}label{font-size:12px;display:block}label input:not([type=checkbox]){width:100%;margin-top:7px;display:block}.child-form{border-top:1px solid var(--line);padding-top:10px}.consent{align-items:flex-start;gap:10px;display:flex}.success{text-align:center;padding:40px 0}.success>span{background:var(--success-bg);width:70px;height:70px;color:var(--success-ink);border-radius:50%;place-items:center;margin-bottom:20px;font-size:40px;display:inline-grid}.success p{color:var(--muted);font-size:12px}.registration-id{letter-spacing:2px;margin:20px 0;font-size:22px;display:block}.family-mini{justify-content:space-between;margin:10px 0;font-size:10px;display:flex}.danger{color:var(--red);margin-top:10px;font-size:10px}footer{border-top:1px solid var(--line);color:var(--muted);justify-content:space-between;margin-top:60px;padding:28px 0;font-size:10px;display:flex}.loading{text-align:center;width:min(100%,640px);margin:0 auto;padding:clamp(40px,10vh,100px) 24px}.loading h1{font-size:clamp(24px,5vw,36px);line-height:1.4}.catalog-loading-card{border:1px solid var(--line);background:var(--card);border-radius:18px;margin-top:24px;padding:24px}.catalog-loading-card p{overflow-wrap:anywhere;line-height:1.7}.catalog-loading-card button{white-space:normal;max-width:100%;margin-top:12px}@media (max-width:400px){.loading{padding-left:18px;padding-right:18px}.catalog-loading-card{padding:20px 16px}}.export-host{color:#292b30;background:#fff;width:900px;position:fixed;top:0;left:-20000px}.export-document{color:#292b30;background:#fff;width:900px}.export-document section{color:#292b30;background:#fff;min-height:300px;padding:32px}.export-document .course-row{color:#292b30;font-size:15px}.export-document .course-row small{color:#56645b;font-size:13px}.export-document h2{font-size:24px}.schedule-heading{color:#382c1b;background:linear-gradient(115deg,#fff1ca,#ffe0a0);border:1px solid #eccb87;border-radius:18px;margin-bottom:24px;padding:26px 28px}.schedule-heading h2{color:#382c1b;margin:6px 0 10px}.schedule-heading .eyebrow{color:#805719;letter-spacing:2px}.schedule-heading .muted{color:#75603c;margin-bottom:16px;font-size:13px}.schedule-facts{flex-wrap:wrap;gap:8px;display:flex}.schedule-facts span{color:#72501d;background:#fff9eb;border:1px solid #e8ca8b;border-radius:99px;padding:6px 12px;font-size:13px;font-weight:600}.week-grid .day h4{border-top:3px solid #eab54e}.day-mobile .course-row{border-left:3px solid #eab54e;padding-left:14px}@media (max-width:760px){.schedule-heading{margin-bottom:18px;padding:20px 18px}.schedule-heading h2{font-size:25px}.schedule-heading .muted{font-size:12px}}.export-document section.schedule-print{color:#292c30;background:#fffdf8;min-height:0;padding:36px 40px 28px}.print-brand{justify-content:space-between;align-items:center;margin-bottom:24px;display:flex}.print-brand img{object-fit:contain;width:260px;height:76px}.print-year{text-align:right;color:#9b5a12;letter-spacing:1px;font-size:32px;font-weight:800;line-height:1.1}.print-year small{letter-spacing:2px;margin-top:6px;font-size:10px;display:block}.print-hero{background:#f7ba43;border-bottom:5px solid #e79824;border-radius:20px;justify-content:space-between;align-items:center;gap:24px;padding:24px 28px;display:flex}.print-eyebrow{letter-spacing:1.2px;color:#654119;font-size:11px;font-weight:700}.print-hero h1{letter-spacing:-1px;color:#342a20;margin:10px 0;font-size:34px;line-height:1.2}.print-hero p{color:#654119;margin:0;font-size:14px}.print-grade{color:#70450f;letter-spacing:-3px;font-size:64px;font-weight:800;line-height:1}.print-summary{color:#716659;border-bottom:1px solid #e4dccb;align-items:center;gap:26px;margin-bottom:20px;padding:20px 4px;font-size:12px;display:flex}.print-summary b{color:#332d26;margin-right:4px;font-size:22px}.print-summary span:last-child{text-align:right;max-width:280px;margin-left:auto}.print-day{break-inside:avoid;gap:14px;margin-bottom:12px;display:flex}.print-day-label{color:#775325;flex-shrink:0;width:88px;padding:12px 0}.print-day-label>span{letter-spacing:2px;color:#9a773e;margin-bottom:5px;font-size:11px;display:block}.print-day-label strong{font-size:17px}.print-lessons{background:#fff;border:1px solid #e9e1d2;border-radius:12px;flex:1;min-width:0;overflow:hidden}.print-lesson{border-left:4px solid #edb443;align-items:center;gap:18px;min-height:76px;padding:13px 16px;display:flex}.print-lesson+.print-lesson{border-top:1px solid #eee8dc}.print-time{color:#76501e;white-space:nowrap;font-variant-numeric:tabular-nums;min-width:92px;font-size:20px;font-weight:750}.print-time span{color:#7f776a;margin-top:2px;font-size:12px;font-weight:500;display:block}.print-subject{flex:1;min-width:0}.print-subject strong{color:#292c30;font-size:18px;line-height:1.3;display:block}.print-subject>span{color:#706b62;margin-top:5px;font-size:12px;line-height:1.4;display:block}.print-mode{color:#776039;white-space:nowrap;background:#f7f1e5;border-radius:6px;padding:5px 8px;font-size:11px}.export-document .print-footer{color:#8b7a63;border-top:1px solid #e4dccb;justify-content:space-between;align-items:end;margin:20px 0 0;padding:16px 0 0;font-size:11px;line-height:1.7;display:flex}.admin-shell{max-width:1150px;margin:auto;padding:40px 24px}.admin-shell nav{gap:10px;margin:25px 0;display:flex}.admin-shell textarea{width:100%;font:12px/1.6 monospace}.admin-login{max-width:450px;margin:80px auto;padding:30px}.admin-login input{width:100%;margin:20px 0}.admin-registration{border:1px solid var(--line);border-radius:12px;margin:20px 0;padding:20px}.admin-registration pre{white-space:pre-wrap;overflow-wrap:anywhere;font-size:12px}.admin-registration textarea{height:75px}.admin-help{background:var(--soft);border-radius:10px;padding:18px}.json-error{color:var(--red)}.csv-preview{max-height:350px;font-size:11px;overflow:auto}table{border-collapse:collapse;width:100%}th,td{text-align:left;border-bottom:1px solid var(--line);padding:8px}@media (min-width:1200px){aside{position:sticky;top:20px}}@media (max-width:1000px){.workspace{grid-template-columns:minmax(0,1fr) 245px;gap:16px}.panel{padding:22px}.hero{gap:20px}.choice-grid{gap:6px}.choice{padding:15px 10px}.hero-art{transform:scale(.85)}.grade-grid{grid-template-columns:repeat(4,1fr)}}@media (max-width:760px){header{flex-wrap:wrap;height:auto;padding:15px 20px}.brand{font-size:13px}.brand-mark{font-size:36px}.header-tools{gap:7px}.header-tools select{padding:7px}.header-tools a{font-size:10px}.announcement{font-size:9px}.announcement span{margin:3px 0 0;display:block}main{padding:0 18px}.hero{grid-template-columns:1fr;gap:0;padding:35px 0 30px}.hero-art{display:none}h1{font-size:36px}.hero p:not(.eyebrow){font-size:12px}.hero-tags{gap:14px}.workspace{grid-template-columns:1fr}.steps{gap:15px;overflow-x:auto}.steps span{min-width:52px;font-size:9px}.panel{padding:20px 16px}.subject-grid{gap:8px}.subject-grid button{grid-template-columns:30px 1fr 18px;gap:5px;padding:13px 8px}.subject-icon{width:28px;height:30px}.subject-grid strong{font-size:11px}.choice-grid{grid-template-columns:1fr}.choice{grid-template-columns:32px 1fr;gap:5px 12px;display:grid}.choice small{grid-column:2}.choice>span{grid-row:1/3}.grade-grid{grid-template-columns:repeat(4,1fr);gap:8px}.grade-grid button{padding:12px 6px;font-size:22px}h2{font-size:22px}.course-row{grid-template-columns:1fr 1fr}.course-row>.tag{grid-column:1/3;width:fit-content}.course-row strong{font-size:11px}.course-row small{font-size:9px}.week-grid{display:block}.day{border-right:0;border-bottom:1px solid var(--line)}.day h4{text-align:left;padding:10px 13px;font-size:12px}.day-timeline{display:none}.day-mobile{padding:0 12px;display:block}.day-mobile>small{padding:8px;display:block}.form-grid{grid-template-columns:1fr}.navigation{gap:8px}.navigation button{font-size:11px}.summary{padding:22px}.summary h3{margin-bottom:10px}.summary .price{justify-content:space-between;align-items:center;display:flex}.summary hr{margin:15px 0}footer{align-items:flex-start;gap:15px}.section-title{flex-wrap:wrap}.package{padding:14px}.package h3{font-size:14px}.package button{font-size:11px}.registration-id{letter-spacing:1px;font-size:17px}}.flow,aside,.panel{min-width:0}.steps{max-width:100%}.course-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto}.course-row>div,.course-row>span{overflow-wrap:anywhere;min-width:0}@media (max-width:760px){.workspace{grid-template-columns:minmax(0,1fr)}.course-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.grade-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.subject-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}:focus-visible{outline:3px solid var(--focus);outline-offset:4px}.panel:focus{outline:none}.panel{scroll-margin-top:20px}.enrolment-active{padding-top:24px}.steps>button{background:0 0;border:0;flex-direction:column;align-items:center;gap:7px;min-width:44px;padding:4px;font-size:12px;line-height:1.5;display:flex}.steps>button:disabled{opacity:1;cursor:default;color:var(--muted)}.steps>button.current{color:var(--ink)}.steps>button b{width:30px;height:30px;font-size:12px}.steps>button:not(:disabled):hover{background:var(--soft)}.mobile-fee{display:none}.course-row{padding-block:16px;font-size:15px}.course-row small{font-size:13px;line-height:1.7}.package>p,.result-note{font-size:13px}.tag{font-size:12px}.summary p,.summary small,.family-mini,.summary-subjects span{font-size:13px}.help-card{overflow-wrap:anywhere}.help-card a{padding-block:7px;display:block}@media (max-width:760px){body{font-size:16px}header{gap:14px;padding:16px 18px}.brand{font-size:14px}.brand small{font-size:8px}.header-tools select,input,select,textarea{font-size:16px}.header-tools a{padding:10px 4px;font-size:13px}.header-tools button{min-width:44px;min-height:44px}.announcement{padding:10px 18px;font-size:12px}.hero{padding:28px 0}.hero p:not(.eyebrow){font-size:16px}.hero-tags{flex-wrap:wrap;font-size:13px}.eyebrow{font-size:11px}.enrolment-active{padding-top:16px;padding-bottom:calc(105px + env(safe-area-inset-bottom))}.steps{gap:4px;margin-bottom:16px;padding-bottom:14px;overflow:visible}.steps>button{overflow-wrap:anywhere;flex:1;min-width:0;padding:0;font-size:11px}.steps>button b{width:27px;height:27px}.child-tabs button{min-height:44px;font-size:14px}.panel{padding:24px 18px;scroll-margin-top:16px}.panel h2{font-size:25px;line-height:1.4}.panel p,label,.consent,.notice,.error{font-size:15px}.segmented{flex-wrap:wrap}.segmented button{min-height:44px;font-size:14px}.subject-grid{grid-template-columns:minmax(0,1fr)}.subject-grid button{grid-template-columns:38px 1fr 24px;gap:12px;padding:16px 12px}.subject-grid strong{font-size:17px}.subject-grid small{font-size:13px}.subject-icon{width:38px;height:38px;font-size:12px}.choice strong{font-size:17px}.choice small{font-size:13px}.grade-grid{grid-template-columns:repeat(auto-fit,minmax(65px,1fr))}.grade-grid small{font-size:13px}.package{padding:16px}.package h3{font-size:18px}.package button{min-height:44px;font-size:14px}.package>p{font-size:13px}.course-row{grid-template-columns:minmax(0,1fr) auto;gap:8px 12px;font-size:16px}.course-row>span:not(.tag){grid-column:1}.course-row>.tag{grid-area:1/2/3;align-self:center}.course-row small{font-size:14px}.navigation.mobile-sticky-navigation{z-index:20;padding:12px 18px calc(12px + env(safe-area-inset-bottom));background:var(--card);border-top:1px solid var(--line);align-items:center;gap:8px;margin:0;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -4px 24px #00000014}.mobile-sticky-navigation button{min-height:48px;padding:10px 12px;font-size:14px}.mobile-fee{flex-direction:column;flex:1;min-width:0;line-height:1.3;display:flex}.mobile-fee small{color:var(--muted);font-size:11px}.mobile-fee strong{font-size:17px}.summary,.help-card{padding:24px 20px}.summary h3{font-size:24px}.summary .eyebrow{font-size:11px}.summary p,.summary small,.summary-subjects span,.family-mini,.help-card p,.help-card a{font-size:14px}.restart{min-height:44px;font-size:14px}#selection-summary{scroll-margin-top:18px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.course-row strong{font-size:inherit}@media (max-width:760px){.day h4{font-size:15px}}.brand img.brand-wordmark{object-fit:cover;background:0 0;border-radius:0;width:250px;height:70px}@media (max-width:760px){.brand img.brand-wordmark{width:230px;height:64px}}.export-document .export-logo{object-fit:cover;background:0 0;width:250px;height:72px;margin-bottom:12px;display:block}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--selected:#fff0d2;--selected-border:#c78520;--selected-ink:#694313;--quiet-bg:#f4ead8;--quiet-ink:#685536;--notice-bg:#fff0d1;--notice-ink:#74521d;--error-bg:#f7e4df;--error-ink:#913f35;--success-bg:#e5ebe4;--success-ink:#435c49;--focus:#a96513}html[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--selected:#483721;--selected-border:#d99b39;--selected-ink:#ffdf9e;--quiet-bg:#303237;--quiet-ink:#d0cac0;--notice-bg:#423421;--notice-ink:#f4d293;--error-bg:#432e2d;--error-ink:#f2b3a7;--success-bg:#2d3b33;--success-ink:#bdd0bd;--focus:#f4b544;--red:#efa79a}html[data-theme=dark] .brand img.brand-wordmark{filter:invert()hue-rotate(180deg)}.primary{color:#292b30}.primary:hover:not(:disabled){background:#ffc55b;border-color:#d4932e}.chosen small,.active small{color:var(--selected-ink)}.panel,.summary{box-shadow:0 8px 30px #292b3004}.mobile-summary-toggle{display:none}@media (max-width:760px){.summary-mobile-collapsed,.registration-finished .summary{display:none}.mobile-summary-toggle{text-align:left;justify-content:space-between;align-items:center;width:100%;padding:16px 18px;font-size:15px;font-weight:700;display:flex}.mobile-summary-toggle small{color:var(--muted);margin-top:3px;font-size:13px;font-weight:400;display:block}.mobile-summary-toggle[aria-expanded=true]{border-bottom:0;border-radius:12px 12px 0 0}.mobile-summary-toggle[aria-expanded=true]+.summary{border-radius:0 0 12px 12px}.mobile-sticky-navigation .mobile-fee{text-align:left;min-height:48px;color:var(--ink);background:0 0;border:0;padding:0;display:flex;transform:none}}.admin-shell nav{flex-wrap:wrap}.admin-config-fields{border:0;min-width:0;margin:0;padding:0}.admin-config-fields>button{margin:12px 8px 0 0}.course-editor-heading{justify-content:space-between;align-items:flex-start;gap:24px;margin:28px 0 20px;display:flex}.course-editor-heading .eyebrow{margin-bottom:6px}.course-editor-heading h2{margin-bottom:8px}.course-editor-heading p{max-width:560px;color:var(--muted);font-size:14px}.course-editor-heading>button{flex-shrink:0}.course-counts{flex-wrap:wrap;gap:8px;display:flex}.course-search{grid-template-columns:minmax(0,1fr) 200px;gap:16px;margin:22px 0 14px;display:grid}.course-editor select,.course-dialog select{width:100%;margin-top:7px;display:block}.course-result-count{color:var(--muted);font-size:13px}.course-admin-list{margin:0;padding:0;list-style:none}.course-admin-list>li{border-top:1px solid var(--line)}.course-admin-row{grid-template-columns:minmax(0,1fr) minmax(150px,.7fr) auto;align-items:center;gap:18px;padding:22px 0;display:grid}.course-admin-row h3{margin-left:10px;font-size:16px;display:inline}.course-admin-row p{color:var(--muted);margin:6px 0 0;font-size:13px}.course-admin-times strong{color:var(--ink);font-variant-numeric:tabular-nums}.course-admin-times .pending-label{color:var(--notice-ink);background:var(--notice-bg);border-radius:5px;padding:4px 8px;font-size:13px}.course-pagination{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding-top:20px;display:flex}.course-empty{text-align:center;background:var(--soft);border-radius:10px;padding:35px 20px}.course-dialog{background:var(--card);width:min(760px,100vw - 32px);max-height:calc(100dvh - 32px);color:var(--ink);border:1px solid var(--line);border-radius:18px;margin:auto;padding:0;inset:0;box-shadow:0 30px 100px #0004}.course-dialog::backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#171b2380}.course-dialog form{flex-direction:column;max-height:calc(100dvh - 34px);display:flex}.course-dialog-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:18px;padding:24px 28px 16px;display:flex}.course-dialog-header .eyebrow{margin:0 0 4px}.course-dialog-header h2{margin:0}.course-dialog-header>button{min-width:44px;min-height:44px}.course-dialog-body{overscroll-behavior:contain;padding:20px 28px 28px;overflow:auto}.course-id{color:var(--muted);overflow-wrap:anywhere;margin-top:0;font-size:12px}.course-field-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px;display:grid}.course-field-wide{grid-column:1/-1}.course-dialog label{font-size:14px}.course-slot-section{margin-top:26px}.course-slot-section .section-title{color:var(--muted);font-size:12px}.course-slot{border:1px solid var(--line);border-radius:10px;min-width:0;margin:14px 0;padding:14px}.course-slot legend{color:var(--muted);padding:0 6px;font-size:12px}.course-slot-grid{grid-template-columns:1fr 1fr 1.3fr auto;align-items:start;gap:12px;display:grid}.course-slot-grid .text{align-self:center;min-height:44px}.course-midnight{align-items:center;gap:6px;margin-top:10px;display:flex;font-size:12px!important}.course-pending-box{background:var(--notice-bg);color:var(--notice-ink);border-radius:10px;margin-top:24px;padding:20px;font-size:14px}.course-dialog-footer{border-top:1px solid var(--line);background:var(--card);flex-wrap:wrap;justify-content:flex-end;gap:10px;padding:16px 28px;display:flex}.course-dialog-footer .danger{margin:0 auto 0 0;font-size:13px}@media (max-width:760px){.admin-shell{padding:24px 16px}.admin-shell h1{font-size:30px}.admin-shell .panel{padding:20px 16px}.admin-shell nav{gap:7px}.admin-shell nav button{min-height:44px;padding:8px 10px;font-size:14px}.admin-shell .filters{flex-wrap:wrap}.admin-shell .filters>*{flex:160px;min-width:0}.course-editor-heading{flex-direction:column;gap:8px}.course-search{grid-template-columns:minmax(0,1fr)}.course-admin-row{grid-template-columns:minmax(0,1fr) auto;gap:10px}.course-admin-row>div:first-child{grid-column:1/-1}.course-admin-times p{font-size:14px}.course-admin-row>button{min-height:44px;font-size:14px}.course-counts button{min-height:44px;padding:8px 10px;font-size:13px}.course-dialog{border-radius:14px;width:calc(100vw - 20px);max-height:calc(100dvh - 20px)}.course-dialog form{max-height:calc(100dvh - 22px)}.course-dialog-header{padding:18px 16px}.course-dialog-header h2{font-size:24px}.course-dialog-body{padding:18px 16px}.course-field-grid{grid-template-columns:minmax(0,1fr);gap:16px}.course-slot-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.course-slot-grid>label:first-child{grid-column:1/-1}.course-slot-grid>button{grid-column:1/-1;justify-self:end}.course-dialog-footer{padding:14px 16px calc(14px + env(safe-area-inset-bottom));gap:8px}.course-dialog-footer button{min-height:44px;font-size:14px}.course-dialog-footer .primary{flex:100%}}.attendance-picker{border-top:1px solid var(--line);margin-top:28px;padding-top:24px}.attendance-picker p{color:var(--muted);font-size:14px}.attendance-picker>small{color:var(--muted);margin-top:12px;font-size:12px;display:block}.attendance-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.attendance-options button{text-align:left;justify-content:space-between;align-items:center;gap:12px;min-height:60px;padding:16px;display:flex}.attendance-current{background:var(--notice-bg);color:var(--notice-ink);border-radius:10px;justify-content:space-between;align-items:center;gap:12px;margin-bottom:24px;padding:16px;display:flex}.attendance-current small{margin-top:4px;font-size:12px;display:block}.attendance-current button{flex-shrink:0;min-height:44px;font-size:13px}@media (max-width:760px){.attendance-options{grid-template-columns:minmax(0,1fr)}.attendance-current{flex-direction:column;align-items:stretch}.attendance-current button{align-self:flex-start}.attendance-picker p,.attendance-current small{font-size:14px}.attendance-picker>small{font-size:13px}.attendance-current{align-items:flex-start}}.fee-policy-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.fee-policy-card{border:1px solid var(--line);border-radius:14px;min-width:0;margin:20px 0;padding:22px}.fee-policy-list .fee-policy-card{margin-top:0}.fee-policy-card .section-title{align-items:flex-start;margin-top:0}.fee-policy-card .section-title button{flex-shrink:0;font-size:13px}.fee-policy-card p{font-size:14px}.fee-policy-card dl{grid-template-columns:minmax(100px,1fr) minmax(0,2fr);font-size:14px}.fee-policy-card dd{overflow-wrap:anywhere}.fee-tiers{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.fee-tiers>div{background:var(--soft);font-variant-numeric:tabular-nums;border-radius:8px;flex-direction:column;padding:12px 14px;display:flex}.fee-tiers span{color:var(--muted);font-size:12px}.fee-tiers strong{font-size:16px}.fee-grade-picker{border:1px solid var(--line);border-radius:10px;min-width:0;margin:22px 0 10px;padding:16px}.fee-grade-picker legend{padding:0 6px;font-size:14px}.fee-grade-picker>div{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.fee-grade-picker label{align-items:flex-start;gap:8px;min-height:38px;display:flex}.fee-grade-picker small{color:var(--muted);font-size:10px;display:block}.fee-tier-row{grid-template-columns:minmax(80px,.7fr) minmax(0,1.3fr) auto;align-items:end;gap:12px;margin:14px 0;display:grid}.fee-tier-row button{min-height:44px;margin-bottom:3px}.fee-pending-check{align-items:flex-start;gap:8px;margin-bottom:10px;display:flex}.advanced-fee-shortcuts{background:var(--soft);border-radius:10px;margin-top:24px;padding:18px}.advanced-fee-shortcuts summary{cursor:pointer;font-size:14px}.advanced-fee-shortcuts label{margin-top:18px}@media (max-width:1000px){.fee-policy-list{grid-template-columns:minmax(0,1fr)}}@media (max-width:760px){.fee-policy-card{padding:18px 14px}.fee-policy-card .section-title{flex-wrap:wrap}.fee-grade-picker>div{grid-template-columns:repeat(3,minmax(0,1fr))}.fee-grade-picker label{min-height:44px}.fee-tier-row{grid-template-columns:minmax(60px,.65fr) minmax(0,1fr) auto;gap:8px}.fee-tier-row label{font-size:13px}.fee-tier-row input{padding-inline:8px}.fee-tier-row button{padding-inline:4px;font-size:13px}}.teacher-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px;margin-top:20px;display:grid}.teacher-card{border:1px solid var(--line);background:var(--card);border-radius:18px;overflow:hidden}.teacher-card>div:last-child{gap:10px;padding:16px;display:grid}.teacher-card h3{margin:0}.teacher-portrait{object-fit:cover;object-position:center 25%;width:100%;height:220px;display:block}.teacher-no-photo{background:var(--bg);min-height:130px;color:var(--muted);text-align:center;place-items:center;padding:24px;display:grid}.teacher-preview{object-fit:contain;background:var(--bg);border-radius:12px;width:280px;max-width:100%;height:340px;margin:0 auto 18px;display:block}.photo-picker{border:1px dashed var(--accent);border-radius:12px;gap:10px;padding:16px;display:grid}.photo-picker input{width:100%;min-height:44px}.teacher-dialog label{gap:8px;margin-top:16px;display:grid}.teacher-dialog input,.teacher-dialog textarea{box-sizing:border-box;width:100%}.course-portrait{float:left;object-fit:cover;object-position:center 25%;border-radius:8px;width:48px;height:58px;margin-right:10px}@media (max-width:600px){.teacher-grid{grid-template-columns:1fr 1fr;gap:10px}.teacher-card>div:last-child{padding:12px}.teacher-card button{min-height:44px;font-size:14px}.teacher-portrait{height:180px}.teacher-preview{height:280px}}.photo-picker{cursor:pointer;position:relative}.photo-picker input{opacity:0;cursor:pointer;height:100%;margin:0;position:absolute;inset:0}.photo-picker:focus-within{outline:3px solid var(--accent);outline-offset:3px}.photo-picker-action{text-align:center;background:var(--accent);color:#241b0d;border-radius:10px;padding:12px;font-weight:700;display:block}.photo-picker:has(input:disabled){opacity:.6;cursor:wait}.teacher-bio{max-width:32em;margin-top:6px;font-size:13px}.teacher-bio p{white-space:pre-wrap;overflow-wrap:anywhere}.teacher-bio summary{cursor:pointer;text-underline-offset:3px;text-decoration:underline}.export-document .teacher-bio{display:none}.registration-controls{display:contents}.brand-setting-cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-block:20px;display:grid}.brand-setting-cards article{border:1px solid var(--line);overflow-wrap:anywhere;border-radius:16px;padding:22px}.brand-setting-cards small{color:var(--muted)}.brand-setting-cards h3{margin:10px 0;font-size:22px}.brand-setting-cards p{white-space:pre-wrap}.brand-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 20px;display:grid}.brand-dialog label:not(.consent){gap:8px;margin-block:16px;display:grid}.brand-dialog input:not([type=checkbox]),.brand-dialog textarea,.brand-dialog select{width:100%}.brand-contacts{border:1px solid var(--line);border-radius:12px;min-width:0;margin-top:24px;padding:16px}.brand-contacts legend{padding-inline:8px}.brand-contact-row{border-bottom:1px solid var(--line);grid-template-columns:1fr 1fr auto;align-items:end;gap:12px;margin-bottom:16px;padding-bottom:16px;display:grid}.brand-contact-row>button{margin-bottom:16px}.brand-contacts>button{margin:8px 10px 0 0}@media (max-width:760px){.brand-setting-cards,.brand-form-grid{grid-template-columns:1fr}.brand-contact-row{grid-template-columns:1fr;gap:0}.brand-contact-row>button{justify-self:start;margin:0}.brand-contact-row label:not(.consent){margin-block:8px}}.admin-shell>.section-title{flex-wrap:wrap}.admin-shell>.section-title strong{overflow-wrap:anywhere;min-width:0;max-width:100%}:root{--control-border:#928570;--placeholder:#756d60;--check-ink:#fff}html[data-theme=dark]{--control-border:#938a7b;--placeholder:#bfb7a9;--check-ink:#292b30}input:not([type=checkbox]):not([type=radio]):not([type=file]),textarea,select{border-color:var(--control-border)}input::placeholder,textarea::placeholder{color:var(--placeholder);opacity:1}.chosen .check{color:var(--check-ink)}.color2{color:#85584b}.photo-picker:focus-within{outline-color:var(--focus)}.panel:focus-visible{outline:3px solid var(--focus);outline-offset:5px}.skip-link{z-index:100;background:var(--card);color:var(--ink);border:2px solid var(--focus);border-radius:8px;max-width:calc(100vw - 32px);padding:12px 18px;font-size:16px;position:fixed;top:-160px;left:16px}.skip-link:focus{top:12px}.hero-entry{align-items:center;min-height:48px;margin-top:18px;font-size:16px;display:inline-flex}.hour{font-size:11px}.lesson{padding:6px;font-size:12px;line-height:1.3}.lesson strong{font-size:12px;line-height:1.3}.lesson small{font-size:11px;line-height:1.35}@media (min-width:761px){.day h4{font-size:12px}}.field-error{color:var(--error-ink);margin-top:7px;font-size:14px;font-weight:500;line-height:1.6;display:block}.registration-controls input[aria-invalid=true][id]{border:2px solid var(--error-ink)}.family-errors h3{margin:0 0 8px;font-size:18px}.family-errors p{margin:0 0 8px}.family-errors ul{margin:0;padding-left:20px}.family-errors button{text-align:left;color:inherit;text-underline-offset:3px;background:0 0;border:0;border-radius:5px;min-height:44px;padding:10px 4px;font-size:15px;line-height:1.6;text-decoration:underline;display:block}input[id^=parent-],input[id^=child-]{scroll-margin-top:24px}@media (max-width:480px){.navigation.mobile-sticky-navigation.bilingual-navigation{padding:10px 16px calc(10px + env(safe-area-inset-bottom));grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px;display:grid}.bilingual-navigation>.mobile-fee{flex-direction:row;grid-column:1/-1;justify-content:space-between;align-items:center;gap:12px;min-height:44px}.bilingual-navigation .mobile-fee small{max-width:65%;line-height:1.4}.bilingual-navigation .mobile-fee strong{white-space:nowrap;flex-shrink:0}.bilingual-navigation>button:not(.mobile-fee){width:100%;min-width:0;min-height:48px}.enrolment-active.bilingual-layout{padding-bottom:calc(170px + env(safe-area-inset-bottom))}}.academic-search{max-width:560px;margin:22px 0 14px;display:block}.academic-list{gap:12px;margin:0;padding:0;list-style:none;display:grid}.academic-card{border:1px solid var(--line);background:var(--card);border-radius:16px;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:18px;padding:20px;display:grid}.academic-card h3{margin:8px 0 4px;font-size:20px}.academic-card p{overflow-wrap:anywhere;margin:5px 0;font-size:14px;line-height:1.6}.academic-dependencies{color:var(--muted)}.academic-actions{grid-template-columns:repeat(2,minmax(64px,1fr));gap:8px;display:grid}.academic-actions button{min-height:44px;padding:8px 12px;font-size:14px}.academic-dialog label{margin-bottom:18px;display:block}.academic-dialog input,.academic-dialog select{width:100%;margin-top:7px;display:block}.academic-dialog input[readonly]{color:var(--muted);background:var(--bg)}.academic-advanced{border:1px solid var(--line);border-radius:12px;margin:28px 0;padding:18px}.academic-advanced summary{cursor:pointer;min-height:44px;font-weight:600}@media (max-width:760px){.academic-card{grid-template-columns:minmax(0,1fr);padding:18px}.academic-actions{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.academic-actions button{padding:8px 4px;font-size:13px}.academic-editor .course-editor-heading{flex-wrap:wrap;gap:12px}.academic-card h3{font-size:19px}}.quick-subject-tags{flex-wrap:wrap;gap:6px;margin:12px 0;display:flex}.quick-dialog label{margin-bottom:18px;display:block}.quick-dialog label>input:not([type=checkbox]){width:100%;margin-top:7px;display:block}.quick-choices{border:1px solid var(--line);border-radius:12px;min-width:0;margin:22px 0;padding:16px}.quick-choices legend{padding:0 8px;font-size:15px;font-weight:700}.quick-checkbox-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.quick-checkbox-grid.quick-grade-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.quick-checkbox-grid label{border:1px solid var(--line);overflow-wrap:anywhere;border-radius:8px;align-items:center;gap:10px;min-height:48px;margin:0;padding:10px 8px;font-size:14px;display:flex}.quick-checkbox-grid label:has(input:checked){background:var(--selected);border-color:var(--accent);color:var(--selected-ink)}.quick-checkbox-grid input[type=checkbox]{width:18px;height:18px;accent-color:var(--accent);flex-shrink:0;margin:0}.quick-checkbox-grid small{margin-top:2px;font-size:12px;display:block}.quick-shortcuts{margin:18px 0}.quick-shortcuts .quick{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px;display:grid}.quick-option{min-width:0}.quick-shortcuts button{text-align:left;width:100%;min-height:44px;padding:10px 14px;font-size:14px}.quick-shortcuts .quick-unavailable{color:var(--muted);overflow-wrap:anywhere;margin:6px 0 0;font-size:13px;line-height:1.6}@media (max-width:760px){.quick-checkbox-grid{grid-template-columns:minmax(0,1fr)}.quick-checkbox-grid.quick-grade-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.quick-choices{padding:10px}.quick-editor .course-editor-heading{flex-wrap:wrap;gap:12px}.quick-shortcuts .quick{grid-template-columns:minmax(0,1fr)}}.teacher-roster{margin-bottom:36px}.teacher-roster+.teacher-editor{border-top:1px solid var(--line);padding-top:30px}@media (max-width:760px){.teacher-roster .course-editor-heading{flex-wrap:wrap;gap:12px}.teacher-roster .academic-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.teacher-roster .academic-actions button{min-height:44px;font-size:14px}}.registration-card{background:var(--card);border-radius:18px;padding:24px}.registration-card-header{border:0;justify-content:space-between;align-items:flex-start;gap:16px;height:auto;padding:0;display:flex}.registration-card-header h3{overflow-wrap:anywhere;margin:4px 0 8px;font-size:18px}.registration-card-header .eyebrow{margin:0}.registration-card-header .muted{margin:0;font-size:12px;line-height:1.7}.registration-status{border:1px solid var(--line);background:var(--soft);color:var(--ink);border-radius:999px;flex:none;padding:6px 10px;font-size:12px}.registration-status-pending{background:var(--notice-bg);color:var(--notice-ink)}.registration-status-confirmed{background:var(--selected)}.registration-family-overview{border-top:1px solid var(--line);grid-template-columns:minmax(0,1fr) auto;gap:20px;margin-top:18px;padding:22px 0;display:grid}.registration-family-overview p{overflow-wrap:anywhere;margin:6px 0;font-size:17px;font-weight:650}.registration-family-overview span{font-size:12px;line-height:1.7}.registration-family-fee{text-align:right}.registration-family-fee strong{font-variant-numeric:tabular-nums;font-size:23px;line-height:1.6;display:block}.registration-family-fee>span:last-child{display:block}.registration-snapshot-note{background:var(--soft);color:var(--muted);border-radius:10px;margin:0 0 18px;padding:10px 12px;font-size:12px;line-height:1.8}.registration-children{gap:12px;display:grid}.registration-child{border:1px solid var(--line);border-radius:12px;overflow:hidden}.registration-child summary{cursor:pointer;justify-content:space-between;align-items:center;gap:14px;padding:16px;list-style:none;display:flex}.registration-child summary::-webkit-details-marker{display:none}.registration-child summary:focus-visible{outline:2px solid var(--ink);outline-offset:-4px}.registration-child summary>span:first-child{flex:1;min-width:0}.registration-child summary strong{overflow-wrap:anywhere;font-size:15px;display:block}.registration-child summary small{color:var(--muted);margin-top:6px;font-size:12px;line-height:1.6;display:block}.registration-child-price{text-align:right;font-variant-numeric:tabular-nums;flex:none;font-size:15px;font-weight:650}.registration-child summary:after{content:"展开";color:var(--muted);flex:none;font-size:12px}.registration-child[open] summary:after{content:"收起"}.registration-child[open] summary{background:var(--soft)}.registration-child-body{padding:0 16px 18px}.registration-child-body h4{margin:20px 0 12px;font-size:14px}.registration-child-body h4 span{color:var(--muted);margin-left:8px;font-size:12px;font-weight:400}.registration-saved-courses{margin:0;padding:0;list-style:none}.registration-saved-courses li{border-bottom:1px solid var(--line);overflow-wrap:anywhere;padding:12px 0}.registration-saved-courses li:first-child{padding-top:0}.registration-saved-courses strong{font-size:15px}.registration-saved-courses p{color:var(--muted);margin:6px 0 0;font-size:13px;line-height:1.7}.registration-saved-courses .registration-course-slot{color:var(--ink);font-variant-numeric:tabular-nums}.registration-fees{grid-template-columns:1fr 1fr;gap:14px;margin:18px 0 0;display:grid}.registration-fees>div{min-width:0}.registration-fees dt{color:var(--muted);font-size:12px}.registration-fees dd{text-align:left;margin:5px 0 0;font-size:14px;font-weight:600}.registration-trial{border-top:1px solid var(--line);margin-top:18px}.registration-trial p{margin:6px 0;font-size:13px;line-height:1.7}.registration-followup{border-top:1px solid var(--line);gap:14px;margin-top:22px;padding-top:20px;display:grid}.registration-followup label{color:var(--muted);gap:8px;font-size:13px;display:grid}.registration-followup select{width:100%}.registration-followup textarea{min-height:100px;font:inherit;color:var(--ink);resize:vertical;line-height:1.7}.registration-followup>button{justify-self:end;min-height:44px}.registration-empty{text-align:center;border:1px dashed var(--line);border-radius:16px;margin:20px 0;padding:36px 20px}.registration-empty h2{font-size:20px}@media (max-width:600px){.registration-card{padding:18px 16px}.registration-card-header{flex-wrap:wrap;gap:10px}.registration-family-overview{grid-template-columns:minmax(0,1fr) auto;gap:10px}.registration-family-fee strong{font-size:20px}.registration-child summary{gap:8px;padding:14px 12px}.registration-child-body{padding:0 12px 16px}.registration-child-price{font-size:13px}.registration-family-overview p{font-size:15px}}.manual-picker{margin-top:18px}.manual-progress{border:1px solid var(--selected-border);background:var(--selected);border-radius:12px;padding:14px 16px}.manual-progress strong{color:var(--selected-ink);font-size:15px}.manual-progress p{margin:6px 0 0;font-size:13px;line-height:1.7}.manual-help{color:var(--muted);margin:16px 0;font-size:13px;line-height:1.8}.manual-filters{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr) minmax(0,1fr);gap:12px;display:grid}.manual-filters label{min-width:0;color:var(--muted);gap:7px;font-size:12px;display:grid}.manual-filters select{width:100%;min-width:0;min-height:44px;font-size:14px}.manual-result-count{margin:14px 0;font-size:12px}.manual-choices{gap:12px;display:grid}.manual-row.manual-choice{border:1px solid var(--line);background:var(--card);border-radius:12px;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:12px;padding:16px;display:grid}.manual-choice-content{min-width:0}.manual-choice .course-row{border:0;margin:0;padding:0;display:block}.manual-choice .course-row strong{font-size:16px}.manual-choice .course-row small{overflow-wrap:anywhere;font-size:13px;line-height:1.7}.manual-choice .course-row>span{margin-top:8px;display:block}.manual-choice .course-row>span small{color:var(--ink);font-variant-numeric:tabular-nums}.manual-choice .course-row .tag{margin-top:8px;font-size:12px;display:inline-block}.manual-choice>button{min-width:90px;min-height:44px;padding:10px 12px;font-size:13px}.manual-choice-note{color:var(--muted);overflow-wrap:anywhere;margin:12px 0 0;font-size:12px;line-height:1.7}.manual-is-selected{box-shadow:inset 3px 0 var(--selected-border);border-color:var(--selected-border)!important}.manual-is-selected .manual-choice-note{color:var(--selected-ink)}.manual-conflict-note{color:var(--error-ink)}.manual-is-blocked>button:disabled{opacity:1;color:var(--error-ink);background:var(--error-bg);cursor:not-allowed}.manual-empty{text-align:center;border:1px dashed var(--line);border-radius:12px;padding:24px 16px}.manual-empty h3{margin:0 0 10px;font-size:18px}.manual-empty p{color:var(--muted);font-size:13px;line-height:1.8}@media (max-width:600px){.manual-filters{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px}.manual-filters label:first-child{grid-column:1/-1}.manual-filters select{font-size:16px}.manual-row.manual-choice{grid-template-columns:minmax(0,1fr);gap:14px;padding:16px}.manual-choice>button{justify-self:stretch}}.primary-packages{border:1px solid var(--line);background:var(--soft);border-radius:20px;margin:24px 0 32px;padding:24px}.primary-packages>p{line-height:1.7}.primary-package-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:20px 0;display:grid}.primary-package-grid article{border:1px solid var(--line);background:var(--card);border-radius:16px;flex-direction:column;gap:12px;padding:20px;display:flex}.primary-package-grid h4{margin:0;font-size:20px}.primary-package-grid p{margin:0}.primary-package-grid small{flex:1;line-height:1.8}.primary-package-grid button{min-height:48px}.primary-packages>small{margin-top:12px;line-height:1.8;display:block}#subject-choice{scroll-margin-top:24px}@media (max-width:600px){.primary-packages{padding:18px}.primary-package-grid{grid-template-columns:1fr}}.home-hero .hero-copy{min-width:0}.home-hero h1{letter-spacing:-.04em;text-wrap:balance;margin-bottom:18px;font-size:clamp(30px,3.3vw,48px);line-height:1.35}.home-hero h1 em{text-decoration-line:underline;-webkit-text-decoration-color:var(--accent);-webkit-text-decoration-color:var(--accent);-webkit-text-decoration-color:var(--accent);text-decoration-color:var(--accent);text-underline-offset:.15em;text-decoration-skip-ink:auto;background:0 0;text-decoration-thickness:.1em}.home-hero h1 em:after{content:none}.home-hero p.hero-translation{letter-spacing:-.025em;color:var(--ink);text-wrap:balance;max-width:25ch;margin:0 0 24px;font-size:clamp(21px,2vw,28px);font-weight:600;line-height:1.35}.home-hero .hero-description p{max-width:52ch;margin:8px 0;font-size:16px;line-height:1.8}.home-hero .hero-entry{text-align:start;flex-direction:column;align-items:flex-start;gap:3px;padding:14px 22px;display:inline-flex}.home-hero-bilingual .hero-entry span[lang=en]{font-size:13px;font-weight:500}.home-hero .hero-tags{gap:20px;padding:0;font-size:14px;line-height:1.5;list-style:none}.home-hero .hero-tags li{align-items:flex-start;gap:8px;display:flex}.home-hero .hero-tags li>span:last-child>span{display:block}.home-hero-bilingual .hero-tags span[lang=en]{color:var(--muted);font-size:12px}.home-hero .art-card p span{display:block}@media (max-width:760px){.home-hero{padding:36px 0}.home-hero h1{font-size:clamp(27px,7.6vw,42px);line-height:1.4}.home-hero .eyebrow{letter-spacing:1.3px;max-width:36ch;font-size:10px;line-height:1.7}.home-hero p.hero-translation{margin-bottom:22px;font-size:23px}.home-hero .hero-description p{font-size:15px;line-height:1.85}.home-hero .hero-tags{gap:18px;margin-top:22px;font-size:13px}.home-hero .hero-entry{max-width:100%;min-height:48px}}.review-child-fees{border-top:1px solid var(--line);grid-template-columns:minmax(0,1fr);gap:10px;margin:20px 0 0;padding-top:16px;font-size:14px;line-height:1.6;display:grid}.review-child-fees>div{justify-content:space-between;align-items:baseline;gap:16px;display:flex}.review-child-fees dt{color:var(--muted);min-width:0}.review-child-fees dd{white-space:nowrap;font-variant-numeric:tabular-nums;margin:0}.review-child-fees .review-child-payable{border-top:1px solid var(--line);padding-top:12px;font-size:18px;font-weight:700}.review-child-payable dt{color:var(--ink)}.review-family-total{border:1px solid var(--accent);background:var(--quiet-bg);color:var(--quiet-ink);border-radius:16px;margin:24px 0;padding:22px}.review-family-total>div{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:16px;display:flex}.review-family-total strong{white-space:nowrap;letter-spacing:-.03em;font-variant-numeric:tabular-nums;font-size:28px}.review-family-total p{margin-bottom:0;font-size:14px;line-height:1.7}.child-recovery{background:var(--quiet-bg);border:1px solid var(--accent);color:var(--quiet-ink);border-radius:14px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin:20px 0;padding:18px 22px;display:flex}.child-recovery>div{flex:1;min-width:180px}.child-recovery small{margin-top:6px;font-size:13px;line-height:1.7;display:block}.child-recovery button{min-height:44px}.restart-dialog{border:1px solid var(--line);background:var(--card);width:min(500px,100% - 32px);max-height:calc(100dvh - 32px);color:var(--ink);border-radius:20px;margin:auto;padding:28px;overflow:auto;box-shadow:0 24px 90px #0004}.restart-dialog::backdrop{background:#0008}.restart-dialog p{font-size:16px;line-height:1.8}.restart-dialog>div{flex-wrap:wrap;gap:12px;margin-top:24px;display:flex}.restart-dialog button{flex:1;min-width:150px;min-height:48px}.restart-dialog .restart-confirm{color:var(--error-ink);border-color:var(--error-ink)}.whatsapp-preview{margin-block:1rem}.whatsapp-preview summary{cursor:pointer;font-weight:600}.whatsapp-preview p{font-size:.85rem}.whatsapp-preview pre{font:inherit;white-space:pre-wrap;overflow-wrap:anywhere;border:1px solid;border-radius:.75rem;max-height:22rem;padding:.75rem;font-size:.85rem;line-height:1.7;overflow:auto}:is(.whatsapp-preview summary:focus-visible,.whatsapp-preview pre:focus-visible){outline:3px solid var(--accent);outline-offset:4px}.wizard-shell .wizard-workspace{max-width:980px;margin:28px auto 0;display:block}.wizard-progress{margin:0 0 20px}.wizard-progress>div{justify-content:space-between;align-items:center;gap:16px;margin-bottom:10px;font-size:14px;display:flex}.wizard-progress span{color:var(--muted)}.wizard-progress progress{background:var(--line);width:100%;height:5px;accent-color:var(--accent);border:0;border-radius:99px;display:block;overflow:hidden}.wizard-progress progress::-webkit-progress-bar{background:var(--line)}.wizard-progress progress::-webkit-progress-value{background:var(--accent);border-radius:99px}.wizard-shell .panel{min-width:0}.wizard-shell .panel>.eyebrow{display:none}.wizard-shell .schedule-summary{border:1px solid var(--line);background:var(--soft);margin-top:28px;padding:24px;position:static}.wizard-shell .schedule-summary>.eyebrow{display:none}.wizard-shell .schedule-summary h3{font-size:22px}.wizard-utilities{justify-content:space-between;align-items:flex-start;gap:20px;max-width:980px;margin:24px auto;display:flex}.wizard-utilities .wizard-help{box-shadow:none;background:0 0;border:0;flex:1;margin:0;padding:0;font-size:14px}.wizard-help>summary{cursor:pointer;color:var(--muted);padding:12px 0}.wizard-help[open]>summary{color:var(--ink);margin-bottom:12px}.wizard-utilities .restart{white-space:nowrap;width:auto;min-height:44px;margin:0}.wizard-shell .child-tabs{margin-bottom:18px}.wizard-shell .navigation{justify-content:space-between}@media (max-width:760px){.wizard-shell .wizard-workspace{margin-top:20px}.wizard-progress{margin-bottom:16px}.wizard-shell .panel{padding:24px 18px}.wizard-shell .navigation.mobile-sticky-navigation{justify-content:space-between;gap:12px;display:flex}.wizard-shell .navigation.mobile-sticky-navigation>button{flex:1;width:auto;min-width:0}.wizard-shell .schedule-summary{padding:20px 16px}.wizard-utilities{flex-wrap:wrap;gap:8px;margin-top:20px}.wizard-utilities .wizard-help{min-width:60%}.wizard-progress>div{font-size:13px}.wizard-shell .choice-grid{grid-template-columns:1fr}.wizard-shell .choice{text-align:left;grid-template-columns:36px 1fr;gap:4px 12px;padding:18px;display:grid}.wizard-shell .choice>span{grid-row:1/3;align-self:center;margin:0;font-size:26px}.wizard-shell .choice>strong,.wizard-shell .choice>small{grid-column:2;margin:0}}.compact-details{margin:12px 0;font-size:14px}.compact-details>summary{cursor:pointer;align-content:center;min-height:44px;padding:10px 0;font-weight:600;display:list-item}:is(.compact-details>summary:focus-visible,.fee-details>summary:focus-visible){outline:3px solid var(--accent);outline-offset:3px}.package-details[open]{border-top:1px solid var(--line)}.primary-package-grid .compact-details{margin:0}.primary-package-grid .compact-details p{margin:8px 0;line-height:1.7}.primary-package-grid button{margin-top:auto}.format-help{color:var(--muted);margin-bottom:20px}.mobile-day-picker{display:none}.fee-details>summary{cursor:pointer;justify-content:space-between;align-items:center;gap:16px;min-height:48px;list-style:none;display:flex}.fee-details>summary::-webkit-details-marker{display:none}.fee-details>summary>span{min-width:0}.fee-details>summary small{color:var(--muted);margin-top:5px;font-weight:400;display:block}.fee-details>summary>strong{white-space:nowrap;font-size:24px}.fee-details[open]>summary{border-bottom:1px solid var(--line);margin-bottom:18px;padding-bottom:18px}@media (max-width:760px){.wizard-shell .primary-packages{margin:20px 0;padding:16px}.wizard-shell .primary-packages h3{font-size:19px}.wizard-shell .primary-packages>p{font-size:14px;line-height:1.6}.wizard-shell .primary-package-grid{gap:12px;margin:16px 0 4px}.wizard-shell .primary-package-grid article{gap:6px;padding:16px}.wizard-shell .primary-package-grid h4{font-size:18px}.wizard-shell .primary-package-grid p{font-size:13px}.wizard-shell .subject-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.wizard-shell .subject-grid button{grid-template-columns:minmax(0,1fr) 20px;align-content:start;gap:8px;min-height:112px;padding:14px 12px}.wizard-shell .subject-grid .subject-icon{display:none}.wizard-shell .subject-grid strong{overflow-wrap:anywhere;font-size:15px;line-height:1.5}.wizard-shell .subject-grid .check{align-self:start;position:static}.wizard-shell .subject-grid small{grid-column:1/-1;margin:0;font-size:12px}.wizard-shell .package>.section-title{align-items:flex-start}.wizard-shell .package{padding:18px 14px}.mobile-day-picker{grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin:18px 0;display:grid}.mobile-day-picker button{white-space:normal;min-width:0;min-height:62px;padding:8px 4px;font-size:13px;line-height:1.5}.mobile-day-picker small{color:var(--muted);font-size:11px;display:block}.mobile-day-picker button[aria-pressed=true]{border-color:var(--accent);background:var(--soft);box-shadow:inset 0 0 0 1px var(--accent)}.week-grid>.mobile-day-hidden{display:none}.wizard-shell .schedule-summary{padding:18px 14px}.fee-details>summary{gap:10px}.fee-details>summary>strong{font-size:22px}.wizard-shell.bilingual-layout .subject-grid{grid-template-columns:minmax(0,1fr)}.wizard-shell.bilingual-layout .subject-grid button{min-height:84px}.wizard-shell.bilingual-layout .subject-grid strong{overflow-wrap:normal}}.family-overview{border:1px solid var(--line);background:var(--soft);border-radius:16px;margin:24px 0;padding:20px}.family-overview-heading{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.family-overview h3{margin:0;font-size:18px;line-height:1.5}.family-overview p{color:var(--muted);margin:12px 0;font-size:14px;line-height:1.7}.family-overview-total{flex-direction:column;gap:6px;display:flex}.family-overview-total span{font-size:13px}.family-overview-total strong{font-size:26px;line-height:1.3}.family-overview nav{gap:10px;display:grid}.family-overview a{border:1px solid var(--line);background:var(--card);color:var(--ink);border-radius:12px;justify-content:space-between;align-items:center;gap:12px;min-height:60px;padding:14px;text-decoration:none;display:flex}.family-overview a>span{min-width:0}.family-overview a strong{overflow-wrap:anywhere;font-size:15px;display:block}.family-overview a small{color:var(--muted);margin-top:5px;font-size:13px;display:block}.family-overview a:hover{border-color:var(--focus)}.family-overview a:focus-visible{outline:3px solid var(--focus);outline-offset:4px}.family-anchor:focus-visible{outline:3px solid var(--focus);outline-offset:4px}.family-overview-fee{text-align:right;flex-shrink:0}.family-anchor{scroll-margin-top:24px}@media (max-width:400px){.family-overview{padding:16px 12px}.family-overview a{padding:12px 10px}.day-mobile .course-row{flex-direction:column;align-items:stretch;gap:9px;display:flex}.day-mobile .course-row>.tag{align-self:flex-start}.day-mobile .course-row>span:not(.tag) small{color:var(--ink);font-variant-numeric:tabular-nums}}.desktop-course-details{border:1px solid var(--line);border-radius:12px;margin:20px 0;padding:16px}.desktop-course-details summary{cursor:pointer;font-weight:600}@media (max-width:1100px){.desktop-course-details{display:none}}@media (min-width:761px) and (max-width:1100px){.week-grid{display:block}.week-grid>.mobile-day-hidden{display:none}.day{border-right:0;border-bottom:1px solid var(--line)}.day h4{text-align:left;padding:12px 16px;font-size:16px}.day-timeline{display:none}.day-mobile{padding:0 16px;display:block}.day-mobile>small{padding:16px 0;display:block}.day-mobile .course-row{grid-template-columns:minmax(0,2fr) minmax(0,1fr) auto}.mobile-day-picker{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:20px 0;display:grid}.mobile-day-picker button{white-space:normal;min-width:0;min-height:64px;padding:10px}.mobile-day-picker small{color:var(--muted);margin-top:4px;display:block}.mobile-day-picker button[aria-pressed=true]{border-color:var(--accent);background:var(--soft);box-shadow:inset 0 0 0 1px var(--accent)}}.plan-child{border:1px solid var(--line);border-radius:18px;min-width:0;margin:24px 0;padding:24px}.plan-child .section-title{flex-wrap:wrap;gap:12px}.plan-child h3{overflow-wrap:anywhere}.plan-child label{margin:18px 0 8px;display:block}.plan-child input{width:100%}.plan-lessons{padding:0;list-style:none}.plan-lessons li{border-bottom:1px solid var(--line);overflow-wrap:anywhere;gap:5px;padding:14px 0;display:grid}.plan-lessons small{color:var(--muted)}.plan-downloads,.plan-contacts{flex-wrap:wrap;gap:12px;margin-top:18px;display:flex}.plan-downloads button,.plan-contacts a,.plan-contacts button{white-space:normal;overflow-wrap:anywhere;min-height:44px}.plan-contacts a{border-radius:10px;padding:12px 18px}.plan-enquiry{border-top:1px solid var(--line);margin-top:28px;padding-top:24px}.print-plan-fees{color:#292b30;overflow-wrap:anywhere;border:1px solid #d8b468;border-radius:12px;gap:8px;margin:18px 0;padding:20px;display:grid}.print-plan-fees>span{font-size:24px;font-weight:700}.print-plan-fees>small{font-size:13px}@media (max-width:600px){.plan-child{padding:16px}.plan-downloads,.plan-contacts{flex-direction:column}.plan-downloads button,.plan-contacts a{width:100%}}.student-status-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:24px 0;display:grid}.student-status-grid button{text-align:left;white-space:normal;padding:22px 18px;font-size:20px;line-height:1.5}.student-status-grid button.chosen{border-color:var(--accent);background:var(--accent-soft)}@media (max-width:600px){.student-status-grid{grid-template-columns:1fr}.student-status-grid button{padding:18px;font-size:18px}}.export-document .print-brand{border-bottom:1px solid #e4dccb;flex-wrap:nowrap;gap:20px;height:94px;padding:0;position:static}.active-child-context{background:var(--soft);border:1px solid var(--line);overflow-wrap:anywhere;border-radius:12px;margin-bottom:12px;padding:12px 16px}.active-child-context strong,.active-child-context small{display:block}.active-child-context small{color:var(--muted);margin:5px 0}.planner-intro{font-size:16px;line-height:1.7}#early-child-name{width:100%;margin:8px 0}#early-name-help{color:var(--muted);margin-bottom:20px;line-height:1.6;display:block}.tuition-guide{margin:16px 0}.tuition-guide summary{cursor:pointer;min-height:44px;padding:12px 0}.fee-estimate{border:1px solid var(--line);border-radius:12px;padding:14px}.fee-estimate small{margin-top:8px;display:block}.tuition-tiers{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;padding:0;list-style:none;display:grid}.tuition-tiers li{border:1px solid var(--line);border-radius:6px;justify-content:space-between;gap:8px;padding:8px;font-size:14px;display:flex}.tuition-tiers .current-tier{border-color:var(--accent);font-weight:700}.family-at-a-glance{border:1px solid var(--line);border-radius:12px;margin:20px 0;padding:16px}.family-at-a-glance>a{border-bottom:1px solid var(--line);color:inherit;justify-content:space-between;gap:12px;padding:14px 0;text-decoration:none;display:flex}.family-at-a-glance small{margin-top:6px;display:block}.family-at-a-glance strong{white-space:nowrap}.family-at-a-glance p strong{white-space:normal}.plan-edit-actions{flex-wrap:wrap;gap:8px;margin-bottom:18px;display:flex}.plan-edit-actions button{min-height:44px;font-size:14px}.child-class-details>summary,.other-downloads>summary{cursor:pointer;padding:14px 0;font-weight:600}.other-downloads{margin:18px 0}.plan-enquiry li{margin-bottom:12px;line-height:1.7}.plan-child{scroll-margin-top:16px}.grade-change-confirm button{margin:6px}.grade-grid button small{white-space:normal;overflow-wrap:anywhere}.grade-grid button{min-width:0}@media (max-width:600px){.grade-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.grade-grid button{padding:14px 8px}.grade-grid small{font-size:13px}.family-at-a-glance>a,.active-child-context{font-size:14px}.download-bar{flex-wrap:wrap}.download-bar>button{white-space:normal;flex:100%}}.welcome-heading{padding:12px 0 8px}.welcome-heading h2{letter-spacing:-.035em;margin:14px 0;font-size:clamp(28px,3vw,40px);line-height:1.3}.welcome-heading>p:last-child{color:var(--muted);letter-spacing:.03em;font-size:15px}.student-status-grid{grid-template-columns:1fr;gap:12px;margin:26px 0}.student-status-grid button{border:1px solid var(--line);background:0 0;border-radius:16px;align-items:center;gap:18px;padding:22px 24px;transition:background .15s,border-color .15s;display:flex}.student-status-grid button.chosen{background:var(--accent-soft);border-color:var(--accent);box-shadow:inset 3px 0 var(--accent)}.status-number{color:var(--muted);letter-spacing:.08em;font-size:12px}.status-copy{flex:1;min-width:0}.status-copy strong{font-size:21px;line-height:1.5;display:block}.status-copy small{color:var(--muted);margin-top:4px;font-size:15px;line-height:1.6;display:block}.status-mark{color:var(--accent);font-size:20px}.early-name-details{border-top:1px solid var(--line);padding:16px 0}.early-name-details summary{cursor:pointer;align-items:center;min-height:44px;font-size:14px;display:flex}.early-name-details summary:after{content:"＋";margin-left:auto}.early-name-details[open] summary:after{content:"−"}.welcome-note{color:var(--muted);margin:12px 0 4px;font-size:13px;line-height:1.8}.active-child-context{border:0;border-bottom:1px solid var(--line);background:0 0;border-radius:0;padding:0 0 14px}.fee-estimate{border:0;border-left:3px solid var(--accent);border-radius:0;padding:6px 0 6px 16px}.family-at-a-glance{background:var(--soft);border:0;border-radius:18px;padding:22px}@media (max-width:600px){.student-status-grid button{gap:12px;padding:18px 16px}.status-copy strong{font-size:19px}.status-copy small{font-size:14px}.welcome-heading{padding-top:4px}.welcome-heading h2{font-size:28px}}.language-welcome{max-width:640px;margin:auto;padding:12px 0}.welcome-contacts{flex-wrap:wrap;gap:12px;margin:12px 0 30px;display:flex}.welcome-contacts a{border:1px solid var(--line);color:var(--text);border-radius:12px;padding:14px;text-decoration:none;display:block}.language-cards{gap:14px;display:grid}.language-cards button{text-align:left;justify-content:space-between;align-items:center;min-height:76px;padding:22px;font-size:22px;display:flex}.language-cards span{color:var(--accent)}.no-step-navigation .panel{padding-bottom:24px!important}.no-step-navigation .flow{padding-bottom:0!important}.grade-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.session-choices{flex-wrap:wrap;gap:10px;margin:20px 0;display:flex}.session-choices button{min-height:48px}.official-image-button{border-radius:12px;width:100%;padding:0;display:block;overflow:hidden}.official-image-button img{object-fit:contain;width:100%;height:auto;display:block}.official-image-button span{padding:12px;display:block}.timetable-lightbox{border:1px solid var(--line);background:var(--bg);width:96vw;max-width:1600px;max-height:95dvh;color:var(--text);border-radius:16px;padding:16px}.timetable-lightbox::backdrop{background:#000000d9}.lightbox-close{background:var(--surface);z-index:1;min-height:44px;margin:0 0 12px auto;display:block;position:sticky;top:0}.lightbox-scroll{max-height:78dvh;overflow:auto}.lightbox-scroll img{width:100%;min-width:1000px;max-width:none;height:auto;display:block}.fee-original dd{color:var(--muted)}.fee-discount dt,.fee-discount dd{color:#237149!important}[data-theme=dark] .fee-discount dt,[data-theme=dark] .fee-discount dd{color:#95dfb0!important}.education-investment{border-left:3px solid var(--accent);margin:22px 0;padding:6px 0 6px 18px;line-height:1.75}.education-investment small{color:var(--muted)}@media (max-width:600px){.welcome-contacts{flex-direction:column}.language-cards button{min-height:70px}.timetable-lightbox{padding:10px}.grade-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.footer-admin{color:var(--muted);align-items:center;min-height:44px;margin-left:auto;font-size:12px;text-decoration:none;display:inline-flex}.student-category{border:0;gap:10px;margin:24px 0;padding:0;display:grid}.student-category legend{margin-bottom:12px;font-weight:600}.student-category label{border:1px solid var(--line);cursor:pointer;border-radius:12px;align-items:center;gap:12px;margin:0;padding:16px;display:flex}.student-category label.chosen{border-color:var(--accent);background:var(--accent-soft)}.student-category input{width:20px;height:20px;accent-color:var(--accent);flex:none;margin:0}.student-category small{color:var(--muted);margin-top:4px;display:block}.subject-timetable{margin:0 0 18px}.subject-timetable>summary{cursor:pointer;min-height:44px;color:var(--accent);padding:12px 0;font-weight:600}body>header,.language-header{height:auto;min-height:80px}.language-header{flex-wrap:nowrap;padding-top:10px;padding-bottom:10px}.language-header .brand{min-width:0}.language-header .brand img.brand-wordmark{width:210px;max-width:100%;height:auto}.wizard-shell{padding-top:20px}.language-welcome{padding-top:0}@media (max-width:600px){.language-header{gap:12px;min-height:78px}.language-header .brand{flex:1}.language-header .header-tools{flex:none}.wizard-shell{padding-top:14px}.welcome-contacts{margin-top:4px;margin-bottom:20px}.language-cards button{min-height:64px}.footer-admin{margin-left:0}}.student-category label input[type=radio]{flex:0 0 20px;width:20px;min-width:20px;max-width:20px;height:20px;margin:0;padding:0;display:block}.student-category label>span{flex:1;min-width:0}.student-category{min-width:0}#student-name{width:100%;margin:8px 0;display:block}#student-name-hint{line-height:1.6;display:block}.panel>.plan-enquiry{border-top:0;margin-top:0;padding-top:0}.review-family-total{overflow-wrap:anywhere;min-width:0}.review-family-total strong{white-space:normal;overflow-wrap:anywhere;max-width:100%}.family-first-payment>span,.family-first-payment>strong{display:block}.family-first-payment>span{margin-bottom:6px;font-weight:600}.family-first-payment>strong{line-height:1.3}.language-home{padding-top:12px;padding-bottom:12px}.language-home .wizard-workspace{max-width:560px;margin-top:0}.language-home .panel{min-height:0;padding:22px!important}.language-home .language-welcome{padding:0}.welcome-contact-section{margin:0 0 20px}.welcome-contact-heading{align-items:center;gap:8px;margin-bottom:10px;font-size:16px;font-weight:600;display:flex}.welcome-contact-heading svg{color:var(--accent);flex:none}.language-home .welcome-contacts{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0;display:grid}.language-home .welcome-contacts a{white-space:nowrap;font-variant-numeric:tabular-nums;letter-spacing:0;justify-content:center;align-items:center;min-width:0;min-height:44px;padding:10px 6px;font-size:clamp(12px,3.4vw,15px);line-height:1.3;display:flex}.language-home .language-cards{gap:10px}.language-home .language-cards button{min-height:56px;padding:13px 16px;font-size:20px}.language-home footer{border:0;justify-content:flex-end;max-width:560px;margin:12px auto 0;padding:0}.language-home .footer-admin{margin-left:auto}.language-header{min-height:76px;padding-top:8px;padding-bottom:8px}.language-header .brand img.brand-wordmark{width:200px}.language-header .header-tools button{min-width:40px;min-height:40px;padding:8px}@media (max-width:600px){.language-home{padding-top:10px}.language-home .panel{padding:16px!important}.language-header{min-height:72px}.language-header .brand img.brand-wordmark{width:190px}.language-home .language-cards button{min-height:52px;font-size:19px}.welcome-contact-section{margin-bottom:18px}}.brand-block{flex-direction:column;align-items:flex-start;gap:5px;min-width:0;display:flex}.brand-tagline{color:var(--muted);letter-spacing:.05em;font-size:13px;line-height:1.5}.brand-block .brand{max-width:100%}@media (max-width:600px){.brand-block{flex:1}.brand-tagline{letter-spacing:0;font-size:12px}body>header{flex-wrap:wrap;align-items:center;gap:14px;padding:20px 20px 18px}body>header .brand-block{flex:180px;gap:6px}body>header .brand img.brand-wordmark{width:190px;max-width:100%;height:auto}body>header .header-tools{margin-left:auto}body>header .header-tools select{max-width:145px;min-height:44px;font-size:14px}body>header.language-header{border-bottom:0;justify-content:center;padding:24px 20px 20px}.language-header .brand-block{flex:0 240px;align-items:center;gap:6px}.language-header .brand img.brand-wordmark{width:230px}.language-header .header-tools:empty{display:none}.brand-tagline{letter-spacing:.06em;font-size:13px;line-height:1.6}.language-home{padding:0 24px 24px}.language-home .panel{box-shadow:none;background:0 0;border:0;padding:0!important}.language-home .welcome-contact-section{border-bottom:1px solid var(--line);margin:0 0 28px;padding:18px 0 24px}.language-home .welcome-contact-heading{justify-content:center;margin-bottom:14px;font-size:15px}.language-home .welcome-contacts{gap:10px}.language-home .welcome-contacts a{background:var(--card);border-radius:12px;min-height:46px;font-size:clamp(12px,3.4vw,14px)}.language-home .language-cards{gap:14px}.language-home .language-cards button{background:var(--card);border-radius:14px;min-height:60px;padding:16px 20px;font-size:19px}.wizard-shell:not(.language-home){padding-inline:20px}.wizard-shell .wizard-progress{margin-bottom:20px}.wizard-shell .wizard-progress>div{align-items:baseline;font-size:12px;line-height:1.6}.wizard-shell .child-tabs{align-items:center;gap:10px;margin-bottom:24px}.wizard-shell .child-tabs button{padding:10px 12px;line-height:1.5}.wizard-shell .child-tabs small{margin:3px 0 0;font-size:12px;display:block}.wizard-shell .panel h2{letter-spacing:0;margin-bottom:24px;font-size:22px;line-height:1.5}.wizard-shell .grade-grid{gap:10px}.wizard-shell .grade-grid button{border-radius:12px;padding:16px 5px}.wizard-shell .grade-grid small{font-size:12px;line-height:1.6}.wizard-shell .subject-grid{gap:12px}.wizard-shell .subject-grid button{padding:18px 14px;line-height:1.5}.wizard-shell .navigation{gap:12px;margin-top:28px;padding-top:24px}.wizard-shell footer{gap:12px;font-size:12px;line-height:1.8}.wizard-shell .child-tabs{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.wizard-shell .child-tabs button{white-space:normal;overflow-wrap:anywhere;min-width:0}.wizard-shell .child-tabs .danger{text-align:right;background:0 0;border-color:#0000;grid-column:1/-1;justify-self:end;padding:8px 0;font-size:12px}}.header-restart{color:var(--muted);background:0 0;border:0;flex:0 auto;max-width:120px;min-height:44px;padding:8px;font-size:12px;line-height:1.5}.header-restart:hover{background:var(--soft)}@media (max-width:600px){body>header:not(.language-header){flex-wrap:nowrap;gap:8px}.header-restart{white-space:normal;overflow-wrap:anywhere;max-width:88px;font-size:12px}}.counter-admin-row{border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:end;gap:12px;margin:16px 0;padding-bottom:16px;display:flex}.counter-admin-row label{flex:1;min-width:130px}.counter-admin-row input,.counter-admin-row select{width:100%;margin-top:6px;display:block}
