:root{--bg:#ecf0e4;--ink:#263d31;--accent:#557849}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.65 system-ui,sans-serif}a{color:inherit}button,a,input{touch-action:manipulation}button{font:inherit;cursor:pointer}header,main,footer{max-width:1160px;margin:auto;padding:24px}header{display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid color-mix(in srgb,var(--ink) 16%,transparent)}.brand{font-weight:800;letter-spacing:-.04em;font-size:24px;text-decoration:none}nav{display:flex;gap:20px;font-size:14px}nav a{text-decoration:none}h1{font-size:clamp(44px,8vw,96px);line-height:1.05;letter-spacing:-.065em;margin:35px 0 24px;max-width:950px}h2{font-size:26px;letter-spacing:-.025em;margin-top:0}.eyebrow{text-transform:uppercase;letter-spacing:.22em;font-size:12px;color:var(--accent)}.intro{font-size:20px;max-width:650px;opacity:.75}.hero{padding:45px 0 50px}.scene{height:140px;overflow:hidden;border-radius:28px;background:linear-gradient(135deg,var(--accent),var(--ink));display:flex;align-items:flex-end;justify-content:space-evenly;padding:0 24px;gap:12px}.scene i{width:9%;height:50%;display:block;background:var(--bg);opacity:.18;border-radius:16px 16px 0 0}.scene i:nth-child(2n){height:75%}.scene i:nth-child(3n){height:90%}.layout{display:grid;grid-template-columns:1.2fr 1fr;gap:24px;margin:32px 0}.card{padding:28px;border:1px solid color-mix(in srgb,var(--ink) 15%,transparent);border-radius:26px}.grid{display:grid;gap:9px;margin:20px 0;grid-template-columns:repeat(4,1fr);max-width:420px}.grid button{border:0;background:color-mix(in srgb,var(--ink) 9%,var(--bg));color:var(--ink);border-radius:15px;aspect-ratio:1;font-size:25px;font-weight:700}.grid button.on,.grid button.done{background:var(--accent);color:var(--bg)}.grid button:disabled{cursor:default}.control{border:1px solid var(--accent);border-radius:30px;padding:9px 20px;background:var(--accent);color:var(--bg)}button:focus-visible,a:focus-visible{outline:3px solid var(--accent);outline-offset:4px}.hint{font-size:14px;opacity:.72}#status{min-height:30px}.reaction{width:100%;min-height:160px;border:0;border-radius:22px;background:color-mix(in srgb,var(--ink) 8%,var(--bg));color:var(--ink);font-size:23px}.reaction.ready{background:var(--accent);color:var(--bg)}.tags{display:flex;gap:8px;flex-wrap:wrap}.tags span{border:1px solid color-mix(in srgb,var(--ink) 15%,transparent);border-radius:30px;padding:5px 12px;font-size:13px}footer{font-size:13px;opacity:.65;border-top:1px solid color-mix(in srgb,var(--ink) 15%,transparent);display:flex;justify-content:space-between;gap:20px;margin-top:40px}@media(max-width:700px){header,main,footer{padding:20px}.layout{grid-template-columns:1fr}.hero{padding-top:20px}.card{padding:22px}nav{gap:10px;font-size:12px}.brand{font-size:20px}}@media(prefers-reduced-motion:no-preference){button{transition:background .18s,transform .18s}button:active{transform:scale(.96)}}body[data-theme=baltic] .intro-grid{display:grid;grid-template-columns:3fr 1fr;gap:40px}body[data-theme=baltic] .cover-stat{align-self:center;border-left:1px solid var(--accent);padding-left:30px;font-size:65px;font-family:Georgia,serif}body[data-theme=baltic] .cover-stat small{display:block;font:14px system-ui}body[data-theme=nordic]{background:radial-gradient(ellipse at top,#2f395b 0,var(--bg) 65%)}body[data-theme=nordic] .hero{text-align:center}body[data-theme=nordic] h1{margin-left:auto;margin-right:auto;font-family:Georgia,serif;letter-spacing:-.035em}body[data-theme=nordic] .intro{margin:auto}body[data-theme=nordic] .card{background:#ffffff05;border-color:#ffffff20}body[data-theme=nordic] .fullgame{max-width:760px;margin:auto}body[data-theme=nordic] .notes{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin:30px 0}body[data-theme=arcade]{font-family:ui-monospace,monospace;background-image:radial-gradient(#c74b291f 1px,transparent 1px);background-size:18px 18px}body[data-theme=arcade] h1{text-transform:uppercase;font-size:clamp(40px,6vw,78px)}body[data-theme=arcade] .card{border:2px solid var(--ink);border-radius:0;box-shadow:8px 8px 0 var(--ink);background:var(--bg)}body[data-theme=arcade] .control,body[data-theme=arcade] .grid button{border-radius:0}body[data-theme=arcade] .layout{align-items:start}body[data-theme=garden] h1,body[data-theme=paper] h1{font-family:Georgia,serif;font-weight:400;letter-spacing:-.045em}body[data-theme=garden] .hero{max-width:850px;margin:auto;text-align:center}body[data-theme=garden] .intro{margin:auto}body[data-theme=garden] .orb{width:160px;height:160px;border-radius:50%;background:radial-gradient(circle at 30% 30%,#b2c99d,var(--accent));margin:40px auto 0;box-shadow:0 0 0 18px #5578490c,0 0 0 38px #55784908}body[data-theme=garden] .card{border-radius:40px}body[data-theme=paper]{background-image:repeating-linear-gradient(0deg,transparent 0 31px,#342e2409 31px 32px)}body[data-theme=paper] main{max-width:940px}body[data-theme=paper] .paper-sheet{background:#fffaf1;border:1px solid #d9c8a6;box-shadow:14px 14px 0 #dfc9a84d;padding:40px;margin-top:35px}body[data-theme=paper] .grid{margin:auto}body[data-theme=paper] .card{border-radius:0}body[data-theme=orbit]{background-image:radial-gradient(#ffffff50 1px,transparent 1px);background-size:44px 44px}body[data-theme=orbit] .orbit-art{height:240px;border:1px solid #bfabff44;border-radius:50%;display:grid;place-items:center;font-size:90px;color:var(--accent);transform:rotate(-15deg);margin:35px}body[data-theme=orbit] .layout{grid-template-columns:1fr 1.4fr;align-items:center}body[data-theme=orbit] .card{background:#1c1c37}body[data-theme=mosaic] .hero{padding:35px;border-radius:10px;background:linear-gradient(110deg,#e4d5fb,#f2dfed)}body[data-theme=mosaic] .grid button:nth-child(3n){background:#d8b7e7}body[data-theme=mosaic] .grid button:nth-child(3n+1){background:#b7c5ec}body[data-theme=mosaic] .grid button:nth-child(3n+2){background:#ead0a8}body[data-theme=mosaic] .card{border-radius:10px;border:0;background:#fff}body[data-theme=tide]{background:linear-gradient(170deg,#eefafa,#d4edf0 70%,#b3d5df)}body[data-theme=tide] .hero{text-align:center}body[data-theme=tide] h1{margin-left:auto;margin-right:auto}body[data-theme=tide] .intro{margin:auto}body[data-theme=tide] .card{border:0;background:#ffffff88;border-radius:50px}body[data-theme=signal]{font-family:ui-monospace,monospace;background-image:linear-gradient(#57c99508 1px,transparent 1px),linear-gradient(90deg,#57c99508 1px,transparent 1px);background-size:30px 30px}body[data-theme=signal] h1{font-size:clamp(38px,6vw,74px);text-transform:uppercase}body[data-theme=signal] .card{border:1px dashed var(--accent);border-radius:0}body[data-theme=signal] header{border-color:var(--accent)}body[data-theme=signal] .reaction{border-radius:0}.breathing{height:240px;display:grid;place-items:center}.breathing span{width:125px;height:125px;border-radius:50%;display:grid;place-items:center;background:var(--accent);color:var(--bg);animation:breathe 12s infinite ease-in-out}@keyframes breathe{0%,100%{transform:scale(.75)}33%,50%{transform:scale(1.25)}}.quiz-question{font-size:50px;text-align:center}.quiz-answers{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.quiz-answers button{padding:14px;border:1px solid var(--accent);border-radius:12px;background:var(--bg);color:var(--ink);font-size:24px}@media(prefers-reduced-motion:reduce){.breathing span{animation:none}}@media(max-width:700px){body[data-theme=baltic] .intro-grid,body[data-theme=orbit] .layout,body[data-theme=nordic] .notes{grid-template-columns:1fr}body[data-theme=baltic] .cover-stat{display:none}body[data-theme=paper] .paper-sheet{padding:22px}body[data-theme=orbit] .orbit-art{height:160px;margin:15px}}