/*! 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;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}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.hidden{display:none}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}}:root{--ink:#182321;--muted:#65716e;--line:#dce5e1;--paper:#f7faf8;--white:#fff;--deep:#173f3a;--mint:#33a884;--coral:#e76f51;--sky:#3c82b8;--sun:#e1a834}*{box-sizing:border-box}html{background:var(--paper)}body{background:var(--paper);color:var(--ink);margin:0;font-family:Arial,Microsoft YaHei,sans-serif}button{font:inherit}button:disabled{cursor:not-allowed;opacity:.55}.app-shell{grid-template-columns:230px minmax(0,1fr);min-height:100vh;display:grid}.side-rail{background:var(--white);border-right:1px solid var(--line);flex-direction:column;height:100vh;padding:28px 18px 22px;display:flex;position:sticky;top:0}.brand-mark{align-items:center;gap:12px;padding:0 9px;display:flex}.brand-mark>span:last-child,.profile-chip span{flex-direction:column;display:flex}.brand-mark strong{font-size:17px}.brand-mark small,.profile-chip small{color:var(--muted);margin-top:3px;font-size:11px}.brand-icon{width:41px;height:41px;color:var(--white);background:var(--deep);border-radius:8px;place-items:center;display:grid}.main-nav{gap:6px;margin-top:50px;display:grid}.nav-item{color:#596561;cursor:pointer;text-align:left;background:0 0;border:0;border-radius:7px;align-items:center;gap:12px;width:100%;min-height:44px;padding:0 12px;display:flex}.nav-item:hover{color:var(--deep);background:#f1f6f3}.nav-item.active{color:var(--deep);background:#dff5ed;font-weight:700}.rail-footer{margin-top:auto}.profile-chip{border-top:1px solid var(--line);align-items:center;gap:10px;margin:16px 6px 0;padding-top:18px;display:flex}.workspace{min-width:0;padding:30px clamp(24px,4vw,64px) 48px}.topbar{justify-content:space-between;align-items:center;gap:22px;min-height:62px;display:flex}.topbar p,.section-heading p,.companion-head p{color:var(--muted);margin:0 0 5px;font-size:12px}.topbar h1{letter-spacing:0;margin:0;font-size:31px;line-height:1.2}.top-actions{align-items:center;gap:10px;display:flex}.icon-button,.round-button{border:1px solid var(--line);background:var(--white);width:42px;height:42px;color:var(--deep);cursor:pointer;border-radius:7px;place-items:center;display:grid}.icon-button:hover,.round-button:hover{border-color:var(--mint)}.parent-entry{border:1px solid var(--line);background:var(--white);height:42px;color:var(--ink);cursor:pointer;border-radius:7px;align-items:center;gap:4px;padding:0 13px;display:flex}.content-grid{grid-template-columns:minmax(0,1fr) 290px;align-items:start;gap:26px;margin-top:30px;display:grid}.main-column{min-width:0}.mission-band{background:var(--deep);min-height:330px;color:var(--white);border-radius:8px;grid-template-columns:minmax(0,1.25fr) minmax(250px,.75fr);padding:clamp(28px,4vw,48px);display:grid;position:relative;overflow:hidden}.mission-copy{z-index:2;align-self:center;position:relative}.eyebrow{color:#9fe1ca;align-items:center;gap:7px;font-size:13px;font-weight:700;display:flex}.mission-copy h2{letter-spacing:0;max-width:560px;margin:15px 0 12px;font-size:47px;line-height:1.12}.mission-copy>p{color:#c6d8d3;max-width:500px;margin:0;font-size:15px;line-height:1.7}.mission-meta{color:#d7e6e1;flex-wrap:wrap;gap:18px;margin-top:22px;font-size:13px;display:flex}.mission-meta span{align-items:center;gap:7px;display:flex}.primary-action{color:#20312d;cursor:pointer;background:#f4c45a;border:0;border-radius:7px;align-items:center;gap:9px;height:48px;margin-top:26px;padding:0 20px;font-weight:800;display:inline-flex;box-shadow:0 7px #bd8c27}.primary-action:hover{transform:translateY(1px);box-shadow:0 6px #bd8c27}.invention-visual{align-self:center;min-height:250px;position:relative}.machine-core{color:#183a35;background:#9fe1ca;border:10px solid #32635a;border-radius:50%;place-items:center;width:112px;height:112px;display:grid;position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-50%);box-shadow:0 0 0 1px #b8eee0}.orbit{border:1px solid #5a827a;border-radius:50%;position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-50%)}.orbit-one{width:190px;height:190px}.orbit-two{border-style:dashed;width:260px;height:260px}.part-label{color:#dcece8;background:#214b45;border:1px solid #52776f;border-radius:5px;padding:6px 9px;font-size:11px;position:absolute}.label-a{top:9%;left:7%}.label-b{top:42%;right:0}.label-c{color:#ffd776;bottom:5%;left:3%}.section-block{margin-top:34px}.section-heading{justify-content:space-between;align-items:center;gap:16px;display:flex}.section-heading h2,.companion-head h2{letter-spacing:0;margin:0;font-size:20px}.section-heading>button{color:var(--deep);cursor:pointer;background:0 0;border:0;align-items:center;gap:2px;font-size:13px;display:flex}.subject-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:16px;display:grid}.subject-card{border:1px solid var(--line);border-top:3px solid var(--subject-color);background:var(--white);border-radius:7px;grid-template-columns:auto minmax(0,1fr);gap:13px;min-width:0;padding:18px;display:grid}.subject-icon{width:42px;height:42px;color:var(--subject-color);background:#eff5f2;border-radius:7px;place-items:center;display:grid}.subject-info{min-width:0}.subject-info>div{justify-content:space-between;gap:8px;display:flex}.subject-info h3{margin:2px 0 0;font-size:16px}.subject-info strong{color:var(--subject-color);font-size:14px}.subject-info p{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin:8px 0 12px;font-size:12px;overflow:hidden}.progress-track{background:#edf1ef;border-radius:3px;height:5px;display:block;overflow:hidden}.progress-track span{background:var(--subject-color);height:100%;display:block}.subject-card .round-button{grid-column:1/-1;width:100%;height:32px;margin-top:3px}.insight-column{gap:18px;display:grid}.companion-panel,.status-panel{border:1px solid var(--line);background:var(--white);border-radius:8px;padding:22px}.companion-panel{border-top:4px solid var(--coral)}.companion-head{align-items:center;gap:10px;display:flex}.companion-head>span{width:40px;height:40px;color:var(--coral);background:#fbe8e2;border-radius:50%;place-items:center;display:grid}.companion-panel blockquote{color:#42504c;margin:20px 0;font-size:14px;line-height:1.75}.companion-panel button{color:#9a3f29;cursor:pointer;background:#fbe8e2;border:1px solid #f0b5a5;border-radius:7px;width:100%;height:40px;font-weight:700}.section-heading.compact>svg{color:var(--sun)}.status-stats{grid-template-columns:1fr 1fr;gap:10px;margin:20px 0;display:grid}.status-stats div{background:#f3f7f5;border-radius:6px;padding:12px}.status-stats strong{font-size:23px;display:block}.status-stats span{color:var(--muted);font-size:11px}.week-row{justify-content:space-between;gap:7px;display:flex}.week-row span{width:32px;height:32px;color:var(--muted);background:#eef2f0;border-radius:50%;place-items:center;font-size:12px;display:grid}.week-row .done{color:var(--white);background:var(--mint)}.gentle-note{color:var(--muted);margin:18px 0 0;font-size:12px;line-height:1.6}.mobile-nav{display:none}@media (max-width:1100px){.content-grid{grid-template-columns:1fr}.insight-column{grid-template-columns:1fr 1fr}}@media (max-width:780px){.app-shell{padding-bottom:76px;display:block}.side-rail{display:none}.workspace{padding:20px 16px 30px}.topbar{align-items:flex-start}.topbar p{font-size:11px}.topbar h1{max-width:230px}.parent-entry{display:none}.content-grid{margin-top:22px}.mission-band{grid-template-columns:1fr;min-height:auto;padding:28px 24px}.invention-visual{min-height:220px;margin-top:20px}.subject-list,.insight-column{grid-template-columns:1fr}.subject-card{grid-template-columns:auto minmax(0,1fr) auto;align-items:center}.subject-card .round-button{grid-column:auto;width:36px}.mobile-nav{z-index:20;height:68px;padding:7px 8px max(7px, env(safe-area-inset-bottom));border-top:1px solid var(--line);background:#fffffff5;grid-template-columns:repeat(4,1fr);display:grid;position:fixed;bottom:0;left:0;right:0}.mobile-nav button{color:var(--muted);background:0 0;border:0;flex-direction:column;justify-content:center;align-items:center;gap:3px;font-size:10px;display:flex}.mobile-nav button.active{color:var(--deep);font-weight:700}}@media (max-width:420px){.mission-copy h2{font-size:30px}.invention-visual{transform:scale(.9)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}.tool-view,.parent-dashboard{max-width:1040px;margin-top:38px}.view-intro p{color:var(--muted);margin:0 0 7px;font-size:13px}.view-intro h2{letter-spacing:0;margin:0;font-size:26px}.practice-list,.error-list{gap:12px;margin-top:24px;display:grid}.practice-row,.error-row{border:1px solid var(--line);background:var(--white);border-radius:7px;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:18px;min-width:0;padding:18px 20px;display:grid}.practice-icon{border-radius:7px;place-items:center;width:44px;height:44px;display:grid}.practice-icon.math{color:#167659;background:#dff5ed}.practice-icon.chinese{color:#a5442c;background:#fbe8e2}.practice-icon.english{color:#296992;background:#e4f1f8}.practice-row h3,.error-row h3{letter-spacing:0;margin:0 0 7px;font-size:16px}.practice-row p,.error-row p{color:var(--muted);margin:0;font-size:12px}.mastery{text-align:right;flex-direction:column;min-width:60px;display:flex}.mastery strong{font-size:18px}.mastery small{color:var(--muted);margin-top:3px;font-size:10px}.secondary-action{min-height:40px;color:var(--deep);cursor:pointer;background:#eff8f4;border:1px solid #aaccc1;border-radius:7px;justify-content:center;align-items:center;gap:7px;padding:0 14px;font-weight:700;display:inline-flex}.secondary-action:hover{border-color:var(--mint);background:#e1f4ed}.secondary-action:disabled{opacity:.58;cursor:wait}.exam-view{max-width:760px}.exam-spec{border:1px solid var(--line);background:var(--white);border-radius:7px;grid-template-columns:repeat(3,1fr);margin:28px 0 20px;display:grid}.exam-spec div{text-align:center;flex-direction:column;padding:22px;display:flex}.exam-spec div+div{border-left:1px solid var(--line)}.exam-spec strong{font-size:27px}.exam-spec span{color:var(--muted);margin-top:5px;font-size:11px}.exam-sections{border-top:1px solid var(--line)}.exam-sections p{border-bottom:1px solid var(--line);color:#394743;align-items:center;gap:10px;margin:0;padding:16px 2px;font-size:14px;display:flex}.exam-sections p span{color:var(--muted);margin-left:auto}.exam-note{max-width:650px;color:var(--muted);margin:20px 0 0;font-size:13px;line-height:1.7}.exam-view>.primary-action{margin-top:24px}.exam-center{max-width:1120px;padding-bottom:40px}.exam-center-head{justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.formal-badge{color:#40534d;background:#f5f9f7;border:1px solid #bed0ca;border-radius:6px;align-items:center;gap:6px;min-height:34px;padding:0 10px;font-size:11px;font-weight:800;display:inline-flex}.active-exam-banner{color:var(--white);background:var(--deep);border-radius:7px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;margin-top:22px;padding:17px 19px;display:grid}.active-exam-banner>span{color:#7e5611;background:var(--sun);border-radius:50%;place-items:center;width:42px;height:42px;display:grid}.active-exam-banner p,.active-exam-banner h3{margin:0}.active-exam-banner p{color:#bcd0ca;font-size:10px}.active-exam-banner h3{margin-top:4px;font-size:15px}.active-exam-banner .primary-action{color:var(--deep);background:var(--white)}.exam-filters{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:20px;margin-top:28px;display:flex}.segmented-control{background:#eef4f1;border:1px solid #c8d7d2;border-radius:7px;gap:2px;padding:3px;display:inline-flex}.segmented-control button{color:#53645f;cursor:pointer;background:0 0;border:0;border-radius:5px;min-width:74px;height:34px;padding:0 12px;font-weight:700}.segmented-control button.active{color:var(--white);background:var(--deep)}.exam-kind-tabs{align-self:stretch;display:flex}.exam-kind-tabs button{min-width:90px;color:var(--muted);cursor:pointer;background:0 0;border:0;padding:0 12px 12px;font-weight:700;position:relative}.exam-kind-tabs button.active{color:var(--deep)}.exam-kind-tabs button.active:after{content:"";background:var(--coral);height:3px;position:absolute;bottom:-1px;left:10px;right:10px}.exam-center-message{color:#9a432d;background:#fdf1ed;border:1px solid #edb6a8;border-radius:7px;align-items:center;gap:8px;margin-top:18px;padding:12px 14px;font-size:12px;display:flex}.exam-catalog-loading{min-height:250px;color:var(--muted);align-content:center;justify-items:center;gap:12px;font-size:12px;display:grid}.exam-catalog-loading svg,.spin{animation:1s linear infinite ui-spin}@keyframes ui-spin{to{transform:rotate(360deg)}}.paper-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:22px;display:grid}.paper-card{border:1px solid var(--line);border-top:3px solid var(--mint);background:var(--white);border-radius:7px;flex-direction:column;min-width:0;min-height:298px;padding:19px;display:flex}.paper-card.chinese{border-top-color:var(--coral)}.paper-card.english{border-top-color:var(--sky)}.paper-card>header{justify-content:space-between;align-items:center;display:flex}.paper-card>header>span{color:#167659;background:#dff5ed;border-radius:7px;place-items:center;width:39px;height:39px;display:grid}.paper-card.chinese>header>span{color:#a5442c;background:#fbe8e2}.paper-card.english>header>span{color:#296992;background:#e4f1f8}.paper-card>header small{color:var(--muted);font-size:10px}.paper-card h3{overflow-wrap:anywhere;margin:15px 0 7px;font-size:17px;line-height:1.45}.paper-card>p{min-height:34px;color:var(--muted);margin:0;font-size:11px;line-height:1.55}.paper-meta{color:#53635e;flex-wrap:wrap;gap:7px 14px;margin-top:14px;display:flex}.paper-meta span{align-items:center;gap:5px;font-size:10px;display:inline-flex}.paper-sections{flex-wrap:wrap;gap:5px;margin-top:14px;display:flex}.paper-sections span{color:#596a64;background:#edf3f0;border-radius:4px;padding:4px 6px;font-size:9px}.paper-card>footer{align-items:center;gap:8px;margin-top:auto;padding-top:17px;display:flex}.paper-card>footer .primary-action{flex:1}.fresh-paper{color:#8f452f;background:#fff4f0;flex:none}.generation-status{align-items:center;gap:5px;display:flex;color:#52645e!important;min-height:21px!important;margin-top:9px!important}.generation-status .thinking-dots{margin:0 2px 0 0}.empty-state{text-align:center;background:var(--white);border:1px dashed #b8ccc5;border-radius:7px;margin-top:28px;padding:54px 24px}.empty-state svg{color:var(--mint)}.empty-state h3{margin:13px 0 7px}.empty-state p{color:var(--muted);margin:0;font-size:13px}.error-row{grid-template-columns:auto minmax(0,1fr) auto}.error-view-intro{justify-content:space-between;align-items:center;gap:16px;display:flex}.wrong-sync-message{color:#8f452f;background:#fff5f1;border:1px solid #e8c0b5;border-radius:7px;align-items:center;gap:7px;margin:18px 0 -7px;padding:10px 12px;font-size:12px;display:flex}.error-number{color:#a5442c;background:#fbe8e2;border-radius:50%;place-items:center;width:32px;height:32px;font-weight:800;display:grid}.error-row small{color:#9a4b37;margin-top:8px;font-size:11px;display:block}.parent-metrics{border:1px solid var(--line);background:var(--white);border-radius:7px;grid-template-columns:repeat(3,1fr);display:grid}.parent-metrics div{flex-direction:column;padding:22px;display:flex}.parent-metrics div+div{border-left:1px solid var(--line)}.parent-metrics span,.parent-metrics small{color:var(--muted);font-size:11px}.parent-metrics strong{margin:8px 0 5px;font-size:26px}.report-band{color:var(--white);background:var(--deep);border-radius:8px;justify-content:space-between;align-items:center;gap:30px;margin-top:20px;padding:30px;display:flex}.report-band>div{max-width:720px}.report-band>div>p:first-child{color:#9fe1ca;margin:0 0 8px;font-size:12px;font-weight:800}.report-band h2{letter-spacing:0;margin:0 0 12px;font-size:22px}.report-band h2+p{color:#c6d8d3;margin:0;font-size:13px;line-height:1.8}.report-band>svg{color:#f4c45a;flex:none}.parent-detail{grid-template-columns:1fr 1fr;gap:14px;margin-top:20px;display:grid}.parent-detail section{border-top:3px solid var(--mint);padding:22px 2px}.parent-detail section+section{border-color:var(--coral)}.parent-detail h2{margin:0 0 9px;font-size:17px}.parent-detail p{color:var(--muted);margin:0;font-size:13px;line-height:1.7}.account-security{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:18px;margin-top:18px;padding:20px 2px;display:flex}.account-security>div{align-items:center;gap:12px;display:flex}.account-security>div>span{color:#8c4a1e;background:#fff0dc;border-radius:7px;place-items:center;width:40px;height:40px;display:grid}.account-security h2,.account-security p{margin:0}.account-security h2{font-size:16px}.account-security p{color:var(--muted);margin-top:5px;font-size:12px}.dialog-backdrop{z-index:50;background:#0d1e1b85;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.companion-dialog{background:var(--white);border-radius:8px;grid-template-rows:auto minmax(0,1fr) auto;width:min(920px,100%);height:min(760px,100vh - 36px);min-height:560px;display:grid;overflow:hidden;box-shadow:0 24px 70px #0b1f1b3d}.password-dialog{background:var(--white);border-radius:8px;width:min(470px,100%);padding:24px;box-shadow:0 24px 70px #0b1f1b3d}.exam-confirm-backdrop{z-index:80}.exam-confirm-dialog{background:var(--white);border-radius:8px;grid-template-columns:auto minmax(0,1fr);gap:15px;width:min(470px,100%);padding:26px;display:grid;box-shadow:0 24px 70px #0b1f1b3d}.exam-confirm-dialog>span{color:#a8442c;background:#fbe8e2;border-radius:7px;place-items:center;width:44px;height:44px;display:grid}.exam-confirm-dialog h2,.exam-confirm-dialog p{margin:0}.exam-confirm-dialog h2{letter-spacing:0;font-size:19px}.exam-confirm-dialog p{color:var(--muted);margin-top:8px;font-size:13px;line-height:1.7}.exam-confirm-dialog footer{grid-column:1/-1;justify-content:flex-end;gap:9px;margin-top:10px;display:flex}.exam-confirm-dialog .danger{background:#a8442c}.security-avatar{color:#8c4a1e;background:#fff0dc;border-radius:7px;place-items:center;width:42px;height:42px;display:grid}.password-form{margin-top:22px;display:grid}.password-form label{color:#42524d;margin:0 0 7px;font-size:12px;font-weight:700}.password-form input{width:100%;height:44px;color:var(--ink);border:1px solid #cbd9d4;border-radius:7px;outline:0;margin-bottom:15px;padding:0 13px}.password-form input:focus{border-color:var(--mint);box-shadow:0 0 0 3px #dff5ed}.password-message{color:#ae432c;visibility:hidden;min-height:18px;margin:-3px 0 8px;font-size:12px}.password-message.visible{visibility:visible}.password-success{text-align:center;justify-items:center;gap:16px;padding:34px 4px 8px;display:grid}.password-success>svg{color:var(--mint)}.password-success p{color:var(--muted);margin:0;font-size:13px;line-height:1.7}.dialog-title{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;display:grid}.dialog-title p,.dialog-title h2{margin:0}.dialog-title p{color:var(--muted);font-size:11px}.dialog-title h2{margin-top:3px;font-size:19px}.companion-avatar{color:#a5442c;background:#fbe8e2;border-radius:50%;place-items:center;width:42px;height:42px;display:grid}.companion-dialog-header{border-bottom:1px solid var(--line);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;min-height:78px;padding:16px 22px;display:grid}.companion-dialog-header p,.companion-dialog-header h2{margin:0}.companion-dialog-header p{color:var(--muted);font-size:11px}.companion-dialog-header h2{letter-spacing:0;margin-top:3px;font-size:20px}.companion-transcript{background:#f4f8f6;min-height:0;padding:26px clamp(20px,5vw,52px);overflow-y:auto}.chat-empty{text-align:center;align-content:center;justify-items:center;min-height:100%;display:grid}.chat-empty>span{color:#a5442c;background:#fbe8e2;border-radius:50%;place-items:center;width:58px;height:58px;display:grid}.chat-empty h3{letter-spacing:0;margin:16px 0 18px;font-size:20px}.quick-prompt-list{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.quick-prompt-list button{color:#42534e;background:var(--white);cursor:pointer;border:1px solid #c8d8d2;border-radius:7px;min-height:38px;padding:0 12px}.quick-prompt-list button:hover{color:var(--deep);border-color:var(--mint)}.chat-message{gap:6px;width:min(78%,650px);margin-bottom:22px;display:grid}.chat-message>small{color:var(--muted);font-size:10px}.chat-message.user{justify-items:end;margin-left:auto}.message-body{background:var(--white);border:1px solid #d5e0dc;border-radius:7px;padding:14px 16px}.chat-message.user .message-body{color:var(--white);border-color:var(--deep);background:var(--deep)}.message-body>p{white-space:pre-wrap;margin:0;font-size:14px;line-height:1.75}.tutor-guide{border-top:1px solid var(--line);margin-top:14px;padding-top:13px}.tutor-guide h3{color:#8d452f;letter-spacing:0;margin:0 0 9px;font-size:12px}.tutor-guide ol{color:#40504b;margin:0;padding-left:22px}.tutor-guide li{padding-left:3px;font-size:13px;line-height:1.75}.tutor-visual{border-top:1px solid var(--line);margin:15px 0 0;padding:14px 0 0}.tutor-visual.number_line{overflow-x:auto}.tutor-visual figcaption{color:var(--deep);align-items:center;gap:7px;margin-bottom:13px;font-size:12px;display:flex}.visual-bars{gap:11px;display:grid}.visual-bar-row{grid-template-columns:minmax(90px,150px) minmax(0,1fr);align-items:center;gap:12px;display:grid}.visual-bar-row>div{flex-direction:column;min-width:0;display:flex}.visual-bar-row strong{overflow-wrap:anywhere;font-size:12px}.visual-bar-row small{overflow-wrap:anywhere;color:var(--muted);margin-top:2px;font-size:9px}.visual-bar-track{background:#eef3f1;border:1px solid #d5dedb;height:20px;display:block;overflow:hidden}.visual-bar-track>span{background:var(--mint);height:100%;display:block}.visual-bar-row:nth-child(2) .visual-bar-track>span{background:var(--coral)}.visual-bar-row:nth-child(3) .visual-bar-track>span{background:var(--sky)}.visual-bar-row:nth-child(4) .visual-bar-track>span{background:var(--sun)}.visual-number-line{min-width:520px;height:88px;margin-top:3px;position:relative;overflow:hidden}.visual-number-line:before{content:"";background:#9cb5ad;height:2px;position:absolute;top:7px;left:6%;right:6%}.number-point{z-index:1;text-align:center;justify-items:center;width:92px;display:grid;position:absolute;top:0;transform:translate(-50%)}.number-point>span{border:3px solid var(--white);background:var(--sky);border-radius:50%;width:14px;height:14px;box-shadow:0 0 0 1px #7aa1ba}.number-point:nth-child(2n)>span{background:var(--coral);box-shadow:0 0 0 1px #c87b67}.number-point strong{overflow-wrap:anywhere;max-width:90px;margin-top:7px;font-size:11px}.number-point small{overflow-wrap:anywhere;max-width:90px;color:var(--muted);margin-top:3px;font-size:9px;line-height:1.4}.visual-flow{align-items:stretch;display:flex;overflow-x:auto}.visual-flow-step{flex:none;align-items:center;display:flex}.visual-flow-step>div{background:#edf7f3;grid-template-columns:auto minmax(0,1fr);align-content:start;gap:5px 7px;width:130px;min-height:88px;padding:10px;display:grid}.visual-flow-step:nth-child(2)>div{background:#fff1ed}.visual-flow-step:nth-child(3)>div{background:#eaf4fa}.visual-flow-step:nth-child(4)>div{background:#fff7dd}.visual-flow-step>div>span{width:21px;height:21px;color:var(--white);background:var(--deep);border-radius:50%;place-items:center;font-size:9px;display:grid}.visual-flow-step strong{overflow-wrap:anywhere;align-self:center;font-size:11px}.visual-flow-step small{overflow-wrap:anywhere;color:var(--muted);grid-column:1/-1;font-size:9px;line-height:1.45}.visual-flow-step>svg{color:#8ba39b;flex:none;margin:0 6px}.sentence-blocks{flex-wrap:wrap;gap:7px;display:flex}.sentence-blocks>span{border-bottom:3px solid var(--mint);background:#edf7f3;flex-direction:column;min-width:74px;padding:9px 10px;display:flex}.sentence-blocks>span:nth-child(2n){border-color:var(--coral);background:#fff1ed}.sentence-blocks>span:nth-child(3n){border-color:var(--sky);background:#eaf4fa}.sentence-blocks strong{overflow-wrap:anywhere;font-size:11px}.sentence-blocks small{overflow-wrap:anywhere;color:var(--muted);margin-top:3px;font-size:9px}.visual-caption{color:var(--muted);margin:11px 0 0!important;font-size:10px!important;line-height:1.55!important}.next-question{color:#715b1d;border-top:1px dashed #e1cc91;align-items:flex-start;gap:7px;padding:10px 0 0;font-weight:700;display:flex;margin-top:12px!important}.next-question svg{flex:none;margin-top:3px}.chat-thinking{width:min(330px,88%);color:var(--muted);background:var(--white);border:1px solid #cbdad5;border-radius:7px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:9px 12px;padding:13px 14px 11px;display:grid;box-shadow:0 6px 18px #173f3a12}.thinking-emblem{color:#a5442c;background:#fbe8e2;border-radius:50%;place-items:center;width:38px;height:38px;display:grid;position:relative}.thinking-emblem:after{content:"";border:2px solid #d9e5e1;border-top-color:var(--coral);border-right-color:var(--mint);border-radius:50%;animation:1.25s linear infinite thinking-spin;position:absolute;inset:-3px}.thinking-copy{min-width:0}.thinking-copy p{color:#344640;align-items:baseline;margin:0;font-size:12px;font-weight:700;display:flex}.thinking-copy small{color:var(--muted);margin-top:4px;font-size:10px;display:block}.thinking-copy small strong{color:var(--deep);font-variant-numeric:tabular-nums}.thinking-dots{gap:2px;margin-left:3px;display:inline-flex}.thinking-dots i{background:var(--mint);border-radius:50%;width:3px;height:3px;animation:1.1s ease-in-out infinite thinking-dot}.thinking-dots i:nth-child(2){animation-delay:.16s}.thinking-dots i:nth-child(3){animation-delay:.32s}.thinking-progress{background:#e7efec;grid-column:1/-1;height:3px;display:block;position:relative;overflow:hidden}.thinking-progress>span{background:var(--mint);width:35%;animation:1.45s ease-in-out infinite thinking-progress;display:block;position:absolute;inset:0 auto 0 -35%}@keyframes thinking-spin{to{transform:rotate(360deg)}}@keyframes thinking-dot{0%,60%,to{opacity:.45;transform:translateY(0)}30%{opacity:1;transform:translateY(-3px)}}@keyframes thinking-progress{0%{left:-35%}to{left:100%}}.chat-composer{border-top:1px solid var(--line);background:var(--white);grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:10px;padding:16px 20px;display:grid}.chat-composer textarea{resize:vertical;min-width:0;max-height:140px;color:var(--ink);font:inherit;border:1px solid #cbd9d4;border-radius:7px;outline:0;padding:11px 13px;line-height:1.5}.chat-composer textarea:focus{border-color:var(--mint);box-shadow:0 0 0 3px #dff5ed}.chat-send{width:48px;height:48px;color:var(--white);background:var(--deep);cursor:pointer;border:0;border-radius:7px;place-items:center;display:grid}.chat-send:disabled{cursor:not-allowed;opacity:.5}.short-answer{min-width:0;height:44px;color:var(--ink);border:1px solid var(--line);background:var(--white);border-radius:7px;outline:0;padding:0 13px}.short-answer:focus{border-color:var(--mint);box-shadow:0 0 0 3px #dff5ed}.runner-shell{background:#f5f8f6;grid-template-rows:auto 1fr auto;min-height:100vh;padding:24px clamp(18px,5vw,70px) 28px;display:grid}.runner-header{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:18px;width:min(920px,100%);margin:0 auto;display:grid}.runner-header>div{min-width:0}.runner-header p{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin:0 0 8px;font-size:12px;overflow:hidden}.runner-header>strong{color:var(--muted);font-size:12px}.runner-progress{background:#dfe8e4;border-radius:3px;height:6px;display:block;overflow:hidden}.runner-progress span{background:var(--mint);height:100%;transition:width .25s;display:block}.question-stage{align-self:start;width:min(760px,100%);margin:52px auto 28px}.question-kicker{flex-wrap:wrap;gap:8px;display:flex}.question-kicker span{color:#4c625b;background:#e5eeea;border-radius:5px;padding:5px 8px;font-size:11px}.question-context{color:#40514c;border-left:3px solid var(--sky);background:var(--white);margin:24px 0 0;padding:18px 20px;font-size:15px;line-height:1.9}.question-stage>h1{letter-spacing:0;margin:25px 0 28px;font-size:31px;line-height:1.55}.option-list{grid-template-columns:1fr 1fr;gap:12px;display:grid}.answer-option{min-width:0;min-height:68px;color:var(--ink);text-align:left;background:var(--white);cursor:pointer;border:1px solid #cad8d3;border-radius:7px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px 16px;display:grid}.answer-option>span{background:#edf3f0;border-radius:6px;place-items:center;width:30px;height:30px;font-size:12px;display:grid}.answer-option>strong{overflow-wrap:anywhere;font-size:14px}.answer-option:hover,.answer-option.selected{border-color:var(--mint);box-shadow:0 0 0 2px #dff5ed}.answer-option.selected>span{color:var(--white);background:var(--mint)}.answer-option.correct{box-shadow:none;background:#ecf8f3;border-color:#54a98c}.short-answer{width:100%;height:54px}.hint-box,.feedback{border-radius:7px;align-items:flex-start;gap:12px;margin-top:18px;padding:15px 17px;display:flex}.hint-box{color:#6d5722;background:#fff8df;border:1px solid #ead38d}.hint-box p{margin:0;font-size:13px;line-height:1.7}.hint-box p span{display:block}.feedback{background:#edf8f4;border:1px solid #9dcdbc}.feedback.incorrect{background:#fdf1ed;border-color:#edb6a8}.feedback>span{width:29px;height:29px;color:var(--white);background:var(--mint);border-radius:50%;flex:none;place-items:center;display:grid}.feedback.incorrect>span{background:var(--coral)}.feedback h2{margin:0 0 6px;font-size:16px}.feedback p{color:#4b5b56;margin:0;font-size:13px;line-height:1.7}.runner-footer{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:16px;width:min(760px,100%);margin:0 auto;padding-top:18px;display:flex}.primary-action.flat{min-width:130px;height:44px;box-shadow:none;justify-content:center;margin:0}.primary-action.flat:hover{box-shadow:none;transform:none}.hint-action{color:#7b641e;cursor:pointer;background:0 0;border:0;align-items:center;gap:7px;height:40px;padding:0;font-weight:700;display:inline-flex}.result-screen{place-items:center}.session-result{text-align:center;border:1px solid var(--line);background:var(--white);border-radius:8px;width:min(650px,100%);padding:42px}.result-emblem{color:#7f5c13;background:#f9d779;border-radius:50%;place-items:center;width:72px;height:72px;margin:0 auto 18px;display:grid}.session-result>p:first-of-type{color:var(--muted);margin:0;font-size:12px}.session-result h1{letter-spacing:0;margin:7px 0 20px;font-size:27px}.session-result>strong{color:var(--deep);font-size:58px;line-height:1;display:block}.session-result>strong small{font-size:16px}.result-stats{flex-wrap:wrap;justify-content:center;gap:9px;margin:27px 0;display:flex}.result-stats span{color:#52645e;background:#edf3f0;border-radius:5px;padding:7px 10px;font-size:11px}.result-message{max-width:480px;color:var(--muted);margin:0 auto;font-size:13px;line-height:1.7}.result-actions{justify-content:center;gap:10px;margin-top:26px;display:flex}.formal-runner{min-height:100vh;color:var(--ink);background:#f1f5f3}.formal-runner-header{z-index:20;border-bottom:1px solid var(--line);background:#fffffff5;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:16px;min-height:76px;padding:12px clamp(16px,4vw,58px);display:grid;position:sticky;top:0}.formal-paper-title{flex-direction:column;min-width:0;display:flex}.formal-paper-title small{color:var(--muted);font-size:9px}.formal-paper-title strong{text-overflow:ellipsis;white-space:nowrap;margin-top:4px;font-size:15px;overflow:hidden}.exam-clock{min-width:126px;color:var(--deep);background:#eef7f3;border:1px solid #bfd2cb;border-radius:7px;justify-content:center;align-items:center;gap:8px;padding:8px 12px;display:flex}.exam-clock>span{flex-direction:column;display:flex}.exam-clock small{color:var(--muted);font-size:8px}.exam-clock strong{font-variant-numeric:tabular-nums;margin-top:1px;font-size:18px}.exam-clock.warning{color:#a8432b;background:#fff0ec;border-color:#e7ad9e}.formal-runner-body{grid-template-columns:minmax(0,1fr) 280px;align-items:start;gap:20px;width:min(1180px,100% - 32px);margin:28px auto;display:grid}.formal-question-area{border:1px solid var(--line);background:var(--white);border-radius:7px;min-width:0;min-height:680px;padding:clamp(24px,4vw,46px)}.formal-question-meta{flex-wrap:wrap;gap:7px;display:flex}.formal-question-meta span{color:#4c625b;background:#e8f0ed;border-radius:5px;padding:5px 8px;font-size:10px}.formal-question-area>h1{margin:25px 0 22px;font-size:24px;line-height:1.65}.formal-question-area>h1 small{color:var(--coral);font-size:.7em}.formal-question-context{white-space:pre-wrap;color:#3d4e49;border-left:3px solid var(--sky);background:#f6f9f8;max-height:420px;margin:0 0 24px;padding:18px 20px;font-size:14px;line-height:1.9;overflow-y:auto}.listening-control{background:#eef7fc;border:1px solid #bdd7e7;border-radius:7px;align-items:center;gap:12px;margin-bottom:20px;padding:14px;display:flex}.listening-control button{min-height:40px;color:var(--white);cursor:pointer;background:#296992;border:0;border-radius:6px;align-items:center;gap:7px;padding:0 14px;font-weight:700;display:inline-flex}.listening-control button:disabled{cursor:not-allowed;opacity:.5}.listening-control span{color:#587486;font-size:10px}.formal-option-list{gap:10px;display:grid}.formal-option-list button{min-width:0;min-height:58px;color:var(--ink);text-align:left;background:var(--white);cursor:pointer;border:1px solid #cad8d3;border-radius:7px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:11px;padding:11px 14px;display:grid}.formal-option-list button>span{background:#edf3f0;border-radius:5px;place-items:center;width:30px;height:30px;font-size:11px;display:grid}.formal-option-list button>strong{overflow-wrap:anywhere;font-size:13px;font-weight:600}.formal-option-list button:hover,.formal-option-list button.selected{border-color:var(--mint);box-shadow:0 0 0 2px #dff5ed}.formal-option-list button.selected>span{color:var(--white);background:var(--mint)}.formal-short-answer,.formal-long-answer{width:100%;color:var(--ink);font:inherit;background:#fbfdfc;border:1px solid #c7d5d0;border-radius:7px;outline:0}.formal-short-answer{height:52px;padding:0 14px}.formal-long-answer{resize:vertical;min-height:210px;padding:14px;line-height:1.75}.formal-long-answer.writing{min-height:380px}.formal-short-answer:focus,.formal-long-answer:focus{border-color:var(--mint);box-shadow:0 0 0 3px #dff5ed}.answer-count{color:var(--muted);text-align:right;margin:8px 0 0;font-size:9px}.formal-question-actions{border-top:1px solid var(--line);justify-content:space-between;gap:12px;margin-top:30px;padding-top:18px;display:flex}.formal-question-actions button:disabled{cursor:not-allowed;opacity:.45}.submit-paper{background:#a8442c}.submit-error{color:#a8442c;align-items:center;gap:7px;margin:13px 0 0;font-size:11px;display:flex}.answer-sheet{border:1px solid var(--line);background:var(--white);border-radius:7px;max-height:calc(100vh - 120px);padding:18px;position:sticky;top:96px;overflow-y:auto}.answer-sheet>header{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.answer-sheet>header>div{flex-direction:column;display:flex}.answer-sheet>header small{color:var(--muted);font-size:9px}.answer-sheet>header strong{margin-top:3px;font-size:18px}.save-state{color:#426057;background:#e9f4f0;border-radius:4px;padding:4px 6px;font-size:8px}.save-state.saving{color:#725c20;background:#fff6d9}.save-state.offline{color:#a8442c;background:#fce8e2}.answer-sheet-sections{gap:15px;margin-top:16px;display:grid}.answer-sheet-sections section{border-top:1px solid var(--line);padding-top:13px}.answer-sheet-sections h2{color:#566762;margin:0 0 9px;font-size:10px;line-height:1.45}.answer-sheet-sections section>div{grid-template-columns:repeat(5,34px);gap:7px;display:grid}.answer-sheet-sections button{color:#566762;background:var(--white);cursor:pointer;border:1px solid #cbd8d4;border-radius:5px;width:34px;height:34px;font-size:10px;font-weight:800}.answer-sheet-sections button.answered{color:var(--deep);background:#dff2eb;border-color:#92b8ab}.answer-sheet-sections button.current{color:var(--white);border-color:var(--coral);background:var(--coral);box-shadow:0 0 0 2px #f8d8cf}.submit-exam-button{width:100%;height:42px;color:var(--white);cursor:pointer;background:#a8442c;border:0;border-radius:7px;justify-content:center;align-items:center;gap:7px;margin-top:20px;font-weight:800;display:flex}.formal-report-shell{background:#f3f6f5;min-height:100vh;padding:0 0 40px}.report-topbar{border-bottom:1px solid var(--line);background:var(--white);justify-content:space-between;align-items:center;gap:20px;min-height:82px;padding:14px clamp(18px,5vw,70px);display:flex}.report-topbar small{color:var(--muted);font-size:10px}.report-topbar h1{margin:5px 0 0;font-size:20px}.score-summary-band{width:min(1120px,100% - 32px);color:var(--white);background:var(--deep);border-radius:7px;grid-template-columns:auto minmax(0,1fr) minmax(180px,240px);align-items:center;gap:26px;margin:26px auto 0;padding:28px 32px;display:grid}.score-ring{text-align:center;background:#183d35;border:8px solid #65b99d;border-radius:50%;place-content:center;width:112px;height:112px;display:grid}.score-ring strong{font-size:35px;line-height:1}.score-ring small{color:#b7d0c8;margin-top:4px;font-size:10px}.score-summary-band>div:nth-child(2) p,.score-summary-band h2,.score-summary-band>div:nth-child(2) span{margin:0}.score-summary-band>div:nth-child(2) p{color:#94d7bf;font-size:11px;font-weight:800}.score-summary-band h2{margin:7px 0 9px;font-size:19px}.score-summary-band>div:nth-child(2) span{color:#bbcec8;font-size:10px}.score-summary-band>aside{color:#725415;background:#fff2c9;border-radius:6px;align-items:flex-start;gap:8px;padding:12px;font-size:9px;line-height:1.55;display:flex}.score-summary-band>aside svg{flex:none}.formal-report-grid{grid-template-columns:minmax(0,1.5fr) minmax(280px,.7fr);gap:16px;width:min(1120px,100% - 32px);margin:16px auto 0;display:grid}.section-score-report,.weak-skill-report,.question-review{border:1px solid var(--line);background:var(--white);border-radius:7px;padding:22px}.report-section-title{color:var(--deep);align-items:center;gap:8px;display:flex}.report-section-title h2{margin:0;font-size:15px}.score-bar-row{grid-template-columns:minmax(110px,180px) minmax(80px,1fr) 54px;align-items:center;gap:10px;margin-top:15px;display:grid}.score-bar-row>span{text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.score-bar-row>div{background:#e7eeeb;height:7px;overflow:hidden}.score-bar-row i{background:var(--mint);height:100%;display:block}.score-bar-row strong{color:#52645e;text-align:right;font-size:10px}.weak-skill-report>div:not(.report-section-title){grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px;margin-top:14px;display:grid}.weak-skill-report>div:not(.report-section-title)>span{color:#a8442c;background:#fbe8e2;border-radius:50%;place-items:center;width:28px;height:28px;font-size:10px;font-weight:800;display:grid}.weak-skill-report p{flex-direction:column;margin:0;display:flex}.weak-skill-report strong{font-size:11px}.weak-skill-report small{color:var(--muted);margin-top:3px;font-size:9px}.question-review{width:min(1120px,100% - 32px);margin:16px auto 0}.question-review>div:last-child{margin-top:12px}.question-review article{border-top:1px solid var(--line);grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:12px;padding:16px 0;display:grid}.question-review article>span{width:29px;height:29px;color:var(--white);background:var(--coral);border-radius:50%;place-items:center;font-size:10px;font-weight:800;display:grid}.question-review article>span.correct{background:var(--mint)}.question-review article small{color:var(--muted);font-size:9px}.question-review article h3{margin:5px 0 7px;font-size:12px;line-height:1.55}.question-review article p{color:#586963;margin:4px 0 0;font-size:10px;line-height:1.6}.question-review article>strong{font-size:11px}.report-footer{justify-content:flex-end;width:min(1120px,100% - 32px);margin:18px auto 0;display:flex}@media (max-width:780px){.topbar h1{font-size:23px}.tool-view,.parent-dashboard{margin-top:28px}.practice-row,.error-row{grid-template-columns:auto minmax(0,1fr);gap:13px;padding:16px}.practice-row .mastery{text-align:left;grid-area:2/1}.practice-row .secondary-action,.error-row .secondary-action{grid-column:2;justify-self:start}.error-row .secondary-action{grid-column:1/-1}.parent-metrics{grid-template-columns:1fr}.parent-metrics div+div{border-left:0;border-top:1px solid var(--line)}.report-band{align-items:flex-start;padding:24px}.report-band>svg{display:none}.parent-detail{grid-template-columns:1fr}.account-security{flex-direction:column;align-items:flex-start}.runner-shell{padding:17px 16px 22px}.question-stage{margin-top:34px}.option-list{grid-template-columns:1fr}.question-stage>h1{margin:20px 0 22px;font-size:23px}.runner-footer{padding:14px 0 calc(4px + env(safe-area-inset-bottom));background:#f5f8f6;position:sticky;bottom:0}.session-result{padding:30px 20px}.result-actions{flex-direction:column-reverse}.result-actions button{width:100%}.companion-dialog{width:calc(100vw - 16px);height:calc(100dvh - 16px);min-height:0}.exam-confirm-dialog{padding:22px 18px}.exam-confirm-dialog footer{grid-template-columns:1fr 1fr;display:grid}.exam-confirm-dialog footer button{min-width:0}.companion-dialog-header{min-height:68px;padding:11px 14px}.companion-transcript{padding:20px 14px}.chat-message{width:92%}.visual-bar-row{grid-template-columns:92px minmax(0,1fr)}.chat-composer{padding:11px 12px calc(11px + env(safe-area-inset-bottom))}.exam-center-head{flex-direction:column;align-items:flex-start}.active-exam-banner{grid-template-columns:auto minmax(0,1fr)}.active-exam-banner .primary-action{grid-column:1/-1;width:100%}.exam-filters{flex-direction:column;align-items:stretch;gap:15px}.segmented-control{width:100%}.segmented-control button{flex:1;min-width:0}.exam-kind-tabs{min-height:40px}.exam-kind-tabs button{flex:1;min-width:0}.paper-grid{grid-template-columns:1fr}.formal-runner-header{gap:9px;min-height:68px;padding:9px 12px}.formal-paper-title strong{max-width:42vw;font-size:12px}.exam-clock{min-width:98px;padding:6px 8px}.exam-clock strong{font-size:15px}.formal-runner-body{width:calc(100% - 20px);margin:12px auto 90px;display:block}.formal-question-area{min-height:0;padding:22px 16px}.formal-question-area>h1{margin:20px 0 18px;font-size:19px}.formal-question-context{max-height:none;padding:15px;font-size:13px}.formal-long-answer.writing{min-height:300px}.answer-sheet{z-index:18;max-height:none;padding:10px 14px calc(10px + env(safe-area-inset-bottom));border-width:1px 0 0;border-radius:0;grid-template-columns:minmax(0,1fr) auto;align-items:center;display:grid;position:fixed;inset:auto 0 0;box-shadow:0 -8px 24px #1430291a}.answer-sheet>header{align-items:center}.answer-sheet>header>div{flex-direction:row;align-items:baseline;gap:7px}.answer-sheet-sections{display:none}.submit-exam-button{width:104px;height:40px;margin:0 0 0 10px}.score-summary-band{grid-template-columns:auto minmax(0,1fr);gap:18px;padding:22px}.score-summary-band>aside{grid-column:1/-1}.score-ring{border-width:6px;width:86px;height:86px}.score-ring strong{font-size:28px}.formal-report-grid{grid-template-columns:1fr}.question-review article{grid-template-columns:auto minmax(0,1fr)}.question-review article>strong{grid-column:2}}.login-shell{background:#edf4f1;grid-template-rows:auto 1fr auto;min-height:100vh;padding:34px clamp(20px,5vw,70px);display:grid}.login-brand{align-items:center;gap:12px;display:flex}.login-brand>span{width:46px;height:46px;color:var(--white);background:var(--deep);border-radius:8px;place-items:center;display:grid}.login-brand>div{flex-direction:column;display:flex}.login-brand strong{font-size:18px}.login-brand small{color:var(--muted);margin-top:4px;font-size:11px}.login-panel{border:1px solid #cadbd4;border-top:4px solid var(--mint);background:var(--white);border-radius:8px;align-self:center;width:min(430px,100%);margin:44px auto;padding:32px;box-shadow:0 18px 50px #133f391a}.login-heading{align-items:center;gap:12px;display:flex}.login-heading>span{color:#8c4a1e;background:#fff0dc;border-radius:7px;place-items:center;width:43px;height:43px;display:grid}.login-heading p,.login-heading h1{margin:0}.login-heading p{color:var(--muted);font-size:11px}.login-heading h1{letter-spacing:0;margin-top:3px;font-size:25px}.login-intro{color:var(--muted);margin:20px 0 24px;font-size:13px}.login-form{display:grid}.login-form>label{color:#42524d;margin:0 0 7px;font-size:12px;font-weight:700}.login-form>input,.password-field input{width:100%;height:46px;color:var(--ink);background:var(--white);border:1px solid #cbd9d4;border-radius:7px;outline:0;padding:0 13px}.login-form>input{margin-bottom:17px}.login-form>input:focus,.password-field input:focus{border-color:var(--mint);box-shadow:0 0 0 3px #dff5ed}.password-field{position:relative}.password-field input{padding-right:48px}.password-field button{width:42px;height:42px;color:var(--muted);cursor:pointer;background:0 0;border:0;place-items:center;display:grid;position:absolute;top:2px;right:2px}.login-error{color:#ae432c;visibility:hidden;min-height:18px;margin:9px 0 7px;font-size:12px}.login-error.visible{visibility:visible}.login-submit{height:47px;color:var(--white);background:var(--deep);cursor:pointer;border:0;border-radius:7px;justify-content:center;align-items:center;gap:8px;font-weight:800;display:flex}.login-submit:hover{background:#20554e}.login-footnote{color:var(--muted);text-align:center;align-self:end;margin:0;font-size:11px}@media (max-width:520px){.login-shell{padding:22px 16px}.login-panel{margin:28px auto;padding:26px 22px}}
