:root{color-scheme:dark;--bg:#0d1424;--panel:#151f33;--panel2:#1c2940;--line:#2c3850;--muted:#a5b3c9;--text:#edf2fa;--gold:#ffce72;--blue:#87b9ff;--green:#62e4c0;--danger:#ff9b8a}
*{box-sizing:border-box}
body{margin:0;background:radial-gradient(circle at 50% -15%,#1b2a48 0,transparent 42%),var(--bg);color:var(--text);font:16px/1.5 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;min-height:100vh}
a{color:var(--blue);text-decoration:none}a:hover{text-decoration:underline}
.site-bar{max-width:960px;margin:auto;padding:18px 24px;display:flex;justify-content:space-between;border-bottom:1px solid var(--line);font-size:14px;font-weight:700}
main{max-width:960px;margin:auto;padding:30px 24px 56px}.intro{text-align:center;margin-bottom:24px}.eyebrow,.label{color:var(--gold);font-size:12px;font-weight:800;letter-spacing:.14em;margin:0}.intro h1{font:600 clamp(36px,7vw,62px)/1.05 Georgia,serif;margin:8px 0}.edition{color:var(--muted);margin:0}
.game-shell{background:rgba(21,31,51,.94);border:1px solid var(--line);border-radius:18px;padding:clamp(18px,4vw,32px);box-shadow:0 20px 50px #05091466}.game-topline{display:flex;gap:20px;justify-content:space-between;align-items:flex-start}.game-topline h2{font:600 24px/1.2 Georgia,serif;margin:0 0 6px}.game-topline p{color:var(--muted);margin:0}.score{display:flex;align-items:baseline;gap:6px;white-space:nowrap;background:var(--panel2);border:1px solid var(--line);border-radius:12px;padding:8px 14px}.score strong{font-size:24px;color:var(--green)}.score span{color:var(--muted);font-size:13px}
.play-area{display:grid;grid-template-columns:minmax(180px,260px) 1fr;gap:clamp(18px,5vw,52px);align-items:center;margin:22px 0}.gallows{width:100%;max-height:250px}.stand,.part{fill:none;stroke:var(--muted);stroke-width:7;stroke-linecap:round;stroke-linejoin:round}.part{stroke:var(--danger);opacity:.07;transition:opacity .2s}.part.visible{opacity:1}.puzzle{text-align:center}.clue{font:500 clamp(17px,3vw,22px)/1.4 Georgia,serif;color:var(--text);margin:8px auto 22px;max-width:560px}.answer{display:flex;justify-content:center;flex-wrap:wrap;gap:7px;margin:0 auto 16px}.answer span{display:grid;place-items:center;width:clamp(24px,5vw,38px);height:46px;border-bottom:3px solid var(--blue);font:800 clamp(20px,4vw,30px)/1 system-ui}.status{min-height:24px;color:var(--gold);font-weight:800;margin:8px 0}.source-link{display:inline-block;font-weight:700;margin-top:2px}
.keyboard{display:grid;grid-template-columns:repeat(13,1fr);gap:6px;max-width:820px;margin:12px auto}.key{aspect-ratio:1;min-width:0;padding:0;border:1px solid #40577a;border-radius:8px;background:#263c5e;color:var(--text);font:800 clamp(11px,2vw,16px)/1 system-ui;cursor:pointer}.key:hover:not(:disabled),.key:focus-visible{background:#34527f;outline:2px solid var(--gold);outline-offset:1px}.key:disabled{opacity:.28;cursor:default}.key.hit{background:#1f574f;border-color:var(--green)}.key.miss{background:#4a2730;border-color:var(--danger)}
.actions{display:flex;justify-content:center;flex-wrap:wrap;gap:10px;margin-top:20px}.actions button{appearance:none;background:#263c5e;color:var(--text);border:1px solid #40577a;border-radius:10px;padding:11px 17px;font:700 14px/1 system-ui;cursor:pointer}.actions button:hover{background:#34527f}.actions button:focus-visible{outline:2px solid var(--gold);outline-offset:2px}.actions button.quiet{background:transparent;color:var(--muted)}
footer{max-width:960px;margin:auto;padding:22px 24px 34px;border-top:1px solid var(--line);color:var(--muted);font-size:13px;text-align:center}
@media(max-width:680px){main{padding:22px 12px 40px}.site-bar{padding:15px 16px}.game-topline{display:block}.score{width:max-content;margin-top:14px}.play-area{grid-template-columns:1fr}.gallows{max-height:190px}.keyboard{grid-template-columns:repeat(7,1fr);gap:5px}.key{aspect-ratio:1.15}.game-shell{padding:17px 12px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
