/*! 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-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--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}.fixed{position:fixed}.relative{position:relative}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.block{display:block}.hidden{display:none}.table{display:table}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}}:root{--ink:#20212b;--paper:#f7f5ef;--white:#fffefa;--violet:#7456e8;--violet-soft:#e8e2ff;--coral:#f26d5b;--coral-soft:#ffe2dc;--lime:#d8f178;--line:#dcd8cf}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);font-family:var(--font-geist-sans), "PingFang SC", "Microsoft YaHei", sans-serif;margin:0}button,a{font:inherit}button{color:inherit}.account-entry{background:var(--paper);min-height:100vh}.account-loading{background:var(--paper);align-content:center;place-items:center;gap:16px;min-height:100vh;display:grid}.account-loading p{color:#6b6c75;margin:0;font-weight:700}.account-error p{color:#923c30}.account-header{border-bottom-color:#d4d0c6}.account-hero{grid-template-columns:1.08fr .92fr;align-items:center;gap:72px;width:min(1180px,100% - 40px);min-height:calc(100vh - 84px);margin:0 auto;padding:72px 0 86px;display:grid}.account-copy h1{letter-spacing:-.07em;max-width:690px;margin:0;font-size:clamp(48px,6.5vw,88px);line-height:1}.account-copy h1 span{color:var(--violet);display:block}.account-copy>p:not(.eyebrow){color:#62636d;max-width:610px;margin:26px 0;font-size:17px;line-height:1.75}.account-signin{border:2px solid var(--ink);background:var(--ink);color:#fff;box-shadow:4px 4px 0 var(--violet);cursor:pointer;border-radius:14px;align-items:center;gap:26px;padding:15px 20px;font-weight:800;text-decoration:none;display:inline-flex}.account-copy>small{color:#777780;margin-top:17px;display:block}.grade-preview{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;display:grid;transform:rotate(1deg)}.grade-preview-card{border:2px solid var(--ink);min-height:175px;box-shadow:5px 6px 0 var(--ink);border-radius:22px;flex-direction:column;justify-content:flex-end;padding:22px;display:flex}.grade-preview-card>span{font-family:var(--font-geist-mono), monospace;letter-spacing:-.08em;margin-bottom:auto;font-size:43px;font-weight:900}.grade-preview-card strong{font-size:23px}.grade-preview-card small{color:#555660;margin-top:5px}.grade-preview-card.tone-1{background:var(--lime);transform:rotate(-2deg)}.grade-preview-card.tone-2{background:var(--violet-soft);transform:translateY(15px)rotate(2deg)}.grade-preview-card.tone-3{background:var(--coral-soft);transform:rotate(1deg)}.grade-preview-card.tone-4{background:#fff;transform:translateY(15px)rotate(-1deg)}.site-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;width:min(1180px,100% - 40px);min-height:84px;margin:0 auto;display:flex}.brand{color:var(--ink);letter-spacing:-.03em;align-items:center;gap:12px;font-weight:800;text-decoration:none;display:flex}.brand-mark{border:2px solid var(--ink);background:var(--lime);width:40px;height:40px;box-shadow:3px 3px 0 var(--ink);border-radius:13px;place-items:center;font-family:Georgia,serif;font-size:24px;display:grid}.edition{color:#686976;font-size:14px}.hero{grid-template-columns:1.2fr .8fr;align-items:center;gap:56px;width:min(1180px,100% - 40px);min-height:510px;margin:0 auto;padding:64px 0 72px;display:grid}.eyebrow,.section-kicker,.card-label{color:#666773;letter-spacing:.14em;text-transform:uppercase;margin:0 0 12px;font-size:12px;font-weight:800}.hero h1{letter-spacing:-.075em;max-width:720px;margin:0;font-size:clamp(52px,7.2vw,98px);line-height:.98}.hero h1 span{color:var(--violet)}.hero-note{color:#62636d;max-width:570px;margin:30px 0 0;font-size:18px;line-height:1.75}.orbit-card{border:2px solid var(--ink);background:var(--lime);min-height:360px;box-shadow:12px 14px 0 var(--ink);border-radius:38% 62% 52% 48%/48% 44% 56% 52%;position:relative;transform:rotate(2deg)}.planet{background:var(--violet);color:#fff;text-align:center;width:150px;height:150px;box-shadow:7px 8px 0 var(--ink);border-radius:50%;place-items:center;font-size:34px;font-weight:900;line-height:1.05;display:grid;position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-50%)rotate(-2deg)}.orbit{border:2px solid var(--ink);background:var(--white);min-width:70px;height:70px;font-family:var(--font-geist-mono), monospace;border-radius:22px;place-items:center;padding:0 14px;font-size:20px;font-weight:800;display:grid;position:absolute}.orbit-one{top:34px;left:32px;transform:rotate(-8deg)}.orbit-two{background:var(--coral-soft);top:74px;right:26px;transform:rotate(9deg)}.orbit-three{background:var(--violet-soft);bottom:38px;right:54px;transform:rotate(-5deg)}.workspace{background:var(--white);border-top:1px solid var(--line);padding:76px max(20px,50% - 590px) 92px}.section-heading,.units-heading{justify-content:space-between;align-items:flex-end;gap:28px;display:flex}.section-heading h2,.units-heading h2{letter-spacing:-.055em;margin:0;font-size:clamp(30px,4vw,48px)}.profile-switcher{gap:12px;display:flex}.profile-pill{border:1px solid var(--line);text-align:left;cursor:pointer;background:0 0;border-radius:18px;align-items:center;gap:11px;min-width:190px;padding:9px 15px 9px 9px;transition:all .2s;display:flex}.profile-pill:hover,.profile-pill.active{border-color:var(--ink);background:var(--paper);box-shadow:3px 3px 0 var(--ink);transform:translate(-2px,-2px)}.profile-pill span:last-child{gap:2px;display:grid}.profile-pill small{color:#6e6e78}.avatar{color:#fff;border-radius:13px;flex:none;place-items:center;width:42px;height:42px;font-size:18px;font-weight:900;display:grid}.avatar.violet{background:var(--violet)}.avatar.coral{background:var(--coral)}.avatar.lime{background:#78922b}.avatar.blue{background:#3679b8}.header-account{align-items:center;gap:14px;display:flex}.account-chip{border:1px solid var(--line);background:#fff;border-radius:14px;align-items:center;gap:9px;padding:6px 7px 6px 6px;display:flex}.account-chip>span{background:var(--violet);color:#fff;border-radius:10px;place-items:center;width:32px;height:32px;font-weight:850;display:grid}.account-chip>div{min-width:92px;display:grid}.account-chip strong{text-overflow:ellipsis;white-space:nowrap;max-width:130px;font-size:12px;overflow:hidden}.account-chip small{color:#777780;font-size:9px}.account-chip>a,.account-chip>button{color:#777780;cursor:pointer;background:0 0;border:0;border-radius:8px;padding:6px 8px;font-size:11px;font-weight:700;text-decoration:none}.account-chip>a:hover,.account-chip>button:hover{background:var(--paper);color:var(--ink)}.grade-switcher{flex-wrap:wrap;justify-content:flex-end}.grade-switcher .profile-pill{min-width:146px}.dashboard-grid{grid-template-columns:1fr 320px;gap:18px;margin-top:36px;display:grid}.welcome-card,.progress-card{border:2px solid var(--ink);border-radius:26px;min-height:230px;padding:30px}.welcome-card{justify-content:space-between;align-items:flex-end;gap:28px;display:flex}.welcome-card.violet{background:var(--violet-soft)}.welcome-card.coral{background:var(--coral-soft)}.welcome-card.lime{background:#eef8c3}.welcome-card.blue{background:#dfeeff}.welcome-card h3{letter-spacing:-.045em;margin:0 0 12px;font-size:clamp(28px,4vw,46px)}.welcome-card p:not(.card-label),.progress-card p:last-child{color:#5e5f69;margin:0}.primary-action{border:2px solid var(--ink);background:var(--ink);color:#fff;cursor:pointer;white-space:nowrap;border-radius:14px;padding:14px 18px;font-weight:750}.primary-action span{margin-left:14px}.progress-card{background:var(--lime)}.progress-value{letter-spacing:-.08em;font-size:70px;font-weight:900;line-height:1}.progress-value span{font-size:27px}.progress-track{border:1.5px solid var(--ink);background:#fff;border-radius:99px;height:9px;margin:18px 0 14px;overflow:hidden}.progress-track span{background:var(--ink);width:2%;height:100%;display:block}.units-heading{margin-top:72px}.unit-count{border:1px solid var(--line);color:#666773;border-radius:99px;padding:9px 13px;font-size:14px}.unit-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:28px;display:grid}.unit-card{border:1px solid var(--line);background:#fff;border-radius:22px;flex-direction:column;justify-content:space-between;min-height:210px;padding:24px;transition:all .2s;display:flex;position:relative;overflow:hidden}.unit-card:hover{border-color:var(--ink);box-shadow:0 10px 0 var(--paper);transform:translateY(-3px)}.unit-number{color:#efede6;letter-spacing:-.08em;font-size:62px;font-weight:900;position:absolute;top:10px;right:18px}.unit-card p{color:#777780;margin:0 0 8px;font-size:13px;font-weight:700;position:relative}.unit-card h3{letter-spacing:-.035em;max-width:78%;margin:0;font-size:23px;line-height:1.25;position:relative}.unit-actions{gap:8px;display:flex}.unit-actions button{border:1.5px solid var(--ink);background:var(--ink);color:#fff;cursor:pointer;border-radius:10px;padding:9px 12px;font-size:13px;font-weight:700}.unit-actions button.quiet{color:var(--ink);background:#fff}footer{color:#6d6e77;justify-content:space-between;align-items:center;width:min(1180px,100% - 40px);min-height:100px;margin:0 auto;font-size:13px;display:flex}.main-nav{align-items:center;gap:6px;display:flex}.main-nav button{color:#6c6d77;cursor:pointer;background:0 0;border:0;border-radius:10px;padding:9px 13px;font-size:14px;font-weight:720;position:relative}.main-nav button:hover,.main-nav button.active{color:var(--ink);background:#ebe8df}.main-nav button span{background:var(--coral);color:#fff;border-radius:99px;place-items:center;min-width:19px;height:19px;padding:0 5px;font-size:10px;display:grid;position:absolute;top:-5px;right:-4px}.admin-entry-link{border:1px solid var(--ink);background:var(--ink);color:#fff;border-radius:10px;padding:9px 13px;font-size:13px;font-weight:760;text-decoration:none}.admin-shell{background:#f0efe9;min-height:100vh}.admin-header{border-bottom:1px solid #cbc8bf;justify-content:space-between;align-items:center;width:min(1320px,100% - 48px);min-height:82px;margin:0 auto;display:flex}.admin-header-actions{align-items:center;gap:9px;display:flex}.admin-header-actions>span{text-align:right;margin-right:12px;display:grid}.admin-header-actions>span b{font-size:12px}.admin-header-actions>span small{color:#74756f;font-size:9px}.admin-header-actions>a,.admin-header-actions>button{color:var(--ink);cursor:pointer;background:#faf9f5;border:1px solid #cfccc2;border-radius:9px;padding:8px 11px;font-size:12px;font-weight:720;text-decoration:none}.admin-hero{grid-template-columns:minmax(0,1fr) 280px;align-items:end;gap:70px;width:min(1320px,100% - 48px);margin:0 auto;padding:70px 0 52px;display:grid}.admin-hero h1{letter-spacing:-.072em;margin:10px 0 22px;font-size:clamp(50px,7vw,92px);line-height:.94}.admin-hero h1 span{color:var(--violet)}.admin-hero>div:first-child>p:last-child{color:#666760;max-width:680px;margin:0;font-size:15px;line-height:1.75}.admin-hero-mark{border:2px solid var(--ink);background:var(--lime);min-height:240px;box-shadow:7px 7px 0 var(--ink);border-radius:26px;flex-direction:column;justify-content:flex-end;padding:25px;display:flex;transform:rotate(1deg)}.admin-hero-mark b{letter-spacing:-.09em;font-size:90px;line-height:.82}.admin-hero-mark span{margin-top:16px;font-size:18px;font-weight:820}.admin-hero-mark i{background:var(--ink);color:#fff;border-radius:99px;align-self:flex-start;margin-top:28px;padding:5px 8px;font-size:10px;font-style:normal;font-weight:750}.admin-metrics{background:#fffefa;border:1px solid #c9c6bd;border-radius:22px;grid-template-columns:repeat(5,minmax(0,1fr));width:min(1320px,100% - 48px);margin:0 auto;display:grid;overflow:hidden}.admin-metrics article{border-right:1px solid #d8d5cc;flex-direction:column;min-height:174px;padding:21px;display:flex}.admin-metrics article:last-child{border-right:0}.admin-metrics article small{color:#70716b;font-size:11px;font-weight:800}.admin-metrics article strong{letter-spacing:-.075em;margin:auto 0 11px;font-size:clamp(45px,5vw,70px);line-height:1}.admin-metrics article strong em{letter-spacing:0;margin-left:4px;font-size:15px;font-style:normal}.admin-metrics article span{color:#7b7c76;font-size:11px}.admin-metrics .metric-primary{background:var(--violet-soft)}.admin-metrics .metric-alert{background:var(--coral-soft)}.admin-roster{width:min(1320px,100% - 48px);margin:78px auto 0}.admin-section-title{border-bottom:2px solid var(--ink);justify-content:space-between;align-items:flex-end;gap:20px;padding-bottom:20px;display:flex}.admin-section-title h2{letter-spacing:-.055em;margin:3px 0 0;font-size:42px}.admin-section-title>span{color:#72736d;font-size:12px;font-weight:720}.admin-toolbar{grid-template-columns:minmax(240px,1fr) 190px 190px;gap:10px;padding:16px 0;display:grid}.admin-toolbar label{gap:5px;display:grid}.admin-toolbar label>span{color:#70716b;font-size:10px;font-weight:790}.admin-toolbar input,.admin-toolbar select{background:#fffefa;border:1px solid #cbc8bf;border-radius:10px;outline:none;width:100%;min-height:42px;padding:9px 12px}.admin-toolbar input:focus,.admin-toolbar select:focus{border-color:var(--violet);box-shadow:0 0 0 3px var(--violet-soft)}.admin-user-list{border-top:1px solid #c9c6bd}.admin-user{content-visibility:auto;contain-intrinsic-size:92px 300px;border-bottom:1px solid #cbc8bf}.admin-user summary{cursor:pointer;grid-template-columns:46px minmax(180px,1.2fr) 90px minmax(180px,1fr) 100px 65px 95px 28px;align-items:center;gap:13px;min-height:92px;padding:13px 0;list-style:none;display:grid}.admin-user summary::-webkit-details-marker{display:none}.admin-user summary:hover{background:#ffffff80}.admin-avatar{border:1.5px solid var(--ink);border-radius:13px;place-items:center;width:42px;height:42px;font-size:17px;font-weight:900;display:grid}.admin-avatar.tone-0{background:var(--lime)}.admin-avatar.tone-1{background:var(--violet-soft)}.admin-avatar.tone-2{background:var(--coral-soft)}.admin-avatar.tone-3{background:#dfeeff}.admin-identity,.admin-grade,.admin-progress,.admin-score,.admin-wrong,.admin-updated{gap:3px;min-width:0;display:grid}.admin-user summary small{color:#74756f;font-size:9px;font-weight:700}.admin-identity b,.admin-identity small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.admin-identity b{font-size:14px}.admin-identity small{font-size:10px}.admin-grade b,.admin-updated b{font-size:12px}.admin-progress{grid-template-columns:1fr 42px;align-items:center;position:relative}.admin-progress small{grid-column:1/-1}.admin-progress>b{text-align:right;font-size:11px}.admin-progress-bar{background:#dbd8cf;border-radius:99px;height:7px;display:block;overflow:hidden}.admin-progress-bar i{border-radius:inherit;background:var(--violet);height:100%;display:block}.admin-score b,.admin-wrong b{letter-spacing:-.04em;font-size:22px}.admin-score i{color:#aaa9a2;margin:0 4px;font-style:normal;font-weight:400}.admin-wrong b{color:#b24b3f}.admin-chevron{border:1px solid #c7c4ba;border-radius:9px;place-items:center;width:27px;height:27px;transition:transform .2s;display:grid}.admin-user[open] .admin-chevron{background:var(--ink);color:#fff;transform:rotate(45deg)}.admin-user-detail{grid-template-columns:minmax(0,1fr) 270px;gap:16px;padding:0 0 22px 59px;display:grid}.admin-grade-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.admin-grade-grid article{background:#fffefa;border:1px solid #d1cec5;border-radius:14px;min-height:150px;padding:14px}.admin-grade-grid article>div{justify-content:space-between;align-items:baseline;margin-bottom:15px;display:flex}.admin-grade-grid article>div span{color:#c6c3ba;font-family:var(--font-geist-mono), monospace;font-size:25px;font-weight:900}.admin-grade-grid article>div b{font-size:12px}.admin-grade-grid article p{color:#6e6f69;margin:10px 0 0;font-size:10px}.admin-grade-grid article p b{color:var(--ink)}.admin-insight{border:1.5px solid var(--ink);color:#fff;background:#20212b;border-radius:16px;padding:18px}.admin-insight>span{color:#b8b9b4;font-size:10px;font-weight:800}.admin-insight p{flex-wrap:wrap;gap:6px;margin:18px 0 0;display:flex}.admin-insight p b{background:var(--coral);border-radius:8px;padding:6px 8px;font-size:10px}.admin-insight .admin-empty-insight{color:#bbbcb7;font-size:12px;line-height:1.6}.admin-empty{color:#767771;place-items:center;gap:7px;min-height:220px;display:grid}.admin-empty b{color:var(--ink);font-size:20px}.admin-footer{width:min(1320px,100% - 48px);min-height:110px}.admin-denied{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:100vh;padding:30px;display:flex}.admin-denied h1{letter-spacing:-.055em;margin:8px 0 12px;font-size:clamp(35px,6vw,64px)}.admin-denied>p:not(.section-kicker){color:#70716b;max-width:480px;line-height:1.7}.admin-denied>a{background:var(--ink);color:#fff;border-radius:11px;margin-top:14px;padding:12px 16px;font-weight:750;text-decoration:none}.admin-login-button{background:var(--ink);color:#fff;cursor:pointer;border:0;border-radius:11px;margin-top:14px;padding:12px 16px;font-weight:750}.curriculum-toolbar{justify-content:space-between;align-items:flex-end;gap:28px;margin-top:72px;display:flex}.curriculum-toolbar h2,.records-header h2{letter-spacing:-.055em;margin:0;font-size:clamp(30px,4vw,48px)}.semester-tabs{gap:8px;display:flex}.semester-tabs button{border:1px solid var(--line);text-align:left;cursor:pointer;background:#fff;border-radius:14px;gap:3px;min-width:126px;padding:11px 16px;font-weight:780;display:grid}.semester-tabs button small{color:#777782;font-size:11px;font-weight:600}.semester-tabs button.active{border-color:var(--ink);background:var(--lime);box-shadow:3px 3px 0 var(--ink)}.edition-note{border-left:4px solid var(--violet);color:#64656f;background:#f4f1ff;border-radius:0 10px 10px 0;align-items:center;gap:15px;margin-top:28px;padding:14px 16px;font-size:13px;display:flex}.edition-note strong{color:var(--ink);white-space:nowrap}.unit-card{min-height:245px}.unit-status-row{align-items:center;gap:6px;min-height:25px;display:flex;position:relative}.unit-status-row p{margin:0}.status-chip{border-radius:99px;padding:4px 7px;font-size:10px;font-weight:850}.status-chip.learned{background:var(--violet-soft);color:#5b40c5}.status-chip.great{color:#405900;background:#e3f5b0}.status-chip.review{background:var(--coral-soft);color:#a43a2d}.unit-card p.unit-description{color:#6a6b74;max-width:90%;margin:13px 0 0;font-size:13px;font-weight:450;line-height:1.55;position:relative}.unit-depth{flex-wrap:wrap;gap:6px;margin-top:14px;display:flex;position:relative}.unit-depth span{background:var(--paper);color:#6c6d76;border-radius:7px;padding:5px 8px;font-size:10px;font-weight:750}.upcoming-card{background:var(--paper);text-align:center;border:2px dashed #bcb8ae;border-radius:24px;align-content:center;place-items:center;min-height:270px;margin-top:28px;padding:50px;display:grid}.upcoming-card span{color:#dfdcd4;letter-spacing:-.08em;font-size:76px;font-weight:950;line-height:.9}.upcoming-card h3{letter-spacing:-.035em;margin:12px 0 8px;font-size:27px}.upcoming-card p{color:#6b6c75;max-width:520px;margin:0;line-height:1.65}.records-section{margin-top:72px}.records-header{justify-content:space-between;align-items:flex-end;gap:30px;display:flex}.record-stats{gap:8px;display:flex}.record-stats span{border:1px solid var(--line);color:#74757e;border-radius:14px;gap:2px;min-width:92px;padding:12px;font-size:11px;display:grid}.record-stats strong{color:var(--ink);letter-spacing:-.05em;font-size:23px}.score-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:30px;display:grid}.score-list button{border:1px solid var(--line);text-align:left;cursor:pointer;background:#fff;border-radius:16px;justify-content:space-between;align-items:center;gap:20px;padding:18px;display:flex}.score-list button:hover{border-color:var(--ink);box-shadow:3px 3px 0 var(--ink);transform:translate(-2px,-2px)}.score-list button span{gap:5px;display:grid}.score-list button small{color:#757680}.score-list button b{letter-spacing:-.06em;font-size:35px}.wrongbook{margin-top:56px}.wrongbook-title{border-bottom:2px solid var(--ink);align-items:baseline;gap:16px;padding-bottom:16px;display:flex}.wrongbook-title span{letter-spacing:-.04em;font-size:25px;font-weight:850}.wrongbook-title p{color:#74757e;margin:0;font-size:13px}.wrongbook article{border-bottom:1px solid var(--line);grid-template-columns:56px 1fr;gap:18px;padding:26px 0;display:grid}.wrong-index{color:#cac7bf;font-family:var(--font-geist-mono), monospace;font-size:24px}.wrongbook article small{color:var(--violet);font-weight:800}.wrong-tags{flex-wrap:wrap;gap:5px;margin-top:7px;display:flex}.wrong-tags span{background:var(--paper);color:#6c6d76;border-radius:99px;padding:4px 7px;font-size:10px;font-weight:750}.wrong-tags span:last-child{background:var(--coral-soft);color:#983d31}.wrongbook article h3{margin:6px 0 12px;font-size:18px}.wrongbook article p{color:#63646e;margin:5px 0;font-size:14px}.wrongbook article .wrong-answer{color:#af4235}.wrongbook article .right-answer{color:#42700c;font-weight:700}.empty-state{color:#777780;text-align:center;border:1px dashed #c9c5bb;border-radius:16px;padding:34px}.empty-state.large{margin-top:32px;padding:80px 30px}.dialog-backdrop{z-index:100;-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px);background:#19191fa8;place-items:center;padding:26px;display:grid;position:fixed;inset:0}.learning-dialog{overscroll-behavior:contain;border:2px solid var(--ink);background:var(--white);border-radius:28px;width:min(920px,100%);max-height:calc(100dvh - 52px);padding:42px;position:relative;overflow-y:auto;box-shadow:12px 14px #0f0f1459}.dialog-close{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:50%;width:38px;height:38px;font-size:25px;line-height:1;position:absolute;top:18px;right:20px}.dialog-close:hover{border-color:var(--ink);transform:rotate(6deg)}.dialog-topline{gap:8px;margin-bottom:12px;display:flex}.dialog-topline span{background:var(--violet-soft);color:#5e45c5;border-radius:7px;padding:5px 8px;font-size:11px;font-weight:800}.dialog-topline span:last-child{background:var(--lime);color:#465d00}.learning-dialog>h2{letter-spacing:-.06em;max-width:88%;margin:0 0 10px;font-size:clamp(34px,6vw,54px);line-height:1.05}.lesson-intro{color:#666773;margin:16px 0 28px;font-size:16px;line-height:1.7}.lesson-section{border:1px solid var(--line);background:#fff;border-radius:19px;margin-top:18px;padding:22px}.goal-section{background:#f6f4ee}.lesson-section-heading{align-items:center;gap:12px;margin-bottom:16px;display:flex}.lesson-section-heading>span{background:var(--ink);color:#fff;width:38px;height:38px;font-family:var(--font-geist-mono), monospace;border-radius:11px;flex:none;place-items:center;font-size:11px;font-weight:850;display:grid}.lesson-section-heading small{color:#85858e;letter-spacing:.1em;font-size:10px;font-weight:800}.lesson-section-heading h3{letter-spacing:-.025em;margin:3px 0 0;font-size:20px}.goal-list{counter-reset:goals;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:0;padding:0;list-style:none;display:grid}.goal-list li{counter-increment:goals;background:#fff;border:1px solid #dedad0;border-radius:12px;min-height:80px;padding:13px;font-size:13px;line-height:1.55}.goal-list li:before{content:"✓";color:var(--violet);margin-bottom:5px;font-weight:900;display:block}.micro-skill-list{gap:10px;display:grid}.micro-skill-list>article{background:var(--paper);border-radius:14px;padding:17px}.micro-skill-title{align-items:center;gap:10px;display:flex}.micro-skill-title>span{background:var(--violet-soft);color:#5a42bf;border-radius:8px;flex:none;place-items:center;width:26px;height:26px;font-size:11px;font-weight:850;display:grid}.micro-skill-title h4{margin:0;font-size:16px}.micro-skill-list article>p{color:#5f606a;margin:10px 0 0;font-size:13px;line-height:1.65}.micro-skill-list ol,.worked-example-list ol{color:#65666f;margin:11px 0 0;padding-left:20px;font-size:12px;line-height:1.75}.worked-example-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.worked-example-list>article{background:var(--violet-soft);border-radius:14px;padding:17px}.example-level{align-items:center;gap:8px;display:flex}.example-level span{background:var(--violet);color:#fff;border-radius:99px;padding:4px 7px;font-size:10px;font-weight:800}.example-level strong{font-size:14px}.example-problem{margin:14px 0 0;font-weight:760;line-height:1.55}.example-answer{color:#4f3caf;border-top:1px solid #7456e838;margin:12px 0 0;padding-top:10px;font-size:13px;font-weight:800}.mistake-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.mistake-grid article{background:#fff6f3;border-radius:13px;padding:15px}.mistake-grid p{color:#5d5e67;margin:0;font-size:13px;line-height:1.55}.mistake-grid p+p{border-top:1px solid #f1d6cf;margin-top:9px;padding-top:9px}.mistake-grid p span{color:#a34336;min-width:52px;margin-right:7px;font-size:10px;font-weight:900;display:inline-block}.mistake-grid p+p span{color:#53720e}.challenge-card{background:var(--ink);color:#fff;border-radius:19px;margin-top:18px;padding:22px}.challenge-card small{color:var(--lime);letter-spacing:.12em;font-size:10px;font-weight:850}.challenge-card h3{margin:7px 0 0;font-size:19px;line-height:1.45}.challenge-card details{color:#d8d8df;border:1px solid #4d4e59;border-radius:11px;margin-top:15px;padding:12px 14px;font-size:13px}.challenge-card summary{color:#fff;cursor:pointer;font-weight:750}.challenge-card details p{margin:10px 0 0;line-height:1.6}.challenge-card .challenge-answer{color:var(--lime)}.learning-points{gap:10px;display:grid}.learning-points article{border:1px solid var(--line);background:#fff;border-radius:15px;grid-template-columns:42px 1fr;align-items:center;gap:13px;padding:15px;display:grid}.learning-points article>span{background:var(--paper);width:42px;height:42px;font-family:var(--font-geist-mono), monospace;border-radius:12px;place-items:center;font-weight:800;display:grid}.learning-points small{color:#86868e;letter-spacing:.1em;text-transform:uppercase;font-size:10px;font-weight:800}.learning-points h3{margin:4px 0 0;font-size:16px}.memory-card,.example-card,.project-card{border-radius:15px;margin-top:13px;padding:18px}.memory-card{background:var(--lime)}.example-card{background:var(--violet-soft)}.project-card{background:var(--coral-soft)}.memory-card span,.example-card span,.project-card span{letter-spacing:.1em;font-size:11px;font-weight:900}.memory-card p,.example-card p,.project-card p{margin:7px 0 0;line-height:1.65}.dialog-actions{border-top:1px solid var(--line);justify-content:flex-end;gap:10px;margin-top:28px;padding-top:20px;display:flex}.secondary-action{border:1.5px solid var(--ink);cursor:pointer;background:#fff;border-radius:13px;padding:13px 17px;font-weight:750}.quiz-meta{gap:8px;margin:18px 0 26px;display:flex}.quiz-meta span{background:var(--paper);color:#6f7079;border-radius:8px;padding:6px 9px;font-size:11px;font-weight:700}.score-banner{border:2px solid var(--ink);border-radius:17px;grid-template-columns:1fr auto;align-items:center;gap:2px 20px;margin:18px 0 24px;padding:20px;display:grid}.score-banner.great{background:var(--lime)}.score-banner.review{background:var(--coral-soft)}.score-banner span{font-size:12px;font-weight:800}.score-banner strong{letter-spacing:-.08em;grid-row:span 2;font-size:60px;line-height:1}.score-banner p{color:#55565f;margin:0}.mastery-panel{border:1px solid var(--line);background:#f7f5ef;border-radius:17px;margin:0 0 24px;padding:20px}.mastery-panel>div:first-child small{color:var(--violet);letter-spacing:.1em;font-size:10px;font-weight:850}.mastery-panel>div:first-child h3{margin:3px 0 14px;font-size:20px}.mastery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.mastery-grid article{background:#fff;border-radius:11px;grid-template-columns:1fr auto;gap:5px 10px;padding:12px;display:grid}.mastery-grid article.needs-review{background:var(--coral-soft)}.mastery-grid p{margin:0;font-size:12px;line-height:1.35}.mastery-grid strong{letter-spacing:-.04em;font-size:20px}.mastery-grid span{color:#777781;grid-column:1/-1;font-size:10px}.question-list{gap:14px;display:grid}.question-card{border:1px solid var(--line);border-radius:17px;margin:0;padding:20px}.question-card legend{align-items:center;gap:10px;padding:0 5px;font-weight:820;line-height:1.4;display:flex}.question-card legend span{background:var(--ink);color:#fff;border-radius:8px;flex:none;place-items:center;width:26px;height:26px;font-size:12px;display:grid}.question-tags{flex-wrap:wrap;gap:5px;margin:10px 0 0 2px;display:flex}.question-tags span{background:var(--paper);color:#777781;border-radius:99px;padding:4px 7px;font-size:9px;font-weight:750}.question-tags .difficulty{color:#fff}.question-tags .difficulty.基础{background:#6d7b3e}.question-tags .difficulty.提高{background:var(--violet)}.question-tags .difficulty.挑战{background:var(--coral)}.option-list{gap:8px;margin-top:15px;display:grid}.option-list label{border:1px solid var(--line);cursor:pointer;border-radius:11px;align-items:center;gap:10px;padding:11px 12px;display:flex}.option-list label:hover,.option-list label.selected{border-color:var(--violet);background:#f5f2ff}.option-list label.correct{background:#eef9d0;border-color:#739d20}.option-list label.wrong{border-color:var(--coral);background:var(--coral-soft)}.option-list input{opacity:0;pointer-events:none;position:absolute}.option-list label:focus-within{outline-offset:3px;outline:3px solid #247ca3}.option-list label>span{background:#eeece6;border-radius:7px;flex:none;place-items:center;width:25px;height:25px;font-size:11px;font-weight:850;display:grid}.option-list label.selected>span{background:var(--violet);color:#fff}.option-list label.correct>span{color:#fff;background:#729c1e}.option-list label.wrong>span{background:var(--coral);color:#fff}.numeric-answer{gap:7px;margin-top:15px;display:grid}.numeric-answer label{color:#73747e;font-size:11px;font-weight:800}.numeric-answer input{border:1.5px solid var(--line);background:#fff;border-radius:11px;outline:0;width:100%;padding:13px 14px;font-size:16px}.numeric-answer input:focus{border-color:var(--violet);box-shadow:0 0 0 3px var(--violet-soft)}.numeric-answer input.correct{background:#eef9d0;border-color:#739d20}.numeric-answer input.wrong{border-color:var(--coral);background:var(--coral-soft)}.explanation{background:var(--paper);color:#60616a;border-radius:10px;margin:13px 0 0;padding:12px;font-size:13px;line-height:1.6}.quiz-notice{background:var(--coral-soft);color:#923c30;text-align:center;border-radius:10px;margin:15px 0 0;padding:11px;font-size:13px;font-weight:700}.grade-preview-card.tone-5{background:#dfeeff;transform:rotate(-1deg)}.grade-preview-card.tone-6{background:#fff2bd;transform:translateY(15px)rotate(1deg)}.growth-orbit{border:2px solid var(--ink);background:var(--lime);min-height:350px;box-shadow:11px 13px 0 var(--ink);border-radius:36% 64% 48% 52%/53% 42% 58% 47%;flex-direction:column;justify-content:flex-end;padding:32px;display:flex;position:relative;transform:rotate(1deg)}.growth-orbit:before{content:"";border:2px dashed #20212b73;border-radius:50%;width:105px;height:105px;position:absolute;top:35px;right:40px}.growth-orbit>strong{filter:drop-shadow(3px 4px #20212b2e);font-size:70px;position:absolute;top:37px;right:54px}.growth-orbit-label{background:var(--ink);color:#fff;letter-spacing:.12em;border-radius:99px;padding:6px 9px;font-size:9px;font-weight:850;position:absolute;top:39px;left:34px}.growth-orbit h2{letter-spacing:-.055em;margin:0;font-size:clamp(32px,4vw,48px)}.growth-orbit p{color:#535848;margin:7px 0 18px;font-size:14px;font-weight:750}.growth-orbit>div{border:1.5px solid var(--ink);background:#fff;border-radius:99px;height:10px;overflow:hidden}.growth-orbit>div i{border-radius:inherit;background:var(--violet);height:100%;display:block}.growth-orbit>small{color:#55594b;margin-top:8px;font-size:10px;font-weight:730}.dashboard-grid-three{grid-template-columns:minmax(0,1fr) 245px 245px}.dashboard-grid-three .welcome-card{padding:26px}.dashboard-grid-three .welcome-card h3{font-size:clamp(26px,3vw,39px)}.points-card{border:2px solid var(--ink);background:var(--violet-soft);border-radius:26px;min-height:230px;padding:28px}.points-card>strong{letter-spacing:-.075em;margin-top:35px;font-size:56px;line-height:1;display:block}.points-card>strong span{letter-spacing:.05em;font-size:13px}.points-card>p:not(.card-label){color:#5e5f69;margin:14px 0 20px;font-size:12px}.points-card button{color:#503ab0;cursor:pointer;background:0 0;border:0;padding:0;font-size:12px;font-weight:850}.quiz-dialog{width:min(1040px,100%)}.quiz-mode-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:11px;display:grid}.quiz-mode-grid button{border:1.5px solid var(--ink);text-align:left;cursor:pointer;background:#fff;border-radius:20px;flex-direction:column;align-items:flex-start;min-height:255px;padding:22px;transition:all .18s;display:flex}.quiz-mode-grid button:first-child{background:#eef8c3}.quiz-mode-grid button:nth-child(2){background:var(--violet-soft)}.quiz-mode-grid button:nth-child(3){background:var(--coral-soft)}.quiz-mode-grid button:hover{box-shadow:5px 5px 0 var(--ink);transform:translate(-3px,-3px)}.quiz-mode-grid button>span{color:#20212b40;font-family:var(--font-geist-mono), monospace;letter-spacing:-.08em;font-size:44px;font-weight:950}.quiz-mode-grid button>strong{letter-spacing:-.035em;margin-top:auto;font-size:23px}.quiz-mode-grid button>p{color:#5e5f68;min-height:48px;margin:9px 0;font-size:12px;line-height:1.55}.quiz-mode-grid button>small{color:#696a72;font-size:10px}.quiz-mode-grid button>b{margin-top:18px;font-size:12px}.quiz-bank-note{background:var(--ink);color:#fff;border-radius:13px;justify-content:space-between;align-items:center;gap:20px;margin-top:15px;padding:16px;display:flex}.quiz-bank-note strong{font-size:14px}.quiz-bank-note span{color:#cfd0d5;font-size:11px}.warmup-section{background:#fff7d7}.warmup-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;display:grid}.warmup-grid details{background:#fff;border:1px solid #dfd3a2;border-radius:13px;padding:15px}.warmup-grid summary{cursor:pointer;align-items:flex-start;gap:9px;font-size:13px;font-weight:770;line-height:1.5;display:flex}.warmup-grid summary span{background:#fff1b8;border-radius:7px;flex:none;place-items:center;width:24px;height:24px;display:grid}.warmup-grid p{color:#68675f;margin:12px 0 6px;font-size:11px;line-height:1.55}.warmup-grid strong{color:#6a5500;font-size:12px}.vocabulary-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.vocabulary-grid article{border:1px solid var(--line);background:var(--paper);border-radius:13px;min-height:102px;padding:15px}.vocabulary-grid strong{font-size:14px}.vocabulary-grid p{color:#666770;margin:8px 0 0;font-size:12px;line-height:1.55}.concept-model{border-left:3px solid var(--violet);background:#fff;border-radius:0 9px 9px 0;gap:5px;margin-top:13px;padding:11px 12px;display:grid}.concept-model small{color:var(--violet);letter-spacing:.08em;font-size:9px;font-weight:900}.concept-model strong{font-size:12px;line-height:1.45}.micro-skill-list .self-check{color:#4d5d1d;background:#eef8c3;border-radius:9px;padding:9px 11px;font-weight:750}.worked-example-list.three-examples{grid-template-columns:repeat(auto-fit,minmax(230px,1fr))}.summary-section{background:#eef8c3}.summary-section>ol{color:#53564b;gap:8px;margin:0;padding-left:22px;font-size:13px;line-height:1.6;display:grid}.growth-section{margin-top:72px}.growth-heading{border-bottom:2px solid var(--ink);justify-content:space-between;align-items:flex-end;gap:24px;padding-bottom:20px;display:flex}.growth-heading h2{letter-spacing:-.06em;margin:0;font-size:clamp(34px,5vw,54px)}.growth-heading>span{color:#73747c;font-size:12px}.growth-layout{grid-template-columns:1fr 1fr 1fr;gap:13px;margin-top:24px;display:grid}.profile-editor,.title-card,.growth-stats{border:1.5px solid var(--ink);background:#fff;border-radius:22px;min-height:440px;padding:24px}.profile-avatar-large{border:2px solid var(--ink);background:var(--lime);width:86px;height:86px;box-shadow:4px 4px 0 var(--ink);border-radius:25px;place-items:center;margin:10px 0 20px;font-size:46px;display:grid}.profile-editor label{gap:6px;margin-top:15px;display:grid}.profile-editor label>span{color:#6b6c74;font-size:10px;font-weight:800}.profile-editor input,.profile-editor select{border:1px solid var(--line);background:#fff;border-radius:10px;outline:none;width:100%;min-height:43px;padding:10px 12px}.profile-editor input:focus,.profile-editor select:focus{border-color:var(--violet);box-shadow:0 0 0 3px var(--violet-soft)}.profile-editor>small{color:#797a82;margin-top:16px;font-size:10px;line-height:1.5;display:block}.avatar-picker{flex-wrap:wrap;gap:6px;margin-top:10px;display:flex}.avatar-picker button{border:1px solid var(--line);background:var(--paper);cursor:pointer;border-radius:10px;width:37px;height:37px;font-size:18px}.avatar-picker button.active{border-color:var(--ink);background:var(--lime);box-shadow:2px 2px 0 var(--ink)}.title-card{background:var(--violet-soft);position:relative;overflow:hidden}.title-card:after{content:"π";color:#7456e81f;font-family:Georgia,serif;font-size:190px;position:absolute;top:-35px;right:-16px}.title-card>strong{z-index:1;margin:16px 0;font-size:75px;display:block;position:relative}.title-card h3{z-index:1;letter-spacing:-.05em;margin:0;font-size:34px;position:relative}.title-card>p:not(.card-label){z-index:1;color:#5d5872;position:relative}.title-score{align-items:baseline;gap:8px;margin-top:42px;display:flex}.title-score b{letter-spacing:-.06em;font-size:46px}.title-score span{color:#656174;font-size:11px}.title-track{border:1.5px solid var(--ink);background:#fff;border-radius:99px;height:9px;margin:12px 0 8px;overflow:hidden}.title-track i{background:var(--violet);height:100%;display:block}.title-card>small{color:#615d70;font-size:10px}.growth-stats{background:var(--ink);color:#fff;grid-template-columns:1fr 1fr;gap:9px;display:grid}.growth-stats>p{color:#c5c6cb;grid-column:1/-1}.growth-stats>div{background:#292a35;border:1px solid #4a4b55;border-radius:14px;flex-direction:column;justify-content:flex-end;min-height:145px;padding:15px;display:flex}.growth-stats strong{letter-spacing:-.06em;font-size:45px}.growth-stats span{color:#b7b8c0;font-size:10px}.badge-section{margin-top:55px}.badge-section h3{letter-spacing:-.045em;margin:0;font-size:34px}.badge-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:18px;display:grid}.badge-grid article{border:1px solid var(--line);border-radius:14px;grid-template-columns:48px 1fr auto;align-items:center;gap:11px;min-height:94px;padding:14px;display:grid}.badge-grid article>span{border-radius:12px;place-items:center;width:44px;height:44px;font-size:23px;display:grid}.badge-grid article>div{gap:4px;display:grid}.badge-grid article strong{font-size:13px}.badge-grid article small{color:#777881;font-size:9px}.badge-grid article>b{background:var(--lime);color:#4c5e11;border-radius:99px;padding:4px 6px;font-size:8px}.badge-grid article.earned{border-color:var(--ink);box-shadow:3px 3px 0 var(--ink);background:#fff}.badge-grid article.earned>span{background:var(--violet-soft)}.badge-grid article.locked{opacity:.68;background:#f5f3ed}.badge-grid article.locked>span{color:#aaa8a1;background:#e5e2da}.reward-bottom-grid{grid-template-columns:.8fr 1.2fr;gap:13px;margin-top:55px;display:grid}.points-guide,.reward-history{border:1px solid var(--line);background:#fff;border-radius:19px;padding:24px}.points-guide{background:#fff7d7}.points-guide ul{gap:10px;margin:22px 0;padding:0;list-style:none;display:grid}.points-guide li{grid-template-columns:42px 1fr;align-items:center;font-size:12px;display:grid}.points-guide li b{color:var(--violet);font-size:17px}.points-guide>small{color:#76746b;font-size:10px;line-height:1.5}.reward-history ol{margin:0;padding:0;list-style:none;display:grid}.reward-history li{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:15px;padding:12px 0;display:flex}.reward-history li:last-child{border-bottom:0}.reward-history li>span{gap:4px;display:grid}.reward-history li b{font-size:12px}.reward-history li small{color:#83838b;font-size:9px}.reward-history li>strong{color:#557309;font-size:17px}.admin-growth-note{border-top:1px solid #4b4c56;flex-wrap:wrap;gap:6px;margin-top:18px;padding-top:14px;display:flex}.admin-growth-note span{color:#d8d9de;background:#353641;border-radius:7px;padding:5px 7px;font-size:9px}@media (max-width:840px){.account-hero{grid-template-columns:1fr;gap:48px}.hero{grid-template-columns:1fr;min-height:auto}.orbit-card{min-height:300px}.section-heading{flex-direction:column;align-items:flex-start}.profile-switcher{width:100%}.profile-pill{flex:1;min-width:0}.header-account{gap:5px}.account-chip>div,.account-chip>span{display:none}.dashboard-grid{grid-template-columns:1fr}.dashboard-grid-three{grid-template-columns:1fr 1fr}.dashboard-grid-three .welcome-card{grid-column:1/-1}.unit-grid{grid-template-columns:1fr}.curriculum-toolbar,.records-header{flex-direction:column;align-items:flex-start}.score-list,.goal-list,.worked-example-list,.mistake-grid,.admin-hero{grid-template-columns:1fr}.admin-hero-mark{min-height:190px}.admin-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-metrics article{border-bottom:1px solid #d8d5cc}.admin-user summary{grid-template-columns:46px minmax(0,1fr) 80px 55px 28px}.admin-progress,.admin-score,.admin-updated{display:none}.admin-user-detail{grid-template-columns:1fr;padding-left:0}.admin-grade-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.growth-layout{grid-template-columns:1fr 1fr}.growth-stats{grid-column:1/-1;min-height:auto}.badge-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.worked-example-list.three-examples{grid-template-columns:1fr}}@media (max-width:560px){.account-hero{padding-top:46px}.account-copy h1{font-size:50px}.grade-preview-card{min-height:142px;padding:17px}.site-header{min-height:72px}.edition{display:none}.main-nav button{padding:8px 9px;font-size:12px}.account-chip{padding:3px}.account-chip>a{padding:6px}.hero{padding-top:48px}.hero h1{font-size:54px}.orbit-card{min-height:270px}.growth-orbit{min-height:300px}.profile-switcher{flex-direction:column}.grade-switcher{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.welcome-card,.units-heading{flex-direction:column;align-items:flex-start}.semester-tabs{width:100%}.semester-tabs button{flex:1;min-width:0}.edition-note{flex-direction:column;align-items:flex-start}.record-stats{width:100%}.record-stats span{flex:1;min-width:0}.learning-dialog{border-radius:22px;padding:34px 20px 24px}.dialog-backdrop{padding:max(10px, env(safe-area-inset-top)) max(10px, env(safe-area-inset-right)) max(10px, env(safe-area-inset-bottom)) max(10px, env(safe-area-inset-left))}.learning-dialog>h2{max-width:85%}.dialog-actions{flex-direction:column-reverse;align-items:stretch}.dialog-actions button{width:100%}.quiz-meta{flex-wrap:wrap}.mastery-grid{grid-template-columns:1fr}.lesson-section{padding:16px}.dashboard-grid-three{grid-template-columns:1fr}.dashboard-grid-three .welcome-card{grid-column:auto}.growth-layout,.reward-bottom-grid,.quiz-mode-grid,.badge-grid,.warmup-grid,.vocabulary-grid{grid-template-columns:1fr}.profile-editor,.title-card,.growth-stats{min-height:auto}.growth-heading,.quiz-bank-note{flex-direction:column;align-items:flex-start}footer{flex-direction:column;justify-content:center;align-items:flex-start;gap:8px}.admin-header{width:min(100% - 28px,1320px)}.admin-header-actions>span,.admin-header-actions>a:first-of-type{display:none}.admin-hero,.admin-metrics,.admin-roster,.admin-footer{width:min(100% - 28px,1320px)}.admin-hero{gap:34px;padding-top:45px}.admin-hero h1{font-size:53px}.admin-metrics{grid-template-columns:1fr 1fr}.admin-metrics article{min-height:145px}.admin-metrics .metric-primary{grid-column:1/-1}.admin-toolbar{grid-template-columns:1fr 1fr}.admin-search{grid-column:1/-1}.admin-user summary{grid-template-columns:42px minmax(0,1fr) 52px 28px;gap:9px}.admin-grade{display:none}.admin-grade-grid{grid-template-columns:1fr}}.child-lesson-dialog{background:#fffdf7;width:min(1120px,100%)}.speech-button{border:1.5px solid var(--ink);color:var(--ink);cursor:pointer;box-shadow:2px 3px 0 var(--ink);background:#fff;border-radius:99px;justify-content:center;align-items:center;gap:8px;padding:10px 14px;font-size:12px;font-weight:850;transition:all .16s;display:inline-flex}.speech-button:hover{box-shadow:3px 4px 0 var(--ink);transform:translate(-1px,-1px)}.speech-button>span{background:var(--violet);color:#fff;border-radius:50%;place-items:center;width:22px;height:22px;font-size:9px;display:grid}.speech-button.speaking{background:var(--lime)}.speech-button.compact{box-shadow:none;padding:6px 9px;font-size:10px}.speech-button.compact>span{width:18px;height:18px}.self-study-banner{border:1.5px solid var(--ink);background:#fff2bd;border-radius:17px;justify-content:space-between;align-items:center;gap:18px;margin:18px 0;padding:15px 17px;display:flex}.self-study-banner>div{align-items:center;gap:12px;display:flex}.self-study-banner>div>span{font-size:32px}.self-study-banner p{color:#666050;margin:0;font-size:12px;line-height:1.5}.self-study-banner p b{color:var(--ink);font-size:14px;display:block}.lesson-stage-rail{z-index:3;border:1.5px solid var(--ink);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffdf7f0;border-radius:19px;grid-template-columns:repeat(6,minmax(0,1fr));gap:6px;padding:9px;display:grid;position:sticky;top:-42px}.lesson-stage-rail button{color:#74746e;cursor:pointer;background:0 0;border:0;border-radius:13px;justify-items:center;gap:3px;min-width:0;padding:10px 5px;display:grid}.lesson-stage-rail button>span{background:#eeece5;border-radius:11px;place-items:center;width:34px;height:34px;font-size:17px;display:grid}.lesson-stage-rail button b{font-size:11px}.lesson-stage-rail button small{max-width:92px;font-size:8px;line-height:1.25}.lesson-stage-rail button.active{background:var(--violet-soft);color:#4d37ae}.lesson-stage-rail button.active>span{background:var(--violet);color:#fff;transform:rotate(-4deg)scale(1.05)}.lesson-stage-rail button.done>span{background:var(--lime);color:#465d00;font-weight:950}.lesson-stage{min-height:520px;animation:.3s both lesson-stage-in}@keyframes lesson-stage-in{0%{opacity:0;transform:translateY(9px)}to{opacity:1;transform:translateY(0)}}.kid-mission{background:var(--lime);border-radius:25px;grid-template-columns:.72fr 1.28fr;gap:18px;margin-top:20px;padding:25px;display:grid}.kid-mission small{color:#56611d;letter-spacing:.1em;font-size:10px;font-weight:900}.kid-mission h3{letter-spacing:-.04em;margin:8px 0 0;font-size:27px}.kid-mission ul{gap:7px;margin:0;padding:0;list-style:none;display:grid}.kid-mission li{background:#ffffffad;border:1px solid #20212b2e;border-radius:12px;align-items:flex-start;gap:9px;padding:11px 12px;font-size:12px;line-height:1.5;display:flex}.kid-mission li span{font-weight:900}.child-warmup{border-radius:20px;margin-top:12px;padding:22px}.concept-playground{border:2px solid var(--ink);background:var(--violet-soft);box-shadow:7px 8px 0 var(--ink);border-radius:27px;grid-template-columns:1fr 1fr;gap:20px;margin-top:20px;padding:27px;display:grid}.playground-copy small{color:#624ac1;letter-spacing:.1em;font-size:10px;font-weight:900}.playground-copy h3{letter-spacing:-.045em;margin:8px 0;font-size:28px}.playground-copy p{color:#5f5b70;margin:0;font-size:13px;line-height:1.65}.math-scene{border:1.5px solid var(--ink);background:#fffdf8;border-radius:22px;place-items:center;min-height:210px;padding:22px;display:grid;overflow:hidden}.say-it{background:var(--ink);color:#fff;border-radius:14px;grid-column:1/-1;align-items:center;gap:12px;padding:13px 15px;display:flex}.say-it span{font-size:24px}.say-it p{color:#d8d8df;margin:0;font-size:12px;line-height:1.5}.say-it b{color:var(--lime)}.number-bubbles{gap:10px;display:flex}.number-bubbles i{border:2px solid var(--ink);background:var(--lime);width:43px;height:43px;box-shadow:3px 3px 0 var(--ink);border-radius:50%;place-items:center;font-size:18px;font-style:normal;font-weight:900;display:grid}.number-bubbles i:nth-child(2n){background:var(--coral-soft);transform:translateY(-12px)}.number-track{background:var(--ink);justify-content:space-between;width:82%;height:4px;margin-top:24px;display:flex}.number-track span{border:2px solid var(--ink);background:#fff;border-radius:50%;width:12px;height:12px;margin-top:-4px}.dot-array{background:#eef8c3;border-radius:20px;grid-template-columns:repeat(4,1fr);gap:12px;width:190px;padding:21px;display:grid;transform:rotate(-2deg)}.dot-array i{aspect-ratio:1;border:2px solid var(--ink);background:var(--coral);box-shadow:2px 2px 0 var(--ink);border-radius:50%}.kind-fraction .math-scene{grid-template-columns:auto auto;gap:22px}.fraction-pie{border:3px solid var(--ink);background:conic-gradient(var(--coral) 0 25%, #fff 25% 100%);width:130px;height:130px;box-shadow:5px 5px 0 var(--ink);border-radius:50%}.kind-fraction .math-scene strong{letter-spacing:-.06em;font-size:42px}.shape-stack{width:190px;height:145px;position:relative}.shape-stack i{border:3px solid var(--ink);box-shadow:4px 4px 0 var(--ink);display:block;position:absolute}.shape-stack i:first-child{background:var(--lime);width:95px;height:95px;bottom:6px;left:4px;transform:rotate(-7deg)}.shape-stack i:nth-child(2){background:var(--coral-soft);border-radius:50%;width:96px;height:70px;top:9px;right:1px}.shape-stack i:nth-child(3){border:47px solid #0000;border-bottom:82px solid var(--violet);width:0;height:0;box-shadow:none;top:9px;left:78px}.mini-ruler{border-bottom:5px solid var(--ink);background:#fff2bd;align-items:flex-end;width:95%;height:72px;display:flex}.mini-ruler i{border-left:2px solid var(--ink);flex:1;height:35px;font-style:normal;position:relative}.mini-ruler i:nth-child(odd){height:54px}.mini-ruler b{font-size:10px;position:absolute;bottom:-26px;left:-5px}.mini-bars{align-items:flex-end;gap:12px;height:155px;display:flex}.mini-bars i{border:2px solid var(--ink);background:var(--violet);border-bottom:0;width:32px}.mini-bars i:first-child{height:50px}.mini-bars i:nth-child(2){background:var(--lime);height:110px}.mini-bars i:nth-child(3){background:var(--coral);height:80px}.mini-bars i:nth-child(4){background:#9ad8ff;height:140px}.mini-balance{text-align:center;grid-template-columns:1fr 50px 1fr;align-items:center;width:90%;display:grid}.mini-balance span{border:2px solid var(--ink);background:var(--lime);border-radius:13px;padding:18px 10px;font-size:22px;font-weight:900}.mini-balance span:last-child{background:var(--coral-soft)}.mini-balance i{background:var(--ink);height:7px}.story-route{align-items:center;gap:9px;display:flex}.story-route span{border:2px solid var(--ink);background:var(--lime);border-radius:14px;padding:16px 13px;font-size:13px;font-weight:900}.story-route span:last-child{background:var(--coral-soft)}.micro-skill-list details{border:1px solid var(--line);background:var(--paper);border-radius:15px;padding:0;overflow:hidden}.micro-skill-list details summary{cursor:pointer;grid-template-columns:30px 1fr auto;align-items:center;gap:10px;padding:16px;list-style:none;display:grid}.micro-skill-list details summary::-webkit-details-marker{display:none}.micro-skill-list details summary>span{background:var(--violet-soft);color:#573dbb;border-radius:9px;place-items:center;width:28px;height:28px;font-size:11px;font-weight:900;display:grid}.micro-skill-list details summary b{font-size:15px}.micro-skill-list details summary em{color:#85858d;font-size:9px;font-style:normal}.micro-skill-list details[open] summary{border-bottom:1px solid var(--line);background:#fff}.micro-skill-list details>p,.micro-skill-list details>ol,.micro-skill-list details>div{margin-left:17px;margin-right:17px}.micro-skill-list details>ol{margin-bottom:15px}.memory-card .speech-button{margin-top:10px}.example-stage{background:#f8f5ff}.example-coach{border:1.5px solid var(--ink);background:#fff;border-radius:17px;flex-direction:column;min-height:425px;padding:18px;display:flex}.example-coach .speech-button{align-self:flex-start;margin-top:9px}.thinking-pause{background:#fff2bd;border-radius:10px;gap:8px;margin-top:12px;padding:10px;display:flex}.thinking-pause span{font-size:20px}.thinking-pause p{color:#6e654a;margin:0;font-size:10px;line-height:1.45}.example-coach ol{gap:8px;padding:0;list-style:none;display:grid}.example-coach ol li{color:#5d5e67;grid-template-columns:24px 1fr;align-items:start;gap:8px;font-size:11px;line-height:1.5;display:grid}.example-coach ol li span{background:var(--violet);color:#fff;border-radius:7px;place-items:center;width:23px;height:23px;font-size:9px;font-weight:900;display:grid}.reveal-step{border:1.5px solid var(--ink);background:var(--lime);cursor:pointer;border-radius:11px;width:100%;margin-top:auto;padding:11px;font-size:11px;font-weight:850}.coach-done{color:#53631b;background:#eef8c3;border-radius:9px;margin-top:auto;padding:10px;font-size:10px;font-weight:800}.mini-practice{border:2px solid var(--ink);box-shadow:7px 8px 0 var(--ink);background:#e7f4ff;border-radius:25px;margin-top:20px;padding:24px}.mini-practice-top{justify-content:space-between;align-items:center;gap:16px;display:flex}.mini-practice-top>span{font-size:11px;font-weight:900}.mini-practice-top>div{gap:6px;display:flex}.mini-practice-top button{border:1px solid var(--ink);cursor:pointer;background:#fff;border-radius:10px;width:34px;height:34px;font-size:11px;font-weight:900}.mini-practice-top button.active{background:var(--violet);color:#fff}.mini-practice-top button.done{background:var(--lime);color:#465d00}.mini-practice-top button:disabled,.mini-practice-top button.locked{opacity:.45;cursor:not-allowed}.mini-question{background:#fff;border-radius:19px;margin-top:15px;padding:24px}.mini-question small{color:var(--violet);font-size:10px;font-weight:900}.mini-question h3{margin:8px 0 10px;font-size:23px;line-height:1.45}.mini-question>input{border:2px solid var(--ink);border-radius:13px;width:100%;margin-top:17px;padding:15px;font-size:18px}.mini-options{grid-template-columns:1fr 1fr;gap:8px;margin-top:18px;display:grid}.mini-options button{border:1.5px solid var(--ink);text-align:left;cursor:pointer;background:#fff;border-radius:12px;align-items:center;gap:10px;min-height:52px;padding:10px 12px;font-weight:750;display:flex}.mini-options button.selected{background:var(--violet-soft);box-shadow:3px 3px 0 var(--violet)}.mini-options span{background:var(--paper);border-radius:8px;place-items:center;width:27px;height:27px;font-size:10px;display:grid}.instant-feedback{border-radius:12px;align-items:flex-start;gap:11px;margin-top:15px;padding:13px;display:flex}.instant-feedback.right{background:#eef8c3}.instant-feedback.retry{background:var(--coral-soft)}.instant-feedback>span{font-size:24px}.instant-feedback p{color:#5f605d;margin:0;font-size:11px;line-height:1.55}.instant-feedback b{color:var(--ink);font-size:13px;display:block}.mini-actions{justify-content:space-between;gap:10px;margin-top:18px;display:flex}.mini-actions button,.lesson-stage-actions button,.quiz-navigation button,.after-quiz-actions button{border:1.5px solid var(--ink);cursor:pointer;background:#fff;border-radius:11px;padding:11px 14px;font-size:11px;font-weight:850}.mini-actions button.primary,.lesson-stage-actions button.primary,.quiz-navigation button.primary{background:var(--lime)}.mini-actions button:disabled,.lesson-stage-actions button:disabled,.quiz-navigation button:disabled{opacity:.35;cursor:default}.hands-on-card{border:2px solid var(--ink);background:var(--coral-soft);box-shadow:7px 8px 0 var(--ink);border-radius:25px;grid-template-columns:90px 1fr;gap:22px;margin-top:20px;padding:28px;display:grid}.hands-on-icon{border:2px solid var(--ink);background:#fff2bd;border-radius:25px;place-items:center;width:84px;height:84px;font-size:43px;display:grid;transform:rotate(-5deg)}.hands-on-card small{color:#9b493d;letter-spacing:.08em;font-size:10px;font-weight:900}.hands-on-card h3{margin:6px 0 9px;font-size:27px}.hands-on-card p,.hands-on-card li{color:#6b5956;font-size:12px;line-height:1.65}.hands-on-card ol{margin:12px 0 0;padding-left:20px}.project-checklist{gap:9px;margin-top:17px;display:grid}.project-checklist button{width:100%;min-height:48px;color:var(--ink);font:inherit;text-align:left;cursor:pointer;background:#ffffffb8;border:1.5px solid #b87b70;border-radius:14px;align-items:center;gap:10px;padding:10px 13px;font-size:13px;font-weight:800;display:flex}.project-checklist button span{background:var(--paper);border:1.5px solid;border-radius:50%;flex:0 0 28px;place-items:center;height:28px;display:grid}.project-checklist button.done{color:#176148;background:#e8fff3;border-color:#298764}.project-complete{background:#e8fff3;border:1.5px solid #298764;border-radius:14px;align-items:center;gap:8px;margin-top:12px;padding:12px 14px;display:flex;position:relative;overflow:hidden;color:#176148!important}.project-complete>span,.project-complete>b{z-index:1;position:relative}.finish-stage{border:2px solid var(--ink);background:var(--lime);text-align:center;box-shadow:7px 8px 0 var(--ink);border-radius:25px;margin-top:20px;padding:34px}.finish-stage>span{font-size:66px;animation:1.7s ease-in-out infinite star-bounce;display:block}@keyframes star-bounce{50%{transform:translateY(-6px)rotate(5deg)}}.finish-stage small{letter-spacing:.08em;font-size:10px;font-weight:900}.finish-stage h3{margin:8px 0 17px;font-size:28px}.finish-stage ol{text-align:left;gap:8px;max-width:720px;margin:0 auto 18px;padding:0;list-style:none;display:grid}.finish-stage li{background:#ffffffb8;border-radius:11px;padding:11px 13px;font-size:12px;line-height:1.55}.completion-choice{border:1.5px solid var(--ink);background:#fff;border-radius:16px;grid-template-columns:1fr auto auto;align-items:center;gap:10px;margin-top:15px;padding:17px;display:grid}.completion-choice>div{align-items:center;gap:12px;display:flex}.completion-choice>div>span{font-size:30px}.completion-choice p{color:#666770;margin:0;font-size:10px;line-height:1.45}.completion-choice p b{color:var(--ink);font-size:13px;display:block}.lesson-stage-actions{z-index:3;padding:11px 11px max(11px, env(safe-area-inset-bottom));border:1.5px solid var(--ink);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffdf7fa;border-radius:16px;grid-template-columns:1fr auto 1fr;align-items:center;gap:10px;margin-top:20px;display:grid;position:sticky;bottom:0}.lesson-stage-actions>span{color:#797970;text-align:center;font-size:10px;font-weight:850}.lesson-stage-actions button:last-child{justify-self:end}.test-ready-card{border:1.5px solid var(--ink);background:#fff2bd;border-radius:16px;gap:14px;margin:18px 0;padding:16px;display:flex}.test-ready-card>span{font-size:35px}.test-ready-card b{font-size:14px}.test-ready-card p{color:#6d6654;margin:4px 0 0;font-size:11px;line-height:1.5}.quiz-focus-header{background:var(--violet-soft);border-radius:17px;grid-template-columns:1fr auto;align-items:center;gap:11px 18px;margin:18px 0 14px;padding:17px 18px;display:grid}.quiz-focus-header small{color:#6952c6;font-size:9px;font-weight:900;display:block}.quiz-focus-header strong{margin-top:4px;font-size:18px;display:block}.quiz-progress-track{border:1.5px solid var(--ink);background:#fff;border-radius:99px;grid-column:1/-1;height:9px;overflow:hidden}.quiz-progress-track i{background:var(--lime);height:100%;transition:width .25s;display:block}.quiz-focus-header>p{color:#6e687b;grid-column:1/-1;margin:-3px 0 0;font-size:9px;font-weight:800}.question-palette{border:1px solid var(--line);background:var(--paper);border-radius:14px;flex-wrap:wrap;gap:5px;margin-bottom:18px;padding:12px;display:flex}.question-palette button{color:#77776f;cursor:pointer;background:#fff;border:1px solid #cfcbc1;border-radius:9px;width:31px;height:31px;font-size:10px;font-weight:850}.question-palette button.active{outline:2px solid var(--ink);outline-offset:2px}.question-palette button.answered{background:var(--violet-soft);color:#543bb4}.question-palette button.unsure{color:#7c6409;background:#fff2bd}.question-palette button.correct{background:var(--lime);color:#405800;border-color:#6f971f}.question-palette button.wrong{border-color:var(--coral);background:var(--coral-soft);color:#963e32}.question-palette button.locked{opacity:.38;cursor:not-allowed}.focus-question{border:2px solid var(--ink);min-height:340px;box-shadow:6px 7px 0 var(--ink);background:#fff;padding:28px}.focus-question legend{max-width:92%;font-size:20px}.focus-question .option-list{grid-template-columns:1fr 1fr;gap:10px}.focus-question .option-list label{border:1.5px solid var(--ink);min-height:62px;padding:14px;font-size:14px}.focus-question .numeric-answer input{min-height:64px;font-size:22px}.unsure-button{color:#74746f;cursor:pointer;background:#fff;border:1px dashed #ada99f;border-radius:99px;margin-top:15px;padding:9px 13px;font-size:10px;font-weight:800}.unsure-button.active{color:#725c08;background:#fff2bd;border-style:solid}.unsure-review-banner{color:#5f552f;background:#fff5c9;border:1.5px solid #9b811d;border-radius:14px;align-items:center;gap:12px;margin:13px 0;padding:12px 14px;display:flex}.unsure-review-banner>span{font-size:26px}.unsure-review-banner p{margin:0;font-size:12px;line-height:1.55}.unsure-review-banner b{color:var(--ink);font-size:14px;display:block}.question-palette.reviewing-unsure button.review-locked{opacity:.36;cursor:not-allowed}.question-palette button.review-locked{opacity:.38;cursor:not-allowed}.question-palette.reviewing-unsure button.unsure{border-color:#8c7112;box-shadow:inset 0 0 0 1px #8c7112}.quiz-navigation{border-top:1px solid var(--line);justify-content:space-between;gap:10px;margin-top:17px;padding-top:17px;display:flex}.quiz-navigation .submit{background:var(--coral);color:#fff}.after-quiz-actions{justify-content:center;gap:9px;margin-top:12px;display:flex}@media (max-width:760px){.lesson-stage-rail{grid-template-columns:repeat(3,1fr);position:static}.lesson-stage-rail button small{display:none}.kid-mission,.concept-playground{grid-template-columns:1fr}.say-it{grid-column:auto}.completion-choice{grid-template-columns:1fr 1fr}.completion-choice>div{grid-column:1/-1}.focus-question .option-list{grid-template-columns:1fr}}@media (max-width:560px){.child-lesson-dialog{padding-left:15px;padding-right:15px}.self-study-banner{flex-direction:column;align-items:flex-start}.lesson-stage-rail{grid-template-columns:repeat(3,1fr);padding:6px}.lesson-stage-rail button{padding:7px 3px}.lesson-stage-rail button>span{width:29px;height:29px;font-size:14px}.kid-mission,.concept-playground,.mini-practice,.hands-on-card,.finish-stage{box-shadow:4px 5px 0 var(--ink);border-radius:20px;padding:18px}.kid-mission h3,.playground-copy h3,.finish-stage h3{font-size:23px}.math-scene{min-height:170px}.hands-on-card{grid-template-columns:1fr}.hands-on-icon{width:67px;height:67px;font-size:34px}.mini-question{padding:17px}.mini-options{grid-template-columns:1fr}.lesson-stage-actions{grid-template-columns:1fr 1fr;bottom:0}.lesson-stage-actions>span{display:none}.lesson-stage-actions button{width:100%}.completion-choice{grid-template-columns:1fr}.completion-choice>div{grid-column:auto}.quiz-focus-header{grid-template-columns:1fr}.quiz-focus-header .speech-button{justify-self:start}.quiz-progress-track,.quiz-focus-header>p{grid-column:auto}.focus-question{min-height:300px;box-shadow:4px 5px 0 var(--ink);padding:20px 15px}.focus-question legend{max-width:88%;font-size:17px}.quiz-navigation button{flex:1}}.self-study-banner{grid-template-columns:minmax(0,1fr) auto auto;display:grid}.self-study-banner .mission-copy{min-width:0}.mission-stars{background:#ffffff8c;border:1px dashed #20212b59;border-radius:12px;justify-items:center;padding:7px 10px;gap:3px!important;display:grid!important}.mission-stars small{color:#786b3f;letter-spacing:.08em;font-size:8px;font-weight:900}.mission-stars>span{gap:2px;display:flex}.mission-stars i{color:#20212b2b;font-size:13px;font-style:normal;transition:all .25s}.mission-stars i.lit{color:#f3aa00;filter:drop-shadow(0 1px #fff);transform:scale(1.16)rotate(-5deg)}.buddy-nudge{background:#e7f4ff;border:1px solid #b9c9ef;border-radius:13px;align-items:center;gap:10px;margin:10px 0;padding:9px 13px;display:flex}.buddy-nudge>span{font-size:24px;animation:2.4s ease-in-out infinite buddy-float}.buddy-nudge p{color:#536073;margin:0;font-size:10px;line-height:1.5}.buddy-nudge b{color:var(--ink)}@keyframes buddy-float{50%{transform:translateY(-3px)rotate(3deg)}}.math-easter-egg{grid-column:1/-1;justify-items:start;gap:8px;display:grid}.math-easter-egg button{border:1px dashed var(--violet);color:#5a43b4;cursor:pointer;background:#fff;border-radius:99px;padding:8px 11px;font-size:10px;font-weight:850}.math-easter-egg p{color:#62583b;background:#fff2bd;border-radius:11px;margin:0;padding:11px 13px;font-size:11px;line-height:1.55;animation:.28s both egg-pop}@keyframes egg-pop{0%{opacity:0;transform:scale(.94)translateY(-4px)}to{opacity:1;transform:scale(1)translateY(0)}}.practice-game-bar{grid-template-columns:auto auto 1fr;align-items:center;gap:8px;margin-bottom:15px;display:grid}.practice-game-bar>div{border:1px solid var(--ink);box-shadow:2px 2px 0 var(--ink);background:#fff;border-radius:12px;align-items:center;gap:7px;padding:8px 10px;display:flex}.practice-game-bar>div>span{font-size:20px}.practice-game-bar p{color:#6a6b72;margin:0;font-size:8px;line-height:1.2}.practice-game-bar p b{color:var(--ink);font-size:13px;display:block}.practice-game-bar>button{color:#556372;cursor:pointer;background:#ffffffb3;border:1px solid #9ba9ba;border-radius:99px;justify-self:end;padding:8px 10px;font-size:9px;font-weight:850}.hint-card-button{color:#806a18;cursor:pointer;background:#fffdf4;border:1px dashed #9c811e;border-radius:99px;margin-top:14px;padding:8px 11px;font-size:10px;font-weight:850}.hint-card-button:disabled{opacity:.65;cursor:default}.hint-card{background:#fff7d7;border:1px solid #e4d08a;border-radius:12px;align-items:flex-start;gap:10px;margin-top:9px;padding:12px;display:flex}.hint-card>span{font-size:22px}.hint-card p{color:#6b6245;margin:0;font-size:10px;line-height:1.55}.hint-card b{color:var(--ink)}.instant-feedback.celebration{border:1px solid #b5d466;position:relative;overflow:hidden}.fun-burst{pointer-events:none;display:block;position:absolute;inset:0;overflow:hidden}.fun-burst i{color:var(--coral);opacity:0;font-size:13px;font-style:normal;font-weight:950;animation:.9s ease-out both fun-pop;position:absolute;top:55%;left:50%}.fun-burst i:nth-child(2){color:var(--violet);animation-delay:30ms;transform:rotate(45deg)}.fun-burst i:nth-child(3){color:#e39a00;animation-delay:60ms}.fun-burst i:nth-child(4){color:#5f8e12;animation-delay:90ms}.fun-burst i:nth-child(5){color:#278bd0;animation-delay:.12s}.fun-burst i:nth-child(6){color:var(--coral);animation-delay:.15s}.fun-burst i:nth-child(7){color:var(--violet);animation-delay:.18s}.fun-burst i:nth-child(8){color:#e39a00;animation-delay:.21s}@keyframes fun-pop{0%{opacity:0;transform:translate(-50%,-50%)scale(.3)}18%{opacity:1}to{opacity:0;transform:translate(calc(-50% + var(--burst-x,90px)), calc(-50% + var(--burst-y,-55px))) rotate(180deg) scale(1.2)}}.fun-burst i:first-child{--burst-x:-120px;--burst-y:-60px}.fun-burst i:nth-child(2){--burst-x:-75px;--burst-y:-100px}.fun-burst i:nth-child(3){--burst-x:-25px;--burst-y:-85px}.fun-burst i:nth-child(4){--burst-x:35px;--burst-y:-105px}.fun-burst i:nth-child(5){--burst-x:95px;--burst-y:-72px}.fun-burst i:nth-child(6){--burst-x:-105px;--burst-y:35px}.fun-burst i:nth-child(7){--burst-x:25px;--burst-y:48px}.fun-burst i:nth-child(8){--burst-x:115px;--burst-y:28px}.quiz-mode-grid button>span{letter-spacing:0;filter:drop-shadow(2px 3px #20212b24);font-family:inherit;font-size:46px}.quiz-mode-grid button>em{color:#5c5d64;border:1px solid #20212b40;border-radius:99px;margin-top:8px;padding:5px 8px;font-size:9px;font-style:normal;font-weight:900}.quiz-space-route{color:#fff;background:#20212b;border-radius:17px;grid-template-columns:repeat(5,1fr);gap:5px;margin:18px 0 12px;padding:17px 8px 8px;display:grid;position:relative;overflow:hidden}.quiz-space-route:before,.quiz-space-route:after{content:"";background:#ffffff21;border-radius:50%;position:absolute}.quiz-space-route:before{width:5px;height:5px;top:8px;left:18%;box-shadow:150px 7px #fff3,360px 2px #ffffff40,620px 9px #ffffff26}.quiz-space-route:after{width:3px;height:3px;top:17px;left:42%;box-shadow:230px -7px #ffffff40,470px 3px #ffffff2e}.quiz-space-route>div:not(.route-line){z-index:2;justify-items:center;gap:4px;display:grid;position:relative}.quiz-space-route>div:not(.route-line)>span{color:#777985;background:#343540;border:1px solid #62636d;border-radius:50%;place-items:center;width:25px;height:25px;font-size:9px;display:grid}.quiz-space-route>div.reached>span{border-color:var(--lime);background:var(--lime);color:#465d00;box-shadow:0 0 0 4px #d4ec6e1f}.quiz-space-route small{color:#aeb0b9;text-align:center;font-size:7px;font-weight:800}.route-line{z-index:1;background:#4a4b56;border-radius:99px;height:4px;position:absolute;top:28px;left:10%;right:10%}.route-line>i{border-radius:inherit;background:var(--lime);height:100%;transition:width .35s;display:block}.route-rocket{filter:drop-shadow(2px 2px #000);margin-left:-12px;font-size:19px;transition:left .35s;position:absolute;top:-14px;transform:rotate(45deg)}.next-checkpoint{color:#74757d;text-align:center;margin:-4px 0 12px;font-size:9px;font-weight:800}.quiz-rest-stop{border:1.5px solid var(--ink);box-shadow:3px 3px 0 var(--ink);background:#fff2bd;border-radius:15px;align-items:center;gap:13px;margin:0 0 14px;padding:13px 15px;animation:.3s both rest-arrive;display:flex}.quiz-rest-stop>span{font-size:31px}.quiz-rest-stop b{font-size:12px}.quiz-rest-stop p{color:#6b634c;margin:3px 0 0;font-size:9px;line-height:1.45}@keyframes rest-arrive{0%{opacity:0;transform:translate(12px)}to{opacity:1;transform:translate(0)}}.score-banner.adventure-result{grid-template-columns:auto 1fr auto;gap:15px;position:relative;overflow:hidden}.adventure-result>.fun-burst{z-index:0}.adventure-result>:not(.fun-burst){z-index:1;position:relative}.adventure-title{border-right:1px solid #20212b33;grid-template-columns:auto 1fr;align-items:center;column-gap:8px;min-width:145px;padding-right:15px;display:grid}.adventure-title>span{grid-row:1/3;font-size:39px}.adventure-title small{font-size:8px;font-weight:850}.adventure-title b{font-size:15px}.adventure-result>div:nth-of-type(2)>span{font-size:10px;font-weight:850;display:block}.adventure-result>div:nth-of-type(2)>p{margin:4px 0 0;font-size:10px;line-height:1.45}.adventure-result>strong{grid-row:auto;font-size:56px}@media (max-width:760px){.self-study-banner{grid-template-columns:1fr auto}.self-study-banner .mission-copy{grid-column:1/-1}.score-banner.adventure-result{grid-template-columns:1fr auto}.adventure-title{border-bottom:1px solid #20212b33;border-right:0;grid-column:1/-1;padding:0 0 10px}}@media (max-width:560px){.self-study-banner{grid-template-columns:1fr}.mission-stars{justify-self:stretch}.practice-game-bar{grid-template-columns:1fr 1fr}.practice-game-bar>button{grid-column:1/-1;justify-self:stretch}.quiz-space-route{padding-left:3px;padding-right:3px}.quiz-space-route small{font-size:6px}.quiz-space-route>div:not(.route-line)>span{width:22px;height:22px}.score-banner.adventure-result{grid-template-columns:1fr}.adventure-result>strong{justify-self:start}}@media (prefers-reduced-motion:reduce){.buddy-nudge>span,.math-easter-egg p,.fun-burst i,.quiz-rest-stop,.finish-stage>span{animation:none}.route-line>i,.route-rocket,.mission-stars i{transition:none}}.account-copy h1,.student-app .hero h1,.student-app .learning-dialog>h2{letter-spacing:-.04em;line-height:1.08}.account-copy>small,.grade-preview-card small{color:#565762;font-size:14px;line-height:1.55}.account-copy .eyebrow{color:#565762;letter-spacing:.08em;font-size:14px}.student-app{color:var(--ink)}.student-app small{color:#5f606a;font-size:13px;line-height:1.45}.student-app .eyebrow,.student-app .section-kicker,.student-app .card-label{color:#565762;letter-spacing:.09em;font-size:13px}.student-app .unit-card p,.student-app .unit-card p.unit-description{color:#595a64;font-size:14px;line-height:1.65}.student-app .unit-depth span,.student-app .status-chip,.student-app .wrong-tags span,.student-app .question-tags span{color:#575862;font-size:12px}.student-app .unit-actions button,.student-app .main-nav button,.student-app .semester-tabs button{min-height:44px;font-size:14px}.student-app .dialog-topline span{font-size:13px}.student-app .test-ready-card p,.student-app .quiz-mode-grid button>p,.student-app .quiz-bank-note span{font-size:14px;line-height:1.6}.student-app .quiz-mode-grid button>small,.student-app .quiz-mode-grid button>em,.student-app .quiz-mode-grid button>b{font-size:13px}.student-app .self-study-banner p,.student-app .buddy-nudge p,.student-app .kid-mission li,.student-app .playground-copy p,.student-app .say-it p{color:#50515b;font-size:14px;line-height:1.65}.student-app .lesson-stage-rail button{min-height:76px}.student-app .lesson-stage-rail button b{color:#555660;font-size:14px}.student-app .lesson-stage-rail button small{color:#5f606a;font-size:11px;line-height:1.35}.student-app .lesson-stage-rail button.active b{color:#443099}.student-app .mission-stars small,.student-app .kid-mission small,.student-app .playground-copy small,.student-app .lesson-section-heading small,.student-app .mini-question small,.student-app .hands-on-card small,.student-app .finish-stage small{color:#555660;font-size:12px}.student-app .micro-skill-list details summary em,.student-app .concept-model small,.student-app .thinking-pause p,.student-app .coach-done{color:#595a64;font-size:12px;line-height:1.55}.student-app .micro-skill-list details>p,.student-app .micro-skill-list details>ol,.student-app .example-coach ol li,.student-app .hands-on-card p,.student-app .hands-on-card li,.student-app .math-easter-egg p,.student-app .hint-card p,.student-app .instant-feedback p{color:#50515b;font-size:14px;line-height:1.65}.student-app .speech-button,.student-app .speech-button.compact,.student-app .reveal-step,.student-app .hint-card-button,.student-app .mini-actions button,.student-app .lesson-stage-actions button,.student-app .quiz-navigation button,.student-app .after-quiz-actions button,.student-app .unsure-button{min-height:44px;font-size:14px}.student-app .practice-game-bar p,.student-app .practice-game-bar>button,.student-app .mini-practice-top>span,.student-app .mini-practice-top button{color:#50515b;font-size:13px}.student-app .mini-practice-top button{width:40px;height:40px}.student-app .completion-choice p,.student-app .lesson-stage-actions>span,.student-app .test-ready-card p{color:#555660;font-size:13px;line-height:1.55}.student-app .quiz-focus-header small,.student-app .quiz-focus-header>p,.student-app .next-checkpoint,.student-app .quiz-rest-stop p{color:#555064;font-size:13px;line-height:1.5}.student-app .question-palette button{color:#565762;width:40px;height:40px;font-size:14px}.student-app .quiz-space-route small{color:#d4d5dc;font-size:11px}.student-app .adventure-title small,.student-app .adventure-result>div:nth-of-type(2)>span,.student-app .adventure-result>div:nth-of-type(2)>p{color:#454650;font-size:12px;line-height:1.5}.student-app .mastery-grid p{font-size:14px;line-height:1.45}.student-app .mastery-grid span,.student-app .numeric-answer label{color:#5b5c66;font-size:12px}.student-app .quiz-navigation .submit,.student-app .question-tags .difficulty.挑战,.student-app .option-list label.wrong>span{color:var(--ink)}.student-app .question-tags .difficulty.基础,.student-app .question-tags .difficulty.提高{color:#fff}.student-app .status-chip.learned{color:#4a34a5}.student-app .status-chip.great{color:#405900}.student-app .status-chip.review{color:#8f3025}.student-app .buddy-nudge>span{animation:.45s both buddy-arrive}.student-app .finish-stage>span{animation:.65s ease-in-out 2 star-bounce}@keyframes buddy-arrive{0%{opacity:0;transform:translateY(5px)rotate(-4deg)}to{opacity:1;transform:translateY(0)rotate(0)}}.eye-care-companion{z-index:70;font-family:var(--font-geist-sans), "PingFang SC", "Microsoft YaHei", sans-serif;position:fixed;bottom:18px;right:18px}.eye-care-companion.compact{inset:10px auto auto 10px}.eye-care-companion.compact:not(.open) .eye-care-launcher{width:46px;min-width:46px;height:46px;min-height:46px;box-shadow:2px 3px 0 var(--ink);border-radius:50%;grid-template-rows:1fr;grid-template-columns:1fr;padding:4px;display:grid}.eye-care-companion.compact:not(.open) .eye-care-launcher>span{grid-row:auto;font-size:22px}.eye-care-companion.compact:not(.open) .eye-care-launcher b,.eye-care-companion.compact:not(.open) .eye-care-launcher small{display:none}.eye-care-launcher{border:2px solid var(--ink);min-width:116px;min-height:54px;box-shadow:4px 5px 0 var(--ink);cursor:pointer;background:#fff7d7;border-radius:18px;grid-template-rows:1fr 1fr;grid-template-columns:34px 1fr;align-items:center;column-gap:8px;padding:8px 12px;display:grid}.eye-care-launcher>span{grid-row:1/3;font-size:25px}.eye-care-launcher b{align-self:end;font-size:13px}.eye-care-launcher small{color:#5c5d66;align-self:start;font-size:10px}.eye-care-panel{border:2px solid var(--ink);width:min(350px,100vw - 28px);box-shadow:7px 8px 0 var(--ink);background:#fffefa;border-radius:20px;padding:16px}.eye-care-heading{grid-template-columns:38px 1fr 30px;align-items:center;gap:9px;display:grid}.eye-care-heading>span{font-size:29px}.eye-care-heading small{color:#5b5c65;font-size:11px;font-weight:850;display:block}.eye-care-heading b{margin-top:2px;font-size:15px;line-height:1.3;display:block}.eye-care-heading>button{background:var(--paper);cursor:pointer;border:1px solid #c8c5bc;border-radius:9px;width:30px;height:30px;font-size:18px}.eye-care-advice{background:#eef6c8;border-radius:13px;margin-top:13px;padding:12px}.eye-care-advice p{color:#4f5540;margin:0;font-size:13px;line-height:1.6}.eye-care-advice button,.break-finished{border:1.5px solid var(--ink);background:var(--lime);cursor:pointer;border-radius:11px;width:100%;min-height:44px;margin-top:11px;font-size:13px;font-weight:850}.eye-break-countdown{background:var(--violet-soft);border-radius:15px;grid-template-columns:82px 1fr;align-items:center;gap:13px;margin-top:13px;padding:13px;display:grid}.eye-break-countdown strong{text-align:center;font-size:56px;line-height:1}.eye-break-countdown p{color:#4e4b5c;margin:0;font-size:13px;line-height:1.55}.eye-care-settings{grid-template-columns:1fr 1fr;gap:8px;margin-top:10px;display:grid}.eye-care-settings button{background:var(--paper);color:#4f5059;cursor:pointer;border:1px solid #cbc8bf;border-radius:11px;justify-content:center;align-items:center;gap:7px;min-height:43px;font-size:12px;font-weight:800;display:flex}.eye-care-settings button[aria-pressed=true]{border-color:var(--violet);background:var(--violet-soft);color:#443099}.eye-care-settings span{font-size:16px;font-weight:950}html.large-reading .student-app p,html.large-reading .student-app li,html.large-reading .student-app label,html.large-reading .student-app summary,html.large-reading .student-app legend{font-size:17px!important;line-height:1.75!important}html.large-reading .student-app small,html.large-reading .student-app .question-tags span,html.large-reading .student-app .status-chip,html.large-reading .student-app .unit-depth span{font-size:14px!important;line-height:1.55!important}html.large-reading .student-app button,html.large-reading .student-app input,html.large-reading .student-app select{font-size:16px!important}html.calm-motion{scroll-behavior:auto}html.calm-motion .student-app *,html.calm-motion .student-app :before,html.calm-motion .student-app :after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation:none!important}@media (max-width:560px){.account-copy h1{font-size:clamp(44px,14vw,62px);line-height:1.1}.eye-care-companion{bottom:10px;right:10px}.eye-care-launcher{grid-template-rows:auto;grid-template-columns:1fr;min-width:58px}.eye-care-launcher>span{grid-row:auto}.eye-care-launcher b,.eye-care-launcher small{display:none}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.student-app *,.student-app :before,.student-app :after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation:none!important}}:root{--space-ink:#17324d;--sky:#cfe8ff;--sun:#ffd85e;--mint:#bee8cf;--ocean:#247ca3;--peach:#ff9a7f;--cloud:#fffdf7}body{color:var(--space-ink);background:#f8f3e9;font-family:Avenir Next Rounded,Nunito Sans,PingFang SC,Microsoft YaHei,sans-serif}.student-app{min-height:100vh;color:var(--space-ink);background:#f8f3e9}.student-app h1,.student-app h2,.student-app h3,.account-entry h1{font-family:Avenir Next Rounded,PingFang SC,Microsoft YaHei,sans-serif}:is(.student-app button:focus-visible,.student-app a:focus-visible,.account-entry button:focus-visible){outline-offset:3px;outline:4px solid #247ca352}.student-app .site-header{z-index:10;min-height:92px;position:relative}.student-app .brand-mark,.account-entry .brand-mark{background:var(--sun);color:var(--space-ink)}.main-nav{flex-wrap:wrap}.main-nav button.active{background:var(--space-ink);color:#fff}.guest-universe{border:2px solid var(--space-ink);min-height:460px;box-shadow:12px 14px 0 var(--sun);background:#15324d;border-radius:46px;place-items:center;display:grid;position:relative;overflow:hidden}.guest-universe:before{content:"·  ✦  ·  ✧   ·  ✦  ·";color:#fff;letter-spacing:.5em;opacity:.65;white-space:nowrap;font-size:26px;position:absolute;inset:28px 24px auto}.guest-planet{width:230px;height:230px;color:var(--space-ink);background:#ffe17c;border:10px solid #82c9b2;border-radius:50%;align-content:center;place-items:center;display:grid;position:relative;box-shadow:inset -26px -22px #247ca32e,0 0 0 25px #ffffff12}.guest-planet>span{font-family:Georgia,serif;font-size:72px;font-weight:900;line-height:1}.guest-planet>b{font-size:18px}.guest-planet>small{color:#39546d;margin-top:4px;font-weight:800}.guest-planet>i{background:var(--peach);min-width:64px;color:var(--space-ink);text-align:center;box-shadow:3px 3px 0 var(--space-ink);border:2px solid #fff;border-radius:999px;padding:8px 10px;font-size:12px;font-style:normal;font-weight:900;position:absolute}.guest-orbit-one{top:8px;left:-42px;transform:rotate(-8deg)}.guest-orbit-two{bottom:34px;right:-48px;transform:rotate(7deg)}.guest-buddy{color:var(--space-ink);background:#fff;border-radius:18px;align-items:center;gap:12px;padding:14px 16px;display:flex;position:absolute;bottom:18px;left:20px;right:20px}.guest-buddy>span{font-size:42px}.guest-buddy p{margin:0;font-size:13px;line-height:1.5}.guest-buddy b{display:block}.planet-command-hero{grid-template-columns:minmax(0,1.28fr) minmax(300px,.72fr);gap:42px;min-height:430px;padding-top:54px}.planet-command-hero h1{max-width:760px;font-size:clamp(46px,6.2vw,82px);line-height:1.02}.planet-command-hero h1 span{color:#1e7398}.hero-command-actions{flex-wrap:wrap;gap:12px;margin-top:26px;display:flex}.hero-command-actions button{border:2px solid var(--space-ink);cursor:pointer;min-height:50px;box-shadow:3px 4px 0 var(--space-ink);background:#fff;border-radius:15px;padding:0 20px;font-weight:900}.hero-command-actions .primary-action{background:var(--sun)}.personal-planet-mini{border:2px solid var(--space-ink);color:#fff;min-height:330px;box-shadow:9px 10px 0 var(--mint);background:#16334e;border-radius:38px;align-content:center;place-items:center;gap:20px;padding:28px;display:grid;overflow:hidden}.personal-planet-mini p{text-align:center;justify-items:center;gap:4px;margin:0;display:grid}.personal-planet-mini p small{color:#cde6f5}.personal-planet-mini p strong{font-size:24px}.personal-planet-mini p span{color:#f9e8a5;font-size:13px;font-weight:800}.living-planet{width:150px;height:150px;color:var(--space-ink);background:#ffd96a;border:8px solid #87d1b7;border-radius:50%;place-items:center;animation:.65s both planet-arrive;display:grid;position:relative;box-shadow:inset -20px -16px #20688b3d,0 0 0 18px #ffffff14}.living-planet>b{font-family:Georgia,serif;font-size:50px}.living-planet>span{background:var(--peach);width:62px;height:62px;box-shadow:4px 4px 0 var(--space-ink);border:4px solid #fff;border-radius:50%;place-items:center;font-size:36px;display:grid;position:absolute;top:-25px;right:-20px}.living-planet>i{border:3px solid #fffc;border-radius:50%;width:208px;height:58px;position:absolute;transform:rotate(-14deg)}.stage-绿色家园,.stage-智慧城市,.stage-星际文明{background:#b8e7a4;border-color:#5fc59a}.stage-智慧城市,.stage-星际文明{box-shadow:inset -20px -16px #20688b3d,0 0 0 18px #ffd85e21,0 0 42px #ffd85e3d}@keyframes planet-arrive{0%{opacity:0;transform:scale(.9)rotate(-5deg)}to{opacity:1;transform:scale(1)rotate(0)}}.course-dock{border:2px solid var(--space-ink);box-shadow:6px 7px 0 var(--space-ink);background:#fff;border-radius:24px;grid-template-columns:auto 1fr;align-items:end;gap:28px;padding:24px 26px;display:grid}.course-dock h2{margin:0;font-size:clamp(25px,3vw,37px)}.compact-grade-switcher{grid-template-columns:repeat(6,minmax(76px,1fr));gap:8px;display:grid}.compact-grade-switcher button{color:#486075;cursor:pointer;background:#f5f8f5;border:1.5px solid #bcc8cf;border-radius:13px;place-items:center;gap:2px;min-height:58px;padding:6px;font-size:11px;font-weight:850;display:grid}.compact-grade-switcher button span{letter-spacing:.1em;font-size:10px}.compact-grade-switcher button.active{border-color:var(--space-ink);background:var(--sun);color:var(--space-ink);box-shadow:2px 3px 0 var(--space-ink)}.challenge-dock{background:#fff8f1;grid-template-columns:auto 1fr;align-items:center;margin-top:16px}.challenge-dock>div:first-child>p:last-child{color:#5b5a56;max-width:620px;margin:8px 0 0;font-size:13px;line-height:1.7}.challenge-summary{border:1px dashed var(--space-ink);color:#44556a;background:#fff;border-radius:999px;align-items:baseline;gap:8px;margin:6px 0 0;padding:8px 12px;font-weight:800;display:inline-flex}.challenge-summary span{color:#5f2f1e;font-size:16px;font-weight:900}.challenge-summary-actions{grid-template-columns:auto 1fr auto;align-items:center;gap:12px;margin-top:14px;display:grid}.challenge-summary-actions>span{border:2px solid var(--space-ink);color:#3b4f5f;background:#fff;border-radius:11px;place-items:center;width:42px;height:42px;font-size:12px;font-weight:900;display:grid}.challenge-progress-track{border:1px solid var(--space-ink);background:#fff;border-radius:999px;height:10px;overflow:hidden}.challenge-progress-track i{background:#e9b45d;height:100%;transition:width .25s;display:block}.challenge-summary-row{flex-wrap:wrap;align-items:center;gap:8px;margin-top:11px;display:flex}.challenge-milestone-note,.challenge-global-note{color:#576173;margin:0;font-size:11px;line-height:1.65}.challenge-global-note{color:#4d4f5a;margin-top:5px;font-size:11px}.challenge-grade-badge{border:1px solid var(--space-ink);color:#3f3f47;background:#fff;border-radius:99px;margin:0;padding:4px 9px;font-size:10px;font-weight:800}.challenge-grade-badge.empty{color:#7c8091;border-color:#b8bfca}.challenge-dialog{background:#fffdf7;width:min(760px,100%)}.challenge-runner{gap:14px;display:grid}.challenge-runner-top{gap:4px;margin-bottom:2px;display:grid}.challenge-runner-top .speech-button{justify-self:start}.challenge-runner-top h3{margin:0;font-size:26px;line-height:1.24}.challenge-question-card{border:1px solid var(--line);background:#fff;border-radius:17px;padding:18px}.challenge-meta{flex-wrap:wrap;gap:8px;margin-bottom:8px;display:flex}.challenge-meta span{background:var(--violet-soft);color:#4a4d95;border-radius:99px;padding:4px 7px;font-size:10px;font-weight:820}.challenge-meta .difficulty.挑战{background:var(--coral);color:#fff}.challenge-question-card h4{letter-spacing:-.02em;margin:6px 0 14px;font-size:20px;line-height:1.5}.challenge-options{gap:8px;display:grid}.challenge-options button{text-align:left;cursor:pointer;background:#faf8f2;border:1.5px solid #d7d0c1;border-radius:12px;width:100%;min-height:56px;padding:14px}.challenge-options button:hover{border-color:var(--space-ink)}.challenge-options button.selected{border-color:var(--space-ink);box-shadow:2px 2px 0 var(--space-ink);background:#f0f6c5}.challenge-numeric{margin:15px 0 0}.challenge-numeric label{color:#666;margin-bottom:8px;font-size:11px;font-weight:800;display:block}.challenge-numeric input{border:1.5px solid #dad5ca;border-radius:12px;width:100%;padding:13px 12px;font-size:18px}.challenge-tip{color:#5f6a79;margin:11px 0 0;font-size:12px}.challenge-feedback{border:1px solid var(--line);background:#faf8f2;border-radius:13px;margin-top:16px;padding:13px}.challenge-feedback.right{background:#eaf9cf;border-color:#a7d58d}.challenge-feedback.wrong{background:#fff1ec;border-color:#f2a295}.challenge-feedback p{margin:5px 0;line-height:1.6}.today-world,.training-dock{margin-top:38px}.today-intro,.training-heading{grid-template-columns:1fr auto;align-items:end;gap:24px;display:grid}.today-intro h2,.training-heading h2{letter-spacing:-.045em;margin:0;font-size:clamp(32px,4.4vw,52px)}.today-intro p:not(.section-kicker),.training-heading>p{color:#526778;max-width:660px;margin:10px 0 0;line-height:1.65}.daily-ring{border:12px solid var(--mint);width:150px;height:150px;box-shadow:4px 5px 0 var(--space-ink);text-align:center;background:#fff;border-radius:50%;align-content:center;place-items:center;display:grid}.daily-ring strong{font-size:42px;line-height:1}.daily-ring span{color:#526778;max-width:92px;margin-top:5px;font-size:11px;font-weight:850;line-height:1.3}.today-route,.training-mode-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;margin-top:26px;display:grid}.today-route article,.training-mode-grid article{border:2px solid var(--space-ink);min-height:280px;box-shadow:5px 6px 0 var(--space-ink);background:#fff;border-radius:22px;flex-direction:column;padding:22px;display:flex;position:relative;overflow:hidden}.today-route article:first-child,.training-mode-grid article:first-child{background:#fff3bd}.today-route article:nth-child(2),.training-mode-grid article:nth-child(2){background:#d8ecff}.today-route article:nth-child(3),.training-mode-grid article:nth-child(3){background:#d5f0df}.mission-route-index{justify-content:space-between;align-items:center;display:flex}.mission-route-index span,.training-mode-grid article>span{font-size:42px}.mission-route-index b{color:#17324d59;font-size:28px}.today-route article>small,.training-mode-grid article>small{color:#3e647d;letter-spacing:.06em;margin-top:20px;font-size:12px;font-weight:900}.today-route h3,.training-mode-grid h3{margin:5px 0 8px;font-size:24px}.today-route p,.training-mode-grid p{color:#4f6171;margin:0 0 18px;line-height:1.6}.today-route button,.training-mode-grid button,.mastery-snapshot button,.repair-action{border:2px solid var(--space-ink);background:var(--space-ink);color:#fff;cursor:pointer;border-radius:12px;min-height:45px;margin-top:auto;font-weight:900}.today-lower-grid{grid-template-columns:1.2fr .8fr;gap:15px;margin-top:18px;display:grid}.buddy-radio,.mastery-snapshot{border:2px solid var(--space-ink);background:#fff;border-radius:22px;min-height:210px;padding:24px}.buddy-radio{color:#fff;background:#17324d;grid-template-columns:112px 1fr;align-items:center;gap:22px;display:grid}.buddy-radio small{color:#b9d7e8}.buddy-radio h3{margin:5px 0 8px;font-size:23px}.buddy-radio p{color:#dceaf2;margin:0;line-height:1.6}.buddy-portrait{background:var(--peach);border:6px solid #fff;border-radius:38% 62% 46% 54%;place-items:center;width:104px;height:104px;display:grid;position:relative}.buddy-portrait span{font-size:58px}.buddy-portrait i{background:var(--sun);width:34px;height:34px;color:var(--space-ink);border:3px solid #fff;border-radius:50%;place-items:center;font-size:10px;font-style:normal;font-weight:950;display:grid;position:absolute;bottom:-7px;right:-8px}.launch-sound-button{color:#fff;cursor:pointer;background:0 0;border:1.5px solid #fff;border-radius:11px;align-items:center;gap:8px;min-height:40px;margin-top:13px;padding:0 13px;font-size:12px;font-weight:850;display:inline-flex}.launch-sound-button span{color:var(--sun);font-size:18px}.mastery-snapshot{background:#fdf0c2;flex-direction:column;display:flex}.mastery-snapshot h3{margin:3px 0 12px;font-size:35px}.mastery-track{border:2px solid var(--space-ink);background:#fff;border-radius:999px;height:14px;overflow:hidden}.mastery-track i{background:#2b937f;height:100%;display:block}.mastery-snapshot p{color:#536474;line-height:1.55}.skill-review-board{border:2px solid var(--space-ink);background:#fff;border-radius:24px;margin-top:22px;padding:24px}.skill-review-board h3{margin:0 0 15px;font-size:25px}.skill-review-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;display:grid}.skill-review-list button{text-align:left;cursor:pointer;background:#f6f8f6;border:1.5px solid #b8c5cc;border-radius:13px;grid-template-rows:1fr 1fr;grid-template-columns:34px 1fr;align-items:center;gap:1px 8px;min-height:82px;padding:10px;display:grid}.skill-review-list button>span{background:#dfe7e8;border-radius:50%;grid-row:1/3;place-items:center;width:32px;height:32px;font-weight:950;display:grid}.skill-review-list button b{align-self:end;font-size:12px}.skill-review-list button small{color:#617281;align-self:start;font-size:10px}.state-已掌握{background:#e1f3e7!important;border-color:#69af8b!important}.state-待复习{background:#fff1b8!important;border-color:#d39f23!important}.state-待修复{background:#ffe1d9!important;border-color:#d36f5d!important}.galaxy-unit-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.galaxy-unit{grid-template-columns:54px 1fr;align-items:start}.galaxy-unit .unit-actions{grid-column:2}.unit-skill-orbit{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:16px 0;display:grid}.unit-skill-orbit>button{min-height:66px;color:inherit;font:inherit;text-align:left;cursor:pointer;background:#f4f7f5;border:1px solid #c4ced1;border-radius:12px;grid-template-rows:1fr 1fr;grid-template-columns:25px 1fr;align-items:center;gap:0 7px;padding:9px;display:grid}:is(.unit-skill-orbit>button:hover,.unit-skill-orbit>button:focus-visible){border-color:var(--space-ink);box-shadow:2px 2px 0 var(--space-ink);background:#e8f3ea;outline:none}.unit-skill-orbit i{background:#fff;border-radius:50%;grid-row:1/3;place-items:center;width:24px;height:24px;font-style:normal;font-weight:950;display:grid}.unit-skill-orbit b{align-self:end;font-size:11px;line-height:1.25}.unit-skill-orbit small{align-self:start;font-size:9px!important}.repair-steps{flex-wrap:wrap;gap:7px;margin:14px 0;display:flex}.repair-steps span{color:#4c6070;background:#edf2ef;border-radius:999px;align-items:center;gap:5px;padding:7px 9px;font-size:11px;font-weight:850;display:inline-flex}.repair-steps i{background:var(--space-ink);color:#fff;border-radius:50%;place-items:center;width:20px;height:20px;font-style:normal;display:grid}.repair-action{min-width:165px;padding:0 14px}.planet-habitat-card{border:2px solid var(--space-ink);color:#fff;box-shadow:8px 9px 0 var(--sun);background:#16334e;border-radius:30px;grid-template-columns:minmax(250px,.8fr) minmax(320px,1.2fr) 210px;align-items:center;gap:28px;margin:25px 0;padding:26px;display:grid;overflow:hidden}.planet-habitat-scene{place-items:center;min-height:250px;display:grid;position:relative}.living-planet.habitat{width:176px;height:176px}.living-planet.habitat>em{color:#fff;font-size:24px;font-style:normal;position:absolute;top:34px;left:27px}.planet-buildings{filter:drop-shadow(0 3px #17324d73);justify-content:center;align-items:end;gap:5px;font-size:27px;display:flex;position:absolute;bottom:5px;left:0;right:0}.planet-habitat-copy>small{color:#bad8e8;font-weight:850}.planet-habitat-copy h3{margin:5px 0 9px;font-size:35px}.planet-habitat-copy>p{color:#d9e8f0;line-height:1.7}.planet-habitat-copy>div{flex-wrap:wrap;gap:8px;display:flex}.planet-habitat-copy>div span{color:#dbeaf1;background:#ffffff1a;border-radius:12px;padding:9px 11px;font-size:10px;display:grid}.planet-habitat-copy>div b{color:var(--sun);font-size:18px}.planet-stage-panel{background:#ffffff14;border:1px solid #ffffff47;border-radius:18px;gap:6px;padding:18px;display:grid}.planet-stage-panel small{color:#b8d6e7}.planet-stage-panel strong{color:var(--sun);font-size:23px}.planet-stage-panel span{font-weight:900}.planet-stage-panel p{color:#d7e7ef;margin:0;font-size:12px;line-height:1.5}.companion-section{border:2px solid var(--space-ink);background:#fff;border-radius:24px;grid-template-columns:240px 1fr;gap:22px;margin-top:30px;padding:24px;display:grid}.companion-section h3{margin:0;font-size:29px}.companion-section>div:first-child>p:last-child{color:#596d7b;line-height:1.6}.companion-picker{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;display:grid}.companion-picker button{text-align:left;cursor:pointer;background:#f6f8f6;border:1.5px solid #bdc9cf;border-radius:16px;grid-template-rows:auto 1fr;grid-template-columns:52px 1fr;align-items:center;gap:4px 9px;min-height:126px;padding:12px;display:grid;position:relative}.companion-picker button>span{text-align:center;grid-row:1/3;font-size:42px}.companion-picker button b{align-self:end}.companion-picker button small{color:#5c6f7d;align-self:start;font-size:10px;line-height:1.4}.companion-picker button i{background:var(--sun);border-radius:999px;padding:4px 6px;font-size:8px;font-style:normal;font-weight:900;position:absolute;top:6px;right:6px}.companion-picker button.active{border-color:var(--space-ink);box-shadow:3px 3px 0 var(--space-ink);background:#d9f0e2}.number-tiles{grid-template-columns:repeat(3,minmax(44px,1fr));gap:7px;margin-top:10px;display:grid}.number-tiles button{min-height:44px;color:var(--space-ink);cursor:pointer;background:#f6f8f6;border:1.5px solid #aebcc4;border-radius:11px;font-size:17px;font-weight:900}.number-tiles button:hover{border-color:var(--space-ink);background:#e4f2e9}.number-tiles button.wide{background:#fff0ba;grid-column:span 2;font-size:13px}.number-tiles button:disabled{cursor:default;opacity:.5}.mini-numeric{display:grid}.mini-numeric>input{border:2px solid var(--space-ink);background:#fff;border-radius:12px;min-height:54px;padding:10px 13px;font-size:20px}.eye-care-settings{grid-template-columns:repeat(2,1fr)}.eye-care-settings button:last-child{grid-column:1/-1}html.high-contrast .student-app{background:#fff}html.high-contrast .student-app p,html.high-contrast .student-app small,html.high-contrast .student-app span{color:#10283c}html.high-contrast .student-app article,html.high-contrast .student-app section,html.high-contrast .student-app button{border-color:#10283c}html.high-contrast .student-app .personal-planet-mini,html.high-contrast .student-app .buddy-radio,html.high-contrast .student-app .planet-habitat-card,html.high-contrast .student-app button{color:#10283c;background:#fff}html.high-contrast .student-app button.active,html.high-contrast .student-app button.primary,html.high-contrast .student-app button.primary-action,html.high-contrast .student-app button.submit,html.high-contrast .student-app .today-route button,html.high-contrast .student-app .training-mode-grid button{color:#10283c;background:#ffe16a}html.high-contrast .student-app button span,html.high-contrast .student-app button small{color:inherit}html.left-hand .eye-care-companion{left:18px;right:auto}html.left-hand .eye-care-companion.compact{left:10px;right:auto}html.left-hand .quiz-navigation,html.left-hand .lesson-stage-actions,html.left-hand .mini-actions{flex-direction:row-reverse}html.left-hand .lesson-stage-actions{direction:rtl}html.left-hand .quiz-navigation>*,html.left-hand .lesson-stage-actions>*,html.left-hand .mini-actions>*{direction:ltr}.account-chip .sync-retry{color:#9b352c;cursor:pointer;background:0 0;border:0;min-height:0;margin-top:2px;padding:0;font-size:10px;font-weight:850;text-decoration:underline}@media (max-width:980px){.planet-command-hero{grid-template-columns:1fr}.personal-planet-mini{grid-template-columns:auto 1fr;min-height:280px}.course-dock,.challenge-dock,.today-intro,.training-heading{grid-template-columns:1fr}.compact-grade-switcher{grid-template-columns:repeat(3,1fr)}.today-route,.training-mode-grid{grid-template-columns:1fr}.today-route article,.training-mode-grid article{min-height:220px}.today-lower-grid,.galaxy-unit-grid{grid-template-columns:1fr}.planet-habitat-card{grid-template-columns:1fr 1.2fr}.planet-stage-panel{grid-column:1/-1}.companion-section{grid-template-columns:1fr}}@media (max-width:680px){.student-app .site-header{flex-wrap:wrap;align-items:flex-start;gap:10px;padding:14px 0}.student-app .header-account{grid-template-columns:minmax(0,1fr) auto;align-items:start;width:100%;display:grid}.main-nav{grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;width:100%;padding-bottom:0;display:grid;overflow:visible}.main-nav button,.main-nav a{white-space:nowrap;justify-content:center;align-items:center;min-width:0;min-height:40px;padding:6px 4px;font-size:11px;display:flex}.account-chip{align-self:start}.account-hero{grid-template-columns:1fr;gap:35px;padding-top:42px}.guest-universe{min-height:400px}.guest-planet{width:190px;height:190px}.planet-command-hero{padding-top:36px}.planet-command-hero h1{font-size:clamp(42px,13vw,63px)}.personal-planet-mini{grid-template-columns:1fr}.compact-grade-switcher{grid-template-columns:repeat(2,1fr)}.daily-ring{width:125px;height:125px}.buddy-radio,.skill-review-list,.unit-skill-orbit,.companion-picker,.planet-habitat-card{grid-template-columns:1fr}.planet-stage-panel{grid-column:auto}.growth-layout{grid-template-columns:1fr}.galaxy-unit{grid-template-columns:42px 1fr}.galaxy-unit .unit-actions{grid-column:1/-1}.challenge-summary-row{align-items:flex-start}.challenge-runner-top h3{font-size:22px}.challenge-dialog{width:100%}html.left-hand .eye-care-companion{left:10px}}@media (prefers-reduced-motion:reduce){.living-planet{animation:none}}.mission-ribbon{grid-template-columns:minmax(0,1.4fr) minmax(280px,.6fr);min-height:285px;padding:34px 0 38px}.mission-ribbon h1{max-width:760px;font-size:clamp(40px,5vw,66px)}.mission-ribbon .hero-note{margin-top:18px;font-size:16px}.mission-ribbon .personal-planet-mini{border-radius:28px;grid-template-columns:116px 1fr;gap:15px;min-height:225px;padding:20px}.mission-ribbon .living-planet{border-width:6px;width:108px;height:108px}.mission-ribbon .living-planet>b{font-size:38px}.mission-ribbon .living-planet>i{width:148px;height:42px}.mission-ribbon .living-planet>span{width:48px;height:48px;font-size:28px;top:-18px;right:-15px}.today-route article.required:after{content:"今日必做";background:var(--space-ink);color:#fff;letter-spacing:.08em;text-align:center;width:118px;padding:5px 0;font-size:9px;font-weight:950;position:absolute;top:15px;right:-30px;transform:rotate(35deg)}.today-route article.optional{box-shadow:none;background:#f0e8ff;border-style:dashed}.today-route article.optional button{color:var(--space-ink);background:#fff}.mission-route-index b{color:var(--space-ink);letter-spacing:.04em;font-size:13px}.onboarding-backdrop{z-index:110;overscroll-behavior:contain;min-height:100dvh;max-height:100dvh;padding:max(20px, env(safe-area-inset-top,0px)) max(20px, env(safe-area-inset-right,0px)) max(20px, env(safe-area-inset-bottom,0px)) max(20px, env(safe-area-inset-left,0px));-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);background:#12273ac2;place-items:center;display:grid;position:fixed;inset:0;overflow:hidden}.onboarding-card{width:min(820px,100%);max-height:min(780px, calc(100dvh - 40px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px)));overscroll-behavior:contain;border:3px solid var(--space-ink);color:var(--space-ink);box-shadow:10px 12px 0 var(--sun);background:#fffdf7;border-radius:30px;padding:28px;animation:.42s both onboarding-arrive;overflow:auto}.onboarding-progress{gap:7px;margin-bottom:23px;display:flex}.onboarding-progress i{background:#d9dcd8;border-radius:999px;flex:1;height:8px}.onboarding-progress i.active{background:#2a947f}.onboarding-hero{grid-template-columns:86px 1fr;align-items:center;gap:18px;display:grid}.onboarding-hero>span{border:3px solid var(--space-ink);background:var(--sun);width:82px;height:82px;box-shadow:4px 4px 0 var(--space-ink);border-radius:28px;place-items:center;font-size:48px;display:grid}.onboarding-hero small{color:#4d6b7c;letter-spacing:.08em;font-size:12px;font-weight:900}.onboarding-hero h2{margin:3px 0 7px;font-size:clamp(27px,4vw,42px);line-height:1.12}.onboarding-hero p{color:#536b7a;margin:0;font-size:14px;line-height:1.6}.onboarding-grades{grid-template-columns:repeat(3,1fr);gap:10px;margin:26px 0;display:grid}.onboarding-grades button{text-align:left;cursor:pointer;background:#f4f7f4;border:2px solid #b8c6cc;border-radius:17px;grid-template-columns:45px 1fr;align-items:center;gap:8px;min-height:84px;padding:12px;display:grid}.onboarding-grades button>span{color:#2f6077;background:#fff;border-radius:14px;place-items:center;width:44px;height:44px;font-size:22px;font-weight:950;display:grid}.onboarding-grades button b{font-size:16px}.onboarding-grades button.active{border-color:var(--space-ink);box-shadow:3px 4px 0 var(--space-ink);background:#d8efdf}.onboarding-companions{grid-template-columns:repeat(3,1fr);gap:10px;margin:25px 0;display:grid}.onboarding-companions button{text-align:left;cursor:pointer;background:#f5f7f5;border:2px solid #bcc8cd;border-radius:17px;grid-template-rows:auto 1fr;grid-template-columns:54px 1fr;align-items:center;gap:3px 9px;min-height:120px;padding:12px;display:grid}.onboarding-companions button>span{grid-row:1/3;font-size:43px}.onboarding-companions button b{align-self:end}.onboarding-companions button small{color:#576d7b;align-self:start;font-size:10px;line-height:1.35}.onboarding-companions button.active{border-color:var(--space-ink);box-shadow:3px 4px 0 var(--space-ink);background:#ffe9a0}.onboarding-route{grid-template-columns:1fr 1fr;gap:11px;margin:24px 0 13px;display:grid}.onboarding-route article{border:2px solid var(--space-ink);background:#e1f1ff;border-radius:18px;grid-template-columns:52px 1fr;align-items:center;gap:12px;min-height:138px;padding:17px;display:grid}.onboarding-route article:nth-child(2){background:#d8efdf}.onboarding-route article>span{background:var(--space-ink);color:#fff;border-radius:50%;place-items:center;width:50px;height:50px;font-size:24px;font-weight:950;display:grid}.onboarding-route small{color:#4d6a7a;font-weight:850}.onboarding-route b{margin:3px 0;font-size:16px;display:block}.onboarding-route p{color:#526978;margin:0;font-size:12px;line-height:1.45}.onboarding-ready{background:#fff1be;border-radius:15px;align-items:center;gap:12px;padding:13px 15px;display:flex}.onboarding-ready>span{font-size:38px}.onboarding-ready p{color:#53606b;margin:0;font-size:13px;line-height:1.5}.onboarding-ready b{color:var(--space-ink)}.onboarding-actions{justify-content:space-between;gap:10px;margin-top:24px;display:flex}.onboarding-actions button{border:2px solid var(--space-ink);cursor:pointer;border-radius:14px;min-height:49px;padding:0 17px;font-weight:900}.onboarding-actions .skip{background:#fff}.onboarding-actions .next{background:var(--space-ink);color:#fff;margin-left:auto}.onboarding-actions .launch{background:var(--sun);color:var(--space-ink);box-shadow:3px 4px 0 var(--space-ink)}@keyframes onboarding-arrive{0%{opacity:0;transform:translateY(14px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@media (max-width:980px){.mission-ribbon{grid-template-columns:1fr}.mission-ribbon .personal-planet-mini{grid-template-columns:116px 1fr}}@media (max-width:620px){.mission-ribbon .personal-planet-mini{grid-template-columns:1fr}.onboarding-card{border-radius:23px;padding:20px}.onboarding-hero{grid-template-columns:62px 1fr}.onboarding-hero>span{border-radius:19px;width:60px;height:60px;font-size:36px}.onboarding-grades{grid-template-columns:repeat(2,1fr)}.onboarding-companions,.onboarding-route{grid-template-columns:1fr}.onboarding-actions{flex-direction:column-reverse}.onboarding-actions button{width:100%}}@media (prefers-reduced-motion:reduce){.onboarding-card{animation:none}}.guided-retry{grid-template-columns:40px 1fr;align-items:start}.guided-retry>div>p{margin:0}.guided-retry ol{gap:5px;margin:8px 0;padding-left:18px;display:grid}.guided-retry li{color:#6c5144;font-size:10px;line-height:1.45}.guided-retry small{color:#6b5148;font-size:9px;font-weight:850}.test-repair-path{background:#fff0e3;border:1.5px solid #9e735e;border-radius:14px;margin-top:12px;padding:13px}.test-repair-path>div{grid-template-columns:36px 1fr auto;align-items:center;gap:8px;display:grid}.test-repair-path>div>span{font-size:28px}.test-repair-path p{margin:0}.test-repair-path small{color:#7b6257;font-size:9px;font-weight:850;display:block}.test-repair-path b{font-size:12px}.test-repair-path ol{gap:7px;margin:11px 0 0;padding-left:22px;display:grid}.test-repair-path li{color:#654f46;font-size:11px;line-height:1.5}.mastery-evidence{flex-wrap:wrap;gap:10px;margin-top:14px;display:flex}.mastery-evidence span{color:#52616f;border:2px solid #c8d2dc;border-radius:999px;padding:8px 12px;font-size:11px;font-weight:900}.mastery-evidence span.done{color:#17633a;background:#e8f8ef;border-color:#2d8a57}.completion-choice button:disabled{cursor:not-allowed;opacity:.58}@media (max-width:620px){.test-repair-path>div{grid-template-columns:36px 1fr}.test-repair-path .speech-button{grid-column:1/-1}}.lesson-stage-rail.simple-four-step{grid-template-columns:repeat(4,minmax(0,1fr))}.lesson-stage-rail button.locked,.lesson-stage-rail button:disabled{color:#6d7478;cursor:not-allowed;background:#f1f2ef}.lesson-stage-rail button.locked>span{filter:grayscale();background:#e2e5e2}.lesson-stage-actions button:disabled{cursor:not-allowed;opacity:.62}.picture-text-lesson{border:2px solid var(--space-ink);box-shadow:5px 6px 0 var(--space-ink);background:#f5f8f3;border-radius:24px;gap:16px;margin-top:20px;padding:22px;display:grid}.picture-text-heading{border-bottom:1.5px solid #cbd5cf;justify-content:space-between;align-items:center;gap:18px;padding:2px 2px 14px;display:flex}.picture-text-heading small{color:#2c7466;letter-spacing:.09em;font-size:11px;font-weight:950}.picture-text-heading h3{margin:4px 0 5px;font-size:clamp(23px,3vw,31px)}.picture-text-heading p{color:#52646d;margin:0;font-size:13px;line-height:1.55}.picture-text-points{gap:14px;display:grid}.picture-text-point{background:#fff;border:1.5px solid #9fb2ab;border-radius:18px;gap:13px;padding:18px;display:grid}.picture-text-point-title{grid-template-columns:45px 1fr;align-items:center;gap:10px;display:grid}.picture-text-point-title>span{border:2px solid var(--space-ink);background:var(--sun);border-radius:13px;place-items:center;width:43px;height:43px;font-size:17px;font-weight:950;display:grid}.picture-text-point-title small{color:#567069;font-size:10px;font-weight:900}.picture-text-point-title h4{margin:2px 0 0;font-size:20px}.picture-text-meaning{color:#344d56;background:#edf7f0;border-left:4px solid #2f806c;border-radius:0 11px 11px 0;margin:0;padding:12px 14px;font-size:14px;font-weight:700;line-height:1.65}.picture-route{align-items:stretch;gap:7px;display:flex}.picture-route>div{background:#fff9e7;border:1.5px solid #a8b7b2;border-radius:12px;flex:1;grid-template-columns:30px 1fr;align-items:center;gap:7px;min-width:0;padding:10px;display:grid;position:relative}.picture-route>div>span{background:var(--space-ink);color:#fff;border-radius:9px;place-items:center;width:28px;height:28px;font-size:11px;font-weight:950;display:grid}.picture-route p{gap:3px;margin:0;display:grid}.picture-route small{color:#497063;letter-spacing:.05em;font-size:9px;font-weight:950}.picture-route b{font-size:12px;line-height:1.5}.picture-route i{z-index:1;color:#4b676c;align-self:center;font-size:16px;font-style:normal;font-weight:950;position:absolute;right:-10px}.picture-text-method{background:#f4f3ff;border-radius:12px;padding:12px 14px}.picture-text-method>b{color:#4e3fa0;font-size:12px}.picture-text-method ol{gap:6px;margin:9px 0 0;padding-left:22px;display:grid}.picture-text-method li{color:#4e5360;font-size:13px;line-height:1.55}.picture-text-check{color:#405629;background:#e8f6c0;border-radius:11px;grid-template-columns:29px auto 1fr;align-items:center;gap:8px;margin:0;padding:10px 12px;font-size:12px;line-height:1.5;display:grid}.picture-text-check>span{color:#fff;background:#526e2d;border-radius:50%;place-items:center;width:28px;height:28px;font-weight:950;display:grid}.picture-text-memory{margin-top:0}.simple-example-stage{margin-top:20px}@media (max-width:760px){.lesson-stage-rail.simple-four-step{grid-template-columns:repeat(2,minmax(0,1fr))}.picture-text-heading{flex-direction:column;align-items:flex-start}.picture-route{flex-direction:column}.picture-route>div{width:100%}.picture-route i{bottom:-14px;left:20px;right:auto;transform:rotate(90deg)}}@media (max-width:620px){.picture-text-lesson{box-shadow:3px 4px 0 var(--space-ink);border-radius:19px;padding:15px}.picture-text-point{padding:14px}.picture-text-check{grid-template-columns:29px 1fr}.picture-text-check b{display:block}}.view-anchor{outline:none;scroll-margin-top:112px}.main-nav button>b{margin-right:4px;font-size:15px;font-weight:400}.main-nav button>i{background:var(--peach);min-width:18px;height:18px;color:var(--space-ink);border-radius:99px;place-items:center;padding:0 4px;font-size:9px;font-style:normal;font-weight:950;display:grid;position:absolute;top:-4px;right:-3px}.today-route article.done{box-shadow:none;background:#e8f5e8;border-color:#388063}.today-route article.current{box-shadow:6px 7px 0 var(--space-ink)}.today-route article.locked{box-shadow:none;opacity:.76;background:#f0f1ed;border-color:#b9c1bf}.today-route article.locked button{color:#596362;cursor:not-allowed;background:#d7dcda;border-color:#99a3a2}.today-route article.done:after{content:"已完成";background:#388063}.daily-ring strong{font-size:30px}.daily-ring.done-2{background:#e9f8ef;border-color:#56a982}.challenge-dock{margin-top:34px}.speech-control{justify-items:start;gap:5px;display:inline-grid}.speech-fallback{color:#9b352c;max-width:260px;font-size:10px;line-height:1.4}.help-entry{color:#665513;cursor:pointer;background:#fff4c8;border:1.5px dashed #a98518;border-radius:11px;min-height:44px;margin:8px 0 12px;padding:9px 12px;font-weight:850}.help-entry:disabled{cursor:default;opacity:.75}.concept-picture{background:#f7fbf8;border:1.5px solid #9fb1b0;border-radius:15px;justify-content:center;align-items:center;gap:11px;min-height:128px;padding:18px;display:flex;overflow:hidden}.concept-picture.domain-number>span,.concept-picture.domain-addsub>span,.concept-picture.domain-multdiv>span{background:#fff;border-radius:12px;gap:5px;padding:11px;display:flex}.concept-picture.domain-number>span i,.concept-picture.domain-addsub>span i,.concept-picture.domain-multdiv>span i{border:2px solid var(--space-ink);background:var(--sun);border-radius:50%;width:14px;height:14px}.concept-picture>b{color:#496477;font-size:15px}.concept-picture.domain-data,.concept-picture.domain-probability{border-bottom-width:5px;align-items:flex-end;min-height:150px}.concept-picture.domain-data>span,.concept-picture.domain-probability>span{border:2px solid var(--space-ink);background:var(--mint);border-bottom:0;border-radius:9px 9px 0 0;width:15%;min-height:24px}.concept-picture.domain-geometry>span,.concept-picture.domain-spatial>span,.concept-picture.domain-measure>span{border:2px solid var(--space-ink);background:#fff;border-radius:12px;place-items:center;width:58px;height:58px;font-size:35px;display:grid}.concept-picture.domain-geometry>i,.concept-picture.domain-spatial>i,.concept-picture.domain-measure>i{border-bottom:5px double var(--space-ink);letter-spacing:.24em;padding:8px 10px;font-size:10px;font-style:normal}.concept-picture.domain-fraction,.concept-picture.domain-decimal,.concept-picture.domain-ratio{grid-template-columns:repeat(5,36px);gap:4px;display:grid}.concept-picture.domain-fraction>span,.concept-picture.domain-decimal>span,.concept-picture.domain-ratio>span{background:#fff;border:1.5px solid #69808b;border-radius:5px;height:28px}.concept-picture.domain-fraction>span.filled,.concept-picture.domain-decimal>span.filled,.concept-picture.domain-ratio>span.filled{background:var(--sun)}.concept-picture.domain-fraction>b,.concept-picture.domain-decimal>b,.concept-picture.domain-ratio>b{text-align:center;grid-column:span 5}.concept-picture.domain-algebra>span,.concept-picture.domain-application>span,.concept-picture.domain-mixed>span{border:2px solid var(--space-ink);background:#fff;border-radius:12px;padding:13px 15px;font-weight:900}.concept-picture.domain-algebra>i,.concept-picture.domain-application>i,.concept-picture.domain-mixed>i{color:#427b70;font-size:24px;font-style:normal;font-weight:950}.completion-choice{background:#e8f8ef;grid-template-columns:1fr}.result-next-actions{flex-wrap:wrap}.result-next-actions .primary,.after-quiz-actions .primary{border-color:var(--space-ink);background:var(--sun);color:var(--space-ink)}.saved-result{gap:18px;display:grid}.saved-result-score{border:2px solid var(--space-ink);background:#fff3bd;border-radius:20px;grid-template-columns:70px 1fr;gap:16px;padding:20px;display:grid}.saved-result-score>span{font-size:50px}.saved-result-score small,.saved-result-score strong{display:block}.saved-result-score strong{margin-top:3px;font-size:42px}.saved-result-score p{color:#536575;margin:5px 0 0}.challenge-reward-panel{border:2px solid var(--space-ink);text-align:center;box-shadow:6px 7px 0 var(--space-ink);background:#fff3bd;border-radius:24px;justify-items:center;gap:12px;padding:28px;display:grid}.challenge-reward-icon{font-size:72px}.challenge-reward-panel h3{margin:0;font-size:30px}.challenge-reward-panel>p:not(.section-kicker){color:#516272;max-width:600px;margin:0;line-height:1.65}.challenge-reward-panel>div:not(.after-quiz-actions){flex-wrap:wrap;justify-content:center;gap:9px;display:flex}.challenge-reward-panel>div>span{border:1.5px solid var(--space-ink);background:#fff;border-radius:13px;min-width:130px;padding:12px;display:grid}.challenge-reward-panel>div b{font-size:25px}.challenge-reward-panel .ultimate-reward{background:#17324d;border-radius:13px;padding:12px 15px;color:#fff!important}.feedback-launcher{z-index:45;border:2px solid var(--space-ink);background:var(--sun);min-height:48px;color:var(--space-ink);box-shadow:3px 4px 0 var(--space-ink);cursor:pointer;border-radius:99px;align-items:center;gap:7px;padding:0 14px;font-weight:900;display:inline-flex;position:fixed;bottom:94px;right:18px}.feedback-launcher span{font-size:20px}.feedback-launcher b{font:inherit}.feedback-backdrop{z-index:120;padding:max(16px, env(safe-area-inset-top)) max(16px, env(safe-area-inset-right)) max(16px, env(safe-area-inset-bottom)) max(16px, env(safe-area-inset-left));-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#12273ac2;place-items:center;display:grid;position:fixed;inset:0}.feedback-dialog{border:3px solid var(--space-ink);width:min(650px,100%);max-height:calc(100dvh - 32px);box-shadow:8px 9px 0 var(--sun);background:#fffdf7;border-radius:27px;padding:30px;position:relative;overflow:auto}.feedback-dialog h2{margin:5px 45px 10px 0;font-size:clamp(29px,5vw,43px);line-height:1.1}.feedback-close{cursor:pointer;background:#fff;border:1.5px solid #bec8cb;border-radius:50%;width:44px;height:44px;font-size:25px;position:absolute;top:17px;right:17px}.feedback-intro{color:#526978;line-height:1.6}.feedback-field{gap:7px;margin-top:18px;display:grid}.feedback-field>span{font-size:12px;font-weight:900}.feedback-field select,.feedback-field textarea{width:100%;color:var(--space-ink);font:inherit;background:#fff;border:1.5px solid #aebcc2;border-radius:12px;outline:none;padding:12px}.feedback-field textarea{resize:vertical;min-height:150px;line-height:1.55}.feedback-field select:focus,.feedback-field textarea:focus{border-color:var(--ocean);box-shadow:0 0 0 4px #247ca32e}.feedback-field small{color:#62727c;justify-self:end}.feedback-safety{color:#53656e;background:#eef4f2;border-radius:10px;margin:12px 0;padding:10px 12px;font-size:12px}.feedback-error{color:#a23830;font-weight:800}.feedback-submit{border:2px solid var(--space-ink);background:var(--sun);width:100%;min-height:52px;color:var(--space-ink);box-shadow:3px 4px 0 var(--space-ink);cursor:pointer;border-radius:14px;font-weight:950}.feedback-submit:disabled{box-shadow:none;cursor:not-allowed;opacity:.55}.feedback-success{text-align:center;justify-items:center;display:grid}.feedback-success>span{font-size:72px}.feedback-success>p:not(.section-kicker){color:#526978;max-width:500px;line-height:1.65}.feedback-success>div{gap:9px;display:flex}.feedback-success button{border:2px solid var(--space-ink);cursor:pointer;background:#fff;border-radius:12px;min-height:46px;padding:0 16px;font-weight:900}.feedback-success button:first-child{background:var(--sun)}.feedback-card{border:2px solid var(--space-ink);box-shadow:5px 6px 0 var(--space-ink);background:#d8ecff;border-radius:22px;grid-template-columns:72px 1fr auto;align-items:center;gap:18px;margin-top:18px;padding:22px;display:grid}.feedback-card>span{font-size:52px}.feedback-card h3{margin:3px 0 5px;font-size:23px}.feedback-card p{color:#50697a;margin:0;line-height:1.55}.feedback-card>button{border:2px solid var(--space-ink);background:var(--space-ink);color:#fff;cursor:pointer;border-radius:12px;min-height:46px;padding:0 15px;font-weight:900}.profile-account-actions{border-top:1px solid #d7d9d4;gap:8px;margin-top:18px;padding-top:14px;display:flex}.profile-account-actions a,.profile-account-actions button{color:#5e6870;cursor:pointer;background:#fff;border:1px solid #bfc7c8;border-radius:9px;align-items:center;min-height:40px;padding:0 10px;font-size:11px;font-weight:800;text-decoration:none;display:inline-flex}.admin-feedback{width:min(1320px,100% - 48px);margin:72px auto 0}.admin-feedback .admin-section-title label{gap:5px;display:grid}.admin-feedback .admin-section-title label span{color:#70716b;font-size:10px;font-weight:800}.admin-feedback select{background:#fffefa;border:1px solid #cbc8bf;border-radius:10px;min-height:42px;padding:8px 11px}.admin-feedback-list{gap:10px;padding-top:16px;display:grid}.admin-feedback-list article{background:#fffefa;border:1px solid #cbc8bf;border-radius:16px;grid-template-columns:230px 1fr;gap:12px 22px;padding:18px;display:grid}.admin-feedback-meta{align-content:start;gap:4px;display:grid}.admin-feedback-meta>span{background:var(--violet-soft);color:#4d3f9b;border-radius:99px;justify-self:start;padding:5px 8px;font-size:10px;font-weight:850}.admin-feedback-meta b{margin-top:5px}.admin-feedback-meta small,.admin-feedback-meta time{color:#62645f;overflow-wrap:anywhere;font-size:12px}.admin-feedback-list article>p{color:#363742;white-space:pre-wrap;overflow-wrap:anywhere;margin:0;line-height:1.65}.admin-feedback-context{flex-wrap:wrap;grid-column:2;gap:6px;display:flex}.admin-feedback-context span,.admin-feedback-context b{color:#62635d;background:#eef0ec;border-radius:7px;padding:5px 7px;font-size:9px}.admin-feedback-context b{background:var(--coral-soft);color:#8b3d34;margin-left:auto}.admin-feedback-state{color:#777870;text-align:center;align-content:center;place-items:center;gap:5px;min-height:130px;display:grid}@media (max-width:680px){.student-app{padding-bottom:calc(76px + env(safe-area-inset-bottom))}.student-app .site-header{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#f8f3e9f5;flex-wrap:nowrap;align-items:center;gap:8px;min-height:62px;padding:8px 0;position:sticky;top:0}.student-app .header-account{width:auto;margin-left:auto;display:block}.student-app .account-chip{background:0 0;border:0;padding:4px}.student-app .account-chip>span{width:40px;height:40px;display:grid}.student-app .account-chip>div,.student-app .account-chip>a,.student-app .account-signout{display:none}.main-nav{z-index:70;width:100%;padding:6px 7px max(6px, env(safe-area-inset-bottom));background:#fffdf7fa;border-top:1px solid #bfc8c9;grid-template-columns:repeat(5,minmax(0,1fr));gap:2px;display:grid;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -8px 24px #17324d14}.main-nav button{border-radius:10px;align-content:center;place-items:center;gap:1px;min-height:54px;padding:3px 2px;font-size:11px;line-height:1.1;display:grid}.main-nav button>b{margin:0;font-size:19px}.main-nav button>i{top:1px;right:calc(50% - 23px)}.mission-ribbon{min-height:auto;padding-top:22px}.mission-ribbon h1{font-size:clamp(34px,10vw,43px)}.mission-ribbon .personal-planet-mini{grid-template-columns:84px 1fr;min-height:145px;padding:15px}.mission-ribbon .living-planet{width:78px;height:78px}.mission-ribbon .living-planet>i{width:105px;height:31px}.mission-ribbon .living-planet>span{width:38px;height:38px;font-size:22px}.workspace{padding-top:24px}.today-route article,.training-mode-grid article{min-height:190px}.feedback-launcher{right:10px;bottom:calc(82px + env(safe-area-inset-bottom));width:48px;min-width:48px;height:48px;min-height:48px;box-shadow:2px 3px 0 var(--space-ink);border-radius:50%;justify-content:center;padding:0}.feedback-launcher b{display:none}.feedback-dialog{border-radius:21px;padding:23px 17px 20px}.feedback-card{grid-template-columns:54px 1fr}.feedback-card>span{font-size:40px}.feedback-card>button{grid-column:1/-1;width:100%}.concept-picture{flex-wrap:wrap;min-height:110px;padding:12px}.concept-picture.domain-fraction,.concept-picture.domain-decimal,.concept-picture.domain-ratio{grid-template-columns:repeat(5,minmax(28px,36px))}.challenge-summary-actions{grid-template-columns:auto 1fr}.challenge-summary-actions>button{grid-column:1/-1;min-height:46px}.admin-feedback{width:min(100% - 28px,1320px);margin-top:48px}.admin-feedback .admin-section-title{flex-direction:column;align-items:stretch}.admin-feedback-list article{grid-template-columns:1fr}.admin-feedback-context{grid-column:auto}.saved-result-score{grid-template-columns:52px 1fr;padding:15px}.saved-result-score>span{font-size:40px}}.brand-home{cursor:pointer;font:inherit;text-align:left;background:0 0;border:0}:is(.brand-home:focus-visible,.account-avatar-button:focus-visible){outline:3px solid var(--ocean);outline-offset:3px}.account-avatar-button{cursor:pointer;border:0;border-radius:10px;flex:none;place-items:center;width:32px;height:32px;display:grid;background:var(--violet)!important;color:#fff!important;padding:0!important;font-size:17px!important}.dialog-feedback-button{z-index:2;color:#425d69;cursor:pointer;background:#fff;border:1px solid #b9c4c8;border-radius:99px;min-height:44px;padding:0 11px;font-size:11px;font-weight:850;position:absolute;top:18px;right:70px}.dialog-close{width:44px;height:44px}.exit-check-complete{color:#315f47;background:#e8f8ef;border:1.5px solid #56856a;border-radius:11px;justify-content:center;align-items:center;min-height:44px;padding:0 13px;font-weight:900;display:inline-flex}.admin-feedback-more{border:1.5px solid var(--space-ink);background:var(--sun);min-height:44px;color:var(--space-ink);cursor:pointer;border-radius:11px;justify-self:center;padding:0 18px;font-weight:900}.admin-feedback-more:disabled{cursor:wait;opacity:.65}.admin-feedback-more-error{color:#963d34;text-align:center;margin:0;font-weight:800}@media (max-width:680px){.eye-care-companion,html.left-hand .eye-care-companion{right:auto;bottom:calc(82px + env(safe-area-inset-bottom));left:10px}.student-app .account-avatar-button{width:44px;height:44px;display:grid}.student-app .mini-practice-top button,.student-app .question-palette button{width:44px;height:44px}.eye-care-heading{grid-template-columns:38px 1fr 44px}.eye-care-heading>button{width:44px;height:44px}.eye-care-settings button,.profile-account-actions a,.profile-account-actions button{min-height:44px}.dialog-feedback-button{max-width:92px;top:16px;right:68px}.learning-dialog>h2{margin-top:18px}}
