:root{--red:#d7141e;--yellow:#ffd23f;--navy:#0d1b4d;--ink:#15171f;--paper:#fffaf0;--blue:#5aa0ff;--good:#3cff6e;--bad:#ff5a5a;--display:"Arial Black", Impact, "Helvetica Neue", Arial, sans-serif;--body:Arial, "Helvetica Neue", Helvetica, sans-serif}*{box-sizing:border-box}html,body{height:100%;color:var(--paper);font-family:var(--body);background:#0b1430;margin:0;overflow:hidden}#game{width:100vw;height:100vh;display:block;position:fixed;inset:0}button,input,select{font:inherit}button{cursor:pointer;border:2px solid var(--ink);color:var(--ink);box-shadow:0 3px 0 var(--ink);background:#f3efe4;border-radius:4px;padding:.5em .9em;font-weight:700}button:hover{background:#fff}button:active{box-shadow:0 1px 0 var(--ink);transform:translateY(2px)}button:disabled{opacity:.55;cursor:default}button.primary{background:var(--red);color:#fff;font-family:var(--display);letter-spacing:.02em}button.primary:hover{background:#ef2630}input,select{border:2px solid var(--ink);color:var(--ink);background:#fff;border-radius:4px;min-width:0;padding:.45em .6em}kbd{min-width:1.6em;color:var(--ink);font:bold .85em var(--body);text-align:center;background:#fff;border:1px solid #888;border-bottom-width:3px;border-radius:4px;margin:0 .1em;padding:.05em .35em;display:inline-block}.panel-screen{background:linear-gradient(#080c20c7,#080c208c 40%,#080c20d1);padding:24px 16px 40px;position:fixed;inset:0;overflow-y:auto}.site-nav{max-width:980px;margin:0 auto}#home-link{border:2px solid var(--ink);color:var(--ink);box-shadow:0 3px 0 var(--ink);background:#f3efe4;border-radius:4px;padding:.35em .75em;font-weight:700;text-decoration:none;display:inline-block}#home-link:hover{background:#fff}#home-link:focus-visible{outline:3px solid var(--yellow);outline-offset:2px}.title{text-align:center;max-width:900px;margin:8px auto 22px}.kicker{background:var(--yellow);color:var(--ink);font:bold .95rem var(--body);box-shadow:3px 3px 0 var(--ink);margin:0;padding:.2em .7em;display:inline-block;transform:rotate(-1.5deg)}h1{font-family:var(--display);color:#fff;text-transform:uppercase;text-shadow:4px 4px 0 var(--red), 7px 7px 0 var(--ink);margin:.25em 0 .15em;font-size:clamp(2.3rem,7vw,4.6rem);line-height:.95}h1 .black{color:#fff}h1 .and{vertical-align:middle;color:var(--yellow);text-shadow:2px 2px 0 var(--ink);font-size:.5em}h1 .blue{color:var(--blue)}.tagline{color:#e9e6dc;max-width:640px;margin:.4em auto 0;font-size:1.1rem}.panels{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:18px;max-width:980px;margin:0 auto;display:grid}.panel{background:var(--paper);color:var(--ink);border:3px solid var(--ink);border-radius:6px;padding:18px 20px;box-shadow:6px 6px #0000008c}.panel h2{font-family:var(--display);text-transform:uppercase;color:var(--red);margin:1.1em 0 .5em;font-size:1.15rem}.panel h2:first-child{margin-top:0}.panel h3{margin:1em 0 .4em;font-size:.95rem}.panel ol,.panel ul{margin:.3em 0;padding-left:1.2em;line-height:1.45}.panel li{margin:.3em 0}.panel .keys{padding-left:0;list-style:none}.field{gap:.3em;font-weight:700;display:grid}.row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.row input{flex:160px}.hint{color:#555;margin:.3em 0 .6em;font-size:.92rem}#rooms{margin:0;padding:0;list-style:none}#rooms li{border-bottom:1px dashed #bbb;justify-content:space-between;align-items:center;gap:8px;padding:.4em .5em;display:flex}#rooms li.empty{color:#777;font-style:italic}.status{color:#666;margin:.8em 0 0;font-size:.85rem}.status.ok{color:#1b7a3a}.status.error{color:#b3261e}.settings{border-top:2px dotted #ccc;gap:.35em;margin-top:1em;padding-top:.8em;font-size:.92rem;display:grid}.settings input[type=range]{vertical-align:middle;width:140px}.lobby-panel{max-width:520px;margin:12vh auto 0}#lobby-players{padding:0;list-style:none}#lobby-players li{border-bottom:1px dashed #bbb;justify-content:space-between;padding:.5em 0;display:flex}.ready-flag{color:#999;font-weight:700}.ready-flag.yes{color:#1b7a3a}.notice{background:#fff3c4;border:2px solid #c9a100;border-radius:4px;padding:.5em}#hud{pointer-events:none;position:fixed;inset:0}#hud button{pointer-events:auto}#clock{color:#ff3b30;letter-spacing:.06em;text-align:center;text-shadow:0 0 8px #ff3c28b3;white-space:nowrap;background:#101010;border:3px solid #333;border-radius:6px;padding:6px 14px 4px;font:700 1.6rem Courier New,monospace;position:absolute;top:12px;left:50%;transform:translate(-50%)}#clock .date{color:#ffb3ad;margin-right:.4em;font-size:.6em}#clock .left{font:bold .75rem var(--body);color:#ddd;text-shadow:none;letter-spacing:0;display:block}#clock.urgent .left{color:var(--yellow);animation:.8s steps(2,end) infinite blink}@keyframes blink{50%{opacity:.4}}#top-stack{flex-direction:column;align-items:center;gap:8px;width:min(680px,100vw - 32px);display:flex;position:absolute;top:86px;left:50%;transform:translate(-50%)}#objective{text-align:center;max-width:100%;font:bold 1.05rem var(--body);border-left:5px solid var(--yellow);background:#0d1b4dd9;border-radius:4px;padding:6px 14px}#objective:empty{display:none}#objective.good{border-left-color:var(--good)}#objective.bad{border-left-color:var(--bad)}#pa{background:var(--yellow);max-width:100%;color:var(--ink);font:bold 1rem var(--body);border:3px solid var(--ink);box-shadow:4px 4px 0 var(--ink);text-align:center;padding:8px 14px}#pa b{background:var(--red);color:#fff;font-family:var(--display);margin-right:.4em;padding:0 .4em}#banner{font:900 clamp(4rem, 14vw, 9rem) var(--display);color:var(--yellow);text-shadow:6px 6px 0 var(--red), 10px 10px 0 var(--ink);position:absolute;top:38%;left:50%;transform:translate(-50%,-50%)}#toast{font:bold 1.25rem var(--display);white-space:nowrap;text-overflow:ellipsis;background:#0a0c18d9;border-radius:4px;max-width:calc(100vw - 32px);padding:8px 16px;position:absolute;bottom:26%;left:50%;overflow:hidden;transform:translate(-50%)}#toast.good{color:var(--good)}#toast.bad{color:var(--bad)}#checkout{text-align:center;width:min(420px,100vw - 32px);font-weight:700;position:absolute;bottom:18%;left:50%;transform:translate(-50%)}#checkout .bar{background:#0009;border:2px solid #fff;border-radius:3px;height:16px;margin-top:4px}#checkout .fill{background:var(--good);width:0;height:100%}#checkout.theirs .fill{background:var(--bad)}#checkout.scan .fill{background:#ffd23f}#checkout .label{text-shadow:1px 1px 2px #000}#map{border:2px solid #fff;border-radius:4px;position:absolute;bottom:12px;right:12px;box-shadow:0 2px 10px #0009}#gauges{gap:6px;width:210px;display:grid;position:absolute;bottom:12px;left:12px}.gauge{font:bold .8rem var(--body);text-shadow:1px 1px 2px #000;grid-template-columns:52px 1fr;align-items:center;gap:6px;display:grid}.gauge .track{background:#0009;border:1px solid #ccc;border-radius:3px;height:12px;overflow:hidden}.gauge .fill{background:var(--blue);height:100%}#stamina.winded .fill{background:#888}#stamina.carrying .fill{background:#555}#shove-gauge .fill{background:#aa6}#shove-gauge.ready .fill{background:var(--yellow)}#help{background:#0a0c18b3;border-radius:4px;padding:8px 10px;font-size:.82rem;line-height:1.7;position:absolute;top:12px;left:12px}#lock-hint{background:#0000008c;border-radius:4px;padding:4px 10px;font-size:.85rem;position:absolute;bottom:12px;left:50%;transform:translate(-50%)}#leave-match{position:absolute;top:12px;right:12px}#flash{pointer-events:none;opacity:0;background:radial-gradient(#283ca000 30%,#1e145abf 100%);position:fixed;inset:0}#flash.on{animation:1.3s ease-out bruise}@keyframes bruise{0%{opacity:1;background-color:#0a0a1e8c}to{opacity:0}}#result{background:#0508148c;place-items:center;padding:16px;display:grid;position:fixed;inset:0}#result .panel{text-align:center;width:min(520px,100%)}#result h2{color:var(--ink);margin:0 0 .3em;font-size:clamp(1.6rem,6vw,2.4rem)}#result.won h2{color:#1b7a3a}#result.lost h2{color:var(--red)}#result .stats{text-align:left;grid-template-columns:1fr auto auto;gap:4px 18px;max-width:360px;margin:.8em auto;display:grid}#result .stats b{text-align:right}#result .row{justify-content:center}#result .votes{color:#555;min-height:1.2em}[hidden]{display:none!important}@media (width<=640px){#help{display:none}#top-stack{top:78px}#objective{font-size:.9rem}#map{transform-origin:100% 100%;transform:scale(.7)}#clock{font-size:1.2rem}}#cart-gauge .fill{background:#c3c9cf}#cart-gauge.wobbly .fill{background:var(--bad);animation:.5s steps(2,end) infinite blink}#light-icon{font:bold .75rem var(--body);background:var(--yellow);color:var(--ink);letter-spacing:.06em;border-radius:3px;justify-self:start;padding:2px 8px}#light-icon.on{box-shadow:0 0 12px var(--yellow)}#prompt{font:bold 1rem var(--body);background:#0a0c18cc;border:1px solid #ffffff59;border-radius:4px;padding:6px 12px;position:absolute;bottom:34%;left:50%;transform:translate(-50%)}#hud.fp:after{content:"";background:#fffc;border-radius:50%;width:6px;height:6px;margin:-3px 0 0 -3px;position:absolute;top:50%;left:50%;box-shadow:0 0 2px #000}
