:root{--bone:#e8e2d0;--ember:#ff6a1f;--pit:#16151a;--stone:#3a3a44;--blood:#8b0000}*{box-sizing:border-box;margin:0;padding:0}html,body{background:var(--pit);height:100%;color:var(--bone);-webkit-font-smoothing:antialiased;font-family:Trebuchet MS,Segoe UI,system-ui,sans-serif;overflow:hidden}#pit{width:100vw;height:100vh;display:block}.mono{letter-spacing:.04em;font-family:SF Mono,ui-monospace,Cascadia Mono,Menlo,monospace}#hud{pointer-events:none;text-shadow:0 2px 6px #000000e6;flex-direction:column;justify-content:space-between;padding:18px 22px;display:flex;position:fixed;inset:0}.hud-row{justify-content:space-between;align-items:center;gap:16px;display:flex}.hearts{letter-spacing:3px;color:var(--blood);font-size:22px}.hearts .empty{color:#40323a}#progress,#weapon{opacity:.82;font-size:14px}.hud-bottom .mono{opacity:.82;gap:18px;font-size:14px;display:flex}#damage-vignette{pointer-events:none;opacity:0;background:radial-gradient(#0000 42%,#8b0000d9 100%);transition:opacity .34s ease-out;position:fixed;inset:0}#damage-vignette.hit{opacity:1;transition:opacity 40ms ease-in}.screen{text-align:center;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:radial-gradient(#16151adb 0%,#0a090cf7 100%);flex-direction:column;justify-content:center;align-items:center;gap:18px;display:flex;position:fixed;inset:0}.screen[hidden]{display:none}h1{letter-spacing:.28em;text-indent:.28em;font-size:clamp(38px,8vw,76px);font-weight:800}h2{letter-spacing:.16em;color:var(--blood);text-shadow:0 0 28px #8b00008c;font-size:clamp(34px,7vw,62px)}h2.cleared{color:var(--ember);text-shadow:0 0 28px #ff6a1f80}.tagline{opacity:.6;letter-spacing:.18em;text-transform:lowercase;font-size:14px}.heroes{gap:12px;margin-top:8px;display:flex}.hero{border:2px solid var(--stone);width:92px;height:92px;color:var(--bone);font:inherit;cursor:pointer;background:#3a3a4459;border-radius:8px;flex-direction:column;justify-content:center;align-items:center;gap:6px;transition:border-color .14s,transform .14s;display:flex}.hero .glyph{font-size:26px}.hero .name{letter-spacing:.1em;font-size:11px}.hero.selected{border-color:var(--ember);transform:translateY(-3px)}.hero.locked{opacity:.32;cursor:not-allowed}.primary{font:inherit;letter-spacing:.12em;color:#120d08;background:var(--ember);cursor:pointer;border:0;border-radius:6px;margin-top:10px;padding:16px 44px;font-size:19px;font-weight:700;transition:transform .11s,box-shadow .11s;box-shadow:0 0 32px #ff6a1f52}.primary:hover{transform:translateY(-2px);box-shadow:0 0 44px #ff6a1f80}.primary:active{transform:translateY(1px)}dl#death-stats{grid-template-columns:auto auto;gap:7px 18px;font-size:15px;display:grid}dl#death-stats dt{opacity:.5;text-align:right;letter-spacing:.06em}dl#death-stats dd{text-align:left;font-weight:700}.hint,.build,.seed{opacity:.38;font-size:12px}.seed{margin-top:-6px}h2.calm{color:var(--bone);text-shadow:none;font-size:clamp(26px,5vw,42px)}.account-bar{position:fixed;top:18px;right:22px}.ghost,.link{color:var(--bone);font:inherit;cursor:pointer;letter-spacing:.06em;background:0 0;border:0}.ghost{border:1px solid var(--stone);opacity:.8;border-radius:6px;padding:7px 14px;font-size:13px;transition:border-color .14s,opacity .14s}.ghost:hover{border-color:var(--ember);opacity:1}.link{color:var(--ember);opacity:.9;font-size:13px;text-decoration:none}.link:hover{text-decoration:underline}form.auth{text-align:left;flex-direction:column;gap:14px;width:min(320px,82vw);display:flex}form.auth label{letter-spacing:.08em;opacity:.7;text-transform:lowercase;flex-direction:column;gap:6px;font-size:12px;display:flex}form.auth input{font:inherit;letter-spacing:.14em;border:2px solid var(--stone);color:var(--bone);background:#3a3a4452;border-radius:6px;outline:none;padding:11px 13px;font-size:18px;transition:border-color .14s}form.auth input:focus{border-color:var(--ember)}.field-status{letter-spacing:.04em;min-height:14px;font-size:11px}.field-status.ok{color:#6fbf73}.field-status.bad{color:var(--blood)}.auth-warn{opacity:.55;color:#d9a441;font-size:11px}.auth-error{min-height:15px;color:var(--blood);font-size:12px;font-weight:700}.auth-links{opacity:.75;font-size:13px}.death-nudge{margin-top:-4px}.account-tag{opacity:.85;font-size:13px}.account-tag .link{opacity:.6;font-size:12px}
