html,body{margin:0;height:100%;background:#050805;color:#b8ffb8;font-family:Cascadia Mono,Cascadia Code,Lucida Console,Consolas,Courier New,monospace}body{min-height:100vh;overflow:hidden}.app-shell{position:relative;width:100vw;height:100vh}[hidden]{display:none!important}.panel{border:1px solid #2f5a2f;background:#0a0f0a;padding:16px;box-shadow:inset 0 0 0 1px #122112;box-sizing:border-box}h1,h2,p,pre,label,button,input{margin:0}h1,h2{margin-bottom:12px;font-size:18px;font-weight:700}.lobby-screen{position:fixed;inset:0;display:grid;place-items:center;padding:24px;background:#050805;z-index:10}.lobby-panel{width:min(100%,560px)}.intro{margin-bottom:16px;color:#d9ffd9}.join-form{display:grid;gap:12px;margin-bottom:12px}.join-form label{display:grid;gap:4px}.join-form input,.join-form button{font:inherit;background:#020402;color:#b8ffb8;border:1px solid #2f5a2f;padding:8px}.join-form button{cursor:pointer}.status-line{min-height:20px;color:#f3d97a}.legend{margin-top:16px}.hud{margin:0;white-space:pre;overflow-x:auto;overflow-y:hidden;line-height:1.35;color:#d9ffd9}.game-screen{--game-layout-width: 1260px;position:fixed;inset:0;display:grid;grid-template-rows:auto minmax(0,1fr);gap:10px;padding:12px;background:#050805;height:100vh;box-sizing:border-box}.game-body{min-height:0;display:grid;grid-template-columns:minmax(0,880px) 340px;gap:14px;width:min(100%,var(--game-layout-width));margin:0 auto;align-items:stretch}.game-screen-hidden{display:none}.game-header{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:center;width:min(100%,var(--game-layout-width));margin:0 auto;padding-top:12px;padding-bottom:12px}.header-copy{display:grid;gap:4px;min-width:0}.header-copy h2{margin-bottom:2px}.header-copy .status-line{min-height:0}.room-share-row{display:flex;flex-wrap:nowrap;gap:8px;align-items:center;justify-self:end;min-width:0}.room-share-row button{font:inherit;background:#020402;color:#b8ffb8;border:1px solid #2f5a2f;padding:6px 10px;cursor:pointer;white-space:nowrap}.room-share-row button:disabled{opacity:.45;cursor:default}.room-link{color:#8fd3ff;text-decoration:none;white-space:nowrap;border:1px solid #224422;background:#081108;padding:6px 10px;max-width:none}.room-link:hover{text-decoration:underline}.screen{overflow:hidden;font-size:clamp(13px,1.3vw,18px);line-height:.82;letter-spacing:.035em;font-variant-ligatures:none;background:#000;color:#d9ffd9;border:1px solid #1a331a;padding:6px 8px;min-height:0;height:100%;width:100%;box-sizing:border-box;transform-origin:top left;white-space:pre;justify-self:center;align-self:stretch}.cell-player-head{color:#7cff7c}.cell-player-body{color:#36d936}.cell-bot-head{color:#6ed6ff}.cell-bot-body{color:#2c8cff}.cell-enemy-head{color:#ff8c69}.cell-enemy-body{color:#ff5f87}.cell-transform-flash-a{color:#fff18a}.cell-transform-flash-b{color:#ffb86b}.cell-food{color:#ffe66d}.cell-food-medium{color:#ffd166}.cell-food-large{color:#ff9f43;font-weight:700}.cell-border{color:#6f7b6f}.sidebar{min-height:0;display:grid;grid-template-rows:auto auto minmax(0,.42fr) minmax(0,.58fr) minmax(0,1fr);gap:10px}.hud-panel{display:grid;grid-template-rows:auto minmax(0,1fr);gap:8px}.hud-panel h2,.respawn-panel h2,.leaderboard-panel h2,.kill-feed-panel h2,.update-log-panel h2{margin-bottom:0}.respawn-panel{display:grid;gap:10px}.respawn-panel button{font:inherit;background:#020402;color:#b8ffb8;border:1px solid #2f5a2f;padding:8px 16px;cursor:pointer}.respawn-panel button:disabled{opacity:.45;cursor:default}.leaderboard-panel{min-height:0;box-sizing:border-box;display:grid;grid-template-rows:auto minmax(0,1fr)}.leaderboard{overflow:auto;white-space:pre;color:#e8ffd0;line-height:1.35;font-size:13px}.kill-feed-panel{min-height:0;box-sizing:border-box;display:grid;grid-template-rows:auto minmax(0,1fr)}.kill-feed{overflow:auto;white-space:pre-wrap;color:#d9ffd9;line-height:1.35;font-size:13px}.update-log-panel{min-height:0;box-sizing:border-box;display:grid;grid-template-rows:auto minmax(0,1fr)}.update-log{overflow:auto;white-space:pre-wrap;color:#cfeccc;line-height:1.4;font-size:13px}.respawn-overlay{position:absolute;inset:0;display:grid;place-items:center;background:#0000008c}.respawn-card{width:min(420px,calc(100vw - 32px));display:grid;gap:12px;justify-items:start}.respawn-card button{font:inherit;background:#020402;color:#b8ffb8;border:1px solid #2f5a2f;padding:8px 16px;cursor:pointer}.legend pre{color:#d9ffd9}@media(max-width:960px){.game-body{grid-template-columns:1fr;grid-template-rows:minmax(0,1fr) minmax(0,360px);width:100%}.game-header{grid-template-columns:1fr;width:100%}.room-share-row{justify-self:start}.sidebar{grid-template-rows:repeat(4,minmax(0,auto));overflow:auto}.screen{font-size:clamp(12px,2.1vw,16px)}}
