/* Shared by static pages and server templates. No remote fonts or UI runtime. */
:root{--bg:#f5f2e9;--paper:#fffefa;--ink:#193845;--muted:#536770;--brand:#144cb1;--accent:#168581;--line:#d6ded8;--radius:20px;--shadow:0 12px 32px #1938450b;color-scheme:light}
[data-skin=atlas]{--bg:#fff4ec;--paper:#fffcf8;--ink:#402449;--muted:#745777;--brand:#8b3263;--accent:#a44e28;--line:#e3cfdc;--radius:12px}
[data-skin=samarqand]{--bg:#f7f4ed;--paper:#fffefa;--ink:#252f52;--muted:#58627b;--brand:#31458c;--accent:#986a18;--line:#d9d9e2;--radius:6px}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:17px/1.55 system-ui,-apple-system,Segoe UI,sans-serif}a{color:var(--brand);text-underline-offset:4px}button,input,textarea{font:inherit}a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid var(--accent);outline-offset:5px}.wrap{max-width:1120px;margin:auto;padding:0 24px}.top{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:25px 0;border-bottom:1px solid var(--line)}.brand{font-size:24px;font-weight:800;letter-spacing:-1px;text-decoration:none;color:var(--ink)}.brand span{color:var(--brand)}nav{display:flex;gap:20px;align-items:center;flex-wrap:wrap}nav a{font-size:14px;text-decoration:none}.hero{display:grid;grid-template-columns:1.25fr 1fr;gap:65px;align-items:center;padding:74px 0 64px}.eyebrow{font-size:12px;letter-spacing:.14em;text-transform:uppercase;font-weight:750;color:var(--accent)}h1{font-size:clamp(40px,5.1vw,66px);line-height:1.04;letter-spacing:-.045em;margin:20px 0 26px;max-width:760px}h2{font-size:32px;line-height:1.18;letter-spacing:-.035em}h3{line-height:1.25;margin:12px 0}.lead{font-size:19px;color:var(--muted);max-width:600px}.button{display:inline-block;padding:13px 22px;border-radius:9px;border:1px solid var(--brand);background:var(--brand);color:#fff;text-decoration:none;font-weight:650}.secondary{background:transparent;color:var(--brand)}.actions{display:flex;gap:12px;flex-wrap:wrap;margin:28px 0}.note{font-size:13px;color:var(--muted)}.card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:25px;box-shadow:var(--shadow)}.tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.tile{aspect-ratio:1;border-radius:16px;background:var(--brand);display:grid;place-items:center;color:#fff;font-size:40px}.tile:nth-child(2n){background:var(--accent)}.tile:nth-child(3n){background:var(--bg);color:var(--brand);border:1px solid var(--line)}.wall{transform:rotate(-3deg);padding:24px}.wall h3{margin:0 0 20px}.wall .note{margin-top:20px}.section{padding:20px 0 52px}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.tracks{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.tag{display:inline-block;background:var(--bg);padding:4px 10px;border-radius:30px;font-size:12px;color:var(--muted)}.steps{counter-reset:step}.steps .card:before{counter-increment:step;content:'0' counter(step);font-size:12px;color:var(--accent)}footer{padding:30px 0;border-top:1px solid var(--line);font-size:13px;color:var(--muted)}.banner{padding:9px 20px;text-align:center;background:var(--ink);color:var(--paper);font-size:12px}.compact{max-width:700px;margin:60px auto}.skin-nav{display:flex;gap:12px;flex-wrap:wrap}.motif{font-size:20px;color:var(--brand)}[data-layout=editorial] .hero{grid-template-columns:1fr}[data-layout=editorial] .wall{max-width:420px;transform:none}[data-layout=editorial] .grid{grid-template-columns:1fr}.error{color:#a42f34}.list{padding:0;list-style:none}.list li{padding:18px 0;border-bottom:1px solid var(--line)}@media(max-width:760px){.hero{grid-template-columns:1fr;padding:40px 0;gap:25px}.wall{transform:none}.grid,.tracks{grid-template-columns:1fr 1fr}.top{align-items:flex-start}.top nav{gap:12px}.wrap{padding:0 20px}h1{font-size:43px}.lead{font-size:17px}}@media(max-width:400px){.grid,.tracks{grid-template-columns:1fr}.top nav{max-width:180px;justify-content:flex-end}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
/* Shared learning and authoring components. No framework or webfonts. */
.app-nav,.filters{display:flex;gap:1rem;flex-wrap:wrap;align-items:center;padding:1rem 0;border-bottom:1px solid var(--line,#ddd)}.language{margin-left:auto}.reading{max-width:760px;margin:3rem auto}.reading h1{font-size:clamp(2rem,5vw,3.4rem)}.prose{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.8}.reading video{width:100%;max-height:65vh;border-radius:16px;background:#161616;margin:1rem 0}.card form{margin:1rem 0}form label{display:block;margin:.8rem 0;font-weight:600}input,textarea,select{font:inherit;display:block;width:100%;max-width:100%;border:1px solid #a9afad;border-radius:9px;background:#fff;color:#152c2e;padding:.7rem;margin-top:.35rem;box-sizing:border-box}textarea{resize:vertical}button{font:inherit;cursor:pointer}fieldset{border:1px solid #a9afad;border-radius:12px;margin:1rem 0;padding:1rem}legend{font-weight:700;padding:0 .5rem}.choice{font-weight:400;display:flex;gap:.6rem;align-items:baseline}.choice input{display:inline;width:auto;flex-shrink:0}.notice{padding:1rem;border:1px solid #438874;border-radius:12px}.curriculum{margin:2rem 0}.lesson-row{display:flex;justify-content:space-between;align-items:center;gap:1rem;border-bottom:1px solid #bdc9c3;padding:1rem 0}.lesson-row h3{margin:.5rem 0}.lesson-row .button{flex-shrink:0}progress{width:100%;height:12px;margin:0 0 1rem;accent-color:var(--accent,#174bb1)}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;text-align:left}td,th{padding:1rem;border-bottom:1px solid #ccd2cc;vertical-align:top}small{display:block;font-size:.75rem;overflow-wrap:anywhere}details{margin:1.5rem 0}summary{cursor:pointer;font-weight:700;padding:.5rem 0}.grid{margin-top:1.4rem}.achievements{display:flex;gap:.7rem;flex-wrap:wrap;margin:1rem 0}.tile-mini{font-size:2rem;color:var(--accent,#174bb1)}.editor-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.editor-module,.editor-lesson{border:1px solid #b8c9c2;border-radius:14px;padding:1rem;margin:1rem 0}.editor-lesson{background:#ffffff77}.editor-toolbar{display:flex;gap:.6rem;flex-wrap:wrap}.editor-toolbar button{padding:.5rem;border:1px solid #adbbb2;border-radius:7px;background:#fff}#scenario-json{font-family:ui-monospace,monospace;font-size:.85rem}.card p a{overflow-wrap:anywhere}.button{white-space:normal}.section h1{font-size:clamp(2.4rem,6vw,4.5rem)}@media(max-width:600px){.editor-grid{grid-template-columns:1fr}.lesson-row{align-items:flex-start;flex-direction:column}.app-nav{font-size:.88rem;gap:.7rem}td,th{padding:.6rem}.card{min-width:0}.reading{margin:2rem auto}}
