*{box-sizing:border-box}
:root{color-scheme:dark}
:root{--viewport-width:100vw;--viewport-height:100vh;--viewport-left:0px;--viewport-top:0px;--viewport-bottom:0px}
@supports(height:100dvh){:root{--viewport-height:100dvh}}
html,body{margin:0;width:100%;height:100%;background:#0a090d;color:#eadac5;font-family:system-ui,sans-serif;overflow:hidden}
.brand{width:min(440px,72vw);height:auto;max-height:215px;object-fit:contain;display:block;margin:0 auto}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
#canvas{display:block;position:fixed;left:calc(var(--viewport-left) + env(safe-area-inset-left,0px));top:calc(var(--viewport-top) + env(safe-area-inset-top,0px));width:calc(var(--viewport-width) - env(safe-area-inset-left,0px) - env(safe-area-inset-right,0px));height:calc(var(--viewport-height) - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px));outline:none;touch-action:none}
#cover{position:fixed;left:var(--viewport-left);top:var(--viewport-top);width:var(--viewport-width);height:var(--viewport-height);text-align:center;padding:24px;z-index:5;background:linear-gradient(#09090de8,#130d12ee),url(/deadcode-title.png) center/cover;overflow:auto;overflow-x:hidden;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;touch-action:pan-y;overscroll-behavior:contain}
#cover>div{margin:auto 0;flex-shrink:0;width:100%;min-width:0;max-width:680px}
#cover.hidden{display:none}
.eyebrow{font-size:12px;letter-spacing:.35em;color:#e49352;margin:0 0 12px}
h1{font-family:Georgia,serif;font-weight:500;letter-spacing:.08em;font-size:clamp(32px,6vw,62px);margin:0;color:#efc18b}
p{max-width:640px;line-height:1.6;color:#c7b7a9;margin:12px auto}
.controls{font-size:13px;margin-top:8px}
.test-intro{font-size:14px;color:#f1c893;border-block:1px solid #ba875055;padding:12px 0}
button,.download{font:600 15px system-ui;color:#f5dfbd;background:linear-gradient(#532d1e,#2c1916);border:1px solid #ba8750;border-radius:5px;min-height:48px;padding:12px 25px;cursor:pointer;text-decoration:none;display:inline-block}
button:disabled{opacity:.6}
button:focus-visible,a:focus-visible{outline:2px solid #ffdca5;outline-offset:4px}
.actions{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin:14px 0}
.download{background:#16131a;border-color:#645343}
progress{width:min(420px,80vw);height:12px;accent-color:#e7772f;margin:14px auto}
#status{font-size:14px;margin:6px auto;white-space:pre-line}
#fullscreen-help{max-width:min(480px,calc(var(--viewport-width) - 24px));max-height:calc(var(--viewport-height) - 24px);overflow:auto;background:#141017;color:#eadac5;border:1px solid #ba8750;border-radius:8px;text-align:center}
#fullscreen-help h2{font:600 20px system-ui;color:#efc18b}
#fullscreen-help button{margin:4px}
#fullscreen-help [hidden]{display:none}
#fullscreen-help::backdrop{background:#0009}
#rotate{position:fixed;left:var(--viewport-left);top:var(--viewport-top);width:var(--viewport-width);height:var(--viewport-height);z-index:20;display:flex;align-items:center;justify-content:center;overflow:auto;padding:max(24px,env(safe-area-inset-top,0px)) max(20px,env(safe-area-inset-right,0px)) max(24px,env(safe-area-inset-bottom,0px)) max(20px,env(safe-area-inset-left,0px));background:#100c11;color:#eadac5;text-align:center;touch-action:pan-y;overscroll-behavior:contain;outline:none}
#rotate[hidden]{display:none}
.rotate-card{width:min(440px,100%);margin:auto 0;padding:28px 20px;border:1px solid #ba8750;border-radius:8px;background:linear-gradient(#261921,#141017)}
.rotate-device{font:64px/1 system-ui;color:#efc18b}
#rotate h2{font:600 clamp(20px,5vw,26px)/1.3 system-ui;color:#efc18b;letter-spacing:.06em;margin:22px 0 14px}
#rotate p{font:16px/1.6 system-ui;margin:14px 0}
#rotate .rotate-note{font-size:14px;color:#c7b7a9}
.portrait-blocked #canvas,.portrait-blocked #cover{pointer-events:none}
.portrait-blocked #fullscreen-help{visibility:hidden;pointer-events:none}
.portrait-blocked #fullscreen-help::backdrop{background:transparent;pointer-events:none}
.release-details{color:#e49352}
@media(max-height:450px){#cover{padding:12px}.brand{max-height:80px;width:260px}.eyebrow{margin:0 0 6px;font-size:10px;letter-spacing:.25em}p{margin:6px auto;font-size:12px;line-height:1.4}.actions{margin:8px}.controls{font-size:11px}.test-intro{padding:6px 0;font-size:12px}progress{margin:6px auto}}
@media(max-width:420px){#cover{padding:18px 14px}.eyebrow{font-size:10px;letter-spacing:.2em}.actions{gap:8px}button,.download{padding:12px 17px}}
#cover{padding-top:max(12px,env(safe-area-inset-top));padding-bottom:max(12px,env(safe-area-inset-bottom));padding-left:max(14px,env(safe-area-inset-left));padding-right:max(14px,env(safe-area-inset-right))}
/* Optional test contribution controls remain readable on landscape phones. */
.testing-stats {max-width:640px;margin:16px auto;padding:12px 16px;border:1px solid #675249;border-radius:8px;background:#151019;text-align:left;font-size:14px;line-height:1.5}
.testing-stats summary {cursor:pointer;color:#ead7bc;min-height:32px}
.testing-stats label {display:block;margin:10px 0 5px;color:#e8ddcf}
.testing-stats input[type="checkbox"] {width:20px;height:20px;vertical-align:middle;margin-right:6px;accent-color:#c68555}
.testing-stats input[type="text"],.testing-stats input:not([type]) {box-sizing:border-box;width:100%;min-height:44px;background:#221a24;border:1px solid #746253;border-radius:4px;padding:8px 12px;color:#fff;font:inherit}
.testing-stats p {font-size:13px!important;margin:10px 0!important;color:#c7bbad}
