*,*:before,*:after{box-sizing:border-box}html,body,#root{margin:0;padding:0;height:100%}body{font-family:system-ui,-apple-system,Segoe UI,sans-serif;background:var(--bg-0);color:var(--fg-1);-webkit-font-smoothing:antialiased}a{color:var(--accent-link);text-decoration:none}input,textarea,select{font:inherit;color:inherit;background:var(--bg-2);border:1px solid var(--border-1);border-radius:var(--r-md);padding:6px 8px}:root{--bg-0: #0f1115;--bg-1: #161a1f;--bg-2: #1d222a;--bg-3: #262c36;--bg-4: #303744;--bg-leader: #1d2a22;--bg-active: #3a2f1c;--border-1: #2a2f38;--border-2: #3a414d;--fg-1: #e8eaed;--fg-2: #b6bcc6;--fg-3: #7a828f;--fg-4: #555c66;--accent-leader: #7eea8a;--accent-active: #ffb04a;--accent-link: #6ab2ff;--accent-danger: #e35d6a;--accent-self: #6666aa;--status-ok: #88ff88;--status-error: #ff8888;--sp-1: 4px;--sp-2: 8px;--sp-3: 12px;--sp-6: 24px;--fs-xs: 10px;--fs-sm: 11px;--fs-md: 12px;--fs-base: 14px;--r-sm: 3px;--r-md: 4px}.btn{display:inline-flex;align-items:center;gap:var(--sp-1);height:28px;padding:0 var(--sp-3);font:inherit;font-size:var(--fs-md);font-weight:500;line-height:1;border:1px solid var(--border-1);border-radius:var(--r-md);background:var(--bg-3);color:var(--fg-1);cursor:pointer;white-space:nowrap;-webkit-user-select:none;user-select:none}.btn:disabled{opacity:.5;cursor:not-allowed}.btn:not(.btn-primary):not(.btn-ghost):not(.btn-danger):hover{background:var(--bg-4)}.btn-primary{color:var(--accent-leader);border-color:var(--accent-leader);background:transparent}.btn-primary:hover{background:#7eea8a1f}.btn-ghost{background:transparent;border-color:transparent;color:var(--fg-2)}.btn-ghost:hover{background:var(--bg-3)}.btn-danger{color:var(--accent-danger);border-color:var(--accent-danger);background:transparent}.btn-danger:hover{background:#e35d6a1f}.btn-icon{width:28px;padding:0;justify-content:center}.btn-flat{background:transparent;border-color:transparent}.btn-flat:hover{background:var(--bg-3);border-color:transparent}.btn-sm{height:22px;font-size:var(--fs-sm);padding:0 var(--sp-2)}.btn-sm.btn-icon{width:22px}.btn-list{width:100%;justify-content:flex-start}.btn-cell{height:auto;padding:0;background:transparent;border-color:var(--border-1);justify-content:center}.btn-cell:hover{background:var(--bg-3)}.chip{display:inline-flex;align-items:center;gap:var(--sp-1);padding:2px var(--sp-2);font-size:var(--fs-sm);border:1px solid var(--border-1);border-radius:var(--r-sm);background:var(--bg-3);color:var(--fg-2);-webkit-user-select:none;user-select:none}.chip-active{background:var(--bg-active);color:var(--accent-active);border-color:var(--accent-active)}.chip-leader{background:var(--bg-leader);color:var(--accent-leader);border-color:var(--accent-leader)}.chip-muted{background:#0000008c;color:var(--fg-3)}.chip-info{color:var(--accent-link);background:transparent;border-color:transparent}.toolbar{display:flex;align-items:center;gap:var(--sp-2);padding:0 var(--sp-3);height:40px;background:var(--bg-2);border-bottom:1px solid var(--border-1)}.toolbar-spacer{flex:1}.card{background:var(--bg-1);border:1px solid var(--border-1);border-radius:var(--r-md);padding:var(--sp-3)}.card h3{margin:0 0 var(--sp-2) 0;font-size:var(--fs-base)}.section-title{font-size:var(--fs-sm);color:var(--fg-3);text-transform:uppercase;letter-spacing:.5px;margin:0}.chip-row{display:grid;grid-template-columns:32px 140px 1fr auto;align-items:center;gap:var(--sp-2);padding:var(--sp-1) var(--sp-2);background:#ffffff09;border-radius:var(--r-sm);font-size:var(--fs-md);margin-bottom:3px}.chip-row:hover{background:var(--bg-2)}.chip-row--highlight,.chip-row--highlight:hover{background:var(--bg-active);outline:1px solid var(--accent-active)}.chip-row--self,.chip-row--self:hover{background:var(--bg-active);outline:1px solid var(--accent-self)}.chip-row__lead{display:flex;align-items:center;justify-content:flex-start;gap:var(--sp-1)}.chip-row__name{font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chip-row--child .chip-row__lead{padding-left:var(--sp-6)}.actor-row{background:#ffffff09}.actor-row:hover{background:var(--bg-2)}.actor-row--highlight,.actor-row--highlight:hover{background:var(--bg-active);outline:1px solid var(--accent-active)}.actor-row--self,.actor-row--self:hover{background:var(--bg-active);outline:1px solid var(--accent-self)}
