:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--background:var(--lightningcss-light,#f3eee2)var(--lightningcss-dark,#0e1814);--paper:var(--lightningcss-light,#fffdf8)var(--lightningcss-dark,#15221d);--ink:var(--lightningcss-light,#15281f)var(--lightningcss-dark,#e9f0e8);--muted:var(--lightningcss-light,#3f4d45)var(--lightningcss-dark,#c6d3ca);--accent:var(--lightningcss-light,#24513a)var(--lightningcss-dark,#a9d7b5);--accent-hover:var(--lightningcss-light,#173a28)var(--lightningcss-dark,#c4e6cc);--action-ink:var(--lightningcss-light,#fff)var(--lightningcss-dark,#0e1814);--soft:var(--lightningcss-light,#e1e8d6)var(--lightningcss-dark,#1d2e27);--focus:var(--lightningcss-light,#2f6146)var(--lightningcss-dark,#8fd0a2);--line:var(--lightningcss-light,#cfd6c7)var(--lightningcss-dark,#2c3f37);--border:var(--lightningcss-light,#bcc6b3)var(--lightningcss-dark,#3a5047);--control-border:var(--lightningcss-light,#5a6b55)var(--lightningcss-dark,#8ba595);--shadow-rgb:21 40 31;--scrim:rgb(var(--shadow-rgb) / 35%);--chart-surface:var(--paper);--chart-area:var(--lightningcss-light,#c5dbc9)var(--lightningcss-dark,#2f5a40);--chart-learner:var(--accent);--chart-tutor:var(--lightningcss-light,#b8704a)var(--lightningcss-dark,#e0956a);--chart-outline:var(--accent);--chart-marker:var(--lightningcss-light,#b5603b)var(--lightningcss-dark,#e8a07a);--lamp-light:#f2b64a;--brand-sky:var(--lightningcss-light,#15281f)var(--lightningcss-dark,#1d2e27);--brand-sky-line:var(--lightningcss-light,#15281f)var(--lightningcss-dark,#3a5047);--brand-ring:#a9d7b5;--cat-1:var(--lightningcss-light,#2f7d50)var(--lightningcss-dark,#4f9f6b);--cat-2:var(--lightningcss-light,#3a62b8)var(--lightningcss-dark,#6380c9);--cat-3:var(--lightningcss-light,#c98a17)var(--lightningcss-dark,#b98420);--cat-4:var(--lightningcss-light,#7d4cb5)var(--lightningcss-dark,#9673c9);--cat-5:var(--lightningcss-light,#d0603a)var(--lightningcss-dark,#c9663f);--cat-6:var(--lightningcss-light,#1f9b8a)var(--lightningcss-dark,#1f9887);--seq-1:var(--lightningcss-light,#8cbf99)var(--lightningcss-dark,#2c6446);--seq-2:var(--lightningcss-light,#6aa77c)var(--lightningcss-dark,#3d8059);--seq-3:var(--lightningcss-light,#4d8c62)var(--lightningcss-dark,#56a06f);--seq-4:var(--lightningcss-light,#357149)var(--lightningcss-dark,#7bbd8f);--seq-5:var(--lightningcss-light,#225635)var(--lightningcss-dark,#a6d8b2);--seq-6:var(--lightningcss-light,#133b23)var(--lightningcss-dark,#d6f0dd);--feedback-correct-edge:var(--lightningcss-light,#4f6b3f)var(--lightningcss-dark,#8fc79b);--feedback-correct-fill:var(--lightningcss-light,#e6eedd)var(--lightningcss-dark,#1f3326);--feedback-wrong-edge:var(--lightningcss-light,#9a5a37)var(--lightningcss-dark,#e3a27c);--feedback-wrong-fill:var(--lightningcss-light,linen)var(--lightningcss-dark,#33241b);--feedback-mark:var(--lightningcss-light,#f6e7c8)var(--lightningcss-dark,#3d3320);--crossword-block:var(--lightningcss-light,#24513a)var(--lightningcss-dark,#050b08);--font-sans:"Figtree Variable", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-serif:"Fraunces Variable", Georgia, "Times New Roman", serif;--font-ipa:Georgia, "Times New Roman", serif;--space-group:32px;--space-block:48px;--space-section:64px;--measure:60ch;--site-header-height:112px}:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}html{scroll-padding-top:calc(var(--site-header-height) + 30px)}body{background:var(--background);color:var(--ink);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;overflow-wrap:anywhere;margin:0;line-height:1.7;overflow-x:clip}a{color:inherit;text-underline-offset:4px}button,input{font:inherit}a,button,input,summary{-webkit-tap-highlight-color:transparent}:focus-visible{outline:3px solid var(--focus);outline-offset:5px}button,.button-link{border:1px solid var(--accent);background:var(--accent);color:var(--action-ink);cursor:pointer;border-radius:6px;min-width:40px;min-height:40px;padding:9px 18px;font-size:14px;font-weight:600;line-height:1.4;transition:background-color .15s,border-color .15s}button:hover,.button-link:hover{background:var(--accent-hover)}h1,h2,h3,p{margin-top:0}p,dd,blockquote,figcaption{max-width:var(--measure)}h1,h2,h3{text-wrap:balance}p{text-wrap:pretty}h1,h2{letter-spacing:-.04em;font-weight:500}h1{font-size:clamp(38px,4.3vw,60px);line-height:1.13}h2{font-size:32px;line-height:1.2}em{font-family:var(--font-serif);font-weight:400}.page-shell{max-width:1220px;margin:auto;padding:0 48px}@media (min-width:1440px){.page-shell--wide{max-width:1800px}}.site-header{z-index:8;background:var(--background);border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:24px;min-height:112px;padding-block:22px;display:flex;position:sticky;top:0}.site-header:before{content:"";z-index:-1;background:var(--background);position:absolute;inset:0 calc(50% - 50vw)}.brand{letter-spacing:-.04em;flex-shrink:0;align-items:center;gap:12px;min-height:44px;font-size:18px;font-weight:650;text-decoration:none;display:inline-flex}.brand-mark{flex-shrink:0;width:42px;height:42px}.brand-word{font-family:var(--font-serif);letter-spacing:-.015em;padding-bottom:3px;font-size:28px;font-style:italic;font-weight:400;line-height:1}.site-header nav{flex-wrap:wrap;gap:4px;display:flex}.site-header nav a{min-width:44px;min-height:44px;color:var(--muted);border-radius:6px;align-items:center;padding:12px 10px;font-size:14px;text-decoration:none;display:inline-flex}.site-header nav a:hover{background:var(--soft);color:var(--ink)}.site-header nav a[aria-current]{color:var(--ink);background:var(--soft);font-weight:600}.header-actions{flex:1;align-items:center;gap:16px;min-width:0;margin-left:24px;display:flex}.header-actions .search-button{flex:460px;min-width:200px;max-width:460px;margin-right:auto}.header-actions .desktop-navigation{flex-shrink:0}.search-button-label{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.header-actions .search-button kbd{white-space:nowrap;flex-shrink:0;margin-left:auto}.mobile-search{display:none}.site-header .search-button{border:1px solid var(--border);background:var(--paper);min-width:44px;min-height:44px;color:var(--muted);border-radius:10px;align-items:center;gap:8px;padding:0 10px 0 14px;font-size:14px;font-weight:500;display:inline-flex}.site-header .search-button:hover{border-color:var(--control-border);background:var(--soft);color:var(--ink)}.site-header .search-button--compact{justify-content:center;padding:0}.search-button kbd,.search-dialog kbd{border:1px solid var(--border);background:var(--soft);color:var(--muted);font:600 12px/1.5 var(--font-sans);border-radius:5px;padding:1px 6px}.search-dialog{border:1px solid var(--border);background:var(--paper);width:min(640px,100vw - 32px);max-width:none;max-height:min(620px,100dvh - 96px);color:var(--ink);box-shadow:0 24px 64px rgb(var(--shadow-rgb) / 30%);border-radius:16px;margin:12vh auto auto;padding:0;overflow:hidden}.search-dialog::backdrop{background:var(--scrim);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.search-panel{max-height:inherit;flex-direction:column;display:flex}.search-field{border-bottom:1px solid var(--line);color:var(--muted);align-items:center;gap:12px;padding:14px 18px;display:flex}.search-field input{min-width:0;min-height:44px;color:var(--ink);background:0 0;border:0;outline:none;flex:1;font-size:18px}.search-field input::-webkit-search-cancel-button{display:none}.search-close{min-width:44px;min-height:44px;color:var(--muted);background:0 0;border:0;justify-content:center;align-items:center;padding:0 4px;display:inline-flex}.search-close:hover{color:var(--ink);background:0 0}.search-close span{font-size:14px;font-weight:600;display:none}.search-results{overscroll-behavior:contain;flex:1;margin:0;padding:8px;list-style:none;overflow-y:auto}.search-results ul{margin:0 0 8px;padding:0;list-style:none}.search-group{color:var(--accent);letter-spacing:.14em;text-transform:uppercase;margin:8px 10px 4px;font-size:12px;font-weight:650}.search-option{cursor:pointer;border-radius:10px;align-items:center;gap:12px;min-height:44px;padding:10px 12px;display:flex}.search-option-icon{width:20px;height:20px;color:var(--muted);flex-shrink:0}.search-option[aria-selected=true] .search-option-icon{color:var(--accent)}.search-option[data-depth] .search-option-icon{width:18px;height:18px}.search-option-text{flex:1;gap:2px;min-width:0;display:grid}.search-option[data-depth="1"]{margin-left:18px}.search-option[data-depth="2"]{margin-left:36px}.search-option[data-depth] .search-option-title{font-size:15px;font-weight:500}.search-option[data-depth]:not([aria-selected=true]){box-shadow:inset 1px 0 0 var(--line);border-radius:0 10px 10px 0}.search-expand{width:32px;min-width:32px;height:32px;min-height:32px;color:var(--muted);background:0 0;border:1px solid #0000;border-radius:8px;flex-shrink:0;place-items:center;padding:0;display:inline-grid}.search-expand:hover,.search-option[aria-selected=true] .search-expand{border-color:var(--border);background:var(--paper);color:var(--ink)}.search-expand svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:16px;height:16px;transition:transform .15s}.search-expand[data-open] svg{transform:rotate(90deg)}.search-option[aria-selected=true]{background:var(--soft);box-shadow:inset 3px 0 0 var(--accent)}.search-option-title{font-size:16px;font-weight:550}.search-option-subtitle,.search-option-match{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.search-option-match span{color:var(--ink);font-weight:600}.search-empty{color:var(--muted);margin:0;padding:28px 20px}.search-hints{border-top:1px solid var(--line);max-width:none;color:var(--muted);flex-wrap:wrap;gap:16px;margin:0;padding:10px 18px;font-size:13px;display:flex}@media (max-width:640px){.search-dialog{max-height:calc(100dvh - 24px);margin-top:12px}.search-hints,.search-close kbd{display:none}.search-close span{display:inline}}.site-header .theme-toggle{min-width:44px;min-height:44px;color:var(--muted);background:0 0;border:0;border-radius:6px;justify-content:center;align-items:center;gap:10px;padding:0 10px;font-size:14px;font-weight:500;display:inline-flex}.site-header .theme-toggle:hover{background:var(--soft);color:var(--ink)}.theme-lamp{flex-shrink:0;overflow:visible}.theme-lamp .lamp-body{transform-box:view-box;transform-origin:16px 0}.theme-lamp[data-swing=a] .lamp-body{animation:.9s cubic-bezier(.3,.7,.4,1) lamp-swing-a}.theme-lamp[data-swing=b] .lamp-body{animation:.9s cubic-bezier(.3,.7,.4,1) lamp-swing-b}.theme-lamp .lamp-glow,.theme-lamp .lamp-cone{opacity:0;transition:opacity .24s ease-out}.theme-lamp .lamp-bulb{fill:#0000;transition:fill .24s ease-out}.theme-toggle[aria-checked=true] .lamp-glow,.theme-toggle[aria-checked=true] .lamp-cone{opacity:1}.theme-toggle[aria-checked=true] .lamp-bulb{fill:var(--lamp-light);stroke:var(--lamp-light)}.theme-toggle[aria-checked=true] .theme-lamp[data-swing] .lamp-glow,.theme-toggle[aria-checked=true] .theme-lamp[data-swing] .lamp-cone{animation:.52s linear lamp-flicker}@keyframes lamp-swing-a{20%{rotate:14deg}45%{rotate:-9deg}65%{rotate:5deg}82%{rotate:-2deg}}@keyframes lamp-swing-b{20%{rotate:-14deg}45%{rotate:9deg}65%{rotate:-5deg}82%{rotate:2deg}}@keyframes lamp-flicker{0%{opacity:0}15%{opacity:.9}25%{opacity:.15}40%{opacity:1}52%{opacity:.5}to{opacity:1}}@media (prefers-reduced-motion:reduce){.theme-lamp .lamp-body,.theme-lamp .lamp-glow,.theme-lamp .lamp-cone{transition:none;animation:none!important}}.site-header .theme-toggle-label{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.site-header .study-navigation{position:relative}.site-header .study-navigation>summary{min-height:44px;color:var(--muted);cursor:pointer;border-radius:6px;align-items:center;gap:8px;padding:12px 10px;font-size:14px;list-style:none;display:flex}.site-header .study-navigation>summary::-webkit-details-marker{display:none}.site-header .study-navigation>summary:hover,.site-header .study-navigation[open]>summary,.site-header .study-navigation[data-active]>summary{color:var(--ink);background:var(--soft)}.site-header .study-navigation[data-active]>summary{font-weight:600}.site-header .study-navigation-panel{z-index:1;width:248px;max-height:calc(100dvh - var(--site-header-height) - 16px);border:1px solid var(--border);background:var(--paper);box-shadow:0 10px 28px rgb(var(--shadow-rgb) / 8%);border-radius:12px;gap:2px;padding:6px;display:grid;position:absolute;top:calc(100% + 8px);right:0;overflow-y:auto}.site-header .study-navigation:not([open]) .study-navigation-panel{display:none}.site-header .study-navigation-panel a{border-radius:8px;gap:12px;padding:10px 12px;line-height:1.4}.site-header .study-navigation-panel .navigation-icon{width:18px;height:18px;color:var(--accent);flex-shrink:0;display:block}.site-header .study-navigation-panel a[aria-current]:after{content:"";background:var(--accent);border-radius:50%;flex-shrink:0;width:6px;height:6px;margin-left:auto}.site-header .study-navigation-panel .study-navigation-overview{color:var(--ink);justify-content:space-between;font-weight:600}.site-header .study-navigation-panel .study-navigation-overview:after{display:none}.study-navigation-arrow{color:var(--accent)}@media (prefers-reduced-motion:no-preference){.study-navigation-arrow{transition:transform .18s}.study-navigation-overview:hover .study-navigation-arrow{transform:translate(3px)}}.study-navigation-divider{border:0;border-top:1px solid var(--line);margin:4px 12px}.skip-link{z-index:10;background:var(--paper);padding:14px;position:fixed;top:-100px}.skip-link:focus{top:12px}.eyebrow{text-transform:uppercase;letter-spacing:.16em;color:var(--accent);margin-bottom:16px;font-size:12px;font-weight:650;line-height:1.6}.home-hero{gap:var(--space-section);padding:var(--space-section) 0;grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);align-items:center;display:grid}.hero-copy h1{margin-bottom:23px}.hero-copy h1 em{color:var(--accent)}.tiny-star{vertical-align:middle;margin-right:8px;font-size:22px}.hero-description{max-width:425px;color:var(--muted);margin-bottom:28px;font-size:16px;line-height:1.8}.button-link{align-items:center;gap:16px;font-size:14px;text-decoration:none;display:inline-flex}.latest-card{background:var(--paper);border:1px solid var(--border);min-height:300px;box-shadow:7px 9px 0 var(--soft);border-radius:12px;flex-direction:column;padding:26px 30px;text-decoration:none;transition:border-color .18s;display:flex}a.latest-card:hover{border-color:var(--accent)}.latest-top{justify-content:space-between;align-items:center;gap:15px;margin-bottom:23px;display:flex}.latest-top .eyebrow{margin:0}.paper-star{color:var(--accent);font-size:38px}.latest-card time{color:var(--muted);font-size:13px}.latest-card h2{font-family:var(--font-serif);letter-spacing:-.03em;margin:15px 0 12px;font-size:32px;line-height:1.15}.latest-card p{color:var(--muted);margin-bottom:25px;font-size:14px}.latest-bottom{border-top:1px solid var(--line);justify-content:space-between;margin-top:auto;padding-top:17px;font-size:14px;font-weight:600;display:flex}.home-hero--growth{gap:var(--space-block);grid-template-columns:minmax(0,1fr)}.growth-card h1{margin:0 0 28px;font-size:44px}.growth-card h1 em{color:var(--accent)}.growth-card{flex-direction:column;min-width:0;display:flex}.growth-card .latest-top{margin-bottom:14px}.growth-card .paper-star{line-height:1}.growth-total{color:var(--muted);align-items:flex-end;gap:14px;margin:0 0 22px;font-size:14px;line-height:1.4;display:flex}.growth-total strong{font-family:var(--font-serif);letter-spacing:-.03em;color:var(--ink);font-variant-numeric:tabular-nums;font-size:56px;font-weight:400;line-height:.95}.growth-gain{color:var(--accent);font-weight:600}.growth-chart{--edge:max(48px, (100vw - 1220px) / 2 + 48px);width:100vw;margin:8px calc(50% - 50vw) 0}.growth-canvas{inset:0 var(--edge) 0 0;position:absolute}.growth-plot{height:clamp(260px,34vw,420px);position:relative}.growth-grid{border-top:1px solid var(--line);position:absolute;left:0;right:0}.growth-grid[data-next]{border-top-style:dashed;border-top-color:var(--border)}.growth-grid>span{left:var(--edge);white-space:nowrap;color:var(--muted);font-variant-numeric:tabular-nums;font-size:12px;position:absolute;bottom:4px}.growth-reveal,.growth-reveal svg{width:100%;height:100%;position:absolute;inset:0;overflow:visible}.growth-area{fill:var(--chart-area);opacity:.55}.growth-line{fill:none;stroke:var(--chart-learner);stroke-width:2.5px;stroke-linejoin:round;stroke-linecap:round;vector-effect:non-scaling-stroke}.growth-marker,.growth-end{background:var(--paper);border:2px solid var(--chart-learner);border-radius:50%;width:11px;height:11px;margin:-5.5px 0 0 -5.5px;position:absolute}.growth-marker[data-latest],.growth-end{background:var(--chart-learner)}.growth-end{width:13px;height:13px;box-shadow:0 0 0 5px color-mix(in srgb, var(--chart-learner) 22%, transparent);margin:-6.5px 0 0 -6.5px}.growth-marker-label{white-space:nowrap;background:var(--soft);border:1px solid var(--border);color:var(--ink);font-variant-numeric:tabular-nums;border-radius:20px;padding:3px 9px;font-size:12px;font-weight:600;position:absolute;bottom:calc(100% + 8px);left:-6px}.growth-marker[data-align=end] .growth-marker-label{margin-right:12px;bottom:50%;left:auto;right:50%}.growth-axis{padding:0 var(--edge) 0 16px;color:var(--muted);justify-content:space-between;margin-top:10px;font-size:12px;display:flex}html[data-motion=pending] .home-hero--growth .growth-reveal{clip-path:inset(-10% 102% -10% 0)}.growth-count{display:inline-block;position:relative}:is(html[data-motion=pending] .home-hero--growth,.home-hero--growth[data-running]) .growth-count:not([data-shown]){color:#0000}:is(html[data-motion=pending] .home-hero--growth,.home-hero--growth[data-running]) .growth-count:not([data-shown]):before{content:"";background:linear-gradient(100deg, transparent 30%, color-mix(in srgb, var(--accent) 10%, transparent) 50%, transparent 70%) 0 0 / 250% 100%, color-mix(in srgb, var(--soft) 55%, transparent);border-radius:999px;animation:3.2s ease-in-out infinite growth-shimmer;position:absolute;inset:16% -2% 12%}:is(html[data-motion=pending] .home-hero--growth,.home-hero--growth[data-running]) .growth-count:not([data-shown]):after{content:"";background:var(--accent);opacity:.5;clip-path:polygon(50% 0,59% 41%,100% 50%,59% 59%,50% 100%,41% 59%,0 50%,41% 41%);width:8px;height:8px;animation:3.6s ease-in-out infinite growth-twinkle;position:absolute;top:10%;right:-8px}.home-hero--growth[data-running] .growth-count[data-shown]{animation:.7s ease-out both growth-glow}@keyframes growth-shimmer{to{background-position:-250% 0,0 0}}@keyframes growth-glow{0%{opacity:0;text-shadow:0 0 10px color-mix(in srgb, var(--accent) 35%, transparent)}to{opacity:1;text-shadow:0 0 #0000}}html[data-motion=pending] .home-hero--growth :is(.growth-marker,.growth-end),.home-hero--growth[data-running] :is(.growth-marker,.growth-end):not([data-shown]){opacity:0;transform:scale(.4)}html[data-motion=pending] .home-hero--growth .growth-marker-label,.home-hero--growth[data-running] .growth-marker-label{opacity:0}.growth-marker,.growth-end,.growth-marker-label{transition:opacity .32s ease-out,transform .32s ease-out}.growth-sky{pointer-events:none;position:absolute;inset:0}.home-sky{z-index:9;pointer-events:none;width:100%;position:absolute;top:0;left:0}.growth-star{fill:var(--accent);opacity:.35;position:absolute;translate:-50% -50%}@media (prefers-reduced-motion:no-preference){.growth-star{opacity:0;animation:growth-twinkle var(--twinkle-duration) ease-in-out calc(1.9s + var(--twinkle-delay)) infinite}}.growth-planet{opacity:.85;position:absolute;overflow:visible;translate:-50% -50%}.growth-planet--ringed .growth-planet-light{stop-color:var(--accent);stop-opacity:.55}.growth-planet--ringed .growth-planet-shade{stop-color:var(--accent);stop-opacity:.06}.growth-planet--moon .growth-planet-light{stop-color:var(--chart-tutor);stop-opacity:.6}.growth-planet--moon .growth-planet-shade{stop-color:var(--chart-tutor);stop-opacity:.05}.growth-planet-ring{fill:none;stroke:var(--accent);stroke-width:2px;stroke-linecap:round;opacity:.5}.growth-planet-ring:last-child{opacity:.7}@media (prefers-reduced-motion:no-preference){.growth-planet{animation:growth-drift var(--drift-duration) ease-in-out var(--drift-delay) infinite alternate}}@keyframes growth-drift{0%{transform:translateY(-5px)rotate(-3deg)}to{transform:translateY(5px)rotate(3deg)}}@keyframes growth-twinkle{0%,to{opacity:.08;transform:scale(.6)}50%{opacity:.7;transform:scale(1)}}.growth-marker[data-latest]:after{content:"";border:2px solid var(--chart-learner);opacity:0;pointer-events:none;border-radius:50%;position:absolute;inset:-2px}.home-hero--growth[data-running] .growth-marker[data-latest][data-shown]:after{animation:.9s ease-out both growth-ring}@keyframes growth-ring{0%{opacity:.7;transform:scale(1)}to{opacity:0;transform:scale(3.2)}}.home-hero--growth[data-highlight] .growth-marker[data-latest]{transform:scale(1.35)}.home-hero--growth[data-highlight] .growth-grid[data-milestone]{border-top-color:var(--accent)}.home-hero--growth[data-highlight] .growth-grid[data-milestone]>span{color:var(--accent);font-weight:650}.growth-grid,.growth-grid>span{transition:border-color .18s,color .18s}.growth-plot{touch-action:pan-y;cursor:crosshair;outline:none}.growth-plot:focus-visible{outline:3px solid var(--focus);outline-offset:8px;border-radius:4px}.growth-cursor{background:var(--ink);border:2px solid var(--chart-learner);pointer-events:none;border-radius:50%;width:13px;height:13px;margin:-6.5px 0 0 -6.5px;position:absolute}.growth-guide{border-left:1px dashed var(--control-border);pointer-events:none;position:absolute;bottom:0}.home-hero--growth[data-scrubbing] .growth-marker-label{opacity:0}@media (prefers-reduced-motion:reduce){.growth-marker,.growth-end,.growth-marker-label,.growth-grid,.growth-grid>span{transition:none}}.learning-stats{border-block:1px solid var(--line);padding:24px 0;container-type:inline-size}.home-stat-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:0;padding:0;list-style:none;display:grid}.home-stat-grid>li{min-width:0}.home-stat{border-radius:8px;flex-direction:column;height:100%;padding:16px;text-decoration:none;transition:background-color .15s;display:flex}.home-stat:hover{background:var(--soft)}.home-stat-icon{color:var(--accent);justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.home-stat-icon svg{width:22px;height:22px}.home-stat-value{font-family:var(--font-serif);font-variant-numeric:tabular-nums;overflow-wrap:anywhere;flex-wrap:wrap;gap:0 8px;font-size:40px;font-weight:400;line-height:1.2;display:flex}.home-stat-value>span{white-space:nowrap}.home-stat-value small{font:16px var(--font-sans)}.home-stat-label{margin-top:8px;font-size:14px;line-height:1.5}.home-stat-detail{color:var(--accent);font-variant-numeric:tabular-nums;margin-top:2px;font-size:13px;line-height:1.5}@container (max-width:240px){.home-stat-grid{grid-template-columns:minmax(0,1fr)}}.recent-section{padding:var(--space-section) 0 0}.section-heading{justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:24px;display:flex}.section-heading .eyebrow{margin-bottom:8px}.section-heading h2{margin:0}.text-link{white-space:nowrap;align-items:center;gap:15px;font-size:14px;font-weight:600;display:inline-flex}.text-link--continuous{text-decoration:none}.text-link-content{align-items:center;gap:inherit;border-bottom:1px solid;padding-bottom:2px;display:inline-flex}.text-link--continuous:hover{color:var(--accent)}.lesson-list{border-top:1px solid var(--line);margin:0;padding:0;list-style:none}.lesson-row{border-bottom:1px solid var(--line);grid-template-columns:72px minmax(0,1fr) auto 18px;grid-template-areas:"date info stats arrow";align-items:center;gap:16px;padding:27px 10px;text-decoration:none;transition:background .15s;display:grid}.lesson-row:hover{background:var(--soft)}.lesson-date{white-space:nowrap;font-variant-numeric:tabular-nums;color:var(--muted);grid-area:date;font-size:13px}.lesson-info{grid-area:info;min-width:0}.lesson-row-stats{color:var(--muted);flex-wrap:nowrap;grid-area:stats;justify-self:end;gap:16px;margin:0;font-size:14px;display:flex}.lesson-row-stats dd{white-space:nowrap;align-items:center;gap:5px;margin:0;display:flex}.lesson-row-stats svg{flex-shrink:0;width:16px;height:16px}.lesson-row-stats strong{color:var(--ink);font-variant-numeric:tabular-nums;font-size:16px;font-weight:600}.lesson-info :is(h3,h4){letter-spacing:-.015em;margin:0 0 7px;font-size:17px;font-weight:500;line-height:1.4}.lesson-row-meta>.tutor-identity{color:var(--muted);font-size:13px}.topic-label,.lesson-badge{letter-spacing:normal;border-radius:20px;padding:4px 10px;font-size:13px;font-weight:500;line-height:1.5}.lesson-badge{white-space:nowrap;background:var(--soft);color:var(--accent);display:inline-block}.row-arrow{color:var(--accent);grid-area:arrow;font-size:21px}.site-footer{margin-top:var(--space-section);padding:var(--space-group) 0 32px;border-top:1px solid var(--line);color:var(--muted)}.site-map{grid-template-columns:repeat(6,minmax(0,1fr));gap:28px 24px;display:grid}.site-map h2{min-height:32px;color:var(--ink);letter-spacing:0;align-items:center;margin:0 0 6px;font-size:14px;font-weight:650;line-height:1.4;display:flex}.site-map ul{gap:2px;margin:0;padding:0;list-style:none;display:grid}.site-map a{min-height:32px;color:var(--muted);align-items:center;font-size:14px;line-height:1.35;text-decoration:none;display:inline-flex}.site-map h2 a{color:var(--ink);font-size:14px}.site-map a:hover{color:var(--accent);text-decoration:underline}.site-footer-bottom{margin-top:var(--space-group);border-top:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;gap:12px 20px;padding-top:20px;font-size:13px;display:flex}.footer-brand{align-items:center;gap:10px;display:inline-flex}.footer-brand-mark{width:28px;height:28px}.footer-brand-word{color:var(--ink);font-family:var(--font-serif);letter-spacing:-.015em;font-size:19px;font-style:italic;line-height:1}.footer-meta{min-height:44px;color:var(--muted);text-underline-offset:4px;align-items:center;display:inline-flex}.footer-meta:hover{color:var(--accent)}.footer-meta-links{flex-wrap:wrap;gap:0 20px;display:flex}.page-heading{padding:var(--space-section) 0 var(--space-group);max-width:800px}.page-breadcrumb{color:var(--muted);margin-top:16px;font-size:14px}.page-breadcrumb ol{flex-wrap:wrap;align-items:center;gap:0 6px;margin:0;padding:0;list-style:none;display:flex}.page-breadcrumb li{align-items:center;gap:6px;min-width:0;display:inline-flex}.page-breadcrumb a{min-height:44px;color:var(--accent);text-decoration-line:underline;-webkit-text-decoration-color:color-mix(in srgb, currentColor 30%, transparent);text-decoration-color:color-mix(in srgb, currentColor 30%, transparent);text-underline-offset:4px;align-items:center;gap:6px;font-weight:500;text-decoration-thickness:1px;transition:color .15s,text-decoration-color .15s;display:inline-flex}.page-breadcrumb a:hover{color:var(--accent-hover);text-decoration-color:currentColor}.page-breadcrumb-icon{flex:none;width:16px;height:16px}.page-breadcrumb-separator{fill:none;stroke:currentColor;stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round;opacity:.55;flex:none;width:14px;height:14px}.page-breadcrumb [aria-current=page]{text-overflow:ellipsis;white-space:nowrap;max-width:min(48ch,100%);overflow:hidden}main>.page-breadcrumb+.page-heading{padding-top:8px}@media (max-width:560px){.page-breadcrumb{margin-top:8px}.page-breadcrumb li:first-child a span{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.page-breadcrumb li:first-child a{justify-content:center;min-width:44px;margin-inline:-14px}}.page-heading h1{margin:0 0 18px}.page-heading>p:last-child,.page-description{color:var(--muted);margin-bottom:0;font-size:15px;line-height:1.8}.search-form{background:var(--soft);border-radius:10px;margin:0 0 48px;padding:22px 25px}.search-form label{margin-bottom:10px;font-size:13px;font-weight:600;display:block}.search-controls{align-items:center;gap:10px;display:flex}.search-controls input{border:1px solid var(--control-border);background:var(--paper);min-width:0;min-height:44px;color:var(--ink);border-radius:6px;flex:1;padding:13px 15px;font-size:14px}.clear-search{padding:10px;font-size:14px}.count-label{color:var(--muted);white-space:nowrap;font-size:13px}.library-section .section-heading h2{font-size:24px}.empty-state{padding:var(--space-block) var(--space-group);border:1px solid var(--border);background:var(--paper);border-radius:10px}.empty-state h3{font-size:21px;font-weight:500}.empty-state p{color:var(--muted);line-height:1.7}.empty-state p:last-child{margin-bottom:0}.content-state{margin:var(--space-section) auto;max-width:800px;padding:var(--space-block)}.content-state h1{font-size:38px}.lesson-heading{max-width:930px;padding-top:4px}.lesson-heading h1{font-size:clamp(34px,4vw,54px)}.meta-dot{margin:0 9px}.lesson-jump{border-bottom:1px solid var(--line);gap:25px;margin-bottom:8px;padding-bottom:17px;display:flex}.lesson-jump a{font-size:14px;text-decoration:none}.lesson-jump a:hover{text-decoration:underline}.lesson-jump a[aria-current=location]{color:var(--accent);text-underline-offset:6px;text-decoration:underline;text-decoration-thickness:2px}.lesson-jump .jump-count{background:var(--soft);border-radius:12px;margin-left:5px;padding:2px 7px;font-size:12px;display:inline-block}.summary-panel{background:var(--paper);border:1px solid var(--border);padding:var(--space-block);border-radius:10px}.prose{overflow-wrap:anywhere;max-width:800px;margin:auto;font-size:16px;line-height:1.8}.prose h2{margin-bottom:22px;font-size:29px}.prose h3{margin:var(--space-group) 0 12px;letter-spacing:-.025em;font-size:20px;font-weight:600}.prose h4{margin-top:28px;font-size:18px}.prose li{margin-bottom:8px;padding-left:5px}.prose ul,.prose ol{padding-left:24px}.prose blockquote{border-left:3px solid var(--accent);background:var(--soft);margin:25px 0;padding:10px 22px}.prose blockquote p:last-child{margin:0}.prose code{background:var(--soft);border-radius:3px;padding:2px 5px;font-size:.85em}.prose pre{background:var(--soft);padding:16px;overflow:auto}.prose hr{border:0;border-top:1px solid var(--line);margin:28px 0}.table-scroll{max-width:100%;overflow-x:auto}.prose table,.cefr-table{border-collapse:collapse;width:100%;font-size:14px}.prose th,.prose td,.cefr-table th,.cefr-table td{border:1px solid var(--border);text-align:left;padding:10px 15px}.prose th,.cefr-table thead th{background:var(--soft)}.image-description{color:var(--muted);font-style:italic}.review-section{margin-top:var(--space-section)}.section-description{color:var(--muted);font-size:14px;line-height:1.7}.review-notes{gap:12px;width:100%;max-width:none;margin:28px auto 0;padding:0;list-style:none;display:grid}.note-card{border:1px solid var(--border);background:var(--paper);border-radius:12px;overflow:hidden}.note-card summary{cursor:pointer;align-items:center;gap:20px;padding:23px 26px;list-style:none;display:flex}.note-card summary::-webkit-details-marker{display:none}.note-card summary:hover{background:var(--soft)}.note-number{color:var(--muted);font-variant-numeric:tabular-nums;font-size:13px}.note-prompt{flex:1;min-width:0;font-size:15px;line-height:1.6}.note-toggle{color:var(--accent);white-space:nowrap;font-size:12px;font-weight:600}.when-open{display:none}.note-card[open] .when-open{display:inline}.note-card[open] .when-closed{display:none}.note-card[open] summary{background:var(--soft);border-bottom:1px solid var(--line)}.note-content{padding:24px 32px}.note-content .eyebrow{margin-bottom:8px}.note-answer{max-width:var(--measure);font-size:25px;font-family:var(--font-serif);margin-bottom:27px;line-height:1.5}.note-content dl{gap:20px;margin:0;display:grid}.note-content dt{color:var(--muted);text-transform:uppercase;letter-spacing:.06em;margin-bottom:7px;font-size:12px;font-weight:650}.note-content dd{max-width:var(--measure);overflow-wrap:anywhere;margin:0;font-size:14px;line-height:1.8}.tags{flex-wrap:wrap;gap:6px;margin:26px 0 0;padding:0;list-style:none;display:flex}.tags li{color:var(--muted);border:1px solid var(--border);border-radius:20px;padding:4px 9px;font-size:12px}@media (max-width:950px){.page-shell{padding:0 30px}.home-hero{gap:32px}.hero-copy h1{font-size:44px}.latest-card{padding:24px}.growth-chart{--edge:30px}.latest-card h2{font-size:29px}.home-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.site-map{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:680px){.page-shell{padding:0 22px}.site-header{flex-direction:column;align-items:flex-start;gap:16px}.brand{gap:8px;font-size:16px}.brand-mark{width:34px;height:34px}.brand-word{font-size:24px}.site-header nav{gap:0}.site-header nav a{padding:14px 10px;font-size:13px}.home-hero{gap:var(--space-group);padding:var(--space-block) 0;grid-template-columns:1fr}.hero-copy h1{font-size:42px}.hero-description{font-size:15px}.latest-card{min-height:255px;box-shadow:4px 5px 0 var(--soft);transform:none}.growth-chart{--edge:22px}.growth-total strong{font-size:46px}.growth-card h1{margin-bottom:22px;font-size:34px}.latest-card h2{max-width:300px}.home-stat-grid{gap:12px 8px}.home-stat{padding:10px 4px}.home-stat-value{gap:0 6px;font-size:32px}.home-stat-value small{font-size:14px}.section-heading{align-items:center;gap:15px}.section-heading h2{font-size:26px}.text-link{gap:8px;font-size:13px}.recent-section{padding-top:var(--space-block)}.lesson-row{grid-template-columns:minmax(0,1fr) 18px;grid-template-areas:"date arrow""info arrow";gap:10px;padding:23px 0}.lesson-date{font-size:12px}.lesson-row-stats{grid-area:auto/1/auto/-1;justify-self:start;gap:8px;max-width:100%;font-size:13px;overflow-x:auto}.lesson-row-stats dd{gap:4px}.lesson-row-stats svg{width:14px;height:14px}.lesson-row-stats strong{font-size:14px}.lesson-info :is(h3,h4){font-size:16px}.row-arrow{font-size:19px}.site-footer{margin-top:var(--space-block)}.site-map{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 16px}.site-map a{min-height:44px}.site-map ul{gap:0}.page-heading{padding:var(--space-block) 0 24px}.page-heading h1{font-size:38px}.page-heading>p:last-child,.page-description{font-size:14px}.search-form{margin-bottom:32px;padding:18px}.search-controls{flex-wrap:wrap}.search-controls input{flex-basis:100%;width:100%}.library-section .section-heading h2{font-size:21px}.content-state{margin-top:var(--space-block);padding:28px}.content-state h1{font-size:32px}.lesson-heading{padding-top:8px}.lesson-jump{gap:18px}.lesson-jump a{font-size:13px}.summary-panel{padding:26px 21px}.prose{font-size:15px}.prose h2{font-size:25px}.prose h3{font-size:19px}.note-card summary{flex-wrap:wrap;gap:12px;padding:20px 17px}.note-prompt{flex-basis:calc(100% - 38px);font-size:14px}.note-toggle{margin-left:29px}.note-content{padding:24px}.note-answer{font-size:23px}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}.materials-panel{margin-block:3rem}.materials-panel h2{font-size:clamp(1.6rem,4vw,2.2rem)}.materials-list{padding:0;list-style:none}.materials-list>li{border:1px solid var(--border);background:var(--paper);border-radius:12px;margin-block:12px;padding:16px 20px}.materials-list h3{overflow-wrap:anywhere;margin:0}.material-size,.preview-help{color:var(--muted);font-size:.875rem}.material-actions{flex-wrap:wrap;align-items:center;gap:1rem;display:flex}.material-actions button{cursor:pointer;border:1px solid var(--accent);color:var(--accent);font:inherit;background:0 0;border-radius:.5rem;padding:.6rem 1rem;font-weight:600}.material-actions button:hover{background:var(--soft)}.material-actions a{color:var(--accent);text-underline-offset:.2em}.pdf-preview{border:1px solid var(--border);background:var(--paper);border-radius:.5rem;width:100%;height:min(75vh,800px)}.lesson-jump{flex-wrap:wrap}.sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.tutor-identity{vertical-align:middle;align-items:center;gap:.65rem;display:inline-flex}.tutor-avatar{background:var(--soft);width:40px;height:40px;color:var(--accent);border:1px solid var(--border);border-radius:50%;flex:0 0 40px;justify-content:center;align-items:center;font-size:.875rem;font-weight:600;display:inline-flex;overflow:hidden}.tutor-avatar img{object-fit:cover;width:100%;height:100%}.search-form.library-layout{background:0 0;grid-template:"filters search""filters results"1fr/260px minmax(0,1fr);align-items:start;gap:32px;padding:0;display:grid}.filter-sidebar{background:var(--soft);border-radius:12px;grid-area:filters;min-width:0;padding:22px}.library-content{grid-area:results;min-width:0}.library-search{grid-area:search;min-width:0}.lesson-filters,.tutor-picker{border:0;min-width:0;margin:0;padding:0}.lesson-filters>legend{margin-bottom:1.5rem;font-size:1rem;font-weight:600}.tutor-picker legend{margin-bottom:.8rem;font-size:.875rem;font-weight:600}.tutor-options{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.search-form .tutor-option{cursor:pointer;border:1px solid #0000;border-radius:10px;align-items:center;gap:12px;min-height:44px;margin:0;padding:8px;font-size:14px;line-height:1.5;display:flex}.tutor-option input{width:16px;height:16px;accent-color:var(--accent);flex:0 0 16px}.tutor-option-face,.tutor-option-face .tutor-avatar{flex:0 0 36px;width:36px;height:36px;display:flex}.tutor-option:has(input:checked){background:var(--paper);border-color:var(--accent);color:var(--accent)}.tutor-option:has(input:focus-visible){outline:3px solid var(--focus);outline-offset:3px}.tutor-option input:focus-visible{outline:none}.tutor-option:hover{background:var(--paper)}.filter-disclosure>summary{cursor:pointer;align-items:center;gap:12px;min-height:44px;padding:8px;font-size:14px;font-weight:600;list-style:none;display:flex}.filter-disclosure>summary::-webkit-details-marker{display:none}.filter-disclosure>summary:after{content:"+";margin-left:auto}.filter-disclosure[open]>summary:after{content:"−"}.filter-selection-count{background:var(--paper);color:var(--accent);border-radius:20px;padding:0 8px}@media (min-width:960px){.filter-disclosure>summary{display:none}.filter-disclosure::details-content{content-visibility:visible}.filter-disclosure>.filter-body{display:block}}@media (max-width:959px){.search-form.library-layout{grid-template:"search""filters""results"/minmax(0,1fr);gap:24px}.filter-sidebar{padding:8px 12px}.filter-body{padding:16px 8px 8px}}.tutor-hint{color:var(--muted);margin:0 0 .8rem;font-size:.8125rem;line-height:1.5}.explore-section{padding-top:var(--space-block)}.section-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:24px 0 0;padding:0;list-style:none;display:grid}.section-grid a{border:1px solid var(--border);border-radius:12px;height:100%;padding:24px;text-decoration:none;display:block}.section-grid a:hover{background:var(--soft)}.section-grid :is(h2,h3,h4){justify-content:space-between;gap:16px;margin:0 0 12px;font-size:18px;font-weight:500;display:flex}.section-grid a.has-preview{padding-top:0;overflow:hidden}.game-preview{--sky:#15281f;--sky-ink:#e9f0e8;--sky-accent:#a9d7b5;--sky-line:#e9f0e82e;border-bottom:1px solid var(--border);background-color:var(--sky);background-image:radial-gradient(circle at 1px 1px,#e9f0e833 1px,#0000 0),radial-gradient(circle at 1px 1px,#e9f0e81a 1px,#0000 0);background-position:7px 11px,0 0;background-size:46px 46px,17px 17px;justify-content:center;align-items:center;height:172px;margin:0 -24px 20px;display:flex}.game-preview>div{transition:transform .25s}.section-grid a:hover .game-preview>div{transform:scale(1.05)}.preview-memory{grid-template-columns:repeat(4,60px);gap:8px;display:grid}.preview-card{border:1px solid var(--sky-line);background:#00000026;border-radius:6px;place-items:center;gap:4px;height:46px;display:grid}.preview-card svg{width:30px;height:30px}.preview-ring{fill:none;stroke:var(--sky-accent);stroke-width:1.4px;opacity:.45}.preview-star{fill:var(--lamp-light)}.preview-moon{fill:#cfe6d4}.preview-card.is-open{border-color:var(--sky-accent);background:#1d2e27;align-content:center}.preview-card b{font:400 14px/1 var(--font-serif);color:var(--sky-accent)}.preview-card i{background:#e9f0e88c;border-radius:1px;width:34px;height:2px;display:block}.preview-card i:last-child{width:22px}.preview-letters{font:700 14px/26px var(--font-serif);color:var(--sky-ink);text-align:center;grid-template-columns:repeat(8,26px);gap:3px;display:grid}.preview-letters span{opacity:.85;background:#0000002e;border-radius:3px}.preview-letters .is-found{text-underline-offset:2px;opacity:1;background:#a9d7b552;text-decoration:underline}.preview-letters .is-hinted{outline:1.5px dashed var(--sky-accent);outline-offset:-2px;opacity:1}.preview-crossword{font:700 15px/28px var(--font-serif);color:var(--sky-ink);text-align:center;grid-template-columns:repeat(7,28px);gap:3px;display:grid}.preview-crossword span{background:#31503f;height:28px}.preview-crossword .is-block{background:0 0}.preview-crossword .is-solved{color:var(--sky-accent);text-underline-offset:2px;text-decoration:underline}.preview-crossword .is-active{box-shadow:inset 0 0 0 1.5px var(--sky-accent);background:#1d2e27}.preview-typing{color:var(--sky-ink);justify-items:center;gap:14px;display:grid}.preview-typing p{opacity:.8;margin:0;font-size:13px}.preview-typing-slots{font:600 22px/30px var(--font-serif);gap:6px;display:flex}.preview-typing-slots span{text-align:center;border-bottom:2px solid var(--sky-line);width:22px;height:32px}.preview-typing-slots span:not(:empty){color:var(--sky-accent);border-color:var(--sky-accent)}.preview-typing-slots .is-caret{border-color:var(--sky-ink)}@media (prefers-reduced-motion:reduce){.game-preview>div{transition:none}.section-grid a:hover .game-preview>div{transform:none}}.exam-destinations{grid-template-columns:repeat(2,minmax(0,1fr));max-width:920px}.exam-destinations a{padding:28px}.exam-destinations h2{font-size:20px}.section-grid p,.section-placeholder p{color:var(--muted);margin-bottom:0;font-size:14px;line-height:1.7}.section-placeholder{border:1px solid var(--border);background:var(--paper);border-radius:12px;max-width:760px;padding:28px}.section-placeholder :is(h2,h3){margin-bottom:16px;font-size:23px}.section-placeholder--compact{background:0 0;border-style:dashed;padding:20px 24px}.section-placeholder--compact :is(h2,h3){margin-bottom:8px;font-size:18px}.section-placeholder--compact .text-link{min-height:44px;margin-top:8px}.study-section-grid{gap:var(--space-block);margin-top:var(--space-group);grid-template-columns:minmax(0,1fr);display:grid}.study-section{border-top:1px solid var(--line);min-width:0;padding-top:24px}.study-section h2{margin-bottom:8px;font-size:26px}.study-section h2 a{align-items:center;gap:10px;text-decoration:none;display:inline-flex}.study-section h2 a:hover{color:var(--accent);text-decoration:underline}.study-section h2 a span:last-child{font-size:20px}.study-section>p{color:var(--muted);margin-bottom:24px;font-size:14px}.study-section .section-grid{margin-top:16px}.study-section .section-placeholder{padding:20px}.study-section .section-placeholder .button-link{margin-top:20px;text-decoration:none;display:inline-flex}.alphabet-heading{max-width:850px}.alphabet-introduction{border:1px solid var(--border);background:var(--paper);border-radius:12px;max-width:850px;margin-bottom:48px;padding:24px 28px}.alphabet-introduction h2{margin-bottom:12px;font-size:23px}.alphabet-introduction p{color:var(--muted);margin-bottom:8px}.alphabet-introduction p:last-child{margin-bottom:0}.inline-ipa,.alphabet-name-ipa,.alphabet-word-ipa{font-family:var(--font-ipa)}.alphabet-section-heading{justify-content:space-between;align-items:end;gap:24px;margin-bottom:16px;display:flex}.alphabet-section-heading h2,.alphabet-section-heading .eyebrow{margin-bottom:0}.alphabet-section-heading>p{color:var(--muted);white-space:nowrap;margin-bottom:4px;font-size:14px}.alphabet-audio-status{min-height:24px;color:var(--muted);margin-bottom:16px;font-size:14px}.alphabet-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:0;padding:0;list-style:none;display:grid}.alphabet-card{border:1px solid var(--border);background:var(--paper);border-radius:12px;min-width:0;overflow:hidden}.alphabet-card-heading{justify-content:space-between;align-items:center;gap:16px;padding:24px;display:flex}.alphabet-card-heading h3{font-family:var(--font-serif);letter-spacing:0;margin-bottom:2px;font-size:38px;line-height:1}.alphabet-card-heading h3 span{color:var(--muted);font-size:27px;font-weight:400}.alphabet-name-ipa{color:var(--muted);margin:0;font-size:17px}.alphabet-listen,.alphabet-example-listen{justify-content:center;align-items:center;gap:8px;padding:10px 12px;font-size:14px;display:inline-flex}.alphabet-listen span,.alphabet-example-listen span{font-size:12px}.alphabet-details{border-top:1px solid var(--line)}.alphabet-details summary{min-height:48px;color:var(--accent);cursor:pointer;padding:12px 24px;font-size:14px;font-weight:600}.alphabet-details summary span{color:var(--muted);font-weight:400}.alphabet-details summary:focus-visible{outline-offset:-5px;border-radius:8px}.alphabet-details ul{margin:0;padding:0 24px 16px;list-style:none}.alphabet-details li{border-top:1px solid var(--line);align-items:center;gap:12px;padding:14px 0;display:flex}.alphabet-example-copy{flex:1;min-width:0}.alphabet-example-copy p{margin:0}.alphabet-example-word{font-size:16px;font-weight:600}.alphabet-example-word mark{border-bottom:2px solid var(--accent);background:var(--soft);color:var(--ink)}.alphabet-word-ipa{color:var(--muted);margin-left:8px;font-size:14px;font-weight:400}.alphabet-sound,.alphabet-note{color:var(--muted);font-size:13px;line-height:1.5}.alphabet-example-listen{min-width:44px;color:var(--accent);background:0 0;padding-inline:10px}.alphabet-example-listen:hover{background:var(--soft)}.alphabet-noscript{color:var(--muted);margin-top:16px}.pronunciation-tips{margin-top:64px}.pronunciation-tip-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:24px;display:grid}.pronunciation-tip-grid article{border-top:1px solid var(--control-border);padding:24px}.pronunciation-tip-grid h3{font-family:var(--font-serif);margin-bottom:8px;font-size:20px;font-weight:400}.pronunciation-tip-grid p{color:var(--muted);margin:0;font-size:14px}@media (max-width:950px){.alphabet-grid,.pronunciation-tip-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:620px){.alphabet-section-heading{display:block}.alphabet-section-heading>p{white-space:normal;margin-top:12px}.alphabet-grid,.pronunciation-tip-grid{grid-template-columns:minmax(0,1fr)}.alphabet-card-heading,.alphabet-details ul,.alphabet-details summary{padding-inline:18px}}@media (max-width:360px){.alphabet-details li{flex-direction:column;align-items:flex-start}.alphabet-example-listen{align-self:stretch}}@media (max-width:950px){.site-header{flex-direction:column;align-items:flex-start;gap:16px}.section-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:480px){.section-grid{grid-template-columns:minmax(0,1fr)}}.navigation-icon,.mobile-theme{display:none}@media (min-width:951px) and (max-height:860px){:root{--site-header-height:88px}.site-header{min-height:88px;padding-block:14px}}@media (max-width:950px){:root{--site-header-height:81px}.site-header{flex-flow:wrap;align-items:center;gap:0;min-height:80px;padding-block:18px}.site-header .brand{min-height:44px;margin-right:110px}.site-header .desktop-navigation,.header-actions .search-button{display:none}.mobile-search{display:block;position:absolute;top:18px;left:147px;right:56px}.mobile-theme{display:block;position:absolute;top:18px;right:0}.mobile-search .search-button{width:100%}.mobile-search kbd{display:none}}.page-title{align-items:flex-start;gap:.3em;display:flex}.page-title>span{min-width:0}.page-title-icon{width:.7em;height:.7em;color:var(--accent);flex:0 0 .7em;margin-top:.18em}.section-link-title{align-items:center;gap:10px;display:inline-flex}.section-link-icon{width:24px;height:24px;color:var(--accent);flex:0 0 24px}.tutor-option-name{flex:1;min-width:0}.tutor-lesson-count{background:var(--soft);min-width:24px;color:var(--muted);text-align:center;font-variant-numeric:tabular-nums;border-radius:12px;flex-shrink:0;padding:3px 6px;font-size:12px}.lesson-month+.lesson-month{margin-top:32px}.lesson-month-heading{top:var(--site-header-height);z-index:1;border-block:1px solid var(--line);background:var(--background);color:var(--accent);margin:0;padding:16px 12px;font-size:16px;font-weight:600;line-height:1.5;position:sticky}.lesson-month-heading:first-letter{text-transform:uppercase}.lesson-month .lesson-list{border-top:0}.lesson-month .lesson-row{scroll-margin-top:72px}.topic-label{background:var(--topic-paper);max-width:100%;color:var(--topic-ink);align-self:flex-start;margin-bottom:8px;display:inline-block}.note-question{display:block}.note-card summary:focus-visible{outline-offset:-5px;border-radius:12px}.review-notes>li,.note-card,.note-content,.lesson-info,.hero-copy,.latest-card{min-width:0}.note-answer,.note-prompt,.tags li,.tutor-identity{overflow-wrap:anywhere}.text-link,.clear-search,.lesson-jump a,.material-actions a{align-items:center;min-width:44px;min-height:44px;padding-block:8px;display:inline-flex}.lesson-jump{gap:8px 24px;padding-bottom:12px}.section-heading{flex-wrap:wrap}.availability-label{background:var(--soft);color:var(--muted);border-radius:20px;margin-top:16px;padding:4px 10px;font-size:13px;line-height:1.5;display:inline-block}.section-placeholder .button-link{margin-top:24px}.lesson-month-heading{scroll-margin-top:16px}.tutor-profile-link{border-radius:50%;justify-content:center;align-items:center;min-width:44px;min-height:44px;display:inline-flex}.tutor-profile-link:hover{background:var(--soft)}.tutor-profile-heading{align-items:center;gap:24px;display:flex}.tutor-profile-heading>.tutor-avatar{flex:0 0 80px;width:80px;height:80px;font-size:24px}.tutor-profile-heading>div{min-width:0}.tutor-profile-heading h1{overflow-wrap:anywhere}.tutor-stats{border-block:1px solid var(--line);grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;margin:0;padding:24px 0;display:grid}.tutor-stats>div{flex-direction:column-reverse;display:flex}.tutor-stats dt,.tutor-dates dt{color:var(--muted);font-size:14px}.tutor-stats dd{font-family:var(--font-serif);margin:0 0 8px;font-size:48px;line-height:1.2}.tutor-dates{flex-wrap:wrap;gap:24px 48px;margin:24px 0 48px;display:flex}.tutor-dates dd{margin:4px 0 0}@media (max-width:560px){.tutor-profile-heading{flex-direction:column;align-items:flex-start}.tutor-stats{gap:12px}.tutor-stats dd{font-size:38px}}.tutor-stats .tutor-time{font-variant-numeric:tabular-nums;font-family:inherit;font-size:16px;line-height:1.7}.stat-assumption{margin-top:4px;display:block}@media (max-width:800px){.tutor-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}}.preply-link{align-items:center;gap:8px;display:inline-flex}.preply-link>img{flex-shrink:0}.preply-link--subtle{min-height:44px;color:var(--muted);gap:6px;font-size:13px;text-decoration:none;transition:color .15s}.preply-link--subtle>img{border-radius:3px;width:16px;height:16px}.preply-link--subtle:hover{color:var(--accent);text-underline-offset:3px;text-decoration:underline}.lesson-actions .meta-dot{margin:0 12px}.lesson-row-meta{flex-wrap:wrap;align-items:center;gap:8px 12px;display:flex}.lesson-row{isolation:isolate;position:relative}.lesson-title-link{text-decoration:none}.lesson-title-link:after{content:"";position:absolute;inset:0}.lesson-title-link:focus-visible:after{outline:3px solid var(--focus);outline-offset:-3px}.active-topic-filter{min-height:44px;color:var(--accent);align-items:center;gap:12px;margin-bottom:16px;display:inline-flex}.lesson-labels{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.sticky-lesson-header{top:var(--site-header-height);z-index:5;background:var(--background);margin-bottom:24px;position:sticky}.sticky-lesson-header .lesson-jump{flex-wrap:nowrap;margin-bottom:0;padding:8px 0}.lesson-jump a{white-space:nowrap}.lesson-jump .jump-long{white-space:pre}#resumen,#materiales,#progreso,#feedback,#vocabulario,#repaso{scroll-margin-top:140px}.lesson-lede{max-width:720px;color:var(--muted);margin-top:20px;font-size:17px;line-height:1.6}.lesson-lede p{margin:0}.lesson-badge--pending{color:var(--muted);box-shadow:inset 0 0 0 1px var(--border);background:0 0}.lesson-pending-note{max-width:var(--measure);color:var(--muted);margin:12px 0 0;font-size:14px;line-height:1.6}.lesson-actions{color:var(--muted);flex-wrap:wrap;align-items:center;gap:0;margin-top:0;font-size:14px;display:flex}.lesson-insight-section{margin-block:24px 32px}.material-thumbnail.material-photo{object-fit:cover}.section-lede{max-width:640px;color:var(--muted);margin:-12px 0 24px}.lesson-progress-bento .metric-meter{margin-top:auto;padding-top:18px}.lesson-progress-bento .bento-spark{height:72px}.bento-delta[data-direction=down]{background:color-mix(in srgb, var(--muted) 14%, transparent);color:var(--muted)}.metric-meter-track{background:var(--line);border-radius:999px;height:6px;margin-top:8px;position:relative}.metric-meter-band{background:var(--muted);opacity:.35;border-radius:999px;position:absolute;inset-block:0}.metric-meter-dot{background:var(--chart-marker);width:12px;height:12px;box-shadow:0 0 0 2px var(--paper);border-radius:50%;position:absolute;top:50%;transform:translate(-50%,-50%)}.metric-meter-labels{color:var(--muted);justify-content:space-between;margin-top:6px;font-size:13px;display:flex}.photo-lightbox{--lightbox-scrim:#141816b8;--lightbox-surface:#1b1f1d;border:1px solid var(--border);background:var(--paper);width:min(960px,100vw - 32px);max-width:none;max-height:calc(100dvh - 32px);color:inherit;border-radius:12px;padding:0}.photo-lightbox::backdrop{background:var(--lightbox-scrim)}.photo-lightbox figure{flex-direction:column;max-height:calc(100dvh - 34px);margin:0;display:flex}.photo-lightbox img{object-fit:contain;background:var(--lightbox-surface);width:100%;min-height:0;max-height:calc(100dvh - 140px);display:block}.photo-lightbox figcaption{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 24px;padding:16px 20px;display:flex}.photo-lightbox figcaption>span:first-child{flex-direction:column;gap:2px;display:flex}.photo-lightbox figcaption>span:first-child>span{color:var(--muted);font-size:14px}.photo-lightbox-actions{align-items:center;gap:20px;display:flex}.photo-lightbox-actions button{min-height:44px;color:var(--ink);cursor:pointer;font:inherit;background:0 0;border:0;padding-inline:4px}.recap-notes{border-top:1px solid var(--line);max-width:800px;margin-top:32px;padding-top:20px}.recap-notes>summary{cursor:pointer;min-height:44px;font-weight:600}.recap-notes-body{margin-top:16px}@media (max-width:600px){.lesson-jump{justify-content:space-between;gap:8px}.sticky-lesson-header .lesson-jump{overscroll-behavior-x:contain;scrollbar-width:none;justify-content:flex-start;gap:20px;overflow-x:auto}.sticky-lesson-header .lesson-jump::-webkit-scrollbar{display:none}.sticky-lesson-header .lesson-jump a{flex-shrink:0}.sticky-lesson-header .lesson-jump .jump-count{display:none}.sticky-lesson-header .lesson-jump[data-more-after]{-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 40px),#0000);mask-image:linear-gradient(90deg,#000 calc(100% - 40px),#0000)}.sticky-lesson-header .lesson-jump[data-more-before]{-webkit-mask-image:linear-gradient(270deg,#000 calc(100% - 40px),#0000);mask-image:linear-gradient(270deg,#000 calc(100% - 40px),#0000)}.sticky-lesson-header .lesson-jump[data-more-before][data-more-after]{-webkit-mask-image:linear-gradient(90deg,#0000,#000 40px calc(100% - 40px),#0000);mask-image:linear-gradient(90deg,#0000,#000 40px calc(100% - 40px),#0000)}.lesson-jump .jump-long{display:none}.lesson-jump .jump-count{margin-left:4px;padding-inline:5px}}.lesson-sticky-marker{height:1px}.sticky-lesson-identity{padding-top:8px}.sticky-lesson-title{align-items:center;gap:8px;margin:0;font-size:20px;font-weight:600;line-height:1.25;display:flex}.sticky-lesson-icon{flex:0 0 1em;width:1em;height:1em}.sticky-lesson-title>span{white-space:nowrap;text-overflow:ellipsis;min-width:0;overflow:hidden}.sticky-lesson-meta{color:var(--muted);align-items:center;gap:12px;margin:4px 0 0;font-size:13px;line-height:1.4;display:flex}.sticky-lesson-tutor{align-items:center;gap:6px;min-width:0;display:inline-flex}.sticky-lesson-tutor .tutor-avatar{flex-basis:20px;width:20px;height:20px;font-size:9px}.sticky-lesson-tutor>span:last-child{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.sticky-lesson-meta time{white-space:nowrap}@media (max-width:600px){.sticky-lesson-title{font-size:18px}.sticky-lesson-meta{gap:8px;font-size:12px}}.lesson-heading{max-width:none;padding-bottom:12px}.lesson-actions .lesson-tutor-link{align-items:center;gap:8px;min-height:44px;display:inline-flex}.lesson-actions .tutor-avatar{flex-basis:28px;width:28px;height:28px;font-size:11px}.lesson-heading h1{text-wrap:balance;max-width:24ch;margin-bottom:8px;font-size:clamp(30px,3.5vw,44px);line-height:1.15}.lesson-tutor-link{border-radius:8px;gap:12px;text-decoration:none}.lesson-tutor-name{color:var(--accent);text-underline-offset:3px;text-decoration:underline}.lesson-tutor-link:hover .lesson-tutor-name{text-decoration-thickness:2px}.vocabulary-browser button,.vocabulary-browser input[type=number]{min-width:44px;min-height:44px;font:inherit;border:1px solid var(--control-border);border-radius:8px;padding:8px 12px}.vocabulary-browser button{background:var(--accent);color:var(--action-ink);cursor:pointer}.vocabulary-browser button:hover:not(:disabled){background:var(--accent-hover)}.vocabulary-browser button:disabled{background:var(--soft);color:var(--muted);cursor:default}.vocabulary-browser input[type=number]{background:var(--paper);color:var(--ink);max-width:100%}.vocabulary-browser .search-controls{flex-wrap:wrap}.vocabulary-browser .search-controls input{flex:220px;min-width:0}.vocabulary-results-heading,.vocabulary-pagination{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.vocabulary-pagination{color:var(--muted);justify-content:center;gap:8px;margin:24px 0;font-size:14px}.vocabulary-page-size{min-width:0;color:var(--muted);border:0;flex-wrap:wrap;align-items:center;gap:8px;margin:0;padding:0;font-size:14px;display:flex}.vocabulary-page-size-options{display:flex}.vocabulary-page-size label{cursor:pointer;font-variant-numeric:tabular-nums;border-radius:8px;place-items:center;min-width:44px;min-height:44px;margin:0;padding:8px;font-size:14px;font-weight:400;display:grid}.vocabulary-page-size label:hover{background:var(--paper)}.vocabulary-page-size label:has(input:checked){color:var(--accent);text-underline-offset:6px;font-weight:600;text-decoration:underline;text-decoration-thickness:2px}.vocabulary-page-size label:has(input:focus-visible){outline:3px solid var(--focus);outline-offset:3px}.vocabulary-page-size input:focus-visible{outline:none}.vocabulary-voice{color:var(--muted);margin:16px 0;font-size:14px}.vocabulary-list{border-top:1px solid var(--line);margin:0;padding:0;list-style:none}.vocabulary-row{border-bottom:1px solid var(--line);overflow-wrap:anywhere;padding:20px 0 12px}.vocabulary-row:focus{outline:none}.vocabulary-row:focus-visible{outline:3px solid var(--focus);outline-offset:4px}.vocabulary-row p{margin:6px 0}.vocabulary-row-heading{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.vocabulary-row-title{flex-wrap:wrap;align-items:center;gap:4px 10px;min-width:0;min-height:44px;display:flex}.vocabulary-meaning{line-height:1.5}.vocabulary-row-heading h3{margin:0;font-size:22px;font-weight:500}.vocabulary-rank{color:var(--muted);font-variant-numeric:tabular-nums;font-size:14px}.vocabulary-category{border:1px solid var(--border);background:var(--paper);color:var(--muted);border-radius:24px;padding:4px 8px;font-size:13px}.vocabulary-row-heading .vocabulary-listen{flex:none}.vocabulary-match,.vocabulary-context{color:var(--muted);font-size:14px}.vocabulary-details{margin-top:8px}.vocabulary-details summary,.vocabulary-source summary{cursor:pointer;min-height:44px;color:var(--accent);padding:8px 4px;font-size:14px}.vocabulary-forms{background:var(--paper);border:1px solid var(--border);border-radius:12px;margin:8px 0 0;padding:16px;list-style:none}.vocabulary-forms li{flex-wrap:wrap;align-items:center;gap:12px;padding:8px 0;display:flex}.vocabulary-forms li+li{border-top:1px solid var(--line)}.vocabulary-forms .vocabulary-listen{margin-left:auto}.vocabulary-notation{font-family:var(--font-ipa);color:var(--muted);font-size:14px}.vocabulary-source{color:var(--muted);margin-top:24px;font-size:14px}.dialect-guide{margin:0 0 24px}.dialect-table{min-width:34rem}.vocabulary-license{white-space:pre-wrap;overflow-wrap:anywhere;font:inherit}.vocabulary-frequency>legend{margin-bottom:8px}.vocabulary-frequency-hint{color:var(--muted);margin:0 0 12px;font-size:13px}.vocabulary-frequency-options{flex-wrap:wrap;gap:8px;display:flex}.search-form .vocabulary-frequency-option{border:1px solid var(--control-border);cursor:pointer;border-radius:8px;align-items:center;gap:8px;min-height:44px;margin:0;padding:8px 12px;font-size:14px;font-weight:500;display:flex}.vocabulary-frequency-option input{width:16px;height:16px;accent-color:var(--accent);flex:0 0 16px;margin:0}.vocabulary-frequency-option:hover{background:var(--paper)}.vocabulary-frequency-option:has(input:checked){background:var(--paper)}.vocabulary-frequency-option:has(input:checked){border-color:var(--accent);color:var(--accent)}.vocabulary-frequency-option:has(input:focus-visible){outline:3px solid var(--focus);outline-offset:3px}.vocabulary-frequency-option input:focus-visible{outline:none}.vocabulary-category-count{background:var(--paper);margin-left:auto;font-size:13px}.vocabulary-categories .tutor-option:hover .vocabulary-category-count{background:var(--soft)}.vocabulary-categories .tutor-option:has(input:checked) .vocabulary-category-count{background:var(--soft)}.lesson-deck{flex-wrap:wrap;align-items:center;gap:8px 16px;margin:16px 0 0;display:flex}.lesson-deck p{color:var(--muted);flex:0 auto;margin:0;font-size:14px;line-height:1.6}.material-row{grid-template-columns:100px minmax(0,1fr) auto;align-items:center;gap:16px 24px;display:grid}.material-info{min-width:0}.materials-list h3{font-size:16px;line-height:1.4}.material-size{margin:4px 0 0;font-size:13px}.material-actions{justify-content:flex-end;gap:12px;font-size:14px}.material-actions button{min-height:44px;padding:8px 12px}.material-actions a{gap:4px}.material-preview:not([hidden]){margin-top:16px}@media (max-width:680px){.material-row{grid-template-columns:76px minmax(0,1fr);gap:12px}.material-row .material-actions{grid-column:2;justify-self:end}.material-row .material-thumbnail{grid-row:span 2;width:76px;height:100px}.materials-list>li{padding:16px}}@media (prefers-reduced-motion:no-preference){html:has(.sticky-lesson-header){scroll-behavior:smooth}}.lesson-deck .text-link{align-items:center;min-height:44px;font-size:13px;font-weight:500}.lesson-deck p{font-size:13px}@media (max-width:560px){.tutor-profile-heading{grid-template-columns:64px minmax(0,1fr);align-items:center;gap:8px 16px;padding:20px 0;display:grid}.tutor-profile-heading>.tutor-avatar{width:64px;height:64px;font-size:20px}.tutor-profile-copy{display:contents}.tutor-profile-identity{min-width:0}.tutor-profile-identity .eyebrow{margin:0 0 6px;font-size:12px}.tutor-profile-heading h1{margin:0;font-size:30px;line-height:1.15}.tutor-profile-heading .page-description{grid-column:1/-1;margin:8px 0 0;font-size:14px;line-height:1.5}.tutor-profile-heading .preply-link{grid-column:1/-1;justify-self:start}.tutor-stats{gap:16px 20px;padding:20px 0}.tutor-stats>div{justify-content:flex-end}.tutor-stats dd{margin-bottom:4px;font-size:30px}.tutor-stats dt{font-size:13px;line-height:1.4}.stat-assumption{margin-top:2px;font-size:12px}.tutor-dates{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:16px 0 28px;display:grid}.tutor-dates dt{font-size:12px}.tutor-dates dd{font-size:13px;line-height:1.5}}.progress-heading{margin-bottom:0}.insight-hint{color:var(--muted);font-size:14px;line-height:1.65}.insight-state{border:1px solid var(--control-border);background:var(--paper);border-radius:10px;padding:16px 24px}.progress-welcome{background:var(--paper);border:1px solid var(--border);border-radius:14px;max-width:800px;margin:0 auto 64px;padding:48px}.progress-welcome p{max-width:560px}.progress-welcome li{margin-block:8px}.progress-sprout{color:var(--accent);margin-bottom:24px;font-size:48px;line-height:1;display:block}.progress-filters{align-items:end;gap:24px;margin-bottom:24px;display:flex}.progress-filters>label{flex:1}.progress-filters>p{flex:1;margin-bottom:0}.progress-filters label,.progress-evolution label,.chart-picker,.vocabulary-toolbar>label:first-child{color:var(--muted);gap:8px;min-width:0;font-size:14px;display:grid}.progress-filters select,.progress-evolution select,.chart-picker select,.vocabulary-toolbar input[type=search]{border:1px solid var(--control-border);background:var(--paper);width:100%;min-width:0;max-width:100%;min-height:44px;color:var(--ink);font:inherit;text-overflow:ellipsis;border-radius:7px;padding:10px 12px;font-size:16px}.progress-bento{margin-bottom:var(--space-block);grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.bento-tile{border:1px solid var(--border);background:var(--paper);border-radius:14px;flex-direction:column;min-width:0;padding:22px 24px;display:flex}.bento-tile .eyebrow{margin-bottom:10px}.bento-tile--wide{background:var(--soft);grid-column:span 2}.bento-value{font:400 44px/1.1 var(--font-serif);font-variant-numeric:tabular-nums;align-items:baseline;gap:6px;margin:0;display:flex}.bento-value small{color:var(--muted);font:500 15px/1 var(--font-sans)}.bento-delta{background:color-mix(in srgb, var(--accent) 16%, transparent);color:var(--accent);font:650 13px/1.5 var(--font-sans);border-radius:999px;align-self:center;margin-left:6px;padding:2px 9px}.bento-detail{color:var(--muted);margin:8px 0 0;font-size:14px;line-height:1.5}.bento-spark{align-items:flex-end;gap:3px;height:84px;margin-top:auto;padding-top:18px;display:flex}.bento-spark span{height:var(--h);background:color-mix(in srgb, var(--chart-learner) 38%, transparent);transform-origin:bottom;border-radius:3px 3px 0 0;flex:1;min-height:3px}.bento-spark span[data-latest]{background:var(--chart-learner)}.bento-ring{place-items:center;width:132px;margin:4px auto 0;display:grid;position:relative}.bento-ring svg,.bento-gauge svg{width:100%;display:block;overflow:visible}.bento-ring .bento-value,.bento-gauge .bento-value{font-size:34px;position:absolute}.bento-ring-track,.bento-ring-fill,.bento-gauge-track,.bento-gauge-fill{fill:none;stroke-linecap:round}.bento-ring-track,.bento-gauge-track{stroke:var(--line);stroke-width:10px}.bento-ring-fill,.bento-gauge-fill{stroke:var(--chart-learner);stroke-width:10px;stroke-dasharray:var(--value) 100}.bento-ring-fill{transform-origin:50%;transform:rotate(-90deg)}.bento-gauge{width:150px;margin:4px auto 0;position:relative}.bento-gauge .bento-value{justify-content:center;inset:auto 0 -4px}.bento-split,.bento-levels{border-radius:6px;gap:3px;height:12px;margin-top:16px;display:flex;overflow:hidden}.bento-split span,.bento-levels span{transform-origin:0;min-width:4px}.bento-split-good,.bento-swatch--good{background:var(--chart-learner)}.bento-split-fix,.bento-swatch--fix{background:var(--chart-tutor)}.bento-legend{color:var(--muted);font-variant-numeric:tabular-nums;flex-wrap:wrap;gap:4px 14px;margin:12px 0 0;font-size:13px;display:flex}.bento-legend b{color:var(--ink);font-weight:600}.bento-swatch{border-radius:2px;width:9px;height:9px;margin-right:6px;display:inline-block}.bento-totals{flex-wrap:wrap;grid-column:1/-1;gap:8px;max-width:none;margin:4px 0 0;display:flex}.bento-totals span{border:1px solid var(--line);color:var(--muted);border-radius:999px;padding:6px 12px;font-size:13px}.bento-totals b{color:var(--ink);font-variant-numeric:tabular-nums;font-weight:600}@media (prefers-reduced-motion:no-preference){.bento-spark span{animation:.7s cubic-bezier(.3,.7,.2,1) both bento-grow;animation-delay:calc(var(--i) * 18ms)}.bento-split span,.bento-levels span{animation:.8s cubic-bezier(.3,.7,.2,1) both bento-grow-x}.bento-ring-fill,.bento-gauge-fill{animation:1s cubic-bezier(.3,.7,.2,1) both bento-draw}}@keyframes bento-grow{0%{transform:scaleY(0)}}@keyframes bento-grow-x{0%{transform:scaleX(0)}}@keyframes bento-draw{0%{stroke-dasharray:0 100}}@media (max-width:950px){.progress-bento{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:600px){.progress-bento{grid-template-columns:minmax(0,1fr)}.bento-tile--wide{grid-column:auto}}.insight-section-heading{justify-content:space-between;align-items:end;gap:24px;margin-bottom:24px;display:flex}.insight-section-heading h2{margin-bottom:0}.insight-section-heading label{flex:0 40%;max-width:380px}.progress-evolution{margin:var(--space-section) 0}.trend-waiting{border-block:1px solid var(--line);padding:32px 0}.trend-waiting p:last-child{margin-bottom:0}.lesson-insights{scroll-margin-top:calc(var(--site-header-height) + 24px);margin:48px 0 64px}.insight-badge{white-space:nowrap;border:1px solid var(--border);color:var(--muted);border-radius:30px;padding:4px 12px;font-size:13px;display:inline-block}.insight-tabs{border-bottom:1px solid var(--line);flex-wrap:wrap;gap:8px;margin-bottom:32px;padding-bottom:16px;display:flex}.insight-tabs button{border-color:var(--control-border);color:var(--ink);background:0 0;justify-content:center;align-items:center;gap:8px;padding:10px 16px;font-size:14px;display:inline-flex}.insight-tabs button[aria-pressed=true]{background:var(--accent);color:var(--action-ink);border-color:var(--accent)}.insight-tabs button span{font-size:13px;font-weight:400}.insight-panel{min-width:0}.insight-state{margin-bottom:24px}.metric-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:32px;display:grid}.metric-card{border:1px solid var(--border);background:var(--paper);border-radius:12px;min-width:0;padding:24px}.metric-card h3{font:500 15px/1.5 var(--font-sans);color:var(--muted);margin-bottom:16px}.metric-value{font:44px/1.2 var(--font-serif);font-variant-numeric:tabular-nums;margin-bottom:8px}.metric-value>span{font:13px/1.6 var(--font-sans);color:var(--muted);margin-top:4px;display:block}.metric-support{color:var(--muted);margin-bottom:8px;font-size:14px}.metric-support>span{display:block}.metric-scale{margin-block:16px}.metric-scale>div{color:var(--muted);justify-content:space-between;gap:8px;font-size:12px;display:flex}.metric-scale .scale-rule{background:var(--line);border-radius:4px;height:4px;margin-block:8px}.source-details{font-size:14px}.source-details summary{min-height:44px;color:var(--accent);cursor:pointer;padding-block:12px}.source-details>p{margin-top:8px}.source-text{white-space:pre-wrap;overflow-wrap:anywhere}.progress-chart-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,530px),1fr));gap:24px;margin-block:32px;display:grid}.progress-chart{border:1px solid var(--border);background:var(--chart-surface);border-radius:12px;min-width:0;padding:24px}.progress-chart h3{margin-bottom:8px;font-size:18px;font-weight:600;line-height:1.4}.chart-headline{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px;margin-top:20px;display:flex}.chart-headline p{margin:0}.chart-headline strong{letter-spacing:-.04em;font-variant-numeric:tabular-nums;font-size:32px;font-weight:650}.chart-headline span{font-size:14px}.chart-current-date{color:var(--muted)}.chart-plot{margin-block:16px}.trend-svg{max-width:100%;display:block;overflow:visible}.trend-svg text{fill:var(--muted);font-size:14px}.chart-grid{stroke:var(--line);stroke-width:1px}.chart-area{fill:var(--chart-area)}.chart-bar-learner{fill:var(--chart-learner)}.chart-line{fill:none;stroke:var(--chart-outline);stroke-width:2px}.chart-point{stroke:var(--chart-outline);fill:var(--paper);stroke-width:2px}.chart-bar-tutor{fill:var(--chart-tutor)}.chart-bar-divider{stroke:var(--chart-surface);stroke-width:2px}.chart-hit{cursor:pointer}.chart-hit:hover,.chart-hit:focus{stroke:var(--chart-outline);stroke-width:1px;stroke-dasharray:3 3;fill:color-mix(in srgb, var(--chart-outline) 5%, transparent);outline:none}.insight-plot,.chart-plot{position:relative}.chart-popover{z-index:2;border:1px solid var(--border);background:var(--paper);width:max-content;max-width:min(260px,80%);box-shadow:0 6px 18px rgb(var(--shadow-rgb) / 18%);color:var(--muted);pointer-events:none;border-radius:8px;gap:2px;padding:8px 12px;font-size:13px;line-height:1.4;display:grid;position:absolute;transform:translate(-50%,calc(-100% - 10px))}.chart-popover[data-align=start]{transform:translate(-16px,calc(-100% - 10px))}.chart-popover[data-align=end]{transform:translate(calc(16px - 100%),calc(-100% - 10px))}.chart-popover strong{color:var(--ink);overflow-wrap:anywhere;font-weight:600}.chart-reading{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.chart-legend{gap:20px;margin:8px 0 0;font-size:14px;display:flex}.chart-dot{background:var(--chart-learner);vertical-align:middle;border-radius:4px;width:10px;height:14px;margin-right:6px;display:inline-block}.chart-dot.tutor{background:var(--chart-tutor)}.series-learner{--series:var(--chart-learner)}.series-tutor{--series:var(--chart-tutor)}.series-single{--series:var(--accent)}.cat-1{--series:var(--cat-1)}.cat-2{--series:var(--cat-2)}.cat-3{--series:var(--cat-3)}.cat-4{--series:var(--cat-4)}.cat-5{--series:var(--cat-5)}.cat-6{--series:var(--cat-6)}.seq-1{--series:var(--seq-1)}.seq-2{--series:var(--seq-2)}.seq-3{--series:var(--seq-3)}.seq-4{--series:var(--seq-4)}.seq-5{--series:var(--seq-5)}.seq-6{--series:var(--seq-6)}.progress-section{margin-top:var(--space-section)}.progress-section-heading .page-description{color:var(--muted);margin-top:8px}.progress-callout{border-left:3px solid var(--accent);background:var(--soft);border-radius:0 10px 10px 0;margin:0 0 24px;padding:14px 18px}.insight-chart{border:1px solid var(--border);background:var(--chart-surface);border-radius:12px;min-width:0;padding:24px}.insight-chart h3{margin-bottom:6px;font-size:18px;font-weight:600;line-height:1.4}.insight-chart-description{color:var(--muted);margin-bottom:12px;font-size:14px}.insight-plot{margin-block:12px 4px}.insight-plot svg{max-width:100%;display:block;overflow:visible}.insight-plot text{fill:var(--muted);font-variant-numeric:tabular-nums;font-size:13px}.chart-col{fill:var(--series);opacity:.88;transition:opacity .15s}.chart-col.is-selected{opacity:1}.chart-average{stroke:var(--ink);stroke-width:1.5px;opacity:.6}.chart-average-swatch{border-top:2px solid var(--ink);opacity:.6;vertical-align:middle;width:16px;height:0;margin-right:6px;display:inline-block}.chart-average-legend{margin-top:4px}.chart-swatch{background:var(--series);vertical-align:-1px;border-radius:3px;width:12px;height:12px;margin-right:6px;display:inline-block}.bar-list{gap:10px;margin:8px 0 0;padding:0;list-style:none;display:grid}.bar-list li{grid-template-columns:minmax(0,11rem) minmax(0,1fr);align-items:center;gap:12px;display:grid}.bar-label{font-size:14px;line-height:1.35}.bar-track{align-items:center;gap:8px;min-width:0;display:flex}.bar-track i{background:var(--series);border-radius:4px;min-width:2px;height:16px;display:block}.bar-track b{white-space:nowrap;font-variant-numeric:tabular-nums;flex-shrink:0;font-size:13px;font-weight:600}.bar-list--diverging .bar-track{gap:0}.bar-side{flex:1 1 0;align-items:center;gap:6px;min-width:0;display:flex}.bar-side--left{border-right:1px solid var(--control-border);justify-content:flex-end;padding-right:3px}.bar-side--right{padding-left:3px}.bar-side i{flex:none}.bar-side--left i{border-radius:4px 0 0 4px}.bar-side--right i{border-radius:0 4px 4px 0}.donut-layout{flex-wrap:wrap;align-items:center;gap:24px;display:flex}.donut{flex-shrink:0;width:clamp(180px,20vw,240px);max-width:100%;height:auto}.donut-segment{stroke:var(--series)}.donut-total{fill:var(--ink);font:500 32px/1 var(--font-serif)}.donut-caption{fill:var(--muted);font-size:13px}.donut-legend{flex:200px;gap:8px;margin:0;padding:0;font-size:15px;list-style:none;display:grid}.donut-legend li{grid-template-columns:auto minmax(0,1fr) auto 3.2em;align-items:center;gap:4px;display:grid}.donut-legend b{font-variant-numeric:tabular-nums}.donut-legend small{color:var(--muted);text-align:right;font-variant-numeric:tabular-nums}.donut-legend .is-empty{color:var(--muted)}.share-meter{margin-bottom:20px}.share-meter-track{border-radius:9px;gap:2px;height:18px;display:flex;overflow:hidden}.share-meter-track i{background:var(--series);display:block}.share-meter p{flex-wrap:wrap;justify-content:space-between;gap:8px;max-width:none;margin:8px 0 0;font-size:14px;display:flex}.share-meter p span:last-child{text-align:right}.practice-words{margin:0 0 32px}.practice-words h3{margin-bottom:4px;font-size:18px;font-weight:600;line-height:1.4}.practice-words ul{grid-template-columns:repeat(auto-fill,minmax(min(100%,150px),1fr));gap:12px;margin:16px 0 0;padding:0;list-style:none;display:grid}.practice-words li{border:1px solid var(--border);background:var(--paper);border-radius:12px;flex-direction:column;gap:10px;min-width:0;padding:16px 16px 14px;display:flex;container-type:inline-size}.practice-words strong{font:500 clamp(17px, 15cqi, 28px) / 1.15 var(--font-serif);letter-spacing:-.01em;overflow-wrap:normal;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.practice-meta{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.practice-meta small{color:var(--muted);font-size:13px}.practice-bar{background:linear-gradient(to right, var(--chart-tutor) calc(var(--score) * 1%), transparent 0), var(--line);border-radius:2px;height:4px}.practice-score{background:var(--soft);font-variant-numeric:tabular-nums;border-radius:999px;padding:1px 8px;font-size:13px;font-weight:650}.practice-words small{color:var(--muted);font-size:13px}.conversation-counts{border:1px solid var(--border);background:var(--chart-surface);border-radius:12px;padding:24px}.conversation-counts h3{font-size:18px;font-weight:600}.conversation-counts dl{gap:16px;margin:16px 0 0;display:grid}.conversation-counts dl>div{border-bottom:1px solid var(--line);justify-content:space-between;align-items:baseline;gap:12px;padding-bottom:12px;display:flex}.conversation-counts dd{font:500 30px/1 var(--font-serif);margin:0}@media (max-width:680px){.bar-list li{grid-template-columns:minmax(0,1fr);gap:4px}.insight-chart,.conversation-counts{padding:18px}}.lesson-statistics{border-block:1px solid var(--line);margin:-8px 0 32px;padding:24px 0}.lesson-statistics .eyebrow{margin:0 0 16px}.lesson-statistics .eyebrow span{font-weight:400}.lesson-statistics dl{grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;margin:0;display:grid}.lesson-statistics dt{color:var(--muted);font-size:14px}.lesson-statistics dd{font-family:var(--font-serif);font-variant-numeric:tabular-nums;margin:4px 0 0;font-size:36px}.lesson-statistics dd span{font:13px/1.4 var(--font-sans);color:var(--muted);display:block}@media (max-width:600px){.lesson-statistics dl{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.lesson-jump{flex-wrap:wrap}}.progress-chart table{border-collapse:collapse;text-align:left;width:100%}.progress-chart th,.progress-chart td{border-bottom:1px solid var(--line);padding:8px;font-weight:400}.insight-reading{max-width:800px}.recap-summary{max-width:68ch;margin-bottom:28px;font-size:17px;line-height:1.65}.recap-topic{border-top:1px solid var(--line);grid-template-columns:36px minmax(0,1fr);column-gap:16px;padding-block:20px;display:grid}.recap-topic h3{margin-bottom:8px;font-size:18px;font-weight:500;line-height:1.4}.topic-number{font:italic 18px/1.4 var(--font-serif);color:var(--muted);white-space:nowrap;overflow-wrap:normal;font-variant-numeric:tabular-nums}.recap-topic ul{margin:0;padding-left:1.1em}.recap-topic li{color:var(--muted);margin-bottom:4px;font-size:15px;line-height:1.6}.feedback-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:24px 0 48px;display:grid}.grammar-card,.pronunciation-card{background:var(--paper);border:1px solid var(--border);border-radius:12px;min-width:0;margin-bottom:16px;padding:24px}.feedback-grid .grammar-card,.feedback-grid .pronunciation-card{margin-bottom:0}.insight-tags{color:var(--muted);font-size:14px}.quoted-source{border-left:2px solid var(--control-border);padding-left:16px}.grammar-correction{background:var(--soft);border-left:3px solid var(--accent);padding:12px 16px}.pronunciation-title{justify-content:space-between;align-items:baseline;gap:16px;display:flex}.pronunciation-title h4{font:500 24px/1.4 var(--font-serif);margin:0 0 16px}.pronunciation-title>span{color:var(--muted);font-size:13px}.insight-media{margin-block:16px}.feedback-shared-note{margin:-4px 0 16px}.media-label{margin-bottom:8px;font-size:14px;font-weight:600}.insight-media audio{border:1px solid var(--control-border);background:var(--soft);width:100%;min-width:0;max-width:100%;height:44px;accent-color:var(--accent);border-radius:999px}.insight-media audio::-webkit-media-controls-enclosure{background:0 0;border-radius:999px}.insight-media audio::-webkit-media-controls-panel{background:var(--soft);color:var(--ink)}.vocabulary-toolbar{flex-wrap:wrap;align-items:end;gap:24px;margin-bottom:16px;display:flex}.vocabulary-toolbar>label:first-child{flex:1;min-width:min(250px,100%)}.insight-word-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,420px),1fr));align-items:start;gap:12px;display:grid}.vocabulary-detail{border:1px solid var(--control-border);background:var(--paper);border-radius:10px;min-width:0;margin-bottom:12px;padding:0 20px}.insight-word-grid .vocabulary-detail{margin-bottom:0}.vocabulary-detail summary{cursor:pointer;min-height:56px;padding:16px 0}.vocabulary-detail summary>span{vertical-align:middle;max-width:100%;margin-right:16px;display:inline-block}.vocabulary-detail summary strong{font-size:20px;font-weight:500}.word-translation{color:var(--muted);font-size:14px;display:block}.insight-word-grid .vocabulary-detail{border-color:var(--border);border-radius:12px}.insight-word-grid .vocabulary-detail[open]{border-color:var(--control-border)}.insight-word-grid .vocabulary-detail summary{grid-template-columns:minmax(0,1fr) auto 16px;align-items:center;gap:16px;min-height:72px;padding:14px 0;list-style:none;display:grid}.insight-word-grid .vocabulary-detail summary::-webkit-details-marker{display:none}.insight-word-grid .vocabulary-detail summary:after{content:"";border-right:1.5px solid var(--muted);border-bottom:1.5px solid var(--muted);justify-self:center;width:8px;height:8px;transition:transform .15s;transform:translateY(-2px)rotate(45deg)}.insight-word-grid .vocabulary-detail[open] summary:after{transform:translateY(2px)rotate(-135deg)}.insight-word-grid .vocabulary-detail summary>span{margin-right:0}.synonym-grid{margin-top:16px}.synonym-card{border:1px solid var(--border);background:var(--paper);border-radius:12px;gap:6px;min-width:0;padding:16px 20px;display:grid}.synonym-line{overflow-wrap:anywhere;grid-template-columns:64px minmax(0,1fr);gap:12px;margin:0;line-height:1.5;display:grid}.synonym-original{color:var(--muted);font-size:14px}.synonym-label{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;padding-top:3px;font-size:12px;font-weight:650}.synonym-line mark{background:color-mix(in srgb, var(--accent) 18%, transparent);color:var(--ink);border-radius:4px;padding:0 3px}.synonym-explanation{border-top:1px solid var(--line);color:var(--muted);margin:4px 0 0;padding-top:10px;font-size:14px;line-height:1.55}.word-heading{gap:2px;min-width:0;display:grid}.word-heading strong{overflow-wrap:anywhere;font:500 20px/1.3 var(--font-sans)}.word-tags{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.word-tag{background:var(--soft);color:var(--muted);white-space:nowrap;border-radius:999px;padding:2px 10px;font-size:13px;line-height:1.6}.word-tag--level{background:color-mix(in srgb, var(--accent) 14%, transparent);color:var(--accent);font-variant-numeric:tabular-nums;font-weight:600}@media (prefers-reduced-motion:reduce){.insight-word-grid .vocabulary-detail summary:after{transition:none}}.word-body{max-width:720px;padding-bottom:16px}.insight-subheading{margin-top:32px;font-size:24px;font-weight:500}.lesson-chat{--chat-green:var(--accent);--chat-text:var(--ink);--chat-on-green:var(--lightningcss-light,#fff)var(--lightningcss-dark,#0e1814);--chat-on-green-muted:var(--lightningcss-light,#e0efe8)var(--lightningcss-dark,#24402f);--chat-avatar:var(--soft);--chat-panel-border:var(--lightningcss-light,#184c3426)var(--lightningcss-dark,#a9d7b533);--chat-rule:var(--line);--chat-meta:var(--muted);--chat-scrollbar:var(--lightningcss-light,#aebeb1)var(--lightningcss-dark,#4b6457);--chat-dots:var(--lightningcss-light,#a8b3a626)var(--lightningcss-dark,#ffffff12);--chat-capture:var(--lightningcss-light,#ffffffb3)var(--lightningcss-dark,#ffffff14);--chat-capture-ink:var(--muted);--chat-incoming:var(--lightningcss-light,#fff)var(--lightningcss-dark,#1d2e27);--chat-outgoing:var(--lightningcss-light,#e1efd7)var(--lightningcss-dark,#26422f);--chat-time:var(--muted);--chat-attachment-border:var(--lightningcss-light,#155e5033)var(--lightningcss-dark,#a9d7b54d);--chat-attachment-hover-ink:var(--lightningcss-light,#103d34)var(--lightningcss-dark,#c4e6cc);--chat-attachment-hover:var(--lightningcss-light,#155e500a)var(--lightningcss-dark,#a9d7b51a);right:max(24px, env(safe-area-inset-right));max-width:calc(100vw - 48px);bottom:max(24px, env(safe-area-inset-bottom));z-index:60;pointer-events:none;color:var(--chat-text);flex-direction:column;align-items:flex-end;gap:12px;line-height:1.5;display:flex;position:fixed}.lesson-chat svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:24px;height:24px}.lesson-chat-launcher{pointer-events:auto;background:var(--chat-green);height:44px;color:var(--chat-on-green);box-shadow:0 6px 24px rgb(var(--shadow-rgb) / 19%);border:1px solid #ffffff30;border-radius:30px;justify-content:center;align-items:center;gap:8px;padding:0 18px;font-size:.9rem;font-weight:600;transition:background .15s,transform .15s;display:inline-flex}.lesson-chat-launcher:hover{background:var(--accent-hover);transform:translateY(-2px)}.lesson-chat-panel{pointer-events:auto;width:min(400px,100vw - 48px);height:min(640px, calc(100dvh - 116px - env(safe-area-inset-bottom) - env(safe-area-inset-top)));border:1px solid var(--chat-panel-border);background:var(--paper);box-shadow:0 16px 56px rgb(var(--shadow-rgb) / 19%), 0 2px 8px rgb(var(--shadow-rgb) / 8%);border-radius:20px;flex-direction:column;animation:.16s ease-out lesson-chat-enter;display:flex;overflow:hidden}.lesson-chat-header{background:var(--chat-green);color:var(--chat-on-green);flex-shrink:0;align-items:center;gap:12px;padding:18px 16px;display:flex}.lesson-chat-header .tutor-avatar{background:var(--chat-avatar);width:40px;height:40px;color:var(--chat-green);flex-shrink:0}.lesson-chat-heading{flex:1;min-width:0}.lesson-chat-heading h2{letter-spacing:0;overflow-wrap:anywhere;margin:0;font-family:inherit;font-size:1rem;font-weight:600;line-height:1.4}.lesson-chat-heading p{color:var(--chat-on-green-muted);margin:4px 0 0;font-size:.8125rem}.lesson-chat-close{width:44px;height:44px;color:var(--chat-on-green);background:0 0;border:0;border-radius:50%;flex-shrink:0;place-items:center;padding:0;display:grid}.lesson-chat-close:hover{background:#ffffff20}.lesson-chat :focus-visible{outline:3px solid var(--focus);outline-offset:3px}.lesson-chat-close:focus-visible{outline-color:var(--chat-on-green);outline-offset:-3px}.lesson-chat-toolbar{border-bottom:1px solid var(--chat-rule);flex-shrink:0;padding:12px 16px;font-size:.8125rem}.lesson-chat-toolbar p{color:var(--chat-meta);margin:0;font-size:.8125rem}.lesson-chat-conversation{overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--chat-scrollbar) transparent;background:var(--background);background-image:radial-gradient(var(--chat-dots) .7px, transparent .7px);background-size:12px 12px;flex-direction:column;flex:1;gap:10px;min-height:0;padding:16px;display:flex;overflow-y:auto}.lesson-chat-conversation:focus-visible{outline-offset:-3px}.lesson-chat-capture{background:var(--chat-capture);max-width:95%;color:var(--chat-capture-ink);text-align:center;border-radius:10px;flex-shrink:0;align-self:center;margin:0;padding:8px 12px;font-size:.8125rem}.lesson-chat-message{background:var(--chat-incoming);max-width:88%;box-shadow:0 1px 2px rgb(var(--shadow-rgb) / 8%);overflow-wrap:anywhere;border-radius:3px 14px 14px;flex-shrink:0;align-self:flex-start;padding:10px 12px 7px;font-size:.875rem}.lesson-chat-message .source-text{margin:0}.lesson-chat-outgoing{background:var(--chat-outgoing);border-radius:14px 3px 14px 14px;align-self:flex-end}.lesson-chat-sender{color:var(--chat-green);margin-bottom:4px;font-size:.8125rem;display:block}.lesson-chat-time{color:var(--chat-time);text-align:right;margin-top:5px;font-size:.8125rem;display:block}.lesson-chat-attachment{border:1px solid var(--chat-attachment-border);min-height:44px;color:var(--chat-green);text-underline-offset:3px;border-radius:8px;margin-top:8px;padding:12px 8px;font-size:.8125rem;text-decoration:underline;display:block}.lesson-chat-attachment:hover{color:var(--chat-attachment-hover-ink);background:var(--chat-attachment-hover)}.lesson-chat-empty{text-align:center;margin:auto;font-size:.875rem}@keyframes lesson-chat-enter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media (max-width:640px){.lesson-chat{right:max(12px, env(safe-area-inset-right));left:max(12px, env(safe-area-inset-left));max-width:none;bottom:max(12px, env(safe-area-inset-bottom))}.lesson-chat-panel{width:100%;height:min(640px, calc(100dvh - 104px - env(safe-area-inset-bottom) - env(safe-area-inset-top)));border-radius:16px}}@media (prefers-reduced-motion:reduce){.lesson-chat-panel{animation:none}.lesson-chat-launcher{transition:none}}.materials-list>li[id]{scroll-margin-top:180px}.opened-lessons{background:var(--paper);border:1px solid var(--border);border-radius:12px;margin-bottom:32px;padding:24px}.opened-lessons ul{margin-bottom:0;padding:0;list-style:none}.opened-lessons li+li{border-top:1px solid var(--line)}.opened-lessons li a{justify-content:space-between;align-items:center;gap:24px;padding-block:16px;text-decoration:none;display:flex}.opened-lessons li a:hover strong{text-decoration:underline}.opened-lessons li a>span>span{color:var(--muted);font-size:14px;display:block}.opened-lessons li a>span:last-child{font-size:14px}.local-insights-link{margin-block:24px}@media (max-width:900px){.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.progress-chart-grid{grid-template-columns:1fr}}@media (max-width:600px){.progress-welcome{padding:24px}.progress-filters,.insight-section-heading{flex-direction:column;align-items:stretch;gap:16px}.insight-section-heading label{max-width:none}.insight-badge{align-self:flex-start}.metric-grid,.feedback-grid{grid-template-columns:1fr}.metric-card,.progress-chart,.grammar-card,.pronunciation-card{padding:24px}.insight-tabs{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.insight-tabs button{padding-inline:12px}.recap-topic{grid-template-columns:28px minmax(0,1fr);column-gap:12px}.opened-lessons li a{flex-direction:column;align-items:start;gap:12px}}.material-thumbnail{object-fit:contain;border:1px solid var(--border);background:#fff;border-radius:4px;flex:0 0 100px;width:100px;height:130px}@media (max-width:600px){.material-thumbnail{flex-basis:76px;width:76px;height:100px}}.material-actions .button-link{color:var(--action-ink);text-decoration:none}.material-actions .button-link--outline{color:var(--accent)}.material-thumbnail-link{border-radius:4px;width:fit-content;line-height:0;display:block}.material-title-link{color:inherit;text-decoration:none}.material-title-link:hover{text-decoration:underline}@media (max-width:680px){.material-thumbnail-link{grid-row:span 2}}@media (min-width:1100px){.materials-list{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:16px;display:grid}.materials-list>li{min-width:0;margin:0}.material-row{grid-template-columns:100px minmax(0,1fr);gap:12px 20px}.material-thumbnail-link{grid-row:span 2}.material-row .material-actions{grid-column:2;justify-self:end}}.grammar-guide{gap:24px;min-width:0;display:grid}.grammar-selection-toolbar{gap:16px;min-width:0;display:grid}.grammar-selection-actions{border-top:1px solid var(--line);padding-top:16px}@media (min-width:1200px){.grammar-selection-toolbar{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:24px}.grammar-selection-actions{border-top:0;border-left:1px solid var(--line);padding:0 0 0 24px}}.grammar-preset-rows{gap:12px;min-width:0;display:grid}.grammar-presets{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.grammar-presets p{color:var(--muted);flex:0 0 112px;align-items:center;gap:8px;margin:0;font-size:14px;display:inline-flex}.grammar-presets p svg{flex:none;width:16px;height:16px}@media (max-width:680px){.grammar-presets p{flex-basis:100%}}.grammar-presets button{max-width:100%;color:var(--ink);border-color:var(--control-border);background:0 0;justify-content:center;align-items:center;gap:8px;padding:10px 16px;font-size:14px;font-weight:500;display:inline-flex}.grammar-presets button:hover{background:var(--paper);border-color:var(--accent)}.grammar-presets button[aria-pressed=true]{background:var(--soft);color:var(--accent);border-color:var(--accent)}.grammar-presets button[aria-pressed=true]:hover{background:var(--soft)}.grammar-preset-count{color:var(--muted);font-variant-numeric:tabular-nums;font-size:13px}.grammar-presets .grammar-reset{border-color:var(--control-border);color:var(--muted);background:0 0}.grammar-presets .grammar-reset:hover{background:var(--soft)}.grammar-scroll-area{min-width:0}.grammar-scroll-indicator{color:var(--muted);flex-wrap:wrap;align-items:center;gap:12px 24px;margin-bottom:12px;padding:0 8px;display:flex}.grammar-scroll-indicator p{margin:0;font-size:14px}.grammar-scroll-indicator p span{margin-right:4px}.grammar-scroll-track{background:var(--line);border-radius:4px;flex:120px;max-width:240px;height:4px;position:relative;overflow:hidden}.grammar-scroll-track span{border-radius:inherit;background:var(--accent);height:100%;position:absolute;top:0}.grammar-cards{--grammar-add-space:72px;overscroll-behavior-x:contain;align-items:flex-start;gap:24px;min-width:0;padding:8px 8px 16px;scroll-padding-inline:8px;display:flex;overflow-x:auto}.grammar-column{flex:1 0 clamp(192px,100% - 72px,320px);min-width:0}.grammar-column-controls{grid-template-rows:44px auto;grid-template-columns:minmax(0,1fr) 44px;align-items:center;gap:8px;margin-bottom:24px;display:grid;position:relative}.grammar-column-controls label{font-weight:600}.grammar-picker-trigger{--grammar-ink:var(--accent);border:1px solid var(--control-border);background:var(--paper);width:100%;min-width:0;min-height:72px;color:var(--ink);font:inherit;text-align:left;border-radius:10px;grid-area:2/1/auto/-1;align-items:center;gap:12px;padding:12px;display:flex}.grammar-picker-trigger:hover,.grammar-picker-trigger[data-state=open]{background:var(--paper);border-color:var(--grammar-ink);box-shadow:inset 0 0 0 1px var(--grammar-ink)}.grammar-picker-text{overflow-wrap:anywhere;flex:1;gap:4px;min-width:0;line-height:1.4;display:grid}.grammar-picker-description{color:var(--muted);font-size:13px;font-weight:400;display:block}.grammar-picker-chevron{color:var(--muted);flex:0 0 20px;display:flex}.grammar-picker-trigger[data-state=open] .grammar-picker-chevron{transform:rotate(180deg)}.grammar-picker-menu{z-index:20;width:min(420px, max(320px, var(--radix-select-trigger-width)));max-width:calc(100vw - 24px);max-height:min(480px, var(--radix-select-content-available-height));border:1px solid var(--control-border);background:var(--paper);color:var(--ink);box-shadow:0 8px 24px rgb(var(--shadow-rgb) / 12%);border-radius:12px;overflow:hidden}.grammar-picker-viewport{padding:8px}.grammar-picker-group{color:var(--muted);letter-spacing:.12em;text-transform:uppercase;padding:12px 12px 8px;font-size:12px;font-weight:650}.grammar-picker-option{cursor:pointer;outline-offset:-3px;-webkit-user-select:none;user-select:none;border-radius:8px;align-items:center;gap:12px;min-height:64px;padding:10px 12px;font-size:14px;line-height:1.4;display:flex}.grammar-picker-option[data-state=checked]{background:var(--soft);font-weight:600}.grammar-picker-option[data-highlighted]{background:var(--soft);outline:2px solid var(--accent)}.grammar-picker-option .grammar-tense-icon{flex-basis:32px;width:32px;height:32px;padding:4px}.grammar-picker-option .grammar-tense-icon svg{width:24px;height:24px}.grammar-picker-check{color:var(--accent);flex:0 0 16px}.grammar-picker-scroll{height:28px;color:var(--accent);background:var(--paper);justify-content:center;align-items:center;display:flex}.grammar-add,.grammar-remove{place-items:center;padding:0;font-size:28px;line-height:1;display:grid}.grammar-add{height:48px;margin-top:var(--space-block);flex:0 0 48px}.grammar-add:disabled{background:var(--soft);color:var(--muted);border-color:var(--control-border);cursor:default}.grammar-remove{width:44px;height:44px;color:var(--muted);background:0 0;border-color:#0000}.grammar-remove:hover{background:var(--soft);color:var(--accent);border-color:var(--control-border)}.grammar-card{--grammar-paper:var(--soft);--grammar-ink:var(--accent);border:1px solid var(--border);border-top:6px solid var(--grammar-ink);background:var(--paper);border-radius:12px;min-width:0;padding:32px}:is(.grammar-card,.grammar-picker-trigger,.grammar-picker-option)[data-grammar-id=present-simple]{--grammar-paper:var(--lightningcss-light,#e1e8d9)var(--lightningcss-dark,#22352a);--grammar-ink:var(--lightningcss-light,#263f31)var(--lightningcss-dark,#cbe1d5)}:is(.grammar-card,.grammar-picker-trigger,.grammar-picker-option)[data-grammar-id=present-continuous]{--grammar-paper:var(--lightningcss-light,#dde7ea)var(--lightningcss-dark,#1f3138);--grammar-ink:var(--lightningcss-light,#2a4753)var(--lightningcss-dark,#c7dce5)}:is(.grammar-card,.grammar-picker-trigger,.grammar-picker-option)[data-grammar-id=present-perfect]{--grammar-paper:var(--lightningcss-light,#e8e0eb)var(--lightningcss-dark,#2d2532);--grammar-ink:var(--lightningcss-light,#54445f)var(--lightningcss-dark,#d8cfde)}:is(.grammar-card,.grammar-picker-trigger,.grammar-picker-option)[data-grammar-id=present-perfect-continuous]{--grammar-paper:var(--lightningcss-light,#f1dfcf)var(--lightningcss-dark,#39251e);--grammar-ink:var(--lightningcss-light,#613c2f)var(--lightningcss-dark,#e6cfc7)}:is(.grammar-card,.grammar-picker-trigger,.grammar-picker-option):is([data-grammar-id=past-simple],[data-grammar-id=used-to]){--grammar-paper:var(--lightningcss-light,#f0dada)var(--lightningcss-dark,#381f23);--grammar-ink:var(--lightningcss-light,#5d3038)var(--lightningcss-dark,#e5c8cd)}:is(.grammar-card,.grammar-picker-trigger,.grammar-picker-option)[data-grammar-id=past-continuous]{--grammar-paper:var(--lightningcss-light,#dbe3ef)var(--lightningcss-dark,#202937);--grammar-ink:var(--lightningcss-light,#304159)var(--lightningcss-dark,#c9d4e4)}:is(.grammar-card,.grammar-picker-trigger,.grammar-picker-option)[data-grammar-id=past-perfect]{--grammar-paper:var(--lightningcss-light,#eadfd2)var(--lightningcss-dark,#362a20);--grammar-ink:var(--lightningcss-light,#4e3b2c)var(--lightningcss-dark,#e3d5ca)}:is(.grammar-card,.grammar-picker-trigger,.grammar-picker-option)[data-grammar-id=past-perfect-continuous]{--grammar-paper:var(--lightningcss-light,#e3dbeb)var(--lightningcss-dark,#2a2333);--grammar-ink:var(--lightningcss-light,#463957)var(--lightningcss-dark,#d5cde0)}:is(.grammar-card,.grammar-picker-trigger,.grammar-picker-option)[data-grammar-id=future-simple]{--grammar-paper:var(--lightningcss-light,#d9eae4)var(--lightningcss-dark,#1e382f);--grammar-ink:var(--lightningcss-light,#224438)var(--lightningcss-dark,#c7e5db)}:is(.grammar-card,.grammar-picker-trigger,.grammar-picker-option)[data-grammar-id=future-continuous]{--grammar-paper:var(--lightningcss-light,#d9e9ee)var(--lightningcss-dark,#1c343b);--grammar-ink:var(--lightningcss-light,#234650)var(--lightningcss-dark,#c5e0e8)}:is(.grammar-card,.grammar-picker-trigger,.grammar-picker-option)[data-grammar-id=future-perfect]{--grammar-paper:var(--lightningcss-light,#f4e0cc)var(--lightningcss-dark,#3b281c);--grammar-ink:var(--lightningcss-light,#5e3b24)var(--lightningcss-dark,#e9d2c4)}:is(.grammar-card,.grammar-picker-trigger,.grammar-picker-option)[data-grammar-id=future-perfect-continuous]{--grammar-paper:var(--lightningcss-light,#efe7c7)var(--lightningcss-dark,#3b351c);--grammar-ink:var(--lightningcss-light,#4c4421)var(--lightningcss-dark,#e8e1c4)}:is(.grammar-card,.grammar-picker-trigger,.grammar-picker-option)[data-grammar-id=going-to]{--grammar-paper:var(--lightningcss-light,#f1d8d0)var(--lightningcss-dark,#3b221c);--grammar-ink:var(--lightningcss-light,#62362b)var(--lightningcss-dark,#e8ccc5)}:is(.grammar-card,.grammar-picker-trigger,.grammar-picker-option)[data-grammar-id=future-arrangements]{--grammar-paper:var(--lightningcss-light,#d6e9e6)var(--lightningcss-dark,#1e3936);--grammar-ink:var(--lightningcss-light,#234744)var(--lightningcss-dark,#c7e5e3)}:is(.grammar-card,.grammar-picker-trigger,.grammar-picker-option)[data-grammar-id=future-schedules]{--grammar-paper:var(--lightningcss-light,#e5e9d2)var(--lightningcss-dark,#323720);--grammar-ink:var(--lightningcss-light,#414927)var(--lightningcss-dark,#dde4c9)}.grammar-card-kicker{justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.grammar-card-kicker .eyebrow{margin:0}.grammar-tense-icon{width:40px;height:40px;color:var(--grammar-ink);background:var(--grammar-paper);border-radius:8px;flex:0 0 40px;place-items:center;padding:6px;display:grid}.grammar-tense-icon svg{width:28px;height:28px;display:block}.grammar-card-heading{border-bottom:1px solid var(--line);margin-bottom:24px}.grammar-card-heading h2{color:var(--grammar-ink);margin-bottom:8px}.grammar-card-heading .eyebrow{color:var(--grammar-ink)}.grammar-translation{color:var(--muted);font-size:14px;line-height:1.7}.grammar-use{max-width:800px}.grammar-card h3{margin-bottom:8px;font-size:16px;font-weight:600}.grammar-card-body{grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:32px;display:grid}.grammar-form{border-top:1px solid var(--line);padding:24px 0}.grammar-form h3{border-left:3px solid var(--grammar-ink);padding-left:12px}.grammar-formula{background:var(--grammar-paper);color:var(--grammar-ink);border-radius:8px;padding:12px 16px;font-size:14px}.grammar-example{margin-bottom:4px;font-size:18px}.grammar-form .grammar-translation{margin-bottom:0}.grammar-cues{border-left:3px solid var(--grammar-paper);padding:24px 0 24px 24px}.grammar-cues dl,.grammar-glossary dl{margin:0}.grammar-cues dl>div{margin:24px 0}.grammar-cues dt,.grammar-glossary dt{font-weight:600}.grammar-cues dt{color:var(--grammar-ink)}.grammar-cues dd,.grammar-glossary dd{color:var(--muted);margin:8px 0 0;font-size:14px}.grammar-map,.grammar-glossary{border:1px solid var(--control-border);border-radius:8px}.grammar-map summary,.grammar-glossary summary{cursor:pointer;min-height:48px;padding:16px;font-weight:600}.grammar-map ul{border-left:2px solid var(--line);gap:16px;margin:8px 24px 24px;padding-left:24px;font-size:14px;display:grid}.grammar-glossary dl{grid-template-columns:1fr 1fr;gap:24px;padding:8px 24px 24px;display:grid}.grammar-glossary dl>div{border-left:2px solid var(--line);padding-left:16px}.grammar-cards.is-comparing{grid-template-columns:repeat(var(--grammar-column-count), minmax(clamp(192px, calc(100% - var(--grammar-add-space)), 320px), 1fr)) 48px;grid-template-rows:repeat(8,auto);align-items:stretch;row-gap:0;display:grid}.is-comparing .grammar-column{grid-row:1/span 8;grid-template-rows:subgrid;display:grid}.is-comparing .grammar-column-controls{grid-row:1}.is-comparing .grammar-card{grid-row:2/span 7;grid-template-rows:subgrid;padding:24px;display:grid}.is-comparing .grammar-card-body{grid-row:3/span 4;grid-template-columns:minmax(0,1fr);grid-template-rows:subgrid;gap:0}.is-comparing .grammar-card-body>section{grid-row:1/span 3;grid-template-rows:subgrid;display:grid}.is-comparing .grammar-map{align-self:start}.is-comparing .grammar-add{grid-row:1;align-self:start}.is-comparing .grammar-cues{border-top:3px solid var(--grammar-paper);border-left:0;padding:24px 0}@media (max-width:750px){.grammar-cards{--grammar-add-space:64px;column-gap:16px}.grammar-column{flex-basis:clamp(192px,100% - 64px,320px)}.grammar-card,.is-comparing .grammar-card{padding:16px}.grammar-card-body,.grammar-glossary dl{grid-template-columns:1fr}.grammar-cues{border-left:0;border-top:1px solid var(--line);padding:24px 0}.grammar-card-heading h2{font-size:26px}}html:has(.cefr-jump){scroll-padding-top:calc(var(--site-header-height) + 92px)}.cefr-jump{top:var(--site-header-height);z-index:4;margin-top:var(--space-block);border-bottom:1px solid var(--line);background:var(--background);position:sticky}.cefr-jump ol{scrollbar-width:none;align-items:center;gap:4px;margin:0;padding:6px 0;list-style:none;display:flex;overflow-x:auto}.cefr-jump li:nth-child(6){border-right:1px solid var(--line);margin-right:12px;padding-right:12px}.cefr-jump a{min-width:44px;min-height:44px;color:var(--ink);white-space:nowrap;border-radius:8px;justify-content:center;align-items:center;padding:0 12px;font-size:14px;font-weight:600;text-decoration:none;display:inline-flex}.cefr-jump a:hover{background:var(--soft)}.cefr-jump a.cefr-jump-level{font-family:var(--font-serif);color:var(--accent);font-size:19px;font-weight:500}.cefr-heading{max-width:850px}.cefr-introduction{border:1px solid var(--border);background:var(--paper);border-radius:12px;max-width:850px;margin-bottom:48px;padding:24px 28px}.cefr-introduction h2{margin-bottom:12px;font-size:23px}.cefr-introduction p{color:var(--muted);margin-bottom:8px}.cefr-introduction p:last-child{margin-bottom:0}.cefr-introduction .cefr-scope{color:var(--ink);font-weight:600}.cefr-evidence{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 24px;margin:16px 0;display:grid}.cefr-evidence>div{border-left:2px solid var(--line);padding-left:16px}.cefr-evidence dt{font-weight:600}.cefr-evidence dd{color:var(--muted);margin:4px 0 0;font-size:14px}.cefr-level-code{font-family:var(--font-serif);letter-spacing:-.02em;color:var(--accent);font-size:40px;line-height:1}.cefr-ladder h2{margin-bottom:16px}.cefr-ladder ol{grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;margin:0;padding:0;list-style:none;display:grid}.cefr-ladder a{border:1px solid var(--border);background:var(--paper);border-radius:12px;flex-direction:column;gap:12px;height:100%;min-height:44px;padding:20px;text-decoration:none;transition:background-color .15s,border-color .15s;display:flex}.cefr-ladder a:hover{background:var(--soft);border-color:var(--control-border)}.cefr-ladder-copy{gap:4px;display:grid}.cefr-ladder-copy strong{font-weight:500;line-height:1.4}.cefr-ladder-copy>span:last-child{color:var(--muted);font-size:14px;line-height:1.5}.cefr-level,.cefr-section{border-top:1px solid var(--line);margin-top:64px;padding-top:32px}.cefr-section>p{max-width:var(--measure)}.cefr-level-heading{max-width:800px}.cefr-level-heading .eyebrow{margin-bottom:8px}.cefr-level-heading h2{flex-wrap:wrap;align-items:baseline;gap:16px;margin-bottom:8px;display:flex}.cefr-level-heading h2 .cefr-level-code{font-size:48px}.cefr-level-headline{color:var(--muted);margin-bottom:24px;font-size:15px}.cefr-summary{max-width:var(--measure);font-size:17px;line-height:1.7}.cefr-shift{max-width:var(--measure);border-left:2px solid var(--accent);color:var(--muted);margin:16px 0 0;padding-left:16px}.cefr-shift strong{color:var(--ink);font-weight:600}.cefr-sample{border:1px solid var(--border);border-left:3px solid var(--accent);background:var(--paper);border-radius:0 12px 12px 0;max-width:800px;margin:24px 0 0;padding:20px 24px}.cefr-sample blockquote{font-family:var(--font-serif);margin:0;font-size:18px;line-height:1.6}.cefr-sample blockquote p{margin:0 0 8px}.cefr-sample blockquote p:last-child{margin-bottom:0}.cefr-sample blockquote b{font-family:var(--font-sans);color:var(--muted);margin-right:8px;font-size:14px;font-weight:600}.cefr-sample figcaption{color:var(--muted);margin-top:12px;font-size:14px}.cefr-level h3{margin:var(--space-group) 0 16px;letter-spacing:-.02em;font-size:22px;font-weight:500}.cefr-skill-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px 24px;display:grid}.cefr-skill-grid article{border-top:1px solid var(--control-border);padding-top:16px}.cefr-skill-grid h4{font-family:var(--font-serif);margin:0 0 8px;font-size:20px;font-weight:400}.cefr-skill-grid p{color:var(--muted);margin:0;font-size:14px}.cefr-hint{color:var(--muted);margin-bottom:12px;font-size:14px}.cefr-checklist{columns:2;column-gap:32px;max-width:960px;margin:0;padding-left:24px}.cefr-checklist li{break-inside:avoid;margin-bottom:8px;padding-left:4px}.cefr-details-group{gap:12px;margin-top:32px;display:grid}.cefr-details{border:1px solid var(--control-border);border-radius:8px;min-width:0}.cefr-details summary{cursor:pointer;min-height:48px;padding:16px;font-weight:600}.cefr-details summary span{color:var(--muted);font-size:14px;font-weight:400}.cefr-details-body{padding:0 16px 24px}.cefr-details-body>p:first-child{margin-top:8px}.cefr-details-body .table-scroll{margin-top:16px}.cefr-caveat{color:var(--muted);margin:16px 0 0;font-size:14px}.cefr-aspects{gap:16px;margin:8px 0 0;display:grid}.cefr-aspects dt{font-weight:600}.cefr-aspects dd{color:var(--muted);margin:4px 0 0;font-size:15px}.cefr-task-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.cefr-task-grid article{border:1px solid var(--border);background:var(--paper);border-radius:10px;padding:16px}.cefr-task-grid h4{margin:0 0 12px;font-size:16px;font-weight:600}.cefr-task-grid dl{gap:12px;margin:0;display:grid}.cefr-task-grid dt{font-size:14px;font-weight:600}.cefr-task-grid dd{color:var(--muted);margin:4px 0 0;font-size:14px}.cefr-return{margin-top:24px}.cefr-table th,.cefr-table td{vertical-align:top}.cefr-table tbody th{overflow-wrap:normal;min-width:150px;font-weight:600}.cefr-table em{font-size:15px}.cefr-table--grammar{min-width:560px}.cefr-table--comparison{min-width:1080px}.cefr-table--comparison th:first-child,.cefr-table--comparison td:first-child{background:var(--paper);position:sticky;left:0}.cefr-table--comparison thead th:first-child{background:var(--soft)}.cefr-table--exams{min-width:1040px}.cefr-provider{color:var(--muted);margin-top:4px;font-size:13px;font-weight:400;display:block}.cefr-comparison .table-scroll{margin-top:24px}.cefr-transitions ol{max-width:800px;margin:24px 0 0;padding:0;list-style:none}.cefr-transitions li{border-top:1px solid var(--line);padding:20px 0}.cefr-transitions li:last-child{border-bottom:1px solid var(--line)}.cefr-transitions h3{flex-wrap:wrap;align-items:baseline;gap:4px 12px;margin:0 0 8px;font-size:20px;font-weight:500;display:flex}.cefr-transitions h3 span{font-family:var(--font-serif);color:var(--accent)}.cefr-transitions li p{color:var(--muted);margin:0;font-size:15px}.cefr-intention dl{gap:16px;max-width:850px;margin:24px 0 0;display:grid}.cefr-intention dl>div{border-bottom:1px solid var(--line);grid-template-columns:56px minmax(0,1fr);align-items:start;gap:16px;padding-bottom:16px;display:grid}.cefr-intention dt .cefr-level-code{font-size:28px}.cefr-intention dd{font-family:var(--font-serif);margin:0;font-size:17px;line-height:1.6}.cefr-readiness ul{max-width:800px;margin:0 0 16px;padding-left:24px}.cefr-readiness li{margin-bottom:8px}.cefr-readiness .cefr-details{margin-top:24px}.cefr-sources{margin-top:48px}.cefr-sources ul{color:var(--muted);margin:8px 0 0;padding-left:24px;font-size:14px}.cefr-sources dl{gap:16px;margin:16px 0 0;display:grid}.cefr-sources dt{font-weight:600}.cefr-sources dt a{color:var(--accent)}.cefr-sources dd{color:var(--muted);margin:4px 0 0;font-size:14px}@media (max-width:1100px){.cefr-ladder ol{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:950px){.cefr-skill-grid,.cefr-task-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:680px){.cefr-ladder ol{grid-template-columns:repeat(2,minmax(0,1fr))}.cefr-ladder a{padding:16px}.cefr-introduction{padding:20px 18px}.cefr-evidence{grid-template-columns:minmax(0,1fr)}.cefr-level-heading h2 .cefr-level-code{font-size:40px}.cefr-checklist{columns:1}.cefr-details-body{padding:0 12px 20px}.cefr-sample{padding:16px 18px}}@media (max-width:620px){.cefr-skill-grid,.cefr-task-grid{grid-template-columns:minmax(0,1fr)}.cefr-intention dl>div{grid-template-columns:minmax(0,1fr);gap:4px}}@media (max-width:400px){.cefr-ladder ol{grid-template-columns:minmax(0,1fr)}}.conditional-guide .grammar-selection-toolbar{justify-content:flex-end;display:flex}.conditional-guide .grammar-selection-actions{border:0;padding:0}.conditional-introduction{background:var(--paper);border:1px solid var(--border);border-radius:12px;max-width:850px;margin-bottom:32px;padding:24px}.conditional-intro-parts{gap:16px;margin:24px 0;display:grid}.conditional-intro-parts dt,.conditional-formulas dt,.conditional-example-label{font-size:14px;font-weight:600}.conditional-intro-parts dd,.conditional-formulas dd{margin:8px 0 0}.conditional-card>.conditional-section{border-top:1px solid var(--line);padding:24px 0}.conditional-card .grammar-card-heading{border-bottom:0;margin-bottom:0}.conditional-card h4{color:var(--accent);margin:0 0 16px;font-size:14px}.conditional-pattern+.conditional-pattern,.conditional-example+.conditional-example{margin-top:24px}.conditional-formulas{gap:12px;margin:16px 0;display:grid}.conditional-example-label{margin-bottom:8px}.conditional-example,.conditional-mistake{border-left:2px solid var(--line);padding-left:16px}.conditional-section p,.conditional-detail-content p{max-width:var(--measure)}.conditional-detail-content{padding:8px 16px 16px}.conditional-topics{gap:16px;margin-top:48px;display:grid}.conditional-guide .grammar-cards.is-comparing{grid-template-rows:repeat(7,auto)}.conditional-guide .is-comparing .grammar-column{grid-row:1/span 7}.conditional-guide .is-comparing .conditional-card{grid-row:2/span 6}.conditional-illustration{max-width:480px;margin:24px auto}.conditional-illustration a{color:var(--accent);border-radius:8px;display:block}.conditional-illustration img{aspect-ratio:3/2;object-fit:contain;border-radius:8px;width:100%;height:auto;display:block}.conditional-illustration-action{text-underline-offset:3px;align-items:center;min-height:44px;font-size:14px;text-decoration:underline;display:flex}.conditional-illustration figcaption{color:var(--muted);font-size:14px;line-height:1.7}.preposition-intro{max-width:var(--measure);color:var(--muted);margin:0 0 24px}.preposition-tabs{border-bottom:1px solid var(--line);flex-wrap:wrap;gap:8px;padding-bottom:24px;display:flex}.preposition-tabs button{border:1px solid var(--control-border);min-height:44px;color:var(--ink);font:inherit;cursor:pointer;background:0 0;border-radius:8px;padding:8px 20px;font-size:15px}.preposition-tabs button:hover{background:var(--paper)}.preposition-tabs button[aria-selected=true]{background:var(--soft);color:var(--accent);border-color:var(--accent);text-underline-offset:5px;font-weight:600;text-decoration:underline}.preposition-panel{padding-top:32px}.preposition-panel[hidden]{display:none}.preposition-section-heading{margin-bottom:32px}.preposition-section-heading h2{margin:8px 0 12px}.preposition-section-heading>p:last-child{color:var(--muted);margin:0}.preposition-group-heading{margin:32px 0 16px;font-size:18px;font-weight:500}.preposition-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:24px;display:grid}.preposition-card{border:1px solid var(--border);background:var(--paper);overflow-wrap:anywhere;border-radius:12px;min-width:0;padding:24px}.preposition-grid--featured .preposition-card{border-top:3px solid var(--accent)}.preposition-card h4{color:var(--accent);font:400 32px/1.2 var(--font-serif);margin:0 0 8px}.preposition-meaning{color:var(--muted);margin:0;font-size:14px}.preposition-card>p{margin:24px 0}.preposition-diagram{color:var(--accent);margin:24px 0}.preposition-diagram svg{width:100%;height:88px;display:block}.preposition-diagram figcaption{text-align:center;color:var(--muted);margin-top:8px;font-size:13px}.preposition-examples{margin:24px 0;padding:0;list-style:none}.preposition-examples li+li{margin-top:16px}.preposition-examples p{margin:0}.preposition-examples [lang=en]{font:400 18px/1.6 var(--font-serif)}.preposition-examples .grammar-translation{margin-top:4px}.preposition-detail{border-top:1px solid var(--line)}.preposition-detail summary{min-height:44px;color:var(--accent);cursor:pointer;overflow-wrap:anywhere;padding:12px 0;font-size:14px;font-weight:500}.preposition-detail>p,.preposition-detail>div{max-width:760px;margin:8px 0 24px}.preposition-detail>p,.preposition-detail>div>p{font-size:15px}.preposition-comparisons{margin-top:48px}.preposition-comparisons h3{margin:0 0 24px;font-size:24px;font-weight:500}.preposition-sources{color:var(--muted);margin-top:48px}.preposition-sources a{align-items:center;min-height:44px;display:inline-flex}@media (max-width:950px){.preposition-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.preposition-grid--featured{grid-template-columns:1fr}}@media (max-width:680px){.preposition-grid{grid-template-columns:1fr;gap:16px}.preposition-card{padding:20px}.preposition-tabs{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.preposition-tabs button{overflow-wrap:anywhere;padding:8px}}.modal-introduction,.modal-reference{--grammar-paper:var(--soft);--grammar-ink:var(--accent)}.modal-introduction{border:1px solid var(--border);background:var(--paper);border-radius:12px;padding:24px}.modal-introduction p,.modal-reference>p,.modal-section p,.modal-detail-content p{max-width:var(--measure)}.modal-index{flex-wrap:wrap;gap:8px 24px;margin:24px 0;display:flex}.modal-index a{min-height:44px;color:var(--accent);text-underline-offset:4px;align-items:center;text-decoration:underline;display:inline-flex}.modal-reference{border-top:1px solid var(--line);min-width:0;scroll-margin-top:calc(var(--site-header-height) + 72px);margin-top:64px;padding-top:24px}.modal-card .grammar-card-heading{border-bottom:0;margin-bottom:0}.modal-card .grammar-card-heading h3{color:var(--accent);margin:0;font-size:32px}.modal-section{border-top:1px solid var(--line);padding:24px 0}.modal-section h4{margin:0 0 12px;font-size:18px;font-weight:600}.modal-example{border-left:1px solid var(--line);padding-left:16px}.modal-example+.modal-example{margin-top:24px}.modal-example h5{margin:0 0 8px;font-size:14px;font-weight:600}.modal-detail-content{padding:8px 16px 16px}.modal-guide .grammar-cards.is-comparing{grid-template-rows:repeat(7,auto)}.modal-guide .is-comparing .grammar-column{grid-row:1/span 7}.modal-guide .is-comparing .modal-card{grid-row:2/span 6}@media (max-width:750px){.modal-introduction{padding:16px}.modal-card .grammar-card-heading h3{font-size:26px}}.time-guide{gap:64px;display:grid}.time-jump{border-block:1px solid var(--line);flex-wrap:wrap;gap:8px 24px;padding:12px 0;display:flex}.time-jump a{min-height:44px;color:var(--accent);text-underline-offset:5px;align-items:center;gap:8px;display:inline-flex}.time-jump a span{color:var(--muted);font-variant-numeric:tabular-nums;font-size:13px}.time-section{gap:24px;min-width:0;scroll-margin-top:120px;display:grid}.time-section+.time-section{border-top:1px solid var(--line);padding-top:48px}.time-section header{max-width:760px}.time-section h2{margin:8px 0 16px}.time-section h3,.time-section p{margin:0}.time-section .eyebrow{margin-bottom:8px}.time-grid{gap:16px;display:grid}.time-grid--two{grid-template-columns:repeat(2,minmax(0,1fr))}.time-grid--three{grid-template-columns:repeat(3,minmax(0,1fr))}.time-grid--four{grid-template-columns:repeat(4,minmax(0,1fr))}.time-card{background:var(--paper);border:1px solid var(--border);border-radius:12px;align-content:start;gap:12px;min-width:0;padding:24px;display:grid}.time-card h3{color:var(--accent);font:400 26px/1.25 var(--font-serif)}.time-section .time-english,.time-example>p:first-child{font:400 18px/1.6 var(--font-serif)}.time-example{border-left:2px solid var(--line);padding-left:16px}.time-example .grammar-translation{margin-top:4px}.time-note{background:var(--soft);border-radius:12px;padding:24px}.time-note .time-example{border-color:var(--control-border);margin-top:16px}.time-tag{background:var(--soft);color:var(--accent);border-radius:6px;justify-self:start;padding:4px 8px}.time-detail{border-block:1px solid var(--line);padding:8px 0}.time-detail summary{cursor:pointer;min-height:44px;color:var(--accent);align-content:center;padding:8px 0;font-weight:600}.time-detail p,.time-detail .time-example{margin:16px 0}.time-detail .time-example p{margin:4px 0}.time-clock-panel{background:var(--paper);border:1px solid var(--border);border-radius:12px;grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);align-items:center;gap:32px;padding:32px;display:grid}.time-clock-figure{text-align:center;min-width:0;margin:0}.time-clock{width:100%;max-width:320px;height:auto;color:var(--ink)}.time-clock-face{fill:var(--background);stroke:var(--accent);stroke-width:3px}.time-clock text{fill:var(--ink);font:22px var(--font-serif)}.time-clock-mark{stroke:var(--accent);stroke-width:2px}.time-clock-tick{stroke:var(--control-border);stroke-width:1px}.time-clock-hour{stroke:var(--ink);stroke-width:6px;stroke-linecap:round}.time-clock-minute{stroke:var(--accent);stroke-width:3px;stroke-linecap:round}.time-clock-figure figcaption{font:400 32px/1.5 var(--font-serif);color:var(--accent)}.time-clock-reading{min-width:0}.time-clock-controls{flex-wrap:wrap;gap:12px;margin:16px 0 24px;display:flex}.time-clock-controls label{flex:90px;gap:4px;min-width:0;font-size:14px;display:grid}.time-clock-controls select{border:1px solid var(--control-border);background:var(--paper);width:100%;min-height:44px;color:var(--ink);font:inherit;border-radius:6px;padding:8px}.time-clock-answer{gap:12px;display:grid}.time-clock-answer .eyebrow{margin:12px 0 0}.time-clock-answer>.time-english:first-child{color:var(--accent);font-size:30px;line-height:1.35}.time-week{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:0;padding:0;list-style:none;display:grid}.time-week li{border-top:2px solid var(--line);background:var(--paper);border-radius:0 0 8px 8px;padding:20px}.time-week .time-weekend{background:var(--soft);border-color:var(--accent)}.time-week h3{font:400 22px/1.4 var(--font-serif)}.time-week p{color:var(--muted);margin:4px 0 12px;font-size:14px}.time-months{grid-template-columns:repeat(3,minmax(0,1fr));gap:0 24px;margin:0;padding:0;list-style:none;display:grid}.time-months li{border-top:1px solid var(--line);align-items:center;gap:16px;padding:16px 0;display:flex}.time-month-number{font:24px var(--font-serif);color:var(--muted)}.time-months h3{font:400 22px/1.4 var(--font-serif);color:var(--accent)}.time-months p{color:var(--muted);font-size:14px}.time-season-months{gap:12px;margin:0;display:grid}.time-season-months dt{color:var(--muted);font-size:13px}.time-season-months dd{margin:0;font-size:14px}.time-schedule{border:1px solid var(--border);background:var(--paper);border-radius:12px;grid-template-columns:1fr 1.4fr;gap:24px;padding:24px;display:grid}.time-schedule ul{margin:0;padding:0;list-style:none}.time-schedule li{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;padding:16px 0;display:grid}.time-schedule li:first-child{padding-top:0}.time-schedule li:last-child{border:0;padding-bottom:0}.time-schedule li div{align-content:start;display:grid}.time-schedule strong{font-weight:500}.time-related{flex-wrap:wrap;gap:16px 32px;display:flex}@media (max-width:950px){.time-grid--four{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:680px){.time-guide{gap:48px}.time-clock-panel,.time-schedule,.time-grid{grid-template-columns:minmax(0,1fr)}.time-clock-panel,.time-card,.time-note,.time-schedule{padding:20px}.time-clock{max-width:260px}.time-week,.time-months{grid-template-columns:repeat(2,minmax(0,1fr))}.time-week li{padding:12px}.time-months{gap:0 12px}.time-week h3,.time-months h3{overflow-wrap:anywhere;font-size:19px}.time-months li{gap:8px}.time-month-number{font-size:18px}.time-schedule li{grid-template-columns:minmax(0,1fr);gap:8px}}.time-clock-intro{gap:8px;margin-top:24px;display:grid}.verb-toolbar{justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:24px;display:flex}.verb-toolbar h2{margin:0 0 8px}.verb-toolbar p{color:var(--muted);max-width:var(--measure);margin:0;font-size:14px}.verb-view-options{border:0;flex-wrap:wrap;gap:8px;min-width:150px;padding:0;display:flex}.verb-view-options legend{color:var(--muted);font-size:14px}.search-form .verb-view-options label{border:1px solid var(--control-border);cursor:pointer;border-radius:8px;align-items:center;gap:8px;min-height:44px;padding:0 12px;display:flex}.verb-view-options label:has(input:checked){background:var(--soft);color:var(--accent)}.search-form .verb-view-options input{width:16px;height:16px;accent-color:var(--accent);margin:0}.verb-badges{flex-wrap:wrap;gap:4px;display:inline-flex}.verb-scroll-hint{color:var(--muted);font-size:14px}.verb-table-scroll{border:1px solid var(--border);background:var(--paper);border-radius:12px;max-width:100%;overflow-x:auto}.verb-table{border-collapse:collapse;width:100%;min-width:1180px;font-size:14px}.verb-table th{background:var(--soft);text-align:left;vertical-align:top;padding:16px 12px;font-weight:600}.verb-table th small,.verb-form-grid dt small{color:var(--muted);margin-top:4px;font-size:13px;font-weight:400;display:block}.verb-table td{vertical-align:top;border-top:1px solid var(--line);min-width:120px;padding:16px 12px}.verb-table .verb-meaning{min-width:160px}.verb-table td:first-child{min-width:190px}.verb-identity{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:12px;display:flex}.verb-identity strong{font-family:var(--font-serif);color:var(--accent);overflow-wrap:anywhere;font-size:22px}.verb-identity .verb-badges{flex-basis:100%}.verb-cell-forms{margin:0;padding:0;list-style:none}.verb-cell-forms li{flex-direction:column;align-items:flex-start;gap:2px;display:flex}.verb-cell-forms li+li{margin-top:12px}.verb-form-word{font-family:var(--font-serif);overflow-wrap:anywhere;font-size:18px}.verb-cell-forms small{color:var(--muted);font-size:13px}.verb-cell-forms .vocabulary-listen{min-height:44px;margin:0}.verb-table .verb-notes-row td{border-top:0;padding:0 16px 16px}.verb-notes summary{min-height:44px;padding:10px 0;font-size:14px}.verb-notes p,.verb-notes li{max-width:var(--measure);font-size:14px}.verb-notes a{overflow-wrap:anywhere}.verb-mobile-label{display:none}.verb-form-grid{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:16px;display:grid}.verb-form-grid>div{border-top:1px solid var(--line);padding-top:12px}.verb-form-grid dd{margin:8px 0 0}@media (max-width:949px){.verb-toolbar{flex-direction:column;gap:16px}.verb-scroll-hint{display:none}.verb-table-scroll{background:0 0;border:0;border-radius:0;overflow:visible}.verb-table{min-width:0;display:block}.verb-table thead{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.verb-table tbody{border:1px solid var(--border);background:var(--paper);border-radius:12px;margin-bottom:20px;padding:16px;display:block}.verb-table .verb-sense-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.verb-table .verb-sense-row+.verb-sense-row{margin-top:24px}.verb-table td,.verb-table td:first-child,.verb-table .verb-meaning{min-width:0;padding:12px 0 0;display:block}.verb-table td:first-child,.verb-table .verb-meaning{grid-column:1/-1}.verb-table td:first-child{border-top:0}.verb-identity{margin-top:8px}.verb-mobile-label{color:var(--muted);margin-bottom:8px;font-size:13px;display:block}.verb-notes-row{display:block}.verb-table .verb-notes-row td{padding:12px 0 0}}@media (max-width:380px){.verb-table .verb-sense-row{grid-template-columns:minmax(0,1fr)}}.search-form .verb-cell-forms .vocabulary-listen{color:var(--accent);text-underline-offset:4px;background:0 0;border-color:#0000;padding:8px 0;font-size:13px;text-decoration:underline}.search-form .verb-cell-forms .vocabulary-listen:hover:not(:disabled){background:var(--soft);color:var(--accent-hover)}.vocabulary-browser .filter-body>.lesson-filters+.lesson-filters{margin-top:24px}@media (min-width:950px){.verb-table .verb-sense-row td:first-child{z-index:1;background:var(--paper);position:sticky;left:0}.verb-table thead th:first-child{z-index:2;position:sticky;left:0}}.verb-original-forms .verb-cell-forms{flex-wrap:wrap;gap:16px 24px;display:flex}.verb-original-forms .verb-cell-forms li+li{margin-top:0}.verb-table-pinned{top:calc(var(--site-header-height) + var(--vocabulary-toolbar-height,0px));z-index:3;height:0;position:sticky}.verb-table-pinned-viewport{visibility:hidden;border-inline:1px solid var(--line);box-shadow:0 1px 0 var(--line);pointer-events:none;overflow:hidden}.verb-table-pinned .verb-table{table-layout:fixed}@media (max-width:949px){.verb-table-pinned{display:none}}.vocabulary-voice:empty{display:none}.page-heading.frequency-heading{max-width:none;padding:24px 0}.frequency-heading .eyebrow{margin:0 0 8px}.frequency-heading h1{margin-bottom:12px;font-size:clamp(30px,3vw,42px)}.frequency-heading>p:last-child{margin-top:0}.search-form.library-layout.vocabulary-browser{grid-template-rows:auto;grid-template-areas:"filters results"}.vocabulary-browser .vocabulary-toolbar{top:var(--site-header-height);z-index:5;border-bottom:1px solid var(--line);background:var(--background);gap:4px;padding:12px 0 0;display:grid;position:sticky}.vocabulary-toolbar .library-search{grid-area:auto}.vocabulary-toolbar .library-search label{margin-bottom:8px}.vocabulary-toolbar .search-controls input::-webkit-search-cancel-button{cursor:pointer}.vocabulary-row{scroll-margin-top:calc(var(--vocabulary-toolbar-height,0px) + 8px)}.vocabulary-chips-row{align-items:center;gap:8px;min-width:0;margin-top:16px;display:flex;position:relative}.vocabulary-chips-row+.verb-toolbar{margin-top:24px}.vocabulary-chips{border:0;min-width:0;margin:0;padding:0}.vocabulary-chips legend{margin-bottom:12px;font-size:1rem;font-weight:600}.vocabulary-chips ul{flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none;display:flex}.search-form .vocabulary-chip{border:1px solid var(--border);background:var(--paper);min-height:44px;color:var(--ink);white-space:nowrap;cursor:pointer;border-radius:22px;align-items:center;gap:8px;margin:0;padding:6px 12px;font-size:14px;font-weight:400;display:inline-flex}.search-form .vocabulary-chip:hover{border-color:var(--control-border)}.search-form .vocabulary-chip:has(input:checked){border-color:var(--accent);background:var(--soft);color:var(--accent);font-weight:600}.vocabulary-chip:has(input:focus-visible){outline:3px solid var(--focus);outline-offset:2px}.vocabulary-chip-count{color:var(--muted);font-variant-numeric:tabular-nums;font-size:13px}.vocabulary-browser .vocabulary-more-filters{background:var(--paper);color:var(--accent);white-space:nowrap;flex:none;align-items:center;gap:8px;display:inline-flex}.vocabulary-browser .vocabulary-more-filters:hover,.vocabulary-browser .vocabulary-more-filters .filter-selection-count{background:var(--soft)}.vocabulary-sidebar{display:none}.vocabulary-sidebar-pages h2,.vocabulary-sheet-pages h3{margin:0 0 12px;font-size:1rem;font-weight:600}.vocabulary-sidebar .lesson-filters+.lesson-filters,.vocabulary-sidebar .lesson-filters+.vocabulary-sidebar-pages{margin-top:28px}.vocabulary-pager{align-items:center;gap:4px;min-width:0;display:flex}.vocabulary-browser .vocabulary-pager button{color:var(--accent);background:0 0;border:0;flex:0 0 44px;place-items:center;padding:8px;display:grid}.vocabulary-browser .vocabulary-pager button:hover:not(:disabled){background:var(--soft)}.vocabulary-browser .vocabulary-pager button:disabled{opacity:.4;background:0 0}.vocabulary-pager svg{width:20px;height:20px}.vocabulary-pager select{border:0;border-bottom:1px solid var(--control-border);min-width:0;min-height:44px;color:var(--ink);font:inherit;font-variant-numeric:tabular-nums;text-overflow:ellipsis;background:0 0;border-radius:0;flex:auto;padding:8px 4px;font-size:14px}.vocabulary-pager--compact select{flex:0 auto}.vocabulary-pagination .vocabulary-pager{width:min(100%,420px)}.vocabulary-letters ul{grid-template-columns:repeat(auto-fill,minmax(44px,1fr));gap:4px;margin:16px 0 0;padding:0;list-style:none;display:grid}.vocabulary-browser .vocabulary-letters button{border-color:var(--border);background:var(--paper);width:100%;color:var(--accent);padding:0;font-weight:600}.vocabulary-browser .vocabulary-letters button:hover:not(:disabled){background:var(--soft)}.vocabulary-browser .vocabulary-letters button:disabled{color:var(--muted);opacity:.5;background:0 0;border-color:#0000}.vocabulary-browser .vocabulary-fab{right:calc(16px + env(safe-area-inset-right));bottom:calc(16px + env(safe-area-inset-bottom));z-index:20;min-height:48px;box-shadow:0 6px 24px rgb(var(--shadow-rgb) / 19%);border-color:#ffffff30;border-radius:24px;align-items:center;gap:8px;padding:0 18px;font-weight:600;display:none;position:fixed}.vocabulary-fab svg{width:20px;height:20px}.vocabulary-browser .vocabulary-fab .filter-selection-count{background:var(--paper)}.vocabulary-sheet{background:var(--background);width:min(440px,100vw);max-width:100vw;height:100dvh;max-height:100dvh;color:var(--ink);box-shadow:0 16px 56px rgb(var(--shadow-rgb) / 19%);border:0;border-radius:16px 0 0 16px;margin:0 0 0 auto;padding:0}.vocabulary-sheet::backdrop{background:var(--scrim)}html:has(.vocabulary-sheet[open]){overflow:hidden}.vocabulary-sheet-body{flex-direction:column;gap:24px;min-height:100%;padding:0 20px;display:flex}.vocabulary-sheet-header,.vocabulary-sheet-footer{z-index:1;background:var(--background);margin:0 -20px;padding:12px 20px;position:sticky}.vocabulary-sheet-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;display:flex;top:0}.vocabulary-sheet-header h2{margin:0;font-size:1.25rem}.vocabulary-browser .vocabulary-sheet-close{color:var(--accent);background:0 0;border:0;place-items:center;padding:8px;display:grid}.vocabulary-browser .vocabulary-sheet-close:hover:not(:disabled){background:var(--soft)}.vocabulary-sheet-close svg{width:22px;height:22px}.vocabulary-sheet-pages .vocabulary-page-size{margin-top:8px}.vocabulary-sheet-footer{border-top:1px solid var(--line);padding-bottom:calc(12px + env(safe-area-inset-bottom));margin-top:auto;bottom:0}.vocabulary-sheet-footer button{width:100%}@media (prefers-reduced-motion:no-preference){.vocabulary-sheet[open]{animation:.18s ease-out vocabulary-sheet-side}}@keyframes vocabulary-sheet-side{0%{opacity:0;transform:translate(24px)}}@keyframes vocabulary-sheet-up{0%{opacity:0;transform:translateY(24px)}}.search-form.library-layout.vocabulary-browser[data-table-view]{grid-template-columns:minmax(0,1fr);grid-template-areas:"results";padding-bottom:56px}.vocabulary-browser[data-table-view] .vocabulary-sidebar{display:none}.vocabulary-browser[data-table-view] .vocabulary-more-filters,.vocabulary-browser[data-table-view] .vocabulary-fab[data-visible]{display:inline-flex}@media (min-width:1200px){.vocabulary-sidebar{top:calc(var(--site-header-height) + 16px);max-height:calc(100dvh - var(--site-header-height) - 32px);overscroll-behavior:contain;display:block;position:sticky;overflow-y:auto}.vocabulary-browser .vocabulary-more-filters{display:none}}@media (max-width:1199px){.search-form.library-layout.vocabulary-browser{grid-template:"results"/minmax(0,1fr);gap:24px;padding-bottom:56px}.vocabulary-browser .vocabulary-fab[data-visible]{display:inline-flex}}@media (max-width:699px){.vocabulary-chips-row{scrollbar-width:none;margin:0 -16px;padding:0 16px;overflow-x:auto}.vocabulary-chips-row::-webkit-scrollbar{display:none}.vocabulary-chips-row .vocabulary-chips ul{flex-wrap:nowrap}.vocabulary-toolbar .library-search label{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.vocabulary-browser .vocabulary-toolbar{gap:0;padding-top:8px}.vocabulary-results-heading .vocabulary-page-size{display:none}.vocabulary-row{padding:14px 0 8px}.vocabulary-row-heading h3{font-size:20px}.vocabulary-browser .vocabulary-row-heading .vocabulary-listen{padding:8px 10px;font-size:14px}.vocabulary-sheet{border-radius:16px 16px 0 0;width:100vw;height:auto;max-height:88dvh;margin:auto 0 0}@media (prefers-reduced-motion:no-preference){.vocabulary-sheet[open]{animation-name:vocabulary-sheet-up}}}.comparison-reference{--grammar-paper:var(--soft);--grammar-ink:var(--accent);min-width:0}.comparison-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;display:grid}.comparison-card{border:1px solid var(--border);border-top:3px solid var(--accent);background:var(--paper);border-radius:12px;min-width:0;padding:24px}.comparison-card h3{margin:0 0 16px}.comparison-card .eyebrow{margin-top:0}.comparison-section{border-top:1px solid var(--line);min-width:0;scroll-margin-top:calc(var(--site-header-height) + 72px);margin-top:64px;padding-top:24px}.comparison-section>h3{margin-top:32px}.comparison-section>p{max-width:var(--measure)}.comparison-example{margin-top:20px}.comparison-example .grammar-example{margin-bottom:4px}.comparison-example .grammar-translation{margin-top:0}.comparison-table{min-width:480px}.comparison-table caption{text-align:left;color:var(--muted);padding:0 0 12px}.comparison-table [lang=en]{font-family:var(--font-serif);font-size:16px}.comparison-meaning{color:var(--muted);font-weight:400;display:block}.comparison-rules{gap:24px;margin:24px 0;display:grid}.comparison-rules>article{border-left:2px solid var(--line);padding-left:20px}.comparison-rules h3,.comparison-rules h4{margin-top:0}.comparison-reference .grammar-map{margin-top:16px}.comparison-detail{padding:0 16px 16px}.comparison-detail a{overflow-wrap:anywhere}@media (max-width:680px){.comparison-grid{grid-template-columns:minmax(0,1fr)}.comparison-card{padding:16px}}.games-app{gap:32px;padding-bottom:48px;display:grid}.games-app p{line-height:1.65}.games-notice,.game-setup,.game-result,.game-board-panel,.game-history{background:var(--paper);border:1px solid var(--border);border-radius:12px;padding:24px}.games-notice>:first-child,.game-setup>:first-child,.game-result>:first-child,.game-board-panel>:first-child,.game-history>:first-child{margin-top:0}.games-app button,.games-app select,.games-app input{border:1px solid var(--control-border);background:var(--paper);min-height:44px;color:var(--ink);font:inherit;border-radius:8px;max-width:100%;padding:12px 16px}.games-app button{cursor:pointer;min-height:40px;padding:8px 16px;font-size:14px;line-height:1.4}.games-app .game-leave{justify-self:start}.games-app button:hover{background:var(--soft)}.games-app button:disabled{cursor:default;color:var(--muted);background:var(--background)}.games-app .button-link{background:var(--accent);color:var(--action-ink)}.games-app .button-link,.games-app .exam-button-secondary{min-height:40px;padding:9px 18px;font-size:14px;font-weight:600;line-height:1.4}.games-app .button-link:hover{background:var(--accent-hover)}.games-app .button-link:disabled{background:var(--soft);color:var(--muted)}.games-app summary{cursor:pointer;min-height:44px;padding:12px 0}.games-app details{margin:16px 0}.game-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;display:grid}.games-app label{flex-direction:column;gap:8px;min-width:0;display:flex}.game-options select{text-overflow:ellipsis;width:100%}.game-stats,.game-actions{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.game-stats{font-variant-numeric:tabular-nums;color:var(--accent)}.game-feedback{min-height:3.3em}.memory-board{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:24px 0;display:grid}.games-app .memory-card{overflow-wrap:anywhere;flex-direction:column;justify-content:center;gap:12px;min-height:176px;display:flex}.memory-card-label{color:var(--muted);font-size:13px}.memory-word{font:24px/1.4 var(--font-serif);color:var(--accent)}.memory-definition{font-size:16px;line-height:1.5}.games-app .memory-card.is-open{border:2px solid var(--accent);background:var(--soft);padding:11px 15px}.games-app .memory-card.is-solved{background:var(--paper);border-style:dashed}.games-app .game-outcome{--sky:#15281f;--sky-ink:#e9f0e8;--sky-muted:#c6d3ca;--sky-accent:#a9d7b5;--sky-line:#e9f0e829;padding:0;overflow:hidden}.game-result-hero{text-align:center;color:var(--sky-ink);background-color:var(--sky);background-image:radial-gradient(circle at 1px 1px,#e9f0e838 1px,#0000 0),radial-gradient(circle at 1px 1px,#e9f0e81f 1px,#0000 0);background-position:7px 11px,0 0;background-size:46px 46px,17px 17px;justify-items:center;gap:4px;padding:40px 24px 32px;display:grid}.games-app .game-result-hero p{margin:0}.game-result-stars{gap:10px;margin-bottom:12px;display:flex}.game-result-star{fill:none;width:48px;height:48px;stroke:var(--sky-line);stroke-width:1.6px}.game-result-star:nth-child(2){width:60px;height:60px;margin-top:-8px}.game-result-star.is-lit{fill:var(--lamp-light);stroke:none;animation:.64s cubic-bezier(.3,1.4,.5,1) both result-star}@keyframes result-star{0%{opacity:0;transform:scale(.3)rotate(-25deg)}to{opacity:1;transform:none}}.games-app .game-result-eyebrow{color:var(--sky-muted);letter-spacing:.08em;text-transform:uppercase;font-size:12px;font-weight:600}.game-result-hero h2{color:var(--sky-ink);margin:4px 0 0}.games-app .game-result-headline{color:var(--sky-muted);font:italic 18px/1.4 var(--font-serif)}.games-app .game-score{font:72px/1 var(--font-serif);font-variant-numeric:tabular-nums;color:var(--sky-accent);margin:16px 0 4px}.game-score span{font:18px/1.5 var(--font-sans), sans-serif;color:var(--sky-muted)}.games-app .game-result-record{color:var(--sky-muted);flex-wrap:wrap;justify-content:center;align-items:center;gap:4px 12px;font-size:14px;display:flex}.game-result-badge{border:1px solid var(--lamp-light);color:var(--lamp-light);border-radius:999px;padding:2px 12px;font-weight:600}.game-result-badge:before{content:"✦ "}.game-result-stats{grid-template-columns:repeat(auto-fit,minmax(128px,1fr));gap:8px;width:min(100%,720px);margin:24px 0 0;padding:0;list-style:none;display:grid}.game-result-stats li{border:1px solid var(--sky-line);border-radius:10px;gap:2px;padding:12px 8px;display:grid}.game-result-stats strong{font:600 24px/1.2 var(--font-serif);font-variant-numeric:tabular-nums;color:var(--sky-ink)}.game-result-stats span{color:var(--sky-muted);font-size:12px}.game-result-actions{flex-wrap:wrap;justify-content:center;align-items:center;gap:8px 20px;margin-top:24px;display:flex}.games-app .game-result-actions .button-link{background:var(--sky-accent);color:var(--sky)}.games-app .game-result-actions .game-text-button{color:var(--sky-muted)}.games-app .game-result-actions .game-text-button:hover{color:var(--sky-ink)}.game-outcome>h3{margin:28px 24px 12px}.game-vocabulary{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px;margin:0 24px 24px;padding:0;list-style:none;display:grid}.game-vocabulary li{border:1px solid var(--border);overflow-wrap:anywhere;border-radius:10px;align-content:start;gap:6px;padding:14px 16px;display:grid}.game-vocabulary-head{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.game-vocabulary strong{font:400 21px/1.3 var(--font-serif);color:var(--accent)}.games-app .game-vocabulary p{margin:0;font-size:15px;line-height:1.5}.game-vocabulary a{color:var(--muted);font-size:13px}.game-vocabulary-state{border:1px solid var(--border);color:var(--muted);border-radius:999px;flex-shrink:0;padding:1px 8px;font-size:12px}.is-solved .game-vocabulary-state{border-color:var(--feedback-correct-edge);background:var(--feedback-correct-fill);color:var(--ink)}.is-revealed .game-vocabulary-state{border-style:dashed}.is-open .game-vocabulary-state{border-color:var(--feedback-wrong-edge)}@media (prefers-reduced-motion:reduce){.game-result-star.is-lit{animation:none}}@media (max-width:680px){.game-result-hero{padding:32px 16px 24px}.games-app .game-score{font-size:56px}.game-result-stats{border:1px solid var(--sky-line);border-radius:10px;display:block}.game-result-stats li{border:0;border-radius:0;flex-direction:row-reverse;justify-content:space-between;align-items:baseline;padding:8px 14px;display:flex}.game-result-stats li+li{border-top:1px solid var(--sky-line)}.game-result-stats strong{font-size:18px}.game-result-stats span{font-size:14px}.game-outcome>h3{margin-inline:16px}.game-vocabulary{margin:0 16px 16px}}.history-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:4px 16px;display:flex}.history-head h2{margin:0}.games-app .history-head p,.games-app .history-empty{color:var(--muted);margin:0;font-size:14px}.games-app .history-empty{margin-top:8px}.history-list{margin:16px 0 0;padding:0;list-style:none;display:grid}.games-app .history-row{border-top:1px solid var(--line);overflow-wrap:anywhere;grid-template-columns:92px minmax(0,1fr) auto;align-items:center;gap:8px 20px;padding:14px 0;display:grid}.history-score{justify-items:start;line-height:1;display:grid}.history-score strong{font:400 30px/1 var(--font-serif);font-variant-numeric:tabular-nums;color:var(--accent);margin-top:6px}.history-score>span:last-child{color:var(--muted);font-size:12px}.history-stars{gap:2px;display:inline-flex}.history-stars svg{fill:none;width:14px;height:14px;stroke:var(--border);stroke-width:2px}.history-stars svg.is-lit{fill:var(--memory-star);stroke:none}.games-app .history-main p{margin:0}.games-app .history-title{flex-wrap:wrap;align-items:center;gap:4px 10px;font-weight:600;display:flex}.history-badge{border:1px solid var(--memory-star);color:var(--memory-star);border-radius:999px;padding:0 8px;font-size:12px;font-weight:600}.history-badge:before{content:"✦ "}.games-app .history-meta{color:var(--muted);margin-top:2px;font-size:14px}.games-app .history-stats{color:var(--muted);grid-template-columns:repeat(2,auto);gap:2px 16px;margin:0;font-size:13px;display:grid}.history-stats b{color:var(--ink);font-variant-numeric:tabular-nums}.games-app .history-row{border-radius:10px;margin-inline:-12px;padding-inline:12px;position:relative}.games-app .history-row:hover{background:var(--soft)}.games-app .history-open{z-index:1;cursor:pointer;background:0 0;border:0;border-radius:10px;width:100%;min-height:0;padding:0;position:absolute;inset:0}.games-app .history-open:hover{background:0 0}.history-open:focus-visible{outline:3px solid var(--focus);outline-offset:-2px}.games-app .history-review-eyebrow{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;margin:0 0 4px;font-size:12px;font-weight:600}.history-review-summary{border:1px solid var(--line);border-radius:12px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px 32px;margin:20px 0 8px;padding:16px 20px;display:flex}.history-review .game-vocabulary{margin:0}.games-app .history-review-note{color:var(--muted);margin:12px 0 0;font-size:14px}.games-app .history-clear{margin-top:12px}@media (max-width:680px){.games-app .history-row{grid-template-columns:72px minmax(0,1fr)}.history-score strong{font-size:24px}.games-app .history-stats{flex-wrap:wrap;grid-column:2;gap:2px 12px;display:flex}}.game-history-confirm{flex-wrap:wrap;align-items:baseline;gap:4px 16px;font-size:14px;display:flex}.games-app .game-history-confirm p{margin:0}.games-app .game-text-button.is-danger{color:var(--feedback-wrong-edge)}.games-app code{overflow-wrap:anywhere}@media (max-width:950px){.memory-board{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:680px){.game-options{grid-template-columns:minmax(0,1fr)}.games-notice,.game-setup,.game-result,.game-board-panel,.game-history{padding:16px}.memory-board{gap:8px}.games-app .memory-card{padding:12px 8px}.games-app .memory-card.is-open{padding:11px 7px}.memory-word{font-size:20px}}@media (max-width:380px){.memory-board{grid-template-columns:minmax(0,1fr)}}.games-app,.game-board-panel{min-width:0}.word-search-scroll{border:1px solid var(--control-border);border-radius:8px;max-width:100%;margin:24px 0;padding:6px;overflow-x:auto}.word-search-board{-webkit-user-select:none;user-select:none;gap:4px;width:max-content;display:grid}.word-search-board.is-drag-mode{touch-action:none}.games-app .word-search-cell{width:44px;max-width:none;height:44px;font:bold 20px/1 var(--font-serif);border-radius:4px;padding:0}.games-app .word-search-cell.is-found{background:var(--soft);text-underline-offset:5px;text-decoration:underline}.games-app .word-search-cell.is-selected{border:3px solid var(--accent);background:var(--soft)}.word-search-words{margin:0;padding:0;list-style:none}.word-search-words li{border-bottom:1px solid var(--line);margin:0;padding:8px 0}.word-search-item{align-items:center;gap:12px;min-height:44px;display:flex}.word-search-item strong{overflow-wrap:anywhere;min-width:0}.word-search-number{color:var(--muted);font-variant-numeric:tabular-nums;flex-shrink:0}.word-search-actions{flex-shrink:0;gap:8px;margin-left:auto;display:flex}.games-app .word-search-actions button{justify-content:center;align-items:center;gap:8px;min-width:44px;padding:8px 12px;display:inline-flex}.game-help-icon{flex-shrink:0;width:20px;height:20px}.word-search-status{color:var(--muted);margin-left:auto;font-size:14px}.word-search-words p{color:var(--muted);margin:8px 0 4px;font-size:14px}@media (max-width:680px){.word-action-label{display:none}.games-app .word-search-actions button{padding:8px}.word-search-item{gap:8px}}.game-chip-group{border:0;min-width:0;margin:0;padding:0}.game-chip-group legend{margin-bottom:8px;padding:0}.game-chip-options{flex-wrap:wrap;gap:8px;display:flex}.games-app .game-chip{border:1px solid var(--control-border);cursor:pointer;background:var(--paper);border-radius:24px;flex-direction:row;align-items:center;gap:8px;min-height:44px;padding:8px 12px;display:inline-flex;position:relative}.games-app .game-chip input{z-index:1;opacity:0;cursor:pointer;border:0;width:100%;height:100%;min-height:0;margin:0;padding:0;position:absolute;inset:0}.game-chip:has(input:checked){background:var(--soft);border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent);font-weight:600}.game-chip:has(input:focus-visible){outline:3px solid var(--focus);outline-offset:2px}.game-chip-icon{width:20px;height:20px;color:var(--accent);flex:0 0 20px}.crossword-board{background:var(--line);gap:2px;width:max-content;padding:2px;display:grid}.crossword-block{background:var(--crossword-block);width:44px;height:44px}.crossword-cell{background:var(--paper);width:44px;height:44px;position:relative}.games-app .crossword-cell input{text-align:center;width:44px;height:44px;font:bold 20px/1 var(--font-serif);border-radius:0;padding:10px 2px 0}.crossword-cell.is-active input{background:var(--soft);box-shadow:inset 0 0 0 1px var(--accent)}.crossword-cell.is-solved input{text-underline-offset:3px;text-decoration:underline}.crossword-number{pointer-events:none;z-index:1;font:10px/1 Arial,sans-serif;position:absolute;top:2px;left:3px}.crossword-clues{margin:0;padding:0;list-style:none}.crossword-clues li{border-bottom:1px solid var(--line);padding:16px 0}.crossword-clue-title,.crossword-answer-row{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.crossword-clue-title span{color:var(--muted)}.crossword-answer-row{align-items:end;margin:16px 0}.crossword-answer-row label{flex:180px}.crossword-answer-row input{text-transform:uppercase;letter-spacing:.15em;width:100%}.crossword-clues .game-help-icon{vertical-align:middle}.games-app{--crossword-cell:var(--lightningcss-light,#fffdf8)var(--lightningcss-dark,#31503f);--memory-star:var(--lightningcss-light,#a9700c)var(--lightningcss-dark,var(--lamp-light));--memory-moon:var(--lightningcss-light,#4f7d5e)var(--lightningcss-dark,#cfe6d4)}.game-board-panel>h2{margin-bottom:16px}.games-app .game-hud{top:calc(var(--site-header-height) + 8px);z-index:5;border:1px solid var(--border);background:var(--paper);color:var(--ink);border-radius:12px;gap:8px 24px;margin:0 0 8px;padding:10px 16px;position:sticky}.game-hud-stat{gap:2px;display:grid}.game-hud-label{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;font-size:12px;font-weight:600}.game-hud-value{font:600 18px/1.3 var(--font-serif);color:var(--accent);justify-self:start}.game-hud-stat.is-urgent .game-hud-value{color:var(--ink);border-bottom:3px solid var(--feedback-wrong-edge)}.game-hud-meter{background:var(--soft);appearance:none;border:0;border-radius:999px;flex:160px;order:9;height:8px;overflow:hidden}.game-hud-meter::-webkit-progress-bar{background:var(--soft)}.game-hud-meter::-webkit-progress-value{background:var(--accent);border-radius:999px}.game-hud-meter::-moz-progress-bar{background:var(--accent);border-radius:999px}.games-app .game-feedback{min-height:1.65em;color:var(--muted);margin-block:8px 16px}.game-play-layout{flex-wrap:wrap;align-items:flex-start;gap:24px 40px;display:flex}.game-play-main{flex:0 auto;min-width:0;max-width:100%}.game-play-side{flex:320px;min-width:0}.game-play-side>h3{margin-top:0}.games-app .game-controls-help{color:var(--muted);margin:0 0 8px;font-size:14px}.games-app .game-controls-help summary{min-height:32px;padding:4px 0}.games-app .game-controls-help p{max-width:52ch;margin:4px 0 8px}.game-toolbar{flex-wrap:wrap;align-items:center;gap:8px 12px;display:flex}.games-app .game-toolbar-field{color:var(--muted);flex-direction:row;align-items:center;font-size:14px}.games-app .game-toolbar-field select{color:var(--ink)}.games-app .game-toolbar-status{color:var(--muted);margin:8px 0 0;font-size:14px}.games-app .word-search-scroll{background:var(--background);border-color:var(--border);border-radius:12px;width:max-content;margin:12px 0 0;padding:8px}.games-app .word-search-cell{background:var(--paper);border-color:#0000}.games-app .word-search-cell:hover{background:var(--soft)}.games-app .word-search-cell.is-found{background:color-mix(in srgb, var(--accent) 24%, var(--paper));color:var(--ink)}.games-app .word-search-cell.is-selected{border-color:var(--accent)}.word-search-words li:last-child,.crossword-clues li:last-child{border-bottom:0}.games-app .word-search-status{border:1px solid var(--feedback-correct-edge);background:var(--feedback-correct-fill);color:var(--ink);border-radius:999px;padding:2px 10px}.games-app .crossword-board{background:var(--crossword-block);border-radius:4px}.games-app .crossword-cell,.games-app .crossword-cell input{background:var(--crossword-cell)}.games-app .crossword-cell input{border:0}.games-app .crossword-cell.is-active input{background:var(--soft);box-shadow:inset 0 0 0 2px var(--accent)}.games-app .crossword-cell.is-solved input{color:var(--accent)}.crossword-number{color:var(--muted)}.games-app .crossword-active-clue{border-left:4px solid var(--accent);background:var(--soft);border-radius:8px;margin:0 0 12px;padding:12px 16px}.crossword-clues li{border-radius:8px;padding:12px}.crossword-clues li.is-active{background:var(--soft);border-bottom-color:#0000}.crossword-clues li p{margin:8px 0 0}.crossword-clues li.is-solved .crossword-clue-title span{color:var(--ink);font-weight:600}.crossword-clues .crossword-answer-row{margin:12px 0 0}.games-app .memory-card{transition:background-color .15s,border-color .15s,transform .15s}.games-app .memory-card:not(.is-open){background-image:radial-gradient(circle at 1px 1px, var(--line) 1px, transparent 0);background-size:14px 14px}.games-app .memory-card:not(.is-open):not([aria-disabled=true]):hover{border-color:var(--accent);transform:translateY(-2px)}.games-app .memory-card.is-wrong{border-color:var(--feedback-wrong-edge);background:var(--feedback-wrong-fill)}.games-app .memory-card.is-solved{border-color:var(--feedback-correct-edge);background:var(--feedback-correct-fill)}@media (prefers-reduced-motion:reduce){.games-app .memory-card{transition:none}.games-app .memory-card:not(.is-open):not([aria-disabled=true]):hover{transform:none}}@media (max-width:680px){.games-app .game-hud{gap:8px 16px;padding:8px 12px}.game-hud-value{font-size:16px}.games-app .word-search-scroll{width:auto}}.games-app .memory-card{align-items:center;min-height:150px;padding:28px 16px 20px;position:relative}.games-app .memory-card.is-open{padding:27px 15px 19px}.memory-card-number{color:var(--muted);font-variant-numeric:tabular-nums;opacity:.8;font-size:12px;line-height:1;position:absolute;top:8px;right:10px}.memory-card-star{width:56px;height:56px}.memory-card-ring{fill:none;stroke:var(--accent);stroke-width:1.2px;opacity:.45}.memory-card-north{stroke:var(--accent);stroke-width:2.4px;stroke-linecap:round;opacity:.7}.memory-card-pole{fill:var(--memory-star)}.memory-card-moon{fill:var(--memory-moon)}.games-app .memory-card.is-wrong{overflow:hidden}.memory-countdown{background:var(--feedback-wrong-edge);transform-origin:0;height:4px;animation:memory-countdown var(--countdown,1.8s) linear forwards;position:absolute;inset:auto 0 0}.memory-countdown.is-held{animation:none}@keyframes memory-countdown{0%{transform:scaleX(1)}to{transform:scaleX(0)}}.game-board-panel.is-focus .memory-countdown{height:6px}.games-app .memory-card.is-hinted{outline:2px dashed var(--accent);outline-offset:3px}html.has-game-focus,html.has-game-focus body{overflow:hidden}.games-app .game-board-panel.is-focus{z-index:100;overscroll-behavior:contain;background:var(--background);padding:max(16px, env(safe-area-inset-top)) max(24px, env(safe-area-inset-right)) max(24px, env(safe-area-inset-bottom)) max(24px, env(safe-area-inset-left));border:0;border-radius:0;position:fixed;inset:0;overflow:auto}.game-board-panel.is-focus>*{width:100%;max-width:1180px;margin-inline:auto}.game-board-panel.is-focus>h2{margin-bottom:12px;font-size:20px}.games-app .game-board-panel.is-focus .game-hud{top:0}@media (max-width:950px){.game-board-panel.is-focus .memory-board{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:12px 0}.games-app .game-board-panel.is-focus .memory-card{min-height:clamp(96px, calc((100dvh - 210px) / var(--memory-rows-narrow,4) - 8px), 220px);padding:24px 8px 12px}.games-app .game-board-panel.is-focus .memory-card.is-open{padding:23px 7px 11px}.game-board-panel.is-focus .memory-definition{font-size:14px}}@media (min-width:951px){.games-app .game-board-panel.is-focus:has(.memory-board){flex-direction:column;display:flex}.game-board-panel.is-focus:has(.memory-board)>*{max-width:1440px}.game-board-panel.is-focus .memory-board{grid-template-rows:repeat(var(--memory-rows,2), minmax(120px, 1fr));flex:auto;gap:clamp(12px,1.4vw,20px);margin:4px auto 0;container-type:inline-size}.games-app .game-board-panel.is-focus .memory-card{min-height:0}.games-app .game-board-panel.is-focus .game-feedback{min-height:1.5em;margin-block:6px 2px}.game-board-panel.is-focus .memory-word{font-size:clamp(26px,2.6cqi,44px)}.game-board-panel.is-focus .memory-definition{font-size:clamp(16px,1.45cqi,24px)}.game-board-panel.is-focus .memory-card-star{width:clamp(56px,6cqi,96px);height:clamp(56px,6cqi,96px)}.game-board-panel.is-focus .memory-card-number{font-size:14px}}.game-hud-actions{order:10;gap:8px;margin-left:auto;display:flex}.games-app .game-hud-button{place-items:center;width:40px;height:40px;min-height:40px;padding:0;display:inline-grid}.game-hud-button svg{width:20px;height:20px}.games-app .game-dialog{border:1px solid var(--border);background:var(--paper);width:min(760px,100% - 32px);max-height:calc(100dvh - 48px);color:var(--ink);border-radius:12px;padding:0;overflow:auto}.games-app .game-dialog::backdrop{background:rgb(var(--shadow-rgb) / 55%);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.game-dialog-body{padding:24px}.game-dialog-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 16px;display:flex}.game-dialog-head h2{margin:0}.games-app .game-dialog-note{color:var(--muted);margin:8px 0 0;font-size:14px}.games-app .game-dialog .game-setup{border:0;border-top:1px solid var(--line);background:0 0;border-radius:0;margin-top:24px;padding:24px 0 0}.games-app .game-dialog .game-setup h2{font-size:20px}@media (max-width:680px){.games-app .game-dialog{width:calc(100% - 16px);max-height:calc(100dvh - 16px)}.game-dialog-body{padding:16px}}.games-app .game-text-button{min-height:32px;color:var(--muted);text-underline-offset:3px;background:0 0;border:0;padding:4px 0;text-decoration:underline}.games-app .game-text-button:hover{color:var(--ink);background:0 0}@media (max-width:680px){.games-app .game-board-panel.is-focus{padding:max(8px, env(safe-area-inset-top)) max(12px, env(safe-area-inset-right)) max(16px, env(safe-area-inset-bottom)) max(12px, env(safe-area-inset-left))}.game-board-panel.is-focus>h2{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.games-app .memory-card{min-height:120px}.memory-card-star{width:44px;height:44px}}.games-app .game-launch{gap:28px;display:grid}.launch-head h2{margin:0}.games-app .launch-head p{color:var(--muted);margin:6px 0 0}.game-launch fieldset{border:0;min-width:0;margin:0;padding:0}.game-launch legend{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;margin-bottom:10px;padding:0;font-size:12px;font-weight:600}.launch-tiles{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.games-app .launch-tile{border:1px solid var(--control-border);background:var(--paper);cursor:pointer;text-align:center;border-radius:14px;justify-items:center;gap:4px;padding:20px 8px 16px;transition:border-color .15s,background-color .15s;display:grid;position:relative}.games-app .launch-tile:hover{border-color:var(--accent)}.games-app .launch-tile input,.games-app .launch-segmented input{z-index:1;opacity:0;cursor:pointer;border:0;width:100%;height:100%;min-height:0;margin:0;padding:0;position:absolute;inset:0}.launch-tile:has(input:checked){border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent);background:var(--soft)}.launch-tile:has(input:focus-visible){outline:3px solid var(--focus);outline-offset:2px}.launch-segmented label:has(input:focus-visible){outline:3px solid var(--focus);outline-offset:2px}.launch-preview{width:auto;max-width:72px;height:44px;fill:var(--accent);opacity:.35;margin-bottom:8px;transition:opacity .15s}.launch-tile:has(input:checked) .launch-preview{opacity:.9}.launch-tile strong{font:400 21px/1.2 var(--font-serif)}.launch-tile span{color:var(--muted);font-size:13px}.launch-row{grid-template-columns:auto auto minmax(0,1fr);align-items:start;gap:24px 32px;display:grid}.launch-row.is-general{grid-template-columns:auto auto;justify-content:start}.launch-segmented{border:1px solid var(--control-border);background:var(--paper);border-radius:999px;flex-wrap:wrap;gap:2px;padding:3px;display:inline-flex}.games-app .launch-segmented label{cursor:pointer;border-radius:999px;flex-direction:row;align-items:baseline;gap:6px;padding:10px 16px;font-size:14px;position:relative}.launch-segmented label:hover{background:var(--soft)}.games-app .launch-segmented label:has(input:checked){background:var(--accent);color:var(--action-ink);font-weight:600}.launch-segmented small{opacity:.8;font-size:12px}.launch-label{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;margin-bottom:10px;font-size:12px;font-weight:600;display:block}.games-app .launch-clock{border:1px solid var(--control-border);background:var(--paper);min-height:48px;color:var(--muted);cursor:pointer;border-radius:999px;flex-direction:row;align-items:center;gap:8px;padding:0 18px;font-size:14px;transition:background-color .15s,color .15s;display:inline-flex;position:relative}.games-app .launch-clock:hover{border-color:var(--accent)}.games-app .launch-clock input{z-index:1;opacity:0;cursor:pointer;border:0;width:100%;height:100%;min-height:0;margin:0;padding:0;position:absolute;inset:0}.launch-clock svg{width:20px;height:20px}.games-app .launch-clock:has(input:checked){border-color:var(--accent);background:var(--accent);color:var(--action-ink);font-weight:600}.launch-clock:has(input:focus-visible){outline:3px solid var(--focus);outline-offset:2px}.games-app .lesson-trigger{border-color:var(--border);background:var(--soft);text-align:left;border-radius:14px;align-items:center;gap:14px;width:fit-content;max-width:min(100%,520px);min-height:48px;padding:4px 16px 4px 12px;display:flex}.games-app .lesson-trigger:hover{border-color:var(--accent);background:var(--soft)}.lesson-trigger-icon{width:22px;height:22px;color:var(--accent);flex-shrink:0}.lesson-trigger-text{flex:auto;gap:0;min-width:0;line-height:1.3;display:grid}.lesson-trigger-title{text-overflow:ellipsis;white-space:nowrap;font-size:15px;font-weight:600;overflow:hidden}.lesson-trigger-detail{color:var(--muted);font-size:13px;font-weight:400}.lesson-trigger-action{color:var(--accent);text-underline-offset:3px;flex-shrink:0;margin-left:12px;font-size:14px;font-weight:600;text-decoration:underline}.games-app .lesson-picker{width:min(560px,100% - 32px);height:min(680px,100dvh - 48px)}.lesson-picker .game-dialog-body{box-sizing:border-box;flex-direction:column;gap:12px;height:100%;display:flex}.games-app .lesson-search{border-radius:999px;width:100%;min-height:44px;padding:10px 18px}.games-app .lesson-list{border:0;flex:auto;min-height:0;margin:0 -8px;padding:0 8px;overflow-y:auto}.lesson-group+.lesson-group,.lesson-list>.lesson-option+.lesson-group{margin-top:12px}.games-app .lesson-month{z-index:1;background:var(--paper);color:var(--muted);letter-spacing:.08em;text-transform:uppercase;margin:0;padding:6px 0;font-size:12px;font-weight:600;position:sticky;top:0}.games-app .lesson-option{cursor:pointer;border-radius:10px;flex-direction:row;grid-template-columns:64px minmax(0,1fr) auto;align-items:center;gap:12px;padding:10px 12px;display:grid;position:relative}.lesson-option:hover{background:var(--soft)}.games-app .lesson-option input{opacity:0;cursor:pointer;border:0;width:100%;height:100%;min-height:0;margin:0;padding:0;position:absolute;inset:0}.lesson-option:has(input:checked){background:var(--soft);box-shadow:inset 0 0 0 1px var(--accent)}.lesson-option:has(input:focus-visible){outline:3px solid var(--focus);outline-offset:-1px}.lesson-option-date{border:1px solid var(--border);color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap;border-radius:999px;justify-self:start;padding:2px 8px;font-size:12px}.lesson-option:has(input:checked) .lesson-option-date{border-color:var(--accent);color:var(--accent)}.lesson-option-title{min-width:0}.lesson-option-count{color:var(--muted);white-space:nowrap;font-size:13px}.lesson-option.is-short .lesson-option-title{color:var(--muted)}.lesson-option.is-short .lesson-option-count{color:var(--feedback-wrong-edge)}.games-app .lesson-empty{color:var(--muted);margin:16px 0}@media (max-width:680px){.games-app .lesson-picker{height:calc(100dvh - 16px)}.games-app .lesson-option{grid-template-columns:auto minmax(0,1fr);grid-template-areas:"date count""title title";gap:4px 10px;padding:8px 10px}.lesson-option-date{grid-area:date}.lesson-option-count{grid-area:count;justify-self:end}.lesson-option-title{grid-area:title}}.games-app .launch-warning{color:var(--ink);grid-column:1/-1;margin:0;font-size:14px}.games-app .launch-warning:not(:empty){margin-bottom:10px}.launch-footer{z-index:4;padding:14px 24px max(14px, env(safe-area-inset-bottom));border-top:1px solid var(--line);background:var(--paper);border-radius:0 0 12px 12px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:0 20px;margin:4px -24px -24px;display:grid;position:sticky;bottom:0}.games-app .launch-switch{color:var(--ink);cursor:pointer;flex-direction:row;align-items:center;gap:8px;font-size:14px;position:relative}.games-app .launch-switch input{appearance:none;border:1px solid var(--control-border);background:var(--background);cursor:pointer;border-radius:999px;width:38px;min-width:38px;height:22px;min-height:0;margin:0;padding:0;transition:background-color .15s;position:relative}.games-app .launch-switch input:before{content:"";background:var(--muted);border-radius:50%;width:16px;height:16px;transition:transform .15s;position:absolute;top:2px;left:2px}.games-app .launch-switch input:checked{border-color:var(--accent);background:var(--accent)}.games-app .launch-switch input:checked:before{background:var(--action-ink);transform:translate(16px)}.games-app .launch-switch input:focus-visible{outline:3px solid var(--focus);outline-offset:2px}.launch-switch svg{width:18px;height:18px;color:var(--accent)}.games-app .launch-footer .button-link{min-height:48px;padding:12px 28px;font-size:16px}.games-app .launch-summary{color:var(--muted);margin:0;font-size:14px}@media (max-width:680px){.launch-row,.launch-row.is-general{grid-template-columns:minmax(0,1fr)}.games-app .lesson-trigger{width:100%;max-width:100%}.launch-tiles{gap:8px}.games-app .launch-tile{padding:14px 4px 12px}.launch-preview{height:32px}.launch-tile strong{font-size:18px}.launch-footer{padding:12px 16px max(12px, env(safe-area-inset-bottom));grid-template-columns:minmax(0,1fr);justify-items:center;row-gap:8px;margin:4px -16px -16px}.games-app .launch-summary{display:none}.games-app .launch-footer .button-link{text-align:center;grid-column:1/-1;justify-content:center;justify-self:stretch}}@media (prefers-reduced-motion:reduce){.games-app .launch-tile,.launch-preview,.games-app .launch-clock,.games-app .launch-switch input,.games-app .launch-switch input:before{transition:none}}.word-search-board,.crossword-board{--cell:44px;--gap:4px;--chrome:96px}.games-app .word-search-board{grid-template-columns:repeat(var(--cols), var(--cell));gap:var(--gap)}.games-app .word-search-board .word-search-cell{box-sizing:border-box;width:var(--cell);min-width:0;height:var(--cell);min-height:0;font-size:calc(var(--cell) * .45);padding:0}.games-app .crossword-board{--gap:2px;grid-template-columns:repeat(var(--cols), var(--cell));gap:var(--gap)}.games-app .crossword-block,.games-app .crossword-cell,.games-app .crossword-cell input{width:var(--cell);height:var(--cell)}.games-app .crossword-cell input{padding:calc(var(--cell) * .22) 2px 0;font-size:calc(var(--cell) * .45)}.crossword-number{font-size:max(9px, calc(var(--cell) * .22))}@media (min-width:951px){.game-board-panel.is-focus .word-search-board,.game-board-panel.is-focus .crossword-board{--cell:clamp(44px, calc((100dvh - 230px) / var(--rows) - var(--gap)), 76px)}.game-board-panel.is-focus{--side:clamp(320px, 28vw, 420px)}.games-app .game-board-panel.is-focus:has(#game-side){padding-right:calc(var(--side) + 32px);transition:padding-right .2s}.games-app .game-board-panel.is-focus.is-side-closed:has(#game-side){padding-right:64px}.game-board-panel.is-focus .game-play-side{z-index:6;width:var(--side);border-left:1px solid var(--border);background:var(--paper);max-width:none;margin:0;padding:24px 24px 32px 28px;transition:right .2s;position:fixed;top:0;bottom:0;right:0;overflow-y:auto}.game-board-panel.is-focus.is-side-closed .game-play-side{right:calc(-1 * var(--side) - 1px)}.games-app .game-board-panel.is-focus .game-side-toggle{top:50%;right:var(--side);z-index:7;border:1px solid var(--border);background:var(--paper);border-right:0;border-radius:12px 0 0 12px;place-items:center;width:32px;height:72px;min-height:0;padding:0;transition:right .2s;display:grid;position:fixed;transform:translateY(-50%)}.games-app .game-board-panel.is-focus.is-side-closed .game-side-toggle{right:0}.game-side-toggle svg{width:18px;height:18px}.game-board-panel.is-focus .game-play-layout{justify-content:center}}@media (max-width:680px){.word-search-board,.crossword-board{--gap:2px;--cell:clamp(24px, calc((100vw - var(--chrome)) / var(--cols) - var(--gap)), 44px)}.game-board-panel.is-focus .word-search-board,.game-board-panel.is-focus .crossword-board{--chrome:60px}.games-app .word-search-scroll{padding:4px}}.games-app .game-side-toggle{display:none}@media (prefers-reduced-motion:reduce){.games-app .game-board-panel.is-focus,.game-board-panel.is-focus .game-play-side,.games-app .game-board-panel.is-focus .game-side-toggle{transition:none}}.games-app .word-search-cell.is-hinted{outline:2px dashed var(--accent);outline-offset:-4px}.games-app .word-search-cell.is-wrong{border-color:var(--feedback-wrong-edge);background:var(--feedback-wrong-fill);animation:.9s ease-out both cell-wrong}@keyframes cell-wrong{0%{transform:scale(.92)}30%{transform:none}}.games-app .crossword-cell.is-wrong input{background:var(--feedback-wrong-fill);box-shadow:inset 0 0 0 2px var(--feedback-wrong-edge)}.game-board-panel:has(.typing-board) .game-feedback{text-align:center;margin-inline:auto}.typing-board{text-align:center;justify-items:center;gap:16px;max-width:640px;margin:8px auto 24px;display:grid}.typing-meta{color:var(--muted);flex-wrap:wrap;justify-content:center;gap:4px 16px;margin:0;font-size:14px;display:flex}.typing-streak{color:var(--accent);font-weight:600}.typing-definition{font:500 clamp(22px, 4vw, 30px) / 1.3 var(--font-serif);overflow-wrap:anywhere;margin:0}.games-app .typing-listen{align-items:center;gap:8px;display:inline-flex}.typing-listen svg{width:20px;height:20px}.typing-answer{cursor:text;max-width:100%;margin-top:16px;display:block;position:relative}.typing-input{opacity:0;width:100%;font-size:16px;position:absolute;inset:0}.typing-shape{font:600 clamp(20px, 6vw, 34px) / 1.4 var(--font-serif);flex-wrap:wrap;justify-content:center;align-items:flex-end;gap:4px .7em;display:flex}.typing-word{flex-wrap:wrap;justify-content:center;align-items:flex-end;gap:4px .2em;display:flex}.typing-slot{border-bottom:2px solid var(--border);width:1.05em;min-height:1.4em;transition:border-color .15s}.typing-slot.is-filled{border-color:var(--accent)}.typing-slot.is-caret{border-color:var(--focus);border-bottom-width:3px;animation:1.1s steps(2,start) infinite typing-caret}@keyframes typing-caret{50%{border-color:#0000}}.typing-slot.is-guide{color:var(--muted);opacity:.55}.typing-mark{color:var(--muted)}.typing-answer:has(.typing-input:focus-visible) .typing-shape{outline:2px solid var(--focus);outline-offset:8px;border-radius:4px}.typing-word.is-wrong .typing-slot{border-color:var(--feedback-wrong-edge);color:var(--feedback-wrong-edge);background:var(--feedback-wrong-fill);animation:.9s ease-out both cell-wrong}.typing-help{color:var(--muted);margin:0;font-size:14px}.typing-assist{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.games-app .typing-assist button{align-items:center;gap:8px;display:inline-flex}.typing-worth{color:var(--muted);margin:-8px 0 0;font-size:14px}@media (prefers-reduced-motion:reduce){.typing-slot.is-caret,.typing-word.is-wrong .typing-slot{animation:none}}.games-app .word-search-cancel{margin:0 0 4px}.games-app .word-action-label{display:none}.games-app .word-search-actions button{width:40px;height:40px;min-height:40px;padding:0}.games-app .crossword-active-clue{align-items:center;gap:12px;display:flex}.games-app .crossword-active-clue p{flex:auto;min-width:0;margin:0}.crossword-active-actions{flex-shrink:0;gap:8px;display:flex}.games-app .crossword-clues li{padding:10px 12px}.games-app .crossword-clue-title{gap:8px}.games-app .crossword-clue-title button{border-radius:999px;min-height:32px;padding:4px 12px;font-size:13px}.games-app .crossword-clues li p{margin:6px 0 0}.games-app .crossword-clues .crossword-answer-row{flex-wrap:nowrap;align-items:center;gap:8px;margin:10px 0 0}.games-app .crossword-answer-row label{flex:auto;min-width:0}@media (prefers-reduced-motion:reduce){.games-app .word-search-cell.is-wrong{animation:none}}.exam-app{gap:24px}.exam-app h2{margin-bottom:8px}.exam-start{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;display:grid}.exam-panel{align-content:start;gap:20px;display:grid}.exam-panel p{margin-bottom:0}.exam-muted{color:var(--muted)}.exam-small{font-size:14px}.exam-block{display:block}.exam-strong{font-weight:600}.exam-number{font-variant-numeric:tabular-nums}.exam-row{align-items:center;gap:8px 12px;display:flex}.exam-wrap{flex-wrap:wrap}.exam-between{justify-content:space-between}.exam-stack{gap:16px;display:grid}.exam-stack-lg{gap:24px;display:grid}.exam-icon{width:20px;height:20px;color:var(--accent);flex:0 0 20px}.exam-icon--lg{flex-basis:28px;width:28px;height:28px}.exam-icon--correct{color:var(--feedback-correct-edge)}.exam-icon--wrong{color:var(--feedback-wrong-edge)}.exam-link{color:var(--accent);text-decoration-thickness:1px}.exam-link:hover{color:var(--accent-hover)}.exam-legend{align-items:center;gap:4px;display:flex}.games-app .game-chip.is-disabled{color:var(--muted);cursor:not-allowed;border-style:dashed}.games-app .game-chip.is-disabled input{cursor:not-allowed}.games-app .game-chip.is-disabled .game-chip-icon{color:var(--muted)}.games-app .exam-info-button{background:0 0;border-color:#0000;border-radius:50%;justify-content:center;align-items:center;padding:0;display:inline-flex}.games-app .exam-info-button:hover{background:var(--soft)}.exam-popover{border:1px solid var(--border);background:var(--paper);width:min(26rem,100vw - 32px);color:var(--ink);box-shadow:0 12px 32px rgb(var(--shadow-rgb) / 18%);border-radius:12px;padding:20px 52px 20px 20px;font-size:15px;line-height:1.6}.exam-popover::backdrop{background:var(--scrim)}.exam-popover p{margin:0 0 12px}.exam-popover p:last-of-type{margin-bottom:0}.exam-popover-title{font-weight:600}.exam-popover .exam-popover-close{min-width:44px;min-height:44px;color:var(--muted);background:0 0;border:0;justify-content:center;align-items:center;padding:0;display:inline-flex;position:absolute;top:4px;right:4px}.exam-popover .exam-popover-close:hover{background:var(--soft)}.exam-task-progress{font-variant-numeric:tabular-nums;opacity:.75}.exam-lock{scroll-margin-top:calc(var(--site-header-height) + 72px);border:0;min-width:0;margin:0;padding:0}.exam-notice{border:1px solid var(--border);background:var(--paper);border-radius:12px;max-width:none;margin:0;padding:16px 20px}.exam-notice--error{border-color:var(--feedback-wrong-edge);background:var(--feedback-wrong-fill)}.exam-notice--action{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.exam-error-text{color:var(--ink);border-left:3px solid var(--feedback-wrong-edge);padding-left:12px}.exam-badge{border:1px solid var(--border);color:var(--muted);border-radius:24px;padding:2px 10px;font-size:13px;font-weight:400;line-height:1.6;display:inline-block}.exam-verdict{vertical-align:middle;border:1px solid;border-radius:24px;align-items:center;gap:4px;padding:1px 10px 1px 6px;font-size:13px;font-weight:600;line-height:1.6;display:inline-flex}.exam-verdict .exam-icon{width:16px;height:16px;color:inherit;flex-basis:16px}.exam-verdict--correct{border-color:var(--feedback-correct-edge);background:var(--feedback-correct-fill)}.exam-verdict--correct .exam-icon{color:var(--feedback-correct-edge)}.exam-verdict--wrong{border-color:var(--feedback-wrong-edge);background:var(--feedback-wrong-fill)}.exam-verdict--wrong .exam-icon{color:var(--feedback-wrong-edge)}.exam-estimate{align-items:center;gap:8px;min-height:1.7em;display:flex}.exam-skeleton{background:var(--soft);vertical-align:middle;border-radius:4px;height:14px;display:inline-block}@media (prefers-reduced-motion:no-preference){.exam-skeleton{animation:1.6s ease-in-out infinite exam-pulse}}@keyframes exam-pulse{50%{opacity:.5}}.exam-meter{flex:none}.exam-meter-track,.exam-donut-track{fill:var(--soft);stroke:var(--soft)}.exam-donut-track{fill:none}.exam-meter-fill{fill:var(--chart-learner)}.exam-donut-arc{stroke:var(--chart-learner)}.exam-donut-target{stroke:var(--ink)}.exam-donut{flex:none;margin:0;position:relative}.exam-donut svg{display:block}.exam-donut figcaption{pointer-events:none;flex-direction:column;justify-content:center;align-items:center;line-height:1;display:flex;position:absolute;inset:0}.exam-donut-value{font-family:var(--font-serif);font-variant-numeric:tabular-nums;color:var(--accent)}.exam-donut-unit{color:var(--muted);margin-top:4px;font-size:13px}.exam-target-key{color:var(--muted);align-items:center;gap:8px;margin:8px 0 0;font-size:13px;display:flex}.exam-target-key span{background:var(--ink);border-radius:1px;width:2px;height:12px;display:inline-block}.exam-attempts,.exam-papers{margin:0;padding:0;list-style:none}.game-history .exam-attempts li{margin:0;padding:0}.exam-attempts li:last-child,.exam-papers li:last-child{border-bottom:0}.exam-attempts a,.exam-attempt-skeleton,.exam-papers li{border-bottom:1px solid var(--line);min-height:44px;color:inherit;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 16px;padding:16px 8px;text-decoration:none;display:flex}.exam-attempts a:hover{background:var(--soft)}.exam-attempt-title{align-items:center;gap:8px;font-weight:600;display:flex}.exam-figures{flex-wrap:wrap;align-items:center;gap:8px 20px;display:flex}.exam-figures-skills{flex-wrap:wrap;gap:6px 16px;display:flex}.exam-figures-skills .exam-icon{flex-basis:16px;width:16px;height:16px}.exam-status{color:var(--muted);font-size:14px}.games-app .button-link,.games-app .exam-button-secondary,.exam-player-controls button,.exam-recorder button{align-items:center;gap:8px;display:inline-flex}.games-app .button-link .exam-icon{color:inherit}:root[data-exam-focus] .site-header,:root[data-exam-focus] .site-footer,:root[data-exam-focus] .page-breadcrumb,:root[data-exam-focus] .page-heading{display:none}:root[data-exam-focus] main{padding-top:16px}.exam-fullscreen{align-items:center;gap:6px;min-height:36px;padding:4px 12px;display:inline-flex}.exam-bar .exam-row{white-space:nowrap}@media (max-width:680px){.exam-fullscreen-label{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}}.exam-fullscreen .exam-icon{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round}.exam-bar{top:var(--site-header-height);z-index:5;border:1px solid var(--border);background:var(--paper);border-radius:12px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 16px;padding:12px 16px;display:flex;position:sticky}.exam-clock{font:600 18px/1.4 var(--font-serif);font-variant-numeric:tabular-nums;color:var(--accent)}.exam-clock.is-urgent{color:var(--ink);border-bottom:3px solid var(--feedback-wrong-edge)}.exam-task-nav{flex-wrap:wrap;gap:8px;display:flex}.games-app .exam-task-nav button[aria-current=step]{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent);background:var(--soft);font-weight:600}.exam-footer{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding-top:24px;display:flex}.exam-task{gap:24px;display:grid}.exam-task-header h2{margin:0}.exam-task-header p{margin:8px 0 0}.exam-instructions{font-weight:600}.games-app .exam-instructions .exam-info-button{vertical-align:middle;margin-block:-10px}.exam-instructions .exam-popover{font-weight:400}.exam-pictures{grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));gap:16px;display:grid}.exam-pictures--story{grid-template-columns:repeat(auto-fit,minmax(min(100%,180px),1fr))}.exam-picture{gap:8px;margin:0;display:grid}.exam-picture img{border:1px solid var(--line);border-radius:10px;width:100%;max-width:100%;height:auto;display:block}.exam-passages{grid-template-columns:repeat(auto-fit,minmax(min(100%,18rem),1fr));gap:16px;display:grid}.exam-passage{border:1px solid var(--line);background:var(--background);border-radius:10px;padding:20px}.exam-passage h3{margin-bottom:8px;font-size:17px}.exam-passage>p,.exam-prompt{max-width:70ch;font:17px/1.9 var(--font-serif);white-space:pre-line;margin-bottom:0}.exam-label{color:var(--accent);margin-right:8px}.exam-content-points,.exam-shared-options{margin:12px 0 0;padding-left:20px}.exam-shared-options{gap:6px;padding:0;list-style:none;display:grid}.games-app .exam-gap-select,.games-app .exam-text-input--gap{min-height:40px;font:15px/1.4 var(--font-sans);vertical-align:baseline;margin:2px 4px;padding:4px 8px}.games-app .exam-text-input--gap{width:9em}.games-app .exam-filter{cursor:pointer;flex-direction:row;align-self:flex-start;align-items:center;gap:8px}.exam-times{margin:0;padding:0;list-style:none}.games-app .exam-check{min-height:36px;font:14px/1.4 var(--font-sans);vertical-align:baseline;margin:2px 4px;padding:4px 12px}.games-app .exam-text-input{max-width:20rem}.games-app .exam-text-input--wide{width:min(100%,18rem);font-family:var(--font-sans);margin:4px 6px}.exam-gap-number{font:13px var(--font-sans);color:var(--muted)}.exam-stem{font:600 13px var(--font-sans);letter-spacing:.04em;color:var(--accent);margin-left:2px}.exam-gap-feedback{gap:12px;margin:0;padding:0;list-style:none;display:grid}.exam-gap-feedback li{grid-template-columns:2.5rem 1fr;gap:8px;display:grid}.exam-question{border:0;min-width:0;margin:0;padding:0}.exam-question legend{margin-bottom:12px;padding:0}.exam-question>label{gap:8px}.exam-options{gap:8px;display:grid}.games-app .exam-option{border:1px solid var(--control-border);cursor:pointer;background:var(--paper);border-radius:8px;flex-direction:row;align-items:flex-start;gap:12px;min-height:44px;padding:10px 14px}.games-app .exam-option input{width:18px;height:18px;min-height:0;accent-color:var(--accent);flex:none;margin:4px 0 0;padding:0}.exam-option:has(input:checked){border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent);background:var(--soft)}.exam-option:has(input:focus-visible){outline:3px solid var(--focus);outline-offset:2px}.games-app .exam-shared-choice{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px 16px;display:grid}.exam-pair{grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));align-items:stretch;gap:12px 16px;display:grid}.exam-pair>.exam-question{flex-direction:column;margin:0;display:flex}.exam-pair .exam-options{flex:1;align-content:space-between}.exam-mic-check{gap:6px;display:grid}.exam-mic-check p:empty{display:none}.exam-mic-meter{background:var(--soft);border-radius:999px;width:min(100%,18rem);height:8px;overflow:hidden}.exam-mic-meter span{background:var(--accent);height:100%;transition:width 80ms linear;display:block}.exam-turn{border-left:3px solid var(--accent);background:var(--soft);border-radius:6px;padding:12px 14px}.exam-turn p{margin:0}.exam-turn-speaker{font-weight:600}.exam-turn-text{font-family:var(--font-serif)}.exam-transcript{background:var(--soft);border-radius:6px;gap:4px;padding:10px 12px;display:grid}.exam-transcript p,.exam-mock-audio .exam-player-controls p{margin:0}.exam-clip-label{margin:0;font-weight:600}.exam-stack>.exam-clip-label{margin-bottom:-8px}.exam-clip-active{border-left:3px solid var(--accent);padding-left:12px}.exam-dictation{gap:16px;margin:0;padding-left:1.2em;display:grid}.exam-dictation-field{flex:1;min-width:0}.games-app .exam-dictation-field .exam-text-input{width:100%;max-width:none}.exam-dictation-result{flex-wrap:wrap;gap:4px 6px;margin:0;display:flex}.exam-dictation-ok{color:var(--ink)}.exam-dictation-missing{border-bottom:2px dashed var(--accent);color:var(--muted);padding:0 3px}.exam-dictation-extra{color:var(--muted);text-decoration:line-through}.exam-evidence{border-left:3px solid var(--accent);background:var(--soft);border-radius:6px;justify-self:stretch;gap:6px;padding:10px 12px;display:grid}.exam-evidence-title{color:var(--muted);margin:0;font-size:13px}.exam-evidence ul{gap:6px;margin:0;padding:0;list-style:none;display:grid}.exam-evidence li{align-items:flex-start;gap:10px;display:flex}.exam-evidence q{quotes:"“" "”"}.exam-evidence mark{background:color-mix(in srgb, var(--accent) 25%, transparent);color:inherit;border-radius:3px;padding:0 2px}.games-app .exam-evidence-play{border-radius:999px;flex:none;place-items:center;width:32px;min-width:32px;height:32px;min-height:32px;padding:0;display:inline-grid}.exam-evidence-play .exam-icon{fill:currentColor;width:14px;height:14px}.exam-evidence-play[aria-busy=true]{opacity:.6}.exam-question-feedback{justify-items:start;gap:4px;margin-top:8px;font-size:15px;display:grid}.exam-question-feedback p{margin:0}.exam-quote{font-family:var(--font-serif);quotes:"“" "”";font-size:1.05em}.exam-transform-first,.exam-transform-second{font:17px/1.9 var(--font-serif);margin:0}.exam-keyword{margin:8px 0}.exam-keyword span[lang]{border:1px solid var(--accent);letter-spacing:.06em;color:var(--accent);border-radius:6px;padding:2px 12px;font-weight:700;display:inline-block}.games-app .exam-writing{gap:8px}.exam-writing textarea{border:1px solid var(--control-border);background:var(--paper);width:100%;min-height:18rem;color:var(--ink);font:17px/1.8 var(--font-serif);resize:vertical;border-radius:8px;padding:16px}.exam-player,.exam-recorder{border:1px solid var(--line);background:var(--background);border-radius:10px;gap:12px;padding:16px;display:grid}.exam-player-controls{flex-wrap:wrap;align-items:center;gap:8px 16px;display:flex}.games-app .exam-speed{flex-direction:row;align-items:center;gap:8px;margin-left:auto}.exam-progress{width:100%;height:6px;display:block}.games-app .exam-seek{width:100%;min-height:44px;accent-color:var(--accent);background:0 0;border:0;padding:0}.exam-audio{width:100%}.exam-recording{align-items:center;gap:8px;margin:0;display:inline-flex}.exam-recording-dot{background:var(--feedback-wrong-edge);border-radius:50%;width:10px;height:10px}@media (prefers-reduced-motion:no-preference){.exam-recording-dot{animation:1.2s ease-in-out infinite exam-pulse}}.exam-summary{gap:20px;display:grid}.exam-summary>*{margin:0}.exam-mock-head,.exam-practice-summary{flex-wrap:wrap;align-items:center;gap:24px 40px;display:flex}.exam-table{border-collapse:collapse;width:100%;font-size:15px}.exam-table th,.exam-table td{text-align:left;vertical-align:middle;border-top:1px solid var(--line);padding:10px 12px 10px 0}.exam-table thead th{color:var(--muted);border-top:0;font-size:13px;font-weight:400}.exam-task-bars{gap:8px;width:min(100%,28rem);margin:0;padding:0;list-style:none;display:grid}.exam-task-bars li{grid-template-columns:1fr auto 4.5rem;align-items:center;gap:12px;font-size:14px;display:grid}.exam-task-bars li>:last-child{text-align:right}.exam-review{gap:16px;display:grid}.exam-review-title{align-items:center;gap:12px;margin:16px 0 0;display:flex}.games-app .exam-review-task{margin:0}.exam-review-task>summary{font-weight:600}.game-history .exam-review-list li{margin:0;padding:16px 0}.exam-review-list p{color:var(--ink);margin:0 0 4px;font-size:15px}.exam-review-list p.exam-muted{color:var(--muted)}.exam-script{margin-top:12px}.exam-script p{margin:0 0 4px}.exam-band-summary{grid-template-columns:minmax(12rem,auto) 1fr;align-items:center;gap:20px 32px;display:grid}.exam-band-summary p{margin:4px 0 0}.exam-band-word{font-weight:600}.exam-dimension-bars{gap:8px;width:min(100%,30rem);margin:0;padding:0;list-style:none;display:grid}.exam-dimension-bars li{grid-template-columns:1fr auto 2ch;align-items:center;gap:12px;font-size:14px;display:grid}.exam-dimension-bars li>:last-child{text-align:right}.exam-dimension-bars .exam-span-2{text-align:right;grid-column:span 2}.exam-dimension-bars li.is-unassessed>:first-child{color:var(--muted)}.exam-cells,.exam-segments{gap:3px;display:inline-flex}.exam-cells span,.exam-segments span{background:var(--soft);width:24px;height:8px;box-shadow:inset 0 0 0 1px var(--line);border-radius:2px}.exam-segments span{width:20px}.exam-cells .is-filled,.exam-segments .is-filled{background:var(--chart-learner);box-shadow:none}.exam-annotated{max-width:70ch;font:17px/2 var(--font-serif);white-space:pre-line;margin:0}.exam-annotated mark{border-bottom:2px solid var(--feedback-wrong-edge);background:var(--feedback-mark);color:var(--ink);border-radius:3px;padding:1px 2px}.exam-annotated mark a{font:12px var(--font-sans);vertical-align:super;color:var(--muted);margin-left:2px;text-decoration:none}.exam-corrections{gap:12px;margin:0;padding:0;font-size:15px;list-style:none;display:grid}.exam-corrections li{scroll-margin-top:calc(var(--site-header-height) + 24px);grid-template-columns:1.75rem 1fr;gap:8px;display:grid}.exam-corrections del{font-family:var(--font-serif);-webkit-text-decoration-color:var(--feedback-wrong-edge);text-decoration-color:var(--feedback-wrong-edge);text-decoration-thickness:2px}.exam-corrections ins{font-family:var(--font-serif);border-bottom:2px solid var(--feedback-correct-edge);text-decoration:none}.exam-correction-note{color:var(--muted);display:block}.exam-moments{gap:12px;margin:0;padding:0;font-size:15px;list-style:none;display:grid}.exam-moments li{grid-template-columns:4.5rem 1fr;align-items:start;gap:12px;display:grid}.exam-eyebrow{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin:0 0 12px;font-size:13px;font-weight:600}.exam-card{border:1px solid var(--line);background:var(--background);border-radius:10px;padding:20px}.exam-card h4{margin:0;font-size:16px}.exam-card p{margin:6px 0 0}.exam-card.is-unassessed{background:0 0;border-style:dashed}.exam-card-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 12px;margin-bottom:4px;display:flex}.exam-card-head .exam-eyebrow{margin:0}.exam-feedback{grid-template-columns:2fr 3fr;gap:16px;display:grid}.exam-strengths,.exam-improvements,.exam-points{gap:12px;margin:0;padding:0;list-style:none;display:grid}.exam-strengths li,.exam-points li{grid-template-columns:20px 1fr;align-items:start;gap:10px;display:grid}.exam-strengths .exam-icon,.exam-points .exam-icon{margin-top:4px}.exam-points{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 32px;margin-top:12px}.exam-points li.is-missing{color:var(--muted)}.exam-improvements li{grid-template-columns:28px 1fr;gap:12px;display:grid}.exam-step{background:var(--soft);width:28px;height:28px;color:var(--accent);font-variant-numeric:tabular-nums;border-radius:50%;justify-content:center;align-items:center;font-size:14px;font-weight:600;display:inline-flex}.exam-dimensions{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.games-app .exam-evidence{margin:4px 0 0;font-size:14px}.games-app .exam-evidence summary{color:var(--accent)}.exam-flags{background:var(--soft);border-radius:10px;margin:0;padding:12px 16px 12px 36px;font-size:15px}.exam-override{flex-wrap:wrap;align-items:flex-end;gap:12px 16px;margin-top:12px;display:flex}.exam-grow{flex:14rem}.exam-model-answer{font:17px/1.8 var(--font-serif);white-space:pre-line}@media (max-width:900px){.exam-start,.exam-feedback,.exam-dimensions{grid-template-columns:minmax(0,1fr)}}@media (max-width:680px){.exam-band-summary,.exam-points{grid-template-columns:minmax(0,1fr)}.exam-hide-narrow{display:none}.exam-passage,.exam-card{padding:16px}.exam-table thead{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.exam-table,.exam-table tbody{display:block}.exam-table tr{border-top:1px solid var(--line);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:6px 16px;padding:12px 0;display:grid}.exam-table th,.exam-table td{border-top:0;padding:0}.exam-table th[scope=row]{grid-column:1/-1}.mobile-search{left:122px}.exam-destinations{grid-template-columns:minmax(0,1fr)}}.lost-page{max-width:760px;margin:var(--space-block) auto var(--space-section);text-align:center;justify-items:center;display:grid}.lost-sky{width:min(100%,480px);height:auto;margin-bottom:var(--space-group);overflow:visible}.lost-sky-dim{fill:var(--accent);opacity:.35}.lost-sky-pole-sky{fill:var(--brand-sky);stroke:var(--brand-sky-line);stroke-width:1.5px}.lost-sky-pole-ring{fill:none;stroke:var(--brand-ring);opacity:.55}.lost-sky-pole-tick{stroke:var(--brand-ring);stroke-width:2px;stroke-linecap:round}.lost-sky-pole-star{fill:var(--lamp-light)}.lost-sky-route line{stroke:var(--accent);stroke-width:1.5px;stroke-linecap:round;opacity:.6}.lost-sky-route .lost-sky-line--missing{stroke-dasharray:2 6}.lost-sky-node{fill:var(--accent)}.lost-sky-gap{fill:none;stroke:var(--muted);stroke-width:1.5px;stroke-dasharray:3 4}.lost-sky-spark{fill:none;stroke:var(--feedback-wrong-edge);stroke-width:1.5px;stroke-linecap:round}@media (prefers-reduced-motion:no-preference){.lost-sky-dim{animation:.9s ease-out both lost-fade}.lost-sky-route{animation:.7s ease-out .25s both lost-rise}.lost-sky-pole-star{transform-box:fill-box;transform-origin:50%;animation:1.4s ease-in-out .5s both lost-twinkle}}@keyframes lost-fade{0%{opacity:0}}@keyframes lost-rise{0%{opacity:0;transform:translateY(6px)}}@keyframes lost-twinkle{0%,to{transform:scale(1)}45%{transform:scale(1.25)}}.lost-title{letter-spacing:-.04em;text-wrap:balance;margin:0 0 16px;font-size:clamp(34px,5vw,52px);font-weight:500;line-height:1.13}.lost-title em{color:var(--accent);font-family:var(--font-serif);letter-spacing:-.01em;font-style:italic;font-weight:400}.lost-lede{max-width:46ch;color:var(--muted);text-wrap:pretty;margin:0 auto 12px;font-size:17px}.lost-detail{color:var(--muted);margin:0;font-size:14px}.lost-detail code{background:var(--soft);color:var(--ink);overflow-wrap:anywhere;border-radius:6px;padding:2px 8px;font-size:13px}.lost-actions{flex-wrap:wrap;justify-content:center;gap:12px;margin-top:24px;display:flex}.lost-actions .button-link{justify-content:center;gap:10px;text-decoration:none}.lost-actions kbd{border:1px solid color-mix(in srgb, var(--action-ink) 35%, transparent);font:600 12px/1.6 var(--font-sans);border-radius:4px;padding:0 6px}.lost-ways{width:100%;margin-top:var(--space-block);padding-top:var(--space-group);border-top:1px solid var(--line)}.lost-ways ul{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:0;padding:0;list-style:none;display:grid}.lost-ways a{border:1px solid var(--border);background:var(--paper);min-height:44px;color:var(--ink);text-align:left;border-radius:12px;justify-items:start;gap:2px;padding:16px;text-decoration:none;transition:border-color .15s;display:grid}.lost-ways a:hover{border-color:var(--accent)}.lost-way-icon{width:22px;height:22px;color:var(--accent);margin-bottom:8px}.lost-way-label{font-size:15px;font-weight:600}.lost-way-hint{color:var(--muted);font-size:13px}@media (max-width:680px){.lost-ways ul{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:560px){.lost-page{margin-top:var(--space-group)}.lost-actions,.lost-actions>*{width:100%}}.brand-guide-hero{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:32px;max-width:920px;display:grid}.brand-guide-hero-mark{width:132px;height:132px}.brand-guide-hero .page-title-icon{display:none}.brand-guide-hero h1 em,.brand-guide-section h2 em{font-family:var(--font-serif);color:var(--accent);font-style:italic;font-weight:400}.brand-guide-section{margin-top:var(--space-block);padding-top:var(--space-group);border-top:1px solid var(--line)}.brand-guide-section-head{grid-template-columns:repeat(2,minmax(0,1fr));align-items:end;gap:16px 32px;margin-bottom:24px;display:grid}.brand-guide-section-head .eyebrow{margin:0 0 6px}.brand-guide-section-head h2{margin:0}.brand-guide-section-head>p{color:var(--muted);margin:0;font-size:15px;line-height:1.7}.brand-guide-panel{border:1px solid var(--border);background:var(--paper);border-radius:12px;margin:0;padding:24px}.brand-guide-anatomy{gap:28px;display:grid}.brand-exploded{--sheet:#0e1814;--sheet-line:#a9d7b5;--sheet-text:#c6d3ca;--brand-sky:#1d2e27;--brand-sky-line:#3a5047;background:var(--sheet);border-radius:10px;position:relative;overflow:hidden}.brand-exploded svg{width:100%;height:auto;font-family:var(--font-sans);display:block}.brand-exploded-sky{fill:var(--sheet-line)}.brand-exploded-axis{stroke:var(--sheet-line);stroke-width:1px;stroke-dasharray:2 5;stroke-linecap:round;opacity:.45}.brand-exploded-guide{fill:none;stroke:var(--sheet-line);stroke-width:.8px;stroke-dasharray:2 4;stroke-opacity:.35}.brand-exploded-leader{stroke:var(--sheet-line);stroke-width:.8px;opacity:.6}.brand-exploded-balloon{fill:var(--sheet);stroke:var(--sheet-line);stroke-width:1.2px}.brand-exploded text{fill:var(--sheet-text);text-anchor:middle}.brand-exploded-number{fill:var(--sheet-line);font-size:13px;font-weight:650}.brand-exploded-toggle{border:1px solid color-mix(in srgb, var(--sheet-line) 45%, transparent);background:var(--sheet);min-height:32px;color:var(--sheet-line);font:inherit;cursor:pointer;border-radius:999px;padding:0 12px;font-size:12px;font-weight:600;position:absolute;bottom:22px;left:22px}.brand-exploded-toggle:hover{border-color:var(--sheet-line)}.brand-exploded-toggle:focus-visible{outline:2px solid var(--sheet-line);outline-offset:2px}.brand-guide-anatomy ol{counter-reset:part;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px;margin:0;padding:0;list-style:none;display:grid}.brand-guide-anatomy li{counter-increment:part;grid-template-columns:28px minmax(0,1fr);align-content:start;column-gap:12px;display:grid}.brand-guide-anatomy li:before{content:counter(part);border:1px solid var(--accent);width:26px;height:26px;color:var(--accent);border-radius:50%;grid-row:span 2;place-items:center;font-size:13px;font-weight:650;display:grid}.brand-guide-anatomy li span{color:var(--muted);font-size:14px}.brand-guide-grid{gap:16px;margin:0;padding:0;list-style:none;display:grid}.brand-guide-grid+.brand-guide-grid{margin-top:16px}.brand-guide-grid--2{grid-template-columns:repeat(2,minmax(0,1fr))}.brand-guide-grid--3{grid-template-columns:repeat(3,minmax(0,1fr))}.brand-guide-rules{grid-template-columns:repeat(4,minmax(0,1fr))}.brand-guide-tile{border:1px solid var(--border);border-radius:12px;grid-template-rows:1fr auto;min-width:0;margin:0;display:grid;overflow:hidden}.brand-guide-tile figcaption,.brand-guide-tile p{border-top:1px solid var(--line);background:var(--paper);color:var(--muted);margin:0;padding:10px 14px;font-size:13px;line-height:1.5}.brand-guide-tile strong{color:var(--ink)}.brand-guide-art{background:var(--background);min-height:160px;color:var(--ink);place-items:center;padding:32px 20px;display:grid}.brand-guide-art--dark{--brand-sky:#1d2e27;--brand-sky-line:#3a5047;color:#e9f0e8;background:#0e1814}.brand-guide-art--light{--brand-sky:#15281f;--brand-sky-line:#15281f;color:#15281f;background:#f3eee2}.brand-guide-lockup{align-items:center;gap:16px;display:inline-flex}.brand-guide-lockup-mark{width:64px;height:64px}.brand-guide-wordmark{font-family:var(--font-serif);letter-spacing:-.015em;font-size:40px;font-style:italic;font-weight:400;line-height:1}.brand-guide-clear{outline:1px dashed color-mix(in srgb, var(--accent) 60%, transparent);padding:18px;position:relative}.brand-guide-clear:after{content:"¼";color:var(--accent);font-size:11px;position:absolute;top:2px;left:6px}.brand-guide-clear-mark{width:72px;height:72px;display:block}.brand-guide-sizes{grid-auto-flow:column;justify-content:center;align-items:end;gap:14px}.brand-guide-size-16{width:16px;height:16px}.brand-guide-size-24{width:24px;height:24px}.brand-guide-size-32{width:32px;height:32px}.brand-guide-size-34{width:34px;height:34px}.brand-guide-size-42{width:42px;height:42px}.brand-guide-size-48{width:48px;height:48px}.brand-guide-icons{flex-wrap:wrap;align-items:flex-end;gap:28px;display:flex}.brand-guide-icons figure{color:var(--muted);justify-items:center;gap:8px;margin:0;font-size:13px;display:grid}.brand-guide-app-icon{border-radius:20px;width:90px;height:90px}.brand-guide-swatches{grid-template-columns:repeat(auto-fill,minmax(min(100%,170px),1fr));gap:12px;margin:0;padding:0;list-style:none;display:grid}.brand-guide-swatches li{border:1px solid var(--border);background:var(--paper);border-radius:10px;font-size:13px;display:grid;overflow:hidden}.brand-guide-swatch{border-bottom:1px solid var(--line);height:80px;margin-bottom:10px}.brand-guide-swatches strong,.brand-guide-swatches li>span:last-child{padding-inline:12px}.brand-guide-swatches li>span:last-child{color:var(--muted);font-variant-numeric:tabular-nums;padding-bottom:10px}.brand-guide-type{align-content:start;gap:10px;display:grid}.brand-guide-type p{color:var(--muted);margin:0;font-size:14px}.brand-guide-type .eyebrow{color:var(--accent)}.brand-guide-type-sample{font-size:56px;line-height:1.1}.brand-guide-sans{letter-spacing:-.04em;font-weight:650}.brand-guide-og{padding:16px}.brand-guide-og img{border-radius:8px;width:100%;max-width:720px;height:auto;display:block}.brand-guide-table{border:1px solid var(--border);background:var(--paper);border-radius:12px;overflow-x:auto}.brand-guide-table table{border-collapse:collapse;width:100%;font-size:15px}.brand-guide-table th,.brand-guide-table td{border-bottom:1px solid var(--line);text-align:left;vertical-align:top;padding:12px 16px}.brand-guide-table th{color:var(--accent);letter-spacing:.12em;text-transform:uppercase;font-size:12px;font-weight:650}.brand-guide-table tr:last-child td{border-bottom:0}.brand-guide-misuse{min-height:130px;position:relative}.brand-guide-misuse:after{content:"";background:linear-gradient(to top right,#0000 calc(50% - 1px),#e0956a99 50%,#0000 calc(50% + 1px));position:absolute;inset:0}.brand-guide-misuse-mark{width:72px;height:72px}.brand-guide-misuse--rotate .brand-guide-misuse-mark{transform:rotate(35deg)}.brand-guide-misuse--recolor .brand-guide-misuse-mark{filter:hue-rotate(150deg)}.brand-guide-misuse--stretch .brand-guide-misuse-mark{transform:scale(1.5,.85)}.brand-guide-misuse--glow .brand-guide-misuse-mark{filter:drop-shadow(0 0 10px #f2b64a)}@media (max-width:860px){.brand-guide-section-head,.brand-guide-anatomy,.brand-guide-grid--2{grid-template-columns:minmax(0,1fr)}.brand-guide-grid--3,.brand-guide-rules{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:560px){.brand-guide-hero{grid-template-columns:minmax(0,1fr);gap:16px}.brand-guide-hero-mark{width:88px;height:88px}.brand-guide-grid--3,.brand-guide-rules{grid-template-columns:minmax(0,1fr)}.brand-guide-wordmark{font-size:32px}}.button-link--outline,.games-app .button-link--outline{color:var(--accent);background:0 0}.button-link--outline:hover,.games-app .button-link--outline:hover{background:var(--soft)}.homework-app{gap:24px;max-width:800px}.homework-bar .homework-progress{color:var(--muted);font-variant-numeric:tabular-nums;font-size:14px}@media (max-width:560px){.homework-bar{position:static}}.homework-history h2,.homework-share h2,.homework-sheet-notes h2,.homework-review-comments h2{margin-bottom:12px;font-size:20px}.homework-submissions{gap:8px;margin:0 0 16px;padding:0;list-style:none;display:grid}.homework-submissions li{align-items:center;gap:12px;display:flex}.homework-share{scroll-margin-top:calc(var(--site-header-height) + 24px)}@media (max-width:980px){.homework-share{scroll-margin-top:calc(var(--site-header-height) + 120px)}}.games-app .homework-submission{text-align:left;flex:1;gap:2px;padding:10px 14px;display:grid}.homework-submissions li[aria-current] .homework-submission{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent);background:var(--soft)}.homework-submission-title{font-weight:600}.homework-sheet-notes{border-left:3px solid var(--border);padding-left:16px;font-size:15px}.homework-turn{border:1px solid var(--border);background:var(--paper);border-radius:12px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 24px;padding:16px 20px;display:flex}.homework-turn--new{border-color:var(--accent);box-shadow:inset 3px 0 0 var(--accent)}.homework-turn--reviewed{border-color:var(--feedback-correct-edge)}.homework-turn-text{flex:16rem;gap:2px;min-width:0;display:grid}.homework-turn p{overflow-wrap:anywhere;margin:0}.homework-turn-state{font-weight:600}.homework-turn-actions{flex-wrap:wrap;gap:8px;display:flex}.homework-fresh{background:var(--accent);color:var(--paper);vertical-align:1px;border-radius:24px;margin-left:8px;padding:0 8px;font-size:12px;font-weight:600}@media (max-width:560px){.homework-turn{padding:14px 16px}.homework-turn-actions,.homework-turn-actions>*{width:100%}}.homework-ai-toggle{flex-wrap:wrap;align-items:center;gap:8px 12px;display:flex}.homework-ai-toggle .exam-muted{flex:16rem;font-size:14px}@media (max-width:560px){.homework-ai-toggle>button{width:100%}}.homework-edit-hint{margin:0;font-size:14px}.homework-sheet-notes summary{color:var(--ink);cursor:pointer;padding-block:10px;font-weight:500}.homework-sheet-notes summary::marker{color:var(--muted)}.homework-sheet-notes summary .exam-muted{margin-left:8px;font-weight:400}.homework-sheet-notes ul{margin:4px 0 8px;padding-left:20px}.homework-sheet{border:0;gap:24px;min-width:0;margin:0;padding:0;display:grid}.homework-review-comments blockquote{border-left:3px solid var(--accent);background:var(--paper);max-width:none;margin:0 0 12px;padding:12px 16px}.homework-review-comments blockquote p{margin-bottom:4px}.homework-section{gap:16px;display:grid}.homework-section-header h2{margin-bottom:12px;font-size:24px}.homework-section-header p{margin:0}.homework-box{border:1px solid var(--border);border-radius:8px;flex-wrap:wrap;gap:8px;margin:12px 0 0;padding:12px;list-style:none;display:flex}.homework-box li{border:1px solid var(--line);border-radius:24px;padding:2px 10px}.homework-box--list{gap:0;padding:4px 16px;display:grid}.homework-box--list li{border:0;border-bottom:1px solid var(--line);border-radius:0;padding:8px 0;line-height:1.5}.homework-box--list li:last-child{border-bottom:0}.homework-items{border:1px solid var(--line);background:var(--paper);border-radius:12px;margin:0;padding:0;list-style:none;display:grid}.homework-item{grid-template-columns:2rem minmax(0,1fr);align-items:baseline;gap:8px;padding:16px 20px;display:grid}.homework-item+.homework-item{border-top:1px solid var(--line)}.homework-number{font:17px/1.6 var(--font-serif);color:var(--muted)}.homework-item-body{gap:8px;min-width:0;display:grid}.homework-item-body>*{margin:0}.homework-sentence{font:17px/1.6 var(--font-serif);white-space:pre-line;max-width:none}.homework-sentence:has(input,select){line-height:2.2}.games-app .homework-sentence .exam-text-input--gap,.games-app .homework-sentence .exam-gap-select{height:34px;min-height:34px;margin-block:0;padding-block:2px;line-height:1.4}.exam-instructions.is-long,.print-instructions.is-long{font-weight:400}.exam-instructions.is-structured{gap:20px;font-weight:400;display:grid}.homework-instructions-block{gap:6px;display:grid}.homework-instructions-block p{text-wrap:balance;margin:0;line-height:1.55}.homework-instructions-block.is-subtitle p{color:var(--muted)}.homework-section-header .homework-instructions-heading{margin-bottom:2px}.homework-instructions-heading{color:var(--accent);font-weight:600}.homework-section-header:has(.is-structured){margin-bottom:8px}.games-app .homework-match-trigger{border:1px solid var(--control-border);background:var(--paper);min-width:4.5em;height:34px;min-height:34px;color:var(--muted);font:16px/1.4 var(--font-sans);vertical-align:baseline;border-radius:6px;align-items:center;gap:6px;margin:0 4px;padding:2px 8px 2px 12px;display:inline-flex}.games-app .homework-match-trigger:hover{background:var(--soft)}.games-app .homework-match-trigger.is-chosen{border-color:var(--accent);min-width:0;color:var(--accent);font-weight:700}.homework-match-trigger svg,.homework-picker svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:14px;height:14px}.homework-match-ending{color:var(--accent)}.homework-sentence .homework-answer-gap+.homework-match-ending{margin-left:6px}.homework-picker{overscroll-behavior:contain;border:1px solid var(--border);background:var(--paper);width:min(520px,100vw - 32px);max-height:min(80dvh,640px);color:var(--ink);font-family:var(--font-sans);border-radius:14px;padding:20px;overflow-y:auto}.homework-picker[open]{align-content:start;gap:12px;display:grid}.homework-picker::backdrop{background:var(--scrim)}.homework-picker-head{justify-content:space-between;align-items:center;gap:12px;margin:-8px -8px 0 0;display:flex}.homework-picker-title{color:var(--muted);margin:0;font-size:14px;font-weight:600}.homework-picker-close{width:44px;height:44px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:8px;place-items:center;display:grid}.homework-picker-close:hover{background:var(--soft)}.homework-picker-close svg{width:18px;height:18px}.homework-picker-sentence{font:19px/1.5 var(--font-serif);text-wrap:pretty;margin:0 0 4px}.homework-picker-blank{color:var(--accent);text-underline-offset:4px;text-decoration:underline}.homework-picker-options{gap:6px;margin:0;padding:0;list-style:none;display:grid}.homework-picker-options button{border:1px solid var(--line);width:100%;min-height:52px;color:var(--ink);font:inherit;text-align:left;cursor:pointer;background:0 0;border-radius:10px;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:12px;padding:10px 12px;transition:background-color .15s,border-color .15s;display:grid}.homework-picker-options button:hover{background:var(--soft)}.homework-picker-options button[aria-pressed=true]{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent);background:var(--soft)}.homework-picker-letter{background:var(--soft);width:28px;height:28px;color:var(--accent);border-radius:50%;place-items:center;font-size:14px;font-weight:700;display:grid}.homework-picker-options button[aria-pressed=true] .homework-picker-letter{background:var(--accent);color:var(--action-ink)}.homework-picker-ending{font:17px/1.4 var(--font-serif)}.homework-picker-used{color:var(--muted);white-space:nowrap;font-size:13px}.homework-picker-check{color:var(--accent)}.homework-picker .homework-picker-check{width:18px;height:18px}.homework-picker-clear{min-height:44px;color:var(--muted);font:inherit;text-underline-offset:3px;cursor:pointer;background:0 0;border:0;justify-self:start;padding:0;font-size:14px;text-decoration:underline}@media (max-width:680px){.homework-picker{width:100%;max-width:100%;max-height:85dvh;padding-bottom:calc(20px + env(safe-area-inset-bottom));border-bottom:0;border-radius:16px 16px 0 0;margin:auto 0 0}}@media (prefers-reduced-motion:no-preference){.homework-picker[open]{animation:.18s ease-out picker-in}}@keyframes picker-in{0%{opacity:0;transform:translateY(12px)}}.homework-prompt-part{display:block}.homework-prompt-part+.homework-prompt-part{margin-top:12px}.games-app.homework-app .exam-gap-select,.games-app.homework-app .exam-text-input,.homework-app .homework-textarea{font-size:16px}.homework-hint{color:var(--muted);font-family:var(--font-sans);font-size:15px}.homework-instruction{color:var(--muted);font-size:14px}.homework-note{border-left:3px solid var(--border);padding-left:12px;font-size:14px}.homework-judge{border:0;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;max-width:22rem;margin:0;padding:0;display:grid}.games-app .homework-choice{border:1px solid var(--control-border);min-height:44px;color:var(--ink);cursor:pointer;border-radius:8px;flex-direction:row;justify-content:center;align-items:center;gap:8px;padding:8px 12px;font-size:15px;font-weight:600;transition:background-color .15s,border-color .15s;position:relative}.games-app .homework-choice:hover{background:var(--soft)}@media (min-width:681px){.homework-item-body:has(>.homework-judge){grid-template-columns:minmax(0,1fr) auto;align-items:center;column-gap:16px}.homework-item-body:has(>.homework-judge)>*{grid-column:1/-1}.homework-item-body:has(>.homework-judge)>.homework-sentence{grid-area:1/1}.homework-item-body>.homework-judge{grid-area:1/2;grid-template-columns:repeat(2,auto);align-self:start}.games-app .homework-judge .homework-choice{min-height:40px;padding:6px 14px;font-size:14px}}.games-app .homework-choice svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:16px;height:16px;color:var(--muted);flex:none}.games-app .homework-choice:has(input:checked){border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent);background:var(--soft);color:var(--accent)}.games-app .homework-choice:has(input:checked) svg{color:var(--accent)}.games-app .homework-choice:has(input:focus-visible){outline:3px solid var(--focus);outline-offset:3px}.games-app .homework-choice input{opacity:0;cursor:pointer;width:100%;height:100%;min-height:0;margin:0;position:absolute;inset:0}.games-app .homework-field{gap:6px;font-size:14px}.games-app .exam-text-input.homework-line{width:100%;max-width:none}.homework-textarea{border:1px solid var(--control-border);background:var(--paper);width:100%;min-height:calc(2lh + 20px);color:var(--ink);font:inherit;field-sizing:content;resize:vertical;border-radius:8px;padding:10px 14px;line-height:1.5}.homework-answer{font:17px/1.7 var(--font-serif);border-left:3px solid var(--accent);padding-left:12px}.homework-answer-gap{border-bottom:2px solid var(--accent);padding:0 4px;font-weight:600}.homework-empty{color:var(--muted);font:italic 15px var(--font-sans);font-weight:400}.homework-corrections{gap:8px;margin:0;padding:0;list-style:none;display:grid}.homework-correction{border-left:3px solid var(--feedback-correct-edge);background:var(--feedback-correct-fill);border-radius:0 8px 8px 0;padding:10px 14px}.homework-correction--partial{border-left-style:dashed;border-left-color:var(--feedback-wrong-edge);background:var(--feedback-wrong-fill)}.homework-correction--incorrect{border-left-color:var(--feedback-wrong-edge);background:var(--feedback-wrong-fill)}.homework-correction p{margin:0;font-size:15px}.homework-correction-head{flex-wrap:wrap;justify-content:space-between;gap:4px 12px;max-width:none;display:flex}.homework-verdict{font-weight:600}.homework-reviewer{color:var(--muted);font-size:14px}.homework-editor{border-top:1px solid var(--line);gap:12px;padding-top:12px;display:grid}.homework-verdicts,.homework-editor-actions{flex-wrap:wrap;gap:8px;display:flex}.games-app .homework-verdicts button[aria-pressed=true]{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent);background:var(--soft);font-weight:600}.homework-finish{gap:16px;display:grid}.homework-review-bar{z-index:4;border:1px solid var(--border);background:var(--paper);border-radius:12px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px 16px;padding:12px 16px;display:grid;position:sticky;bottom:12px;box-shadow:0 8px 24px #00000040}.homework-review-bar progress{grid-column:1/-1;width:100%;margin:0}.homework-review-bar p{min-width:0;margin:0;font-size:15px}.homework-keys{margin:-8px 0 0;font-size:13px}@media (hover:none){.homework-keys{display:none}}.games-app .homework-bulk{justify-self:start;min-height:36px;font-size:14px}.homework-finish-ask{gap:12px;display:grid}.homework-finish-ask p{margin:0;font-weight:600}@media (max-width:560px){.homework-review-bar{padding:10px 12px;bottom:8px}.homework-review-bar .button-link{min-height:40px;padding-inline:12px;font-size:14px}.homework-finish-ask .game-actions>*{width:100%}}.homework-correction.is-compact{padding:4px 12px}.homework-correction.is-compact p{font-size:14px}.homework-disagree{color:var(--muted);font-size:14px;font-style:italic}.homework-correction p.homework-diff{font:16px/1.7 var(--font-serif)}.homework-diff-del{background:var(--feedback-wrong-fill);color:var(--muted);text-decoration:line-through;-webkit-text-decoration-color:var(--feedback-wrong-edge);text-decoration-color:var(--feedback-wrong-edge);border-radius:3px;padding:0 2px}.homework-diff-ins{background:var(--feedback-correct-fill);text-decoration:underline;-webkit-text-decoration-color:var(--feedback-correct-edge);text-decoration-color:var(--feedback-correct-edge);text-underline-offset:3px;border-radius:3px;padding:0 2px;font-weight:600}.homework-tally{flex-wrap:wrap;gap:4px 12px;margin:0;font-size:14px;display:flex}.homework-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.homework-segmented{border:1px solid var(--border);background:var(--paper);border-radius:10px;padding:3px;display:inline-flex}.games-app .homework-segmented button{min-height:36px;color:var(--muted);background:0 0;border:0;border-radius:8px;padding:4px 14px;font-size:14px}.games-app .homework-segmented button[aria-pressed=true]{background:var(--soft);color:var(--ink);font-weight:600}.games-app .homework-toolbar-select{flex-direction:row;align-items:center;gap:8px;font-size:14px;display:flex}.homework-rail-sections a.has-mistakes .homework-rail-mark{border-color:var(--feedback-wrong-edge);background:var(--feedback-wrong-fill)}@media (max-width:560px){.homework-segmented,.games-app .homework-toolbar-select{width:100%}.games-app .homework-segmented button{flex:1}.games-app .homework-toolbar-select select{flex:1;min-width:0}}@media (max-width:980px){.homework-tally{display:none}}.homework-correction.is-stale{box-shadow:inset 0 0 0 1px var(--line);background:0 0;border-left-style:dotted}.homework-correction.is-stale .homework-verdict{color:var(--muted)}.homework-correction p.homework-correction-stale{border-top:1px dashed var(--line);color:var(--muted);margin-top:6px;padding-top:6px;font-size:14px}.homework-sentence .exam-text-input--gap{max-width:100%}@supports (field-sizing:content){.games-app .homework-sentence .exam-text-input--gap{field-sizing:content;width:auto;min-width:4.5em}}@media (max-width:680px){.homework-item{grid-template-columns:minmax(1.5rem,auto) minmax(0,1fr);gap:6px;padding:14px 14px 14px 12px}@supports not (field-sizing:content){.games-app .homework-sentence .exam-text-input--gap{width:6em}}}.homework-history summary,.homework-share summary{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:4px 16px;padding:0;display:flex}.homework-history summary h2,.homework-share summary h2{margin:0;display:inline}.homework-history[open] summary,.homework-share[open] summary{margin-bottom:12px}.homework-share-created{gap:12px;margin-top:16px;display:grid}.homework-share-created p{margin:0}.homework-shares{margin-top:16px}.homework-share-info{flex:1;gap:2px;min-width:0;display:grid}@media (max-width:560px){.homework-shares li{flex-wrap:wrap}.homework-share-info{flex:100%}}.homework-meta{color:var(--muted);flex-wrap:wrap;align-items:center;gap:0 20px;font-size:14px;display:flex}.homework-meta-link{min-height:44px;color:var(--accent);text-decoration:underline;-webkit-text-decoration-color:var(--line);text-decoration-color:var(--line);text-underline-offset:4px;align-items:center;gap:4px;font-weight:500;transition:text-decoration-color .15s;display:inline-flex}.homework-meta-link:hover{text-decoration-color:currentColor}.homework-print-link{width:44px;height:44px;color:var(--accent);border-radius:8px;place-items:center;margin-left:-10px;transition:background-color .15s;display:inline-grid}.homework-print-link:hover{background:var(--soft)}.homework-app{max-width:none}.homework-layout{grid-template-columns:264px minmax(0,800px);align-items:start;gap:32px;display:grid}.homework-main{gap:24px;min-width:0;display:grid}.homework-rail{top:calc(var(--site-header-height) + 16px);border:1px solid var(--border);background:var(--paper);border-radius:14px;gap:20px;padding:24px;display:grid;position:sticky}.homework-rail p{margin:0}.homework-rail-progress{gap:4px;display:grid}.homework-count{font-family:var(--font-serif);font-variant-numeric:tabular-nums;line-height:1}.homework-rail .homework-count{align-items:baseline;line-height:1.1;display:flex}.homework-rail .homework-count>span{line-height:inherit}.homework-count-value{color:var(--accent);font-size:48px}.homework-count-total{color:var(--muted);font-size:24px}.homework-count-label{color:var(--muted);font-size:14px}.homework-meter{order:0;width:100%;margin:8px 0 4px}.homework-rail-status{min-height:1.6em;font-size:14px}.homework-rail-sections ol{gap:2px;margin:0;padding:0;list-style:none;display:grid}.homework-rail-sections a{min-height:40px;color:var(--ink);border-radius:8px;grid-template-columns:24px minmax(0,1fr) auto;align-items:center;gap:8px;padding:6px 8px;font-size:14px;text-decoration:none;display:grid}.homework-rail-sections a:hover{background:var(--soft)}.homework-rail-mark{border:1px solid var(--border);width:24px;height:24px;color:var(--muted);border-radius:50%;place-items:center;font-size:12px;display:grid}.homework-rail-sections a.is-complete .homework-rail-mark{border-color:var(--feedback-correct-edge);background:var(--feedback-correct-fill);color:var(--ink)}.homework-rail-title{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.homework-rail-count{color:var(--muted);font-variant-numeric:tabular-nums}.homework-rail-action{width:100%}.homework-item.is-answered .homework-number{color:var(--feedback-correct-edge);font-family:var(--font-sans);font-weight:700}.homework-jump{display:none}.games-app .homework-jump{margin:0}.homework-jump summary{border:1px solid var(--control-border);min-height:40px;color:var(--accent);cursor:pointer;border-radius:6px;align-items:center;gap:6px;padding:8px 12px;font-size:14px;font-weight:600;list-style:none;transition:background-color .15s;display:flex}.homework-jump summary::-webkit-details-marker{display:none}.homework-jump summary:hover,.homework-jump[open] summary{background:var(--soft)}.homework-jump-panel{max-height:calc(100dvh - var(--site-header-height) - 112px);overscroll-behavior:contain;border:1px solid var(--border);background:var(--paper);box-shadow:0 12px 32px rgb(var(--shadow-rgb) / 16%);border-radius:12px;padding:8px;position:absolute;top:calc(100% + 8px);left:0;right:0;overflow-y:auto}.homework-jump-panel ol{gap:2px;margin:0;padding:0;list-style:none;display:grid}.homework-jump-panel a{min-height:44px;color:var(--ink);border-radius:8px;grid-template-columns:24px minmax(0,1fr) auto;align-items:center;gap:10px;padding:6px 10px;font-size:15px;text-decoration:none;display:grid}.homework-jump-panel a:hover{background:var(--soft)}.homework-jump-panel a.is-complete .homework-rail-mark{border-color:var(--feedback-correct-edge);background:var(--feedback-correct-fill);color:var(--ink)}.homework-jump-panel a.has-mistakes .homework-rail-mark{border-color:var(--feedback-wrong-edge);background:var(--feedback-wrong-fill)}@media (max-width:980px){.homework-layout{grid-template-columns:minmax(0,1fr);gap:24px}.homework-rail{top:var(--site-header-height);z-index:5;border-radius:12px;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:8px;padding:8px 8px 12px 16px}.homework-rail-progress{grid-template-columns:auto minmax(0,1fr);align-items:baseline;gap:0 6px}.homework-count-value{font-size:24px}.homework-count-total{font-size:16px}.homework-count-label{white-space:nowrap;text-overflow:ellipsis;font-size:13px;overflow:hidden}.homework-meter{width:auto;height:3px;margin:0;position:absolute;bottom:5px;left:16px;right:16px}.homework-rail-status{white-space:nowrap;text-overflow:ellipsis;grid-column:1/-1;min-height:0;font-size:13px;overflow:hidden}.homework-rail-status:empty{display:none}.homework-count-label,.homework-rail-status{line-height:1.4}.homework-rail-sections{display:none}.homework-jump{display:block}.homework-rail-action{width:auto}.homework-section-header h2{scroll-margin-top:80px}}.homework-index{align-items:start;gap:var(--space-block);grid-template-columns:220px minmax(0,900px);display:grid}.homework-index-groups{gap:var(--space-group);min-width:0;display:grid}.homework-index{--timeline-line:var(--lightningcss-light,var(--border))var(--lightningcss-dark,color-mix(in srgb, var(--brand-ring) 28%, transparent));--timeline-edge:color-mix(in srgb, var(--brand-ring) 55%, var(--brand-sky))}.homework-timeline{top:calc(var(--site-header-height) + 24px);max-height:calc(100dvh - var(--site-header-height) - 48px);overscroll-behavior:contain;position:sticky;overflow-y:auto}.homework-timeline ol{margin:0;padding:0;list-style:none;position:relative}.homework-timeline ol:before{content:"";background:var(--timeline-line);width:1px;position:absolute;top:16px;bottom:16px;left:9.5px}.homework-timeline a{min-height:44px;color:var(--muted);border-radius:8px;grid-template-columns:20px minmax(0,1fr);align-items:baseline;column-gap:12px;padding:6px 8px 6px 0;text-decoration:none;display:grid}.homework-timeline-dot,.homework-index-group-header:before{box-sizing:border-box;border:1.5px solid var(--timeline-edge);background:var(--brand-sky);border-radius:50%;width:12px;height:12px;transition:width .15s,height .15s,border-color .15s;position:relative}.homework-timeline-dot{grid-row:1/span 2;place-self:start center;margin-top:3px}.homework-timeline-dot:after,.homework-index-group-header:after{content:"";pointer-events:none;background:var(--lamp-light);clip-path:polygon(50% 0,59% 41%,100% 50%,59% 59%,50% 100%,41% 59%,0 50%,41% 41%);opacity:0;width:62%;height:62%;margin:auto;transition:opacity .15s;position:absolute;inset:0}.homework-timeline a.is-finished .homework-timeline-dot:after,.homework-timeline a[aria-current] .homework-timeline-dot:after{opacity:1}.homework-timeline a[aria-current] .homework-timeline-dot{border-color:var(--brand-ring);width:20px;height:20px;margin-top:-1px}.homework-timeline time{font-variant-numeric:tabular-nums;font-size:13px;line-height:1.4}.homework-timeline-title{color:var(--ink);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:14px;line-height:1.4;transition:color .15s;display:-webkit-box;overflow:hidden}.homework-timeline a:hover .homework-timeline-title,.homework-timeline a[aria-current] time,.homework-timeline a[aria-current] .homework-timeline-title{color:var(--accent)}.homework-timeline a[aria-current] .homework-timeline-title{font-weight:600}@media (max-width:980px){.homework-index{grid-template-columns:minmax(0,1fr)}.homework-timeline{display:none}.homework-index-groups{padding-left:30px;position:relative}.homework-index-groups:before{content:"";background:var(--timeline-line);width:1px;position:absolute;top:8px;bottom:0;left:9.5px}.homework-index-group-header{position:relative}.homework-index-group-header:before{content:"";position:absolute;top:8px;left:-26px}.homework-index-group-header:after{width:7.5px;height:7.5px;margin:2.25px;inset:8px auto auto -26px}.homework-index-group.is-current .homework-index-group-header:before{border-color:var(--brand-ring);width:20px;height:20px;top:4px;left:-30px}.homework-index-group.is-current .homework-index-group-header:after{width:12.4px;height:12.4px;margin:3.8px;top:4px;left:-30px}.homework-index-group.is-current .homework-index-group-header:after,.homework-index-group.is-finished .homework-index-group-header:after{opacity:1}}.homework-index-group{gap:12px;display:grid}.homework-index-group-header h2{margin:0;font-size:20px;font-weight:500;line-height:1.35}.homework-index-group-header h2 a{color:var(--ink);text-decoration:underline;-webkit-text-decoration-color:var(--line);text-decoration-color:var(--line);text-underline-offset:4px;transition:text-decoration-color .15s}.homework-index-group-header h2 a:hover{text-decoration-color:currentColor}.homework-index-group-meta{flex-wrap:wrap;align-items:center;gap:0 8px;margin:2px 0 0;font-size:14px;display:flex}.homework-index-tutor{min-height:44px;color:var(--muted);align-items:center;gap:8px;margin-block:-8px;text-decoration:none;display:inline-flex}.homework-index-tutor .tutor-avatar{flex-basis:24px;width:24px;height:24px;font-size:11px}.homework-index-tutor-name{color:var(--ink);text-decoration:underline;-webkit-text-decoration-color:var(--line);text-decoration-color:var(--line);text-underline-offset:3px;font-weight:500;transition:color .15s,text-decoration-color .15s}.homework-index-tutor:hover .homework-index-tutor-name{color:var(--accent);text-decoration-color:currentColor}@media (max-width:560px){.homework-index-group-meta>[aria-hidden=true]{display:none}.homework-index-group-meta>span:last-child{flex-basis:100%}}.homework-index-summary{border:1px solid var(--border);background:var(--paper);border-radius:14px;align-items:center;gap:24px;padding:24px;display:flex}.homework-index-summary p{margin:0}.homework-index-summary-text{flex:1;gap:4px;display:grid}.homework-index-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.homework-index-row{border:1px solid var(--line);background:var(--paper);min-height:64px;color:var(--ink);border-radius:10px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 24px;padding:14px 20px;text-decoration:none;display:flex}.homework-index-row:hover{border-color:var(--accent)}.homework-index-row--reviewed{border-color:var(--feedback-correct-edge)}.homework-index-row--new{border-color:var(--accent);box-shadow:inset 3px 0 0 var(--accent)}.homework-index-main{gap:2px;min-width:0;display:grid}.homework-index-main .exam-muted{font-size:14px}.homework-index-title{font:17px/1.5 var(--font-serif)}.homework-index-state{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:4px 12px;min-width:0;display:flex}.homework-index-who{text-align:right;overflow-wrap:anywhere;flex-basis:100%;font-size:13px}.homework-index-chip{border:1px solid var(--border);white-space:nowrap;border-radius:24px;padding:2px 10px;font-size:13px}.homework-index-row--reviewed .homework-index-chip{border-color:var(--feedback-correct-edge);background:var(--feedback-correct-fill)}.homework-index-row--new .homework-index-chip{border-color:var(--accent);background:var(--soft);font-weight:600}.homework-index-row--turn-reviewers .homework-index-chip{color:var(--muted);border-style:dashed}.homework-dot{background:var(--accent);vertical-align:1px;border-radius:50%;width:8px;height:8px;margin-right:6px;display:inline-block}@media (max-width:680px){.homework-index-state{justify-content:flex-start}.homework-index-who{text-align:left}}.homework-index-progress{align-items:center;gap:8px;font-size:13px;display:flex}.homework-index-progress .game-hud-meter{flex:none;order:0;width:80px}@page{size:A4;margin:16mm 15mm 18mm}.homework-print-page{gap:20px;padding:16px;display:grid}.homework-print-toolbar{z-index:5;border:1px solid var(--border);background:var(--paper);border-radius:12px;flex-wrap:wrap;align-items:center;gap:8px 16px;width:100%;max-width:210mm;margin:0 auto;padding:12px 16px;display:flex;position:sticky;top:0}.homework-print-back{margin-right:auto;font-size:14px}.homework-print-hint{flex-basis:100%;margin:0;font-size:13px}.homework-print{--background:#f3eee2;--paper:#fffdf8;--ink:#15281f;--muted:#3f4d45;--accent:#24513a;--accent-hover:#173a28;--action-ink:#fff;--soft:#e1e8d6;--focus:#2f6146;--line:#cfd6c7;--border:#bcc6b3;--control-border:#5a6b55;--chart-area:#c5dbc9;--chart-tutor:#b8704a;--chart-marker:#b5603b;--brand-sky:#15281f;--brand-sky-line:#15281f;--cat-1:#2f7d50;--cat-2:#3a62b8;--cat-3:#c98a17;--cat-4:#7d4cb5;--cat-5:#d0603a;--cat-6:#1f9b8a;--seq-1:#8cbf99;--seq-2:#6aa77c;--seq-3:#4d8c62;--seq-4:#357149;--seq-5:#225635;--seq-6:#133b23;--feedback-correct-edge:#4f6b3f;--feedback-correct-fill:#e6eedd;--feedback-wrong-edge:#9a5a37;--feedback-wrong-fill:linen;--feedback-mark:#f6e7c8;--crossword-block:#24513a;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;background:var(--paper);width:100%;max-width:210mm;color:var(--ink);font:11pt/1.5 var(--font-sans);border-radius:4px;margin:0 auto;padding:16mm 15mm;box-shadow:0 12px 40px #00000059}.homework-print p,.homework-print ul,.homework-print ol,.homework-print h1,.homework-print h2,.homework-print blockquote{max-width:none;margin:0}.print-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:16px;padding-bottom:8px;display:flex}.print-brand{align-items:center;gap:8px;display:inline-flex}.print-mark{width:26px;height:26px}.print-wordmark{font:italic 400 18px/1 var(--font-serif);color:var(--accent)}.print-meta{color:var(--muted);font-size:9.5pt}.print-title{font:600 20pt/1.2 var(--font-serif);margin-top:14px}.print-lesson{color:var(--muted);font-size:10pt}.print-name,.print-status,.print-tally{flex-wrap:wrap;align-items:baseline;gap:4px 14px;margin-top:12px;font-size:10pt;display:flex}.print-tally strong{color:var(--accent)}.print-notes,.print-comment{border-left:3px solid var(--border);margin-top:12px;padding:6px 10px;font-size:9.5pt}.print-notes ul{padding-left:16px}.print-comment footer{color:var(--muted)}.print-section{margin-top:18px}.print-section h2{font:600 13pt/1.3 var(--font-sans)}.print-section h2,.print-instructions,.print-box-words{break-after:avoid}.print-section-number{color:var(--accent);margin-right:8px}.print-instructions{font-size:10pt;font-weight:600}.print-instructions.is-structured{gap:8pt;font-weight:400;display:grid}.print-instructions .homework-instructions-block{gap:2pt}.print-box-words{flex-wrap:wrap;gap:4px 6px;margin-top:6px;display:flex}.print-box-words span{border:1px solid var(--border);border-radius:12px;padding:0 8px;font-size:10pt}.print-items{gap:8px;margin-top:8px;padding:0;list-style:none;display:grid}.print-item{break-inside:avoid;grid-template-columns:1.6em minmax(0,1fr);gap:4px;display:grid}.print-number{color:var(--muted);font-family:var(--font-serif)}.print-item-body{gap:4px;min-width:0;display:grid}.print-sentence{font:12pt/1.9 var(--font-serif);white-space:pre-line}.print-hint,.print-instruction,.print-label,.print-note{color:var(--muted);font:9.5pt/1.5 var(--font-sans)}.print-blank{border-bottom:1px solid var(--ink);vertical-align:baseline;min-width:6em;margin:0 3px;display:inline-block}.print-blank--wide{min-width:12em}.print-answer{border-bottom:1px solid var(--accent);color:var(--accent);margin:0 3px;padding:0 3px;font-weight:600}.print-choices{flex-wrap:wrap;gap:4px 20px;font-size:10pt;display:flex}.print-box{border:1px solid var(--ink);width:1.1em;height:1.1em;color:var(--accent);vertical-align:-2px;border-radius:2px;place-items:center;margin-right:4px;font-weight:700;line-height:1;display:inline-grid}.print-field{gap:2px;display:grid}.print-lines{display:grid}.print-lines span{border-bottom:1px solid var(--line);height:1.9em}.print-written{border-left:2px solid var(--accent);color:var(--accent);font:11.5pt/1.7 var(--font-serif);white-space:pre-wrap;padding:2px 0 2px 8px}.homework-print .homework-corrections{margin-top:2px}.homework-print .homework-correction{break-inside:avoid;padding:4px 10px}.homework-print .homework-correction p{font-size:9.5pt}.homework-print .homework-correction p.homework-diff{font-size:11pt}.print-footer{border-top:1px solid var(--line);color:var(--muted);margin-top:20px;padding-top:8px;font-size:9pt}@media (max-width:560px){.homework-print-page{padding:8px}.homework-print{padding:20px 16px}.print-blank{min-width:4.5em}.print-blank--wide{min-width:8em}.homework-print-toolbar .homework-segmented{width:100%}.homework-print-toolbar .homework-segmented button{flex:1;padding-inline:6px}.homework-print-toolbar .button-link{width:100%}}@media print{:root,:root[data-theme]{--lightningcss-light:initial!important;--lightningcss-dark: !important;color-scheme:light!important}html,body{background:#fff!important}.homework-print-toolbar,nextjs-portal{display:none!important}.homework-print-page{padding:0}.homework-print{max-width:none;box-shadow:none;-webkit-print-color-adjust:exact;print-color-adjust:exact;background:#fff;border-radius:0;padding:0}}.homework-share-tag{border:1px solid var(--accent);color:var(--accent);white-space:nowrap;border-radius:24px;margin-left:8px;padding:0 8px;font-size:12px;font-weight:600}.homework-lesson-head{gap:4px;display:grid}.homework-lesson-head p,.homework-lesson-head h2{margin:0}.homework-lesson-head h2{font:600 clamp(24px, 4vw, 32px) / 1.2 var(--font-serif)}.homework-lesson-sheets{gap:12px;margin:0;padding:0;list-style:none;display:grid}.homework-lesson-sheet{border:1px solid var(--line);background:var(--paper);border-radius:12px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 24px;padding:16px 20px;display:flex}.homework-lesson-sheet.is-done{border-color:var(--feedback-correct-edge)}.homework-lesson-sheet-main{flex:16rem;gap:4px;min-width:0;display:grid}.homework-lesson-sheet-main .game-hud-meter{width:100%;max-width:16rem;margin:4px 0 0}.homework-lesson-sheet-state{font-size:14px;font-weight:600}.homework-lesson-sheet.is-done .homework-lesson-sheet-state{color:var(--feedback-correct-edge)}.games-app .homework-back{min-height:0;color:var(--accent);text-underline-offset:3px;cursor:pointer;background:0 0;border:0;justify-self:start;padding:0;font-size:15px;text-decoration:underline}@media (max-width:560px){.homework-lesson-sheet{padding:14px 16px}.homework-lesson-sheet>button{width:100%}}.homework-tutor-student{gap:12px;display:grid}.homework-tutor-student-name{font:600 20px / 1.3 var(--font-serif);margin:0}.homework-lesson-sheet.is-fresh{border-color:var(--accent);box-shadow:inset 3px 0 0 var(--accent)}.homework-tutor-form{gap:16px;max-width:36rem;display:grid}.homework-tutor-invite{border:1px solid var(--line);background:var(--paper);border-radius:12px;padding:20px}.homework-tutor-form h2,.homework-tutor-list h2,.homework-share-legacy{margin:0;font-size:20px}.homework-share-legacy{margin-top:24px}.homework-tutor-students{border:0;gap:12px;min-width:0;margin:0;padding:0;display:grid}.homework-tutor-students legend{margin-bottom:8px;padding:0;font-size:14px;font-weight:600}.homework-tutor-student-pick{gap:8px;min-width:0;display:grid}.games-app .homework-tutor-check{overflow-wrap:anywhere;cursor:pointer;flex-direction:row;align-items:center;gap:10px;min-width:0;min-height:44px;display:flex}.games-app .homework-tutor-check input{width:20px;height:20px;min-height:0;accent-color:var(--accent);flex:none;margin:0;padding:0}.homework-tutor-student-pick .homework-field{padding-left:30px}.homework-tutor-list{gap:12px;display:grid}.homework-tutor-list .homework-shares{margin-top:0}.homework-tutor-list li{border:1px solid var(--line);background:var(--paper);border-radius:12px;padding:14px 16px}.homework-tutor-list li.is-revoked{background:0 0;border-style:dashed}.homework-tutor-list li.is-revoked .homework-submission-title{color:var(--muted)}.homework-tutor-list .homework-tutor-form{flex:1;max-width:none}.homework-tutor-list .homework-share-info{overflow-wrap:anywhere}.homework-tutor-actions{flex-wrap:wrap;gap:8px;display:flex}@media (max-width:560px){.homework-tutor-invite{padding:16px}.homework-tutor-actions,.homework-tutor-actions button{width:100%}}.homework-print.homework-print--embedded{display:none}.games-app .homework-pdf{min-height:36px;font-size:14px}@media print{body:has(.homework-print--embedded) :not(:has(.homework-print--embedded)):not(.homework-print--embedded):not(.homework-print--embedded *){display:none!important}body:has(.homework-print--embedded) :has(.homework-print--embedded){max-width:none!important;box-shadow:none!important;background:0 0!important;border:0!important;gap:0!important;margin:0!important;padding:0!important}.homework-print.homework-print--embedded{display:block}}.games-app.admin-app{gap:32px;max-width:none}.admin-summary{grid-template-columns:repeat(auto-fit,minmax(9.5rem,1fr));gap:12px;display:grid}.admin-summary>div{border:1px solid var(--line);background:var(--paper);border-radius:12px;gap:4px;padding:16px 20px;display:grid}.admin-summary .exam-muted{font-size:14px}.admin-figure{font:600 clamp(22px, 6vw, 32px) / 1.1 var(--font-serif);white-space:nowrap;color:var(--accent);font-variant-numeric:tabular-nums}.admin-section{gap:12px;min-width:0;display:grid}.admin-section h2{margin:0;font-size:20px}.admin-table-wrap{border:1px solid var(--line);background:var(--paper);border-radius:12px;padding:4px 16px;overflow-x:auto}.admin-table{font-variant-numeric:tabular-nums;min-width:52rem}.admin-table th[scope=row]{font-weight:600}.admin-table td,.admin-table th{vertical-align:top}.admin-table .exam-muted{font-size:13px;font-weight:400}.admin-table tr.is-revoked th,.admin-table tr.is-revoked td{color:var(--muted)}.admin-who,.admin-ai{overflow-wrap:anywhere;gap:2px;display:grid}.admin-note{max-width:48rem;margin:0;font-size:14px}.homework-sign-out{color:var(--accent);text-underline-offset:3px}.games-app .homework-override-ai{min-height:44px;color:var(--accent);text-decoration:underline;-webkit-text-decoration-color:var(--line);text-decoration-color:var(--line);text-underline-offset:4px;cursor:pointer;background:0 0;border:0;justify-self:start;padding:0;font-size:14px}.games-app .homework-override-ai:hover{text-decoration-color:currentColor}.admin-person{gap:4px;min-width:0;display:grid}.admin-person h2{font:600 clamp(22px, 3.5vw, 28px) / 1.2 var(--font-serif);overflow-wrap:anywhere;margin:0}.admin-person p{margin:0;font-size:14px}.admin-links{gap:8px;margin:0;padding:0;list-style:none;display:grid}.admin-links li{border:1px solid var(--line);background:var(--paper);overflow-wrap:anywhere;border-radius:12px;gap:2px;padding:12px 16px;display:grid}.admin-links li.is-revoked{background:0 0;border-style:dashed}.admin-links .exam-muted{font-size:14px}.admin-pill{border:1px solid var(--border);white-space:nowrap;border-radius:24px;padding:2px 10px;font-size:13px;display:inline-block}.admin-pill--reviewed,.admin-pill--tutor-done{border-color:var(--feedback-correct-edge);background:var(--feedback-correct-fill)}.admin-pill--new{border-color:var(--accent);background:var(--soft);font-weight:600}.admin-pill--turn-reviewers,.admin-pill--tutor-todo{color:var(--muted);border-style:dashed}.admin-pill--tutor-recheck{border-color:var(--accent)}.admin-actions{gap:12px;display:grid}.admin-timeline{border-left:1px solid var(--line);margin:0;padding:0;list-style:none;display:grid}.admin-timeline li{grid-template-columns:9.5rem minmax(0,1fr);gap:4px 16px;padding:8px 0 8px 20px;font-size:14px;display:grid;position:relative}.admin-timeline li:before{content:"";background:var(--paper);border:2px solid var(--line);border-radius:50%;width:9px;height:9px;position:absolute;top:15px;left:-5px}.admin-timeline li.admin-timeline--homework:before,.admin-timeline li.admin-timeline--review:before{border-color:var(--accent)}.admin-timeline li.admin-timeline--ai:before{border-color:var(--lamp-light)}.admin-timeline time{color:var(--muted);font-variant-numeric:tabular-nums}.admin-timeline span{overflow-wrap:anywhere}@media (max-width:560px){.admin-timeline li{grid-template-columns:1fr}.admin-actions .game-actions button{width:100%}}.everyday-verbs .comparison-section{margin-top:var(--space-section)}.everyday-verbs .comparison-grid{margin-top:24px}.everyday-meaning{color:var(--accent);font-weight:600}.everyday-practice>summary{min-height:44px}.everyday-practice-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-block:24px;display:grid}.everyday-question{border:1px solid var(--border);background:var(--paper);border-radius:12px;min-width:0;padding:24px}.everyday-question fieldset{border:0;min-width:0;margin:0 0 16px;padding:0}.everyday-question legend{padding:0;font-weight:600}.everyday-options{gap:8px;display:grid}.everyday-options label{border:1px solid var(--control-border);cursor:pointer;border-radius:8px;align-items:center;gap:12px;min-height:44px;padding:8px 12px;display:flex}.everyday-options label:has(:checked){background:var(--soft)}.everyday-options label:focus-within{outline:3px solid var(--focus);outline-offset:3px}.everyday-options input{accent-color:var(--accent);flex:none}.everyday-question button:disabled{opacity:.6;cursor:default}.everyday-feedback{border-top:1px solid var(--line);margin-top:16px;padding-top:16px}@media (max-width:680px){.everyday-verbs .comparison-section{margin-top:var(--space-block)}.everyday-practice-grid{grid-template-columns:minmax(0,1fr)}.everyday-question{padding:16px}}.everyday-card-heading{align-items:flex-start;gap:12px;display:flex}.everyday-explanation-icon{width:28px;height:28px;color:var(--accent);flex:0 0 28px}.profile-avatar{--profile-portrait-paper:#f3eee2}.profile-layout{gap:var(--space-group);display:grid}.profile-panel{border:1px solid var(--border);background:var(--paper);border-radius:12px;align-content:start;gap:24px;min-width:0;padding:32px;display:grid}.profile-panel p,.profile-panel h2{margin:0}.profile-panel h2{overflow-wrap:anywhere;align-items:center;gap:12px;display:flex}.profile-panel h2 svg{width:24px;height:24px;color:var(--accent);flex:none}.profile-intro{align-items:center;gap:24px;display:flex}.profile-intro>div{gap:8px;min-width:0;display:grid}.profile-portrait{flex:none;width:100px;height:100px}.profile-eyebrow{color:var(--accent);font-size:14px;font-weight:600}.profile-form,.profile-fields,.profile-name{gap:24px;display:grid}.profile-fields,.profile-avatar-field{border:0;min-width:0;margin:0;padding:0}.profile-name{gap:8px;max-width:480px}.profile-name label,.profile-avatar-field legend{font-weight:600}.profile-name input{border:1px solid var(--control-border);background:var(--background);width:100%;min-width:0;color:var(--ink);font:inherit;border-radius:8px;padding:12px 16px}.profile-help{color:var(--muted);font-size:14px}.profile-avatars{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;max-width:560px;margin-top:12px;display:grid}.profile-avatar-option{border:1px solid var(--control-border);cursor:pointer;border-radius:8px;justify-items:center;gap:8px;padding:12px 8px;font-size:14px;display:grid}.profile-avatar-option:has(input:checked){border-color:var(--accent);background:var(--soft)}.profile-avatar-option:has(input:focus-visible){outline:3px solid var(--focus);outline-offset:5px}.profile-avatar-option input{accent-color:var(--accent);width:16px;height:16px;margin:0}.profile-avatar-option svg{width:64px;max-width:100%;height:auto}.profile-save{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.profile-save [role=status]{color:var(--muted);font-size:14px}.profile-panel .button-link{cursor:pointer;font:inherit;justify-self:start;font-size:14px}.profile-panel button:disabled{cursor:default;opacity:.65}.profile-overview{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;display:grid}.profile-stats{flex-wrap:wrap;gap:32px;margin:0;display:flex}.profile-stats>div{flex-direction:column-reverse;gap:4px;display:flex}.profile-stats dt{color:var(--muted);font-size:14px}.profile-stats dd{font-variant-numeric:tabular-nums;margin:0;font-size:32px;font-weight:600}.profile-attempts{margin:0;padding:0;list-style:none}.profile-attempts li+li{border-top:1px solid var(--line)}.profile-attempts a{color:var(--accent);flex-wrap:wrap;justify-content:space-between;gap:8px 16px;min-height:44px;padding:12px 0;text-decoration:none;display:flex}.profile-attempts a>span:first-child{gap:4px;display:grid}.profile-attempts a>span:first-child>span{color:var(--muted);font-size:14px}.profile-attempts a:hover strong{text-decoration:underline}.profile-resources h2{margin:0 0 24px}.profile-shortcuts{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;display:grid}.profile-shortcuts>a{border-top:1px solid var(--border);color:var(--accent);align-items:flex-start;gap:12px;padding:24px 0;text-decoration:none;display:flex}.profile-shortcuts svg{flex:none;width:24px;height:24px}.profile-shortcuts a>span:nth-child(2){flex:1;gap:8px;display:grid}.profile-shortcuts a>span:nth-child(2)>span{color:var(--muted);font-size:14px}.profile-shortcuts a:hover strong{text-decoration:underline}@media (max-width:700px){.profile-overview,.profile-shortcuts{grid-template-columns:1fr}.profile-panel{padding:24px}.profile-intro{align-items:flex-start;gap:16px}.profile-portrait{width:64px;height:64px}.profile-avatars{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:380px){.profile-intro{flex-direction:column}.profile-avatars{grid-template-columns:repeat(2,minmax(0,1fr))}}.header-profile{border:1px solid var(--border);border-radius:50%;flex:0 0 44px;justify-content:center;align-items:center;width:44px;height:44px;display:inline-flex}.header-profile .profile-avatar{width:36px;height:36px}.header-profile:hover,.header-profile[aria-current]{border-color:var(--accent);background:var(--soft)}.site-header:has(.header-profile) .header-actions{margin-left:0}.site-header:has(.header-profile) .header-actions .search-button{min-width:100px}@media (max-width:950px){.site-header:has(.header-profile){grid-template-columns:auto minmax(44px,1fr) 44px 44px;gap:8px;display:grid}.site-header:has(.header-profile) .header-actions{display:none}.site-header:has(.header-profile) .brand{margin-right:0}:is(.site-header:has(.header-profile) .mobile-search,.site-header:has(.header-profile) .mobile-theme){min-width:0;position:static}}@media (max-width:360px){.site-header:has(.header-profile) .brand-word{display:none}}.admin-member{align-items:center;gap:12px;min-width:0;display:flex}.admin-member>.profile-avatar{flex:0 0 40px;width:40px;height:40px}.admin-member>.admin-who{min-width:0}.admin-member-heading>.profile-avatar{flex-basis:64px;width:64px;height:64px}.to-for-guide .comparison-grid{margin-top:24px}.to-for-guide .preposition-diagram{max-width:320px;margin-inline:auto}.to-for-decisions{gap:16px;padding-left:24px;display:grid}.polaris-loader{padding-block:var(--space-group);color:var(--muted);text-align:center;justify-items:center;gap:12px;font-size:15px;display:grid}.polaris-loader p{margin:0}.polaris-loader-mark{width:104px;height:104px;overflow:visible}.polaris-loader--inline{text-align:start;align-items:center;gap:8px;padding:0;display:inline-flex}.polaris-loader--inline .polaris-loader-mark{flex:none;width:20px;height:20px}.polaris-loader-dim{fill:var(--accent);opacity:.35}.polaris-loader-trail{transform-box:fill-box;transform-origin:50%;opacity:0;transform:rotate(-90deg)}.polaris-loader-trail circle{fill:none;stroke:var(--brand-ring);stroke-width:2.5px;stroke-linecap:round}.polaris-loader-star{transform-box:fill-box;transform-origin:50%}@media (prefers-reduced-motion:no-preference){.polaris-loader{animation:.4s ease-out .2s both polaris-loader-in}.polaris-loader-trail{animation:2.4s infinite polaris-loader-sweep}.polaris-loader-north{animation:2.4s ease-in-out infinite polaris-loader-north}.polaris-loader-star{animation:2.4s ease-in-out infinite polaris-loader-twinkle}.polaris-loader-dim{animation:2.4s ease-in-out infinite both polaris-loader-dim}}@media (prefers-reduced-motion:reduce){.polaris-loader-star{animation:3.2s ease-in-out infinite polaris-loader-breathe}}@keyframes polaris-loader-in{0%{opacity:0}}@keyframes polaris-loader-sweep{0%{opacity:0;animation-timing-function:cubic-bezier(.55,0,.2,1);transform:rotate(-90deg)}10%{opacity:1}72%{opacity:1;transform:rotate(270deg)}90%,to{opacity:0;transform:rotate(270deg)}}@keyframes polaris-loader-north{0%,66%,to{opacity:.45}74%,90%{opacity:1}}@keyframes polaris-loader-twinkle{0%,70%,to{transform:scale(1)}80%{transform:scale(1.22)}}@keyframes polaris-loader-dim{0%,to{opacity:.12}50%{opacity:.7}}@keyframes polaris-loader-breathe{50%{opacity:.6}}.offline-region{z-index:60;bottom:max(16px, env(safe-area-inset-bottom));max-width:min(460px,100vw - 32px);position:fixed;left:16px}.offline-notice{--tone:var(--accent);border:1px solid var(--border);border-left:4px solid var(--tone);background:var(--paper);color:var(--muted);box-shadow:0 8px 28px rgb(var(--shadow-rgb) / 28%);border-radius:12px;align-items:flex-start;gap:10px;padding:12px 16px;font-size:15px;line-height:1.45;display:flex}.offline-notice[data-tone=offline]{--tone:var(--lamp-light)}.offline-notice[data-tone=done]{--tone:var(--feedback-correct-edge)}.offline-notice[data-tone=problem]{--tone:var(--feedback-wrong-edge)}.offline-notice p{margin:0}.offline-notice svg{color:var(--tone);flex:none;margin-top:1px}.offline-notice a,.offline-notice-action{color:var(--accent);font-weight:600}.offline-notice-action{min-height:32px;font:inherit;text-underline-offset:3px;cursor:pointer;background:0 0;border:0;padding:0 4px;font-weight:600;text-decoration:underline}.offline-notice-action:hover{color:var(--accent-hover);background:0 0}.offline-notice strong{color:var(--ink);font-weight:600}@media (prefers-reduced-motion:no-preference){.offline-notice{animation:.18s ease-out offline-notice-in}.offline-notice[data-tone=working] svg{animation:1.6s linear infinite offline-notice-turn}}@keyframes offline-notice-in{0%{opacity:0;transform:translateY(8px)}}@keyframes offline-notice-turn{to{transform:rotate(360deg)}}@media (max-width:560px){.offline-region{max-width:none;right:16px}}.downloads{gap:var(--space-group);margin-bottom:var(--space-block);display:grid}.downloads-summary{border:1px solid var(--border);background:var(--paper);border-radius:12px;padding:24px}.downloads-count{color:var(--muted);margin-bottom:12px;font-size:17px}.downloads-count-value{color:var(--ink);font-family:var(--font-serif);font-size:34px;font-weight:500;line-height:1}.downloads-meter{width:100%;display:block}.downloads-meta{color:var(--muted);margin:12px 0 0;font-size:14px}.downloads-actions{flex-wrap:wrap;gap:12px;margin-top:20px;display:flex}.downloads .button-link:disabled{border-color:var(--soft);background:var(--soft);color:var(--muted);cursor:default}.downloads-status:not(:empty){color:var(--muted);margin-top:16px;font-size:14px}.downloads-status p{margin:0}.downloads-text-button{min-height:44px;color:var(--accent);font:inherit;text-underline-offset:3px;cursor:pointer;background:0 0;border:0;padding:0 4px;font-size:14px;font-weight:600;text-decoration:underline}.downloads-text-button:hover{color:var(--accent-hover);background:0 0}.downloads-text-button:disabled{color:var(--muted);cursor:default;text-decoration:none}.downloads-group-header{border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:8px 16px;padding-bottom:12px;display:flex}.downloads-group-header h2{margin:0;font-size:22px}.downloads-group-count{color:var(--muted);flex:1;font-size:14px}.downloads-list{margin:0;padding:0;list-style:none}.downloads-item{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:4px 16px;padding:8px 0;display:grid}.downloads-item-text{min-width:0;display:grid}.downloads-item-text a{color:var(--ink);overflow-wrap:anywhere}.downloads-item-detail,.downloads-item-state{color:var(--muted);font-size:13px}.downloads-item-state--kept{color:var(--accent)}.downloads-item-state--kept:before{content:"✓ "}@media (max-width:560px){.downloads-summary{padding:20px 16px}.downloads-item{grid-template-columns:minmax(0,1fr) auto}.downloads-item-state{grid-row:2}.downloads-text-button.downloads-item-action,.downloads-item>.downloads-text-button{grid-area:1/2/span 2}}.exam-headline{gap:6px;display:grid}.exam-headline h2,.exam-headline p{margin:0}.exam-outcome{border:1px solid var(--line);color:var(--ink);white-space:nowrap;border-radius:999px;padding:2px 10px;font-size:13px;font-weight:600;display:inline-block}.exam-outcome[data-state=above],.exam-outcome[data-state=at]{border-color:var(--feedback-correct-edge);background:var(--feedback-correct-fill)}.exam-outcome[data-state=below]{border-color:var(--feedback-wrong-edge);background:var(--feedback-wrong-fill)}.exam-outcome[data-state=waiting],.exam-outcome[data-state=skipped]{background:var(--soft);color:var(--muted)}.exam-outcome[data-state=blocked]{border-style:dashed;border-color:var(--feedback-wrong-edge)}.games-app .exam-play-button{justify-content:center;width:9.5em}.exam-clip-time{text-align:right;flex:none;width:5.5em}.exam-play-state{border-radius:8px;flex:none;justify-content:center;align-items:center;gap:8px;width:11.5em;min-height:40px;font-size:14px;font-weight:600;display:inline-flex}.exam-play-state[data-state=playing]{background:var(--soft);color:var(--ink)}.exam-play-state[data-state=playing] .exam-icon{color:var(--accent)}.exam-play-state[data-state=waiting],.exam-play-state[data-state=played]{border:1px solid var(--line);color:var(--muted)}@media (prefers-reduced-motion:no-preference){.exam-sound-pulse{animation:1.2s ease-in-out infinite exam-pulse}}.exam-letter-select{width:5.5em;display:inline-flex;position:relative}.games-app .exam-letter-select select{appearance:none;width:100%;padding:8px 32px 8px 14px;font-weight:600}.games-app .exam-letter-select select.is-empty{color:var(--muted)}.exam-letter-select .exam-icon{width:18px;height:18px;color:var(--muted);pointer-events:none;position:absolute;top:50%;right:10px;transform:translateY(-50%)}.story-reader{max-width:58rem;margin-inline:auto}.story-reader [hidden]{display:none!important}.story-toolbar{background:var(--paper);border:1px solid var(--border);border-radius:12px;flex-wrap:wrap;align-items:end;gap:1rem;padding:1rem;display:flex}.story-toolbar label{flex:100%;gap:.4rem;display:grid}.story-toolbar select{background:var(--paper);width:100%;min-height:44px;color:var(--ink);border:1px solid var(--border);font:inherit;border-radius:6px;padding:.5rem}.story-toolbar a,.story-pagination a,.story-zoom,.story-dialog-close{min-height:44px;color:var(--accent);align-items:center;display:inline-flex}.story-position{color:var(--muted);font-variant-numeric:tabular-nums}.story-sheet{background:var(--paper);border:1px solid var(--border);border-radius:12px;margin-block:1.5rem;padding:clamp(1rem,3vw,2rem);scroll-margin-top:7rem}.story-sheet h2{font-family:var(--font-serif);font-size:clamp(1.5rem,4vw,2rem)}.story-scene-heading{border-inline-start:4px solid var(--story-accent,var(--accent));margin-bottom:1rem;padding-inline-start:1rem}.story-structure{font-weight:600}.story-panel{margin:0}.story-art{object-fit:contain;border-radius:6px;width:100%;height:auto;display:block}.story-voice{font-family:var(--font-serif);border:1px solid var(--border);border-inline-start:4px solid var(--story-accent,var(--accent));background:var(--soft);overflow-wrap:anywhere;border-radius:4px;margin-top:1rem;padding:1rem 1.2rem;font-size:clamp(1.2rem,3vw,1.65rem);line-height:1.5;position:relative}.story-voice--dialogue{border-radius:1.2rem}.story-voice--dialogue:before{content:"";background:var(--soft);border-top:1px solid var(--border);border-left:1px solid var(--border);width:.9rem;height:.9rem;position:absolute;top:-.5rem;left:2rem;transform:rotate(45deg)}.story-timeline{background:var(--soft);border-radius:6px;flex-wrap:wrap;gap:.5rem 1.5rem;margin-block:1rem;padding:.8rem 1rem .8rem 2rem;font-size:.9rem;display:flex}.story-timeline li{overflow-wrap:anywhere;flex:8rem;padding-inline-start:.25rem}.story-disclosure{border-top:1px solid var(--line);padding-block:.6rem}.story-disclosure summary{cursor:pointer;align-content:center;min-height:44px}.story-disclosure p{line-height:1.7}.story-zoom,.story-dialog-close{border:1px solid var(--border);background:var(--paper);font:inherit;cursor:pointer;border-radius:8px;padding:.5rem 1rem}.story-zoom{margin-top:1rem}.story-pagination{flex-wrap:wrap;justify-content:space-between;gap:1rem;margin-block:1.5rem;display:flex}.story-pagination a{border:1px solid var(--border);background:var(--paper);border-radius:8px;padding:.5rem 1rem}.story-comparison{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem;margin-top:1.5rem;display:grid}.story-comparison article{border-top:4px solid var(--story-accent,var(--accent));min-width:0;padding-top:1rem}.story-comparison h3{margin-block:.8rem .4rem;font-size:1.15rem}.story-comparison p{overflow-wrap:anywhere}.story-comparison-reality{color:var(--muted);font-size:.85rem}.story-dialog{width:min(92vw,78rem);max-height:90dvh;color:var(--ink);background:var(--paper);border:1px solid var(--border);border-radius:12px;padding:clamp(.8rem,3vw,2rem);overflow:auto}.story-dialog::backdrop{background:#000000a6}.story-dialog-close{margin-bottom:1rem}.story-dialog .story-art{max-height:none}.story-help{color:var(--muted);font-size:.95rem}[data-story-accent="0"]{--story-accent:#386149}[data-story-accent="1"]{--story-accent:#476d88}[data-story-accent="2"]{--story-accent:#7a5932}[data-story-accent="3"]{--story-accent:#80576c}@media (max-width:600px){.story-comparison{grid-template-columns:minmax(0,1fr)}.story-toolbar{gap:.5rem 1rem}}@media print{.story-reader .story-sheet[hidden]{display:block!important}.story-toolbar,.story-pagination,.story-enhanced,.story-position{display:none!important}}.story-cover{object-fit:contain;border-radius:6px;width:100%;height:auto;margin-bottom:1rem;display:block}
