:root { --bg: #11161d; --panel: #171d25; --panel-2: #1d2530; --panel-3: #202a36; --ink: #edf2f7; --muted: #95a2b3; --line: rgba(173, 189, 204, 0.14); --accent: #4fb3ff; --accent-soft: rgba(79, 179, 255, 0.16); --success: #6ecb8b; --status: #10151b; --shadow: 0 18px 48px rgba(0, 0, 0, 0.32); --sidebar-width: 280px; --assistant-width: 360px; color-scheme: dark; font-family: "Avenir Next", "Segoe UI", sans-serif; } * { box-sizing: border-box; } html, body { margin: 0; width: 100%; height: 100%; background: radial-gradient(circle at top left, rgba(79, 179, 255, 0.12), transparent 26%), radial-gradient(circle at bottom right, rgba(110, 203, 139, 0.12), transparent 24%), linear-gradient(180deg, #0b1016 0%, #121922 100%); color: var(--ink); } body { overflow: hidden; } button { font: inherit; } .app { width: 100%; height: 100%; display: flex; flex-direction: column; background: rgba(17, 22, 29, 0.96); } .window-titlebar { height: 38px; display: flex; align-items: center; justify-content: space-between; background: linear-gradient(180deg, rgba(255, 255, 255, 0.04), transparent), var(--panel); border-bottom: 1px solid var(--line); -webkit-app-region: drag; app-region: drag; } .window-titlebar-menu-bar, .window-titlebar-actions { display: flex; align-items: center; gap: 6px; padding: 0 10px; -webkit-app-region: no-drag; app-region: no-drag; } .window-titlebar-title { position: absolute; left: 50%; transform: translateX(-50%); font-size: 12px; letter-spacing: 0.04em; color: var(--muted); } .window-titlebar-menu-button, .window-titlebar-action-button, .panel-tab, .tab, .sidebar-item, .activity-bar-item { border: none; cursor: pointer; } .window-titlebar-menu-button, .window-titlebar-action-button { min-height: 26px; padding: 0 10px; border-radius: 8px; background: transparent; color: var(--muted); } .window-titlebar-menu-button:hover, .window-titlebar-action-button:hover { background: rgba(255, 255, 255, 0.06); color: var(--ink); } .app-main { flex: 1; display: flex; min-height: 0; } .activity-bar { width: 56px; display: flex; flex-direction: column; justify-content: space-between; background: #0d1319; border-right: 1px solid var(--line); } .activity-bar-group { display: flex; flex-direction: column; align-items: center; padding: 8px 0; gap: 4px; } .activity-bar-item { width: 42px; height: 42px; display: grid; place-items: center; background: transparent; color: var(--muted); border-radius: 12px; position: relative; } .activity-bar-item:hover, .activity-bar-item.active { color: var(--ink); background: rgba(255, 255, 255, 0.06); } .activity-bar-item.active::before { content: ""; position: absolute; left: -7px; top: 8px; bottom: 8px; width: 3px; border-radius: 999px; background: var(--accent); } .activity-bar-glyph { font-size: 12px; font-weight: 700; } .sidebar-shell, .assistant-sidebar-shell { display: flex; min-width: 0; } .sidebar-shell { width: var(--sidebar-width); } .assistant-sidebar-shell { width: var(--assistant-width); } .sidebar, .assistant-sidebar, .panel-shell, .editor-shell { background: var(--panel); } .sidebar, .assistant-sidebar { width: 100%; display: flex; flex-direction: column; min-width: 0; } .sidebar { border-right: 1px solid var(--line); } .assistant-sidebar { border-left: 1px solid var(--line); } .resizable-panel-divider { width: 1px; background: var(--line); } .sidebar-shell.is-hidden, .assistant-sidebar-shell.is-hidden { width: 0; overflow: hidden; } .sidebar-shell.is-hidden .resizable-panel-divider, .assistant-sidebar-shell.is-hidden .resizable-panel-divider { display: none; } .app-content { flex: 1; display: flex; flex-direction: column; min-width: 0; } .tab-bar { height: 40px; display: flex; align-items: center; background: var(--panel-2); border-bottom: 1px solid var(--line); padding: 0 10px; } .tab-bar-tabs { display: flex; align-items: stretch; gap: 6px; overflow-x: auto; } .tab-bar-empty { font-size: 12px; color: var(--muted); } .tab { min-width: 140px; max-width: 200px; padding: 0 12px; display: flex; align-items: center; justify-content: space-between; gap: 10px; background: var(--panel); color: var(--muted); border-radius: 10px 10px 0 0; } .tab.active { color: var(--ink); background: #121922; box-shadow: inset 0 2px 0 var(--accent); } .tab.transient .tab-title { font-style: italic; } .tab-title, .sidebar-item strong, .sidebar-item span, .status-bar-item { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; } .tab-close { font-size: 11px; color: var(--muted); } .editor-shell { flex: 1; min-height: 0; padding: 22px; overflow: auto; } .editor-frame { display: grid; grid-template-columns: minmax(0, 1fr) 280px; gap: 20px; } .editor-main, .editor-meta-card, .assistant-card, .panel-entry, .dashboard-card { background: linear-gradient(180deg, rgba(255, 255, 255, 0.04), transparent), var(--panel-2); border: 1px solid var(--line); border-radius: 18px; box-shadow: var(--shadow); } .editor-main { padding: 24px; } .editor-kicker, .sidebar-eyebrow, .sidebar-section-header, .assistant-header, .panel-header, .sidebar-subtitle { font-size: 11px; letter-spacing: 0.08em; text-transform: uppercase; color: var(--muted); } .editor-title { margin: 10px 0 8px; font-size: 34px; line-height: 1.1; } .editor-subtitle { margin: 0 0 22px; color: var(--muted); } .dashboard-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; } .dashboard-card { padding: 18px; } .dashboard-card span, .assistant-card span, .panel-entry span, .editor-meta-card span, .sidebar-item span, .sidebar-subtitle { color: var(--muted); } .dashboard-card strong { display: block; margin: 8px 0; font-size: 32px; } .editor-section { margin-top: 22px; } .editor-section ul { margin: 12px 0 0; padding-left: 18px; } .editor-toolbar { display: flex; gap: 10px; } .editor-toolbar button { padding: 9px 14px; border: 1px solid var(--line); border-radius: 999px; background: var(--panel-3); color: var(--ink); } .editor-meta { display: flex; flex-direction: column; gap: 12px; } .editor-meta-card, .assistant-card, .panel-entry { padding: 16px; } .sidebar-header, .assistant-header, .panel-header { display: flex; justify-content: space-between; gap: 12px; padding: 16px 18px; border-bottom: 1px solid var(--line); } .sidebar-content, .assistant-content, .panel-content { flex: 1; overflow: auto; min-height: 0; } .sidebar-section { padding: 14px 14px 0; } .sidebar-section-header { display: flex; justify-content: space-between; margin-bottom: 8px; } .sidebar-section-items { display: flex; flex-direction: column; gap: 8px; } .sidebar-item { display: flex; flex-direction: column; align-items: flex-start; gap: 4px; width: 100%; padding: 12px; border-radius: 14px; background: var(--panel-2); color: var(--ink); } .sidebar-item:hover, .panel-tab:hover { background: var(--accent-soft); } .sidebar-item.active { outline: 1px solid var(--accent); background: rgba(79, 179, 255, 0.12); } .sidebar-badge { padding: 2px 8px; border-radius: 999px; background: rgba(110, 203, 139, 0.16); color: var(--success); font-size: 11px; } .panel-shell { min-height: 160px; max-height: 160px; border-top: 1px solid var(--line); } .panel-shell.is-hidden { display: none; } .panel-tabs { display: flex; gap: 8px; } .panel-tab { padding: 8px 10px; border-radius: 999px; background: transparent; color: var(--muted); } .panel-tab.active { background: var(--accent-soft); color: var(--ink); } .assistant-content { display: flex; flex-direction: column; gap: 12px; padding: 14px; } .status-bar { height: 34px; display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 0 12px; background: var(--status); border-top: 1px solid var(--line); } .status-bar-left, .status-bar-right { display: flex; gap: 8px; min-width: 0; } .status-bar-item { max-width: 180px; padding: 4px 8px; border-radius: 999px; background: rgba(255, 255, 255, 0.06); font-size: 11px; } @media (max-width: 1100px) { .editor-frame { grid-template-columns: 1fr; } .assistant-sidebar-shell { display: none; } .dashboard-grid { grid-template-columns: 1fr; } }