:root{--ink:#f2efe6;--muted:#b9b6ab;--panel:#181a24e0;--edge:#0e0f15;--accent:#ffd94a;--danger:#ff8474;--team:#3f7fe0;color:var(--ink);font-family:Courier New,ui-monospace,monospace;font-size:14px}*{box-sizing:border-box}html,body{background:#9fd0ee;height:100%;margin:0;overflow:hidden}#scene{width:100%;height:100%;display:block;position:fixed;inset:0}#ui{pointer-events:none;position:fixed;inset:0}[hidden]{display:none!important}.panel{pointer-events:auto;background:var(--panel);border:3px solid var(--edge);padding:12px;box-shadow:0 4px #00000059}h1,h2,h3{letter-spacing:1px;text-transform:uppercase;margin:0 0 8px}h1{color:var(--accent);text-shadow:3px 3px 0 var(--edge);font-size:40px}h2{font-size:22px}h3{color:var(--accent);font-size:14px}p{margin:6px 0;line-height:1.4}.muted{color:var(--muted);font-size:12px}.error,.notice{color:var(--danger);min-height:1.2em}.label,label{text-transform:uppercase;letter-spacing:1px;color:var(--muted);margin-top:10px;font-size:11px;display:block}.row{align-items:center;gap:8px;display:flex}.row.between{justify-content:space-between;margin-top:8px}button{font:inherit;color:var(--ink);border:2px solid var(--edge);box-shadow:0 3px 0 var(--edge);cursor:pointer;background:#3a3d4f;padding:7px 12px}button:hover:not(:disabled){filter:brightness(1.15)}button:active:not(:disabled){box-shadow:0 1px 0 var(--edge);transform:translateY(2px)}button:disabled{opacity:.5;cursor:default}button:focus-visible,textarea:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--accent);outline-offset:1px}button.primary{background:#4f9a3d;font-weight:700}button.small{padding:2px 8px;font-size:11px}textarea,input,select{font:inherit;color:var(--ink);border:2px solid var(--edge);resize:vertical;background:#14151d;width:100%;padding:7px}label textarea,label select{text-transform:none;letter-spacing:0;margin-top:4px;font-size:13px}blockquote{border-left:4px solid var(--team);white-space:pre-wrap;overflow-wrap:anywhere;background:#14151d;margin:4px 0 8px;padding:6px 8px}.home{text-align:center;width:min(460px,92vw);position:absolute;top:14%;left:50%;transform:translate(-50%)}.home .tagline{margin-bottom:16px}.home .divider{color:var(--muted);text-transform:uppercase;margin:14px 0 8px;font-size:12px}.home .row{justify-content:center}.code-input{text-transform:uppercase;text-align:center;letter-spacing:4px;width:150px}.hud{position:absolute;inset:0}.topbar{align-items:center;gap:22px;padding:8px 14px;display:flex;position:absolute;top:10px;left:50%;transform:translate(-50%)}.topbar .middle{flex-direction:column;align-items:center;min-width:230px;display:flex}.turn{font-size:16px;font-weight:700}.phase{color:var(--accent)}.provider{color:var(--muted);font-size:10px}.side{min-width:190px}.side:last-child{text-align:right}.side .who{font-weight:700}.side:last-child .numbers{justify-content:flex-end}.chip{background:var(--team);border:2px solid var(--edge);width:10px;height:10px;margin-right:6px;display:inline-block}.away{color:var(--danger);margin-left:6px;font-size:11px}.numbers{align-items:center;gap:12px;margin-top:3px;display:flex}.balance{color:var(--accent);font-weight:700}.meter{border:2px solid var(--edge);vertical-align:middle;background:#14151d;width:70px;height:8px;margin-right:6px;display:inline-block}.meter span{background:var(--team);height:100%;display:block}.bottom{pointer-events:none;flex-direction:column;align-items:center;gap:6px;display:flex;position:absolute;bottom:18px;left:50%;transform:translate(-50%)}.bottom>*{pointer-events:auto}.ready{padding:10px 34px;font-size:18px}.ready-note,.notice{background:var(--panel);padding:2px 8px}.ready-note:empty,.notice:empty{display:none}.feed{text-align:center;width:min(520px,40vw);text-shadow:1px 1px 0 var(--edge), -1px -1px 0 var(--edge), 1px -1px 0 var(--edge), -1px 1px 0 var(--edge);font-size:12px;position:absolute;bottom:96px;left:50%;transform:translate(-50%)}.feed div:not(:last-child){opacity:.75}.banner{border:3px solid var(--edge);background:#8f2a22;padding:6px 14px;position:absolute;top:84px;left:50%;transform:translate(-50%)}.banner:empty{display:none}.left,.right{flex-direction:column;width:300px;display:flex;position:absolute;top:10px;bottom:10px}.left{left:10px}.right{right:10px}.left .panel,.right .panel{max-height:100%;overflow-y:auto}.classes{grid-template-columns:1fr 1fr;gap:6px;display:grid}.class-card{justify-content:space-between;padding:6px 8px;display:flex}.class-card.chosen{background:var(--team)}.class-card.unaffordable .cost{color:var(--danger)}.class-card .cost{color:var(--accent)}.role{min-height:2.8em}.stats,.counter{color:var(--muted);font-size:11px}.reason{min-height:1.3em}.agent-list{flex-direction:column;gap:4px;margin-bottom:10px;display:flex}.agent-row{text-align:left;grid-template-columns:1fr auto auto;gap:2px 8px;padding:5px 8px;display:grid}.agent-row.chosen{background:var(--team)}.agent-row .contact{grid-column:1/-1;font-size:11px}.contact.in{color:#9be38a}.contact.out{color:var(--muted)}.agent-row .cargo{color:var(--accent)}.agent-detail{border-top:3px solid var(--edge);padding-top:8px}.detail-head{justify-content:space-between;align-items:baseline;display:flex}.satchel{background:#00000040;margin-top:8px;padding:8px}.satchel textarea,.satchel button.primary{margin-top:6px}.carried{grid-template-columns:1fr auto;align-items:center;gap:2px 6px;display:grid}.carried blockquote{grid-column:1/-1}.decision{padding:2px 0;font-size:12px}.decision .when{width:52px;color:var(--muted);display:inline-block}.decision.failed{color:var(--danger)}.overlay{pointer-events:none;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.card{text-align:center;width:min(440px,92vw)}.card .row{justify-content:center;margin-top:10px}.card .link{text-align:center;margin:6px 0 10px}.code{color:var(--accent);letter-spacing:3px;font-size:16px}.end h2{color:var(--accent);font-size:34px}.compass{border-radius:50%;width:64px;height:64px;margin-left:150px;padding:0;position:absolute;bottom:18px;left:50%}.dial{width:100%;height:100%;color:var(--muted);font-size:11px;font-weight:700;position:relative}.dial span{text-align:center;width:14px;height:14px;line-height:14px;position:absolute}.dial .n{color:var(--danger);margin-left:-7px;font-size:14px;top:3px;left:50%}.dial .s{margin-left:-7px;bottom:3px;left:50%}.dial .e{margin-top:-7px;top:50%;right:4px}.dial .w{margin-top:-7px;top:50%;left:4px}.drawer-toggles{display:none}@media (width<=900px){.topbar{gap:6px;padding:6px 8px;font-size:12px;left:6px;right:6px;transform:none}.topbar .middle{text-align:center;flex:1;min-width:0}.side{min-width:0}.turn{font-size:13px}.provider{display:none}.meter{width:34px;margin-right:3px}.numbers{gap:6px}.drawer-toggles{pointer-events:none;justify-content:space-between;display:flex;position:absolute;bottom:10px;left:6px;right:6px}.drawer-toggles button{pointer-events:auto}.drawer-toggles button.chosen{background:var(--accent);color:var(--edge)}.bottom{bottom:10px}.drawer-toggles button,.ready{height:40px;padding:0 10px;font-size:13px}.drawer{justify-content:flex-end;width:auto;display:none;inset:70px 6px 62px}.drawer.open{display:flex}.feed{width:92vw;font-size:11px;bottom:96px}.banner{top:72px}.compass{width:52px;height:52px;margin-left:0;inset:70px 8px auto auto}.home{top:6%}h1{font-size:30px}}@media (pointer:coarse),(width<=900px){textarea,input,select,label textarea,label select{font-size:16px}}
