:root { --bg: #0a0b14; --bg-2: #11131f; --surface: rgba(255,255,255,0.03); --surface-strong: rgba(255,255,255,0.06); --surface-hi: rgba(255,255,255,0.09); --fg: rgba(255,255,255,0.92); --fg-2: rgba(255,255,255,0.72); --muted: rgba(255,255,255,0.48); --muted-2: rgba(255,255,255,0.28); --edge-hi: rgba(255,255,255,0.08); --edge-lo: rgba(0,0,0,0.35); --hairline: rgba(255,255,255,0.05); --hairline-strong: rgba(255,255,255,0.08); --accent: #a78bfa; --accent-2: #c4b5fd; --accent-glow: rgba(167,139,250,0.35); --accent-soft: rgba(167,139,250,0.12); --danger: #f87171; --danger-soft: rgba(248,113,113,0.12); --warn: #fbbf24; --warn-soft: rgba(251,191,36,0.14); --workflow: #f59e0b; --workflow-soft: rgba(245,158,11,0.12); --workflow-strong: rgba(245,158,11,0.28); --user-bubble: rgba(167,139,250,0.08); --user-bubble-border: rgba(167,139,250,0.18); --asst-bubble: rgba(255,255,255,0.025); --asst-bubble-border: rgba(255,255,255,0.06); --font-sans: -apple-system, BlinkMacSystemFont, 'Inter', 'Segoe UI', system-ui, sans-serif; --font-mono: ui-monospace, 'JetBrains Mono', 'IBM Plex Mono', 'SF Mono', Menlo, monospace; --text-xs: 11px; --text-sm: 12px; --text-base: 13px; --text-md: 14px; --row-h: 88px; --row-h-session: 64px; --row-h-compact: 28px; --col-sidebar: 220px; } * { box-sizing: border-box; margin: 0; padding: 0; } html, body { height: 100%; overflow: hidden; } body { color: var(--fg); font: var(--text-base)/1.4 var(--font-sans); -webkit-font-smoothing: antialiased; text-rendering: optimizeLegibility; background-color: var(--bg); background-image: radial-gradient(80% 60% at 100% 0%, rgba(236, 72, 153, 0.14), transparent 55%), radial-gradient(60% 50% at 50% 40%, rgba(167, 139, 250, 0.12), transparent 60%), radial-gradient(70% 60% at 0% 100%, rgba(99, 102, 241, 0.16), transparent 60%), linear-gradient(to bottom, var(--bg) 0%, var(--bg-2) 100%); } body::before { content: ''; position: fixed; inset: 0; pointer-events: none; z-index: 1; opacity: 0.3; background-image: url("data:image/svg+xml;utf8,"); mix-blend-mode: overlay; } button { font: inherit; color: inherit; background: none; border: 0; cursor: pointer; padding: 0; } button:disabled { cursor: not-allowed; } input { font: inherit; color: inherit; } ::selection { background: var(--accent-soft); color: var(--fg); } ::-webkit-scrollbar { width: 8px; height: 8px; } ::-webkit-scrollbar-track { background: transparent; } ::-webkit-scrollbar-thumb { background: rgba(255,255,255,0.08); border-radius: 4px; border: 2px solid transparent; background-clip: padding-box; } ::-webkit-scrollbar-thumb:hover { background: rgba(255,255,255,0.16); background-clip: padding-box; border: 2px solid transparent; } .titlebar { height: 32px; width: 100%; -webkit-app-region: drag; background: rgba(0,0,0,0.15); backdrop-filter: blur(20px); -webkit-backdrop-filter: blur(20px); border-bottom: 1px solid var(--hairline); flex-shrink: 0; z-index: 100; display: flex; align-items: center; justify-content: center; padding: 0 16px 0 78px; } .titlebar-text { font-size: var(--text-sm); color: var(--muted); font-weight: 500; letter-spacing: -0.005em; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; max-width: 100%; user-select: none; pointer-events: none; display: inline-block; } .titlebar-text .app-name { color: var(--fg-2); font-weight: 600; } .titlebar-text .sep { margin: 0 6px; color: var(--muted-2); } .titlebar-text .scope { color: var(--muted); } .titlebar-text .scope-leaf { color: var(--fg-2); font-family: var(--font-mono); font-size: 11.5px; } button, input, .row, .sidebar-item, .toolbar-btn, .row-action, .row-checkbox, .crumb, .provenance-link, .banner-action, .source-toggle, .anchor-link, .session-link, .msg-tool, .toolcall-toggle, .agent-indicator, .agent-row, .filter-toggle, .summary-toggle { -webkit-app-region: no-drag; } .app { position: relative; z-index: 2; height: 100vh; display: flex; flex-direction: column; } .columns { flex: 1; display: grid; grid-template-columns: var(--col-sidebar) 1fr; min-height: 0; }