*{box-sizing:border-box}[hidden]{display:none!important}html,body{background:#0b0d10;place-items:center;height:100%;margin:0;display:grid;overflow:hidden}#wrap{aspect-ratio:16/9;width:min(100vw,177.778vh);position:relative;container-type:inline-size}#game,#ui{position:absolute;inset:0}#ui{pointer-events:none;color:#f0e6d2;font-family:VT323,Courier New,monospace;font-size:1.9cqw;line-height:1.1}#ui>*{pointer-events:auto}button,input{font:inherit;color:inherit}button{cursor:pointer;background:#2c333d;border:.2cqw solid #d4af37;padding:.1em .6em}button:hover:not(:disabled){color:#14171b;background:#d4af37}button:disabled{opacity:.35;cursor:default;border-color:#555}input{color:#3cff8f;background:#07140d;border:.2cqw solid #3cff8f;padding:.1em .4em}.up{color:#3cff8f}.down{color:#ff5a5a}.dim{opacity:.6}.hd{color:#d4af37;margin-bottom:.3em}#hud{pointer-events:none;white-space:nowrap;background:#0c0e12e0;border-bottom:.2cqw solid #d4af37;align-items:center;gap:1.4em;padding:.25em .7em;display:flex;position:absolute;top:0;left:0;right:0}#hud-floor{color:#d4af37}#hud .goal{flex:1;align-items:center;gap:.5em;display:flex}.bar{background:#2c333d;flex:1;max-width:12em;height:.6em;display:block}#hud-bar{background:#3cff8f;width:0;height:100%;display:block}#room-code{opacity:.6}#board{pointer-events:none;text-shadow:0 0 .35em;background-image:radial-gradient(#ffffff12 30%,#0000 31%);background-size:.3em .3em;width:42.92%;height:15.56%;padding:.15em .5em;font-size:.84em;line-height:1.02;position:absolute;top:5.93%;left:45%;overflow:hidden}.brow{white-space:nowrap;grid-template-columns:3.2em 5em 1fr 1fr 1.5fr;gap:.5em;display:grid}.brow span:nth-child(n+3){text-align:right}.amber{color:#ffb000}#market{width:62%}.offer{border-top:.2cqw solid #2c333d;padding:.5em .8em}.offer p{margin:0 0 .4em}.offer button{margin-left:auto}select{font:inherit;color:#3cff8f;background:#07140d;border:.2cqw solid #3cff8f}#food{color:#2a2418;pointer-events:none;background:#f5efc2;border-left:.5cqw solid #c27a2c;max-width:34%;padding:.3em .6em;position:absolute;bottom:.6em;left:.5em}#stand-items{grid-template-columns:1fr 1fr;gap:.5em;padding:.8em;display:grid}#stand-items button{padding:.3em .8em;font-size:1.2em}#newswire{width:70%}#news-list{min-height:6em;padding:.5em .8em}.headline{border-bottom:.1cqw solid #2c333d;gap:.8em;padding:.15em 0;display:flex}.headline .age{color:#ff5a5a;min-width:5em}.headline.old{opacity:.45}#lev{gap:.3em;display:flex}#lev button.on{color:#14171b;background:#d4af37}#short{color:#ff5a5a;border-color:#ff5a5a;margin-left:auto}#short:hover{color:#14171b;background:#ff5a5a}#orders{color:#2a2418;pointer-events:none;background:#f5efc2;border-left:.5cqw solid #c0392b;padding:.4em .6em;position:absolute;top:29%;right:.5em}#orders .hd{color:#8a2f2f}.order.urgent{color:#c0392b}#toasts{pointer-events:none;flex-direction:column;gap:.2em;max-width:45%;display:flex;position:absolute;top:29%;left:.5em}.toast{background:#0c0e12d9;border-left:.4cqw solid #8fb7d6;padding:.1em .5em}.toast.good{color:#3cff8f;border-color:#3cff8f}.toast.bad{color:#ff8a8a;border-color:#ff5a5a}#prompt{pointer-events:none;background:#0c0e12e6;border:.2cqw solid #d4af37;padding:.1em .8em;position:absolute;bottom:.6em;left:50%;transform:translate(-50%)}#subtitle{text-align:center;pointer-events:none;background:#0c0e12eb;border:.2cqw solid #f0e6d2;width:60%;padding:.4em .8em;position:absolute;bottom:2.6em;left:50%;transform:translate(-50%)}#sub-who{color:#d4af37}#sub-text{font-size:1.3em}.modal{background:#14171b;border:.3cqw solid #d4af37;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 0 0 100cqw #00000073}.titlebar{color:#14171b;background:#d4af37;justify-content:space-between;align-items:center;padding:.1em .5em;display:flex}.titlebar button{color:#d4af37;background:#14171b;border-color:#14171b}.term-body{gap:.8em;padding:.6em;display:flex}#tickers{width:20%;max-height:14em;overflow-y:auto}#terminal{width:96%}.ticker{cursor:pointer;gap:.5em;padding:0 .3em;display:flex}.ticker b{flex:1;font-weight:400}.ticker:hover,.ticker.sel{background:#2c333d}.ticker.sel b{color:#d4af37}.term-mid{flex-direction:column;flex:1;gap:.4em;display:flex}#chart{width:100%;image-rendering:pixelated;border:.2cqw solid #2c333d}.ticket{align-items:center;gap:.4em;display:flex}#amt{width:7em}#buy{color:#3cff8f;border-color:#3cff8f}#buy:hover{color:#14171b;background:#3cff8f}.term-right{width:44%;max-height:14em;overflow-y:auto}.pos{align-items:center;gap:.4em;margin-bottom:.2em;display:flex}.pos .who{flex:1}.sell{color:#ff5a5a;border-color:#ff5a5a}.sell:hover{background:#ff5a5a!important}#elev-buttons{grid-template-columns:repeat(3,3em);gap:.4em;padding:.8em;display:grid}.elev-btn{aspect-ratio:1;border-radius:50%;padding:0}#summary{text-align:center;width:56%;padding:1em 1.4em}#summary h1,#join h1{color:#d4af37;margin:0 0 .4em;font-size:2.4em;font-weight:400}#sum-title.fired,#sum-title.arrested{color:#ff5a5a}#sum-title.promoted,#sum-title.won{color:#3cff8f}.sum-row{justify-content:space-between;font-size:1.3em;display:flex}#raid{color:#fff;text-align:center;pointer-events:none;background:#c0392b;padding:.1em .5em;font-size:1.3em;animation:.6s steps(2,end) infinite flash;position:absolute;top:23.7%;left:0;right:0}@keyframes flash{50%{background:#1f3a8a}}#volume{z-index:3;background:#0c0e12d9;align-items:center;gap:.5em;padding:.1em .5em;display:flex;position:absolute;bottom:.5em;right:.5em}#volume input{accent-color:#d4af37;border:0;width:7em;padding:0}#join,#lobby{text-align:center;background:#080a0d9e;flex-direction:column;justify-content:center;align-items:center;gap:.6em;padding:0 20%;display:flex;position:absolute;inset:0}#join h1{text-shadow:.08em .08em #5a3a10;font-size:3.4em}#lobby h1{color:#d4af37;margin:0;font-size:2.6em;font-weight:400}#lobby-code{color:#3cff8f;letter-spacing:.15em}#lobby p{margin:0}#lobby-players{flex-wrap:wrap;justify-content:center;gap:.8em;min-height:4.2em;display:flex}.trader{background:#2c333dcc;flex-direction:column;align-items:center;padding:.3em .6em;display:flex}.trader.me{outline:.2cqw solid #d4af37}.trader canvas{width:2.4em;image-rendering:pixelated}.picker{align-items:center;gap:1em;display:flex}#outfit-preview{width:5em;image-rendering:pixelated;background:#2c333dcc;padding:.3em}#lobby-start{color:#3cff8f;border-color:#3cff8f;font-size:1.3em}#lobby-start:hover{color:#14171b;background:#3cff8f}#join p{margin:0}#join label{align-items:center;gap:.6em;display:flex}#join input{text-transform:uppercase;width:9em}#join #join-room{text-align:center;width:4.5em}#join-error{color:#ff5a5a;min-height:1.1em}
