:root{color-scheme:light dark;--bg:oklch(.99 .003 290);--bg-deep:oklch(.99 .003 290);--text:oklch(.23 .015 290);--muted:oklch(.48 .02 290);--accent:oklch(.48 .18 290);--accent-strong:oklch(.42 .18 290);--cta:var(--accent);--cta-hover:var(--accent-strong);--card:oklch(.97 .008 290);--hairline:oklch(.88 .012 290);--field:oklch(1 0 0);--soft:oklch(.94 .025 290);--good:oklch(.4 .1 155);--good-bg:oklch(.94 .03 155);--bad:oklch(.45 .16 25);--bad-bg:oklch(.96 .025 25)}
@media(prefers-color-scheme:dark){:root{--bg:oklch(.17 .012 290);--bg-deep:var(--bg);--text:oklch(.94 .005 290);--muted:oklch(.73 .015 290);--accent:oklch(.78 .12 290);--accent-strong:oklch(.85 .09 290);--card:oklch(.21 .015 290);--hairline:oklch(.34 .018 290);--field:oklch(.23 .014 290);--soft:oklch(.29 .045 290);--good:oklch(.83 .1 155);--good-bg:oklch(.28 .035 155);--bad:oklch(.83 .1 25);--bad-bg:oklch(.28 .035 25)}}
*{box-sizing:border-box}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased}main{isolation:isolate}[hidden]{display:none!important}a{color:var(--accent)}p{line-height:1.7;text-wrap:pretty}h1,h2,h3{font-weight:600;letter-spacing:-.035em;text-wrap:balance}button,input,select,textarea{font:inherit}button{background:var(--soft);color:var(--accent);border:1px solid transparent;border-radius:14px;min-height:48px;padding:12px 18px}.primary,.action{background:var(--accent);color:var(--bg);border-radius:14px}.quiet{background:transparent;color:var(--muted)}button:disabled{opacity:.5;cursor:default}button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible{outline:3px solid var(--accent);outline-offset:3px}button:disabled.is-correct,button:disabled.is-wrong{opacity:1}.site-header{background:var(--bg);border-bottom:1px solid var(--hairline)}.site-menu[open]>.site-nav{background:var(--bg)}.site-header a,.site-menu-toggle{color:var(--text)}.nav-download{background:var(--soft)!important;color:var(--accent)!important}.page{max-width:1120px;padding:64px 28px 80px}.page h1{font-size:clamp(2.25rem,5vw,4rem);max-width:24ch}.page .lede{font-size:1.25rem;color:var(--muted);max-width:48ch}.eyebrow{font-size:.875rem;font-weight:600;color:var(--accent);margin:0 0 16px!important}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.quiz-intro{margin-bottom:40px}.quiz-intro h1{font-size:clamp(2.25rem,4vw,3.5rem);margin:0 0 18px}.quiz-shell{background:var(--field);border:1px solid var(--hairline);border-radius:28px;padding:32px}.quiz-shell h2{margin:0;font-size:1.75rem}.setup-heading{display:flex;justify-content:space-between;gap:24px;align-items:center}.setup-heading p{margin:10px 0;color:var(--muted)}.setup-runes{font-size:3.5rem!important;color:var(--accent)!important;flex-shrink:0}.practice-groups{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:28px 0;padding:0}.practice-groups label{position:relative;cursor:pointer;min-width:0}.practice-groups input{position:absolute;opacity:0;inset:0;width:100%;height:100%;margin:0}.practice-groups span{display:flex;flex-direction:column;gap:8px;padding:18px 14px;border:1px solid var(--hairline);border-radius:16px;background:var(--field)}.practice-groups input:checked+span{border-color:var(--accent);background:var(--soft);box-shadow:inset 0 0 0 1px var(--accent)}.practice-groups input:focus-visible+span{outline:3px solid var(--accent);outline-offset:3px}.practice-groups strong{font-weight:600}.practice-groups small{color:var(--muted);font-size:.875rem}.practice-groups small.rune{font-size:1rem;white-space:normal;line-height:1.6;overflow-wrap:anywhere}.setup-footer,.quiz-topline,.answer-footer,.result-actions{display:flex;align-items:center;justify-content:space-between;gap:24px}.setup-footer p{color:var(--muted);margin:0}.quiz-topline p{margin:0;font-size:.9375rem;font-variant-numeric:tabular-nums}.quiz-topline button{font-size:.875rem}.quiz-shell progress{appearance:none;display:block;width:100%;height:4px;margin:16px 0 32px;border:0;border-radius:4px;background:var(--soft);color:var(--accent)}progress::-webkit-progress-bar{background:var(--soft);border-radius:4px}progress::-webkit-progress-value{background:var(--accent);border-radius:4px}progress::-moz-progress-bar{background:var(--accent)}.question-layout{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center}.question-side{text-align:center;min-width:0}.question-side p{margin:0}.question-side #question-instruction{font-size:1rem;color:var(--muted)}.question-side #question{font-size:clamp(7rem,15vw,11rem);line-height:1.35;margin:12px 0;outline:none}.question-hint,.shortcut-hint{font-size:.875rem;color:var(--muted)}.answer-side{min-width:0}#answers{gap:12px;margin:0;grid-template-columns:1fr 1fr}#answers .answer{position:relative;display:flex;align-items:center;justify-content:center;min-height:98px;background:var(--field);border:1px solid var(--hairline);color:var(--text);border-radius:16px;font-size:2rem}.answer-key{position:absolute;left:12px;top:10px;font-size:.75rem;color:var(--muted)}#answers .is-correct{background:var(--good-bg);border-color:var(--good);color:var(--good)}#answers .is-wrong{background:var(--bad-bg);border-color:var(--bad);color:var(--bad)}.answer-footer{margin-top:22px;align-items:flex-start;flex-direction:column;gap:12px}#feedback{min-height:48px;margin:0;font-size:.9375rem}.shortcut-hint{margin:16px 0 0!important}.practice-note{font-size:.9375rem;color:var(--muted);max-width:70ch}.next-reading{margin-top:64px;padding-top:32px;border-top:1px solid var(--hairline)}.next-reading h2{max-width:28ch;font-size:1.75rem;margin:0 0 16px}.next-reading a{font-weight:500}#quiz-error:empty{display:none}#quiz-results{padding:16px 0}#score{font-size:3rem;font-variant-numeric:tabular-nums;outline:none}#review-list{display:grid;grid-template-columns:1fr 1fr;gap:0 20px;margin:24px 0}#review-list p{padding:12px 0;border-bottom:1px solid var(--hairline);margin:0;display:flex;gap:16px;align-items:center}#review-list .rune{font-size:2rem}.result-actions{justify-content:flex-start;flex-wrap:wrap}.tool textarea,.tool select{background:var(--field);color:var(--text);border-color:var(--muted)}.rune-card{background:transparent}.rune-card button{background:transparent}.rune-card p{color:var(--muted)}
.journal-header{padding-bottom:28px}.journal-header h1{max-width:18ch}.journal-filters{display:flex;flex-wrap:wrap;gap:10px;margin:24px 0 32px}.journal-filters button{background:transparent;border:1px solid var(--hairline);font-size:.9375rem}.journal-filters button[aria-pressed=true]{background:var(--soft);color:var(--text);border-color:var(--accent)}.journal-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px 28px}.story{min-width:0}.story a{color:inherit;text-decoration:none}.story-image{height:190px;background:var(--card);border-radius:16px;display:flex;align-items:center;justify-content:center;overflow:hidden;margin-bottom:18px}.story-image img{width:100%;height:100%;object-fit:contain;outline:1px solid oklch(0 0 0/.1);outline-offset:-1px}.story-image .rune{font-size:4rem;color:var(--accent)}.story h2{font-size:1.5rem;margin:8px 0 12px;letter-spacing:-.025em}.story p{margin:0;color:var(--muted);font-size:1rem}.story .story-meta{font-size:.8125rem;color:var(--accent)}.article-page{max-width:1100px}.article-head{max-width:820px;margin-bottom:40px}.article-head h1{text-wrap:pretty;max-width:23ch;font-size:clamp(2.25rem,4.8vw,3.75rem)}.article-head .article-meta{font-size:.875rem;color:var(--muted)}.article-layout{display:grid;grid-template-columns:minmax(0,720px) 200px;gap:64px;align-items:start}.prose{font-size:1.125rem;line-height:1.8}.prose p{line-height:1.8;margin:0 0 24px}.prose h2{font-size:1.65rem;margin:44px 0 18px;scroll-margin-top:100px}.prose h3{font-size:1.3rem}.prose a{text-underline-offset:3px}.prose ul,.prose ol{padding-left:24px}.prose li{margin:12px 0}.article-toc{position:sticky;top:110px;border-left:1px solid var(--hairline);padding-left:20px;font-size:.875rem}.article-toc a{display:block;color:var(--muted);padding:8px 0;text-decoration:none}.article-toc p{font-weight:600;margin:0 0 8px}.article-figure{margin:28px 0}.article-figure img{max-width:100%;height:auto;border-radius:12px;outline:1px solid oklch(0 0 0/.1);outline-offset:-1px}.article-figure figcaption{font-size:.875rem;line-height:1.6;color:var(--muted);margin-top:12px}.reading-example{padding:24px;background:var(--card);border-radius:18px;margin:28px 0}.reading-example .rune{font-size:clamp(2rem,5vw,3.5rem);overflow-wrap:anywhere;margin:8px 0}.reading-example p{margin:8px 0}.reading-example button{margin-top:10px}.source-list{font-size:1rem}.source-list li{margin-bottom:18px}.source-list small{display:block;color:var(--muted);font-size:.875rem}.article-next{border-top:1px solid var(--hairline);margin-top:48px;padding-top:24px}.journal-policy{margin-top:64px;border-top:1px solid var(--hairline);padding-top:24px;max-width:70ch;color:var(--muted)}
@media(hover:hover){#answers .answer:not(:disabled):hover{background:var(--soft);border-color:var(--accent)}.story a:hover h2{text-decoration:underline;text-underline-offset:5px}.quiet:hover{background:var(--soft)}}
@media(prefers-reduced-motion:no-preference){button:not(:disabled){transition:scale 150ms ease-out}button:not(:disabled):active{scale:.96}}
@media(max-width:800px){.journal-grid{grid-template-columns:1fr 1fr}.article-layout{display:block}.article-toc{display:none}.question-layout{gap:24px}.practice-groups{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.page{padding:36px 20px 64px}.quiz-intro{margin-bottom:28px}.quiz-shell{padding:20px;border-radius:24px}.setup-heading{align-items:flex-start}.setup-runes{display:none}.practice-groups span{padding:16px 12px}.practice-groups small{font-size:1rem}.setup-footer{align-items:stretch;flex-direction:column;gap:16px}.question-layout{grid-template-columns:1fr;gap:24px}.question-side #question{font-size:7rem;line-height:1.15;margin:8px 0}.question-hint,.shortcut-hint{display:none}.quiz-shell progress{margin-bottom:24px}#answers .answer{min-height:76px}.answer-footer{flex-direction:row;align-items:center;gap:16px}#feedback{font-size:1rem;flex:1;min-width:0}.answer-footer button{max-width:140px}.journal-grid{grid-template-columns:1fr;gap:36px}.story-image{height:220px}.story .story-meta,.article-head .article-meta,.article-figure figcaption,.source-list small{font-size:1rem}.article-head{margin-bottom:28px}.prose{font-size:1.0625rem}.result-actions{align-items:stretch;flex-direction:column}.page h1{max-width:22ch}.next-reading{margin-top:44px}}
@media(prefers-color-scheme:dark){.story-image img,.article-figure img{outline-color:oklch(1 0 0/.1)}*{box-shadow:none}}
