:root{--bg:#111827;--surface:#1f2937;--text:#e5e7eb;--text-muted:#bac4d2;--border:#64748b;--track:#34d399;--primary:#facc15;--accent-2:#38bdf8;color-scheme:dark}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font:17px/1.7 Inter,system-ui,sans-serif}a{color:var(--accent-2);text-decoration:none}a:hover{text-decoration:underline}img{max-width:100%;height:auto;display:block}figure{margin:0}figcaption{font-size:.78rem;color:var(--text-muted);padding:12px 0}h1,h2,h3,h4{line-height:1.2;letter-spacing:-.025em}h1{font-size:clamp(2.2rem,5vw,4.2rem);margin:.4em 0}h2,.text-2xl{font-size:1.5rem;font-weight:700}h3{font-size:1.1rem}p{color:var(--text-muted)}strong{color:var(--text)}.wrap{max-width:1140px;padding:0 26px;margin:auto}.nav{position:sticky;top:0;z-index:50;background:var(--bg);border-bottom:1px solid var(--border)}.nav-inner{max-width:1500px;display:flex;align-items:center;gap:18px;flex-wrap:wrap;padding:14px 22px;margin:auto;font-size:.8rem}.brand{font-weight:800;color:var(--primary);font-size:1.1rem}.nav-tracks{display:flex;gap:7px;flex:1;justify-content:flex-end}.track-link{padding:7px;border-radius:6px;color:var(--text-muted)}.track-link.active{color:var(--track);background:var(--surface)}button,.button{display:inline-flex;align-items:center;justify-content:flex-start;gap:8px;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--text);font:600 .86rem/1.4 inherit;padding:11px 16px;cursor:pointer;text-align:left;text-decoration:none}.primary{background:#facc15;border-color:#facc15;color:#111827}.toolbar{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-start;margin:20px 0}.toolbar button{font-family:inherit}.landing-hero{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center;padding:60px 0 42px}.landing-hero h1{font-size:clamp(2.5rem,5.3vw,4.7rem);line-height:1.05;letter-spacing:-.055em}.landing-hero em{font-style:normal;color:var(--primary)}.landing-hero img{border-radius:12px;border:1px solid var(--border)}.eyebrow{font-size:.72rem;font-weight:700;letter-spacing:.14em;color:var(--track)}.lead{font-size:1.15rem;max-width:65ch}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin:28px 0}.stats span{background:var(--surface);padding:16px;border:1px solid var(--border);border-radius:8px;font-size:.85rem}.stats strong{font-size:1.5rem;color:var(--primary)}.cards{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin:28px 0 45px}.card{display:block;border:1px solid var(--border);background:var(--surface);border-radius:12px;padding:28px;color:var(--text)}.card:hover{border-color:var(--track);text-decoration:none}.card h2{color:var(--track)}.card-top{display:flex;justify-content:space-between;font-size:.8rem;color:var(--track)}section{margin:50px 0}.module-hero{padding:35px 0 20px}.breadcrumb{font-size:.83rem;margin-top:30px;color:var(--text-muted)}.diagram{border:1px solid var(--border);border-radius:14px;padding:12px;background:var(--surface);margin:28px 0}.diagram svg{display:block;width:100%;height:auto}.topic{padding:38px 0;border-top:1px solid var(--border);margin:24px 0;scroll-margin-top:145px}.topic-heading{display:flex;align-items:center;gap:16px}.circle{width:36px;height:36px;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;color:var(--track);border:1px solid var(--track);font-weight:700}.inema-prose{margin:24px auto}.example,.tip,.exercise,.summary,.codebox{padding:22px;border-radius:10px;border:1px solid var(--border);background:var(--surface);margin:24px 0}.example{border-left:3px solid var(--track)}.tip{border-left:3px solid var(--primary)}.comparison{display:grid;grid-template-columns:1fr 1fr;gap:22px}.comparison>div{padding:22px;border:1px solid var(--border);border-radius:10px}.yes h3{color:#6ee7b7}.no h3{color:#fda4af}.concepts{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.concepts>div{padding:14px;border:1px solid var(--border);border-radius:8px}.concepts p{margin:8px 0 0;font-size:.82rem}.timeline{list-style:none;padding:0}.timeline li{display:flex;gap:18px;margin:18px 0}.timeline li>div{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:18px;flex:1}.toc{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:24px 24px 24px 45px;background:var(--surface);border:1px solid var(--border);border-radius:10px}.toc li{padding-left:6px}.module-card{padding:28px;border:1px solid var(--border);border-radius:12px;background:var(--surface);scroll-margin-top:145px}.topic-item{border-top:1px solid var(--border)}.accordion{width:100%;border:0;background:transparent;padding:18px 0;gap:14px}.topic-explanation{padding:0 15px 20px}.topic-explanation[hidden]{display:none}.topic-explanation h4{margin-bottom:0}.topic-explanation p{margin-top:8px}.meter{margin:22px 0;font-size:.8rem}.meter>span:nth-child(2){float:right}pre{overflow:auto;white-space:pre;font: .85rem/1.7 ui-monospace,monospace;margin:12px 0;padding:18px;background:var(--bg);border:1px solid var(--border);border-radius:8px}details{border:1px solid var(--border);padding:14px;border-radius:8px}summary{cursor:pointer;font-weight:600}details p{margin-bottom:0}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%}td,th{text-align:left;padding:16px;border-bottom:1px solid var(--border);vertical-align:top}th{color:var(--track)}footer{margin-top:65px;border-top:1px solid var(--border);padding:32px 0;color:var(--text-muted);font-size:.83rem}#appearance{padding:22px;background:var(--surface);border:1px solid var(--border);border-radius:10px}[hidden]{display:none!important}dialog{width:min(1100px,95vw);height:92vh;background:var(--bg);color:var(--text);border:1px solid var(--border);border-radius:12px}dialog::backdrop{background:#050910cc}dialog iframe{width:100%;height:calc(100% - 80px);border:0}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--accent-2);outline-offset:4px}[id]{scroll-margin-top:145px}.skip{position:absolute;top:-100px;left:20px;z-index:100;background:var(--surface);padding:12px}.skip:focus{top:10px}.dark .border-dark-600{border-color:#374151}.dark .divide-dark-600>:not([hidden])~:not([hidden]){border-color:#374151}html:not(.dark):not([data-theme="sepia"]){--bg:#f8fafc;--surface:#fff;--text:#111827;--text-muted:#475569;--border:#64748b;--primary:#854d0e;--accent-2:#0369a1;--track:#047857;color-scheme:light}html:not(.dark) body{background:var(--bg)}html:not(.dark) .text-sky-400{color:#0369a1}html:not(.dark) .brand{color:#854d0e}html:not(.dark) .yes h3{color:#047857}html:not(.dark) .no h3{color:#9f1239}html:not(.dark) .track-card{--track:#334155!important}html:not(.dark) .eyebrow,html:not(.dark) .track-link.active{color:#334155}html:not(.dark) [class*="bg-gradient-to"]{background-image:none!important}html:not(.dark) svg[role="img"]{filter:saturate(.82) brightness(.96)}html:not(.dark) .circle{color:#334155;border-color:#64748b}html[data-theme="sepia"] .track-card{--track:#5f4b32!important}.font-bold{font-weight:700}.mb-6{margin-bottom:24px}.w-full{width:100%}.h-auto{height:auto}.justify-start{justify-content:flex-start}@media(max-width:1000px){.nav-tracks{order:2;flex-basis:100%;justify-content:flex-start;overflow:auto}.nav-inner{gap:12px}.nav-inner button{margin-left:auto}.track-link{white-space:nowrap}.landing-hero{grid-template-columns:1fr}.landing-hero figure{max-width:750px}.concepts{grid-template-columns:1fr 1fr}}@media(max-width:650px){.wrap{padding:0 18px}.cards,.comparison,.toc{grid-template-columns:1fr}.stats{grid-template-columns:1fr 1fr}.module-card{padding:20px}.nav-tracks{font-size:.7rem}.nav-inner{padding:10px 14px}.topic-heading{align-items:flex-start}pre{font-size:.75rem}.concepts{gap:8px}.landing-hero{padding-top:25px}h1{font-size:2.3rem}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}@media print{nav,.toolbar,#appearance{display:none!important}.topic-explanation[hidden]{display:block!important}body{background:#fff;color:#111}p{color:#333}.topic{break-inside:avoid}}

#appearance[data-open="false"]{display:none}#appearance[data-open="true"]{display:block}

html:not(.dark) .landing-hero em,html:not(.dark) .stats strong{color:var(--primary-ink,#854d0e)}html[data-theme="sepia"] .circle{color:#5f4b32}button,.button{border-color:#64748b}button.primary,.button.primary{border-color:#facc15}

/* Long technical filenames and translated concept labels must fit mobile cards. */
main p, .concepts > div { overflow-wrap:anywhere; }
.concepts > div { min-width:0; }
