:root{--paper:#fff;--ink:#000;--ink-2:#4d545e;--ink-3:#8b929c;--rule:#e4e7eb;--rule-strong:#c9ced5;--hover:#f4f5f7;--magenta:#b0107a;--magenta-ink:#8f0d63;--magenta-tint:#fbeef6;--red:#c8102e;--sans:"Instrument Sans", system-ui, -apple-system, "Segoe UI", sans-serif;--shade:0 1px 2px #0009, 0 0 14px #00000047}*{box-sizing:border-box;scrollbar-width:thin;scrollbar-color:var(--rule-strong) transparent}html,body{height:100%;color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;-webkit-user-select:none;user-select:none;background:#000;margin:0;font-size:15px;overflow:hidden}#cesium{position:fixed;inset:0}#cesium .cesium-widget-credits{text-align:right;opacity:.8;font-size:10px;bottom:6px!important;left:auto!important;right:10px!important}#hud{pointer-events:none;z-index:5;width:100%;height:100%;position:fixed;inset:0}#ui{pointer-events:none;z-index:10;position:fixed;inset:0}#ui>*{pointer-events:auto}.hidden{display:none!important}button{cursor:pointer;font-family:inherit}button:focus-visible,select:focus-visible,input:focus-visible{outline:2px solid var(--magenta);outline-offset:2px}.sheet{background:var(--paper);color:var(--ink);border-radius:6px;box-shadow:0 18px 50px #0000004d,0 1px #0000000f}.sheet.center{max-width:calc(100vw - 32px);max-height:calc(100vh - 32px);padding:24px 28px 26px;position:fixed;top:50%;left:50%;overflow:auto;transform:translate(-50%,-50%)}.sheet-title{letter-spacing:-.015em;margin:0 0 14px;font-size:20px;font-weight:650}#menu{pointer-events:none;position:fixed;inset:0}#menu>*{pointer-events:auto}.kneeboard{flex-direction:column;width:min(420px,100vw - 32px);display:flex;position:absolute;top:16px;bottom:16px;left:16px;overflow:hidden}.sheet-head{border-bottom:1px solid var(--rule);padding:22px 24px 18px}.head-row{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.wordmark{letter-spacing:-.025em;margin:0;font-size:28px;font-weight:650;line-height:1}.online{color:var(--ink-2);white-space:nowrap;align-items:center;gap:7px;font-size:13px;display:inline-flex}.dot{background:var(--ink-3);border-radius:50%;width:7px;height:7px}.dot.on{background:#1f9d55}.tagline{color:var(--ink-2);margin:8px 0 0;font-size:15px;line-height:1.4}.note{color:#5b3a00;background:#fff6e0;border-left:3px solid #e0a100;margin:14px 0 0;padding:9px 12px;font-size:13px;line-height:1.45}.sheet-body{flex:1;min-height:0;padding-bottom:10px;overflow-y:auto}.sec{color:var(--ink-2);margin:20px 24px 6px;font-size:13px;font-weight:600}.list{flex-direction:column;display:flex}.row{width:100%;color:inherit;font:inherit;text-align:left;background:0 0;border:0;border-left:3px solid #0000;grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:1px 12px;padding:9px 24px 9px 21px;display:grid}.row:hover{background:var(--hover)}.row:focus-visible{outline-offset:-2px}.row.on{border-left-color:var(--magenta);background:var(--magenta-tint)}.row-title{font-size:15px;font-weight:600;line-height:1.3}.row-meta{color:var(--ink-2);font-variant-numeric:tabular-nums;white-space:nowrap;text-align:right;font-size:13px}.row-sub{color:var(--ink-2);text-overflow:ellipsis;white-space:nowrap;grid-column:1/-1;font-size:13px;line-height:1.35;overflow:hidden}.item.on{background:var(--magenta-tint);box-shadow:inset 3px 0 0 var(--magenta)}.item.on>.row:hover{background:0 0}.detail{padding:0 24px 14px}.desc{max-width:60ch;margin:4px 0 10px;font-size:14px;line-height:1.5}.spec{grid-template-columns:max-content 1fr;gap:4px 14px;margin:0;font-size:13px;line-height:1.4;display:grid}.spec dt{color:var(--ink-2)}.spec dd{margin:0}.tabs{border-bottom:1px solid var(--rule);gap:22px;margin:0 24px 4px;display:flex}.tab{font:500 14px var(--sans);color:var(--ink-2);background:0 0;border:0;border-bottom:2px solid #0000;margin-bottom:-1px;padding:8px 0 9px}.tab:hover{color:var(--ink)}.tab.on{color:var(--ink);border-bottom-color:var(--magenta)}.empty{color:var(--ink-2);margin:12px 24px;font-size:14px;line-height:1.45}.sheet-foot{border-top:1px solid var(--rule);padding:16px 24px 18px}.pilot{align-items:flex-end;gap:18px;display:flex}.field{flex-direction:column;flex:1;gap:5px;min-width:0;display:flex}.field-label{color:var(--ink-2);font-size:12px}.input{border:1px solid var(--rule-strong);width:100%;color:var(--ink);font:500 15px var(--sans);-webkit-user-select:text;user-select:text;background:#fff;border-radius:4px;padding:8px 10px}.input:focus{outline:2px solid var(--magenta);outline-offset:-1px;border-color:var(--magenta)}.swatches{grid-template-columns:repeat(4,16px);gap:7px 9px;padding-bottom:3px;display:grid}.swatch{border:0;border-radius:50%;width:16px;height:16px;padding:0;box-shadow:inset 0 0 0 1px #0000002e}.swatch.on{box-shadow:inset 0 0 0 1px #0000002e, 0 0 0 2px #fff, 0 0 0 3.5px var(--ink)}.foot-note{color:var(--ink-2);margin:14px 0 0;font-size:13px}.primary{background:var(--magenta);color:#fff;width:100%;font:600 15px var(--sans);text-align:center;border:0;border-radius:4px;margin-top:14px;padding:12px 16px;display:block}.primary:hover{background:var(--magenta-ink)}.primary:disabled{opacity:.5;cursor:default}.secondary{border:1px solid var(--rule-strong);width:100%;color:var(--ink);font:500 15px var(--sans);text-align:center;background:#fff;border-radius:4px;margin-top:8px;padding:11px 16px;display:block}.secondary:hover{border-color:var(--ink-3)}.links{gap:20px;margin-top:12px;display:flex}.link{font:500 14px var(--sans);color:var(--ink-2);text-decoration:underline;-webkit-text-decoration-color:var(--rule-strong);text-decoration-color:var(--rule-strong);text-underline-offset:3px;background:0 0;border:0;padding:0}.link:hover{color:var(--ink);text-decoration-color:currentColor}.form{margin:0 24px}.form-row{border-bottom:1px solid var(--rule);cursor:pointer;justify-content:space-between;align-items:center;gap:16px;padding:12px 0;font-size:15px;display:flex}.form-row>span:first-child{flex-direction:column;gap:2px;display:flex}.form-hint{color:var(--ink-2);font-size:12px}select{appearance:none;border:1px solid var(--rule-strong);color:var(--ink);font:500 14px var(--sans);cursor:pointer;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M1 1l4 4 4-4' fill='none' stroke='%234d545e' stroke-width='1.4'/%3E%3C/svg%3E") right 10px center no-repeat;border-radius:4px;padding:6px 30px 6px 10px}input[type=checkbox]{width:18px;height:18px;accent-color:var(--magenta);flex:none;margin:0}input[type=range]{width:150px;accent-color:var(--magenta)}#caption{text-align:right;color:#fff;text-shadow:var(--shade);pointer-events:none;position:absolute;bottom:44px;right:28px}.c-name{letter-spacing:-.015em;font-size:24px;font-weight:600}.c-meta{opacity:.9;font-variant-numeric:tabular-nums;margin-top:3px;font-size:13px}#killfeed{pointer-events:none;flex-direction:column;align-items:flex-end;gap:3px;display:flex;position:fixed;top:16px;right:20px}.kf{color:#fff;text-shadow:var(--shade);font-size:14px;font-weight:500;animation:.2s ease-out enter}.kf b{font-weight:600}.kf .w{color:#ffffffb8;margin:0 9px}#chat{pointer-events:none;flex-direction:column;gap:4px;width:min(420px,100vw - 44px);display:flex;position:fixed;bottom:calc(22vh + 70px);left:22px}#chat .lines{flex-direction:column;gap:2px;display:flex}#chat .line{color:#fff;text-shadow:var(--shade);word-break:break-word;-webkit-user-select:text;user-select:text;font-size:14px;line-height:1.4;animation:.2s ease-out enter}#chat .line b{margin-right:4px;font-weight:600}#chat .line.sys{color:#ffffffbf}#chat .line.fade{opacity:0;transition:opacity 1s}.chat-input{color:#fff;width:100%;font:500 14px var(--sans);pointer-events:auto;-webkit-user-select:text;user-select:text;background:#0000008c;border:1px solid #ffffff59;border-radius:4px;outline:none;margin-top:6px;padding:8px 10px}.chat-input::placeholder{color:#fff9}.chat-input:focus{border-color:#fff}#toast{text-align:center;color:#fff;text-shadow:var(--shade);pointer-events:none;opacity:0;transition:opacity .25s;position:fixed;top:16%;left:50%;transform:translate(-50%)}#toast.on{opacity:1}.t-title{letter-spacing:-.01em;font-size:22px;font-weight:600}.t-sub{opacity:.88;margin-top:4px;font-size:15px}#death{border-top:3px solid var(--red);width:min(380px,100vw - 32px)}.death-title{letter-spacing:-.015em;margin:0;font-size:22px;font-weight:650;line-height:1.25}.death-detail{color:var(--ink-2);margin:6px 0;font-size:15px;line-height:1.45}.hint{color:var(--ink-3);text-align:center;margin:12px 0 0;font-size:13px}.backdrop{background:#0000004d;place-items:center;padding:16px;display:grid;position:fixed;inset:0}#help .sheet{width:min(760px,100%);max-height:100%;padding:24px 28px 26px;overflow:auto}.keygrid{grid-template-columns:1fr 1fr;gap:0 32px;display:grid}.keyrow{border-bottom:1px solid var(--rule);justify-content:space-between;align-items:center;gap:12px;padding:7px 0;font-size:14px;display:flex}.keys{gap:4px;display:inline-flex}kbd{border:1px solid var(--rule-strong);min-width:24px;color:var(--ink);font:600 12px var(--sans);text-align:center;background:#fff;border-bottom-width:2px;border-radius:4px;padding:2px 7px}.help-note{max-width:70ch;color:var(--ink-2);margin:14px 0 0;font-size:13px;line-height:1.5}#scoreboard{width:min(560px,100vw - 32px)}.scores{border-collapse:collapse;width:100%;font-size:14px}.scores th{border-bottom:1px solid var(--ink);color:var(--ink-2);text-align:left;padding:0 10px 8px 0;font-size:12px;font-weight:600}.scores td{border-bottom:1px solid var(--rule);padding:8px 10px 8px 0}.scores .num{text-align:right;font-variant-numeric:tabular-nums;padding-right:0}.scores tr.me td{font-weight:650}.pdot{vertical-align:1px;border-radius:50%;width:8px;height:8px;margin-right:9px;display:inline-block}.muted{color:var(--ink-3)}#loading{z-index:20;color:#fff;background:#00000080;flex-direction:column;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.l-title{font-size:18px;font-weight:600}.l-sub{opacity:.8;font-variant-numeric:tabular-nums;min-height:1.3em;margin-top:4px;font-size:14px}.bar{background:#ffffff40;width:180px;height:2px;margin-top:16px;position:relative;overflow:hidden}.bar:after{content:"";background:#fff;width:30%;animation:1.2s ease-in-out infinite travel;position:absolute;top:0;bottom:0;left:0}@keyframes travel{0%{transform:translate(-100%)}to{transform:translate(340%)}}@keyframes enter{0%{opacity:0}}@media (prefers-reduced-motion:reduce){.bar:after{opacity:.6;width:100%;animation:none}.kf,#chat .line{animation:none}}@media (max-width:700px){.kneeboard{border-radius:0;width:100%;inset:0}#caption{display:none}.keygrid{grid-template-columns:1fr}}
