:root{color-scheme:dark;--bg:#080e18;--panel:#142130;--line:#304458;--ink:#eef4fa;--muted:#aec0d1;--accent:#73ebd3}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.65 system-ui,sans-serif}a{color:var(--accent);text-underline-offset:4px}button,.action{font:inherit;min-height:44px;padding:11px 16px;border:1px solid var(--line);border-radius:12px;background:var(--panel);color:var(--ink);text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:8px}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid var(--accent);outline-offset:3px}button:disabled{opacity:.45}.primary{background:var(--accent);color:var(--bg)}.shell{max-width:1120px;margin:auto;padding:24px}.top{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px;padding-bottom:20px;border-bottom:1px solid var(--line)}.brand{font-size:22px;font-weight:700;text-decoration:none;color:var(--ink)}.brand span{color:var(--accent)}.top nav{display:flex;gap:8px;flex-wrap:wrap}.top a[aria-current=page]{background:#19413f}.tag{font-size:12px;color:var(--accent);letter-spacing:1px}h1{font-size:clamp(28px,4vw,46px);line-height:1.2;letter-spacing:-1px}h2{font-size:21px;line-height:1.4}small,.muted{color:var(--muted)}.hero{padding:38px 0 20px}.hero h1{max-width:750px;margin:14px 0}.hero p{color:var(--muted)}.cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.lesson{padding:24px;background:linear-gradient(140deg,#162838,#111b29);border:1px solid var(--line);border-radius:18px;display:flex;flex-direction:column;gap:12px}.lesson h2,.lesson p{margin:0}.lesson .action{align-self:flex-start;margin-top:auto}.meta{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;font-size:13px;color:var(--muted)}.row{display:flex;gap:12px;flex-wrap:wrap;align-items:center}.note{padding:18px;background:var(--panel);border-radius:12px;margin:20px 0}.journey{display:grid;gap:10px;margin:25px 0}.journey div{padding:16px;border-left:3px solid var(--accent);background:var(--panel)}details{margin-top:16px}summary{min-height:44px;padding:8px 0}footer{margin-top:28px;color:var(--muted);font-size:13px}.module-chrome{max-width:1050px;margin:auto;padding:20px 24px 0}.module-chrome .row{justify-content:space-between}.module-chrome progress{width:100%;height:6px;accent-color:var(--accent)}.source{max-width:760px;margin:12px auto 22px;padding:14px 18px;background:var(--panel);border-radius:12px;font-size:14px}.source p{margin:6px 0}.end-actions{max-width:760px;margin:20px auto 40px;padding:20px;border-top:1px solid var(--line)}[hidden]{display:none!important}dialog{max-width:450px;width:calc(100% - 32px);border:1px solid var(--line);border-radius:16px;padding:24px;background:var(--panel);color:var(--ink)}dialog::backdrop{background:#000a}@media(max-width:600px){.shell{padding:18px}.cards{grid-template-columns:1fr}.lesson{padding:20px}.hero{padding:24px 0 16px}.top nav{width:100%}.top nav a{flex:1;padding:10px}.module-chrome{padding:16px 16px 0}.source,.end-actions{margin-left:16px;margin-right:16px}}
/* Training cards contain stacked prose; do not inherit toolbar flex layout. */
body[data-model]>div button{display:block}body[data-model] .training button{display:block}body[data-model] .module-chrome button{display:inline-flex}
