/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-ease:initial}}}@layer theme{:root,:host{--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, 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;--ease-out:cubic-bezier(0, 0, .2, 1);--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,::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,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, 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:where(:not(iframe)){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]){appearance:button}::file-selector-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}.resize{resize:both}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.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))}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}}:root{color:var(--ds-text);background:var(--ds-page);font-synthesis:none;--ds-page:#f6f9f6;--ds-surface:#fff;--ds-surface-muted:#f2f7f3;--ds-text:#20332c;--ds-text-muted:#687970;--ds-border:#dce6df;--ds-border-strong:#c9d8ce;--ds-primary:#2f8767;--ds-primary-hover:#277259;--ds-primary-soft:#eaf5ee;--ds-danger:#bc5d4a;--ds-warning:#a97925;--ds-shadow-sm:0 1px 2px #1836290f;--ds-shadow-md:0 10px 30px #18362917;--ds-radius-sm:8px;--ds-radius-md:8px;--ds-radius-lg:16px;--ds-radius-full:999px;--ds-control-sm:36px;--ds-control-md:44px;--ds-control-lg:48px;--ds-font-xs:12px;--ds-font-sm:13px;--ds-font-body:14px;--ds-font-md:16px;--ds-font-lg:20px;--ds-font-xl:30px;--accent:var(--ds-primary);--accent-foreground:#fff;--focus:var(--ds-primary);--foreground:var(--ds-text);--muted:var(--ds-text-muted);--border:var(--ds-border);--radius:var(--ds-radius-sm);--green:var(--ds-primary);--soft-green:#eef7f0;--ink:var(--ds-text);font-family:PingFang SC,Microsoft YaHei,Noto Sans CJK SC,sans-serif}*{box-sizing:border-box;letter-spacing:0}body{background:var(--ds-page);min-width:320px;color:var(--ds-text);font-size:var(--ds-font-body);margin:0;line-height:1.5}button,input,select{font:inherit}button{cursor:pointer}button:disabled{cursor:default}h1,h2,h3,p{margin:0}img{object-fit:contain;max-width:100%}button,input,select{-webkit-tap-highlight-color:transparent}input,select{color:var(--ink)}:focus-visible{outline-offset:4px;outline:3px solid #72bca2}h1:focus{outline:none}.button{border-radius:8px;flex-shrink:0;gap:9px;font-weight:650}.button--outline{background:#fff;border-color:#dce5df}.button[aria-disabled=true]{opacity:.5}.icon-button{border-radius:50%;width:40px;min-width:40px;height:40px;padding:0}.tooltip-anchor{flex-shrink:0;display:inline-flex}.app-shell{min-height:100dvh}.sidebar{z-index:30;background:#fafcf9;border-right:1px solid #e5ebe5;flex-direction:column;width:222px;padding:37px 22px 20px;display:flex;position:fixed;inset:0 auto 0 0}.brand{white-space:nowrap;align-items:center;gap:10px;font-size:22px;font-weight:800;line-height:1.2;display:flex}.brand-icon{color:#fff;background:#469977;border-radius:13px 13px 16px 7px;place-items:center;width:42px;height:44px;display:grid}.brand small{color:#87968b;margin-top:7px;font-size:10px;font-weight:500;display:block}.sidebar nav{gap:12px;margin-top:52px;display:grid}.nav-link{border:1px solid #0000;justify-content:flex-start;gap:15px;width:100%;height:53px;padding:0 19px;font-size:16px}.nav-link.active{color:#2f8267;background:#eaf3e8;border-color:#dcead9}.nav-count{color:#8c7149;background:#efdfc9;border-radius:50%;place-items:center;width:21px;height:21px;margin-left:auto;font-size:11px;display:grid}.sidebar-bottom{margin-top:auto;padding-top:50px}.tiny-plant{color:#80ad7d;margin:0 16px 12px}.sidebar-bottom>p{color:#8a978d;margin:0 16px 33px;font-size:13px;line-height:1.9}.profile{border-top:1px solid var(--border);align-items:center;gap:10px;padding:18px 0 0;display:flex}.avatar{color:#9a825c;background:#ede8dc;border-radius:50%;place-items:center;width:37px;height:37px;font-size:15px;font-weight:700;display:grid}.profile strong{text-overflow:ellipsis;max-width:94px;font-size:13px;display:block;overflow:hidden}.profile small{color:#94a096;margin-top:3px;font-size:9px;display:block}.profile>svg{color:#95a191;margin-left:auto}.workspace{flex-direction:column;min-height:100dvh;margin-left:222px;display:flex}.topbar{border-bottom:1px solid #edf0ec;justify-content:space-between;align-items:center;height:78px;padding:0 46px;display:flex}.desktop-breadcrumb{color:#8a958e;gap:14px;font-size:12px;display:flex}.desktop-breadcrumb span{color:#ced5ce}.topbar-stats{align-items:center;gap:24px;display:flex}.topbar-stats>span:not(.topbar-divider){align-items:center;gap:7px;font-size:15px;font-weight:700;display:flex}.streak-stat{color:#ce9260}.topbar-stats small{font-size:12px;font-weight:400}.star-stat{color:#be9b3d}.topbar-divider{background:#e6ece6;width:1px;height:21px}.mobile-brand{display:none}.page-content{flex:1;width:100%;max-width:1250px;margin:0 auto;padding:38px 46px 35px}.page-heading{margin-bottom:28px}.eyebrow{color:#7c8c7f;align-items:center;gap:7px;font-size:12px;font-weight:500;display:flex}.eyebrow svg{color:#b79a50}h1{font-size:30px;font-weight:750;line-height:1.45}.page-heading h1{margin-top:9px}.page-heading>p{color:#8d998f;margin-top:7px;font-size:13px}.subject-picker{grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;margin-bottom:38px;display:grid}.subject-tile{background:#fff;border:1.5px solid #e5eae5;justify-content:flex-start;gap:14px;width:100%;height:89px;padding:17px 20px;position:relative;overflow:hidden;box-shadow:0 2px #edf0eb}.subject-tile.selected{border-color:var(--subject-line);background:var(--subject-soft);box-shadow:0 2px 0 var(--subject-line)}.subject-glyph{width:45px;height:47px;color:var(--subject);background:var(--subject-soft);border-radius:10px;place-items:center;font-family:Avenir Next Rounded,PingFang SC,sans-serif;font-size:30px;font-weight:750;display:grid}.subject-tile.selected .subject-glyph{background:#fff9}.subject-tile-copy{text-align:left;flex-direction:column;gap:6px;display:flex}.subject-tile strong{color:#3a4940;font-size:17px}.subject-tile small{color:#8c988d;white-space:nowrap;font-size:11px;font-weight:400}.subject-selected-icon{color:var(--subject);flex-shrink:0;margin-left:auto}.learning-columns{grid-template-columns:minmax(0,1fr) 268px;gap:35px;display:grid}.section-heading{justify-content:space-between;align-items:center;gap:16px;margin-bottom:19px;display:flex}.section-heading h2{align-items:center;gap:8px;font-size:17px;font-weight:700;display:flex}.section-heading>span{color:#94a095;white-space:nowrap;font-size:11px}.chapter-banner{background:var(--subject-soft);min-height:93px;color:var(--subject);border-top:1px solid var(--subject-line);border-bottom:1px solid var(--subject-line);justify-content:space-between;align-items:center;gap:10px;padding:21px 23px;display:flex}.chapter-kicker{opacity:.8;font-size:10px}.chapter-banner h3{margin-top:6px;font-size:17px;font-weight:700}.chapter-banner>svg{opacity:.7;flex-shrink:0}.learning-path{padding:10px 0 0}.lesson-row{align-items:center;min-height:130px;padding:10px 4px 10px 0;display:flex;position:relative}.node-track{flex-shrink:0;align-self:stretch;place-items:center;width:89px;display:grid;position:relative}.node-track:before{content:"";background:#eaf0e9;width:3px;height:calc(100% + 20px);position:absolute;top:50%;left:43px}.lesson-row:last-child .node-track:before{display:none}.lesson-node{z-index:1;color:#99aa95;background:#f5f7f2;border:2px solid #e5ebe0;border-radius:50%;width:58px;min-width:58px;height:58px;box-shadow:0 4px #e0e7dc}.current .lesson-node{color:#fff;background:var(--subject);border:2px solid var(--subject);outline:5px solid var(--subject-soft);outline-offset:3px;box-shadow:0 5px #2a735a}.completed .lesson-node{color:#6f943d;background:#eaf4de;border-color:#d4e4bd;box-shadow:0 4px #d4e4bd}.lesson-copy{flex:1;min-width:0;padding-left:5px}.lesson-number{color:#a2aca2;align-items:center;gap:10px;margin-bottom:6px;font-size:10px;display:flex}.lesson-number>span{color:var(--subject);background:var(--subject-soft);border-radius:3px;padding:2px 6px}.lesson-copy h3{font-size:16px;font-weight:650}.lesson-copy p{color:#909c91;margin-top:5px;font-size:11px}.lesson-preview{color:#a7afa5;margin-top:9px;font-size:11px;display:block}.current .lesson-copy h3{color:var(--subject)}.lesson-start{height:36px;padding:0 13px;font-size:12px}.raised-button{background:var(--subject);box-shadow:0 3px #2a735a}.path-end{color:#a0aa9c;border-top:1px dashed #e1e8de;justify-content:center;align-items:center;gap:8px;margin:10px 0 0;padding:20px 0 0;font-size:11px;display:flex}.learning-aside{border-left:1px solid #edf0ea;padding-left:29px}.companion{text-align:center}.companion-bubble{color:#6d8268;background:#f7f9f4;border:1px solid #e9eee3;border-radius:8px;padding:11px 15px;font-size:12px;display:inline-block;position:relative}.companion-bubble:after{content:"";background:#f7f9f4;border-bottom:1px solid #e9eee3;border-right:1px solid #e9eee3;width:9px;height:9px;position:absolute;bottom:-5px;left:50%;transform:rotate(45deg)}.companion img{width:220px;height:220px;margin:9px auto 2px;display:block}.companion-caption{color:#a0aa9a;justify-content:center;align-items:center;gap:5px;font-size:10px;display:flex}.daily-goal{border-top:1px solid #edf0ea;margin-top:22px;padding:28px 0 22px}.daily-goal h2{font-size:14px}.daily-goal h2 svg{color:#cead54}.goal-count{align-items:baseline;gap:7px;margin-bottom:12px;display:flex}.goal-count strong{font-size:31px;font-weight:750}.goal-count>span:not(.goal-star){color:#99a396;font-size:12px}.goal-star{color:#d9b953;align-self:center;margin-left:auto}.meter{background:#eef2e9;border:0;border-radius:10px;width:100%;height:9px;display:block;overflow:hidden}.meter::-webkit-progress-bar{background:#eef2e9;border-radius:10px}.meter::-webkit-progress-value{background:#80ad68;border-radius:10px;transition:none}.meter::-moz-progress-bar{background:#80ad68;border-radius:10px}.daily-goal>p{color:#9aa594;margin-top:10px;font-size:10px;line-height:1.7}.week{grid-template-columns:repeat(7,minmax(0,1fr));gap:5px;margin-top:23px;display:grid}.week>div{color:#a4ad9e;flex-direction:column;align-items:center;gap:9px;font-size:10px;display:flex}.day-circle{background:#f5f7f1;border-radius:50%;place-items:center;width:25px;height:25px;font-size:10px;display:grid}.day-circle.today{color:#4e926b;background:#f0f7ed;border:1px solid #8eb899}.day-circle.done{color:#fff;background:#71a583;border:1px solid #71a583}.review-invite{border-top:1px solid #edf0ea;align-items:center;gap:10px;padding-top:24px;display:flex}.review-icon{color:#779cbc;background:#f0f6fa;border-radius:8px;flex-shrink:0;place-items:center;width:37px;height:40px;display:grid}.review-invite h3{font-size:12px;font-weight:650}.review-invite p{color:#9ba595;margin-top:6px;font-size:10px}.review-invite .button{width:24px;min-width:24px;margin-left:auto}.resume-strip{border-top:1px dashed #dbe5d4;justify-content:space-between;align-items:center;gap:15px;margin-bottom:14px;padding:14px 0;display:flex}.resume-strip strong{font-size:12px;display:block}.resume-strip small{color:#90a086;margin-top:4px;font-size:10px;display:block}.app-footer{color:#b0b8aa;justify-content:center;align-items:center;gap:5px;padding:22px 0;font-size:10px;display:flex}.app-footer span{border-left:1px solid #dce2d6;margin-left:6px;padding-left:11px}.review-banner{background:#f2f6fb;border-block:1px solid #dde8f4;align-items:center;gap:20px;margin-bottom:36px;padding:23px;display:flex}.review-large-icon{color:#7194bc}.review-banner h2{margin-bottom:7px;font-size:18px;font-weight:650}.review-banner p{color:#8b98a5;font-size:12px}.review-banner .button{margin-left:auto}.search-field{color:#9ba693;border:1px solid #e4e9e1;border-radius:7px;align-items:center;gap:7px;padding:9px 11px;display:flex}.search-field input{background:0 0;border:none;outline:none;width:160px;font-size:12px}.search-field:focus-within{outline:2px solid #8fb89b}.exercise-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;display:grid}.exercise-item{border:1px solid #e3e9e0;border-radius:8px;flex-direction:column;align-items:flex-start;padding:24px 22px 20px;display:flex}.exercise-glyph{background:var(--subject-soft);width:49px;height:49px;color:var(--subject);border-radius:8px;place-items:center;margin-bottom:20px;font-size:27px;font-weight:700;display:grid}.exercise-item h3{font-size:16px;font-weight:650}.exercise-item>p{color:#93a08c;margin-top:8px;font-size:11px}.exercise-preview{color:var(--subject);min-height:44px;margin:25px 0;font-size:14px}.exercise-item>.button{width:100%;margin-top:auto;font-size:12px}.level-select{width:100%;margin:20px 0}.level-select>span{color:#95a08d;margin-bottom:7px;font-size:10px;display:block}select{background:#fff;border:1px solid #dce4d8;border-radius:6px;padding:10px;font-size:12px}.level-select select{width:100%}.stats-grid{border-block:1px solid #e8ede3;grid-template-columns:repeat(4,minmax(0,1fr));margin:15px 0 35px;padding:24px 0 30px;display:grid}.stat-item{border-left:1px solid #e8ede3;padding-left:25px}.stat-item:first-child{border-left:0;padding-left:0}.stat-item>span{color:#8a9782;align-items:center;gap:8px;font-size:12px;display:flex}.stat-item svg{color:#73a18b}.stat-item:nth-child(2) svg{color:#6a9fc5}.stat-item:nth-child(3) svg{color:#d59365}.stat-item:nth-child(4) svg{color:#b79a45}.stat-item strong{margin-top:12px;font-size:32px;font-weight:750;display:block}.stat-item small{color:#929e89;margin-left:5px;font-size:12px;font-weight:400}.growth-chart{border-bottom:1px solid #e7ede0;padding-bottom:30px}.bar-chart{grid-template-columns:repeat(7,minmax(0,1fr));gap:30px;margin-top:30px;padding:0 15px;display:grid}.bar-column{text-align:center;color:#9ca68f;flex-direction:column;gap:8px;font-size:12px;display:flex}.bar-track{background:#f7f9f2;border-radius:5px 5px 0 0;align-items:flex-end;height:115px;display:flex;overflow:hidden}.bar-track div{background:#bbd2a6;border-radius:5px 5px 0 0;width:100%}.bar-column.is-today{color:#46946c}.bar-column.is-today .bar-track div{background:#71aa81}.achievements{margin-top:30px}.achievement-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;display:grid}.achievement{text-align:center;border:1px solid #e9eee2;border-radius:8px;padding:23px 10px}.medal{color:#bec6b4;background:#f1f3ec;border:4px double #dfe5d5;border-radius:50%;place-items:center;width:65px;height:65px;margin:0 auto 15px;display:grid}.earned .medal{color:#b68d2c;background:#fff3c5;border-color:#e2c879}.achievement h3{font-size:14px;font-weight:650}.achievement p{color:#99a38d;margin-top:7px;font-size:11px}.achievement small{color:#b1b9a7;margin-top:15px;font-size:10px;display:block}.earned small{color:#ad924c}.history{margin-top:32px}.history-row{border-bottom:1px solid #edf0e8;align-items:center;gap:16px;padding:16px 0;display:flex}.history-glyph{width:42px;height:42px;color:var(--subject);background:var(--subject-soft);border-radius:8px;place-items:center;font-size:23px;display:grid}.history-row small{color:#99a58d;margin-top:5px;font-size:10px;display:block}.history-row>span:nth-last-child(2){color:#7c8e70;margin-left:auto;font-size:12px}.history-row>svg{color:#a4bf87}.empty-state{color:#829577;flex-direction:column;justify-content:center;align-items:center;gap:15px;min-height:230px;display:flex}.empty-state h3{font-size:16px;font-weight:600}.empty-state p{font-size:12px}.settings-layout{grid-template-columns:minmax(0,1fr) 250px;gap:45px;margin-top:38px;display:grid}.settings-form h2{border-bottom:1px solid #e3e9dc;padding-bottom:15px;font-size:16px;font-weight:700}.setting-row{border-bottom:1px solid #edf0e8;justify-content:space-between;align-items:center;gap:22px;padding:22px 0;display:flex}.setting-row strong{font-size:13px;font-weight:600;display:block}.setting-row small{color:#94a087;margin-top:8px;font-size:10px;line-height:1.6;display:block}.setting-row>input{border:1px solid #dce4d8;border-radius:6px;width:125px;padding:10px;font-size:12px}.setting-row>select{width:125px}.settings-section-title{margin-top:35px}.storage-note{color:#98a48c;margin-top:15px;font-size:11px;line-height:1.9}.parent-note{text-align:center;border-left:1px solid #edf0e8;padding-left:25px}.parent-note img{width:205px;height:205px}.parent-note h3{margin-top:20px;font-size:14px;font-weight:650}.parent-note p{color:#93a185;margin-top:14px;font-size:12px;line-height:1.9}.parent-note>span{color:#79a079;justify-content:center;align-items:center;gap:5px;margin-top:30px;font-size:10px;display:flex}.export-status{color:#348e70;margin-top:20px;font-size:12px}.storage-error{color:#87592b;text-align:center;z-index:100;background:#fff0ce;padding:10px 20px;font-size:12px;position:relative}.confirm-dialog{background:#fff;border-radius:8px}.confirm-dialog [data-slot=modal-header]{flex-direction:row;justify-content:space-between;align-items:center;display:flex}.confirm-dialog [data-slot=modal-body]{color:#819079;font-size:14px;line-height:1.8}.practice-screen{flex-direction:column;min-height:100dvh;display:flex}.practice-header{align-items:center;gap:23px;width:100%;max-width:1040px;margin:0 auto;padding:30px 40px 20px;display:flex}.practice-header .meter{height:13px}.question-count{white-space:nowrap;font-size:18px;font-weight:750}.question-count>span{color:#b0baa7;font-size:14px;font-weight:400}.practice-main{flex:1;width:100%;max-width:820px;margin:10px auto 0;padding:12px 40px 30px}.practice-caption{color:#91a082;align-items:center;gap:10px;margin-bottom:24px;font-size:12px;display:flex}.subject-dot{background:var(--subject);border-radius:50%;width:7px;height:7px}.question h1{font-size:26px}.question-stage{align-items:center;gap:30px;min-height:210px;margin:15px 0 25px;display:flex}.question-mascot{flex-shrink:0;width:160px;height:160px}.question-display{flex:1;min-width:0;font-family:ui-rounded,SF Pro Rounded,PingFang SC,sans-serif}.question-display>span{font-size:66px;font-weight:600}.question-display>.parts-display{white-space:nowrap;font-size:52px}.speech-row{align-items:center;gap:10px;margin-top:13px;display:flex}.speech-row .icon-button{color:var(--subject);background:var(--subject-soft);flex-shrink:0}.speech-row p{color:#879a79;font-family:PingFang SC,sans-serif;font-size:13px;line-height:1.7}.speech-error{color:#b1895f;margin-top:8px;font-size:11px}.answer-options{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;display:grid}.answer-option{color:#46563e;background:#fff;border:2px solid #e1e8dc;width:100%;height:117px;font-family:PingFang SC,sans-serif;font-size:42px;font-weight:500;position:relative;box-shadow:0 4px #e1e8dc}.pinyin-options .answer-option{font-family:ui-rounded,SF Pro Rounded,sans-serif;font-size:30px}.english-options .answer-option{font-family:ui-rounded,SF Pro Rounded,sans-serif;font-size:clamp(20px,2vw,28px);font-weight:700}.answer-option .option-index{color:#a4b096;border:1px solid #e7ecdf;border-radius:4px;place-items:center;width:17px;height:17px;font-family:ui-rounded,SF Pro Rounded,sans-serif;font-size:10px;font-weight:400;display:grid;position:absolute;top:10px;left:10px}.answer-option.is-selected{border-color:var(--subject);background:var(--subject-soft);color:var(--subject);box-shadow:0 4px 0 var(--subject)}.answer-option.is-correct,.answer-input.is-correct{color:#669940;background:#eff7e8;border-color:#8bb76b;box-shadow:0 4px #8bb76b}.answer-option.is-wrong,.answer-input.is-wrong{color:#b38050;background:#fff2e7;border-color:#d7b58b;box-shadow:0 4px #d7b58b}.answer-option:disabled,.answer-option[data-disabled],.answer-option[aria-disabled=true]{opacity:1}.answer-option[aria-disabled=true]:not(.is-correct):not(.is-wrong){color:#a8b0a0;background:#fbfcf9}.option-check{position:absolute;top:9px;right:8px}.practice-tools{flex-wrap:wrap;justify-content:center;gap:16px;margin:24px 0 10px;display:flex}.hint-box{color:#8d7b50;background:#fff8e6;border-radius:8px;gap:12px;margin-top:17px;padding:16px;font-size:13px;line-height:1.9;display:flex}.hint-box>svg{flex-shrink:0;margin-top:3px}.answer-footer{z-index:20;background:#fff;border-top:1px solid #e5ebde;margin-top:auto;padding:24px 32px;position:sticky;bottom:0}.answer-footer-inner{justify-content:space-between;align-items:center;gap:25px;max-width:860px;margin:0 auto;display:flex}.feedback{align-items:center;gap:15px;min-width:0;display:flex}.feedback-icon{background:#fff;border-radius:50%;flex-shrink:0;place-items:center;width:46px;height:46px;display:grid}.feedback h2{font-size:18px;font-weight:700}.feedback p{margin-top:5px;font-size:13px}.quiet-feedback{color:#a0ad94;font-size:13px}.primary-action{min-width:160px;height:48px;padding:0 27px;font-size:15px;box-shadow:0 3px #277258}.primary-action[aria-disabled=true]{color:#aab5a1;opacity:1;background:#e8ede3;box-shadow:0 3px #dce3d6}.feedback-explanation{max-width:860px;margin:15px auto 0;font-size:12px;line-height:1.8}.math-display{text-align:center}.math-display .speech-row{justify-content:center}.subject-math .question-stage{min-height:190px;margin:5px 0 20px}.math-input-area{max-width:350px;margin:0 auto}.answer-input{color:#88a077;text-align:right;font-variant-numeric:tabular-nums;background:0 0;border:0;border-radius:0;outline:0;width:100%;min-width:0;height:54px;padding:0;font-family:inherit;font-size:38px;font-weight:700;line-height:1}.answer-input::placeholder{color:#9eb292}.answer-input:disabled{opacity:1}.number-pad{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:17px;display:grid}.number-pad .button{width:100%;height:41px;font-size:20px;box-shadow:0 2px #e0e7d9}.key-zero{grid-column:span 2}.vertical-math{text-align:right;min-width:160px;padding:28px 15px 10px;font-family:monospace;font-size:38px;display:inline-block;position:relative}.carry-mark{color:#d5486f;font-size:16px;font-weight:900;line-height:1;position:absolute;top:3px;transform:translate(50%)}.carry-tool-icon{color:#d5486f;background:#ffe8ee;border-radius:4px;place-items:center;width:19px;height:19px;font-family:ui-monospace,monospace;font-size:12px;font-weight:900;display:inline-grid}.place-labels{color:#8ea17f;justify-content:flex-end;font-size:10px;display:flex}.place-labels span{text-align:center;width:1ch;min-width:23px}.second-operand{border-bottom:2px solid #7d956c;justify-content:space-between;padding-bottom:3px;display:flex}.second-operand span{margin-right:15px}.vertical-answer{min-height:54px;display:flex}.vertical-answer .answer-input.is-correct{color:#669940}.vertical-answer .answer-input.is-wrong{color:#b38050}.scratchpad{border:1px solid #dfe7d9;border-radius:8px;margin-top:20px;overflow:hidden}.scratchpad>div{color:#8c9e7e;border-bottom:1px solid #eef1e9;justify-content:space-between;align-items:center;padding:0 10px;font-size:12px;display:flex}.scratchpad canvas{touch-action:none;background:#fbfcf8;width:100%;height:180px;display:block}.result-screen{text-align:center;flex-direction:column;align-items:center;max-width:700px;min-height:100dvh;margin:0 auto;padding:60px 35px;display:flex}.result-medal{color:#b59035;background:#fff3c7;border:6px double #e3ce82;border-radius:50%;place-items:center;width:110px;height:110px;margin-bottom:30px;display:grid;position:relative}.result-medal>svg:last-child{position:absolute;top:5px;right:-18px}.result-screen h1{margin:12px 0 7px}.result-stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;width:100%;margin:35px 0;display:grid}.result-stats>div{color:#769858;border:1px solid #e3eadb;border-radius:8px;flex-direction:column;align-items:center;gap:9px;padding:22px 10px;display:flex}.result-stats>div:nth-child(2){color:#6092b3}.result-stats>div:nth-child(3){color:#c19e49}.result-stats strong{font-size:30px;font-weight:700}.result-stats small{font-size:14px;font-weight:400}.result-stats span{color:#90a080;font-size:11px}.result-review{border-top:1px solid #e7eddf;width:100%;padding:22px 0}.result-review h2{margin-bottom:15px;font-size:15px;font-weight:600}.result-review>div{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.result-review>div>span{color:#819267;background:#f5f7ee;border-radius:5px;padding:7px 13px;font-size:13px}.result-review small{color:#a4b194;margin-top:15px;font-size:11px;display:block}.result-actions{align-items:center;gap:15px;margin-top:20px;display:flex}.result-actions>.button{height:48px}.saved-note{color:#9ab086;align-items:center;gap:6px;margin-top:30px;font-size:11px;display:flex}.page-heading>p,.subject-tile small,.lesson-copy p,.lesson-preview,.chapter-kicker,.section-heading>span,.companion-caption,.daily-goal>p,.review-invite p,.review-banner p,.exercise-item>p,.setting-row small,.storage-note,.speech-row p,.practice-caption,.feedback .quiet-feedback,.history-row small,.achievement p,.result-stats span{color:#667469}.lesson-copy p,.lesson-preview{font-size:12px}.lesson-number{color:#71816c}.primary-action:disabled,.primary-action[data-disabled]{color:#73816b;opacity:1;background:#e8ede3;box-shadow:0 3px #dce3d6}@media (width>=1600px){.page-content{padding-top:46px}.learning-columns{grid-template-columns:minmax(0,1fr) 300px;gap:50px}.lesson-row{min-height:140px}}@media (width<=1150px){.sidebar{width:190px;padding-inline:16px}.brand{gap:8px;font-size:20px}.workspace{margin-left:190px}.topbar{padding-inline:28px}.page-content{padding:30px 28px}.learning-columns{grid-template-columns:minmax(0,1fr) 218px;gap:22px}.learning-aside{padding-left:20px}.companion img{width:186px;height:186px}.companion-bubble{padding:9px;font-size:10px}.subject-tile{gap:10px;padding:15px 12px}.subject-tile small{font-size:9px}.subject-selected-icon{display:none}.node-track{width:76px}.node-track:before{left:37px}.chapter-banner{padding:19px}.chapter-banner h3{font-size:15px}.lesson-start{padding:0 9px}.review-invite{gap:7px}.review-icon{display:none}.exercise-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.settings-layout{grid-template-columns:minmax(0,1fr) 200px;gap:25px}}@media (width<=850px){.sidebar{width:90px;padding:26px 11px}.sidebar .brand{justify-content:center}.sidebar .brand>span:last-child,.sidebar-bottom{display:none}.sidebar nav{margin-top:35px}.nav-link{flex-direction:column;justify-content:center;gap:6px;height:70px;padding:12px 0;font-size:10px}.nav-count{position:absolute;top:8px;right:6px}.workspace{margin-left:90px}.learning-columns{grid-template-columns:minmax(0,1fr)}.learning-aside{border-top:1px solid #e8edde;border-left:0;grid-template-columns:210px minmax(0,1fr);margin-top:15px;padding:20px 0 0;display:grid}.companion img{width:155px;height:155px}.daily-goal{border:0;margin:0;padding:0 0 15px 20px}.review-invite{grid-column:span 2;padding:18px 0}.settings-layout{grid-template-columns:minmax(0,1fr)}.parent-note{display:none}}@media (width<=600px){.sidebar{width:100%;height:calc(70px + env(safe-area-inset-bottom));padding:0 8px env(safe-area-inset-bottom);background:#fffffff5;border-top:1px solid #e4ebdf;border-right:0;position:fixed;inset:auto 0 0}.sidebar>.brand{display:none}.sidebar nav{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:0;display:grid}.nav-link{border:0;border-radius:0;height:69px;padding:10px 0;font-size:11px}.nav-link.active{color:#388d6d;background:0 0;border:0}.nav-link.active:before{content:"";background:#75aa7e;border-radius:0 0 3px 3px;width:35px;height:3px;position:absolute;top:0}.workspace{margin-left:0;padding-bottom:70px}.desktop-breadcrumb{display:none}.mobile-brand{display:block}.mobile-brand .brand{font-size:17px}.mobile-brand .brand-icon{border-radius:10px 10px 12px 5px;width:32px;height:34px}.mobile-brand .brand-icon svg{width:21px}.mobile-brand .brand small{display:none}.topbar{height:65px;padding:0 20px}.topbar-stats{gap:13px}.topbar-stats>span:not(.topbar-divider){gap:4px;font-size:13px}.topbar-divider,.topbar-stats small{display:none}.topbar-stats .icon-button{width:30px;min-width:30px}.page-content{padding:28px 20px}.page-heading{margin-bottom:24px}.page-heading h1{margin-top:8px;font-size:25px}.page-heading>p{font-size:12px}.eyebrow{font-size:11px}.subject-picker{gap:10px;margin-bottom:31px}.subject-tile{justify-content:center;gap:7px;height:74px;padding:9px 8px}.subject-glyph{border-radius:6px;width:31px;height:37px;font-size:26px}.subject-tile strong{font-size:15px}.subject-tile small{display:none}.section-heading h2{font-size:16px}.section-heading>span{font-size:10px}.chapter-banner{min-height:85px;padding:17px}.chapter-banner h3{font-size:16px}.chapter-banner>svg{width:27px}.node-track{width:74px}.node-track:before{left:36px}.lesson-row{min-height:128px}.lesson-node{width:52px;min-width:52px;height:52px}.lesson-copy h3{font-size:16px}.lesson-copy p{font-size:12px}.lesson-preview{font-size:11px}.lesson-number{gap:7px;font-size:9px}.lesson-start{gap:4px;padding:0 8px;font-size:11px}.lesson-start svg{width:15px}.learning-aside{grid-template-columns:140px minmax(0,1fr);gap:13px}.companion-bubble{padding:9px 7px;font-size:9px}.companion img{width:135px;height:135px}.companion-caption{font-size:8px}.daily-goal{padding-left:0}.daily-goal .section-heading h2{gap:5px;font-size:12px}.daily-goal .section-heading{gap:3px}.daily-goal .section-heading>span{display:none}.daily-goal>p{font-size:9px}.goal-count strong{font-size:27px}.week{gap:2px}.day-circle{width:21px;height:21px;font-size:9px}.review-icon{display:grid}.review-invite h3{font-size:13px}.review-banner{flex-wrap:wrap;gap:10px;padding:17px 12px}.review-large-icon{display:none}.review-banner h2{font-size:16px}.review-banner p{font-size:10px}.review-banner .button{gap:5px;padding:0 12px;font-size:11px}.exercise-heading{flex-wrap:wrap}.search-field{padding:8px}.search-field input{width:120px;font-size:11px}.exercise-grid{gap:12px}.exercise-item{padding:18px 13px 14px}.exercise-item h3{font-size:14px}.exercise-item>p{font-size:10px;line-height:1.7}.exercise-preview{margin:20px 0;font-size:12px}.exercise-item .button{gap:6px;font-size:11px}.level-select select{padding:8px 3px;font-size:10px}.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:25px 0}.stat-item:nth-child(3){border:0;padding-left:0}.bar-chart{gap:13px;padding:0}.bar-track{height:105px}.achievement-grid{gap:10px}.achievement{padding:18px 6px}.medal{width:53px;height:53px}.medal svg{width:25px}.achievement h3{font-size:12px}.achievement p{font-size:9px;line-height:1.8}.achievement small{font-size:9px}.history-row{gap:10px}.history-row>span:nth-last-child(2){font-size:11px}.history-row>svg{display:none}.setting-row{gap:12px}.setting-row small{max-width:195px;font-size:10px}.setting-row>input,.setting-row>select{flex-shrink:0;width:105px}.practice-header{gap:12px;padding:20px 16px 12px}.practice-main{margin-top:0;padding:12px 22px 25px}.practice-caption{margin-bottom:18px;font-size:10px}.question h1{font-size:22px}.question-stage{gap:12px;min-height:150px;margin:14px 0 22px}.question-mascot{width:105px;height:105px}.question-display>span{font-size:49px}.question-display>.parts-display{font-size:32px}.speech-row{align-items:flex-start;gap:7px;margin-top:10px}.speech-row .icon-button{width:32px;min-width:32px;height:32px}.speech-row .icon-button svg{width:21px}.speech-row p{font-size:11px}.answer-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.answer-option{height:86px;font-size:37px}.pinyin-options .answer-option{font-size:31px}.practice-tools{gap:10px;margin-top:23px}.practice-tools .button{padding-inline:7px;font-size:11px}.answer-footer{padding:17px 22px calc(17px + env(safe-area-inset-bottom))}.answer-footer-inner{flex-wrap:wrap;gap:13px}.feedback{gap:10px;width:100%}.feedback-icon{width:34px;height:34px}.feedback h2{font-size:16px}.feedback p{font-size:12px}.quiet-feedback{display:none}.answer-footer .primary-action{width:100%;height:45px;font-size:14px}.answer-footer-inner:has(.quiet-feedback){gap:0}.feedback-explanation{max-height:105px;font-size:11px;line-height:1.6;overflow:auto}.subject-math .question-stage{min-height:115px;margin-bottom:15px}.math-input-area{max-width:295px}.number-pad .button{height:38px}.result-screen{padding:40px 22px}.result-screen h1{font-size:24px}.result-stats{gap:10px;margin:26px 0}.result-stats strong{font-size:25px}.result-stats>div{padding:18px 5px}.result-actions{flex-direction:column;gap:12px;width:100%}.result-actions .button{width:100%}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}[data-reduce-motion=true] *,[data-reduce-motion=true] :before,[data-reduce-motion=true] :after{transition-duration:.01ms!important;animation-duration:.01ms!important}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.ds-button{min-height:var(--ds-control-md);border-radius:var(--ds-radius-sm);font-size:var(--ds-font-body);border:1px solid #0000;justify-content:center;align-items:center;gap:8px;padding:0 18px;font-weight:700;line-height:1;text-decoration:none;transition:background-color .15s,border-color .15s,box-shadow .15s,transform .1s;display:inline-flex}.ds-button:hover:not(:disabled){transform:translateY(-1px)}.ds-button:active:not(:disabled){transform:translateY(0)}.ds-button--sm{min-height:40px;font-size:var(--ds-font-sm);padding-inline:14px}.ds-button--md{min-height:var(--ds-control-md)}.ds-button--lg{min-height:var(--ds-control-lg);padding-inline:22px;font-size:15px}.ds-button:disabled{color:#9aa8a0;box-shadow:none;background:#edf2ee;border-color:#e1e9e3;transform:none}.ds-button--icon{width:var(--ds-control-md);min-width:var(--ds-control-md);border-radius:var(--ds-radius-full);padding:0}.learning-page{gap:24px;display:grid}.learning-hero{border-bottom:1px solid var(--ds-border);justify-content:space-between;align-items:flex-end;gap:28px;padding-bottom:22px;display:flex}.learning-kicker,.section-kicker{color:var(--ds-text-muted);font-size:var(--ds-font-sm);align-items:center;gap:7px;font-weight:650;display:inline-flex}.learning-kicker svg{color:#b1852e}.learning-hero h1{margin-top:8px;font-size:clamp(28px,3vw,34px);line-height:1.25}.learning-hero p{color:var(--ds-text-muted);margin-top:8px;font-size:15px}.learning-hero__goal{border:1px solid var(--ds-border);border-radius:var(--ds-radius-sm);background:var(--ds-surface);min-width:168px;padding:12px 16px}.learning-hero__goal>span{color:var(--ds-text-muted);font-size:var(--ds-font-xs);display:block}.learning-hero__goal strong{color:var(--ds-primary);margin-top:4px;font-size:24px;line-height:1.2;display:block}.learning-hero__goal small{color:var(--ds-text-muted);font-size:var(--ds-font-xs);font-weight:500}.learning-page .subject-picker{gap:12px;margin:0}.learning-page .subject-tile{border-radius:var(--ds-radius-sm);height:76px;box-shadow:var(--ds-shadow-sm);border-width:1px;gap:12px;padding:12px 14px}.learning-page .subject-tile .mantine-Button-inner{justify-content:flex-start;gap:14px;width:100%}.learning-page .subject-tile .subject-selected-icon{margin-left:auto}.learning-page .subject-tile:hover{border-color:var(--subject-line)}.learning-page .subject-glyph{border-radius:var(--ds-radius-sm);width:40px;height:40px;font-size:25px}.learning-page .subject-tile-copy{gap:2px}.learning-layout{grid-template-columns:minmax(0,1fr) 300px;align-items:start;gap:24px;display:grid}.learning-panel,.side-panel{border:1px solid var(--ds-border);border-radius:var(--ds-radius-sm);background:var(--ds-surface);box-shadow:var(--ds-shadow-sm)}.learning-panel{padding:22px}.learning-panel__heading,.side-panel__heading{justify-content:space-between;align-items:center;gap:16px;display:flex}.learning-panel__heading{border-bottom:1px solid var(--ds-border);padding-bottom:18px}.learning-panel__heading h2{font-size:var(--ds-font-lg);margin-top:4px}.unit-count{border-radius:var(--ds-radius-full);color:var(--ds-text-muted);background:var(--ds-surface-muted);font-size:var(--ds-font-xs);white-space:nowrap;padding:6px 10px;font-weight:650}.resume-card{border:1px solid var(--subject-line);border-radius:var(--ds-radius-sm);background:var(--subject-soft);align-items:center;gap:12px;margin-top:18px;padding:12px 14px;display:flex}.resume-card__icon{border-radius:var(--ds-radius-sm);width:38px;height:38px;color:var(--subject);background:#fff;place-items:center;display:grid}.resume-card>span:nth-child(2){flex:1;min-width:0}.resume-card strong,.resume-card small{display:block}.resume-card small{color:var(--ds-text-muted);font-size:var(--ds-font-xs);margin-top:2px}.lesson-list{gap:10px;margin-top:18px;display:grid}.lesson-card{border:1px solid var(--ds-border);border-radius:var(--ds-radius-sm);background:var(--ds-surface);grid-template-columns:44px minmax(0,1fr) auto auto;align-items:center;gap:14px;min-height:84px;padding:12px 14px;transition:border-color .15s,background-color .15s,box-shadow .15s;display:grid}.lesson-card:hover{border-color:var(--ds-border-strong);box-shadow:var(--ds-shadow-sm)}@supports (color:color-mix(in lab, red, red)){.lesson-card.is-current{background:color-mix(in srgb, var(--subject-soft) 62%, white)}}.lesson-card__icon{border-radius:var(--ds-radius-sm);color:#7d9185;background:var(--ds-surface-muted);place-items:center;width:44px;height:44px;display:grid}.lesson-card.is-current .lesson-card__icon{color:#fff;background:var(--subject)}.lesson-card.is-complete .lesson-card__icon{color:#56803c;background:#edf6e8}.lesson-card__copy{min-width:0}.lesson-card__meta{color:var(--ds-text-muted);font-size:var(--ds-font-xs);align-items:center;gap:8px;font-weight:650;display:flex}.lesson-card__meta span{border-radius:var(--ds-radius-full);color:var(--subject);background:var(--subject-soft);padding:2px 7px}.lesson-card.is-complete .lesson-card__meta span{color:#668348;background:#edf5e8}.lesson-card h3{font-size:var(--ds-font-md);margin-top:4px;line-height:1.35}.lesson-card p{color:var(--ds-text-muted);font-size:var(--ds-font-sm);margin-top:3px}.lesson-card__preview{border-radius:var(--ds-radius-sm);color:#72847a;font-family:ui-monospace,monospace;font-size:var(--ds-font-xs);white-space:nowrap;background:#f5f8f5;padding:5px 9px}.lesson-card__action{min-width:82px}.learning-sidebar{gap:16px;display:grid}.side-panel{padding:18px}.side-panel__heading h2{font-size:var(--ds-font-md);align-items:center;gap:7px;display:flex}.side-panel__heading>span{color:var(--ds-warning);font-size:var(--ds-font-xs);font-weight:700}.side-panel__heading>span.is-done{color:var(--ds-primary)}.goal-panel .goal-count{align-items:baseline;gap:6px;margin-top:16px;display:flex}.goal-panel .goal-count strong{font-size:34px;line-height:1}.goal-panel .goal-count>span:not(.goal-star){color:var(--ds-text-muted);font-size:var(--ds-font-sm)}.goal-panel .goal-star{color:#c49b35;margin-left:auto}.goal-panel .meter{margin-top:14px}.goal-panel>p{color:var(--ds-text-muted);font-size:var(--ds-font-xs);margin-top:10px;line-height:1.55}.review-panel{grid-template-columns:42px minmax(0,1fr);gap:0 12px;display:grid}.review-panel__icon{border-radius:var(--ds-radius-sm);width:42px;height:42px;color:var(--ds-primary);background:var(--ds-primary-soft);place-items:center;display:grid}.review-panel p{color:var(--ds-text-muted);font-size:var(--ds-font-xs);margin-top:3px}.review-panel .ds-button{grid-column:1/-1;justify-content:space-between;margin-top:14px}.companion-card{border-radius:var(--ds-radius-sm);background:#f7faf2;border:1px solid #e2e9d8;grid-template-columns:96px minmax(0,1fr);align-items:center;gap:10px;padding:8px 12px;display:grid}.companion-card p{color:var(--ds-text-muted);font-size:var(--ds-font-xs);margin-top:4px;line-height:1.6}@media (width<=980px){.learning-layout{grid-template-columns:minmax(0,1fr)}.learning-sidebar{grid-template-columns:repeat(2,minmax(0,1fr))}.companion-card{grid-column:1/-1}}@media (width<=700px){.ds-button{min-height:var(--ds-control-md)}.learning-hero{flex-direction:column;align-items:stretch;gap:16px}.learning-hero__goal{width:100%}.subject-picker{grid-template-columns:repeat(2,minmax(0,1fr))}.learning-page .subject-tile{gap:8px;height:70px;padding:10px}.learning-page .subject-tile small{display:none}.learning-page .subject-glyph{width:36px;height:36px;font-size:22px}.learning-panel{padding:16px}.lesson-card{grid-template-columns:42px minmax(0,1fr) auto;gap:10px}.lesson-card__preview{display:none}.lesson-card__action{width:44px;min-width:44px;padding:0;font-size:0}.lesson-card__action svg{width:18px;height:18px}.english-options .answer-option{font-size:22px}.learning-sidebar{grid-template-columns:minmax(0,1fr)}.companion-card{grid-column:auto}}.subject-hanzi{--subject-dark:#24664f}.subject-pinyin{--subject-dark:#b75b47}.subject-math{--subject-dark:#3d6f9c}.subject-english{--subject:#a76d17;--subject-soft:#fff5dd;--subject-line:#e8ce94;--subject-dark:#7f500c}.page-content{max-width:1180px}.learning-page{gap:22px}.learning-hero{border-radius:var(--ds-radius-sm);background:#edf8f1;border:1px solid #d4e7da;align-items:center;padding:26px 28px 26px 34px;position:relative}.learning-hero:before{content:"";background:var(--ds-primary);width:2px;position:absolute;top:0;bottom:0;left:0}.learning-kicker{color:#3f765e;font-size:var(--ds-font-body);font-weight:750}.learning-hero h1{color:#183229;margin-top:7px;font-size:clamp(32px,3.6vw,42px);line-height:1.16}.learning-hero p{color:#597066;font-size:var(--ds-font-md)}.learning-hero__stats{grid-template-columns:repeat(3,minmax(88px,1fr));gap:10px;display:grid}.learning-hero__stats>div{border-radius:var(--ds-radius-sm);background:#fff;border:1px solid #d3e6d9;min-width:96px;padding:11px 14px}.learning-hero__stats strong{color:var(--ds-primary);font-size:24px;line-height:1.1;display:block}.learning-hero__stats small{color:#7a8c83;font-size:var(--ds-font-xs)}.learning-hero__stats span{color:#6d7f76;font-size:var(--ds-font-xs);white-space:nowrap;margin-top:5px;display:block}.learning-page .subject-picker{gap:14px}.learning-page .subject-tile{border:2px solid var(--subject-line);border-radius:var(--ds-radius-sm);height:94px;box-shadow:0 4px 0 var(--subject-line);background:#fff;gap:14px;padding:14px 16px;transition:transform .14s,box-shadow .14s,background-color .14s}.learning-page .subject-tile:hover{box-shadow:0 6px 0 var(--subject-line);transform:translateY(-2px)}.learning-page .subject-tile.selected{color:#fff;border-color:var(--subject);background:var(--subject);box-shadow:0 4px 0 var(--subject-dark)}.learning-page .subject-glyph{width:48px;height:48px;color:var(--subject);border:1px solid var(--subject-line);background:var(--subject-soft);font-size:28px}.learning-page .subject-tile.selected .subject-glyph{color:var(--subject);background:#fff;border-color:#fff}.learning-page .subject-tile strong{color:var(--ds-text);font-size:var(--ds-font-md)}.learning-page .subject-tile small{color:#75867d;font-size:var(--ds-font-xs)}.learning-page .subject-tile.selected strong,.learning-page .subject-tile.selected small{color:#fff}.learning-page .subject-tile.selected small{opacity:.9}.learning-page .subject-selected-icon{color:#fff}.nav-link .mantine-Button-inner{justify-content:flex-start;gap:14px;width:100%}.learning-layout{grid-template-columns:minmax(0,1fr) 310px;gap:28px}.learning-panel{box-shadow:none;background:0 0;border:0;padding:0}.learning-panel__heading{border-bottom:0;padding:0 4px 14px}.section-kicker{color:var(--subject);font-size:var(--ds-font-sm);font-weight:800}.learning-panel__heading h2{color:#20352d;font-size:24px}.unit-count{color:var(--subject);background:var(--subject-soft)}.resume-card{border:2px solid var(--subject-line);box-shadow:0 4px 0 var(--subject-line);gap:14px;margin-top:0;padding:15px 16px}.resume-card__icon{color:#fff;background:var(--subject);width:44px;height:44px}.resume-card strong{font-size:15px}.lesson-list{gap:13px;margin-top:16px}.lesson-card{border-radius:var(--ds-radius-sm);background:#fff;border:2px solid #dfe8e2;grid-template-columns:52px minmax(0,1fr) auto auto;gap:15px;min-height:94px;padding:15px 16px;box-shadow:0 4px #e2eae5}.lesson-card:hover{border-color:var(--subject-line);box-shadow:0 6px 0 var(--subject-line);transform:translateY(-2px)}.lesson-card.is-current{border-color:var(--subject-line);background:var(--subject-soft)}@supports (color:color-mix(in lab, red, red)){.lesson-card.is-current{background:color-mix(in srgb, var(--subject-soft) 72%, white)}}.lesson-card.is-complete{background:#fbfdf8}.lesson-card__icon{width:52px;height:52px;color:var(--subject);border:1px solid var(--subject-line);background:var(--subject-soft)}.lesson-card.is-current .lesson-card__icon{box-shadow:0 3px 0 var(--subject-dark)}.lesson-card__meta{color:#72837a;font-size:var(--ds-font-xs)}.lesson-card__meta span{padding:3px 8px;font-weight:800}.lesson-card h3{color:#1f342c;font-size:18px}.lesson-card p{color:#697a72;font-size:var(--ds-font-body)}.lesson-card__preview{color:#52665c;font-size:var(--ds-font-sm);background:#fff;border:1px solid #e3eae6;padding:6px 10px}.learning-sidebar{gap:18px}.side-panel{border:2px solid #dce7e0;padding:20px;box-shadow:0 4px #e0e9e3}.side-panel__heading h2{color:#243a31;font-size:18px}.goal-panel{background:#fffdf6;border-color:#eddcae;box-shadow:0 4px #efe2ba}.goal-ring-row{align-items:center;gap:16px;margin-top:16px;display:flex}.goal-ring-label{text-align:center}.goal-ring-label strong{color:var(--ds-primary);font-size:24px;line-height:1;display:block}.goal-ring-label small{color:#78877e;margin-top:3px;font-size:11px;display:block}.goal-ring-copy{min-width:0}.goal-ring-copy>strong{font-size:15px}.goal-ring-copy>p{color:#6f7e75;font-size:var(--ds-font-xs);margin-top:5px;line-height:1.55}.goal-ring-copy>span{color:#aa7b1b;font-size:var(--ds-font-xs);align-items:center;gap:4px;margin-top:8px;font-weight:800;display:inline-flex}.goal-panel .week{margin-top:17px}.review-panel{background:#f8fcf9;border-color:#cfe1d8}.review-panel__icon{width:48px;height:48px;color:var(--ds-primary);background:#e1f1e8}.review-panel h3{font-size:17px}.review-panel p{font-size:var(--ds-font-sm)}.review-panel .ds-button{margin-top:16px}.companion-card{background:#f4faee;border:2px solid #d7e7ca;grid-template-columns:108px minmax(0,1fr);gap:14px;padding:12px 14px;box-shadow:0 4px #deead5}.companion-card img{width:108px;height:108px}.companion-card strong{font-size:15px}.companion-card p{font-size:var(--ds-font-sm)}@media (width<=980px){.learning-hero{flex-direction:column;align-items:stretch}.learning-hero__stats{max-width:420px}.learning-layout{grid-template-columns:minmax(0,1fr)}.learning-sidebar{grid-template-columns:repeat(2,minmax(0,1fr))}.companion-card{grid-column:1/-1}}@media (width<=700px){.learning-hero{padding:22px 18px 22px 24px}.learning-hero h1{font-size:30px}.learning-hero__stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.learning-hero__stats>div{min-width:0;padding:9px 8px}.learning-hero__stats strong{font-size:20px}.learning-page .subject-picker{grid-template-columns:repeat(2,minmax(0,1fr))}.learning-page .subject-tile{height:82px;padding:11px}.learning-page .subject-glyph{width:40px;height:40px;font-size:24px}.learning-panel__heading h2{font-size:21px}.lesson-card{grid-template-columns:46px minmax(0,1fr) auto;min-height:86px;padding:13px 12px}.lesson-card__icon{width:46px;height:46px}.lesson-card h3{font-size:16px}.lesson-card p{font-size:var(--ds-font-sm)}.learning-sidebar{grid-template-columns:minmax(0,1fr)}.goal-ring-row{gap:12px}.companion-card{grid-column:auto}}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}:root{--ds-page:#fff;--ds-text:#25282d;--ds-text-muted:#606770;--ds-primary:#2766ce;--ds-primary-hover:#1d54b2;--ds-primary-soft:#edf3ff;--ds-border:#e2e7ee;--green:var(--ds-primary);--ink:var(--ds-text);--border:var(--ds-border);--ds-font-body:15px}.subject-chinese{--subject:#2f6f61;--subject-soft:#edf7f2;--subject-line:#bfded1}.subject-hanzi{--subject:#21876a;--subject-soft:#eaf7f0;--subject-line:#b7ddcd}.subject-pinyin{--subject:#cc564a;--subject-soft:#fff0eb;--subject-line:#eac2b9}.subject-math{--subject:#326ecb;--subject-soft:#edf3ff;--subject-line:#bdcfee}.subject-english{--subject:#9d701d;--subject-soft:#fff7da;--subject-line:#e9d99d}body{color:var(--ds-text);background:#fff}.app-shell{background:#fff}.sidebar{background:#f7f8fa;border-color:#e6eaf0;width:206px;padding:32px 20px 22px}.brand{color:#24334b;gap:9px;font-size:23px}.brand-icon{background:#2468cb;border-radius:8px;width:38px;height:42px}.brand small{color:#7b8799;font-size:10px}.sidebar nav{gap:10px;margin-top:45px}.nav-link{color:#647087;height:52px;padding-inline:17px;font-size:15px}.nav-link.active{color:#2464c8;background:#eaf2ff;border:1px solid #c9dafa}.nav-link .mantine-Button-inner{justify-content:flex-start;gap:12px}.sidebar-bottom .tiny-plant,.sidebar-bottom>p{display:none}.profile{border-color:#e1e6ef}.profile small{color:#7d8a9e}.avatar{color:#326ac5;background:#dceafa}.workspace{margin-left:206px}.topbar{border-color:#e8ecf3;height:76px;padding-inline:40px}.desktop-breadcrumb{color:#7e899a;font-size:13px}.topbar-stats{gap:23px}.topbar-stats .streak-stat{color:#d86d38}.topbar-stats .star-stat{color:#a37a18}.page-content{max-width:1340px;padding:32px 40px 40px}.app-footer{color:#8591a1;border-color:#e7ebf2;font-size:11px}.ds-button{border-radius:7px;min-height:44px;font-size:14px;font-weight:700}.ds-button .mantine-Button-inner{gap:9px}.ds-button .mantine-Button-label{align-items:center;gap:9px;display:flex}.nav-link .mantine-Button-label{gap:12px;width:100%}.button--primary{background:var(--ds-primary);color:#fff}.button--primary:hover:not(:disabled){background:var(--ds-primary-hover)}.button--outline{color:#4c607b;background:#fff;border:1.5px solid #dbe2eb}.button--ghost{color:#60728c}.button--primary:disabled{color:#8b97a8;box-shadow:none;background:#e7ebf0}.ds-button--icon{padding:0}.learn-greeting{justify-content:space-between;align-items:center;gap:18px;margin-bottom:25px;display:flex}.learn-greeting p{color:#738197;margin-bottom:7px;font-size:13px}.learn-greeting h1{font-size:29px;font-weight:800;line-height:1.4}.learning-level{color:#71816b;white-space:nowrap;align-items:center;gap:6px;font-size:12px;display:flex}.subject-tabs{margin-bottom:24px}.subject-tabs .mantine-Tabs-list{background:#f5f7fa;border:1px solid #e4e9ef;border-radius:16px;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;padding:5px;display:grid;overflow:hidden}.subject-tabs .mantine-Tabs-list:before{display:none}.subject-tabs .mantine-Tabs-tab{color:#6d7a8d;border:0;border-radius:11px;justify-content:center;min-height:48px;padding-inline:18px;font-size:15px;font-weight:700;transition:background .16s,color .16s,box-shadow .16s}.subject-tabs .mantine-Tabs-tab[data-active]{color:var(--subject);background:#fff;box-shadow:0 2px 9px #293a5014}.subject-tabs .mantine-Tabs-tab:focus-visible{outline:2px solid var(--subject);outline-offset:-3px}.home-columns{grid-template-columns:minmax(0,1fr) 250px;align-items:start;gap:30px;display:grid}.home-main{min-width:0}.featured-lesson{border:1px solid var(--subject-line);background:#fff;border-radius:18px;grid-template-columns:1.1fr 1fr;display:grid;overflow:hidden;box-shadow:0 10px 28px #2e435b12}.featured-visual{background:var(--subject-soft);height:100%;min-height:310px;position:relative;overflow:hidden}.featured-visual>img{width:100%;height:100%;display:block}.featured-world-image{object-fit:cover;object-position:center;filter:saturate(.92)contrast(.98);position:absolute;inset:0;transform:scale(1.01)}.featured-visual:after{content:"";pointer-events:none;background:linear-gradient(180deg, #ffffff08 34%, color-mix(in srgb, var(--subject) 18%, transparent) 100%);position:absolute;inset:0}.featured-visual-focus{z-index:2;align-items:center;gap:6px;max-width:calc(100% - 36px);display:flex;position:absolute;bottom:18px;right:18px}.featured-visual-focus>span{min-width:34px;min-height:34px;color:var(--subject);background:#ffffffe8;border:1px solid #ffffffb8;border-radius:11px;place-items:center;padding:6px 9px;font-size:15px;font-weight:800;line-height:1.1;display:grid;box-shadow:0 5px 16px #26374d1a}.visual-label{z-index:2;color:var(--subject);background:#fffffff0;border:1px solid #ffffffa8;border-radius:999px;padding:6px 11px;font-size:11px;font-weight:700;position:absolute;top:17px;left:20px}.featured-body{flex-direction:column;justify-content:center;align-items:flex-start;padding:31px 26px;display:flex}.featured-kicker{color:var(--subject);grid-column:1;align-items:center;gap:7px;margin-bottom:8px;font-size:11px;font-weight:700;display:flex}.live-dot{background:var(--subject);border-radius:50%;width:6px;height:6px}.featured-body h2{grid-column:1;font-size:27px;font-weight:800;line-height:1.4}.featured-body>p{color:#738095;grid-column:1;margin-top:7px;font-size:13px}.lesson-meta{color:#8290a3;flex-wrap:wrap;grid-column:1;gap:15px;margin-top:17px;font-size:11px;display:flex}.lesson-meta>span{align-items:center;gap:5px;display:flex}.course-cta{min-width:146px;height:48px;box-shadow:none;background:#296bd0;margin-top:25px}.course-cta:active:not(:disabled){box-shadow:none;transform:none}.lesson-art{background:var(--subject-soft);grid-template-columns:repeat(2,minmax(0,1fr));align-content:center;justify-items:center;gap:15px;height:100%;padding:45px 28px 20px;display:grid}.lesson-art>span{border:1.5px solid var(--subject-line);color:var(--subject);background:#fffffff2;border-radius:15px;padding:10px 16px;font-size:28px;font-weight:800;box-shadow:0 6px 16px #34485e12}.art-math{grid-template-columns:minmax(0,1fr)}.art-math>span{padding:15px;font-size:28px}.chinese-practice-entry{border-top:1px solid #e5eaf0;margin-top:28px;padding:20px 0 4px}.practice-entry-heading{justify-content:space-between;align-items:end;gap:16px;margin-bottom:14px;display:flex}.practice-entry-heading>div>span{color:var(--subject);margin-bottom:5px;font-size:10px;font-weight:800;display:block}.practice-entry-heading h2{font-size:18px;line-height:1.35}.practice-skill-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.practice-skill-card{text-align:left;min-height:78px;color:var(--ds-text);background:#fff;border:1px solid #e1e7ee;border-radius:9px;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:12px;padding:13px 14px;transition:border-color .15s,transform .15s;display:grid}.practice-skill-card:hover{border-color:var(--subject);transform:translateY(-1px)}.practice-skill-glyph{background:var(--subject-soft);width:42px;height:42px;color:var(--subject);border-radius:8px;place-items:center;font-size:19px;font-weight:800;display:grid}.practice-skill-card>span:nth-child(2){min-width:0}.practice-skill-card strong,.practice-skill-card small{display:block}.practice-skill-card strong{margin-bottom:4px;font-size:14px}.practice-skill-card small{color:#7b8899;font-size:10px;line-height:1.5}.practice-skill-card>svg{color:#9aa5b2}.catalog-heading{justify-content:space-between;align-items:center;gap:12px;margin:32px 0 18px;display:flex}.catalog-heading h2{font-size:20px;font-weight:800}.catalog-heading p{color:#8390a3;margin-top:5px;font-size:11px}.course-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.semester-switch{background:#f4f6f9;border-radius:14px;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin-bottom:18px;padding:5px;display:grid}.semester-switch button{color:#758296;background:0 0;border:0;border-radius:10px;justify-content:center;align-items:center;gap:9px;min-height:48px;font-weight:700;display:flex}.semester-switch button small{color:#98a3b0;font-size:10px;font-weight:600}.semester-switch button.is-active{color:var(--subject);background:#fff;box-shadow:0 2px 9px #2a3d5414}.semester-switch button.is-active small{color:var(--subject);opacity:.72}.course-semester-list{gap:30px;display:grid}.course-semester{min-width:0}.course-semester-heading{border-bottom:2px solid #dce3ea;justify-content:space-between;align-items:end;gap:16px;margin-bottom:18px;padding-bottom:12px;display:flex}.course-semester-heading span{color:#8b97a6;margin-bottom:4px;font-size:10px;font-weight:800;display:block}.course-semester-heading h3{font-size:22px;line-height:1.3}.course-semester-heading p{color:#8491a1;font-size:11px}.course-unit-list{gap:10px;display:grid}.course-unit{background:#fff;border:1px solid #e2e8ef;border-radius:14px;min-width:0;overflow:hidden}.course-unit-heading{cursor:pointer;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:14px;padding:14px 15px;list-style:none;display:grid}.course-unit-heading::-webkit-details-marker{display:none}.course-unit-heading>div{min-width:0}.course-unit-heading h3{font-size:15px;line-height:1.4}.course-unit-heading small{color:#8a96a6;margin-top:3px;font-size:10px;display:block}.course-unit-heading p{color:#748399;text-align:right;max-width:280px;font-size:11px;line-height:1.45}.course-unit-chevron{color:#9aa5b3;transition:transform .16s}.course-unit[open] .course-unit-chevron{transform:rotate(90deg)}.course-unit[open] .course-unit-heading{border-bottom:1px solid var(--subject-line);background:var(--subject-soft)}.course-unit-body{padding:14px}.course-card{text-align:left;min-height:112px;color:var(--ds-text);background:#fff;border:1px solid #e0e6ed;border-radius:14px;align-items:center;gap:13px;padding:17px 13px;transition:border-color .15s,transform .15s,box-shadow .15s;display:flex;box-shadow:0 3px 12px #2b3d540a}.course-card:hover{border-color:var(--subject-line);transform:translateY(-2px);box-shadow:0 8px 20px #2b3d5414}.course-artwork{width:65px;height:66px;color:var(--subject);background:var(--subject-soft);border:1px solid var(--subject-line);border-radius:14px;flex-direction:column;flex-shrink:0;justify-content:center;align-items:center;gap:4px;padding:7px;font-weight:800;display:flex}.course-artwork>span:first-child{text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:21px;line-height:1.05;overflow:hidden}.course-artwork>span+span{text-overflow:ellipsis;white-space:nowrap;opacity:.82;background:#ffffffb8;border-radius:999px;max-width:100%;padding:2px 6px;font-size:10px;line-height:1.2;overflow:hidden}.artwork-1,.artwork-2,.artwork-3{background:var(--subject-soft);color:var(--subject)}.course-artwork.artwork-latin>span:first-child{font-size:16px}.course-artwork.artwork-latin>span+span{font-size:9px}.course-card-copy{flex:1;min-width:0}.course-card-label{color:#7b8aa0;justify-content:space-between;align-items:center;margin-bottom:7px;font-size:10px;display:flex}.course-card-label svg{color:#21876a}.course-card-copy strong{font-size:15px;display:block}.course-card-copy small{color:#66768b;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-top:6px;font-size:12px;line-height:1.55;display:-webkit-box;overflow:hidden}.course-card-label{color:#66768b;font-size:11px}.lesson-meta,.catalog-heading p,.today-plan>p,.review-summary p,.growth-link small{color:#66768b;font-size:12px}.course-card>svg{color:#a0abba;flex-shrink:0;width:14px}.home-insights{border-left:1px solid #e8edf3;padding-left:27px}.insight-heading{justify-content:space-between;align-items:center;display:flex}.insight-heading h2{font-size:16px;font-weight:750}.insight-heading>svg{color:#db9f35}.goal-count{align-items:baseline;gap:9px;margin-top:22px;display:flex}.goal-count strong{color:#314564;font-size:38px;font-weight:800;line-height:1.2}.goal-count>span{color:#8290a2;font-size:13px}.today-plan progress{appearance:none;background:#edf1f6;border:0;border-radius:6px;width:100%;height:10px;margin:15px 0 11px;display:block;overflow:hidden}.today-plan progress::-webkit-progress-bar{background:#edf1f6}.today-plan progress::-webkit-progress-value{background:#f1b640}.today-plan progress::-moz-progress-bar{background:#f1b640}.today-plan>p{color:#7a879a;font-size:11px}.study-week{grid-template-columns:repeat(7,minmax(0,1fr));gap:5px;padding:25px 0 15px;display:grid}.study-week>div{justify-items:center;gap:10px;display:grid}.study-week small{color:#8792a3;font-size:10px}.study-week>div>span{background:#f0f3f7;border:1px solid #e6eaf0;border-radius:50%;place-items:center;width:24px;height:24px;display:grid}.study-week>div>span>span{background:#c9d0db;border-radius:50%;width:4px;height:4px}.study-week .today>span{background:#fff9e9;border:2px solid #efb94c}.study-week .studied>span{color:#238866;background:#e4f3ea}.streak-line{color:#7e8796;align-items:center;gap:7px;font-size:11px;display:flex}.streak-line>svg{color:#d87746}.streak-line strong{color:#33465f}.review-summary{border-top:1px solid #e6ebf1;margin-top:27px;padding-top:26px}.review-symbol{background:var(--subject-soft);width:43px;height:43px;color:var(--subject);border-radius:13px;place-items:center;margin-bottom:15px;display:grid}.review-summary h2{font-size:16px}.review-summary p{color:#7e899c;margin-top:7px;font-size:11px;line-height:1.8}.review-summary .button{width:100%;margin-top:17px;font-size:12px}.growth-link{text-align:left;background:0 0;border:0;border-top:1px solid #e6ebf1;align-items:center;gap:11px;width:100%;margin-top:24px;padding:24px 0 0;display:flex}.growth-star{color:#bc892b;background:#fff4d6;border-radius:12px;flex-shrink:0;place-items:center;width:37px;height:37px;display:grid}.growth-link strong{font-size:12px;display:block}.growth-link small{color:#8794a5;margin-top:5px;font-size:10px;display:block}.growth-link>svg{color:#98a4b4;flex-shrink:0;margin-left:auto}.learning-note{color:#97a1ad;align-items:flex-start;gap:7px;margin-top:31px;display:flex}.learning-note>svg{flex-shrink:0}.learning-note p{font-size:10px;line-height:1.7}.practice-screen{background:#fff}.confetti-layer{z-index:3000;pointer-events:none;width:100vw;height:100vh;position:fixed;inset:0}.practice-header{max-width:1040px;padding-top:26px}.practice-header .meter{background:#ebeff5;border:0;height:12px}.meter::-webkit-progress-value{background:var(--subject)}.practice-main{max-width:840px;margin-top:0;padding-top:6px}.practice-caption{color:#8290a1;margin-bottom:19px;font-size:12px}.learning-step-meta{color:#6e7e92;justify-content:center;align-items:center;gap:9px;min-height:28px;margin:0 auto 8px;font-size:12px;font-weight:700;display:flex}.learning-step-meta>span{color:var(--subject)}.learning-step-meta>i{background:#c5ced9;border-radius:999px;width:3px;height:3px}.learning-step-meta>strong{color:#748297;font-weight:700}.question h1{text-align:center;font-size:27px;font-weight:800}.question-task-semantic{background:var(--subject-soft);width:30px;height:30px;color:var(--subject);vertical-align:3px;border-radius:9px;place-items:center;margin-right:8px;font-size:16px;font-weight:850;line-height:1;display:inline-grid}.question-task-semantic.is-emoji{font-size:17px}.question-stage{justify-content:center;min-height:242px;margin:22px 0 24px}.question-stage.has-passage{align-items:stretch;min-height:0}.question-stage.no-stimulus{min-height:0;margin:10px 0 18px}.question-stage.has-text-stimulus{min-height:150px}.question-display{text-align:center;font-family:inherit}.learning-stimulus{flex-direction:column;align-items:center;display:flex}.reading-passage{text-align:left;background:#f7f9fc;border:1px solid #dfe6ef;border-radius:12px;max-width:680px;margin:0 auto 20px;padding:16px 18px 18px}.reading-passage-head{justify-content:space-between;align-items:center;gap:12px;min-height:44px;margin-bottom:8px;display:flex}.reading-passage-head>span{color:var(--subject);font-size:11px;font-weight:800}.reading-support-note{background:var(--subject-soft);color:#58697d;border-radius:9px;flex-wrap:wrap;align-items:center;gap:6px 8px;margin:0 0 10px;padding:8px 10px;font-size:11px;line-height:1.5;display:flex}.reading-support-note svg{color:var(--subject);flex:none}.reading-support-note span{font-weight:700}.reading-support-note strong{color:var(--subject);font-weight:800}.reading-keyword{background:color-mix(in srgb, var(--subject-soft) 72%, #fff2a8);color:inherit;-webkit-box-decoration-break:clone;box-decoration-break:clone;border-radius:4px;padding:0 2px}.reading-step-meta{justify-content:flex-start;width:min(100%,760px);margin:18px auto 7px}.reading-question-title{width:min(100%,760px);margin:0 auto;line-height:1.45;text-align:left!important;font-size:24px!important}.reading-play-button{border:1px solid var(--subject-line);background:var(--subject-soft);min-width:76px;min-height:44px;color:var(--subject);border-radius:10px;justify-content:center;align-items:center;gap:6px;font-size:12px;font-weight:800;display:inline-flex}.reading-play-button.is-speaking,.reading-option-audio.is-speaking{border-color:var(--subject);background:var(--subject);color:#fff}.reading-option-audio.is-loading{opacity:.62;animation:.9s ease-in-out infinite alternate reading-audio-pulse}@keyframes reading-audio-pulse{0%{transform:scale(.96)}to{transform:scale(1)}}.reading-passage p{color:#35465e;font-size:18px;line-height:1.9}.stimulus-label{color:#8390a1;margin-bottom:17px;font-size:11px;font-weight:500}.stimulus-word{color:#2d415d;overflow-wrap:anywhere;max-width:100%;min-height:104px;font-size:70px;font-weight:700;line-height:1.45}.compact-stimulus{min-height:auto;font-size:25px;line-height:1.4}.text-stimulus{place-items:center;max-width:720px;min-height:72px;margin-inline:auto;font-size:clamp(24px,3vw,34px);line-height:1.45;display:grid}.writing-grid{background:linear-gradient(90deg,#0000 49.5%,#e7e4df 49.5% 50.5%,#0000 50.5%),linear-gradient(#0000 49.5%,#e7e4df 49.5% 50.5%,#0000 50.5%);border:1.5px solid #ded9d4;place-items:center;width:118px;height:118px;font-family:Kaiti SC,KaiTi,serif;display:grid}.listen-control{background:var(--subject-soft);color:var(--subject);border:1px solid var(--subject-line);border-radius:7px;align-items:center;gap:9px;min-height:44px;margin-top:16px;padding:9px 16px;font-size:13px;font-weight:700;display:flex}.audio-bars{align-items:center;gap:3px;height:20px;margin-left:8px;display:flex}.audio-bars i{background:currentColor;border-radius:2px;width:3px;height:6px}.audio-bars i:nth-child(2n){height:12px}.audio-bars i:nth-child(3){height:19px}.listen-control.is-speaking .audio-bars i{animation:.65s ease-in-out infinite alternate speaking}.listen-control.is-speaking .audio-bars i:nth-child(2n){animation-delay:.2s}@keyframes speaking{to{transform:scaleY(.35)}}.speech-row{justify-content:center;margin-top:15px}.speech-row p{color:#718097;font-size:13px}.character-build{justify-content:center;align-items:center;gap:12px;display:flex}.character-piece{align-items:center;gap:12px;display:flex}.character-piece b,.assembled-character{color:#326dba;background:#edf5ff;border:1.5px solid #c8dded;border-radius:7px;place-items:center;width:94px;height:100px;font:58px Kaiti SC,KaiTi,serif;display:grid;box-shadow:0 4px #d6e3f2}.character-piece:nth-child(2) b{color:#c56b3c;background:#fff1e7;border-color:#efcfb9;box-shadow:0 4px #efdccc}.character-build>svg,.character-piece>svg{color:#96a1b1}.assembled-character{color:#99a6b7;box-shadow:none;background:#f4f6f8;border-style:dashed}.assembled-character.revealed{color:#24876a;background:#e9f6ee;border:1.5px solid #b5d9c7;animation:.25s ease-out reveal-character}@keyframes reveal-character{0%{opacity:.3;transform:scale(.88)}to{opacity:1;transform:scale(1)}}.answer-options{gap:15px}.subject-chinese .answer-option{padding-inline:18px;font-size:clamp(20px,3vw,34px);line-height:1.35}.token-task{gap:18px;margin-bottom:4px;display:grid}.token-slots,.token-bank{flex-wrap:wrap;justify-content:center;gap:11px;display:flex}.token-slots>button{color:#9aa5b4;background:#f7f9fb;border:1.5px dashed #c8d2df;border-radius:7px;min-width:72px;height:64px;padding:8px 13px;font-size:21px;font-weight:800}.token-slots>button.is-filled{border-style:solid;border-color:var(--subject-line);background:var(--subject-soft);color:var(--subject)}.token-slots>button:disabled.is-filled{opacity:1}.token-bank .button{min-width:78px;height:54px;font-size:20px;box-shadow:0 3px #dce3ec}.token-task-sequence .token-slots>button,.token-task-sequence .token-bank .button{min-width:min(190px,42vw);font-size:15px}.compact-token-task.token-task-sequence .token-slots>button,.compact-token-task.token-task-sequence .token-bank .button{width:auto;min-width:72px;font-size:24px}.reading-token-task .token-slots,.reading-token-task .token-bank{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;width:min(100%,760px);margin-inline:auto;display:grid}.reading-token-task .token-slots>button,.reading-token-task .token-bank .button{white-space:normal;overflow-wrap:anywhere;width:100%;min-width:0;height:auto;min-height:68px;padding:12px 14px;font-size:15px;line-height:1.45}.reading-token-choice{grid-template-columns:minmax(0,1fr) 44px;align-items:stretch;gap:7px;min-width:0;display:grid}.reading-token-choice .reading-option-audio{width:44px;min-height:68px}.answer-option{color:#344966;border:2px solid #dde4ed;border-radius:14px;height:102px;font-size:38px;box-shadow:0 4px #dce3ec}.answer-option .mantine-Button-label{font-size:inherit;overflow:visible}.answer-option.is-selected{color:#326ec5;background:#edf4ff;border-color:#4179d2;box-shadow:0 4px #4179d2}.answer-option.is-correct{color:#22734f;background:#ebf8ef;border-color:#4baf87;box-shadow:0 4px #4baf87}.answer-option.is-wrong{color:#a85c3d;background:#fff1e9;border-color:#d7896a;box-shadow:0 4px #d7896a}.answer-option.is-attempted-wrong{color:#9a664d;background:#fff7f2;border-color:#d9a589;box-shadow:0 4px #efd4c4}.answer-option.is-attempted-wrong[aria-disabled=true]{opacity:1}.option-retry{color:#a56b4d;font-size:10px;font-weight:800;position:absolute;top:10px;right:12px}.english-options:not(.text-options) .answer-option{font-size:24px}.answer-options:has(>.answer-option:nth-child(2):last-child){grid-template-columns:repeat(2,minmax(0,1fr));max-width:500px;margin-inline:auto}.answer-options:has(>.answer-option:nth-child(3):last-child){grid-template-columns:repeat(3,minmax(0,1fr));max-width:650px;margin-inline:auto}.reading-options{grid-template-columns:1fr;gap:10px;width:min(100%,760px);max-width:760px;margin-inline:auto}.answer-options.reading-options:has(>.answer-option:nth-child(2):last-child){grid-template-columns:1fr;gap:10px;width:min(100%,760px);max-width:760px;margin-inline:auto}.answer-options.reading-options:has(>.answer-option:nth-child(3):last-child){grid-template-columns:1fr;gap:10px;width:min(100%,760px);max-width:760px;margin-inline:auto}.reading-option-row{grid-template-columns:minmax(0,1fr) 48px;align-items:stretch;gap:8px;width:100%;display:grid}.reading-option-row .answer-option{width:100%}.reading-option-audio{border:1.5px solid var(--subject-line);background:var(--subject-soft);width:48px;min-height:64px;color:var(--subject);border-radius:12px;align-self:stretch;place-items:center;display:grid}.subject-chinese .reading-options .answer-option{text-align:left;border-width:1.5px;justify-content:flex-start;align-items:center;height:auto;min-height:64px;padding:13px 48px 13px 46px;font-size:18px;line-height:1.55;display:flex;box-shadow:0 3px #dce3ec}.reading-options .answer-option .mantine-Button-inner{justify-content:flex-start;align-items:center;width:100%;min-height:38px}.reading-options .answer-option .mantine-Button-label{white-space:normal;text-align:left;overflow-wrap:anywhere;justify-content:flex-start;align-items:center;width:100%;min-height:38px;display:flex;overflow:visible}.reading-options .answer-option .option-index{top:50%;left:15px;transform:translateY(-50%)}.reading-options .answer-option .option-check,.reading-options .answer-option .option-retry{top:50%;transform:translateY(-50%)}:is(.answer-options.text-options,.answer-options.text-options:has(>.answer-option:nth-child(2):last-child),.answer-options.text-options:has(>.answer-option:nth-child(3):last-child)){grid-template-columns:1fr;gap:10px;width:min(100%,680px);max-width:680px;margin-inline:auto}.text-options .answer-option{text-align:left;justify-content:flex-start;align-items:center;height:auto;min-height:62px;padding:12px 46px 12px 44px;font-size:18px;line-height:1.5;display:flex}.text-options .answer-option .mantine-Button-inner,.text-options .answer-option .mantine-Button-label{justify-content:flex-start;align-items:center;width:100%;min-height:36px;display:flex}.text-options .answer-option .mantine-Button-label{white-space:normal;text-align:left;overflow-wrap:anywhere}.text-options .answer-option .option-index,.text-options .answer-option .option-check,.text-options .answer-option .option-retry{top:50%;transform:translateY(-50%)}.question-stage.has-passage{margin-bottom:18px}.question-stage.has-passage .reading-passage{width:min(100%,760px);max-width:760px;margin-bottom:0}.question-stage.has-passage+.memory-cue{margin-top:0}.memory-cue{color:#42586f;background:#f7faf8;border-radius:12px;max-width:560px;margin:-6px auto 22px;padding:12px 16px}.memory-cue.is-retry{background:#fff8f2}.memory-cue.is-revealed{background:#f1f8f4}.memory-cue-main{align-items:center;gap:11px;display:flex}.memory-cue-main>svg{color:var(--subject);flex:none}.memory-cue-main span{color:#8a96a5;margin-bottom:2px;font-size:10px;display:block}.memory-cue-main strong{color:var(--subject);margin-bottom:2px;font-size:16px;display:block}.memory-cue-main p{color:#6f7d8f;font-size:12px;line-height:1.55}.memory-cue-answer{border-top:1px solid #dce9e2;align-items:center;gap:9px;margin-top:10px;padding-top:10px;display:flex}.memory-cue-answer>svg{color:#2d8a66}.memory-cue-answer strong{color:#236e52;font-size:18px}.memory-cue-answer span{color:#667d72;margin-left:auto;font-size:11px}.concept-reveal{background:var(--subject-soft);border-radius:7px;grid-template-columns:auto auto 1fr;align-items:center;gap:14px;margin-bottom:22px;padding:13px 17px;display:grid}.concept-reveal>span{color:#70857c;font-size:11px}.concept-reveal strong{color:var(--subject);font-size:25px}.concept-reveal p{color:#526c64;text-align:left;font-size:12px;line-height:1.7}.practice-tools{margin-top:23px}.practice-tools .button{font-size:12px}.answer-footer{border-color:#e4e9ef;padding:20px 30px}.answer-footer-inner{max-width:900px}.primary-action{background:#2c6dcf;border-radius:7px;height:48px;box-shadow:0 4px #1853ad}.quiet-feedback{color:#7d8ca2}.feedback h2{font-size:18px}.feedback p{font-size:13px}.correct-footer{color:#227956;background:#e9f7ef;border-color:#c7e5d4}.wrong-footer{color:#a65f37;background:#fff2e9;border-color:#f0d7c7}.retry-footer{color:#875d3e;background:#fffaf4;border-color:#ead7c7}.retry-footer .retry-icon{color:#9b6a49;background:#f4e5d8}.number-pad .button{height:45px;font-size:23px;box-shadow:0 3px #e1e6ef}.math-display .speech-row{margin-top:5px}.subject-math .question-stage{min-height:172px}.hint-box{color:#856221}.method-switch-card{color:#43556d;background:#f7faff;border:1px solid #d9e5f5;border-radius:14px;max-width:600px;margin:16px auto 6px;padding:15px 17px}.method-switch-title{color:var(--subject);align-items:center;gap:8px;margin-bottom:7px;font-size:12px;font-weight:800;display:flex}.method-switch-title strong{background:var(--subject-soft);color:var(--subject);border-radius:999px;margin-left:auto;padding:3px 8px;font-size:11px}.method-switch-card>p{color:#66778c;margin:0;font-size:13px;line-height:1.65}.method-switch-steps{color:#344d6a;gap:4px;margin-top:10px;font-size:13px;font-weight:700;display:grid}.method-switch-steps span{background:#fff;border-radius:8px;align-items:center;min-height:28px;padding:4px 9px;display:flex}.method-retry-button{margin-top:12px}.diagnostic-card{background:#f8fbff;border:1px solid #d7e3f0;border-radius:14px;width:min(100%,600px);margin:16px auto 4px;padding:16px}.diagnostic-card-head{justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:12px;display:flex}.diagnostic-card-head span{color:#8090a4;font-size:11px;font-weight:700}.diagnostic-card-head strong{color:var(--subject);font-size:13px}.diagnostic-card>p,.diagnostic-decision>p{color:#50627a;margin:0;font-size:14px;line-height:1.7}.diagnostic-card b{color:#263b55}.diagnostic-options{gap:8px;margin-top:12px;display:flex}.diagnostic-options button{min-width:72px;min-height:44px}.text-diagnostic-options{flex-wrap:wrap}.text-diagnostic-options button{flex:150px}.diagnostic-decision>span{color:#8090a4;margin-bottom:4px;font-size:11px;font-weight:700;display:block}.diagnostic-decision h3{color:#263b55;margin:0 0 6px;font-size:18px}.diagnostic-support-steps{gap:5px;margin-top:11px;display:grid}.diagnostic-support-steps span{color:#344d6a;background:#fff;border-radius:8px;align-items:center;min-height:32px;padding:5px 9px;font-size:13px;font-weight:700;display:flex}.diagnostic-decision small{color:#718197;margin-top:10px;line-height:1.55;display:block}.result-screen{max-width:760px;min-height:100dvh;margin:0 auto;padding:28px 35px 50px}.result-topline{color:#45617e;align-items:center;gap:8px;width:100%;margin-bottom:45px;font-size:14px;display:flex}.result-topline>span:last-child{color:#8a98a9;margin-left:auto;font-size:12px}.result-medal{background:var(--subject-soft);border:2px solid var(--subject-line);box-shadow:0 6px 0 color-mix(in srgb, var(--subject-line) 78%, white);color:var(--subject);margin-bottom:27px}.result-screen>h1{color:#2b405a;font-size:31px}.result-screen>.eyebrow{color:var(--subject)}.result-screen>p{color:#7b8a9e;font-size:14px}.result-stats{border-block:1px solid #e2e8ef;border-radius:0;gap:0;width:100%;margin:8px 0 28px;padding:22px 0}.result-stats>div{box-shadow:none;background:0 0;border:0;border-radius:0;padding:5px 10px}.result-stats>div+div{border-left:1px solid #e2e8ef}.result-stats>div strong{color:#345376}.result-stats>div>svg{color:var(--subject)}.result-knowledge{text-align:left;width:100%;margin:28px 0 18px}.result-knowledge h2{margin-bottom:14px;font-size:15px}.result-knowledge>div{flex-wrap:wrap;gap:9px;display:flex}.result-knowledge>div>span{background:var(--subject-soft);max-width:100%;color:var(--subject);overflow-wrap:anywhere;border-radius:999px;align-items:center;gap:8px;padding:9px 12px;font-size:15px;line-height:1.45;display:inline-flex}.result-knowledge>div>.knowledge-review{color:#a47030;background:#fff3e6}.result-review{background:#fff9ed;border-color:#efdfbb;width:100%;padding:19px}.result-review h2{font-size:15px}.result-review>div{justify-content:flex-start}.result-review>div>span{overflow-wrap:anywhere;max-width:100%;line-height:1.5}.result-review small{color:#97783f}.result-actions{margin-top:12px}.saved-note{color:#71897b}.workbook{max-width:1080px;margin-inline:auto}.workbook-heading{margin-bottom:20px}.workbook .workbook-heading h1{color:var(--ds-text);font-size:28px}.workbook .subject-tabs{margin-bottom:14px}.workbook-mode-tabs{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-bottom:14px;display:grid}.workbook-mode-tabs button{border:1px solid var(--ds-border);min-width:0;min-height:66px;color:var(--ds-text-muted);text-align:left;background:#fff;border-radius:12px;padding:11px 12px}.workbook-mode-tabs button strong,.workbook-mode-tabs button span{display:block}.workbook-mode-tabs button strong{color:var(--ds-text);font-size:14px}.workbook-mode-tabs button span{margin-top:3px;font-size:11px;line-height:1.35}.workbook-mode-tabs button.is-active{background:var(--ds-primary-soft);border-color:#b8cff5}.workbook-mode-tabs button.is-active strong{color:var(--ds-primary)}.workbook-semester-tabs{align-items:center;gap:8px;margin-bottom:16px;display:flex}.workbook-semester-tabs button{border:1px solid var(--ds-border);color:var(--ds-text-muted);background:#fff;border-radius:999px;padding:8px 14px;font-size:13px}.workbook-semester-tabs button.is-active{border-color:var(--ds-primary);background:var(--ds-primary);color:#fff}.workbook-semester-tabs>span{color:var(--ds-text-muted);margin-left:4px;font-size:12px}.workbook-review-panel{background:#f7faff;border:1px solid #dbe7f7;border-radius:16px;justify-content:space-between;align-items:center;gap:18px;padding:24px;display:flex}.workbook-review-summary{align-items:flex-start;gap:14px;display:flex}.workbook-review-icon{background:var(--ds-primary-soft);width:42px;height:42px;color:var(--ds-primary);border-radius:12px;flex:none;place-items:center;display:grid}.workbook-review-summary>div>span{color:var(--ds-primary);font-size:12px;font-weight:700}.workbook-review-summary h2{margin-top:3px;font-size:19px}.workbook-review-summary p{color:var(--ds-text-muted);margin-top:6px;font-size:13px}.workbook-free-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.workbook-free-grid article{border:1px solid var(--ds-border);background:#fff;border-radius:14px;min-width:0;padding:20px}.workbook-free-grid article>span{background:var(--ds-primary-soft);width:38px;height:38px;color:var(--ds-primary);border-radius:11px;place-items:center;display:grid}.workbook-free-grid h2{margin-top:14px;font-size:17px}.workbook-free-grid p{min-height:60px;color:var(--ds-text-muted);margin-top:6px;font-size:13px;line-height:1.55}.workbook-free-grid .button{width:100%;margin-top:14px}.workbook-skill-tabs{background:#f3f6f8;border-radius:10px;gap:7px;margin-bottom:18px;padding:5px;display:flex}.workbook-skill-tabs button{color:#738095;background:0 0;border:0;border-radius:7px;flex:1;justify-content:center;align-items:center;gap:7px;min-width:0;min-height:42px;padding:7px 10px;font-size:12px;display:flex}.workbook-skill-tabs button>span{color:#8d99a8;font-size:13px;font-weight:800}.workbook-skill-tabs button>strong{font-weight:700}.workbook-skill-tabs button.is-active{color:var(--ds-primary);background:#fff;box-shadow:0 1px 4px #23364b17}.workbook-skill-tabs button.is-active>span{color:var(--ds-primary)}.workbook-review{background:var(--ds-primary-soft);border:1px solid #dbe7f7;border-radius:14px;align-items:center;gap:12px;margin-bottom:20px;padding:12px 16px;display:flex}.workbook-review>svg{color:var(--ds-primary);flex-shrink:0}.workbook-review h2{font-size:14px;font-weight:600}.workbook-review .button{flex-shrink:0;margin-left:auto}.workbook-scene{background:#eef6fa;border:1px solid #e2e8ef;border-radius:14px;height:152px;overflow:hidden}.workbook-scene img{object-fit:cover;object-position:50% 42%;width:100%;height:100%;display:block}.scene-pinyin img{object-position:50% 37%}.scene-math img{object-position:50% 34%}.scene-english img{object-position:50% 40%}.workbook-toolbar{justify-content:space-between;align-items:center;gap:16px;margin:24px 0 16px;display:flex}.workbook-toolbar h2{font-size:20px;line-height:1.4}.workbook-toolbar h2>span{color:var(--ds-text-muted);margin-left:8px;font-size:14px;font-weight:400}.workbook-toolbar-copy>p{color:var(--ds-text-muted);margin-top:4px;font-size:13px}.workbook-search-toggle{width:44px;height:44px}.workbook-search{margin-bottom:16px}.workbook .mantine-Input-input{border-color:var(--ds-border);min-height:44px;font-size:14px}.workbook .mantine-Input-input::placeholder{color:var(--ds-text-muted)}.workbook .mantine-Input-input:focus{border-color:var(--ds-primary)}.workbook-course-grid{grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:1fr;gap:20px;display:grid}.workbook-course-card{border:1px solid var(--ds-border);background:#fff;border-radius:14px;flex-direction:column;min-width:0;display:flex;overflow:hidden;box-shadow:0 4px 14px #2b3d540a}.workbook-course-card:focus-within{border-color:var(--ds-primary)}.course-cover{height:124px;color:var(--subject);background:var(--subject-soft);-webkit-user-select:none;user-select:none;flex-shrink:0;place-items:center;padding:16px;display:grid}.cover-nature{color:#326b94;background:#eaf5fc}.cover-body{color:#b95838;background:#fff0e9}.cover-space{color:#5269a2;background:#eef1fc}.cover-family{color:#8d6b1f;background:#fff7dc}.cover-nature-symbols,.cover-animals,.cover-colors{justify-content:center;gap:24px;display:flex}.cover-nature-symbols>span,.cover-animals>span,.cover-colors>span{flex-direction:column;align-items:center;gap:8px;display:flex}.cover-nature-symbols b{font-size:20px;font-weight:500}.cover-body-symbols{align-items:center;gap:24px;font-size:25px;display:flex}.cover-directions{grid-template-rows:repeat(3,28px);grid-template-columns:repeat(3,28px);place-items:center;font-size:23px;line-height:1;display:grid}.cover-directions span:first-child{grid-column:2}.cover-directions span:nth-child(2){grid-area:2/1}.cover-directions span:nth-child(3){grid-area:2/3}.cover-directions span:last-child{grid-area:3/2}.cover-composition{align-items:center;gap:10px;font-size:34px;display:flex}.cover-composition small{font-size:18px}.cover-characters{flex-wrap:wrap;justify-content:center;gap:16px;font-size:30px;font-weight:600;display:flex}.cover-sounds{font-size:26px}.cover-characters span:nth-child(2n){color:#326b94}.cover-numbers .cover-characters{font-size:23px}.cover-equation{white-space:nowrap;font-size:30px;font-weight:600}.cover-colors{color:#40484e;gap:18px;font-size:14px}.cover-colors i{border-radius:50%;width:32px;height:32px;display:block}.swatch-red{background:#df514e}.swatch-blue{background:#3478c9}.swatch-green{background:#278965}.cover-animals{gap:36px;font-size:16px}.workbook-card-body{flex-direction:column;flex:1;min-width:0;padding:18px;display:flex}.workbook-card-context{color:var(--ds-primary);margin-bottom:5px;font-size:11px;font-weight:700;line-height:1.4;display:block}.workbook-card-body h3{font-size:17px;font-weight:600;line-height:1.5}.workbook-card-body>p{min-height:42px;color:var(--ds-text-muted);margin-top:6px;font-size:14px;line-height:1.5}.workbook-card-status{min-height:24px;color:var(--ds-text-muted);align-items:center;gap:5px;font-size:12px;display:flex}.workbook-card-status.is-complete{color:#267658}.workbook-card-meta{color:var(--ds-text-muted);margin-top:auto;font-size:12px}.workbook-card-meta:not(:empty){padding-top:8px}.workbook-card-meta .mantine-InputWrapper-label{color:var(--ds-text-muted);margin-bottom:4px;font-size:12px}.workbook-difficulty-menu{max-width:calc(100vw - 32px)}.workbook-difficulty-option{white-space:normal;border-radius:6px;min-height:44px;margin:2px 4px;padding:10px 12px;font-size:14px;line-height:1.4}.workbook-difficulty-option[data-checked=true]{background:var(--ds-primary-soft);color:var(--ds-primary);font-weight:600}.workbook-difficulty-option[data-checked=true]:hover,.workbook-difficulty-option[data-combobox-active]{background:#dce8ff}.workbook-card-body>.button{width:100%;color:var(--ds-primary);margin-top:16px}@media (width<=1000px){.workbook-course-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=600px){.subject-tabs .mantine-Tabs-tab{flex:none;min-height:48px;padding-inline:15px;font-size:14px}.course-unit-heading{grid-template-columns:minmax(0,1fr) auto;gap:8px 12px;padding:13px 14px}.course-unit-heading p{text-align:left;grid-column:1/2;max-width:none}.course-unit-heading .course-unit-chevron{grid-area:1/2/span 2}.course-unit-body{padding:12px}.reading-passage{padding:15px 16px}.reading-passage p{font-size:16px;line-height:1.8}.compact-stimulus{font-size:22px}.token-slots>button{min-width:58px;height:57px}.token-bank .button{min-width:68px}.token-task-sequence .token-slots>button,.token-task-sequence .token-bank .button{white-space:normal;min-width:min(160px,44vw);height:auto;min-height:54px;padding:10px}.compact-token-task.token-task-sequence .token-slots>button,.compact-token-task.token-task-sequence .token-bank .button{min-width:62px;font-size:22px}.reading-token-task .token-slots,.reading-token-task .token-bank{grid-template-columns:1fr}.reading-token-task .token-slots>button,.reading-token-task .token-bank .button{min-width:0;min-height:56px}.reading-token-choice .reading-option-audio{min-height:56px}.workbook-heading{margin-bottom:16px}.workbook .subject-tabs{margin-bottom:12px}.workbook-mode-tabs{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin-bottom:12px}.workbook-mode-tabs button{min-height:58px;padding:9px 10px}.workbook-mode-tabs button span{display:none}.workbook-semester-tabs{flex-wrap:wrap;gap:6px;margin-bottom:12px}.workbook-semester-tabs>span{width:100%;margin-left:0}.workbook-review-panel{flex-direction:column;align-items:stretch;padding:16px}.workbook-review-panel .button{width:100%}.workbook-free-grid{grid-template-columns:1fr;gap:10px}.workbook-free-grid p{min-height:0}.workbook-skill-tabs{justify-content:stretch;gap:4px;margin-bottom:14px;padding:4px;overflow:hidden}.workbook-skill-tabs button{flex:1 1 0;gap:4px;min-width:0;min-height:44px;padding-inline:5px;font-size:11px}.workbook-skill-tabs button>span{font-size:12px}.workbook-scene{height:120px}.workbook-toolbar{margin:20px 0 12px}.workbook-toolbar h2{font-size:18px}.workbook-course-grid{gap:12px}.course-cover{height:104px;padding:10px}.cover-nature-symbols{grid-template-columns:repeat(2,1fr);gap:10px 16px;display:grid}.cover-nature-symbols>span{flex-direction:row;gap:4px}.cover-nature-symbols svg{width:19px;height:19px}.cover-nature-symbols b{font-size:17px}.cover-body-symbols{flex-direction:column;gap:6px;font-size:18px}.cover-body-symbols svg{width:36px;height:36px}.cover-directions{grid-template-rows:repeat(3,24px);grid-template-columns:repeat(3,24px);font-size:20px}.cover-composition{gap:4px;font-size:24px}.cover-composition small{font-size:14px}.cover-characters{gap:8px 14px;font-size:24px}.cover-sounds{text-align:center;grid-template-columns:repeat(2,1fr);font-size:22px;display:grid}.cover-numbers .cover-characters{gap:6px 12px;font-size:18px}.cover-equation{font-size:19px}.cover-colors{gap:8px;font-size:12px}.cover-colors i{width:24px;height:24px}.cover-animals{gap:20px;font-size:14px}.cover-animals svg{width:32px;height:32px}.workbook-card-body{padding:12px}.workbook-card-body h3{min-height:45px;font-size:15px}.workbook-card-body>p{min-height:36px;margin-top:4px;font-size:12px}.workbook-card-body>.button{margin-top:12px;padding-inline:8px;font-size:13px}.workbook-card-meta .mantine-Input-input{padding-left:8px;font-size:12px}.workbook-review{flex-wrap:wrap;gap:8px;margin-bottom:16px;padding:12px}.workbook-review .button{width:100%}}.setting-row small,.storage-note{color:#74839a;font-size:12px}.page-heading>p{color:#76869c;font-size:14px}.page-heading h1{color:#283e5b}.review-banner{background:#edf3fc;border-color:#d5e1f3}.settings-form h2{color:#415676}.setting-row strong{font-size:14px}.setting-row input,.setting-row select{border-radius:10px;min-height:44px;font-size:14px}.settings-select{flex-shrink:0;width:125px}.reading-voice-setting{flex-shrink:0;align-items:center;gap:8px;display:flex}.reading-voice-preview{min-width:78px;min-height:44px;padding-inline:12px}.reading-voice-preview svg{flex-shrink:0}.history-glyph{border-radius:12px}.history-row strong{font-size:14px}.history-row small{color:#7b899d;font-size:12px}.achievement{background:#fff;border-radius:14px}.achievement p{color:#7b889b;font-size:12px}.stat-item>span{color:#73829a}.stat-item strong{color:#355174}.bar-track,.bar-track div{border-radius:9px 9px 3px 3px}.parent-note img{border-radius:18px}@media (width>=1500px){.page-content{padding-top:42px}.featured-visual{min-height:325px}.home-columns{grid-template-columns:minmax(0,1fr) 270px;gap:36px}}@media (width<=1180px){.sidebar{width:180px;padding-inline:15px}.workspace{margin-left:180px}.sidebar .brand{font-size:20px}.brand-icon{width:34px}.page-content{padding:28px}.topbar{padding-inline:28px}.home-columns{grid-template-columns:minmax(0,1fr) 215px;gap:23px}.home-insights{padding-left:21px}.featured-lesson{grid-template-columns:1fr}.featured-visual{height:210px;min-height:0}.featured-visual>img{object-fit:cover}.featured-body{padding:22px}.featured-body h2{font-size:24px}.course-cta{min-width:122px;padding-inline:14px}.course-artwork{width:51px;height:58px}.course-artwork>span:first-child{font-size:18px}.course-card{gap:10px;padding:14px 11px}.course-card>svg{display:none}.course-card-copy strong{font-size:14px}}@media (width<=960px){.sidebar{width:82px;padding-inline:10px}.workspace{margin-left:82px}.sidebar .brand{justify-content:center}.sidebar .brand>span:last-child,.sidebar-bottom{display:none}.nav-link{height:66px;padding:8px 0;font-size:10px}.nav-link .mantine-Button-inner{flex-direction:column;justify-content:center;gap:5px}.nav-link .mantine-Button-label{flex-direction:column;gap:5px}.home-columns{grid-template-columns:minmax(0,1fr)}.home-insights{border:0;border-top:1px solid #e5eaf1;grid-template-columns:1fr 1fr;gap:24px;padding:24px 0 0;display:grid}.review-summary{border:0;border-left:1px solid #e5eaf1;margin:0;padding:0 0 0 24px}.growth-link{margin:0;padding-top:18px}.learning-note{margin-top:17px}.featured-visual{height:245px}.course-card>svg{display:block}.course-card{min-height:104px;padding:15px}}@media (width<=600px){.sidebar{width:100%;height:calc(70px + env(safe-area-inset-bottom));padding:0 8px env(safe-area-inset-bottom);background:#fffffff5;border-top:1px solid #e1e7ef;inset:auto 0 0}.sidebar nav{gap:8px;margin:0}.sidebar>.brand{display:none}.nav-link{border:0;border-radius:0;height:69px;font-size:11px}.nav-link.active{background:0 0;border:0}.nav-link.active:before{background:#286bd1}.workspace{margin-left:0;padding-bottom:70px}.page-content{padding:25px 18px 28px}.topbar{height:67px;padding-inline:18px}.topbar-stats{gap:10px}.topbar-stats .icon-button{width:36px;min-width:36px}.mobile-brand .brand{font-size:19px}.learn-greeting{gap:10px;margin-bottom:21px}.learn-greeting h1{font-size:25px}.learn-greeting p{font-size:12px}.learning-level{gap:4px;font-size:10px}.featured-visual{height:200px}.featured-body{grid-template-columns:minmax(0,1fr);padding:21px}.featured-body h2{font-size:25px}.featured-body>p{font-size:12px}.featured-kicker{font-size:10px}.course-cta{grid-area:auto/1;width:100%;margin-top:20px}.lesson-meta{margin-top:14px}.visual-label{font-size:10px;top:14px;left:15px}.chinese-practice-entry{margin-top:24px;padding-top:18px}.practice-entry-heading{align-items:center}.practice-entry-heading h2{font-size:16px}.practice-entry-heading .button{padding-inline:0;font-size:11px}.practice-skill-grid{grid-template-columns:1fr;gap:8px}.practice-skill-card{min-height:70px;padding:11px 12px}.catalog-heading{margin-top:29px}.catalog-heading h2{font-size:19px}.catalog-heading .button{padding-inline:0;font-size:12px}.course-grid{grid-template-columns:1fr;gap:12px}.course-card{gap:16px;min-height:102px;padding:17px}.course-artwork{width:62px;height:61px}.course-artwork>span:first-child{font-size:21px}.course-card-copy strong{font-size:16px}.course-card-copy small{font-size:11px}.course-card>svg{width:18px}.home-insights{grid-template-columns:1fr;gap:0;padding-top:22px}.review-summary{border-top:1px solid #e5eaf1;border-left:0;margin-top:22px;padding:22px 0 0}.review-summary h2,.insight-heading h2{font-size:16px}.insight-heading>svg{width:17px}.study-week{gap:5px}.study-week>div>span{width:28px;height:28px}.study-week small{font-size:10px}.review-summary .button{min-height:44px;padding-inline:12px;font-size:12px}.growth-link{grid-column:1/-1}.learning-note{grid-column:1/-1;margin:0}.lesson-art{gap:9px;padding:40px 26px 15px}.lesson-art>span{padding:7px 13px;font-size:27px}.practice-header{gap:12px;padding:16px 17px}.practice-header .meter{height:10px}.question-count{font-size:16px}.practice-main{padding:6px 20px 22px}.practice-caption{margin-bottom:20px;font-size:10px}.question h1{font-size:22px}.question-stage{min-height:221px;margin:19px 0 22px}.stimulus-word{font-size:62px}.stimulus-word.text-stimulus{min-height:64px;font-size:22px;line-height:1.45}.question-stage.has-text-stimulus{min-height:132px}.stimulus-word.compact-stimulus{min-height:auto;font-size:22px;line-height:1.4}.writing-grid{width:100px;height:100px}.answer-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.answer-options.reading-options{grid-template-columns:1fr;gap:9px}.reading-passage{padding:14px 14px 16px}.reading-passage-head{align-items:center}.reading-step-meta{margin-top:16px}.reading-question-title{line-height:1.5;font-size:20px!important}.reading-play-button{min-width:86px}.reading-option-row{grid-template-columns:minmax(0,1fr) 44px;gap:7px}.reading-option-audio{width:44px;min-height:58px}.answer-option{height:82px;font-size:32px}.subject-chinese .reading-options .answer-option,.text-options .answer-option{height:auto;min-height:58px;padding:12px 42px;font-size:16px;line-height:1.5}.reading-options .answer-option .option-index{left:13px}.english-options:not(.text-options) .answer-option{font-size:23px}.pinyin-options .answer-option{font-size:28px}.character-build,.character-piece{gap:7px}.character-build>svg,.character-piece>svg{flex-shrink:0;width:17px}.character-piece b,.assembled-character{width:65px;height:76px;font-size:43px}.memory-cue{margin-top:-8px;padding:11px 13px}.memory-cue-main strong{font-size:15px}.memory-cue-main p{font-size:11px}.memory-cue-answer{flex-wrap:wrap;align-items:flex-start}.memory-cue-answer span{width:100%;margin-left:27px}.concept-reveal{grid-template-columns:auto 1fr;gap:6px 12px;padding:13px}.concept-reveal p{grid-column:1/-1}.concept-reveal strong{font-size:23px}.answer-footer{padding:15px 20px max(17px, env(safe-area-inset-bottom));position:static}.answer-footer-inner{flex-direction:column;align-items:stretch;gap:14px}.answer-footer .primary-action{width:100%;min-height:48px}.feedback-icon{width:37px;height:37px}.feedback h2{font-size:17px}.feedback p,.feedback-explanation{font-size:12px}.quiet-feedback{text-align:center;width:100%;font-size:12px}.practice-tools{gap:5px;margin-top:22px}.practice-tools .button{padding-inline:8px;font-size:11px}.speech-row p{font-size:12px}.subject-math .question-stage{min-height:165px}.number-pad .button{height:44px}.result-screen{padding:22px 20px 35px}.result-topline{margin-bottom:35px}.result-screen>h1{font-size:25px}.result-screen>p{font-size:12px}.result-stats{grid-template-columns:repeat(2,minmax(0,1fr));padding:0}.result-stats>div{padding-block:16px}.result-stats>div+div{border-left:0}.result-stats>div:nth-child(2n){border-left:1px solid #e2e8ef}.result-stats>div:nth-child(n+3){border-top:1px solid #e2e8ef}.result-stats>div strong{font-size:29px}.result-stats>div>span{font-size:11px}.result-knowledge h2{font-size:14px}.result-actions,.result-actions .button{width:100%}.setting-row{gap:15px}.setting-row small{font-size:11px}.reading-voice-setting{gap:6px}.reading-voice-setting .settings-select{width:112px}.reading-voice-preview{min-width:72px;padding-inline:10px}.history-row{gap:10px}.history-row>span:nth-last-child(2){font-size:11px}}@media (width<=360px){.learning-level,.topbar-stats .star-stat{display:none}.home-insights{grid-template-columns:1fr}.review-summary{border:0;border-top:1px solid #e5eaf1;padding:21px 0 0}.study-week>div>span{width:25px;height:25px}.character-piece b,.assembled-character{width:57px;height:70px;font-size:38px}.character-build,.character-piece,.lesson-art{gap:6px}.lesson-art>span{padding:10px;font-size:24px}}@media (prefers-reduced-motion:reduce){.assembled-character.revealed,.listen-control.is-speaking .audio-bars i{animation:none}.course-card{transition:none}}html[data-reduce-motion=true] .assembled-character.revealed,html[data-reduce-motion=true] .audio-bars i{animation:none}.v3-shell{--v3-accent:#2f6f61;--v3-accent-soft:#eef6f2;--v3-accent-line:#cfe1d9}.v3-route-math{--v3-accent:#326ecb;--v3-accent-soft:#edf3ff;--v3-accent-line:#c8d8f2}.v3-route-english{--v3-accent:#9d701d;--v3-accent-soft:#fff8e1;--v3-accent-line:#eadca9}.v3-sidebar{background:#f7f8fa;flex-direction:column;width:196px;padding:28px 18px 18px;display:flex}.v3-sidebar .brand{padding-inline:4px}.v3-sidebar .v3-subject-nav{flex-direction:column;gap:6px;margin-top:42px;display:flex}.v3-subject-link,.v3-settings-link{border-radius:10px;height:48px}.v3-subject-link.active,.v3-settings-link.active{color:var(--v3-accent);border-color:var(--v3-accent-line);background:var(--v3-accent-soft)}.v3-sidebar-bottom{border-top:1px solid #e5e9ef;margin-top:auto;padding-top:18px}.v3-settings-link{width:100%}.v3-workspace{margin-left:196px}.v3-topbar{height:66px;padding-inline:34px}.v3-topbar-title{color:#6f7b8d;font-size:13px;font-weight:600}.v3-topbar-actions{margin-left:auto}.v3-page-content{max-width:1180px;padding:42px 48px 64px}.subject-home-v3{max-width:980px;margin-inline:auto}.v3-page-heading{justify-content:space-between;align-items:flex-end;gap:28px;margin-bottom:30px;display:flex}.v3-page-heading h1{color:var(--ds-text);letter-spacing:-.03em;font-size:clamp(30px,4vw,42px);line-height:1.08}.v3-page-heading p{max-width:620px;color:var(--ds-text-muted);margin-top:9px;font-size:14px;line-height:1.65}.v3-semester-switch{background:#f5f7f9;border:1px solid #e2e7ee;border-radius:11px;flex:none;gap:3px;padding:3px;display:flex}.v3-semester-switch button{color:#6c7685;background:0 0;border:0;border-radius:8px;min-width:64px;min-height:36px;padding:6px 14px;font-size:13px;font-weight:700}.v3-semester-switch button.is-active{color:var(--v3-accent);background:#fff;box-shadow:0 1px 4px #2631421a}.v3-featured-course,.v3-math-focus{background:var(--v3-accent-soft);border-radius:18px;grid-template-columns:minmax(0,1.15fr) minmax(260px,.85fr);min-height:248px;margin-bottom:44px;display:grid;overflow:hidden}.v3-featured-copy,.v3-math-focus-copy{flex-direction:column;justify-content:center;align-items:flex-start;min-width:0;padding:34px 38px;display:flex}.v3-featured-copy>span,.v3-math-focus-copy>span{color:var(--v3-accent);font-size:12px;font-weight:800}.v3-featured-semantic{background:#ffffffc2;border:1px solid #ffffffb8;border-radius:14px;place-items:center;width:50px;height:50px;margin-top:18px;line-height:1;color:var(--v3-accent)!important;font-size:25px!important;font-weight:850!important;display:grid!important}.v3-featured-semantic.is-emoji{font-size:27px!important}.v3-featured-copy h2,.v3-math-focus-copy h2{color:#26303d;letter-spacing:-.025em;margin-top:10px;font-size:clamp(25px,3vw,34px);line-height:1.2}.v3-featured-copy>p,.v3-math-focus-copy>p{color:#627080;max-width:520px;margin-top:8px;font-size:14px;line-height:1.6}.v3-featured-meta{color:#667487;flex-wrap:wrap;gap:8px 16px;min-height:22px;margin-top:16px;font-size:12px;display:flex}.v3-featured-meta span{align-items:center;gap:5px;display:inline-flex}.v3-primary-action{background:var(--v3-accent);min-width:112px;margin-top:22px}.v3-primary-action:hover{background:var(--v3-accent);filter:brightness(.94)}.v3-featured-art,.v3-math-focus-art{min-height:248px;position:relative;overflow:hidden}.v3-featured-art img,.v3-math-focus-art img{object-fit:cover;width:100%;height:100%}.v3-featured-art:after,.v3-math-focus-art:after{content:"";background:linear-gradient(90deg, var(--v3-accent-soft) 0, transparent 34%);pointer-events:none;position:absolute;inset:0}.v3-featured-art>span{z-index:1;color:#344150;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffffe0;border-radius:8px;max-width:calc(100% - 44px);padding:7px 10px;font-size:12px;font-weight:800;position:absolute;bottom:18px;right:22px}.v3-section-heading{justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:14px;display:flex}.v3-section-heading h2{color:#2c3440;letter-spacing:-.015em;font-size:21px}.v3-section-heading p{color:var(--ds-text-muted);margin-top:4px;font-size:12px;line-height:1.5}.v3-unit-list{gap:12px;display:grid}.v3-ability-list{border-top:1px solid #e6eaf0}.v3-unit{background:#f6f7f9;border:1px solid #eceff3;border-radius:16px;overflow:hidden}.v3-unit-heading{width:100%;min-height:78px;color:inherit;text-align:left;background:0 0;border:0;justify-content:space-between;align-items:center;gap:24px;padding:17px 20px;display:flex}.v3-unit-heading:hover{background:#f1f3f6}.v3-unit-heading>span:first-child{min-width:0}.v3-unit-heading-main{align-items:center;gap:12px;display:flex}.v3-unit-heading-main>span:last-child{min-width:0}.v3-unit-semantic{width:34px;height:34px;color:var(--v3-accent);background:#fff;border-radius:10px;flex:none;place-items:center;font-size:18px;font-weight:850;line-height:1;display:grid}.v3-unit-semantic.is-emoji{font-size:19px}.v3-unit-heading strong,.v3-unit-heading small{display:block}.v3-unit-heading strong{color:#2e3744;font-size:16px}.v3-unit-heading small{color:#758092;text-overflow:ellipsis;white-space:nowrap;margin-top:4px;font-size:12px;line-height:1.45;overflow:hidden}.v3-unit-count{color:#8a94a3;flex:none;align-items:center;gap:8px;font-size:12px;display:inline-flex}.v3-unit.is-open .v3-unit-count svg{transform:rotate(90deg)}.v3-lesson-list{background:#fff;border-radius:14px;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 18px;margin:0 16px 16px;padding:8px;display:grid}.v3-lesson-row,.v3-ability-row{width:100%;min-height:62px;color:inherit;text-align:left;background:0 0;border:0;align-items:center;display:grid}.v3-lesson-row{border:0;border-radius:10px;grid-template-columns:38px minmax(0,1fr) 18px;gap:9px;min-width:0;padding:12px}.v3-lesson-row:hover{background:#f6f8fa}.v3-ability-row:hover{background:#f7f9fb}.v3-lesson-mark{color:#8d98a7;background:#f3f5f7;border-radius:10px;place-items:center;width:36px;height:36px;font-size:18px;font-weight:850;line-height:1;display:grid;position:relative}.v3-lesson-mark.is-emoji{font-size:20px}.v3-lesson-done-badge{background:var(--v3-accent);color:#fff;border:2px solid #fff;border-radius:50%;place-items:center;width:16px;height:16px;display:grid;position:absolute;bottom:-3px;right:-3px}.v3-lesson-row.is-complete{background:#ffffff61}.v3-lesson-row.is-complete .v3-lesson-mark{background:var(--v3-accent-soft);color:var(--v3-accent)}.subject-chinese .v3-lesson-row.is-complete .v3-lesson-mark.is-emoji{background:#f1f7f4}.v3-lesson-row.is-active .v3-lesson-mark{color:var(--v3-accent)}.v3-lesson-copy,.v3-ability-copy{min-width:0}.v3-lesson-copy strong,.v3-lesson-copy small,.v3-ability-copy strong,.v3-ability-copy small{display:block}.v3-lesson-copy strong,.v3-ability-copy strong{color:#313a46;font-size:14px}.v3-lesson-copy small,.v3-ability-copy small{color:#7b8594;margin-top:3px;font-size:11px;line-height:1.4}.v3-lesson-row>svg,.v3-ability-row>svg{color:#a7afba}.math-home-v3{--v3-accent:#326ecb;--v3-accent-soft:#edf3ff;--v3-accent-line:#c8d8f2}.v3-math-focus{margin-bottom:48px}.v3-math-focus-art img{object-position:50% 35%}.v3-math-groups{gap:42px;display:grid}.v3-ability-row{border-bottom:1px solid #e8ebf0;grid-template-columns:42px minmax(0,1fr) auto 18px;gap:13px;padding:13px 6px}.v3-ability-icon{color:#657287;background:#f2f5f9;border-radius:10px;place-items:center;width:36px;height:36px;display:grid}.v3-ability-row.is-active .v3-ability-icon,.v3-ability-row.is-complete .v3-ability-icon{background:var(--v3-accent-soft);color:var(--v3-accent)}.v3-ability-status{color:#7a8594;white-space:nowrap;align-items:center;gap:5px;font-size:12px;display:inline-flex}.v3-ability-row.is-complete .v3-ability-status{color:#2d795d}.v3-ability-row:disabled{opacity:.45}@media (width<=960px){.v3-sidebar{width:82px;padding-inline:10px}.v3-workspace{margin-left:82px}.v3-sidebar-bottom{padding-top:10px;display:block}.v3-settings-link{height:62px;padding:8px 0;font-size:10px}.v3-settings-link .mantine-Button-inner,.v3-settings-link .mantine-Button-label{flex-direction:column;justify-content:center;gap:5px}.v3-page-content{padding:34px 30px 54px}.subject-home-v3{max-width:820px}}@media (width<=700px){.v3-page-heading{flex-direction:column;align-items:flex-start;gap:16px;margin-bottom:24px}.v3-semester-switch{width:100%}.v3-semester-switch button{flex:1}.v3-featured-course,.v3-math-focus{grid-template-columns:1fr}.v3-featured-art,.v3-math-focus-art{grid-row:1;height:170px;min-height:170px}.v3-featured-art:after,.v3-math-focus-art:after{background:linear-gradient(0deg, var(--v3-accent-soft) 0, transparent 42%)}.v3-featured-copy,.v3-math-focus-copy{padding:24px}}@media (width<=600px){.v3-sidebar{width:100%;height:calc(70px + env(safe-area-inset-bottom));padding:0 8px env(safe-area-inset-bottom);background:#fffffff5;flex-direction:row;align-items:stretch;inset:auto 0 0}.v3-sidebar>.brand{display:none}.v3-sidebar .v3-subject-nav{flex-direction:row;flex:3 1 0;gap:0;margin:0}.v3-sidebar-bottom{border:0;flex:1 1 0;margin:0;padding:0}.v3-subject-link,.v3-settings-link{background:0 0;border:0;border-radius:0;width:100%;height:69px;padding:8px 0;font-size:10px}.v3-subject-link.active,.v3-settings-link.active{color:var(--v3-accent);background:0 0;border:0}.v3-subject-link .mantine-Button-inner,.v3-subject-link .mantine-Button-label,.v3-settings-link .mantine-Button-inner,.v3-settings-link .mantine-Button-label{flex-direction:column;justify-content:center;gap:4px}.v3-workspace{margin-left:0;padding-bottom:70px}.v3-topbar{height:62px;padding-inline:16px}.v3-topbar-title{display:none}.v3-page-content{padding:26px 17px 38px}.v3-page-heading h1{font-size:30px}.v3-page-heading p{font-size:13px}.v3-featured-course,.v3-math-focus{border-radius:16px;margin-bottom:34px}.v3-featured-art,.v3-math-focus-art{height:148px;min-height:148px}.v3-featured-copy,.v3-math-focus-copy{padding:21px}.v3-featured-copy h2,.v3-math-focus-copy h2{font-size:24px}.v3-unit-heading{min-height:72px;padding:15px 16px}.v3-unit-heading small{max-width:220px}.v3-lesson-list{grid-template-columns:1fr;gap:4px;margin:0 10px 10px;padding:6px}.v3-ability-row{grid-template-columns:38px minmax(0,1fr) 18px;gap:10px;padding:12px 2px}.v3-ability-status{grid-column:2/3;margin-top:-3px}.v3-ability-row>svg{grid-area:1/3/span 2}.v3-math-groups{gap:34px}}
