@font-face{font-family:Grenze Gotisch;src:url(/play/fonts/GrenzeGotisch-variable.woff2)format("woff2");font-weight:400 900;font-display:swap}@font-face{font-family:Cormorant Garamond;src:url(/play/fonts/CormorantGaramond-variable.woff2)format("woff2");font-weight:300 700;font-display:swap}@font-face{font-family:Cormorant Garamond;src:url(/play/fonts/CormorantGaramond-italic-variable.woff2)format("woff2");font-weight:300 700;font-style:italic;font-display:swap}:root{--bg:#07060a;--bg-2:#0e0c12;--ink:#ddd5c4;--bone:#e6dfd0;--muted:#8f877a;--blood:#7d1414;--blood-deep:#4e0a0a;--blood-bright:#b3261e;--iron:#2e3038;--silver:#b4b1aa;--line:#ddd5c429;--line-strong:#ddd5c452;--panel:#08070bc7;--display:"Grenze Gotisch", "UnifrakturMaguntia", Georgia, serif;--text:"Cormorant Garamond", Garamond, Georgia, serif;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body{background:var(--bg);height:100%;color:var(--ink);font-family:var(--text);-webkit-tap-highlight-color:transparent;overscroll-behavior:none;margin:0;font-size:19px;font-weight:500;overflow:hidden}#game,#game canvas{touch-action:none;display:block;position:fixed;inset:0}#ui{pointer-events:none;position:fixed;inset:0}#ui button,#ui input,#ui .start,#ui .overlay.closed{pointer-events:auto}button{font:inherit;cursor:pointer}.panel{background:var(--panel);border:1px solid var(--line);border-radius:2px;box-shadow:inset 0 0 0 1px #0009,0 6px 20px #00000080}.primary,.secondary{font-family:var(--text);letter-spacing:.22em;text-transform:uppercase;border-radius:2px;padding:.62em 1.6em .7em;font-size:1.05rem;font-weight:700;transition:background .16s,border-color .16s,color .16s}.primary{color:var(--bone);background:linear-gradient(#8a1717,#560c0c);border:1px solid #b4473f;box-shadow:inset 0 1px #ffc8be2e,0 8px 26px #0009}.primary:hover,.primary:focus-visible{background:linear-gradient(#a01d1d,#650e0e);outline:none}.primary:disabled{filter:grayscale(.7)brightness(.8);cursor:progress}.secondary{color:var(--ink);border:1px solid var(--line-strong);background:0 0}.secondary:hover,.secondary:focus-visible{border-color:var(--bone);outline:none}.link{color:var(--silver);text-decoration:underline;-webkit-text-decoration-color:var(--line-strong);text-decoration-color:var(--line-strong);text-underline-offset:4px;background:0 0;border:none;padding:0}.link:hover{color:var(--bone)}.rule{color:var(--muted);align-items:center;gap:10px;display:flex}.rule:before,.rule:after{content:"";background:linear-gradient(90deg, transparent, var(--line-strong), transparent);flex:1;height:1px}.start{background:radial-gradient(circle at 72% 18%, #c8cede24, transparent 9%), radial-gradient(ellipse at 50% 110%, #7d141447, transparent 55%), radial-gradient(ellipse at 50% 40%, #15131c, var(--bg) 70%);place-items:center;padding:16px;display:grid;position:fixed;inset:0}.start-card{text-align:center;flex-direction:column;gap:14px;width:min(430px,100%);display:flex}.brand{font-family:var(--display);letter-spacing:.02em;color:var(--bone);text-shadow:0 0 2px #000000e6,0 3px #2a0606,0 0 36px #b3261e59;margin:0;font-size:clamp(3.4rem,15vw,5.6rem);font-weight:700;line-height:1}.tagline{color:var(--muted);margin:-2px 0 8px;font-size:1.15rem;font-style:italic}.build-tag{color:var(--bone);letter-spacing:.06em;background:#4e0a0a59;border:1px solid #b3261e8c;border-radius:2px;align-self:center;margin:-6px 0 4px;padding:.2em .9em;font-size:.95rem}.start-form{text-align:left;flex-direction:column;gap:10px;display:flex}.start-form label{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:.95rem}.start-form input{font:inherit;border:1px solid var(--line-strong);color:var(--bone);background:#00000080;border-radius:2px;padding:.55em .8em;font-size:1.1rem}.start-form input::placeholder{color:#6b655c;font-style:italic}.start-form input:focus{outline:1px solid var(--blood-bright);outline-offset:1px}.error{color:#e0675d;margin:0}.note{color:var(--muted);margin:8px 0 0;font-size:.9rem;font-style:italic}.other-builds{color:var(--silver);border-bottom:1px solid var(--line-strong);align-self:center;font-size:.95rem;text-decoration:none}.other-builds:hover,.other-builds:focus-visible{color:var(--bone);border-bottom-color:var(--blood-bright)}.loading{font-family:var(--display);color:var(--bone);letter-spacing:.04em;place-items:center;font-size:2rem;animation:1.6s ease-in-out infinite breathe;display:grid;position:fixed;inset:0}@keyframes breathe{50%{opacity:.45}}.hud-life{top:max(14px, env(safe-area-inset-top));left:max(16px, env(safe-area-inset-left));width:min(320px,52vw);position:absolute}.hud-name{font-family:var(--text);letter-spacing:.18em;text-transform:uppercase;color:var(--bone);text-shadow:0 1px 3px #000;white-space:nowrap;text-overflow:ellipsis;margin-bottom:5px;font-size:1rem;font-weight:700;overflow:hidden}.bar{background:#000000bf;border:1px solid #ddd5c447;height:9px;position:relative;box-shadow:0 0 0 1px #000c,0 2px 10px #0009}.bar .trail,.bar .fill{position:absolute;inset:0 auto 0 0}.bar .trail{opacity:.55;background:#d8b9a0;transition:width .52s .38s}.bar .fill{background:linear-gradient(#c22a22,#7a1010);transition:width 90ms linear}.hud-numbers{color:var(--muted);letter-spacing:.08em;margin-top:3px;font-size:.82rem}.hud-top-right{top:max(12px, env(safe-area-inset-top));right:max(14px, env(safe-area-inset-right));align-items:baseline;gap:14px;padding:4px 12px 6px;font-size:.95rem;display:flex;position:absolute}.muted{color:var(--muted)}.hud-dash{left:50%;bottom:max(20px, env(safe-area-inset-bottom));border:1px solid var(--line-strong);background:conic-gradient(#ddd5c447 calc(var(--ready,1) * 360deg), #0009 0);border-radius:50%;place-items:center;width:54px;height:54px;display:grid;position:absolute;transform:translate(-50%);box-shadow:0 0 0 3px #0000008c}.hud-dash svg{width:52%;height:52%;fill:var(--silver)}.hud-dash.ready{border-color:var(--bone);box-shadow:0 0 0 3px #0000008c,0 0 16px #ddd5c440}.hud-dash.ready svg{fill:var(--bone)}.hud-hint{left:50%;bottom:calc(max(20px, env(safe-area-inset-bottom)) + 66px);color:var(--muted);white-space:nowrap;padding:3px 14px 5px;font-size:.95rem;font-style:italic;position:absolute;transform:translate(-50%)}.hurt-pulse{background:radial-gradient(#0000 55%,#8c0a0a8c 100%);animation:.42s ease-out forwards hurt;position:absolute;inset:0}@keyframes hurt{0%{opacity:1}to{opacity:0}}.overlay{text-align:center;place-content:center;gap:12px;display:grid;position:absolute;inset:0}.overlay.death{pointer-events:none;background:#03020559;animation:.9s ease-out both fade-in}.death-band{background:linear-gradient(90deg,#0000,#000000d1 18% 82%,#0000);width:100vw;padding:26px 0 30px}.death-band h2{font-family:var(--text);letter-spacing:.32em;text-transform:uppercase;color:#a31c18;text-shadow:0 0 24px #a31c1873;margin:0;font-size:clamp(2.6rem,10vw,5rem);font-weight:500;animation:1.8s ease-out both rise}.death-band p{color:var(--muted);margin:8px 0 0;font-style:italic;animation:1.2s ease-out .7s both fade-in}@keyframes fade-in{0%{opacity:0}}@keyframes rise{0%{opacity:0;letter-spacing:.45em}}.overlay.closed{background:#030205bf}.banner{top:max(70px, env(safe-area-inset-top));background:var(--panel);border:1px solid var(--line);border-radius:2px;padding:4px 16px 6px;font-style:italic;position:absolute;left:50%;transform:translate(-50%)}.debug{color:var(--silver);background:#000000b3;border-radius:2px;margin:0;padding:8px;font:12px/1.35 ui-monospace,monospace;position:absolute;bottom:12px;left:12px}.touch .stick{border:1px solid var(--line-strong);background:#0000004d;border-radius:50%;place-items:center;display:grid;position:absolute;transform:translate(-50%,-50%)}.touch .knob{background:#ddd5c459;border:1px solid #ddd5c480;border-radius:50%;width:44%;height:44%}.touch-button{border:1px solid var(--line-strong);color:var(--bone);touch-action:none;-webkit-user-select:none;user-select:none;background:#060509b8;border-radius:50%;place-items:center;display:grid;position:absolute;box-shadow:0 0 0 3px #00000080}.touch-button svg{fill:currentColor;width:46%;height:46%}.touch-button:active{background:#7d141499}.touch-button.dash{background:conic-gradient(#ddd5c442 calc(var(--ready,1) * 360deg), #060509b8 0)}.touch-button.dash.ready{border-color:var(--bone)}.touch-button.attack{right:max(20px, env(safe-area-inset-right));bottom:max(28px, env(safe-area-inset-bottom));width:96px;height:96px}.touch-button.dash{right:calc(max(20px, env(safe-area-inset-right)) + 104px);bottom:max(20px, env(safe-area-inset-bottom));width:68px;height:68px}@media (pointer:coarse){.hud-dash{display:none}}
