:root{color:#fff3d7;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;font-synthesis:none;--ink:#fff3d7;--muted:#bfb8bf;--gold:#ffcf4f;--accent:#ff8b36;--panel:#15152e;--panel-raised:#22223e;--edge:#5f5872;background:#161017;font-family:Courier New,ui-monospace,monospace}*{box-sizing:border-box}html,body{width:100%;height:100%;margin:0}body{background:#211813;justify-content:center;align-items:center;display:flex;overflow:hidden}button,input{font:inherit}button{cursor:pointer}button:disabled{cursor:default;opacity:.6}button:focus-visible,input:focus-visible{outline-offset:4px;outline:3px solid #fff2b2}::selection{color:#171125;background:var(--gold)}.sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.game-home{pointer-events:auto;border-radius:8px;display:inline-block}.game-home img{width:64px;height:64px;image-rendering:pixelated;display:block}.game-home:focus-visible,.menu-return:focus-visible{outline:3px solid var(--gold);outline-offset:4px}.menu-return{color:#ffcf4f;text-underline-offset:4px;width:fit-content;margin:18px auto 0;padding:8px;font-size:13px;display:block}[hidden]{display:none!important}#stage{aspect-ratio:16/9;isolation:isolate;width:min(100vw,177.778dvh);position:relative}#game,.hud{position:absolute;inset:0}#game{width:100%;height:100%}canvas{image-rendering:pixelated;display:block}.hud{pointer-events:none;flex-direction:column;justify-content:space-between;padding:20px;display:flex}.hud-top{grid-template-columns:1fr auto 1fr;align-items:start;gap:20px;display:grid}.wordmark h1{color:var(--gold);letter-spacing:-.035em;text-shadow:2px 2px #432b17;margin:0;font-size:clamp(20px,2.1vw,30px);font-weight:900;line-height:1}.brand-period{color:var(--accent)}.wordmark p{color:#ffe3b8;text-shadow:1px 1px #24170f;margin:7px 0 0;font-size:12px}.run-clock{border:2px solid var(--edge);background:var(--panel);border-radius:10px;justify-items:center;gap:6px;padding:8px 18px;display:grid}#run-timer{font-size:clamp(24px,2.7vw,36px);font-weight:700;line-height:1}#wave-value{color:var(--gold);font-size:12px}#run-timer,.kill-count,.meter-label{font-variant-numeric:tabular-nums}.run-actions{flex-wrap:wrap;justify-content:end;align-items:center;gap:8px;display:flex}.kill-count{color:#fff3d7;background:#171323;border-radius:6px;padding:9px;font-size:12px}.kill-count b{color:var(--gold);margin-right:6px;font-size:17px}.pause-button{color:#fff3d7;pointer-events:auto;background:#29243c;border:2px solid #71647a;border-radius:8px;min-height:38px;padding:8px 12px;font-size:12px;font-weight:700}.pause-button:hover:not(:disabled){border-color:var(--gold);background:#3b3148}kbd{font:inherit}.pause-button kbd{color:var(--gold);margin-left:7px}.build-readout{background:#171425ed;border:2px solid #69566c;border-radius:10px;width:218px;padding:14px;font-size:12px;position:absolute;top:105px;left:20px}#character-label{color:var(--gold);margin:0 0 13px;font-size:17px;line-height:1.2}#build-slots{color:#d3c6c5;margin:0 0 10px;font-size:12px;line-height:1.5}#loadout{gap:10px;margin:0;padding:0;list-style:none;display:grid}#loadout li{flex-wrap:wrap;justify-content:space-between;gap:6px;display:flex}#loadout li>span:nth-child(2){color:var(--gold);font-variant-numeric:tabular-nums}#loadout .weapon-locked,#loadout .weapon-locked>span:nth-child(2){color:var(--muted)}.rank-pips{flex-basis:100%;gap:4px;display:flex}.rank-pips i{background:#444058;width:15px;height:4px}.rank-pips i[data-filled=true]{background:var(--gold)}#passive-list{color:#d3c6c5;margin:15px 0 0;font-size:11px;line-height:1.6}#second-chance{color:#a9dcf5;margin:12px 0 0;font-size:11px;line-height:1.4}.ability-readout{background:var(--panel);pointer-events:auto;border:2px solid #71647a;border-radius:10px;width:240px;padding:12px;position:absolute;bottom:96px;right:20px}#ability-button{text-align:center;min-height:42px;padding:9px 11px;font-size:12px}#ability-bar{height:5px;margin-top:10px}#ability-status{color:var(--gold);text-align:center;margin:8px 0 0;font-size:11px;line-height:1.4}#boss-panel{background:#241824;border:2px solid #ba6b52;border-radius:10px;width:min(360px,42%);padding:12px;position:absolute;top:113px;left:50%;transform:translate(-50%)}#boss-health{accent-color:#ef875c;height:12px}#boss-health::-webkit-progress-value{background:#ef875c}#health-bar::-webkit-progress-value{background:#ef875c}#boss-health::-moz-progress-bar{background:#ef875c}#health-bar::-moz-progress-bar{background:#ef875c}#announcement{color:#fff3d7;border:2px solid var(--gold);text-align:center;background:#22203c;border-radius:10px;width:max-content;max-width:min(520px,58%);margin:0;padding:13px 18px;font-size:13px;font-weight:700;line-height:1.5;position:absolute;bottom:100px;left:50%;transform:translate(-50%)}#announcement[data-warning=true]{color:#ffe3d1;background:#382331;border-color:#f39262}.hud-bottom{background:#151526ef;border:2px solid #665767;border-radius:10px;align-items:end;gap:22px;padding:13px 16px;display:flex}.health-readout{width:24%}.xp-readout{flex:1}.meter-label{justify-content:space-between;gap:8px;margin-bottom:8px;font-size:12px;display:flex}.meter-label label{font-weight:700}.meter-label>span{color:#d7c8c8}progress{accent-color:#72c4f0;background:#38334a;border:0;border-radius:3px;width:100%;height:9px;display:block;overflow:hidden}progress::-webkit-progress-bar{background:#38334a}progress::-webkit-progress-value{background:#72c4f0}progress::-moz-progress-bar{background:#72c4f0}#health-bar{accent-color:#ef875c}#run-status{color:#ffe0ab;text-align:right;width:145px;margin:0 0 1px;font-size:11px;line-height:1.4}#loading-status{color:#fff3d7;text-align:center;background:#19162a;margin:0;padding:16px;position:absolute;inset:45% 0 auto}dialog{scrollbar-color:#9e8055 #18152b;width:min(580px,100vw - 28px);max-height:calc(100dvh - 28px);color:var(--ink);background:var(--panel);border:2px solid #8e7891;border-radius:14px;padding:28px;overflow-y:auto}dialog::backdrop{background:#0a070fd9}dialog h2{max-width:18ch;color:var(--gold);letter-spacing:-.03em;text-wrap:balance;text-shadow:2px 2px #4a2b18;margin:0;font-size:clamp(30px,3.5vw,46px);line-height:1.1}#dialog-description{color:#d6cdd6;margin:15px 0 24px;font-size:14px;line-height:1.6}#dialog-choices{gap:12px;display:grid}#dialog-details:empty{display:none}#dialog-details{margin-bottom:24px}#dialog-note{color:#c7bcc6;margin:20px 0 0;font-size:12px;line-height:1.65}.action{color:#fff3d7;text-align:left;background:#30304c;border:2px solid #70617f;border-radius:10px;width:100%;min-height:48px;padding:13px 16px;font-size:14px;font-weight:700;transition:background-color .1s,border-color .1s;display:block;box-shadow:inset 0 2px #ffffff14}.action:hover:not(:disabled){border-color:var(--gold);background:#414160}.action:active:not(:disabled){background:#25253d}.action.primary{color:#241609;text-align:center;background:#f28728;border-color:#ffb347;box-shadow:inset 0 1px #ffb44f}.action.primary:hover{background:#ff9c36;border-color:#ffe273}.action.primary:active{background:#dc711e}.upgrade-choice{align-items:center;gap:15px;display:flex}.upgrade-choice kbd{min-width:25px;color:var(--gold);font-size:24px}.upgrade-choice strong{color:#fff3d7;margin-bottom:8px;font-size:17px;line-height:1.25;display:block}.upgrade-choice span span{color:#d6cdd6;font-size:13px;font-weight:400;line-height:1.6;display:block}.upgrade-choice span .upgrade-rank{color:#ffcf4f;margin-bottom:9px;font-size:12px}.upgrade-mode{width:min(1000px,100vw - 28px)}.upgrade-mode #dialog-choices{grid-template-columns:repeat(3,minmax(0,1fr))}.upgrade-mode .upgrade-choice{flex-direction:column;align-items:start;min-height:230px;padding:20px}.legendary-choice{background:#3c263d;border-color:#ffcf4f}.legendary-choice strong{color:#ffe28c}.result-stats{grid-template-columns:1fr auto;gap:9px 22px;margin:0 0 22px;font-size:14px;display:grid}.result-stats dt{color:#c7bcc6}.result-stats dd{color:#ffdf9d;font-variant-numeric:tabular-nums;margin:0;font-weight:700}#dialog-details h3{color:#ffcf4f;margin:0 0 10px;font-size:18px}#dialog-details p{color:#d6cdd6;margin:0 0 10px;font-size:13px;line-height:1.6}.roster-mode{width:min(980px,100vw - 28px)}.roster-mode h2{color:#ffcf4f;text-align:center;text-shadow:3px 3px #86521c;margin:0 auto;font-size:clamp(38px,5vw,64px)}.roster-mode h2 img{width:96px;height:96px;image-rendering:pixelated;margin:auto;display:block}.roster-mode #dialog-description{text-align:center}.roster-filters{justify-content:center;gap:10px;margin-bottom:20px;display:flex}.roster-filters .action{text-align:center;width:auto;min-width:106px}.roster-filters [aria-pressed=true]{color:#ffe793;background:#43322d;border-color:#ffcf4f}.roster-layout{grid-template-columns:minmax(0,1.7fr) minmax(220px,1fr);align-items:stretch;gap:22px;display:grid}.roster-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.character-card{color:#fff5e2;text-align:center;background:#202039;border:2px solid #59516e;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:9px;min-height:172px;padding:16px 9px;display:flex}.character-card img{object-fit:contain;width:72px;height:72px;image-rendering:pixelated}.character-card strong{font-size:14px;line-height:1.25}.character-card>span{color:#d2c6d0;font-size:11px;line-height:1.35}.character-card:hover{background:#2c2a45;border-color:#d4ae74}.character-card[aria-pressed=true]{background:#383047;border-color:#ffcf4f}.character-card[aria-pressed=true] img{animation:1.5s ease-in-out infinite idle-bob}.character-info{background:#1d1b32;border:2px solid #6e5b77;border-radius:12px;padding:18px}.character-info .selected-avatar{object-fit:contain;width:128px;height:128px;image-rendering:pixelated;margin:0 auto 16px;display:block}#dialog-details .character-info h3{color:#ffe5a0;text-align:center;font-size:22px}.character-info h4{color:#ffac65;margin:16px 0 10px;font-size:17px}#dialog-details .character-info .skill-timing{color:#a9dbf4;font-size:11px;line-height:1.6}.roster-mode #dialog-choices{width:min(380px,100%);margin:0 auto}.volume-setting{color:#c7bcc6;justify-content:center;align-items:center;gap:12px;margin-top:18px;font-size:12px;display:flex}#volume-control{width:130px;height:20px;accent-color:var(--gold);cursor:pointer}.device-note{display:none}body[data-world=vampire]{background:#1c0910}body[data-world=vampire] .hud-bottom,body[data-world=vampire] .build-readout{background:#251427ef;border-color:#a25468}body[data-world=pons]{background:#765b71}body[data-world=pons] .hud{--gold:#ffe1f2;--accent:#ffc1db}body[data-world=up-only] .hud *,body[data-world=up-only] dialog *{color:#8fff9f!important}body[data-world=up-only] .action,body[data-world=up-only] .pause-button{background:#183627;border-color:#68cf7c}body[data-world=up-only] progress::-webkit-progress-value{background:#83ef94}body[data-world=up-only] progress::-moz-progress-bar{background:#83ef94}@keyframes idle-bob{50%{transform:translateY(-4px)}}.art-icon{object-fit:contain;width:48px;height:48px;image-rendering:pixelated;vertical-align:middle;display:inline-block}#difficulty-value{color:#d7c8c8;font-size:11px}.build-readout{pointer-events:auto;width:150px;padding:12px}#character-label{margin-bottom:10px;font-size:14px}#loadout{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}#loadout li{display:block}.item-slot{color:#fff3d7;background:#27233b;border:1px solid #8b765f;border-radius:8px;justify-content:center;align-items:center;width:54px;height:54px;padding:3px;display:inline-flex;position:relative}.item-slot[data-locked=true] .art-icon{opacity:.3;filter:grayscale()}.slot-rank{color:#ffcf4f;background:#171323;border-radius:3px;min-width:15px;padding:1px 3px;font-size:11px;position:absolute;bottom:1px;right:2px}.item-tip{z-index:20;color:#fff3d7;text-align:left;pointer-events:none;background:#17172e;border:1px solid #c19e65;border-radius:8px;width:225px;padding:12px;font-size:12px;font-weight:400;line-height:1.5;display:none;position:absolute;top:100%;left:0}.item-slot:hover .item-tip,.item-slot:focus .item-tip{display:block}#passive-list{flex-wrap:wrap;gap:5px;margin-top:12px;display:flex}#passive-list .item-slot{width:36px;height:36px}#passive-list .art-icon{width:30px;height:30px}#second-chance:empty{display:none}.ability-readout{width:172px;padding:10px;bottom:262px;right:20px}#ability-button{width:62px;height:62px;min-height:0;margin:auto;padding:4px}#ability-button .art-icon{width:48px;height:48px}#ability-status{font-size:11px}.minimap-readout{background:#15152e;border:2px solid #71647a;border-radius:10px;width:172px;padding:5px;position:absolute;bottom:94px;right:20px}#minimap{border-radius:5px;width:158px;height:126px;display:block}.minimap-readout>span{color:#d6c1a2;text-align:center;padding-top:5px;font-size:11px;display:block}#run-status{justify-content:end;align-items:center;gap:7px;width:70px;display:flex}#run-status .art-icon{width:30px;height:30px}.difficulty-select{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.difficulty-select .action{text-align:center;min-height:42px;padding:10px 7px;font-size:13px}.difficulty-select [aria-pressed=true]{color:#ffe793;background:#43322d;border-color:#ffcf4f}#dialog-details .difficulty-summary{text-align:center;margin:10px 0 20px;font-size:12px}.character-card{position:relative}.character-card .card-skill{width:28px;height:28px;position:absolute;top:7px;right:7px}.character-info h4{align-items:center;gap:10px;display:flex}.character-info h4 .art-icon{flex:0 0 36px;width:36px;height:36px}.upgrade-choice>.art-icon{width:64px;height:64px}.upgrade-mode .upgrade-choice{position:relative}.upgrade-mode .upgrade-choice>kbd{text-align:right;font-size:15px;position:absolute;top:14px;right:14px}.pause-icon{width:22px;height:22px}.meter-label .art-icon{width:20px;height:20px}#ability-button[data-passive=true]:disabled{opacity:1}@media (width<=900px){.hud{padding:12px}.build-readout{width:134px;padding:8px;top:100px;left:12px}#loadout{gap:7px}.run-actions{gap:5px}.kill-count{display:none}.pause-button{padding:8px;font-size:11px}.ability-readout{width:156px;bottom:246px;right:12px}.minimap-readout{width:156px;bottom:87px;right:12px}#minimap{width:142px;height:114px}#announcement{max-width:48%;font-size:12px;bottom:90px}}@media (width<=680px){dialog{padding:20px}.roster-layout{grid-template-columns:1fr}.roster-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.character-card{min-height:140px}.character-info .selected-avatar{display:none}.roster-filters{gap:8px}.roster-filters .action{flex:1;min-width:0;padding:10px}.upgrade-mode #dialog-choices{grid-template-columns:1fr}.upgrade-mode .upgrade-choice{flex-direction:row;min-height:0}.wordmark p,#second-chance,.build-readout{display:none}.hud-top{gap:8px}.run-clock{padding:8px}.run-actions{max-width:120px}#run-status{display:none}.hud-bottom{gap:12px;padding:10px}.health-readout{width:38%}.meter-label{font-size:11px}.ability-readout{width:118px;padding:8px;bottom:208px}.minimap-readout{width:118px;bottom:82px}#minimap{width:104px;height:83px}.difficulty-select{grid-template-columns:repeat(2,minmax(0,1fr))}#announcement{max-width:47%;left:12px;transform:none}#boss-panel{top:97px}}@media (pointer:coarse){.device-note{color:#f6d4b0;text-align:center;background:#171323;padding:5px;font-size:12px;display:block;position:fixed;bottom:0;left:12px;right:12px}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}
