:root{color-scheme:dark;--bg: #0e1116;--bg-2: #161b22;--bg-3: #1f2630;--line: #2a313a;--fg: #e6edf3;--fg-dim: #9aa4b2;--accent: #5aa9ff;--accent-fg: #06121f;--danger: #ff7a7a;--ok: #5fdb8c;--warn: #f0c674;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif}*{box-sizing:border-box}html,body,#root{height:100%;margin:0;background:var(--bg);color:var(--fg);font-size:14px}button{font:inherit;background:var(--bg-3);color:var(--fg);border:1px solid var(--line);border-radius:4px;padding:4px 10px;cursor:pointer}button:hover:not(:disabled){background:var(--line)}button:disabled{opacity:.5;cursor:not-allowed}button.primary{background:var(--accent);color:var(--accent-fg);border-color:var(--accent);font-weight:600}button.primary:hover:not(:disabled){filter:brightness(1.1)}button.danger{color:var(--danger);border-color:var(--danger);background:transparent}button.danger:hover:not(:disabled){background:#ff7a7a1f}input,select,textarea{font:inherit;background:var(--bg);color:var(--fg);border:1px solid var(--line);border-radius:4px;padding:6px 8px}input:focus,select:focus,textarea:focus{outline:2px solid var(--accent);outline-offset:-2px}a{color:var(--accent)}.app{display:grid;grid-template-columns:240px 1fr 280px;grid-template-rows:44px 1fr 56px;grid-template-areas:"header header header" "sidebar main rail" "sidebar prompt rail";height:100dvh}@supports not (height: 100dvh){.app{height:100vh}}.header-mobile-toggle{display:none}.header{grid-area:header;display:flex;align-items:center;gap:12px;padding:0 14px;border-bottom:1px solid var(--line);background:var(--bg-2)}.header h1{font-size:15px;margin:0;letter-spacing:.5px;font-weight:600}.header .spacer{flex:1}.header .name{font-size:13px;color:var(--fg-dim)}.header .name-button{background:transparent;border:none;padding:2px 4px;border-radius:4px;cursor:pointer;font:inherit}.header .name-button:hover{background:var(--bg-3);color:var(--fg)}.header .header-admin-link{font-size:11px;color:var(--fg-dim);text-decoration:none;padding:2px 8px;border-radius:999px;border:1px solid var(--line);background:var(--bg-3);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.header .header-admin-link:hover{color:var(--fg);border-color:var(--fg-dim)}.header .header-pill{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:11px;padding:2px 8px;border-radius:999px;background:var(--bg-3);color:var(--fg-dim);border:1px solid var(--line);cursor:pointer;text-decoration:none}.header .header-pill:hover{color:var(--fg);border-color:var(--fg-dim)}.header .header-pill.usage{display:inline-flex;flex-direction:column;align-items:stretch;padding:3px 8px 4px;gap:2px}.header .header-pill.usage .usage-text{line-height:1.2}.header .header-pill.usage .usage-mode{color:var(--accent);font-size:9px;letter-spacing:.4px;margin-left:4px}.header .header-pill.usage .usage-bar.bottom{width:100%;height:4px;border-radius:999px;overflow:hidden}.usage-bar{position:relative;width:36px;height:6px;border-radius:999px;background:var(--bg-1);overflow:hidden;flex-shrink:0}.usage-bar.wide{width:100%;height:8px;margin:4px 0}.usage-bar-fill{display:block;height:100%;background:var(--ok);transition:width .4s ease}.usage-bar.over .usage-bar-fill{background:var(--warn)}.header .header-pill.usage.over{color:var(--warn);border-color:var(--warn)}.header .header-pill.byok{color:var(--ok);border-color:#5fdb8c66}.header .name .authed-badge{display:inline-block;margin-left:4px;color:var(--ok);font-size:11px;cursor:help}.sidebar{grid-area:sidebar;border-right:1px solid var(--line);background:var(--bg-2);display:flex;flex-direction:column;min-height:0;overflow:hidden}.sidebar h2{font-size:11px;text-transform:uppercase;letter-spacing:1px;color:var(--fg-dim);margin:12px 14px 6px;font-weight:600}.sidebar .games{flex:1;overflow-y:auto;padding:0 6px 8px}.sidebar .game-row{display:flex;align-items:center;gap:6px;padding:6px 8px;border-radius:4px;cursor:pointer;color:var(--fg)}.sidebar .game-row:hover{background:var(--bg-3)}.sidebar .game-row.active{background:var(--bg-3);border:1px solid var(--line)}.sidebar .game-row .name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar .game-row .row-icons{display:inline-flex;align-items:center;gap:2px;flex-shrink:0}.sidebar .game-row .row-icon{background:transparent;border:none;color:var(--fg-dim);padding:4px 8px;font-size:16px;font-family:inherit;cursor:pointer;border-radius:4px;line-height:1}.sidebar .game-row .row-icon:hover{background:var(--bg-2);color:var(--fg)}.sidebar .game-row .row-icon.danger:hover{background:#ff5a5a26;color:var(--warn)}@media(hover:hover){.sidebar .game-row .row-icons{opacity:0;transition:opacity .1s ease}.sidebar .game-row:hover .row-icons{opacity:1}}.sidebar .rename-input{flex:1;font:inherit;font-size:13px;padding:2px 4px;border:1px solid var(--line);border-radius:3px;background:var(--bg-1);color:var(--fg);min-width:0}.sidebar .new{padding:10px 14px;border-top:1px solid var(--line);display:flex;flex-direction:column;gap:6px}.sidebar .new>label{font-size:11px;text-transform:uppercase;color:var(--fg-dim);letter-spacing:.6px}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.sidebar .new-runtime{display:flex;flex-direction:column;gap:4px;border:0;margin:2px 0 0;padding:0}.sidebar .runtime-opt{display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;align-items:baseline;column-gap:8px;padding:6px 8px;border:1px solid var(--line);border-radius:4px;cursor:pointer;transition:background 80ms,border-color 80ms}.sidebar .runtime-opt:hover{background:#ffffff08}.sidebar .runtime-opt.active{background:#508cdc1a;border-color:#508cdc8c}.sidebar .runtime-opt input[type=radio]{grid-row:1 / 3;grid-column:1;margin:0;align-self:center}.sidebar .runtime-label{font-size:13px;color:var(--fg);text-transform:none;letter-spacing:0;grid-row:1;grid-column:2}.sidebar .runtime-hint{font-size:11px;color:var(--fg-dim);text-transform:none;letter-spacing:0;grid-row:2;grid-column:2}.main{grid-area:main;background:#000;display:flex;flex-direction:column;min-height:0;min-width:0;overflow:hidden}.main .placeholder{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--fg-dim);text-align:center;padding:32px;gap:8px}.main .placeholder.onboarding{gap:18px;max-width:540px;margin:0 auto}.main .placeholder.onboarding h2{font-size:24px;color:var(--fg);margin:0;font-weight:600}.main .placeholder.onboarding p{margin:0;font-size:14px;line-height:1.5}.main .placeholder.onboarding .cta{font-size:14px;padding:10px 24px;margin-top:6px}.main .placeholder.onboarding .onboarding-fineprint{font-size:12px;color:var(--fg-dim);margin-top:8px}.main iframe{flex:1 1 auto;width:100%;min-height:0;border:0;background:#000}.main .game-header{flex:0 0 auto;display:flex;align-items:center;gap:8px;padding:6px 10px;background:var(--bg-2);border-bottom:1px solid var(--line)}.main .game-header .title{font-weight:600;font-size:13px}.main .game-header .spacer{flex:1}.main .game-header .reset-session{font-size:11px;padding:4px 8px;color:var(--fg-dim);border-color:transparent;background:transparent}.main .game-header .reset-session:hover{color:var(--warn);border-color:var(--line)}.rail{grid-area:rail;border-left:1px solid var(--line);background:var(--bg-2);display:flex;flex-direction:column;min-height:0;overflow:hidden}.rail .section{border-bottom:1px solid var(--line);display:flex;flex-direction:column;min-height:0}.rail .section.players{flex:0 0 auto;max-height:30%}.rail .section.tasks,.rail .section.history{flex:1}.player-row{display:flex;align-items:center;gap:8px;padding:4px 0;font-size:13px}.player-row .dot{width:8px;height:8px;border-radius:50%;background:var(--ok);flex-shrink:0}.player-row .name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.player-row .tag{font-size:10px;text-transform:uppercase;letter-spacing:.5px;color:var(--warn);border:1px solid var(--warn);border-radius:999px;padding:1px 6px}.rail .section h2{font-size:11px;text-transform:uppercase;letter-spacing:1px;color:var(--fg-dim);margin:0;padding:10px 14px 6px;font-weight:600;display:flex;align-items:center;gap:6px}.rail .section h2 .badge{background:var(--bg-3);color:var(--fg);border-radius:999px;padding:1px 8px;font-size:10px;letter-spacing:0;text-transform:none}.rail .section h2 button{text-transform:none;letter-spacing:0}.rail .section .body{flex:1;overflow-y:auto;padding:0 12px 10px;font-size:13px}.req{border:1px solid var(--line);border-radius:4px;margin-bottom:8px;background:var(--bg)}.req .req-head{padding:6px 8px;font-size:12px;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:6px}.req .req-head .by{color:var(--fg-dim)}.req .req-head .status{font-size:10px;padding:1px 6px;border-radius:999px;text-transform:uppercase;letter-spacing:.5px}.req .req-head .status.queued{background:var(--bg-3);color:var(--fg-dim)}.req .req-head .status.running{background:#5aa9ff33;color:var(--accent)}.req .req-head .status.done{background:#5fdb8c2e;color:var(--ok)}.req .req-head .status.failed{background:#ff7a7a2e;color:var(--danger)}.req .prompt{padding:6px 8px;font-size:12px;color:var(--fg);font-style:italic;border-bottom:1px solid var(--line)}.req .tasks{list-style:none;margin:0;padding:4px 0}.req .tasks li{display:flex;gap:8px;align-items:flex-start;padding:3px 10px;font-size:13px}.req .tasks li .glyph{width:14px;flex-shrink:0;text-align:center}.req .tasks li.done .glyph{color:var(--ok)}.req .tasks li.running .glyph{color:var(--accent)}.req .tasks li.failed .glyph{color:var(--danger)}.req .tasks li.pending .glyph{color:var(--fg-dim)}.req .tasks li .detail{color:var(--fg-dim);font-size:11px}.req .duration{color:var(--fg-dim);font-size:11px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-style:normal;margin-left:4px}.req .req-head .debug-icon{margin-left:auto;padding:2px 8px;background:transparent;color:var(--fg-dim);border:1px solid var(--line);border-radius:4px;cursor:pointer;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;line-height:1;display:inline-flex;align-items:center;gap:4px}.req .req-head .debug-icon .debug-glyph{font-size:18px;line-height:1}.req .req-head .debug-icon .debug-count{font-size:11px}.req .req-head .debug-icon:hover{color:var(--fg);border-color:var(--fg-dim);background:var(--bg-3)}.main.debug-view{display:flex;flex-direction:column;overflow:hidden;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.debug-head{flex:0 0 auto;padding:8px 12px;background:var(--bg-2);border-bottom:1px solid var(--line);display:flex;flex-direction:column;gap:6px}.debug-head .debug-head-row{display:flex;align-items:center;gap:8px}.debug-head .ghost{background:transparent;border:1px solid var(--line);color:var(--fg);font-size:12px;padding:3px 10px;border-radius:4px;cursor:pointer}.debug-head .ghost:hover{background:var(--bg-3)}.debug-filter{flex:1;padding:4px 8px;background:var(--bg);border:1px solid var(--line);color:var(--fg);font-family:inherit;font-size:12px;border-radius:3px}.debug-body{flex:1 1 auto;min-height:0;overflow-y:auto;padding:8px 12px;background:var(--bg)}.debug-call{border:1px solid var(--line);border-radius:4px;margin-bottom:6px;background:var(--bg-2)}.debug-call.open{border-color:var(--fg-dim)}.debug-call-head{display:flex;width:100%;gap:12px;padding:8px 10px;background:transparent;border:0;color:var(--fg);font-family:inherit;font-size:12px;cursor:pointer;text-align:left;align-items:center}.debug-call-head:hover{background:var(--bg-3)}.debug-call-head .ix{color:var(--fg-dim);width:56px}.debug-call-head .when{color:var(--fg-dim);width:64px}.debug-call-head .model{color:var(--accent);width:140px}.debug-call-head .latency{color:var(--warn);width:64px;font-variant-numeric:tabular-nums}.debug-call-head .tools{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--fg-dim)}.debug-call-head .usage{color:var(--fg-dim);width:100px;text-align:right;font-variant-numeric:tabular-nums}.debug-call-head .cost{color:var(--ok);width:64px;text-align:right;font-variant-numeric:tabular-nums}.debug-call-head .caret{width:12px;color:var(--fg-dim)}.debug-call-body{border-top:1px solid var(--line);padding:10px;background:var(--bg)}.debug-call-panes{display:grid;grid-template-columns:1fr 1fr;gap:12px}@media(max-width:1100px){.debug-call-panes{grid-template-columns:1fr}}.debug-call-panes .pane summary{color:var(--fg-dim);cursor:pointer;padding:2px 0;font-size:12px}.debug-call-panes .pane pre{margin:6px 0 0;padding:8px;background:var(--bg-2);border:1px solid var(--line);border-radius:3px;font-size:11px;max-height:60vh;overflow:auto;white-space:pre-wrap;word-break:break-word}.json .json-key{color:#79c0ff}.json .json-str{color:#a5d6ff}.json .json-num{color:#f0c674}.json .json-bool{color:#ff7b72}.json .json-null{color:#d2a8ff}.debug-tabs{display:flex;gap:0;border:1px solid var(--line);border-radius:4px;overflow:hidden}.debug-tabs button{background:transparent;border:0;border-radius:0;color:var(--fg-dim);font-size:12px;padding:4px 12px;cursor:pointer}.debug-tabs button:hover{background:var(--bg-3);color:var(--fg)}.debug-tabs button.active{background:var(--accent);color:var(--accent-fg);font-weight:600}.debug-tabs button+button{border-left:1px solid var(--line)}.debug-body.transcript{padding:12px}.turn{border:1px solid var(--line);border-radius:4px;margin-bottom:8px;background:var(--bg-2)}.turn-agent{border-left:3px solid var(--fg-dim)}.turn-llm{border-left:3px solid var(--accent)}.turn-head{display:flex;align-items:center;gap:10px;padding:6px 10px;font-size:12px;border-bottom:1px solid var(--line)}.turn-head .who{font-weight:600}.turn-agent .turn-head .who{color:var(--fg)}.turn-llm .turn-head .who{color:var(--accent)}.turn-head .when{color:var(--fg-dim);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.turn-head .delta{color:var(--warn);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:11px}.turn-head .meta{margin-left:auto;display:flex;align-items:center;gap:10px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:11px}.turn-head .meta-model{color:var(--accent)}.turn-head .meta-usage{color:var(--fg-dim);display:inline-flex;align-items:center;gap:5px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.turn-head .meta-usage .tok-arrow{font-size:14px;line-height:1;color:var(--fg-dim)}.turn-head .meta-usage .tok-llm{font-size:11px;color:var(--accent);font-weight:600;letter-spacing:.5px}.turn-head .meta-usage .tok-num.in,.turn-head .meta-usage .tok-num.out{color:var(--fg)}.turn-head .meta-cost{color:var(--ok)}.turn-head .meta-retry{border:1px solid var(--line);border-radius:4px;padding:1px 7px;font-size:10px;letter-spacing:.4px;text-transform:uppercase}.turn-head .meta-retry.retry-ok{color:var(--ok);border-color:var(--ok)}.turn-head .meta-retry.retry-recovered{color:var(--warn);border-color:var(--warn)}.turn-head .meta-retry.retry-unrecovered{color:var(--danger);border-color:var(--danger)}.turn-head .hist-toggle{background:transparent;border:1px solid var(--line);border-radius:4px;padding:1px 8px;font-family:inherit;font-size:11px;cursor:pointer}.turn-head .hist-toggle.kept{color:var(--fg-dim)}.turn-head .hist-toggle.dropped{color:var(--warn)}.turn-head .hist-toggle.active{background:var(--bg-3);color:var(--fg)}.turn-head .hist-toggle:hover{background:var(--bg-3)}.turn-body{padding:4px 0}.history-section{border-left:3px solid var(--line);margin:4px 8px 6px;background:var(--bg);opacity:.85}.history-section.kept{border-left-color:var(--fg-dim)}.history-section.dropped{border-left-color:var(--warn)}.history-section-label{padding:4px 12px 2px;font-size:10px;text-transform:uppercase;letter-spacing:.6px;color:var(--fg-dim)}.history-section.dropped .history-section-label{color:var(--warn)}.entry{border-top:1px dotted var(--line)}.entry:first-child{border-top:0}.entry.dim{opacity:.75}.entry-echoed{opacity:.55;border-left:2px dashed var(--line);margin-left:-2px;padding-left:6px}.entry-echoed:hover{opacity:.85}.entry-head{display:flex;align-items:center;gap:10px;width:100%;background:transparent;border:0;color:var(--fg);text-align:left;font-family:inherit;font-size:12px;padding:5px 10px;cursor:pointer}.entry-head:hover{background:var(--bg-3)}.entry-label{display:flex;align-items:center;gap:6px;width:200px;flex-shrink:0;font-size:10px}.entry-label .role{display:inline-block;padding:1px 6px;border-radius:3px;font-size:9px;text-transform:uppercase;letter-spacing:.6px;font-weight:600;flex-shrink:0}.entry-label .role-system{background:#f0c6742e;color:var(--warn)}.entry-label .role-user{background:#5fdb8c29;color:var(--ok)}.entry-label .role-model{background:#5aa9ff2e;color:var(--accent)}.entry-label .descriptor{color:var(--fg-dim);text-transform:lowercase;letter-spacing:.3px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.entry .tool-name{color:var(--accent);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-weight:600}.entry-preview{flex:1;min-width:0;color:var(--fg-dim);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.entry .caret{color:var(--fg-dim);width:12px;flex-shrink:0}.entry-preview.task-updates{display:inline-flex;flex-wrap:wrap;gap:10px;color:var(--fg);white-space:normal;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.entry-preview.task-updates .task-update{display:inline-flex;align-items:center;gap:5px}.entry-preview.task-updates .task-sep{color:var(--fg-dim)}.entry-preview.task-updates .task-update .glyph{font-size:15px;width:14px;text-align:center;flex-shrink:0;line-height:1}.entry-preview.task-updates .task-update .title{font-size:12px}.entry-preview.task-updates .task-update.done .glyph{color:var(--ok)}.entry-preview.task-updates .task-update.running .glyph{color:var(--accent)}.entry-preview.task-updates .task-update.failed .glyph{color:var(--danger)}.entry-preview.task-updates .task-update.pending .glyph{color:var(--fg-dim)}.task-spinner{display:inline-block;width:11px;height:11px;border:2px solid var(--accent);border-top-color:transparent;border-radius:50%;animation:task-spin .9s linear infinite;vertical-align:-1px}@keyframes task-spin{to{transform:rotate(360deg)}}.entry-text{margin:0;padding:8px 14px 10px;background:var(--bg);border-top:1px solid var(--line);font-size:12px;white-space:pre-wrap;word-break:break-word}.entry .json{margin:0;padding:8px 14px 10px;background:var(--bg);border-top:1px solid var(--line);font-size:11px;max-height:60vh;overflow:auto;white-space:pre-wrap;word-break:break-word}.tool-spec-list{margin:0;padding:6px 14px 10px;list-style:none;font-size:12px;border-top:1px solid var(--line);background:var(--bg)}.tool-spec-list li{padding:2px 0}.tool-spec-list code{color:var(--accent)}.tool-spec-list .desc{color:var(--fg-dim)}.entry.tool-result.err .entry-preview{color:var(--danger)}.entry .entry-head.as-row{display:flex;align-items:center;gap:10px;padding:5px 10px;font-size:12px}.entry.error{background:#ff7a7a0f}.entry.error .entry-preview{color:var(--danger)}.entry.tool-result .entry-preview.args{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis}.entry.tool-result .entry-preview.status{flex:0 0 auto;color:var(--fg-dim)}.tool-result-body{border-top:1px solid var(--line);background:var(--bg)}.tool-result-body .yaml,.tool-result-body .plain-text{margin:0;padding:8px 14px 10px;font-size:12px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;white-space:pre-wrap;word-break:break-word;color:var(--fg)}.tool-result-body .yaml+.plain-text{border-top:1px dotted var(--line)}.tool-result-body .yaml{color:#c9d1d9}.tool-result-body .plain-text{color:var(--fg)}.tool-result-body .empty{padding:8px 14px}.diff{border-top:1px solid var(--line);background:var(--bg);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.diff-path{display:flex;align-items:baseline;gap:10px;padding:6px 14px;font-size:11px;color:var(--fg-dim);border-bottom:1px dotted var(--line)}.diff-path .diff-flag{color:var(--accent)}.diff-path .diff-stat{margin-left:auto;display:inline-flex;gap:8px}.diff-path .diff-stat-add{color:#98c379}.diff-path .diff-stat-del{color:#e06c75}.diff-body{margin:0;padding:4px 0;font-size:11px;max-height:60vh;overflow:auto;white-space:normal}.diff-line{display:flex;align-items:flex-start;padding:0 14px;white-space:pre-wrap;word-break:break-word}.diff-line.add{background:#98c3791f;color:#b8e0a3}.diff-line.del{background:#e06c7524;color:#f4a8ae}.diff-line.context{color:var(--fg-dim)}.diff-line .diff-marker{flex:0 0 14px;text-align:center;-webkit-user-select:none;user-select:none;opacity:.7}.diff-line .diff-text{flex:1;min-width:0;white-space:pre-wrap}.req .err{padding:6px 10px;font-size:12px;color:var(--danger);border-top:1px solid var(--line)}.req .err.err-warn{color:var(--warn)}.req .err.err-info{color:var(--fg-dim)}.req .err strong{font-weight:600}.req .err .err-action{color:var(--fg-dim);font-weight:400}.send-error{display:flex;align-items:center;gap:10px;padding:8px 14px;font-size:12px;border-top:1px solid var(--line);background:var(--bg-2)}.send-error-error{background:#ff7a7a14;color:var(--danger)}.send-error-warn{background:#f0c6741a;color:var(--warn)}.send-error-info{background:var(--bg-2);color:var(--fg-dim)}.send-error-text{flex:1;min-width:0}.send-error-text strong{font-weight:600}.send-error-action{color:var(--fg-dim);font-weight:400}.send-error-error .send-error-action{color:#ff7a7ab3}.send-error-warn .send-error-action{color:#f0c674d9}.send-error-close{background:transparent;border:0;color:inherit;font-size:18px;line-height:1;cursor:pointer;opacity:.6;padding:0 4px}.send-error-close:hover{opacity:1}.spectator-banner{padding:8px 14px;font-size:12px;color:var(--fg-dim);border-top:1px solid var(--line);background:var(--bg-2)}.spectator-banner code{background:var(--bg-3);padding:1px 4px;border-radius:3px;font-size:11px}.spectator-banner.seed-banner{display:flex;align-items:center;gap:12px;border-left:3px solid var(--ok)}.spectator-banner.seed-banner span{flex:1}.games-section-label{padding:10px 14px 4px;font-size:10px;color:var(--fg-dim);text-transform:uppercase;letter-spacing:.6px;font-weight:600}.game-row .seed-badge{font-size:12px;margin-right:4px;flex-shrink:0}.history-row{padding:6px 0;font-size:12px;border-bottom:1px dotted var(--line)}.history-row .sha{color:var(--fg-dim);font-family:monospace;font-size:11px}.history-row .msg{color:var(--fg)}.history-row .when{color:var(--fg-dim);font-size:11px}.history-row .row{display:flex;align-items:center;gap:6px;margin-top:2px}.agent-log{padding:4px 10px 6px;font-size:11px;color:var(--fg-dim);font-family:ui-monospace,SF Mono,monospace;border-top:1px dotted var(--line);white-space:pre-wrap;word-break:break-word}.agent-log div{padding:1px 0}.prompt-bar{grid-area:prompt;border-top:1px solid var(--line);display:flex;gap:6px;padding:8px 14px;background:var(--bg-2);align-items:center}.prompt-bar input{flex:1;padding:8px 10px}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:100}.modal{background:var(--bg-2);border:1px solid var(--line);border-radius:6px;padding:16px 18px;width:320px;display:flex;flex-direction:column;gap:10px}.modal h3{margin:0 0 4px;font-size:14px}.modal p{margin:0;color:var(--fg-dim);font-size:12px}.modal .row{display:flex;gap:8px;justify-content:flex-end}.modal.settings-modal{width:min(440px,92vw);max-height:90vh;overflow-y:auto}.modal.settings-modal h4{margin:0;font-size:12px;text-transform:uppercase;letter-spacing:.5px;color:var(--fg-dim)}.settings-row{display:flex;flex-direction:column;gap:4px;font-size:13px}.settings-row>span:first-child{color:var(--fg-dim);font-size:11px}.settings-row.settings-checkbox{flex-direction:row;align-items:center;gap:8px;font-size:12px;color:var(--fg)}.settings-row.settings-checkbox>span:first-child{color:var(--fg);font-size:12px;text-transform:none;letter-spacing:0}.settings-section{display:flex;flex-direction:column;gap:6px;padding:10px;background:var(--bg);border:1px solid var(--line);border-radius:4px}.settings-hint{color:var(--fg-dim);font-size:11px;line-height:1.4;margin:0}.settings-hint.inline{display:inline}.settings-benefits{color:var(--fg-dim);font-size:11px;line-height:1.5;margin:6px 0 8px;padding-left:18px}.settings-benefits li{margin:2px 0}.settings-benefits strong{color:var(--fg)}.settings-benefits code{background:var(--bg-3);padding:1px 4px;border-radius:3px}.settings-key-row{display:flex;gap:6px;align-items:center;font-size:12px}.settings-key-label{width:80px;flex-shrink:0;color:var(--fg-dim);font-size:11px}.settings-key-row input{flex:1;min-width:0;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:11px}.settings-key-row .ghost{font-size:11px;padding:4px 8px;background:transparent;color:var(--fg-dim);border:1px solid var(--line);border-radius:4px;cursor:pointer}.settings-key-row .ghost:hover{color:var(--fg)}.settings-key-row .ghost.danger{color:var(--danger);border-color:var(--danger)}.modal.settings-modal .err{background:#ff7a7a1a;border:1px solid rgba(255,122,122,.3);color:var(--danger);padding:6px 10px;border-radius:4px;font-size:12px}.settings-account{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:13px}.settings-account strong{color:var(--ok)}.empty{color:var(--fg-dim);font-size:12px;padding:8px 0}@media(max-width:720px){.app{grid-template-columns:1fr;grid-template-rows:44px 1fr 56px;grid-template-areas:"header" "main" "prompt"}.header-mobile-toggle{display:inline-block;background:transparent;border:1px solid var(--line);color:var(--fg);font-size:16px;padding:2px 10px;border-radius:4px;line-height:1;cursor:pointer}.header-mobile-toggle.hamburger{font-size:18px;padding:0 10px}.header-mobile-toggle.rail-toggle.active{background:var(--bg-3)}.sidebar{grid-area:unset;position:fixed;top:44px;left:0;bottom:0;width:min(280px,80vw);z-index:50;transform:translate(-100%);transition:transform .18s ease-out;border-right:1px solid var(--line)}.app.sidebar-open .sidebar{transform:translate(0)}.rail{grid-area:unset;position:fixed;left:0;right:0;bottom:0;top:44px;z-index:50;transform:translateY(100%);transition:transform .18s ease-out;border-left:0;border-top:1px solid var(--line)}.app.rail-open .rail{transform:translateY(0)}.mobile-backdrop{position:fixed;top:44px;right:0;bottom:0;left:0;background:#00000080;z-index:40}.main{grid-area:main}.prompt-bar{grid-area:prompt}.prompt-bar input{font-size:16px}.main .placeholder.onboarding h2{font-size:18px}.main .placeholder.onboarding p{font-size:13px}.debug-call-panes{grid-template-columns:1fr!important}.header{padding:0 8px;gap:6px}.header h1{font-size:14px}.header .name{font-size:11px}}.usage-page{padding:20px 24px;overflow:auto;color:var(--fg)}.usage-page-header{display:flex;align-items:baseline;gap:12px;margin-bottom:16px}.usage-page-header h2{margin:0;font-size:18px}.usage-page-header .muted{color:var(--fg-dim);font-size:12px}.usage-page-header .spacer{flex:1}.usage-window-toggle{display:inline-flex;border:1px solid var(--line);border-radius:6px;overflow:hidden}.usage-window-toggle button{padding:4px 10px;background:transparent;border:0;color:var(--fg-dim);font-size:12px;cursor:pointer;font-family:inherit}.usage-window-toggle button:hover{color:var(--fg)}.usage-window-toggle button.active{background:var(--bg-3);color:var(--fg)}.usage-window-toggle button+button{border-left:1px solid var(--line)}.usage-summary{display:flex;gap:12px;margin-bottom:16px;flex-wrap:wrap}.usage-stat{background:var(--bg-2);border:1px solid var(--line);border-radius:6px;padding:10px 14px;min-width:120px}.usage-stat-label{font-size:11px;color:var(--fg-dim);text-transform:uppercase;letter-spacing:.6px}.usage-stat-value{font-size:22px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.usage-table{width:100%;border-collapse:collapse;font-size:12px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.usage-table th,.usage-table td{text-align:left;padding:8px 10px;border-bottom:1px solid var(--line)}.usage-table th{color:var(--fg-dim);font-weight:600;font-size:10px;text-transform:uppercase;letter-spacing:.6px;font-family:inherit;cursor:help}.usage-table .muted{color:var(--fg-dim)}.usage-table .err-cell{color:var(--warn)}.usage-catalog{margin-top:24px}.usage-catalog summary{cursor:pointer;font-size:13px;font-weight:600;padding:8px 12px;background:var(--bg-2);border:1px solid var(--line);border-radius:6px;display:inline-block;-webkit-user-select:none;user-select:none}.usage-catalog summary:hover{border-color:var(--fg-dim)}.usage-catalog[open] summary{margin-bottom:8px}.usage-catalog p.muted{font-size:12px;margin:4px 0 8px}.usage-catalog a{color:var(--fg-dim)}.usage-catalog a:hover{color:var(--fg)}.room-log-drawer{border-top:1px solid var(--line);background:var(--bg-2);display:flex;flex-direction:column;flex:0 0 auto}.room-log-toggle{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:11px;text-align:left;background:transparent;border:0;color:var(--fg-dim);padding:4px 10px;cursor:pointer}.room-log-toggle:hover{color:var(--fg)}.room-log-tail{max-height:160px;overflow-y:auto;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:11px;line-height:1.45;padding:4px 10px 8px}.room-log-line{white-space:pre-wrap;word-break:break-word}.room-log-line.stdout{color:var(--fg-dim)}.room-log-line.stderr{color:#e06c75}.room-log-empty{color:var(--fg-dim);font-style:italic}
