:root{color-scheme:dark;--paper:#f6f5ef;--ink:#e5ebe7;--muted:#9bb1ac;--line:#314a46;--accent:#c4eea0}*{box-sizing:border-box}body{margin:0;background:#0e211f;color:var(--ink);font:15px/1.6 system-ui,sans-serif}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}button:disabled{opacity:.45;cursor:default}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,canvas:focus-visible{outline:3px solid #eddb99;outline-offset:4px}h1,h2,p{margin:0}.wrap{max-width:1280px;margin:auto;padding:0 40px}.nav{height:86px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:15px}.brand{font-size:19px;font-weight:750;letter-spacing:-.6px}.brand span{color:#94b5a8}.nav-links{display:flex;gap:24px;font-size:13px}.intro{display:flex;justify-content:space-between;align-items:end;gap:36px;padding:38px 0 25px}.eyebrow{font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--accent);font-weight:700}h1{font-size:clamp(32px,4vw,50px);line-height:1.15;letter-spacing:-.04em;margin:10px 0}.intro p:not(.eyebrow){color:#b6c9c0;max-width:680px}.edition{font-family:Georgia,serif;font-size:54px;color:#6d9181;line-height:1}.game-shell{background:#132b28;border:1px solid #3a514c;border-radius:12px;overflow:hidden;box-shadow:0 20px 60px #0003}.toolbar{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:14px 22px}.metrics{display:flex;gap:28px}.metric span{display:block;font-size:9px;text-transform:uppercase;letter-spacing:.1em;color:#a6beb3}.metric strong{font-size:18px;font-weight:550}.tools{display:flex;gap:6px}.tools button,.control-btn{background:#203d36;border:1px solid #466354;border-radius:5px;color:#e5eee7;padding:8px 13px;font-size:12px;min-height:40px}.tools button:hover,.control-btn:hover{background:#355445}.stage{position:relative;max-width:960px;margin:auto;background:#142b30;aspect-ratio:8/5}canvas{width:100%;height:100%;display:block;touch-action:none}.overlay{position:absolute;inset:0;background:#071715bb;backdrop-filter:blur(5px);display:flex;align-items:center;justify-content:center;text-align:center;padding:20px;z-index:5}.overlay-card{max-width:480px}.overlay .eyebrow{color:#d0e7ab}.overlay h2{font-size:clamp(24px,4vw,40px);line-height:1.13;letter-spacing:-.04em;margin:13px 0}.overlay p:not(.eyebrow){color:#d4e2d8;max-width:410px;margin:0 auto 22px;font-size:14px}.play{border:0;background:var(--accent);color:#173326;border-radius:5px;padding:13px 25px;font-size:14px;font-weight:700;min-height:46px}.next{display:block;margin-top:18px;text-decoration:underline;font-size:13px}.touch-controls{display:flex;gap:8px;align-items:center;justify-content:center;flex-wrap:wrap;padding:13px}.control-btn{min-width:48px;user-select:none;touch-action:none}.status{font-size:12px;color:#b5cdbd;min-height:32px;text-align:center;padding:0 15px 12px}.details{display:grid;grid-template-columns:1.1fr 1fr 1fr;gap:38px;padding:35px 0 60px}.details h2{font-size:14px;font-weight:650;margin-bottom:8px}.details p{font-size:13px;color:#a9bfb3}.details .small{font-size:12px;margin-top:9px;color:#8ca99a}footer{border-top:1px solid var(--line);padding:22px 0 28px;display:flex;justify-content:space-between;gap:15px;font-size:12px;color:#9ab6a6}.board-controls{position:absolute;inset:0;pointer-events:none}.board-controls button{position:absolute;pointer-events:auto;background:transparent;border:0;border-radius:10px;color:transparent;font-size:0;touch-action:manipulation}.board-controls button:focus-visible{outline:3px solid white;outline-offset:1px;background:#ffffff22}.skip{position:absolute;left:10px;top:-60px;background:white;color:#123;padding:10px;z-index:10}.skip:focus{top:5px}[hidden]{display:none!important}.game-shell:fullscreen{display:flex;flex-direction:column;justify-content:center;border:0;border-radius:0}.game-shell:fullscreen .stage{width:min(100%,calc((100vh - 180px)*1.6));flex-shrink:0}.game-shell:fullscreen .toolbar{max-width:1100px;width:100%;margin:0 auto}@media(max-width:700px){.wrap{padding:0 16px}.nav{height:70px}.nav-links{gap:14px;font-size:12px}.nav-links a:last-child{display:none}.intro{padding-top:26px}.edition{display:none}.toolbar{flex-wrap:wrap;padding:12px;gap:12px}.metrics{gap:20px;width:100%;justify-content:space-between}.metric strong{font-size:16px}.tools{width:100%;justify-content:space-between}.tools button{flex:1;padding:6px;font-size:11px}.details{grid-template-columns:1fr;gap:18px;padding:28px 0 35px}.overlay{padding:10px}.overlay h2{margin:5px 0;font-size:24px}.overlay p:not(.eyebrow){font-size:11px;margin-bottom:10px;max-width:300px;line-height:1.4}.overlay .eyebrow{font-size:8px}.play{padding:9px 18px;min-height:40px;font-size:12px}.next{font-size:11px;margin-top:8px}.touch-controls{gap:6px;padding:10px}.control-btn{padding:6px 10px;min-height:44px}.intro p:not(.eyebrow){font-size:14px}.status{font-size:11px}.stage{aspect-ratio:8/5}footer{font-size:11px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}

@media(max-width:650px){.puzzle-stage{aspect-ratio:4/5;overflow:hidden}.puzzle-stage canvas{width:200%;max-width:none;margin-left:-50%}.puzzle-stage .board-controls{left:-50%;width:200%;right:auto}.puzzle-stage .overlay p:not(.eyebrow){font-size:14px;line-height:1.6}.puzzle-stage .overlay h2{font-size:32px}}

@media(max-width:650px){.board-controls button[data-pad]{min-width:44px;min-height:44px;transform:translate(-5px,-5px)}}
