*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }/*! tailwindcss v3.4.17 | MIT License | https://tailwindcss.com*/*,:after,:before{border:0 solid #e5e7eb}:after,:before{--tw-content:""}:host,html{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:Inter,PingFang SC,Microsoft YaHei,system-ui,sans-serif;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{line-height:inherit}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{text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}[multiple],[type=date],[type=datetime-local],[type=email],[type=month],[type=number],[type=password],[type=search],[type=tel],[type=text],[type=time],[type=url],[type=week],input:where(:not([type])),select,textarea{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:#fff;border-color:#6b7280;border-width:1px;border-radius:0;padding:.5rem .75rem;font-size:1rem;line-height:1.5rem;--tw-shadow:0 0 #0000}[multiple]:focus,[type=date]:focus,[type=datetime-local]:focus,[type=email]:focus,[type=month]:focus,[type=number]:focus,[type=password]:focus,[type=search]:focus,[type=tel]:focus,[type=text]:focus,[type=time]:focus,[type=url]:focus,[type=week]:focus,input:where(:not([type])):focus,select:focus,textarea:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-inset:var(--tw-empty,/*!*/ /*!*/);--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:#2563eb;--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow);border-color:#2563eb}input::-moz-placeholder,textarea::-moz-placeholder{color:#6b7280;opacity:1}input::placeholder,textarea::placeholder{color:#6b7280;opacity:1}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-date-and-time-value{min-height:1.5em;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit,::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-meridiem-field,::-webkit-datetime-edit-millisecond-field,::-webkit-datetime-edit-minute-field,::-webkit-datetime-edit-month-field,::-webkit-datetime-edit-second-field,::-webkit-datetime-edit-year-field{padding-top:0;padding-bottom:0}select{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3E%3Cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m6 8 4 4 4-4'/%3E%3C/svg%3E");background-position:right .5rem center;background-repeat:no-repeat;background-size:1.5em 1.5em;padding-right:2.5rem;-webkit-print-color-adjust:exact;print-color-adjust:exact}[multiple],[size]:where(select:not([size="1"])){background-image:none;background-position:0 0;background-repeat:unset;background-size:initial;padding-right:.75rem;-webkit-print-color-adjust:unset;print-color-adjust:unset}[type=checkbox],[type=radio]{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding:0;-webkit-print-color-adjust:exact;print-color-adjust:exact;display:inline-block;vertical-align:middle;background-origin:border-box;-webkit-user-select:none;-moz-user-select:none;user-select:none;flex-shrink:0;height:1rem;width:1rem;color:#2563eb;background-color:#fff;border-color:#6b7280;border-width:1px;--tw-shadow:0 0 #0000}[type=checkbox]{border-radius:0}[type=radio]{border-radius:100%}[type=checkbox]:focus,[type=radio]:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-inset:var(--tw-empty,/*!*/ /*!*/);--tw-ring-offset-width:2px;--tw-ring-offset-color:#fff;--tw-ring-color:#2563eb;--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}[type=checkbox]:checked,[type=radio]:checked{border-color:transparent;background-color:currentColor;background-size:100% 100%;background-position:50%;background-repeat:no-repeat}[type=checkbox]:checked{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 16 16'%3E%3Cpath d='M12.207 4.793a1 1 0 0 1 0 1.414l-5 5a1 1 0 0 1-1.414 0l-2-2a1 1 0 0 1 1.414-1.414L6.5 9.086l4.293-4.293a1 1 0 0 1 1.414 0'/%3E%3C/svg%3E")}@media (forced-colors:active) {[type=checkbox]:checked{-webkit-appearance:auto;-moz-appearance:auto;appearance:auto}}[type=radio]:checked{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 16 16'%3E%3Ccircle cx='8' cy='8' r='3'/%3E%3C/svg%3E")}@media (forced-colors:active) {[type=radio]:checked{-webkit-appearance:auto;-moz-appearance:auto;appearance:auto}}[type=checkbox]:checked:focus,[type=checkbox]:checked:hover,[type=radio]:checked:focus,[type=radio]:checked:hover{border-color:transparent;background-color:currentColor}[type=checkbox]:indeterminate{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 16 16'%3E%3Cpath stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M4 8h8'/%3E%3C/svg%3E");border-color:transparent;background-color:currentColor;background-size:100% 100%;background-position:50%;background-repeat:no-repeat}@media (forced-colors:active) {[type=checkbox]:indeterminate{-webkit-appearance:auto;-moz-appearance:auto;appearance:auto}}[type=checkbox]:indeterminate:focus,[type=checkbox]:indeterminate:hover{border-color:transparent;background-color:currentColor}[type=file]{background:unset;border-color:inherit;border-width:0;border-radius:0;padding:0;font-size:unset;line-height:inherit}[type=file]:focus{outline:1px solid ButtonText;outline:1px auto -webkit-focus-ring-color}:root{--forest:#0c4939;--forest-2:#143f35;--mint:#16ad78;--mint-soft:#dff7ed;--cream:#fbfaf6;--surface:#fff;--mist:#eef3f1;--line:#dbe5e1;--ink:#173b32;--muted:#6f817b;--sun:#f2c94c;--sun-soft:#fff4d3;--danger:#dc625d;--danger-soft:#fff0ef;--purple:#7657bd;--purple-soft:#f0eafe;--shadow:0 18px 50px rgba(12,73,57,.08)}*,:after,:before{box-sizing:border-box}html{scroll-behavior:smooth}body,html{color:var(--ink);background:var(--cream)}body{margin:0;min-width:320px;font-family:Inter,PingFang SC,Microsoft YaHei,system-ui,sans-serif}button,input,select,textarea{font:inherit}a,button{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}h1,h2,h3,p{margin-top:0}:focus-visible{outline:3px solid var(--sun);outline-offset:3px}[hidden],[x-cloak]{display:none!important}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;z-index:1000;left:16px;top:-60px;padding:10px 16px;background:var(--forest);color:#fff;border-radius:10px;transition:top .2s}.skip-link:focus{top:16px}.page-shell{width:min(1180px,calc(100% - 40px));margin-inline:auto}.site-header{position:sticky;top:0;z-index:100;background:hsla(0,0%,100%,.96);border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.site-header__inner{width:min(1180px,calc(100% - 40px));min-height:70px;margin:auto;display:flex;align-items:center;gap:20px}.brand{font-size:23px;font-weight:900;letter-spacing:-.04em;color:var(--forest)}.site-nav{display:flex;align-items:stretch;align-self:stretch;gap:30px;margin-left:auto}.site-nav a{display:flex;align-items:center;position:relative;font-size:14px;color:var(--muted)}.site-nav a.active,.site-nav a:hover{color:var(--mint);font-weight:800}.site-nav a.active:after{content:"";position:absolute;left:0;right:0;bottom:0;height:3px;border-radius:3px 3px 0 0;background:var(--mint)}.account-menu{position:relative}.avatar{width:36px;height:36px;border:0;border-radius:50%;background:var(--mint-soft);color:var(--forest);font-weight:900;cursor:pointer}.account-popover{position:absolute;top:46px;right:0;display:grid;min-width:180px;padding:10px;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow)}.account-popover a,.account-popover button,.account-popover strong{padding:9px 10px;text-align:left;border:0;background:none}.account-popover a:hover,.account-popover button:hover{background:var(--mist);border-radius:8px}.mobile-nav-button{display:none;margin-left:auto;border:1px solid var(--line);background:#fff;border-radius:9px;padding:8px 12px}.site-footer{width:min(1180px,calc(100% - 40px));margin:70px auto 0;padding:28px 0 40px;border-top:1px solid var(--line);display:flex;flex-wrap:wrap;justify-content:space-between;gap:18px 24px;color:var(--muted);font-size:13px}.site-footer div{display:flex;align-items:center;gap:18px}.site-footer strong{color:var(--forest);font-size:18px}.site-footer .site-footer__identity{max-width:760px;flex-wrap:wrap}.site-footer .site-footer__compliance{flex:0 0 100%;justify-content:center;flex-wrap:wrap;text-align:center}.site-footer .public-security-record{display:inline-flex;align-items:center;gap:4px;white-space:nowrap}.site-footer .public-security-record img{flex:none}.site-footer a:hover{color:var(--forest);text-decoration:underline;text-underline-offset:3px}.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:0 20px;border:1px solid transparent;border-radius:9px;font-weight:800;font-size:14px;cursor:pointer;transition:transform .15s,box-shadow .15s,background .15s}.button:hover{transform:translateY(-1px);box-shadow:0 8px 22px rgba(12,73,57,.12)}.button:disabled,button:disabled{cursor:not-allowed;opacity:.55;transform:none;box-shadow:none}.button--primary{color:#fff;background:var(--mint)}.button--dark{color:#fff;background:var(--forest)}.button--quiet{color:var(--forest);background:#f1f6f4;border-color:var(--line)}.button--warning{color:#7a5600;background:var(--sun-soft)}.button--small{min-height:34px;padding:0 13px;font-size:12px}.button--wide{width:100%}.button kbd{padding:2px 5px;background:hsla(0,0%,100%,.18);border-radius:4px;font-size:11px}.eyebrow{display:inline-flex;color:#087957;background:var(--mint-soft);border-radius:999px;padding:6px 12px;font-size:11px;font-weight:900;letter-spacing:.04em}.eyebrow--purple{background:var(--purple-soft);color:var(--purple)}.surface{background:#fff;border:1px solid #e7ecea;border-radius:16px;padding:24px;box-shadow:0 8px 30px rgba(12,73,57,.04)}.page-heading{padding:55px 0 28px}.page-heading h1{margin:14px 0 10px;font-size:clamp(30px,4vw,48px);line-height:1.16;letter-spacing:-.04em}.page-heading p{max-width:700px;color:var(--muted)}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:20px}.section-heading h2{margin:10px 0 0}.section-heading a{color:var(--mint);font-weight:800}.toast-stack{position:fixed;z-index:300;right:20px;top:84px;display:grid;gap:10px}.toast{max-width:360px;padding:13px 18px;color:#fff;background:var(--forest);border-radius:10px;box-shadow:var(--shadow)}.home-page{padding:42px 0 0}.home-intro{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:24px}.home-intro h1{max-width:760px;margin:14px 0 8px;font-size:clamp(32px,4.4vw,56px);line-height:1.13;letter-spacing:-.045em}.home-intro p{color:var(--muted)}.welcome{align-self:flex-start;padding:8px 14px;border-radius:999px;background:#fff;border:1px solid var(--line);font-size:12px}.home-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(270px,.8fr);gap:20px}.hero-card{min-height:300px;padding:34px;background:linear-gradient(135deg,#c9f3e2,#e6f9f0);border-radius:18px;position:relative;overflow:hidden}.hero-card:after{content:"";position:absolute;width:220px;height:220px;right:-50px;bottom:-80px;background:hsla(0,0%,100%,.35);border-radius:50%}.hero-card__tag{display:inline-flex;padding:6px 12px;color:#7b5c00;background:var(--sun);border-radius:999px;font-size:11px;font-weight:900}.hero-card h2{margin:16px 0 8px;font-size:32px}.hero-card p{max-width:520px;color:#41655b}.hero-card__meta{margin:20px 0;color:#52756b;font-size:13px}.demo-note{margin-left:14px;color:var(--muted);font-size:12px}.today-card{padding:28px;background:#fff;border-radius:18px;border:1px solid #e8eeeb}.today-card h2{font-size:16px}.today-card__number{margin-top:18px;color:var(--mint);font-size:48px;font-weight:900;line-height:1}.today-card p{color:var(--muted)}.meter{height:8px;overflow:hidden;border-radius:999px;background:#deebe6}.meter span{display:block;height:100%;background:var(--mint);border-radius:inherit}.stat-row{display:flex;justify-content:space-between;padding:15px 0;border-bottom:1px solid #edf2ef;font-size:13px}.text-link{display:inline-block;margin-top:18px;color:var(--mint);font-weight:800;font-size:13px}.section-block{margin-top:36px}.mode-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.mode-card{min-height:190px;display:flex;flex-direction:column;padding:18px;background:#fff;border:1px solid #e5ece8;border-radius:15px;transition:transform .18s,box-shadow .18s}.mode-card:hover{transform:translateY(-3px);box-shadow:var(--shadow)}.mode-card>span{min-height:55px;padding:12px;border-radius:10px;font-size:11px;font-weight:900}.mode-card--blue>span{background:#eaf2ff;color:#507bb8}.mode-card--yellow>span{background:var(--sun-soft);color:#8b6200}.mode-card--purple>span{background:var(--purple-soft);color:var(--purple)}.mode-card--green>span{background:var(--mint-soft);color:#087957}.mode-card h3{margin:16px 0 6px;font-size:16px}.mode-card p{flex:1;color:var(--muted);font-size:12px;line-height:1.65}.mode-card small{color:var(--mint);font-weight:800}.mode-intro-page{padding-top:24px}.mode-intro-hero{min-height:230px;margin-top:20px;padding:38px;display:flex;align-items:center;justify-content:space-between;gap:30px;border-radius:20px;background:linear-gradient(135deg,#dff7ed,#f2fbf7)}.mode-intro-hero h1{margin:15px 0 10px;font-size:clamp(34px,4vw,50px)}.mode-intro-hero p{max-width:680px;color:var(--muted);line-height:1.8}.mode-status{padding:12px 18px;border-radius:999px;background:var(--mist);color:var(--muted);font-size:13px;font-weight:900}.mode-intro-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:22px}.mode-steps{display:grid;gap:16px;margin-top:20px}.mode-steps li{display:flex;align-items:center;gap:14px}.mode-steps li>span{width:30px;height:30px;flex:none;display:grid;place-items:center;border-radius:50%;color:#fff;background:var(--forest);font-size:12px;font-weight:900}.mode-steps p{margin:0;color:var(--muted)}.mode-sample{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:13px;background:linear-gradient(145deg,#f1ebfe,#fff)}.mode-sample p{margin:0;color:var(--muted)}.mode-sample strong{font-size:clamp(23px,3vw,34px)}.mode-sample small{color:var(--purple)}.search-bar{display:flex;max-width:700px;padding:8px;margin-bottom:18px;background:#fff;border:1px solid var(--line);border-radius:13px}.search-bar input{flex:1;border:0;outline:0;padding:0 14px;background:transparent}.filter-row{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:24px}.chip{display:inline-flex;padding:7px 12px;border-radius:999px;background:#edf3f0;color:var(--muted);font-size:12px;transition:background .15s,color .15s,transform .15s}.chip:hover{color:var(--forest);background:#dfeae6;transform:translateY(-1px)}.chip.active{color:#fff;background:var(--forest)}.course-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.course-card{display:block;overflow:hidden;background:#fff;border:1px solid #e6ede9;border-radius:16px;transition:transform .18s,border-color .18s,box-shadow .18s}.course-card:hover{transform:translateY(-3px);border-color:#b7d8cc;box-shadow:0 16px 34px rgba(12,73,57,.1)}.course-card:focus-visible{outline:3px solid var(--sun);outline-offset:4px}.course-card__cover{min-height:130px;padding:20px;display:flex;justify-content:space-between;align-items:flex-start;color:#fff;background:linear-gradient(135deg,var(--accent),color-mix(in srgb,var(--accent),#fff 36%))}.course-card__cover span{padding:5px 10px;background:hsla(0,0%,100%,.2);border-radius:999px;font-weight:800}.course-card__cover strong{align-self:flex-end;font-size:20px}.course-card__body{padding:22px}.course-card__body h2{margin:14px 0 8px;font-size:21px}.course-card__body p{min-height:64px;color:var(--muted);font-size:13px;line-height:1.7}.course-meta{display:flex;gap:12px;flex-wrap:wrap;margin:15px 0;color:var(--muted);font-size:11px}.course-hero{min-height:300px;margin-top:42px;padding:45px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:34px 40px;border-radius:20px;background:linear-gradient(135deg,color-mix(in srgb,var(--accent),#fff 76%),color-mix(in srgb,var(--accent),#fff 91%))}.course-hero h1{margin:15px 0 10px;font-size:44px}.course-hero p{max-width:680px;color:#516f66}.course-hero__action{min-width:250px;display:flex;flex-direction:column;align-items:stretch;justify-content:center;gap:14px;text-align:center;font-size:12px;color:var(--muted)}.detail-grid{display:grid;grid-template-columns:1fr;gap:20px;margin-top:22px}.attempt-row,.lesson-row{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:16px 0;border-bottom:1px solid #edf2ef}.attempt-row div,.lesson-row div{display:grid;gap:4px}.attempt-row span,.lesson-row span{color:var(--muted);font-size:12px}.course-progress{grid-column:1/-1;display:grid;gap:10px;padding-top:22px;border-top:1px solid color-mix(in srgb,var(--accent),#fff 48%);text-align:left}.course-progress__heading,.lesson-progress__heading{display:flex;align-items:center;justify-content:space-between;gap:16px}.course-progress__heading>div{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.course-progress__heading strong{color:var(--forest);font-size:14px}.course-progress__heading>b{color:var(--accent);font-size:22px}.course-progress small{color:var(--muted)}.learning-progress-track{height:7px;overflow:hidden;border-radius:999px;background:#dfe9e5}.learning-progress-track--course{height:11px;background:hsla(0,0%,100%,.72);box-shadow:inset 0 0 0 1px rgba(12,73,57,.08)}.learning-progress-track span{display:block;height:100%;border-radius:inherit;background:var(--accent,var(--mint));transition:width .3s}.mastery-badge{display:inline-flex;padding:6px 10px;border-radius:999px;color:#5f488f;background:rgba(118,87,189,.12);font-size:11px;font-weight:800}.lesson-progress{--accent:var(--mint);width:min(250px,40vw);display:grid;gap:7px}.lesson-progress__heading strong{color:var(--forest);font-size:12px}.lesson-mastery{color:var(--muted);font-size:10px;text-align:right}.lesson-mastery b{color:#5f488f}.course-content>h2{margin-bottom:18px}.course-section-list{display:grid;gap:12px}.course-section{overflow:hidden;border:1px solid var(--line);border-radius:14px;background:#fbfcfb}.course-section>summary{display:flex;align-items:center;justify-content:flex-start;gap:14px;padding:18px 20px;cursor:pointer;list-style:none}.course-section>summary::-webkit-details-marker{display:none}.course-section>summary::marker{content:""}.course-section__toggle{width:28px;height:28px;flex:none;display:grid;place-items:center;border-radius:50%;background:var(--mist);color:var(--forest)!important;font-size:17px!important;font-weight:800}.course-section__toggle:before{content:"＋"}.course-section[open] .course-section__toggle:before{content:"−"}.course-section>summary>div:first-of-type{display:grid;gap:4px}.course-section>summary small,.course-section>summary span{color:var(--muted);font-size:11px}.course-section>summary strong{font-size:17px}.section-progress{width:180px;margin-left:auto;display:grid;justify-items:stretch;gap:5px;text-align:right}.section-progress b{color:var(--mint);font-size:16px}.course-section__units{padding:0 20px 4px;border-top:1px solid var(--line);background:#fff}.lesson-row__actions{display:flex!important;grid-template-columns:none!important;align-items:center;gap:14px!important}.lesson-row__actions .lesson-progress{display:grid}.course-modes{margin-top:22px}.course-modes .section-heading{align-items:center;margin-bottom:18px}.course-modes .section-heading p{margin:0;color:var(--muted);font-size:12px}.course-mode-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.course-mode-option{min-height:112px;display:flex;flex-direction:column;align-items:flex-start;gap:7px;padding:16px;border:1px solid var(--line);border-radius:12px;background:#f8faf9;transition:transform .15s,border-color .15s,box-shadow .15s}a.course-mode-option:hover{transform:translateY(-2px);border-color:#9ed5c0;box-shadow:0 10px 25px rgba(12,73,57,.07)}.course-mode-option>span{padding:4px 8px;border-radius:999px;color:#087957;background:var(--mint-soft);font-size:9px;font-weight:900}.course-mode-option strong{font-size:14px}.course-mode-option small{color:var(--muted);font-size:10px;line-height:1.5}.course-mode-option.is-default{border-color:#9ed5c0;background:#effaf5}.course-mode-option.is-coming,.course-mode-option.is-locked{opacity:.62}.course-mode-option.is-coming>span{color:var(--muted);background:var(--mist)}.practice-progress{background:var(--forest);color:#fff}.practice-progress__inner{min-height:54px;display:grid;grid-template-columns:auto auto minmax(150px,1fr) auto auto;align-items:center;gap:16px;font-size:12px}.progress-track{height:7px;background:#8cb5a9;border-radius:999px;overflow:hidden}.progress-track span{display:block;height:100%;background:var(--sun);border-radius:inherit;transition:width .3s}.score-pill,.streak-pill{padding:7px 14px;border-radius:999px;background:hsla(0,0%,100%,.1)}.streak-pill{color:var(--sun)}.mode-rail{display:flex;flex-direction:column;gap:9px;padding:16px;height:-moz-max-content;height:max-content;background:#fff;border:1px solid #e5ece8;border-radius:15px}.mode-rail__title{padding:0 10px 7px;color:var(--muted);font-size:11px;font-weight:900}.mode-rail a,.mode-rail__disabled{display:grid;gap:3px;padding:13px 12px;border-radius:10px;background:#f4f7f5}.mode-rail__disabled{color:#8b9994;opacity:.65}.mode-rail a.active{background:var(--mint-soft);border:1px solid #a9e1cd}.mode-rail a strong{font-size:13px}.mode-rail a small{color:var(--muted);font-size:10px}.mode-rail__disabled strong{font-size:13px}.mode-rail__disabled small{font-size:10px}.sound-toggle{display:flex;align-items:center;gap:7px;padding:8px 13px;border:0;border-radius:999px;background:var(--forest);color:#fff;font-size:12px;font-weight:800}.sound-toggle.is-muted{color:var(--muted);background:var(--mist)}.trainer-input-zone{position:relative;min-height:150px;margin-top:26px;padding:22px;border:1.5px solid #afcfc4;border-radius:14px;background:#f9fcfb;cursor:text}.trainer-input-zone:focus-within{border-color:var(--mint);box-shadow:0 0 0 3px rgba(22,173,120,.1)}.trainer-input-zone.is-error{border-color:#f09591;background:snow}.input-zone-label{margin-bottom:22px;color:var(--muted);font-size:11px;font-weight:800}.word-slots{display:flex;align-items:end;flex-wrap:wrap;gap:20px 14px;min-height:45px}.word-slot{--slot-width:60px;position:relative;min-width:var(--slot-width);height:38px;display:flex;align-items:flex-start;justify-content:center;padding:0 5px 9px;border-bottom:3px solid #cddbd6;color:var(--ink);font-weight:800;letter-spacing:.02em}.word-slot:after{content:attr(data-state-label);position:absolute;left:50%;top:36px;transform:translateX(-50%);white-space:nowrap;font-size:9px;font-weight:700;color:var(--muted)}.word-slot.is-current{border-color:var(--mint);background:linear-gradient(180deg,transparent 75%,rgba(22,173,120,.08))}.word-slot.is-current:before{content:"";width:2px;height:20px;margin-left:2px;background:var(--mint);animation:caret 1s steps(1) infinite}.word-slot.has-text.is-current:before{order:2}.word-slot.is-correct{color:#0c8a60;border-color:var(--mint)}.word-slot.is-partial{color:#9a6a00;border-color:var(--sun)}.word-slot.is-wrong{color:#c14642;border-color:var(--danger)}.word-slot__icon{margin-left:5px;font-size:10px}.word-slot__punctuation{position:absolute;right:-9px;top:0;color:var(--ink)}.typing-capture{position:fixed;width:1px;height:1px;opacity:.01;pointer-events:none}.submit-countdown{margin-top:16px;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:14px 16px;background:var(--sun-soft);color:#7c5b00;border-radius:10px;font-size:12px}.result-panel{margin-top:16px;padding:17px;border-radius:12px;background:var(--danger-soft);border:1px solid #f1b8b5}.result-panel.is-correct{background:var(--mint-soft);border-color:#a9e1cd}.result-panel__heading{font-weight:900}.result-panel p{margin:7px 0 0;color:var(--muted);font-size:12px}.error-summary{margin-top:8px;color:#b8403c;font-size:12px}.hint-ladder{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}.hint-ladder span{padding:7px 12px;border-radius:999px;background:#fff;color:var(--muted);font-size:10px}.timing-note{padding:8px 13px;border-radius:999px;background:var(--sun-soft);color:#8b6200;font-size:11px;font-weight:800}kbd{border:solid #d6dfdb;border-width:1px 1px 2px;border-radius:4px;padding:2px 5px;background:#fff;color:var(--ink);font-size:10px}.reading-sentence .phonetic{color:#7a65a8;font-size:12px}.phonetic{color:var(--muted)}.chunk-bank,.chunk-list{display:flex;gap:10px;flex-wrap:wrap;margin:18px 0}.chunk-answer button,.chunk-bank button,.chunk-list span{padding:9px 14px;border:1px solid var(--line);border-radius:999px;background:#f2f6f4;font-weight:700;font-size:12px}.chunk-bank button:disabled{opacity:.28;cursor:default;transform:none}.\!field{display:grid!important;gap:8px!important;margin:18px 0!important;color:var(--muted)!important;font-size:12px!important}.field{display:grid;gap:8px;margin:18px 0;color:var(--muted);font-size:12px}.\!field input{min-height:58px!important;border:1px solid var(--line)!important;border-radius:10px!important;padding:0 15px!important}.field input{min-height:58px;border:1px solid var(--line);border-radius:10px;padding:0 15px}.privacy-note{margin-top:18px;color:#6b8a80;font-size:11px}.chunk-answer{min-height:90px;display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:18px;margin-top:22px;border:1.5px solid var(--line);border-radius:12px;background:#fafcfb;color:var(--muted)}.grade-banner{display:grid;grid-template-columns:1fr 2fr;align-items:center;gap:30px;margin:25px 0;padding:34px;border-radius:18px;background:linear-gradient(105deg,#d9f7e9,#fff6c9)}.grade-banner>div{display:grid;gap:6px}.grade-banner small,.grade-banner span{color:var(--muted);font-size:11px}.grade-banner strong{font-size:52px;line-height:1}.report-page,.result-page{padding-top:50px}.result-page>h1{margin:14px 0 0}.score{font-weight:900}.score--good,.text-good{color:var(--mint)}.score--bad,.text-bad{color:var(--danger)}.result-actions{display:grid;gap:12px;margin-top:20px}.report-grade{grid-template-columns:1fr 1fr}.metric-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:20px 0}.metric-grid>div{display:grid;gap:8px;padding:21px;background:#fff;border:1px solid var(--line);border-radius:13px}.metric-grid span{color:var(--muted);font-size:12px}.metric-grid strong{font-size:28px}.metric-grid small{font-size:12px;color:var(--muted)}.report-row{display:grid;grid-template-columns:120px 1fr 50px;align-items:center;gap:12px;padding:14px 0}.recent-row{display:flex;justify-content:space-between;gap:20px;padding:13px 0;border-bottom:1px solid #edf2ef;font-size:12px}.empty-state{padding:50px;text-align:center;background:#fff;border:1px dashed var(--line);border-radius:16px}.auth-page{min-height:70vh;display:grid;place-items:center;padding:40px 20px}.auth-card{width:min(440px,100%);padding:35px;background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow)}.auth-card h1{margin:15px 0 8px}.auth-card p{color:var(--muted);font-size:13px}.auth-card form p{display:grid;gap:7px}.auth-card input{width:100%;min-height:46px;border:1px solid var(--line);border-radius:9px;padding:0 12px}.auth-card--login form p+p{margin-top:12px}.auth-card--login form .button{margin-top:28px}.auth-card--register form .button{margin:24px 0 8px}.auth-card--register form label{color:#0f3028;font-weight:850}.auth-card .helptext{color:var(--muted);font-size:11px}.auth-card--register .helptext,.auth-card--register .helptext li,.auth-card--register .helptext ul{color:#84928d;font-size:11px;font-weight:400;line-height:1.55}.auth-card--register input[aria-invalid=true]{border-color:var(--danger);box-shadow:0 0 0 1px var(--danger)}.registration-field-error{color:var(--danger);font-size:11px;font-weight:650;line-height:1.45}.auth-card .errorlist{display:grid;gap:4px;margin:0;color:var(--danger);font-size:11px}.auth-switch{margin-top:18px;text-align:center}.auth-switch a{color:var(--mint);font-weight:800}.settings-page{padding:45px 0}.settings-form{display:grid;gap:16px;max-width:850px}.setting-row{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:17px 0;border-bottom:1px solid #edf2ef}.setting-row p{margin:5px 0 0;color:var(--muted);font-size:12px}.setting-row input[type=email],.setting-row input[type=number],.setting-row input[type=tel],.setting-row input[type=text],.setting-row input[type=time],.setting-row select{min-width:150px;border:1px solid var(--line);border-radius:8px;padding:9px}.setting-row input[type=checkbox]{width:22px;height:22px;accent-color:var(--mint)}.suffix-field{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:12px}.password-settings-page{max-width:850px}.password-settings-card{max-width:620px}.password-form{display:grid;gap:20px}.password-field{display:grid;gap:8px}.password-field>label{color:var(--ink);font-weight:850}.password-field>input{width:100%;min-height:46px;border:1px solid var(--line);border-radius:9px;padding:0 12px}.password-help,.password-help li{color:var(--muted);font-size:11px;line-height:1.55}.password-form .errorlist{display:grid;gap:4px;margin:0;color:var(--danger);font-size:11px}.password-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:8px}.faq-page{padding-bottom:20px}.faq-list{max-width:900px;display:grid;gap:18px}.faq-item{overflow:hidden;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:0 8px 28px rgba(12,73,57,.035)}.faq-item summary{position:relative;padding:22px 58px 22px 24px;cursor:pointer;list-style:none;color:var(--forest);font-size:18px;font-weight:850;line-height:1.45}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary:after{content:"＋";position:absolute;right:22px;top:50%;transform:translateY(-50%);color:var(--mint);font-size:22px;font-weight:500}.faq-item[open] summary:after{content:"−"}.faq-item[open] summary{border-bottom:1px solid #edf2ef}.faq-answer{padding:17px 24px 21px;background:#fbfcfb}.faq-answer p{margin:0;color:#84928d;font-size:13px;font-weight:400;line-height:1.85}.studio-shell{min-height:calc(100vh - 70px);display:grid;grid-template-columns:230px 1fr}.studio-sidebar{position:sticky;top:70px;height:calc(100vh - 70px);display:flex;flex-direction:column;padding:28px 20px;background:var(--forest);color:#fff}.studio-brand{display:grid;margin:0 10px 28px;font-size:22px;font-weight:900}.studio-brand small{color:#80cdb5;font-size:9px;letter-spacing:.18em}.studio-sidebar nav{display:grid;gap:5px}.studio-sidebar nav a{padding:12px 14px;border-radius:8px;color:#b8d6cd;font-size:13px}.studio-sidebar nav a.active,.studio-sidebar nav a:hover{color:#fff;background:hsla(0,0%,100%,.1)}.studio-user{display:grid;margin-top:auto;padding:16px 10px 0;border-top:1px solid hsla(0,0%,100%,.15);font-size:11px}.studio-main{min-width:0;padding:42px;background:#f3f6f4}.studio-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:30px;margin-bottom:24px}.studio-heading h1{margin:13px 0 8px;font-size:34px}.studio-heading p{color:var(--muted)}.studio-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:14px;margin-bottom:18px}.studio-metrics div{display:grid;gap:5px;padding:18px;background:#fff;border-radius:12px;border:1px solid var(--line)}.studio-metrics span{color:var(--muted);font-size:11px}.studio-metrics strong{font-size:28px}.studio-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:18px}.studio-grid--summary{margin-top:18px}.studio-course-section{padding:24px 0 8px}.studio-course-section>.section-heading{margin-bottom:18px}.studio-course-section>.section-heading p{margin:5px 0 0;color:var(--muted);font-size:12px}.studio-status-filters{display:flex;align-items:center;gap:9px;margin-bottom:20px;padding-bottom:3px;overflow-x:auto;scrollbar-width:thin}.studio-status-filter{flex:none;display:inline-flex;align-items:center;gap:8px;min-height:36px;padding:0 12px;border:1px solid #d7e2de;border-radius:10px;background:#fff;color:var(--muted);font-size:12px;font-weight:750;transition:border-color .15s ease,background .15s ease,color .15s ease,transform .15s ease}.studio-status-filter:hover{transform:translateY(-1px);border-color:#9fc4b7;color:var(--forest)}.studio-status-filter b{min-width:22px;padding:2px 6px;border-radius:999px;background:#edf3f0;color:#60756e;font-size:10px;text-align:center}.studio-status-filter.active{border-color:var(--forest);background:var(--forest);color:#fff;box-shadow:0 7px 18px rgba(12,73,57,.14)}.studio-status-filter.active b{background:hsla(0,0%,100%,.16);color:#fff}.studio-course-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,350px));align-items:stretch;justify-content:start;gap:18px}.studio-course-grid__empty{grid-column:1/-1;margin:0;color:var(--muted)}.studio-course-card{min-width:0;min-height:320px;display:flex;flex-direction:column;overflow:hidden;border:1px solid #dce6e2;border-top:4px solid #9aaba5;border-radius:18px;background:#fff;box-shadow:0 14px 34px rgba(12,73,57,.09);transition:transform .18s ease,box-shadow .18s ease}.studio-course-card:hover{transform:translateY(-2px);box-shadow:0 18px 42px rgba(12,73,57,.13)}.studio-course-card__heading{display:flex;align-items:center;justify-content:space-between;padding:17px 20px 0}.studio-course-card__version{color:var(--muted);font-size:10px;font-weight:750}.studio-course-card__body{flex:1;padding:18px 20px 20px}.studio-course-card__body h3{margin:0 0 9px;color:var(--forest);font-size:19px;line-height:1.35}.studio-course-card__body>p{min-height:42px;margin:0;color:var(--muted);font-size:12px;line-height:1.7}.studio-course-card__meta{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:18px}.studio-course-card__meta span{min-width:0;display:grid;gap:4px;padding:9px;border-radius:9px;background:#f1f6f4;color:var(--muted);font-size:9px}.studio-course-card__meta strong{overflow:hidden;color:var(--ink);font-size:11px;text-overflow:ellipsis;white-space:nowrap}.studio-course-card form{display:grid;gap:8px;padding:16px 20px 20px;border-top:1px solid #e8efec;background:#f8faf9}.studio-course-card form>label{color:var(--muted);font-size:10px;font-weight:750}.studio-course-card form>div{display:grid;grid-template-columns:1fr auto;gap:8px}.studio-course-card select{width:100%;min-width:0;border:1px solid #cedbd6;border-radius:9px;background-color:#fff;font-size:12px}.status{padding:5px 9px;border-radius:999px;background:#edf2f0;font-size:10px}.grade-row,.job-row,.rule-row{display:flex;justify-content:space-between;gap:16px;padding:14px 0;border-bottom:1px solid #edf2ef}.job-row span,.rule-row{color:var(--muted);font-size:11px}.job-row b,.rule-row b{color:var(--mint)}.formula{display:grid;gap:8px;margin-top:22px;padding:18px;background:var(--sun-soft);border-radius:10px}.formula small{color:var(--muted)}.grade-row b{min-width:50px;padding:5px 10px;text-align:center;color:#fff;background:var(--forest);border-radius:6px}.trial-badge{display:inline-flex;margin-left:8px;padding:3px 7px;color:#087957;background:var(--mint-soft);border-radius:999px;font-size:10px;font-weight:850;vertical-align:middle}@keyframes caret{0%,49%{opacity:1}50%,to{opacity:0}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.static{position:static}.block{display:block}.table{display:table}.hidden{display:none}.min-h-screen{min-height:100vh}.bg-cream{--tw-bg-opacity:1;background-color:rgb(251 250 246/var(--tw-bg-opacity,1))}.text-ink{--tw-text-opacity:1;color:rgb(23 59 50/var(--tw-text-opacity,1))}.underline{text-decoration-line:underline}.blur{--tw-blur:blur(8px)}.blur,.filter{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)}@media (max-width:900px){.site-nav{display:none;position:absolute;left:20px;right:20px;top:62px;padding:12px;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow)}.site-nav.is-open{display:grid;gap:0}.site-nav a{padding:11px}.site-nav a.active:after{display:none}.mobile-nav-button{display:block}.detail-grid,.home-grid,.studio-grid{grid-template-columns:1fr}.course-grid,.course-mode-grid,.mode-grid{grid-template-columns:repeat(2,1fr)}.practice-layout{grid-template-columns:1fr}.mode-rail{flex-direction:row;overflow:auto}.mode-rail__title{display:none}.mode-rail a{min-width:145px}.studio-shell{grid-template-columns:1fr}.studio-sidebar{position:static;height:auto}.studio-sidebar nav{display:flex;overflow:auto}.studio-user{display:none}.studio-main{padding:25px 20px}}@media (max-width:640px){.page-shell,.site-footer,.site-header__inner{width:min(100% - 24px,1180px)}.brand-pill{display:none}.home-page{padding-top:25px}.home-intro,.mode-intro-hero,.site-footer,.studio-heading{align-items:flex-start;flex-direction:column}.site-footer .site-footer__compliance{align-self:stretch}.course-grid,.course-hero,.course-mode-grid,.metric-grid,.mode-grid,.mode-intro-grid,.reading-notes,.studio-metrics{grid-template-columns:1fr}.course-hero{margin-top:20px;padding:26px}.course-progress{grid-column:1}.course-hero h1{font-size:34px}.lesson-row{align-items:flex-start;flex-direction:column}.course-section>summary{align-items:flex-start;padding:16px}.course-section__units{padding-inline:16px}.section-progress{display:none}.faq-list{gap:14px}.faq-item summary{padding:18px 50px 18px 18px;font-size:16px}.faq-item summary:after{right:18px}.faq-answer{padding:15px 18px 18px}.lesson-row__actions{width:100%;align-items:flex-end}.lesson-progress{width:100%}.practice-progress__inner{grid-template-columns:auto auto 1fr;gap:8px;padding:9px 0}.progress-track{grid-row:2;grid-column:1/4}.score-pill,.streak-pill{display:none}.practice-layout{padding-top:12px}.practice-card{padding:20px 17px}.word-slots{gap:22px 10px}.word-feedback-guide{align-items:flex-start;flex-wrap:wrap}.word-feedback-guide>div{width:100%}.keyboard-note{width:100%;margin-left:0}.grade-banner{grid-template-columns:1fr}.studio-course-section{padding-top:18px}.studio-course-grid{grid-template-columns:1fr}.studio-course-card{width:100%;min-height:0}.studio-course-card__meta{grid-template-columns:1fr}}html[data-contrast=high]{--muted:#344c45;--line:#879b94}html[data-contrast=high] .practice-card,html[data-contrast=high] .surface{border-width:2px}.reduce-motion *,@media(prefers-reduced-motion:reduce){animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.typing-focus-page{width:100%;height:100dvh;min-height:0;overflow:hidden;background:radial-gradient(circle at 50% 38%,rgba(22,173,120,.08),transparent 34%),linear-gradient(180deg,#fbfcf9,#f5f8f5)}.typing-focus-page .site-footer,.typing-focus-page .site-header{display:none!important}.typing-focus-page #main-content{height:100%;min-height:0;overflow:hidden}.focus-app{width:100%;height:100dvh;min-height:0;display:grid;grid-template-rows:auto 4px minmax(0,1fr) auto;overflow:hidden;color:#163a31}.focus-hud{min-height:76px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:24px;padding:14px clamp(18px,3vw,48px);background:hsla(0,0%,100%,.86);border-bottom:1px solid rgba(12,73,57,.08);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.focus-hud__identity{display:flex;align-items:center;gap:13px;min-width:0}.focus-hud__identity>div{min-width:0;display:grid;gap:2px}.focus-hud__identity strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px}.focus-hud__identity span{color:#80918b;font-size:11px}.focus-exit{width:40px;height:40px;flex:none;display:grid;place-items:center;border:1px solid #dce7e2;border-radius:50%;background:#fff;color:#31564c;font-size:20px;transition:transform .15s,border-color .15s}.focus-exit:hover{transform:translateX(-2px);border-color:#9fcbbb}.focus-hud__progress{display:grid;justify-items:center;gap:2px}.focus-hud__progress strong{font-size:15px;letter-spacing:.04em}.focus-hud__progress span{color:#899b95;font-size:10px}.focus-hud__stats{justify-self:end;display:flex;gap:8px}.focus-hud__stats span{padding:8px 12px;border-radius:999px;background:#eef5f2;color:#6d827b;font-size:11px}.focus-hud__stats b{margin-left:5px;color:#0c7656;font-size:13px}.focus-progress-track{background:#e0ebe6;overflow:hidden}.focus-progress-track span{display:block;height:100%;border-radius:0 99px 99px 0;background:linear-gradient(90deg,#16ad78,#56d8a8);transition:width .3s}.focus-stage{width:min(980px,calc(100% - 40px));height:100%;min-height:0;margin:auto;padding:clamp(22px,5vh,58px) 0 clamp(18px,3vh,32px);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;overflow-y:auto;overscroll-behavior:contain}.focus-prompt{display:grid;justify-items:center;gap:16px}.focus-prompt__label{padding:6px 12px;border-radius:999px;background:#e4f7ef;color:#0b805c;font-size:11px;font-weight:900;letter-spacing:.08em}.focus-stage .focus-prompt h1{max-width:820px;margin:0;font-size:clamp(30px,4vw,48px);font-weight:650;line-height:1.35;letter-spacing:-.035em}.focus-stage .focus-input-zone{width:100%;min-height:128px;margin:clamp(28px,5vh,58px) 0 0;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;cursor:text}.focus-stage .focus-input-zone:focus-within{border:0;box-shadow:none}.focus-stage .focus-input-zone.is-error{border:0;background:transparent}.focus-stage .input-zone-label{min-height:25px;margin:0 0 25px;display:flex;align-items:center;justify-content:center;gap:12px;color:#8a9a95;font-size:11px;font-weight:600}.focus-stage .input-zone-label span:first-child{padding:5px 10px;border-radius:999px;background:#edf5f2;color:#3a665a;font-weight:850}.focus-stage .word-slots{min-height:64px;justify-content:center;align-items:flex-end;gap:30px 16px}.focus-stage .word-slot{height:54px;padding:0 7px 13px;border-bottom-width:4px;border-color:#aebdb8;color:#143f35;font-size:clamp(18px,2vw,25px);font-weight:780;letter-spacing:.025em}.focus-stage .word-slot:after{top:55px;font-size:10px}.focus-stage .word-slot.is-current{border-color:#13a774;background:linear-gradient(180deg,transparent 82%,rgba(22,173,120,.1));filter:drop-shadow(0 5px 8px rgba(22,173,120,.09))}.focus-stage .word-slot.is-current:before{height:27px;margin-top:1px;background:#0fa875}.focus-stage .word-slot.is-correct{color:#07875e;border-color:#13ad78;background:linear-gradient(180deg,transparent 80%,rgba(19,173,120,.1))}.focus-stage .word-slot.is-partial{color:#b66d08;border-color:#e0a020;background:linear-gradient(180deg,transparent 80%,rgba(224,160,32,.12))}.focus-stage .word-slot.is-wrong{color:#c94743;border-color:#df5c57;background:linear-gradient(180deg,transparent 80%,rgba(223,92,87,.1))}.focus-stage .word-slot.is-editable{cursor:text}.focus-stage .word-slot.is-editable:hover{transform:translateY(-2px);filter:brightness(.96)}.focus-stage .word-slot.is-editable:focus-visible{outline:2px solid currentColor;outline-offset:5px}.focus-stage .word-slot__icon{margin-left:7px;font-size:12px}.focus-stage .word-slot__punctuation{right:-10px;top:1px}.focus-countdown{width:min(560px,100%);margin:20px auto 0;padding:10px 15px;border:1px solid #f1dea1;border-radius:999px;background:#fff9e8;font-size:11px}.answer-reveal{width:min(720px,100%);margin:25px auto 0;padding:18px 24px;display:grid;gap:6px;border:1px solid #f0d992;border-radius:14px;background:#fff9e7;box-shadow:0 14px 40px rgba(117,91,14,.08);text-align:center}.answer-reveal>span{color:#8a6b13;font-size:10px;font-weight:900;letter-spacing:.08em}.answer-reveal strong{color:#2a463e;font-size:clamp(18px,2.3vw,27px)}.answer-reveal small{color:#8a7c56;font-size:10px}.focus-result{width:min(720px,100%);margin:24px auto 0;padding:16px 20px;text-align:left}.focus-controls{min-height:92px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:24px;padding:15px clamp(18px,3vw,48px);background:hsla(0,0%,100%,.92);border-top:1px solid rgba(12,73,57,.1);box-shadow:0 -14px 50px rgba(12,73,57,.04);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.focus-controls__note,.focus-controls__primary,.focus-controls__secondary{display:flex;align-items:center;gap:9px}.focus-controls__primary{justify-self:center}.focus-controls__note{justify-self:end;color:#82918c;font-size:10px}.focus-control{min-height:42px;display:inline-flex;align-items:center;gap:7px;padding:0 13px;border:1px solid #dce6e2;border-radius:9px;background:#f7faf8;color:#47645c;font-size:12px;font-weight:800}.focus-control:hover{border-color:#a9ccbf;background:#f0f8f4}.focus-control.is-active{border-color:#e5c86c;background:#fff6d9;color:#806000}.focus-control kbd{margin-left:3px}.focus-submit{min-width:174px;border-radius:11px;box-shadow:0 9px 24px rgba(22,173,120,.2)}@media (max-width:760px){.focus-app{grid-template-rows:auto 4px minmax(0,1fr) auto}.focus-hud{grid-template-columns:1fr auto;min-height:68px;padding:10px 14px}.focus-hud__progress,.focus-hud__stats span:first-child{display:none}.focus-stage{width:min(100% - 28px,980px);padding:24px 0 18px}.focus-stage .focus-input-zone{margin-top:30px}.focus-stage .word-slots{gap:28px 10px}.focus-stage .word-slot{font-size:18px}.focus-controls{grid-template-columns:1fr;gap:10px;padding:13px 14px}.focus-controls__note,.focus-controls__primary,.focus-controls__secondary{justify-self:center}.focus-controls__primary{grid-row:1}.focus-controls__note{display:none}.focus-control{min-height:38px}.focus-submit{min-width:155px}}