:root { --chart-bg:var(--surface); --chart-line:var(--line); --rail-bg:var(--ink); --accent-surface:color-mix(in srgb,var(--vertux) 18%,var(--ink)); }
.rail { background:var(--rail-bg); }
.rail-collapse { display:flex; align-items:center; justify-content:center; width:30px; height:30px; padding:5px; margin:12px 0 0 auto; border:1px solid var(--line); border-radius:5px; background:var(--surface); color:var(--muted); }
.rail-collapse svg { width:20px; height:20px; }
.brand-lockup>span:last-child { min-width:0; }
.brand-lockup strong { display:block; max-width:150px; overflow:hidden; text-overflow:ellipsis; }
.nav-item.active,.nav-item:hover { background:var(--accent-surface); color:var(--vertux-soft); }
.brand-mark,.owner-button>span:first-child { background:var(--accent-surface); color:var(--vertux-soft); }
.button.primary { background:var(--action-fill); color:var(--action-text,#fff); }
.workspace-customization { background:var(--surface); border:1px solid var(--line); border-radius:10px; padding:20px; margin-bottom:18px; }
.workspace-customization h3 { margin:0; }
.workspace-customization p { color:var(--muted); }
.workspace-palette { display:flex; flex-wrap:wrap; align-items:end; gap:16px; }
.workspace-palette label { display:flex; flex-direction:column; gap:6px; color:var(--muted); }
.workspace-palette input[type=color] { height:36px; width:62px; padding:3px; }
.workspace-menu-order input { min-width:0; width:100%; }
.workspace-customization button { background:var(--surface-raised); color:var(--text); border:1px solid var(--line); padding:6px; border-radius:5px; }
.workspace-customization button:disabled { opacity:.35; }
@media(min-width:961px) {
 body.rail-compact { --rail:64px; }
 .rail-compact .app-shell { grid-template-columns:64px minmax(0,1fr); }
 .rail-compact .rail { width:64px; padding:16px 7px 12px; }
 .rail-compact .brand-lockup { justify-content:center; gap:0; }
 .rail-compact .brand-lockup>span:last-child,.rail-compact .nav-item>span,.rail-compact .nav-heading,.rail-compact .owner-button>span:nth-child(2),.rail-compact .owner-button>svg,.rail-compact .runtime-evidence { display:none; }
 .rail-compact .nav-item { padding:0; justify-content:center; min-height:38px; }
 .rail-compact .owner-button { display:flex; justify-content:center; padding:8px 0; }
 .rail-compact .rail-collapse { margin:12px auto 0; }
 .rail-compact .navigation { margin-top:12px; }
}
@media(max-width:960px) { .rail-collapse { display:none; } }
@media(max-width:420px) { .workspace-menu-order>div { grid-template-columns:minmax(90px,1fr) 28px 28px 105px; gap:4px; font-size:12px; } .workspace-customization { padding:12px; } }
[data-palette=light] :is(.topbar,.data-surface,.surface,.stat-card,.metric-card,.personal-settings,.knowledge-sidebar,.knowledge-content,.analytics-section,.catalog-browser) { background:var(--surface); color:var(--text); border-color:var(--line); }
[data-palette=light] :is(input,select,textarea) { color:var(--text); background-color:var(--surface-raised); border-color:var(--line); color-scheme:light; }
[data-palette=light] :is(th,td,.empty-copy,.headline-copy,.headline-value,.metric-ledger dd) { color:var(--text); }
[data-palette=light] :is(.nav-item,.context-account,.section-head p,.settings-summary) { color:var(--muted); }
[data-palette=light] .positive { color:var(--positive); }
[data-palette=light] .negative { color:var(--negative); }
html[data-palette=light] { color-scheme:light; }
html[data-palette=dark] { color-scheme:dark; }

.workspace-menu-heading { display:flex; justify-content:space-between; gap:20px; align-items:center; margin-top:30px; }
.workspace-menu-heading h4 { margin:0; font-size:18px; }
.workspace-menu-heading p,.workspace-shortcut-hint { font-size:12px; line-height:1.5; margin:6px 0 0; }
.workspace-menu-heading>button { flex:none; min-height:36px; padding:6px 12px; }
.workspace-option { display:flex; justify-content:space-between; align-items:center; gap:18px; border:1px solid var(--line); padding:14px; border-radius:8px; margin:16px 0; }
.workspace-option strong { font-size:13px; }
.workspace-option small { display:block; margin-top:4px; font-size:12px; color:var(--muted); line-height:1.5; }
.workspace-customization input[type=checkbox] { width:18px; height:18px; flex:none; margin:0; accent-color:var(--vertux); cursor:pointer; }
.workspace-menu-order { display:grid; gap:8px; }
.workspace-menu-order .workspace-menu-row { display:grid; grid-template-columns:16px minmax(120px,1fr) auto 145px; gap:12px; align-items:center; padding:12px; border:1px solid var(--line); border-radius:8px; background:var(--surface-raised); }
.workspace-drag { color:var(--faint); cursor:grab; }
.workspace-drag svg,.workspace-menu-controls svg { width:16px; height:16px; fill:none; stroke:currentColor; stroke-width:1.6; stroke-linecap:round; }
.workspace-menu-label { display:flex; align-items:center; gap:10px; min-width:0; }
.workspace-menu-label>svg { width:19px; height:19px; flex:none; fill:none; stroke:var(--muted); stroke-width:1.6; }
.workspace-menu-label strong { font-size:13px; font-weight:500; }
.workspace-menu-label small { display:block; color:var(--muted); font-size:11px; margin-top:4px; line-height:1.4; }
.workspace-menu-controls { display:flex; gap:5px; align-items:center; }
.workspace-menu-controls button { width:30px; height:32px; display:grid; place-items:center; border-color:transparent; background:transparent; }
.workspace-menu-controls button[aria-pressed=true] { color:var(--vertux-soft); background:var(--accent-surface); }
.workspace-menu-controls input { margin-left:7px!important; }
.workspace-menu-shortcut { display:grid; gap:4px; font-size:10px; color:var(--faint); }
.workspace-menu-shortcut input,.workspace-profile-shortcut input { min-height:34px; width:100%; border:1px solid var(--line); border-radius:5px; color:var(--text); background:var(--surface); padding:6px 8px; font-size:12px; }
.workspace-menu-row.dragging { opacity:.5; }
.workspace-menu-order .drop-target { border-color:var(--focus); }
.workspace-customization :focus-visible { outline:2px solid var(--focus); outline-offset:3px; }
.workspace-settings-recovery { margin:16px 0; padding:14px; border:1px solid var(--line-strong); border-radius:8px; background:var(--surface); }
.workspace-settings-recovery p { color:var(--text); line-height:1.5; margin:0 0 8px; overflow-wrap:anywhere; }
.workspace-settings-recovery button { min-height:44px; max-width:100%; margin:4px 8px 4px 0; white-space:normal; }
.workspace-customization button:disabled,.workspace-customization input:disabled,.workspace-customization select:disabled { cursor:not-allowed; }
.workspace-profile-shortcut { display:flex; align-items:center; gap:16px; margin-top:18px; font-size:13px; }
.workspace-profile-shortcut input { width:145px; }
.rail .nav-item[hidden] { display:none!important; }
.rail .nav-item[data-pinned=true]::after { content:'•'; color:var(--vertux-soft); margin-left:auto; }
.rail-compact .nav-item[data-pinned=true]::after { position:absolute; right:2px; top:2px; font-size:10px; }
.rail .nav-item { position:relative; }
@media(max-width:760px) {
 .workspace-menu-order .workspace-menu-row { grid-template-columns:14px minmax(0,1fr) auto; gap:8px; padding:10px; }
 .workspace-menu-shortcut { grid-column:2/-1; grid-template-columns:auto minmax(90px,145px); align-items:center; justify-content:space-between; }
 .workspace-menu-label small { display:none; }
 .workspace-menu-controls { gap:1px; }
 .workspace-menu-controls button { width:28px; min-height:36px; }
 .workspace-menu-heading { align-items:flex-start; gap:10px; }
}

.workspace-customization .workspace-option input[role=switch] { appearance:none; position:relative; width:36px; height:21px; border:1px solid var(--line-strong); border-radius:20px; background:var(--surface-strong); }
.workspace-option input[role=switch]::after { content:''; position:absolute; top:3px; left:3px; width:13px; height:13px; border-radius:50%; background:var(--muted); }
.workspace-option input[role=switch]:checked { background:var(--action-fill); border-color:var(--action-fill); }
.workspace-option input[role=switch]:checked::after { left:18px; background:var(--action-text); }

@media(max-width:900px) { body:not(.rail-open) .rail { visibility:hidden; box-shadow:none; } body.rail-open .rail { visibility:visible; } }

.workspace-settings-transfer { max-width:75ch; margin:18px 0; border-block:1px solid var(--line); padding:8px 0; min-width:0; }
.workspace-settings-transfer summary { min-height:44px; padding:10px 0; box-sizing:border-box; cursor:pointer; overflow-wrap:anywhere; list-style-position:inside; }
.workspace-settings-transfer p { line-height:1.5; overflow-wrap:anywhere; }
.workspace-settings-transfer button { min-height:44px; max-width:100%; padding:8px 12px; margin:4px 8px 4px 0; font:inherit; font-size:13px; white-space:normal; }
.workspace-settings-transfer>label { display:grid; gap:8px; margin:12px 0; }
.workspace-settings-transfer input[type=file] { min-width:0; width:100%; max-width:100%; padding:4px; white-space:normal; font:inherit; color:var(--text); background:var(--surface); border:1px solid var(--line); }
.workspace-settings-transfer input::file-selector-button { min-height:44px; max-width:100%; font:inherit; padding:8px; color:var(--text); background:var(--surface-raised); border:1px solid var(--line); border-radius:5px; cursor:pointer; margin-right:8px; }
.workspace-transfer-groups { border-top:1px solid var(--line); }
.workspace-transfer-groups>details { border-bottom:1px solid var(--line); }
.workspace-transfer-groups dl { margin:0; }
.workspace-transfer-row { display:grid; grid-template-columns:1fr 1fr; gap:8px 16px; padding:12px 0; min-width:0; border-top:1px solid var(--line); }
.workspace-transfer-row dt { grid-column:1/-1; color:var(--text); font-weight:500; }
.workspace-transfer-row dd { min-width:0; margin:0; overflow-wrap:anywhere; }
.workspace-transfer-row dd span { display:block; color:var(--muted); font-size:12px; margin-bottom:4px; }
.workspace-transfer-row dd strong { display:block; color:var(--text); font-size:13px; line-height:1.5; font-weight:400; }
.workspace-transfer-confirm { display:flex; align-items:center; gap:12px; min-height:44px; margin:16px 0 8px; color:var(--text); line-height:1.5; cursor:pointer; }
.workspace-settings-transfer :is(summary,button,input,label,[tabindex]) { scroll-margin-block:140px 24px; }
.workspace-settings-transfer [tabindex="-1"]:focus { outline:2px solid var(--focus); outline-offset:3px; }
.workspace-settings-transfer :is(button,summary):hover { background:var(--surface-raised); }
.workspace-settings-transfer :is(button,input):disabled { opacity:.6; cursor:default; }
@media(max-width:480px) { .workspace-transfer-row { grid-template-columns:1fr; } }
