:root{color:#f4dfb4;font-synthesis:none;text-rendering:optimizelegibility;background:#130d0c;font-family:Courier New,ui-monospace,monospace}#game-container{aspect-ratio:16/9;position:relative}.mobile-combat-status{display:none}.career-menu{color:#f4dfb4;background:#1b1514;border:3px solid #e5a755;border-radius:6px;width:min(760px,100vw - 20px);max-height:calc(100dvh - 24px);padding:clamp(16px,3vw,28px);line-height:1.5;overflow:auto}.career-menu::backdrop{background:#060408d9}.career-menu h2{color:#fcd890;margin-top:0;font-size:clamp(18px,3vw,26px)}.career-menu p{font-size:13px}.career-actions{flex-wrap:wrap;gap:8px;display:flex}.career-actions button[aria-pressed=true]{background:#533038;border:2px solid #fcd890}.career-unlocks{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.career-unlocks article{border:1px solid #76563c;flex-direction:column;padding:12px;display:flex}.career-unlocks button{margin-top:auto}.career-reward{color:#fcd890;font-weight:700}@keyframes reward-arrival{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.upgrade-card,.career-reward{animation:.22s ease-out both reward-arrival}.upgrade-card:nth-child(2){animation-delay:60ms}.upgrade-card:nth-child(3){animation-delay:.12s}.upgrade-card.upgrade-payoff{box-shadow:inset 0 0 20px #fcd89026}.upgrade-panel>button{margin-top:16px}@media (width<=650px){.career-unlocks{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){.upgrade-card,.career-reward{animation:none}}#game-container canvas{position:absolute;inset:0;width:100%!important;height:100%!important;margin:0!important}.upgrade-panel{touch-action:pan-y;overscroll-behavior:contain;z-index:15;text-align:center;background:#1b1514f7;border:3px solid #e5a755;padding:clamp(12px,3vw,32px);position:absolute;inset:0;overflow:auto}.upgrade-panel h2{color:#fcd890;margin:0 0 8px;font-size:clamp(16px,2vw,24px)}.upgrade-panel>p{margin:0 0 20px;font-size:12px;line-height:1.5}.skill-tree{text-align:left;border:1px solid #69532a;margin:0 0 16px;padding:10px;font-size:12px;line-height:1.6}.skill-tree summary{cursor:pointer;color:#fcd890}.skill-paths{grid-template-columns:repeat(auto-fit,minmax(min(240px,100%),1fr));gap:12px;display:grid}.skill-paths p{margin-bottom:0}.upgrade-cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.upgrade-card{border:3px solid var(--weapon-color);text-transform:none;letter-spacing:normal;flex-direction:column;align-items:center;gap:12px;padding:18px 12px;font-size:14px;line-height:1.5;display:flex}.upgrade-card strong{color:#fcd890;font-size:18px}.upgrade-level{color:#fcd890;border:1px solid #69532a;border-radius:4px;padding:3px 8px;font-weight:700}.upgrade-weapon{color:var(--weapon-color);font-size:12px}.weapon-icon{width:40px;height:40px;fill:var(--weapon-color);shape-rendering:crispedges;flex-shrink:0}.upgrade-stats{text-align:left;align-self:stretch;gap:8px;margin-top:auto;display:grid}@media (width<=650px){.upgrade-panel{inset:max(6px, env(safe-area-inset-top)) 6px max(6px, env(safe-area-inset-bottom));z-index:30;position:fixed}.upgrade-cards{grid-template-columns:1fr;gap:10px}.upgrade-card{gap:6px;padding:12px}.weapon-icon{width:24px;height:24px}}*{box-sizing:border-box}body{overscroll-behavior-y:contain;background:radial-gradient(circle at 18% 12%,#83452a6b,#0000 32rem),radial-gradient(circle at 82% 80%,#5a4d2b4d,#0000 28rem),#130d0c;min-width:320px;min-height:100vh;margin:0}button{color:#f1d3a2;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;background:#2a1d18;border:1px solid #76563c;border-radius:4px;min-height:44px;padding:.7rem 1rem;font:700 .82rem/1 Courier New,ui-monospace,monospace}input,select,textarea{color:#f4dfb4;background:#211713;border:1px solid #76563c;border-radius:4px;font:.82rem/1.4 Courier New,ui-monospace,monospace}button:hover:not(:disabled){color:#fff;background:#3b291e;border-color:#e2a556}button:focus-visible{outline-offset:3px;outline:2px solid #f2bb54}button:disabled{cursor:not-allowed;opacity:.45}button.primary{color:#211108;background:#e7a057;border-color:#e18a45}.app-shell{width:100%;min-height:100dvh;padding-top:max(.3rem, env(safe-area-inset-top));padding-right:max(.3rem, env(safe-area-inset-right));padding-bottom:max(.3rem, env(safe-area-inset-bottom));padding-left:max(.3rem, env(safe-area-inset-left));margin:0 auto}.site-header{z-index:20;justify-content:space-between;align-items:center;gap:.5rem;min-height:2.4rem;margin:0 .25rem .3rem;display:flex;position:relative}.eyebrow{display:none}h1{color:#ffe9b8;letter-spacing:.08em;text-shadow:3px 3px #74392c;margin:0;font-size:clamp(1rem,2.4vw,1.5rem);line-height:1}.save-status{color:#b89a76;text-align:right;background:#1f1410db;border:1px solid #654832;max-width:20rem;padding:.35rem .55rem;font-size:.7rem}.save-status[data-tone=good]{color:#cce88d;border-color:#87994c}.save-status[data-tone=bad]{color:#ff9a80;border-color:#a64a3a}.game-menu{position:relative}.game-menu summary{color:#f1d3a2;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;background:#2a1d18;border:1px solid #76563c;border-radius:4px;min-height:34px;padding:.45rem .65rem;font-size:.68rem;font-weight:700;list-style:none}.game-menu summary::-webkit-details-marker{display:none}.game-menu[open] summary{color:#fff;border-color:#e2a556}.game-menu-panel{background:#180f0efa;border:1px solid #76563c;border-radius:5px;gap:.65rem;width:min(28rem,100vw - .6rem);max-height:calc(100dvh - 6rem);padding:.75rem;display:grid;position:absolute;top:calc(100% + .35rem);right:0;overflow-y:auto;box-shadow:0 .8rem 2.5rem #0000008c}.premade-games{border-top:1px solid #76563c;gap:.5rem;padding-top:.65rem;display:grid}.premade-games h2{margin:0;font-size:.9rem}.premade-games p{margin:.35rem 0;font-size:.72rem;line-height:1.5}.premade-games article{border:1px solid #76563c;border-radius:4px;padding:.55rem}.premade-games strong{font-size:.78rem}#premade-confirmation{border:1px solid #e2a556;padding:.5rem}#premade-share-link{box-sizing:border-box;width:100%;min-width:0}.game-menu-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:.45rem;display:grid}.auth-controls{justify-items:end;gap:.4rem;max-width:min(32rem,100%);display:grid}.auth-controls>button,.auth-session button{min-height:34px;padding:.45rem .65rem;font-size:.68rem}.auth-form{background:#1f1410f0;border:1px solid #76563c;border-radius:5px;grid-template-columns:minmax(9rem,1fr) minmax(9rem,1fr);gap:.55rem;padding:.75rem;display:grid}.auth-form[hidden],.auth-session[hidden]{display:none}.auth-form label{color:#b89a76;letter-spacing:.08em;text-transform:uppercase;gap:.25rem;font-size:.65rem;display:grid}.auth-form input{width:100%;min-height:42px;padding:.55rem}.auth-actions{flex-wrap:wrap;grid-column:1/-1;gap:.45rem;display:flex}.auth-session{color:#cce88d;align-items:center;gap:.65rem;font-size:.72rem;display:flex}.auth-message{color:#b89a76;text-align:right;min-height:1em;margin:0;font-size:.65rem}.save-conflict-card{color:#f8e4b9;background:#231413f5;border:2px solid #d77746;border-radius:.55rem;gap:.85rem;margin-bottom:1rem;padding:clamp(.8rem,2vw,1.15rem);display:grid;box-shadow:0 .8rem 2.5rem #0000005c}.save-conflict-card[hidden]{display:none}.save-conflict-card h2,.save-conflict-card p{margin:0}.save-conflict-card h2{color:#ffe9b8;font-size:clamp(1rem,3vw,1.35rem)}.save-conflict-card>div:first-child>p:last-child{color:#c8aa84;margin-top:.4rem;font-size:.76rem;line-height:1.45}.save-conflict-choices{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;display:grid}.save-conflict-choices article{background:#140e0fb3;border:1px solid #76563c;border-radius:.4rem;align-content:start;gap:.6rem;padding:.75rem;display:grid}.save-conflict-choices strong{color:#f2bb54;letter-spacing:.08em;text-transform:uppercase}.save-conflict-choices span{color:#d7bd96;min-height:2.6em;font-size:.7rem;line-height:1.4}.save-conflict-message{color:#ffb08f;min-height:1em;font-size:.7rem}.game-frame{background:#120e18;border:1px solid #6a4b35;border-radius:3px;width:min(100%,177.78dvh - 8.71122rem);position:relative;overflow:hidden;box-shadow:0 1.5rem 5rem #00000073}.raid-touch-controls{z-index:4;pointer-events:none;justify-content:space-between;display:flex;position:absolute;bottom:clamp(.5rem,2vw,1.25rem);left:clamp(.5rem,2vw,1.25rem);right:clamp(.5rem,2vw,1.25rem)}.raid-touch-controls[hidden]{display:none}.raid-move-button{color:#fff0bf;touch-action:none;-webkit-user-select:none;user-select:none;pointer-events:auto;background:#261818c7;border:2px solid #f2bb54e0;border-radius:.65rem;width:clamp(5rem,21vw,9rem);min-height:clamp(3.25rem,12vw,5.25rem);font-size:clamp(.75rem,2.7vw,1rem);box-shadow:0 .35rem 1.2rem #0000006b}.raid-move-button:active,.raid-move-button[data-held=true]{color:#27140c;background:#f2bb54;transform:translateY(1px)}.onboarding-card{z-index:5;color:#f8e4b9;pointer-events:none;background:#1c1214eb;border:2px solid #f2bb54e6;border-radius:.5rem;gap:.3rem;width:min(30rem,100% - 1rem);padding:clamp(.55rem,2vw,.9rem);font-size:clamp(.66rem,2.1vw,.85rem);line-height:1.35;display:grid;position:absolute;top:clamp(.5rem,2vw,1rem);left:50%;transform:translate(-50%);box-shadow:0 .4rem 1.5rem #0000008c}.onboarding-card[hidden]{display:none}.onboarding-card strong{color:#f2bb54;letter-spacing:.08em;text-transform:uppercase}.raid-pause-card{z-index:8;color:#f8e4b9;text-align:center;background:#180f12f7;border:2px solid #f2bb54;border-radius:.55rem;gap:.65rem;width:min(25rem,100% - 2rem);padding:1rem;display:grid;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 0 0 100vmax #0604089e}.raid-pause-card[hidden]{display:none}.raid-pause-card strong{color:#f2bb54;letter-spacing:.1em;font-size:1rem}.orientation-hint{display:none}#game-container,#game-container canvas{touch-action:none;-webkit-touch-callout:none;width:100%;display:block}.control-deck{grid-template-columns:repeat(2,max-content);align-items:center;gap:.4rem;width:min(100%,177.78dvh - 8.71122rem);margin-top:.3rem;display:grid}.control-deck p{display:none}.control-deck button{min-height:36px;padding:.45rem .7rem;font-size:.7rem}main{justify-items:center;display:grid}.test-lab{color:#d0b795;background:#1c120feb;border:1px solid #69503a;border-radius:6px;margin-top:1rem}.test-lab summary{color:#f2bb54;cursor:pointer;padding:.85rem 1rem;font-weight:700}.test-lab-grid{grid-template-columns:1fr 10rem auto auto;gap:.75rem;padding:0 1rem 1rem;display:grid}.test-lab label{letter-spacing:.08em;text-transform:uppercase;gap:.35rem;font-size:.72rem;display:grid}.test-lab input,.test-lab select,.test-lab textarea{width:100%;padding:.65rem}.state-json-label{grid-column:1/-1}.test-lab textarea{resize:vertical;text-transform:none;min-height:12rem}@media (width<=740px){.site-header{flex-direction:row;align-items:center}.save-status{text-align:left}.auth-controls{justify-items:end;width:auto}.auth-message{text-align:left}.test-lab-grid{grid-template-columns:1fr 1fr}}@media (width<=470px){.save-conflict-choices,.auth-form{grid-template-columns:1fr}.auth-actions{grid-column:auto}.control-deck{grid-template-columns:repeat(2,minmax(0,1fr))}.control-deck p{display:none}.test-lab-grid{grid-template-columns:1fr}.state-json-label{grid-column:auto}}@media (hover:hover) and (pointer:fine){.raid-touch-controls:not([hidden]){display:none}}@media (orientation:portrait) and (width<=740px){.mobile-combat-status:not([hidden]){color:#fcd890;text-align:center;background:#17100e;padding:10px 6px;font-size:14px;display:block}.raid-touch-controls{padding:.5rem;position:relative;inset:auto}.orientation-hint{z-index:3;color:#ffe9b8d1;letter-spacing:.08em;text-align:center;text-transform:uppercase;text-shadow:1px 1px 2px #000;pointer-events:none;margin:.2rem .5rem .5rem;font-size:.6rem;display:block;position:relative}}@media (orientation:landscape) and (height<=500px){.app-shell{padding:max(6px, env(safe-area-inset-top)) max(6px, env(safe-area-inset-right)) max(6px, env(safe-area-inset-bottom)) max(6px, env(safe-area-inset-left))}.site-header{inset:max(6px, env(safe-area-inset-top)) max(6px, env(safe-area-inset-right)) auto auto;margin:0;position:fixed}.site-header h1{display:none}main{align-content:center;min-height:calc(100dvh - 12px)}.game-frame{width:100%;box-shadow:none;background:0 0;border:0;overflow:visible}#game-container{width:min(calc(100vw - 160px - env(safe-area-inset-left) - env(safe-area-inset-right)), calc((100dvh - 12px - env(safe-area-inset-top) - env(safe-area-inset-bottom)) * 16 / 9));margin-inline:auto}.raid-touch-controls{bottom:30%;left:0;right:0}.raid-move-button{width:66px;min-height:76px;padding:6px;font-size:11px}.control-deck{left:max(6px, env(safe-area-inset-left));bottom:max(6px, env(safe-area-inset-bottom));z-index:7;grid-template-columns:1fr;width:68px;position:fixed}.control-deck button{min-height:40px;padding:6px;font-size:10px}.upgrade-panel{inset:max(6px, env(safe-area-inset-top)) max(6px, env(safe-area-inset-right)) max(6px, env(safe-area-inset-bottom)) max(6px, env(safe-area-inset-left));z-index:30;position:fixed}.game-menu-panel{max-height:calc(100dvh - 56px)}}
