*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--bg:#0d0d0d;--surface:#161616;--surface-2:#1f1f1f;--border:#2a2a2a;--text:#e8e8e8;--text-dim:#888;--text-muted:#555;--accent:#c8a96e;--accent-dim:#8a7048;--architect:#6e9fc8;--insurgent:#c86e6e;--stable:#6ec87a;--warning:#c8a96e;--danger:#c86e6e;--font:"Courier New", Courier, monospace}html,body{background:var(--bg);color:var(--text);font-family:var(--font);min-height:100vh;font-size:14px;line-height:1.6}#root{max-width:720px;margin:0 auto;padding:24px 16px}.role-select{flex-direction:column;gap:32px;padding-top:32px;display:flex}.title-block{text-align:center}.game-title{letter-spacing:.2em;color:var(--accent);font-size:28px;font-weight:400}.game-subtitle{color:var(--text-dim);letter-spacing:.15em;margin-top:4px;font-size:12px}.resume-block{text-align:center;color:var(--text-dim);flex-direction:column;align-items:center;gap:8px;display:flex}.resume-btn{background:var(--surface-2);border:1px solid var(--accent);color:var(--accent);font-family:var(--font);letter-spacing:.1em;cursor:pointer;padding:8px 20px;font-size:13px}.resume-btn:hover{background:var(--accent);color:var(--bg)}.or-label{color:var(--text-muted);font-size:11px}.role-grid{grid-template-columns:1fr 1fr;gap:16px;display:grid}@media (width<=540px){.role-grid{grid-template-columns:1fr}}.role-card{background:var(--surface);border:1px solid var(--border);color:var(--text);font-family:var(--font);text-align:left;cursor:pointer;flex-direction:column;gap:12px;padding:20px;transition:border-color .15s;display:flex}.role-card:hover{border-color:var(--accent)}.role-card-header{letter-spacing:.15em;color:var(--accent);font-size:13px}.role-card-body{color:var(--text-dim);font-size:12px;line-height:1.7}.role-card-fantasy{color:var(--text);border-top:1px solid var(--border);padding-top:10px;font-size:12px}.session-note{text-align:center;color:var(--text-muted);letter-spacing:.05em;font-size:11px}.session-layout{flex-direction:column;gap:16px;display:flex}.session-header{border-bottom:1px solid var(--border);align-items:baseline;gap:12px;padding-bottom:12px;display:flex}.session-label{letter-spacing:.2em;color:var(--text-muted);font-size:11px}.session-title{color:var(--accent);letter-spacing:.05em;flex:1;font-size:16px}.role-tag{letter-spacing:.15em;color:var(--text-muted);text-transform:uppercase;font-size:11px}.resource-strip{background:var(--surface);border:1px solid var(--border);flex-wrap:wrap;gap:12px 24px;padding:12px 16px;display:flex}.resource-item{align-items:center;gap:8px;display:flex}.resource-label{letter-spacing:.15em;color:var(--text-muted);min-width:72px;font-size:10px}.segment-bar{gap:2px;display:flex}.segment{width:10px;height:12px}.segment.filled{background:var(--accent)}.segment.empty{background:var(--border)}.standing-value{color:var(--text-dim);letter-spacing:.05em;font-size:12px}.region-list{background:var(--surface);border:1px solid var(--border)}.panel-header{letter-spacing:.2em;color:var(--text-muted);border-bottom:1px solid var(--border);padding:8px 16px;font-size:10px}.region-item{border-bottom:1px solid var(--border);justify-content:space-between;padding:8px 16px;font-size:12px;display:flex}.region-item:last-child{border-bottom:none}.region-name{color:var(--text)}.region-status{letter-spacing:.08em;font-size:11px}.status-secured .region-status{color:var(--stable)}.status-available .region-status,.status-unclaimed .region-status{color:var(--text-dim)}.status-rival_active .region-status{color:var(--warning)}.agent-briefing{background:var(--surface);border:1px solid var(--border)}.agent-line{border-bottom:1px solid var(--border);padding:14px 16px}.agent-line:last-child{border-bottom:none}.agent-id{align-items:baseline;gap:10px;margin-bottom:8px;display:flex}.agent-name{letter-spacing:.15em;color:var(--accent);font-size:12px}.agent-title{color:var(--text-muted);letter-spacing:.08em;font-size:10px}.agent-text{color:var(--text-dim);white-space:pre-line;font-size:13px;line-height:1.75}.decision-card{background:var(--surface);border:1px solid var(--border)}.options-list{flex-direction:column;display:flex}.option-btn{border:none;border-bottom:1px solid var(--border);color:var(--text);font-family:var(--font);text-align:left;cursor:pointer;background:0 0;align-items:flex-start;gap:16px;padding:14px 16px;transition:background .12s;display:flex}.option-btn:last-child{border-bottom:none}.option-btn:hover{background:var(--surface-2)}.option-key{color:var(--accent);min-width:20px;padding-top:1px;font-size:14px}.option-text{flex-direction:column;gap:4px;display:flex}.option-label{color:var(--text);letter-spacing:.04em;font-size:13px}.option-tradeoff{color:var(--text-muted);font-size:11px;line-height:1.5}.reaction-panel,.session-summary{background:var(--surface);border:1px solid var(--border)}.continue-btn{border:none;border-top:1px solid var(--border);width:100%;color:var(--accent);font-family:var(--font);letter-spacing:.15em;text-align:center;cursor:pointer;background:0 0;padding:14px 16px;font-size:12px;transition:background .12s;display:block}.continue-btn:hover{background:var(--surface-2)}.session-complete{text-align:center;flex-direction:column;gap:20px;padding-top:48px;display:flex}.complete-header{letter-spacing:.2em;color:var(--accent);font-size:20px}.complete-body{color:var(--text-dim);font-size:14px}.complete-note{color:var(--text-muted);font-size:12px}.complete-resources{color:var(--text-muted);letter-spacing:.08em;flex-wrap:wrap;justify-content:center;gap:24px;margin-top:8px;font-size:11px;display:flex}.reset-block{margin-top:8px}.reset-link{font-family:var(--font);letter-spacing:.1em;color:var(--text-muted);cursor:pointer;background:0 0;border:none;font-size:11px;text-decoration:underline}.reset-link:hover{color:var(--text-dim)}.reset-link.danger{color:var(--danger)}.reset-confirm{color:var(--text-muted);justify-content:center;align-items:center;gap:16px;font-size:11px;display:flex}
