:root{--ink:#1e293b;--ink-soft:#475569;--ink-faint:#64748b;--bg:#ffffff;--bg-sunk:#f8fafc;--bg-raised:#ffffff;--line:#e2e8f0;--line-strong:#cbd5e1;--accent:#e00000;--accent-hover:#c40000;--accent-ink:#ffffff;--accent-soft:#fff8f8;--accent-soft-2:#fef2f2;--accent-border:#fecaca;--accent-border-strong:#f87171;--accent-gradient:linear-gradient(135deg,#e00000,#dc2626 50%,#b91c1c);--focus:#e00000;--star-gold:#f59e0b;--correct:#047857;--correct-soft:#ecfdf5;--correct-ink:#ffffff;--correct-border:#a7f3d0;--wrong:#b45309;--wrong-ink:#ffffff;--wrong-soft:#fffbeb;--wrong-border:#fcd34d;--grade-k:#10b981;--grade-k-bg:#ecfdf5;--grade-1:#0284c7;--grade-1-bg:#f0f9ff;--grade-2:#d97706;--grade-2-bg:#fffbeb;--grade-35:#e00000;--grade-35-bg:#fff8f8;--grade-68:#7c3aed;--grade-68-bg:#f5f3ff;--grade-910:#e11d48;--grade-910-bg:#fff1f2;--grade-1112:#9333ea;--grade-1112-bg:#faf5ff;--font-ui:var(--font-ui-face,"Plus Jakarta Sans"),-apple-system,BlinkMacSystemFont,"Inter",system-ui,"Segoe UI",Roboto,sans-serif;--font-read:var(--font-read-face,"Newsreader"),"Charis SIL","Iowan Old Style",Georgia,Cambria,serif;--measure:52rem;--radius-sm:4px;--radius:8px;--radius-lg:12px;--radius-xl:16px;--shadow-sm:0 1px 3px 0 rgba(0,0,0,0.05);--shadow:0 4px 6px -1px rgba(0,0,0,0.05),0 2px 4px -2px rgba(0,0,0,0.03);--shadow-md:0 10px 15px -3px rgba(0,0,0,0.07),0 4px 6px -4px rgba(0,0,0,0.03);--shadow-lg:0 20px 25px -5px rgba(0,0,0,0.08),0 8px 10px -6px rgba(0,0,0,0.04);--shadow-red:0 10px 25px -5px rgba(224,0,0,0.12),0 4px 6px -4px rgba(224,0,0,0.05)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--ink:#f8fafc;--ink-soft:#94a3b8;--ink-faint:#8494a9;--bg:#0b0f19;--bg-sunk:#111726;--bg-raised:#161e31;--line:#222f46;--line-strong:#334155;--accent:#f87171;--accent-hover:#ef4444;--accent-ink:#0b0f19;--accent-soft:#201013;--accent-soft-2:#2b1418;--accent-border:#7f1d1d;--accent-border-strong:#991b1b;--accent-gradient:linear-gradient(135deg,#f87171,#ef4444 50%,#dc2626);--focus:#f87171;--star-gold:#fbbf24;--correct:#34d399;--correct-soft:#064e3b;--correct-ink:#0b0f19;--correct-border:#047857;--wrong:#fbbf24;--wrong-ink:#1c1917;--wrong-soft:#2d2208;--wrong-border:#92400e;--grade-k-bg:rgba(16,185,129,0.15);--grade-1-bg:rgba(2,132,199,0.15);--grade-2-bg:rgba(217,119,6,0.15);--grade-35-bg:rgba(224,0,0,0.15);--grade-68-bg:rgba(124,58,237,0.15);--grade-910-bg:rgba(225,29,72,0.15);--grade-1112-bg:rgba(147,51,234,0.15)}}:root[data-theme=dark]{--ink:#f8fafc;--ink-soft:#94a3b8;--ink-faint:#8494a9;--bg:#0b0f19;--bg-sunk:#111726;--bg-raised:#161e31;--line:#222f46;--line-strong:#334155;--accent:#f87171;--accent-hover:#ef4444;--accent-ink:#0b0f19;--accent-soft:#201013;--accent-soft-2:#2b1418;--accent-border:#7f1d1d;--accent-border-strong:#991b1b;--accent-gradient:linear-gradient(135deg,#f87171,#ef4444 50%,#dc2626);--focus:#f87171;--star-gold:#fbbf24;--correct:#34d399;--correct-soft:#064e3b;--correct-ink:#0b0f19;--correct-border:#047857;--wrong:#fbbf24;--wrong-ink:#1c1917;--wrong-soft:#2d2208;--wrong-border:#92400e;--grade-k-bg:rgba(16,185,129,0.15);--grade-1-bg:rgba(2,132,199,0.15);--grade-2-bg:rgba(217,119,6,0.15);--grade-35-bg:rgba(224,0,0,0.15);--grade-68-bg:rgba(124,58,237,0.15);--grade-910-bg:rgba(225,29,72,0.15);--grade-1112-bg:rgba(147,51,234,0.15)}*,:after,:before{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--font-ui);font-size:1.0625rem;line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.skip-link{position:fixed;top:.75rem;left:.75rem;z-index:100;padding:.65rem .9rem;color:var(--accent-ink);background:var(--accent);border-radius:var(--radius-sm);transform:translateY(-160%);transition:transform .15s ease}.skip-link:focus{transform:translateY(0)}h1,h2,h3,h4{color:var(--ink);line-height:1.25;letter-spacing:-.02em;margin:0 0 .5em;text-wrap:balance;font-weight:700}h1{font-size:clamp(2rem,1.5rem + 2.5vw,3rem);letter-spacing:-.03em}h2{font-size:clamp(1.4rem,1.2rem + 1vw,1.85rem);margin-top:2.75rem;letter-spacing:-.025em}h3{font-size:1.2rem;margin-top:1.75rem}ol,p,ul{margin:0 0 1rem}a{color:var(--accent);text-decoration:none;transition:color .15s ease}a:hover{text-decoration:underline;text-underline-offset:3px}:where(a,button,summary,input):focus-visible{outline:3px solid var(--focus);outline-offset:2px;border-radius:var(--radius-sm)}.gradient-text{background:var(--accent-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;display:inline-block}.shell{min-height:100dvh;display:flex;flex-direction:column}.wrap{width:100%;max-width:76rem;margin:0 auto;padding:0 1.25rem}@media (min-width:768px){.wrap{padding:0 2rem}}@media (min-width:1280px){.wrap{padding:0 2.5rem}}.wrap-wide{max-width:90rem}main{flex:1 0 auto;padding:2rem 0 4.5rem}.lede{font-size:1.25rem;line-height:1.55;margin-bottom:1.5rem}.lede,.prose{color:var(--ink-soft);max-width:var(--measure)}.prose{line-height:1.7}.prose p{margin-bottom:1.15rem}.site-head{border-bottom:1px solid var(--line);background:var(--bg-raised);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);position:-webkit-sticky;position:sticky;top:0;z-index:50;transition:border-color .2s ease,background-color .2s ease}@supports ((-webkit-backdrop-filter:blur(16px)) or (backdrop-filter:blur(16px))){.site-head{background:rgba(255,255,255,.85)}:root[data-theme=dark] .site-head,@media(prefers-color-scheme: dark){:root:not([data-theme=light]) .site-head{background:rgba(11,15,25,.85)}}}.site-head .wrap{justify-content:space-between;gap:1.25rem;min-height:4rem}.site-brand,.site-head .wrap{display:flex;align-items:center}.site-brand{gap:.75rem;text-decoration:none;color:inherit;flex-shrink:0}.brand-icon-box{width:2.25rem;height:2.25rem;border-radius:var(--radius);background:var(--accent);display:grid;place-items:center;color:var(--accent-ink);box-shadow:0 2px 8px rgba(224,0,0,.28);flex-shrink:0;transition:transform .15s ease,box-shadow .15s ease}.site-brand:hover .brand-icon-box{transform:scale(1.04);box-shadow:0 4px 12px rgba(224,0,0,.38)}.site-name{font-weight:750;font-size:1.125rem;color:var(--ink);letter-spacing:-.02em;display:flex;align-items:center;gap:.35rem}.site-name-lead{font-weight:850;color:var(--accent)}.head-actions{display:flex;align-items:center;gap:.65rem}.nav-link{font-size:.875rem;font-weight:600;color:var(--ink-soft);text-decoration:none;padding:.45rem .75rem;border-radius:var(--radius-sm);transition:all .15s ease}.nav-link:hover{color:var(--accent);background:var(--accent-soft-2);text-decoration:none}.nav-cta{font-size:.875rem;font-weight:650;color:var(--accent-ink)!important;background:var(--accent);padding:.5rem 1.05rem;border-radius:var(--radius);text-decoration:none;transition:all .15s ease;white-space:nowrap;box-shadow:0 2px 6px rgba(224,0,0,.25)}.nav-cta:hover{background:var(--accent-hover);box-shadow:0 4px 12px rgba(224,0,0,.35);transform:translateY(-1px);text-decoration:none}.theme-toggle{font:inherit;width:2.25rem;height:2.25rem;padding:0;display:inline-flex;align-items:center;justify-content:center;background:var(--bg-sunk);border:1px solid var(--line);border-radius:var(--radius);color:var(--ink-soft);cursor:pointer;transition:all .15s ease;flex-shrink:0}.theme-toggle:hover{border-color:var(--accent-border);color:var(--accent);background:var(--accent-soft-2)}.theme-toggle-icon{display:inline-flex;align-items:center;justify-content:center;color:var(--ink-soft)}.theme-toggle:hover .theme-toggle-icon{color:var(--accent)}.theme-toggle-label{display:none}@media (max-width:640px){.site-head .wrap{min-height:3.5rem;gap:.5rem}.site-name{font-size:.9375rem}.nav-cta,.nav-link{display:none}.head-actions{gap:.5rem}}.mobile-nav{display:none;position:relative}.mobile-nav-toggle{font:inherit;width:2.25rem;height:2.25rem;padding:0;display:inline-flex;align-items:center;justify-content:center;background:var(--bg-sunk);border:1px solid var(--line);border-radius:var(--radius);color:var(--ink);cursor:pointer}.mobile-nav-toggle[aria-expanded=true]{border-color:var(--line-strong,var(--line));background:var(--bg-raised)}.mobile-nav-panel{position:absolute;top:calc(100% + .5rem);right:0;min-width:12rem;background:var(--bg-raised);border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 12px 28px rgba(15,23,42,.16);padding:.35rem;z-index:60}.mobile-nav-panel[hidden]{display:none}.mobile-nav-panel ul{list-style:none;margin:0;padding:0}.mobile-nav-link{display:block;padding:.7rem .85rem;border-radius:var(--radius-sm);font-size:1rem;font-weight:600;color:var(--ink);text-decoration:none}.mobile-nav-link:focus-visible,.mobile-nav-link:hover{background:var(--bg-sunk);text-decoration:none}.mobile-nav-link[aria-current=page]{color:var(--accent)}@media (max-width:640px){.mobile-nav{display:block}}.hero-section{padding:1.75rem 0 1rem}.hero-grid{display:grid;grid-template-columns:1fr;grid-gap:2.25rem;gap:2.25rem;align-items:center}@media (min-width:860px){.hero-grid{grid-template-columns:1.15fr .85fr;gap:3rem}}.hero-content h1{margin-bottom:.5em;font-size:clamp(2.1rem,1.6rem + 2.4vw,3.15rem);letter-spacing:-.03em;line-height:1.18}.hero-micro-trust{font-size:.8125rem;color:var(--ink-faint);margin-top:1rem;display:flex;align-items:center;gap:.35rem}.hero-visual-wrap{display:flex;flex-direction:column;gap:1rem}.hero-visual{border-radius:var(--radius-lg);overflow:hidden;border:1px solid var(--line);background:var(--bg-raised);box-shadow:var(--shadow);transition:transform .2s ease,box-shadow .2s ease}.hero-visual:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.hero-img{width:100%;height:auto;display:block;object-fit:cover}.home-page{max-width:82rem}.home-trust-line{margin:1.15rem 0 0;color:var(--ink-faint);font-size:.875rem}.home-section{padding:4.5rem 0 1rem;scroll-margin-top:5rem}.home-section+.home-section{border-top:1px solid var(--line);margin-top:3.5rem}.home-section-heading{max-width:44rem;margin-bottom:2rem}.home-section-heading h2{margin:0 0 .65rem;font-size:clamp(1.65rem,1.4rem + 1vw,2.2rem)}.home-section-heading p{max-width:42rem;margin:0;color:var(--ink-soft);line-height:1.65}.home-grade-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:.85rem;gap:.85rem;margin:0;padding:0;list-style:none}.home-grade-grid li{min-width:0;background:var(--bg-raised);border:1px solid var(--line);border-radius:var(--radius-lg);overflow:hidden}.home-grade-link{display:flex;min-height:10rem;height:100%;flex-direction:column;padding:1.4rem;color:inherit;text-decoration:none;border-top:3px solid var(--line-strong);transition:background-color .18s ease,border-color .18s ease}.home-grade-link:hover{background:var(--accent-soft);border-top-color:var(--accent);text-decoration:none}.home-grade-link[data-grade=kindergarten]{border-top-color:var(--grade-k)}.home-grade-link[data-grade=grade-1]{border-top-color:var(--grade-1)}.home-grade-link[data-grade=grade-2]{border-top-color:var(--grade-2)}.home-grade-link[data-grade=grade-3-5]{border-top-color:var(--grade-35)}.home-grade-link[data-grade=grade-6-8]{border-top-color:var(--grade-68)}.home-grade-link[data-grade=grade-9-10]{border-top-color:var(--grade-910)}.home-grade-link[data-grade=grade-11-12]{border-top-color:var(--grade-1112)}.home-grade-title,.home-guide-title{color:var(--ink);font-size:1.125rem;font-weight:750;letter-spacing:-.02em}.home-grade-description{margin-top:.45rem;color:var(--ink-soft);font-size:.9rem;line-height:1.5}.home-grade-meta{margin-top:.8rem;color:var(--ink-faint);font-size:.8125rem}.home-grade-action,.home-guide-action{margin-top:auto;padding-top:1.2rem;color:var(--accent);font-size:.875rem;font-weight:700}.home-paths{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:1.25rem;gap:1.25rem}.home-path{display:flex;min-height:14rem;flex-direction:column;padding:1.5rem;color:inherit;background:var(--bg-sunk);border-radius:var(--radius-lg);text-decoration:none;transition:background-color .18s ease,transform .18s ease}.home-path:hover{background:var(--accent-soft);transform:translateY(-2px);text-decoration:none}.home-path h3{margin:0 0 .6rem;font-size:1.2rem}.home-path p{margin:0;color:var(--ink-soft);font-size:.9375rem;line-height:1.6}.home-path>span{margin-top:auto;padding-top:1.25rem;color:var(--accent);font-size:.875rem;font-weight:700}.home-section-heading-row{max-width:none;display:flex;align-items:end;justify-content:space-between;gap:2rem}.home-heading-link{flex-shrink:0;font-size:.9rem;font-weight:700}.home-guide-list{margin:0;padding:0;list-style:none;border-top:1px solid var(--line)}.home-guide-list li{border-bottom:1px solid var(--line)}.home-guide-list a{display:grid;grid-template-columns:minmax(12rem,.75fr) minmax(18rem,1.5fr) auto;grid-gap:2rem;gap:2rem;align-items:center;padding:1.35rem 0;color:inherit;text-decoration:none}.home-guide-list a:hover .home-guide-action,.home-guide-list a:hover .home-guide-title{color:var(--accent-hover)}.home-guide-summary{color:var(--ink-soft);font-size:.9rem;line-height:1.55}.home-guide-action{margin-top:0;padding-top:0;white-space:nowrap}.home-faq{max-width:58rem;padding-bottom:2rem}.home-faq .faq-a p{margin:0}@media (max-width:760px){.home-section{padding-top:3.25rem}.home-section+.home-section{margin-top:2.5rem}.home-paths{grid-template-columns:1fr}.home-grade-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem}.home-grade-link{min-height:0;padding:.9rem 1rem}.home-grade-title{font-size:1rem}.home-grade-description{margin-top:.25rem;font-size:.8125rem}.home-grade-action,.home-grade-meta{display:none}.home-path{min-height:0}.home-section-heading-row{display:block}.home-heading-link{display:inline-block;margin-top:1rem}.home-guide-list a{grid-template-columns:1fr;gap:.45rem}.home-guide-action{margin-top:.25rem}}@media (min-width:761px) and (max-width:1080px){.home-grade-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.highlights-row{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:1px;gap:1px;margin:2.25rem 0 0;padding:0;list-style:none;background:var(--line);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow-sm)}@media (min-width:768px){.highlights-row{grid-template-columns:repeat(4,1fr)}}.highlights-row li{background:var(--bg-raised);padding:1.15rem 1.25rem;display:flex;flex-direction:column;gap:.25rem;transition:background .15s ease}.highlights-row li:hover{background:var(--accent-soft)}.highlights-row strong{font-size:.9375rem;font-weight:750;color:var(--ink);display:flex;align-items:center;gap:.4rem}.highlights-row span{font-size:.8125rem;color:var(--ink-soft);line-height:1.45}.section-header-centered{text-align:center;max-width:44rem;margin:0 auto 2.25rem}.section-header-centered .section-sub{margin-left:auto;margin-right:auto}.eng-container{background:var(--accent-soft);border:1px solid var(--accent-border);border-radius:var(--radius-lg);padding:2.75rem 2rem;margin:3.5rem 0;box-shadow:var(--shadow-sm)}@media (max-width:640px){.eng-container{padding:2rem 1.25rem;margin:2.5rem -1rem;border-radius:0;border-left:none;border-right:none}}.domains-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(14.5rem,1fr));grid-gap:1.35rem;gap:1.35rem;margin:1.75rem 0 0;padding:0;list-style:none}.domain-card{display:flex;flex-direction:column;background:var(--bg-raised);border:1px solid var(--line);border-radius:var(--radius-lg);padding:1.35rem;box-shadow:var(--shadow-sm);transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}.domain-card:hover{transform:translateY(-3px);border-color:var(--accent-border-strong);box-shadow:var(--shadow-red)}.domain-thumb{width:100%;aspect-ratio:16/11;border-radius:var(--radius);overflow:hidden;background:var(--bg-sunk);margin-bottom:1rem;border:1px solid var(--line)}.domain-img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s ease}.domain-card:hover .domain-img{transform:scale(1.03)}.domain-card h3{margin:0 0 .35rem;font-size:1.125rem;color:var(--ink);font-weight:750}.domain-card p{margin:0;font-size:.875rem;color:var(--ink-soft);line-height:1.55;flex:1 0 auto}.domain-weight{display:block;margin-top:.75rem;font-size:.8125rem;color:var(--ink-faint)}.domain-links,.domain-weight{padding-top:.75rem;border-top:1px solid var(--line)}.domain-links{display:flex;flex-direction:column;gap:.4rem;margin-top:.85rem}.domain-action-link{font-size:.875rem;font-weight:700;color:var(--accent);text-decoration:none;display:inline-flex;align-items:center;gap:.25rem}.domain-action-link:hover{text-decoration:underline}.domain-grade-links{display:flex;flex-wrap:wrap;gap:.35rem .5rem;font-size:.8125rem;color:var(--ink-soft);margin-top:.35rem}.domain-grade-links a{color:var(--ink-soft);text-decoration:none}.domain-grade-links a:hover{color:var(--accent);text-decoration:underline}.hero-grade-jump{margin-top:1.25rem;font-size:.875rem;color:var(--ink-soft);display:flex;flex-wrap:wrap;align-items:center;gap:.35rem .6rem}.hero-jump-label{font-weight:600;color:var(--ink)}.hero-jump-link{color:var(--accent);text-decoration:none;font-weight:500}.hero-jump-link:hover{text-decoration:underline}.card-heading-link{color:inherit;text-decoration:none}.card-heading-link:hover{color:var(--accent)}.card-sublinks{margin-top:1rem;padding-top:.85rem;border-top:1px solid var(--line);display:flex;flex-direction:column;gap:.5rem}.card-sublink{font-size:.8125rem;color:var(--ink-soft);text-decoration:none;font-weight:500;transition:color .15s ease}.card-sublink:hover{color:var(--accent);text-decoration:underline}.sublink-primary{color:var(--accent);font-weight:700;font-size:.875rem}.card-sublinks-grid{display:flex;flex-wrap:wrap;gap:.35rem .75rem}.card-action-bar{margin-top:auto;padding-top:1rem}.matrix-container{overflow-x:auto;margin:1.75rem 0;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--bg-raised);box-shadow:var(--shadow-sm)}.matrix-table{width:100%;border-collapse:collapse;font-size:.9375rem;text-align:left;min-width:680px}.matrix-table td,.matrix-table th{padding:.85rem 1.15rem;border-bottom:1px solid var(--line);vertical-align:middle}.matrix-table thead th{background:var(--bg-sunk);font-weight:700;color:var(--ink);font-size:.8125rem}.matrix-table tbody tr:last-child td{border-bottom:none}.matrix-table tbody tr:hover{background:var(--accent-soft)}.matrix-grade-cell{font-weight:700;color:var(--ink)}.matrix-link{color:var(--accent);text-decoration:none;font-weight:600;display:inline-flex;align-items:center;gap:.2rem}.matrix-link:hover{text-decoration:underline}.matrix-na{color:var(--ink-faint);font-size:.8125rem}.faq-link{color:var(--accent);text-decoration:underline;text-underline-offset:2px}.faq-link:hover{color:var(--accent-hover)}.section-block{margin:3.75rem 0}.section-sub{font-size:1.0625rem;color:var(--ink-soft);max-width:var(--measure);margin:-.25rem 0 1.75rem;line-height:1.6}.tools-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(17.5rem,1fr));grid-gap:1.35rem;gap:1.35rem;margin:1.75rem 0 0;padding:0;list-style:none}.tool-card{background:var(--bg-raised);border:1px solid var(--line);border-radius:var(--radius-lg);padding:1.5rem;display:flex;flex-direction:column;box-shadow:var(--shadow-sm);text-decoration:none;color:inherit;transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}.tool-card:hover{transform:translateY(-3px);border-color:var(--accent-border-strong);box-shadow:var(--shadow-red);text-decoration:none}.tool-icon-box{width:2.75rem;height:2.75rem;border-radius:var(--radius);background:var(--accent-soft-2);color:var(--accent);display:grid;place-items:center;margin-bottom:1rem;border:1px solid var(--accent-border);transition:background .15s ease,color .15s ease}.tool-card:hover .tool-icon-box{background:var(--accent);color:var(--accent-ink)}.tool-card h3{margin:0 0 .4rem;font-size:1.125rem;font-weight:750;color:var(--ink)}.tool-card:hover h3{color:var(--accent)}.tool-card p{margin:0;font-size:.875rem;color:var(--ink-soft);line-height:1.55;flex:1 0 auto}.tool-cta-link{display:inline-flex;align-items:center;gap:.35rem;margin-top:1.15rem;padding-top:.85rem;border-top:1px solid var(--line);font-size:.8125rem;font-weight:750;color:var(--accent)}.reviews-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(17.5rem,1fr));grid-gap:1.35rem;gap:1.35rem;margin:1.75rem 0 0;padding:0;list-style:none}.review-card{background:var(--bg-raised);border:1px solid var(--line);border-radius:var(--radius-lg);padding:1.5rem;display:flex;flex-direction:column;justify-content:space-between;box-shadow:var(--shadow-sm);transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}.review-card:hover{transform:translateY(-2px);border-color:var(--accent-border);box-shadow:var(--shadow-sm)}.review-stars{color:var(--star-gold);font-size:1rem;letter-spacing:2px;margin-bottom:.75rem}.review-quote{font-size:.9375rem;line-height:1.6;color:var(--ink);font-style:italic;margin:0 0 1.25rem;flex:1 0 auto}.review-author-box{display:flex;align-items:center;gap:.75rem;padding-top:.95rem;border-top:1px solid var(--line)}.review-author-avatar{width:2.25rem;height:2.25rem;border-radius:50%;background:var(--accent-soft-2);color:var(--accent);display:grid;place-items:center;font-weight:750;font-size:.875rem;border:1px solid var(--accent-border);flex-shrink:0}.review-author-info strong{display:block;font-size:.875rem;color:var(--ink);font-weight:700}.review-author-info span{display:block;font-size:.75rem;color:var(--ink-faint)}.faq-list{margin:0;padding:0;display:grid;grid-gap:.85rem;gap:.85rem}.faq-item{background:var(--bg-raised);border:1px solid var(--line);border-radius:var(--radius);padding:1.25rem 1.5rem;box-shadow:var(--shadow-sm);transition:border-color .15s ease}.faq-item:hover{border-color:var(--accent-border)}.faq-q{font-size:1.0625rem;font-weight:750;color:var(--ink);margin:0 0 .5rem;line-height:1.4;display:flex;align-items:flex-start;gap:.5rem}.faq-q-indicator{color:var(--accent);font-weight:850;font-size:1rem}.faq-a{font-size:.9375rem;color:var(--ink-soft);line-height:1.65;margin:0}.crumbs{font-size:.875rem;color:var(--ink-faint);margin-bottom:1.5rem;display:flex;align-items:center;flex-wrap:wrap;gap:.4rem}.crumbs a{color:var(--ink-soft);font-weight:500}.crumbs a:hover{color:var(--accent);text-decoration:underline}.crumbs>span{display:inline-flex;align-items:center;gap:.4rem}.crumbs span[aria-hidden]{color:var(--ink-faint);font-weight:400}@media (max-width:640px){.crumbs{white-space:nowrap;padding-bottom:.25rem;margin-bottom:1.25rem}.crumbs>span:not(:nth-last-child(-n+2)),.crumbs>span:nth-last-child(2)>span[aria-hidden]{display:none}.card-grid.grade-tile-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem}.grade-tile-grid .grade-tile{padding:.9rem 1rem}.grade-tile h3{font-size:1rem}.grade-tile .card-arrow{display:none}}.card-grid{display:grid;grid-gap:1.35rem;gap:1.35rem;grid-template-columns:repeat(auto-fit,minmax(17.5rem,1fr));margin:1.75rem 0 3rem;padding:0;list-style:none}.card{display:flex;flex-direction:column;height:100%;background:var(--bg-raised);border:1px solid var(--line);border-radius:var(--radius-lg);padding:1.5rem;color:inherit;box-shadow:var(--shadow-sm);position:relative;transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}.card,.card:hover{text-decoration:none}.card:hover{transform:translateY(-3px);border-color:var(--accent-border-strong);box-shadow:var(--shadow-red)}.card-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:.75rem;gap:.5rem}.card-top h2,.card-top h3{margin:0;font-size:1.25rem;font-weight:750;color:var(--ink);letter-spacing:-.02em}.card:hover h2,.card:hover h3{color:var(--accent)}.card-arrow{width:1.85rem;height:1.85rem;border-radius:var(--radius-sm);background:var(--bg-sunk);color:var(--ink-soft);display:grid;place-items:center;font-size:.875rem;transition:transform .2s ease,background .2s ease,color .2s ease;flex-shrink:0}.card:hover .card-arrow{color:var(--accent-ink);background:var(--accent);transform:translateX(2px)}.card p{margin:0;font-size:.9375rem;color:var(--ink-soft);line-height:1.55;flex:1 0 auto}.card-meta{gap:.5rem;margin-top:1.15rem;padding-top:.95rem;font-size:.8125rem;font-weight:650;color:var(--ink-faint)}.card-action-link,.card-meta{display:inline-flex;align-items:center;border-top:1px solid var(--line)}.card-action-link{gap:.35rem;margin-top:1rem;padding-top:.85rem;font-size:.875rem;font-weight:750;color:var(--accent)}.card:hover .card-action-link{text-decoration:underline}.card[aria-disabled=true]{opacity:.65;cursor:not-allowed}.card[aria-disabled=true]:hover{transform:none;border-color:var(--line);box-shadow:var(--shadow-sm)}.card[data-grade]{border-top:3px solid var(--line-strong)}.card[data-grade=kindergarten]{border-top-color:var(--grade-k)}.card[data-grade=grade-1]{border-top-color:var(--grade-1)}.card[data-grade=grade-2]{border-top-color:var(--grade-2)}.card[data-grade=grade-3-5]{border-top-color:var(--grade-35)}.card[data-grade=grade-6-8]{border-top-color:var(--grade-68)}.card[data-grade=grade-9-10]{border-top-color:var(--grade-910)}.card[data-grade=grade-11-12]{border-top-color:var(--grade-1112)}.card[data-grade=kindergarten]:hover{border-color:var(--grade-k)}.card[data-grade=grade-1]:hover{border-color:var(--grade-1)}.card[data-grade=grade-2]:hover{border-color:var(--grade-2)}.card[data-grade=grade-3-5]:hover{border-color:var(--grade-35)}.card[data-grade=grade-6-8]:hover{border-color:var(--grade-68)}.card[data-grade=grade-9-10]:hover{border-color:var(--grade-910)}.card[data-grade=grade-11-12]:hover{border-color:var(--grade-1112)}.card[data-type=guide]{border-top:3px solid var(--accent)}.card[data-type=guide]:hover{border-color:var(--accent)}.featured-card{background:linear-gradient(135deg,var(--bg-raised) 0,var(--accent-soft) 100%);border:1.5px solid var(--accent-border)}.featured-card:hover{border-color:var(--accent);box-shadow:var(--shadow-red)}.panel{background:var(--bg-raised);border:1px solid var(--line);border-radius:var(--radius-lg);padding:1.5rem;box-shadow:var(--shadow-sm)}.note,.panel{margin:1.75rem 0}.note{background:var(--accent-soft);border:1px solid var(--accent-border);border-left:4px solid var(--accent);border-radius:var(--radius);padding:1.15rem 1.35rem;font-size:.9375rem;color:var(--ink-soft);line-height:1.6}.note p:last-child{margin-bottom:0}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;font:inherit;font-size:.9375rem;font-weight:650;background:var(--accent);color:var(--accent-ink);border:1px solid var(--accent);border-radius:var(--radius);padding:.75rem 1.5rem;cursor:pointer;box-shadow:0 2px 6px rgba(224,0,0,.25);transition:all .15s ease}.btn,.btn:hover{text-decoration:none}.btn:hover{background:var(--accent-hover);border-color:var(--accent-hover);box-shadow:0 4px 14px rgba(224,0,0,.35);transform:translateY(-1px)}.btn:active{transform:translateY(0);filter:brightness(.96)}.btn-quiet{background:var(--bg-raised);color:var(--ink);border:1.5px solid var(--line-strong);box-shadow:var(--shadow-sm)}.btn-quiet:hover{background:var(--accent-soft);color:var(--accent);border-color:var(--accent-border);transform:translateY(-1px);filter:none}.btn-row{display:flex;flex-wrap:wrap;gap:.85rem;align-items:center;margin-top:1.75rem}.stimulus{background:var(--bg-raised);border:1px solid var(--line);border-left:4px solid var(--accent);border-radius:var(--radius-lg);padding:1.5rem;margin:0 0 2rem;box-shadow:var(--shadow-sm)}.stimulus-instruction{font-size:.9375rem;font-weight:600;color:var(--ink-soft);margin:0 0 .75rem}.stimulus-title{font-size:1.35rem;font-weight:700;margin:0 0 .85rem}.passage,.stimulus-title{font-family:var(--font-read);color:var(--ink)}.passage{font-size:1.15rem;line-height:1.8;max-width:var(--measure)}.passage p{margin:0 0 1rem}.passage p:last-child{margin-bottom:0}.word-card{display:flex;align-items:center;justify-content:center;width:min(100%,18rem);min-height:9rem;margin:.25rem 0 .5rem;padding:1.5rem 2rem;border:2px solid var(--line);border-radius:var(--radius-lg);background:var(--bg-raised);font-family:var(--font-ui);font-size:clamp(2.75rem,10vw,3.75rem);font-weight:600;line-height:1;letter-spacing:.02em;color:var(--ink)}.passage-line-speaker{font-family:var(--font-ui);font-weight:700;font-size:.9375rem;color:var(--accent);display:inline-block;margin-right:.35rem}.essay-lines{font-family:var(--font-read);font-size:1.15rem;line-height:1.85;margin:0;padding-left:2.25rem;max-width:var(--measure)}.essay-lines li{margin-bottom:.5rem;padding-left:.35rem}.transcript{margin-top:1.25rem;border-top:1px solid var(--line);padding-top:1rem}.transcript summary{cursor:pointer;font-size:.9375rem;color:var(--accent);font-weight:600;-webkit-user-select:none;-moz-user-select:none;user-select:none}.transcript summary:hover{text-decoration:underline}.transcript .passage{margin-top:1rem;padding:1rem;background:var(--bg-sunk);border-radius:var(--radius);border:1px solid var(--line)}.stimulus-scene{margin:0}.stimulus-scene-img{width:100%;max-width:40rem;height:auto;display:block;border-radius:var(--radius);border:1px solid var(--line);box-shadow:var(--shadow);margin-bottom:.875rem}.stimulus-narrative{margin:0}.narrative-panels{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(8.5rem,100%),1fr));grid-gap:.75rem;gap:.75rem;margin-bottom:.875rem;max-width:52rem}.narrative-panel{margin:0;padding:0;position:relative}.narrative-panel-num{position:absolute;top:.4rem;left:.4rem;width:1.5rem;height:1.5rem;background:var(--accent);color:var(--accent-ink);font-size:.75rem;font-weight:800;border-radius:50%;display:flex;align-items:center;justify-content:center;line-height:1;z-index:1}.narrative-panel-img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;display:block;border-radius:var(--radius);border:1px solid var(--line);box-shadow:var(--shadow-sm)}.stimulus-scene-desc{border-top:1px solid var(--line);padding-top:.75rem;margin-top:.75rem}.stimulus-scene-desc summary{cursor:pointer;font-size:.875rem;color:var(--ink-faint);font-weight:600;-webkit-user-select:none;-moz-user-select:none;user-select:none}.stimulus-scene-desc summary:hover{color:var(--ink-soft)}.stimulus-scene-desc .passage{margin-top:.75rem;font-size:.9375rem}.audio{margin:0 0 1rem;background:var(--bg-sunk);border:1px solid var(--line);border-radius:var(--radius);padding:1rem 1.15rem;box-shadow:var(--shadow-sm)}.audio-meta{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-bottom:.75rem}.audio-label{font-size:.9375rem;font-weight:650;color:var(--ink)}.audio-duration{font-size:.875rem;font-weight:500;color:var(--ink-soft)}.audio-el{width:100%;max-width:58rem;height:2.75rem;display:block;border-radius:var(--radius-sm)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .audio-el{filter:invert(.92) hue-rotate(180deg)}}:root[data-theme=dark] .audio-el{filter:invert(.92) hue-rotate(180deg)}.audio-hint{font-size:.8125rem;color:var(--ink-faint);margin:.65rem 0 0}.question{margin:0 0 3rem}.test-flow{max-width:78rem;margin-inline:auto}@media (min-width:900px){.question-with-visual{display:grid;grid-template-columns:minmax(22rem,.9fr) minmax(22rem,1fr);grid-column-gap:clamp(1.5rem,3vw,3rem);column-gap:clamp(1.5rem,3vw,3rem);align-items:start}.question-with-visual>.stimulus{grid-column:1;grid-row:1/span 5;margin-bottom:0}.question-with-visual>:not(.stimulus){grid-column:2}.test-flow-with-visual>.btn-row,.test-flow-with-visual>.progress-label{width:52.5%;margin-left:auto}}.question-count{font-size:.9375rem;font-weight:600;color:var(--ink-soft);margin:0 0 .5rem}.question-prompt{font-size:1.25rem;font-weight:700;line-height:1.45;color:var(--ink);margin:0 0 1.25rem;max-width:58rem;letter-spacing:-.015em}.question-instruction{font-size:.9375rem;color:var(--ink-soft);margin:0 0 .65rem;font-style:italic;max-width:58rem}.choices{display:grid;grid-gap:.75rem;gap:.75rem;margin:0 0 1.25rem;padding:0;list-style:none;max-width:58rem}.choice{display:flex;gap:.9rem;align-items:center;width:100%;font:inherit;font-size:1rem;text-align:left;color:var(--ink);background:var(--bg-raised);border:1.5px solid var(--line);border-radius:var(--radius);padding:.95rem 1.15rem;cursor:pointer;min-height:3.25rem;box-shadow:var(--shadow-sm);transition:all .15s ease}.choice:hover:not(:disabled){border-color:var(--accent);background:var(--accent-soft)}.choice:disabled{cursor:default}.choice-letter{flex:0 0 auto;width:1.85rem;height:1.85rem;border-radius:50%;border:1.5px solid var(--line-strong);background:var(--bg-sunk);display:grid;place-items:center;font-size:.875rem;font-weight:750;color:var(--ink-soft);transition:all .15s ease}.choice[data-state=selected]{border-color:var(--accent);background:var(--accent-soft);box-shadow:0 0 0 1px var(--accent)}.choice[data-state=selected] .choice-letter{border-color:var(--accent);background:var(--accent);color:var(--accent-ink)}.choice[data-state=correct]{border-color:var(--correct);background:var(--correct-soft);box-shadow:0 0 0 1px var(--correct)}.choice[data-state=correct] .choice-letter{border-color:var(--correct);background:var(--correct);color:var(--correct-ink)}.choice[data-state=wrong]{border-color:var(--wrong);border-style:dashed;background:var(--wrong-soft)}.choice[data-state=wrong] .choice-letter{border-color:var(--wrong);background:var(--wrong);color:var(--wrong-ink)}.choice-mark{margin-left:auto;font-size:.8125rem;font-weight:700;padding:.2rem .55rem;border-radius:var(--radius-sm)}.choice[data-state=correct] .choice-mark{background:var(--correct);color:var(--correct-ink)}.choice[data-state=wrong] .choice-mark{background:var(--wrong);color:var(--wrong-ink)}.choice[data-state=correct] .choice-mark:before{content:"\2713\00a0";content:"\2713\00a0"/""}.choice[data-state=wrong] .choice-mark:before{content:"\2715\00a0";content:"\2715\00a0"/""}.feedback{border-radius:var(--radius-lg);padding:1.35rem 1.5rem;margin:1.25rem 0 0;max-width:58rem;border:1.5px solid var(--line);box-shadow:var(--shadow);animation:fadeIn .25s ease-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.feedback[data-correct=true]{background:var(--correct-soft);border-color:var(--correct-border)}.feedback[data-correct=false]{background:var(--wrong-soft);border-color:var(--wrong-border)}.feedback-verdict{font-size:1.125rem;font-weight:800;margin:0 0 .5rem;display:flex;align-items:center;gap:.45rem}.feedback[data-correct=true] .feedback-verdict{color:var(--correct)}.feedback[data-correct=false] .feedback-verdict{color:var(--wrong)}.feedback p{margin:0 0 .75rem;line-height:1.6}.feedback-why{font-size:.9375rem;font-style:italic;color:var(--ink-soft);border-top:1px dashed var(--line-strong);padding-top:.65rem}.progress{margin-bottom:2rem;background:var(--bg-raised);padding:1rem 1.25rem;border-radius:var(--radius);border:1px solid var(--line);box-shadow:var(--shadow-sm)}.progress-track{width:100%;height:.5rem;background:var(--bg-sunk);border-radius:4px;overflow:hidden;margin-bottom:.65rem}.progress-fill{height:100%;background:var(--accent-gradient);border-radius:4px;transition:width .3s cubic-bezier(.16,1,.3,1)}.progress-label{font-size:.875rem;font-weight:650;color:var(--ink-soft);margin:0}.results-hero{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;background:var(--bg-raised);border:1px solid var(--line);border-radius:var(--radius-lg);padding:1.5rem;margin:1.5rem 0;box-shadow:var(--shadow);flex-wrap:wrap}.score-panel{flex:1 1 16rem}.score-percent{font-size:1.0625rem;color:var(--ink-soft);margin:.5rem 0 0}.results-mascot{flex:0 0 auto;width:140px;height:140px;border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow-md);border:1px solid var(--line)}.results-mascot-img{width:100%;height:100%;object-fit:cover;display:block}.score{display:inline-flex;align-items:baseline;gap:.75rem;margin:0;padding:0;background:transparent;border:none;box-shadow:none}.score-value{font-size:clamp(2.75rem,2rem + 3vw,4.25rem);font-weight:850;letter-spacing:-.04em;line-height:1;background:var(--accent-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.score-of{font-size:1.1875rem;font-weight:600;color:var(--ink-soft)}.breakdown{list-style:none;padding:0;margin:1.5rem 0;display:grid;grid-gap:.75rem;gap:.75rem}.breakdown-item{border:1px solid var(--line);border-left:4px solid var(--line-strong);border-radius:var(--radius);padding:1rem 1.25rem;background:var(--bg-raised);box-shadow:var(--shadow-sm);transition:transform .15s ease,box-shadow .15s ease}.breakdown-item[data-correct=true]{border-left-color:var(--correct)}.breakdown-item[data-correct=false]{border-left-color:var(--wrong)}.breakdown-q{font-weight:650;color:var(--ink);margin:0 0 .35rem}.breakdown-meta{font-size:.875rem;color:var(--ink-soft);margin:0;line-height:1.5}.rubric{width:100%;border-collapse:collapse;margin:1.5rem 0;font-size:.9375rem;background:var(--bg-raised);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}.rubric td,.rubric th{text-align:left;vertical-align:top;padding:.85rem 1rem;border-bottom:1px solid var(--line)}.rubric th{color:var(--ink);font-weight:700;background:var(--bg-sunk)}.visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);border:0}.site-foot{border-top:1px solid var(--line);background:var(--bg-raised);padding:3.5rem 0 2rem;font-size:.9375rem;color:var(--ink-soft);margin-top:4rem}.foot-grid{display:grid;grid-template-columns:1fr;grid-gap:2.5rem;gap:2.5rem;margin-bottom:2.5rem}@media (min-width:640px){.foot-grid{grid-template-columns:repeat(2,1fr)}}@media (min-width:960px){.foot-grid{grid-template-columns:1.4fr 1fr 1fr 1.2fr;gap:2.5rem}}.foot-brand-col{display:flex;flex-direction:column;gap:.85rem}.foot-brand{display:flex;align-items:center;gap:.75rem}.foot-desc{font-size:.875rem;line-height:1.6;color:var(--ink-soft);margin:0}.foot-privacy{font-size:.8125rem;color:var(--ink-faint);margin:0}.foot-privacy a{color:var(--ink-soft);text-decoration:underline;text-underline-offset:2px}.foot-privacy a:hover{color:var(--accent)}.foot-related{margin-top:1.75rem}.foot-heading{font-size:.9375rem;font-weight:750;color:var(--ink);margin:0 0 1rem;letter-spacing:-.01em}.foot-links{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.65rem}.foot-links a{color:var(--ink-soft);text-decoration:none;font-size:.875rem;transition:color .15s ease}.foot-links a:hover{color:var(--accent);text-decoration:underline}.foot-bottom{border-top:1px solid var(--line);padding-top:1.75rem}.disclaimer{font-size:.8125rem;color:var(--ink-faint);line-height:1.6;margin:0;max-width:64rem}@media (prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;transition-duration:.01ms!important}}.speaking-simulator{background:var(--bg-raised);border:1px solid var(--accent-border);border-radius:var(--radius-lg);padding:1.5rem;margin:1.75rem 0;box-shadow:var(--shadow-sm)}.simulator-header{margin-bottom:1.25rem;padding-bottom:.875rem;border-bottom:1px solid var(--line)}.simulator-status-row{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.75rem}.spec-indicator{display:inline-flex;align-items:center;gap:.5rem;font-size:.8125rem;color:var(--ink-soft)}.status-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.dot-green{background:#10b981;box-shadow:0 0 0 2px rgba(16,185,129,.2)}.dot-yellow{background:#f59e0b;box-shadow:0 0 0 2px rgba(245,158,11,.2)}.dot-red{background:#ef4444;box-shadow:0 0 0 2px rgba(239,68,68,.2)}.simulator-error{margin:.75rem 0 0;font-size:.8125rem;color:#dc2626;font-weight:500}.simulator-body{display:flex;flex-direction:column;gap:1.25rem}.simulator-controls{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:1rem}.btn-record{display:inline-flex;align-items:center;gap:.6rem;background:var(--accent);color:var(--accent-ink)!important;font-weight:600;font-size:.9375rem;padding:.75rem 1.5rem;border-radius:var(--radius);border:none;cursor:pointer;transition:all .2s ease;box-shadow:0 4px 12px rgba(224,0,0,.2)}.btn-record:hover{background:var(--accent-hover);transform:translateY(-1px);box-shadow:0 6px 16px rgba(224,0,0,.25)}.btn-stop{display:inline-flex;align-items:center;gap:.6rem;background:#1e293b;color:#ffffff!important;font-weight:600;font-size:.9375rem;padding:.75rem 1.5rem;border-radius:var(--radius);border:none;cursor:pointer;animation:pulse-ring 2s infinite}@keyframes pulse-ring{0%{box-shadow:0 0 0 0 rgba(224,0,0,.4)}70%{box-shadow:0 0 0 10px rgba(224,0,0,0)}to{box-shadow:0 0 0 0 rgba(224,0,0,0)}}.pulse-stop-square{width:12px;height:12px;background:#ef4444;border-radius:2px}.simulator-timer{display:flex;align-items:baseline;gap:.35rem;font-family:ui-monospace,monospace}.timer-display{font-size:1.5rem;font-weight:700;color:var(--ink)}.timer-target{font-size:.875rem;color:var(--ink-faint)}.recording-wave-wrap{display:flex;align-items:center;gap:1rem;background:var(--accent-soft);border:1px solid var(--accent-border);padding:.875rem 1.25rem;border-radius:var(--radius)}.recording-wave{display:flex;align-items:center;gap:4px;height:24px}.recording-wave .bar{width:4px;background:var(--accent);border-radius:2px;animation:sound-wave 1s ease-in-out infinite}.recording-wave .bar:first-child{height:12px;animation-delay:.1s}.recording-wave .bar:nth-child(2){height:20px;animation-delay:.25s}.recording-wave .bar:nth-child(3){height:24px;animation-delay:.15s}.recording-wave .bar:nth-child(4){height:16px;animation-delay:.35s}.recording-wave .bar:nth-child(5){height:8px;animation-delay:.2s}@keyframes sound-wave{0%,to{transform:scaleY(.4)}50%{transform:scaleY(1)}}.recording-listening-text{margin:0;font-size:.875rem;font-weight:500;color:var(--accent)}.transcript-box{background:var(--bg-sunk);border:1px solid var(--line);border-radius:var(--radius);padding:1.25rem}.transcript-box-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.75rem}.btn-link-edit{background:none;border:none;color:var(--accent);font-size:.8125rem;font-weight:600;cursor:pointer;padding:0}.btn-link-edit:hover{text-decoration:underline}.transcript-display{min-height:4rem}.transcript-text{margin:0;font-size:.9375rem;line-height:1.6;color:var(--ink)}.interim-text,.transcript-placeholder{color:var(--ink-faint);font-style:italic}.transcript-placeholder{margin:0;font-size:.875rem}.transcript-edit-area{display:flex;flex-direction:column;gap:.75rem}.transcript-textarea{width:100%;padding:.75rem;font-family:inherit;font-size:.9375rem;border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--bg-raised);color:var(--ink);resize:vertical}.btn-red-filled{align-self:flex-start;background:var(--accent);color:var(--accent-ink);border:none;padding:.45rem 1rem;border-radius:var(--radius-sm);font-size:.8125rem;font-weight:600;cursor:pointer}.btn-outline-red{background:transparent;color:var(--accent);border:1px solid var(--accent);padding:.35rem .75rem;border-radius:var(--radius-sm);font-size:.75rem;font-weight:600;cursor:pointer}.audio-playback-row{margin-top:1rem;padding-top:.875rem;border-top:1px solid var(--line);display:flex;flex-direction:column;gap:.5rem}.playback-label{font-size:.8125rem;font-weight:600;color:var(--ink-soft)}.simulator-audio-player{width:100%;height:38px}.evaluating-loader{display:flex;align-items:center;gap:.85rem;background:var(--bg-sunk);border:1px solid var(--line);padding:1rem 1.25rem;border-radius:var(--radius)}.evaluating-spinner{width:20px;height:20px;border:3px solid rgba(224,0,0,.2);border-top:3px solid var(--accent);border-radius:50%;animation:spin .8s linear infinite;flex-shrink:0}@keyframes spin{to{transform:rotate(1turn)}}.evaluating-text{margin:0;font-size:.875rem;color:var(--ink-soft);font-weight:500}.evaluation-card{background:var(--bg-raised);border:1px solid var(--line);border-radius:var(--radius);padding:1.5rem;display:flex;flex-direction:column;gap:1.5rem;box-shadow:var(--shadow-sm)}.eval-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:1rem;padding-bottom:1rem;border-bottom:1px solid var(--line)}.eval-ai-rationale{background:#f8fafc;border-left:3px solid #3b82f6;padding:.75rem 1rem;border-radius:0 var(--radius) var(--radius) 0}.ai-rationale-text{margin:0;font-size:.875rem;color:var(--ink-soft);line-height:1.55}.stat-sub{font-size:.75rem;color:var(--ink-soft)}.eval-subhead{margin:0 0 .65rem;font-size:.875rem;font-weight:700;color:var(--ink)}.green-head{color:#059669}.red-head{color:var(--accent)}.concept-list{margin:.35rem 0;font-size:.875rem;color:var(--ink-soft);line-height:1.5}.concept-list strong{font-weight:700}.concept-list-matched strong{color:#059669}.concept-list-missed strong{color:var(--ink-faint)}.eval-feedback-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:1.25rem;gap:1.25rem}@media (max-width:640px){.eval-feedback-grid{grid-template-columns:1fr}}.feedback-col{padding:1rem;border-radius:var(--radius);border:1px solid var(--line)}.strengths-col{background:#f0fdf4;border-color:#bbf7d0}.suggestions-col{background:var(--accent-soft);border-color:var(--accent-border)}.feedback-col ul{margin:0;padding-left:1.15rem;font-size:.8125rem;line-height:1.55;color:var(--ink-soft)}.feedback-col li+li{margin-top:.4rem}.eval-rubric-matched{background:var(--bg-sunk);border:1px solid var(--line);border-radius:var(--radius);padding:1rem 1.25rem}.rubric-matched-list{margin:0;padding-left:1.25rem;font-size:.8125rem;line-height:1.6;color:var(--ink-soft)}.rubric-matched-list li+li{margin-top:.35rem}.writing-editor-card{background:var(--bg-raised);border:1px solid var(--line);border-radius:var(--radius);padding:1.25rem;margin:1.5rem 0;display:flex;flex-direction:column;gap:1rem}.writing-editor-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.75rem}.writing-header-left,.writing-timer-row{display:inline-flex;align-items:center;gap:.5rem}.writing-textarea-wrapper{width:100%}.writing-textarea{width:100%;min-height:220px;padding:.85rem 1rem;font-family:inherit;font-size:1rem;line-height:1.6;color:var(--ink);background:var(--bg);border:1px solid var(--line);border-radius:var(--radius-sm);resize:vertical;transition:border-color .15s ease,box-shadow .15s ease}.writing-textarea:focus{outline:2px solid transparent;border-color:var(--accent);box-shadow:0 0 0 3px var(--focus)}.writing-stats-bar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.75rem;font-size:.8125rem;color:var(--ink-soft);border-top:1px solid var(--line);padding-top:.75rem}.writing-stat-group{gap:.5rem;flex-wrap:wrap}.checklist-item,.writing-stat-group{display:inline-flex;align-items:center}.checklist-item{gap:.6rem;font-size:.875rem;color:var(--ink);cursor:pointer}.checklist-item input[type=checkbox]{cursor:pointer}.prompt-runner-container{margin-top:1.5rem;max-width:72rem}.prompt-runner-header{background:var(--bg-raised);border:1px solid var(--line);border-radius:var(--radius);padding:1.25rem;margin-bottom:1.75rem}.prompt-runner-toolbar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.75rem;margin-bottom:1rem}.prompt-runner-meta{font-size:.9375rem;font-weight:600;color:var(--ink)}.prompt-progress-track{width:100%;height:.5rem;margin-bottom:0}.prompt-progress-track .progress-fill{background:var(--accent);transition:width .25s ease}.flush-heading{margin-top:0}.prompt-stepper-grid{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:1rem}.prompt-step-btn{display:inline-flex;align-items:center;justify-content:center;gap:.35rem;min-width:2.25rem;height:2.25rem;padding:0 .5rem;font-size:.875rem;font-weight:600;border-radius:var(--radius-sm);border:1px solid var(--line);background:var(--bg);color:var(--ink-soft);cursor:pointer;transition:all .15s ease}.prompt-step-btn:hover{background:var(--bg-sunk);color:var(--ink);border-color:var(--accent)}.prompt-step-btn.active{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.prompt-step-btn.completed{border-color:#10b981}.prompt-step-btn[data-summary=true]{padding-inline:.75rem}.prompt-nav-row{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:1rem;margin:2rem 0;padding-top:1.5rem;border-top:1px solid var(--line)}.prompt-summary-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));grid-gap:1rem;gap:1rem;margin:1.5rem 0}.prompt-summary-item{background:var(--bg-raised);border:1px solid var(--line);border-radius:var(--radius);padding:1rem;display:flex;flex-direction:column;gap:.5rem}.prompt-summary-top{display:flex;align-items:center;justify-content:space-between;font-size:.875rem;font-weight:600}@media (max-width:640px){main{padding-top:1.25rem}.panel,.prompt-runner-header,.speaking-simulator,.stimulus,.writing-editor-card{padding:1rem}.question{margin-bottom:2rem}.prompt-runner-toolbar{align-items:stretch}.prompt-runner-toolbar .btn{width:100%}.prompt-nav-row{display:grid;grid-template-columns:1fr 1fr}.prompt-nav-row>span{grid-column:1/-1;grid-row:1;text-align:center}.prompt-nav-row .btn{width:100%;padding-inline:.75rem}.choice{padding:.85rem}.choice-mark{padding-inline:.4rem;white-space:nowrap}}.answer-index{margin-top:2.5rem;border-top:1px solid var(--line);padding-top:1.5rem}.answer-index ol{padding-left:1.5rem}.answer-index li+li{margin-top:.35rem}.review-pager{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.75rem 1.5rem;margin:2rem 0;font-size:.9375rem}.review-pager a:last-child:not(:first-child){margin-left:auto;text-align:right}.writing-ai-feedback{margin-top:.85rem}.writing-ai-feedback .audio-hint{margin:.5rem 0 0}.writing-fix-list del{color:var(--ink-soft)}.writing-fix-list ins{text-decoration:none;font-weight:600}.page-updated{margin:-.75rem 0 1.5rem;font-size:.9375rem;color:var(--ink-soft);max-width:var(--measure)}.sample-question{margin:1.5rem 0 2rem;padding:1.25rem 1.25rem .5rem;background:var(--bg-raised);border:1px solid var(--line);border-radius:var(--radius-lg);max-width:58rem}.sample-question>h3{margin-top:0}.sample-question .choice{cursor:default;box-shadow:none}.sample-question .choice:hover:not(:disabled){border-color:var(--line);background:var(--bg-raised)}.sample-answer{margin:0 0 1rem}.sample-answer>summary{cursor:pointer;font-weight:700;color:var(--accent);padding:.5rem 0}.sample-answer[open]>summary{margin-bottom:.5rem}.table-scroll{overflow-x:auto;max-width:100%}.grade-tile h3 a{color:inherit;text-decoration:none}.grade-tile h3 a:after{content:" →";color:var(--accent)}.hero-section>.btn-row{margin:1rem 0 1.25rem}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:200 800;font-display:swap;src:url(/_next/static/media/6fe53d21e6e7ebd8-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:200 800;font-display:swap;src:url(/_next/static/media/8ebc6e9dde468c4a-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:200 800;font-display:swap;src:url(/_next/static/media/9e7b0a821b9dfcb4-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:200 800;font-display:swap;src:url(/_next/static/media/636a5ac981f94f8b-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Plus Jakarta Sans Fallback;src:local("Arial");ascent-override:98.88%;descent-override:21.15%;line-gap-override:0.00%;size-adjust:104.98%}.__className_532bb9{font-family:Plus Jakarta Sans,Plus Jakarta Sans Fallback;font-style:normal}.__variable_532bb9{--font-ui-face:"Plus Jakarta Sans","Plus Jakarta Sans Fallback"}@font-face{font-family:Newsreader;font-style:normal;font-weight:200 800;font-display:swap;src:url(/_next/static/media/7088c2b12ccac062-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Newsreader;font-style:normal;font-weight:200 800;font-display:swap;src:url(/_next/static/media/665e920483964785-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Newsreader;font-style:normal;font-weight:200 800;font-display:swap;src:url(/_next/static/media/5611c55482296524-s.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Newsreader Fallback;src:local("Times New Roman");ascent-override:69.68%;descent-override:25.12%;line-gap-override:0.00%;size-adjust:105.48%}.__className_f8a3c5{font-family:Newsreader,Newsreader Fallback;font-style:normal}.__variable_f8a3c5{--font-read-face:"Newsreader","Newsreader Fallback"}