/* VAV / Lagoon — shared identity, section accents and product components. */
:root {
  --ink:#183d3b; --muted:#536d69; --paper:#faf8f2; --white:#fffdfa; --line:#dce8e2;
  --green:#087d70; --lime:#c9e8cf; --red:#a7383b; --ops-soft:#edf3ed;
  --vav-radius:18px; --vav-shadow:0 5px 22px #153e3b06;
  --module:#087d70; --module-soft:#e7f2ed; --module-line:#cce5da;
  font-family:"Segoe UI Variable Text",Inter,"Segoe UI",ui-sans-serif,sans-serif;
}
body { background:var(--paper); }
body[data-accent=violet] { --module:#655694; --module-soft:#eeebf8; --module-line:#ddd5f0; }
body[data-accent=blue] { --module:#386a94; --module-soft:#e9f1f9; --module-line:#cfdfea; }
body[data-accent=amber] { --module:#8b641f; --module-soft:#faf0dd; --module-line:#ecdcba; }
body[data-accent=rose] { --module:#a45e5b; --module-soft:#f7e9e5; --module-line:#ecd4cc; }
.vav-icon { width:20px; height:20px; flex-shrink:0; vertical-align:middle; }
.workspace { grid-template-columns:238px minmax(0,1fr); }
#workspace .sidebar {
  padding:24px 16px 18px; border-right:0; background:linear-gradient(155deg,#154647,#0d3036);
  color:#dfeee8; height:100dvh;
}
#workspace .brand { color:#e6f4eb; font-size:13px; gap:11px; margin:0 8px 22px; letter-spacing:.7px; }
#workspace .brand-mark { background:#ffffff0e; color:#f2d99b; border:1px solid #ffffff20; border-radius:14px; font-size:22px; }
.sidebar-search { margin:0 2px 12px; }
#nav-search { color:#ecf6ef; background:#ffffff09; border:1px solid #ffffff20; padding:11px 10px; font-size:11px; margin:0; border-radius:10px; }
#nav-search::placeholder { color:#adc8c2; opacity:1; }
#nav-search:focus { outline:2px solid #bce6d4; outline-offset:2px; }
#workspace .sidebar nav { gap:3px; padding-right:4px; scrollbar-width:thin; scrollbar-color:#59847d transparent; }
#workspace .sidebar nav::-webkit-scrollbar { width:5px; }
#workspace .sidebar nav::-webkit-scrollbar-thumb { background:#59847d; border-radius:5px; }
#workspace .sidebar nav::-webkit-scrollbar-track { background:transparent; }
#workspace .sidebar nav button { color:#b8d0cb; border-radius:11px; padding:10px 12px; min-height:40px; gap:11px; transition:background .16s,color .16s; }
#workspace .sidebar nav button span { font-size:12px; }
#workspace .sidebar nav button:hover { background:#ffffff0d; color:#f4faf2; }
#workspace .sidebar nav button.active { color:#173f38; background:linear-gradient(105deg,#bce6d4,#d6ecc5); box-shadow:0 4px 15px #052c3020; font-weight:650; }
.vav-nav-icon { display:inline-flex; }
.vav-nav-icon .vav-icon { width:17px; height:17px; }
#workspace .nav-group { color:#98bbb4; font-size:9px; letter-spacing:1.6px; padding:16px 12px 7px; }
.nav-filtered { display:none!important; }
#nav-no-results { font-size:12px; color:#c6ded6; padding:5px 10px; }
#workspace .sidebar-bottom { padding:15px 8px 0; }
#workspace .company-summary { padding:14px 0 0; border-color:#ffffff20; }
#workspace .sidebar-bottom strong { color:#e6f2e9; font-size:11px; }
#workspace .sidebar-bottom small,#workspace .sidebar-bottom .text-button,
#workspace .private-note,#workspace #brand-support a { color:#b0ccc3; }
#workspace .status-dot { background:#b4df9b; }
#workspace .private-note { margin:12px 0; font-size:10px; }
#workspace .sidebar-bottom #logout { font-size:12px; }
#nav-toggle { display:none; }
#workspace .topbar { height:64px; min-height:64px; padding:0 32px; gap:18px; background:#f2f5ed; border-color:var(--line); color:var(--muted); font-size:12px; }
#breadcrumb { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
#page-finder-open { display:flex; align-items:center; gap:8px; background:#fffdfa; color:#536d69; border:1px solid #dce8e2; border-radius:10px; padding:8px 10px; font-size:11px; margin-left:auto; white-space:nowrap; }
#page-finder-open .vav-icon { width:15px; height:15px; }
#page-finder-open kbd { font-size:9px; border:1px solid #dce8e2; border-radius:4px; padding:2px 4px; color:#667e76; font-family:inherit; }
#workspace .topbar-label { font-size:9px; letter-spacing:1.8px; color:#58756d; }
.content { padding:32px; max-width:1600px; }
.page-heading,.ops-hero,.dash-header {
  position:relative; isolation:isolate; display:flex; align-items:center; gap:22px;
  padding:28px; margin-bottom:26px; border:1px solid var(--module-line); border-radius:22px;
  background:linear-gradient(115deg,var(--white) 20%,var(--module-soft)); overflow:hidden;
}
.page-heading::after,.ops-hero::after { content:""; position:absolute; width:210px; height:210px; right:-100px; top:-115px; border:22px solid var(--module-line); border-radius:50%; opacity:.25; z-index:-1; pointer-events:none; }
.page-identity { display:flex; align-items:center; gap:20px; flex:1; min-width:0; }
.page-symbol,.hero-symbol { width:58px; height:58px; display:grid; place-items:center; border:1px solid var(--module-line); border-radius:18px; background:var(--module-soft); color:var(--module); flex-shrink:0; }
.page-symbol .vav-icon,.hero-symbol .vav-icon { width:28px; height:28px; }
.hero-copy { flex:1; min-width:0; }
.page-kicker,.ops-hero .eyebrow,.dash-kicker { display:block; color:var(--module); font-size:9px; font-weight:700; letter-spacing:1.7px; margin:0 0 10px; }
.page-heading h1,.ops-hero h1,.dash-header h1 { font-size:clamp(25px,2.5vw,34px); letter-spacing:-1.1px; font-weight:600; margin:0 0 10px; line-height:1.2; }
.page-heading p,.ops-hero p,.dash-header p:last-child { font-size:13px; line-height:1.7; color:var(--muted); margin:0; max-width:660px; }
.page-actions { display:flex; align-items:center; gap:10px; flex-wrap:wrap; flex-shrink:0; }
.primary,button.primary { border-radius:11px; padding:12px 17px; box-shadow:0 4px 12px #123f4010; font-weight:600; }
.primary:hover,button.primary:hover { background:var(--green); filter:brightness(1.08); }
.secondary { background:var(--white); border-color:var(--line); border-radius:10px; color:var(--ink); font-weight:500; }
.secondary:hover { background:var(--module-soft); border-color:var(--module-line); }
.danger { border-radius:11px; background:#a7383b; }
button:focus-visible,a:focus-visible,summary:focus-visible { outline:2px solid var(--module); outline-offset:3px; }
button:disabled { cursor:default; }
input,textarea,select { border-color:var(--line); color:var(--ink); background:var(--white); border-radius:10px; padding:12px; }
input:focus,textarea:focus,select:focus { outline:2px solid #087d7040; border-color:#087d70; }
input[type=checkbox],input[type=radio] { accent-color:var(--green); }
label { font-size:12px; }
.card,.panel,.metric-card,.ops-stat,.ops-agent-list,.dash-panel,.dash-metric {
  border-color:var(--line); background:var(--white); border-radius:var(--vav-radius); box-shadow:var(--vav-shadow);
}
.card { padding:23px; gap:18px; border-top:3px solid var(--module-line); transition:transform .18s,box-shadow .18s,border-color .18s; }
.card:hover { border-color:var(--module-line); box-shadow:0 9px 30px #183d3b0d; transform:translateY(-2px); }
.card h3 { font-size:17px; font-weight:600; letter-spacing:-.3px; }
.card p { font-size:12px; line-height:1.7; color:var(--muted); }
.card-meta { font-size:11px; gap:8px 14px; }
.card-actions { border-color:var(--line); padding-top:16px; }
.agent-icon { color:var(--module); background:var(--module-soft); border:1px solid var(--module-line); width:46px; height:46px; border-radius:14px; }
.cards { gap:18px; grid-template-columns:repeat(auto-fill,minmax(275px,1fr)); }
.overview { background:var(--white); border:1px solid var(--line); padding:22px; border-radius:18px; gap:0; box-shadow:var(--vav-shadow); }
.overview .stat { padding:0 20px; border:0; }
.overview .stat:first-child { padding-left:0; }
.overview .stat+.stat { border-left:1px solid var(--line); }
.stat strong { font-size:30px; font-weight:550; letter-spacing:-.7px; }
.stat span { font-size:11px; color:var(--muted); }
.section-label { color:var(--module); font-size:10px; font-weight:650; letter-spacing:1.6px; margin:25px 0 17px; }
.empty,.ops-empty,.call-log-empty { border:1px dashed var(--module-line); border-radius:20px; background:linear-gradient(125deg,var(--white),var(--module-soft)); padding:45px 28px; }
.empty-symbol,.ops-empty-mark { color:var(--module); background:var(--white); border:1px solid var(--module-line); display:grid; place-items:center; width:64px; height:64px; border-radius:20px; margin:0 auto 20px; }
.empty-symbol .vav-icon,.ops-empty-mark .vav-icon { width:30px; height:30px; }
.empty h3,.ops-empty h2 { letter-spacing:-.5px; }
.empty p,.ops-empty p { color:var(--muted); }
.guide { background:var(--module-soft); color:var(--muted); border:1px solid var(--module-line); border-radius:12px; padding:18px 20px; }
.guide strong { color:var(--module); }
.table-wrap { background:var(--white); border:1px solid var(--line); border-radius:15px; box-shadow:var(--vav-shadow); max-width:100%; }
th { color:var(--muted); background:#edf3ed; font-size:10px; font-weight:650; letter-spacing:1px; padding:16px 18px; }
td { padding:17px 18px; color:var(--ink); border-color:var(--line); }
tbody tr:hover { background:#f1f6f0; }
td .secondary { font-size:11px; padding:8px 11px; }
.badge { background:#edf1ef; color:#536d69; border-radius:7px; padding:5px 8px; font-size:10px; font-weight:600; }
.badge.ready,.badge.completed,.badge.active,.badge.enabled { background:#e1f1e6; color:#286348; }
.badge.error,.badge.failed { background:#f9e4e0; color:#a13e39; }
.badge.importing,.badge.connecting,.badge.queued,.badge.sending { background:#e7f0fa; color:#396991; }
.badge.draft,.badge.paused { background:#f8efdc; color:#805e27; }
dialog { border-color:var(--line); border-radius:22px; background:var(--white); padding:28px; box-shadow:0 24px 100px #123f402b; color:var(--ink); }
dialog::backdrop { background:#12373d70; backdrop-filter:blur(5px); }
.dialog-header { border-bottom:1px solid var(--line); padding-bottom:20px; margin-bottom:20px; }
.dialog-header h2 { font-size:23px; }
.dialog-footer { padding-top:20px; gap:10px; }
.form-fields>h3,.pipeline-editor h3 { margin-top:24px; color:var(--module); }
.form-row { gap:16px; }
.check-list { border-color:var(--line); border-radius:12px; background:#f8faf5; }
.component-tabs,.ops-tabs { background:#edf3ed; border:1px solid var(--line); border-radius:13px; padding:5px; gap:4px; }
.component-tabs button,.ops-tabs button { border-radius:9px; padding:10px 14px; font-size:12px; }
.component-tabs button[aria-selected=true],.ops-tabs button[aria-selected=true] { background:var(--green); color:var(--on-brand); box-shadow:0 3px 10px #123f4010; }
.ops-stats { gap:15px; }
.ops-stat { padding:22px; border-top:3px solid var(--module-line); }
.ops-stat span { font-size:11px; color:var(--muted); }
.ops-stat strong { color:var(--ink); font-size:30px; }
.ops-stat small { color:var(--muted); font-size:11px; }
.ops-agent.selected { background:var(--module-soft); border-color:var(--module-line); color:var(--module); }
.ops-agent:hover { background:var(--module-soft); }
.ops-studio-main>.ops-section-head { background:var(--white); border-radius:18px; border-color:var(--line); }
.ops-flow { gap:12px; }
.ops-flow>div { border-radius:14px; background:var(--white); padding:18px; border-color:var(--line); border-top:3px solid var(--module-line); }
.ops-flow small { color:var(--module); font-weight:650; }
.ops-flow p { color:var(--muted); }
.ops-bar i { background:linear-gradient(90deg,var(--module),var(--green)); }
.ops-slots button { border-radius:10px; background:var(--module-soft); border-color:var(--module-line); color:var(--module); }
.ops-shift { gap:12px; }
.ops-transcript,.ops-resource { border-color:var(--line); }
.dash-shell { --dash-border:var(--line); --dash-muted:var(--muted); --dash-soft:#edf3ed; --dash-green:var(--green); color:var(--ink); }
.dash-header { background:linear-gradient(125deg,#123f40,#205854); border:0; color:#edf5ea; padding:30px; }
.dash-header .hero-symbol { background:#ffffff10; color:#ccebd4; border-color:#ffffff25; }
.dash-header .dash-kicker { color:#b4d8c6; }
.dash-header h1 span { color:#cbe4b5; }
.dash-header p:last-child { color:#c0d9ce; }
.dash-header-actions .secondary { background:#ffffff0d; border-color:#ffffff30; color:#edf5ea; }
.dash-header-actions .primary { background:#d0e9ba; color:#183d3b; }
.dash-filters { border-radius:15px; background:var(--white); border-color:var(--line); padding:18px; gap:15px; }
.dash-filter select { background:#f7faf4; border-color:var(--line); font-size:12px; height:37px; }
.dash-filter>span { color:var(--muted); }
.dash-report-meta,.dash-footnote { color:var(--muted); }
.dash-workspace-pulse { background:#e7f0e8; border:1px solid #d4e5d9; color:#45695e; border-radius:12px; padding:14px 18px; }
.dash-workspace-pulse strong { color:#23483f; }
.dash-workspace-pulse small { color:#536d69; }
.dash-metrics { gap:16px; }
.dash-metric { padding:22px; border-top:3px solid #cfe6d9; }
.dash-metric:nth-child(2) { border-top-color:#d7d5f0; }
.dash-metric:nth-child(3) { border-top-color:#d0e0f0; }
.dash-metric:nth-child(4) { border-top-color:#eedfbe; }
.dash-metric-icon { color:#28674f; background:#e6f2e9; width:34px; height:34px; border-radius:11px; }
.dash-metric:nth-child(2) .dash-metric-icon { color:#66548f; background:#efecf8; }
.dash-metric:nth-child(3) .dash-metric-icon { color:#396991; background:#e8f0fa; }
.dash-metric:nth-child(4) .dash-metric-icon { color:#805e27; background:#f8efdc; }
.dash-metric-value { font-size:32px; font-weight:600; }
.dash-metric>small,.dash-delta,.dash-table-note,.dash-muted { color:var(--muted); }
.dash-panel { padding:23px; }
.dash-panel h2 { font-size:15px; }
.dash-panel-heading p { font-size:12px; }
.dash-chart-bar { background:linear-gradient(#89bd9d,#397b68); border-radius:5px 5px 0 0; }
.dash-chart-day { border-radius:4px; }
.dash-status-legend small,.dash-status-legend>p,.dash-chart-dates,.dash-chart-scale { color:var(--muted); }
.dash-shell th { background:#edf3ed; color:var(--muted); }
.dash-shell td { color:var(--ink); font-size:12px; }
.dash-shell .dash-agent-name { color:var(--ink); font-size:12px; }
.dash-agent-rank { background:#e6f2e9; color:#39705a; }
.dash-link { color:#39675a; }
.dash-finance-total>strong { color:var(--module); }
.call-log-stats .stat,.call-detail-metrics { border-radius:16px; background:var(--white); border-color:var(--line); }
.call-log-stats .stat { padding:20px; border-top:3px solid var(--module-line); }
.call-log-presets { background:#edf3ed; border-radius:13px; padding:8px; }
.call-log-presets button { border-radius:9px; font-size:11px; }
.call-log-filters { background:var(--white); border:1px solid var(--line); border-radius:16px; padding:20px; }
.call-log-filters label { margin-top:0; }
.call-log-table th { background:#eaf1f7; }
.call-log-table td { font-size:12px; }
.call-filter-more,.call-columns,.call-context { border-radius:14px; background:var(--white); border-color:var(--line); }
.call-log-controls { padding:8px 0 18px; }
.call-log-cost-note,.timing-note,.privacy-note { color:var(--muted); }
.call-log-detail { background:var(--white); }
.call-metrics { border-radius:15px; background:#edf3ed; border-color:var(--line); }
.call-metrics strong { color:var(--ink); }
.call-sources { background:#e9f2eb; border:1px solid var(--line); border-radius:12px; }
.transcript-line { border-color:var(--line); }
.transcript-line strong { color:var(--module); }
.toast { background:#123f40; border:1px solid #477870; border-radius:12px; box-shadow:0 8px 24px #123f4026; }
.error-banner,.form-error { color:#a7383b; }
.error-banner { background:#f9e7e1; border:1px solid #efd3c9; border-radius:13px; }
.json-view,.call-context pre { background:#edf3ed; color:var(--ink); border-radius:12px; }

/* The page finder only lists destinations allowed by the current workspace. */
#page-finder { width:min(600px,calc(100vw - 28px)); padding:24px; }
#page-finder .dialog-header { border:0; padding-bottom:0; }
#page-finder h2 { font-size:24px; }
#page-finder-input { margin:0 0 14px; font-size:14px; background:#f3f7f0; }
#page-finder-results { max-height:min(50vh,430px); overflow:auto; display:grid; gap:5px; }
#page-finder-results button { display:flex; align-items:center; gap:12px; padding:12px; color:var(--ink); text-align:left; background:transparent; border:1px solid transparent; border-radius:12px; }
#page-finder-results button:hover,#page-finder-results button:focus-visible { background:#edf3ed; border-color:#d5e6da; }
#page-finder-results button>span:nth-child(2) { flex:1; }
#page-finder-results strong { font-size:13px; font-weight:600; }
#page-finder-results small { font-size:9px; letter-spacing:1px; color:var(--muted); margin-top:3px; }
.finder-icon { width:37px; height:37px; border-radius:11px; background:#e4f0e8; color:#34725a; display:grid; place-items:center; }
.finder-hint { margin:17px 0 0; font-size:10px; color:var(--muted); }

/* Login is a distinctive entry into the same workspace. */
.login-shell { display:grid; grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr); align-items:center; padding:90px max(40px,calc((100vw - 1180px)/2)); gap:90px; background:radial-gradient(ellipse at 8% 10%,#dceede,transparent 55%),#faf8f2; position:relative; }
.login-brand { position:absolute; top:34px; left:max(40px,calc((100vw - 1180px)/2)); font-size:12px; font-weight:650; letter-spacing:2px; }
.login-story { min-width:0; }
.login-story>.eyebrow { color:#477768; font-size:10px; }
.login-story h2 { font-size:clamp(40px,4.6vw,64px); letter-spacing:-2.5px; font-weight:550; line-height:1.12; margin:24px 0; }
.login-story h2 em { font-style:normal; color:#087d70; }
.login-story>p { max-width:420px; color:var(--muted); font-size:15px; line-height:1.8; }
.login-signal { display:flex; gap:9px; align-items:center; height:130px; padding:10px 22px; width:fit-content; border:1px solid #d2e6d6; border-radius:28px; margin:34px 0; background:linear-gradient(135deg,#e1f0e7,#f4e5bf); transform:rotate(-3deg); }
.login-signal span { width:6px; height:25px; background:#2d7e67; border-radius:7px; }
.login-signal span:nth-child(2n) { height:48px; background:#519f7b; }
.login-signal span:nth-child(3n) { height:75px; }
.login-signal span:nth-child(5n) { height:95px; background:#1b6255; }
.login-story-foot { display:flex; flex-wrap:wrap; gap:18px; font-size:11px; color:#4d6d61; }
.login-story-foot span::before { content:""; display:inline-block; width:5px; height:5px; border-radius:50%; background:#80a483; margin-right:7px; }
.login-card { width:100%; max-width:430px; margin:0; padding:34px; background:#fffdf9; border:1px solid #dce8e2; border-radius:24px; box-shadow:0 18px 60px #153e3b0c; justify-self:end; }
.login-card h1 { font-size:29px; letter-spacing:-1px; margin:16px 0; }
.login-card p { font-size:13px; }
.login-card .primary { padding:14px 16px; margin-top:15px; }
.login-foot { position:absolute; bottom:26px; left:0; right:0; text-align:center; margin:0; font-size:11px; }

/* Assistant retains its conversation layout and both of its color themes. */
body.vav-assistant #workspace .topbar { height:48px; min-height:48px; }
body.vav-assistant .ai-header { background:transparent; }
body.vav-assistant.ai-app-dark #workspace .topbar { background:#143f42; color:#acc9c3; }
body.vav-assistant.ai-app-dark #page-finder-open { background:#1c4a4c; color:#e2f2e9; border-color:#315c5d; }
body.vav-assistant.ai-app-dark #page-finder-open kbd { color:#acc9c3; border-color:#315c5d; }
body.ai-app-dark dialog { background:#1c4a4c; }
body.ai-app-dark #page-finder-input { background:#143f42; }
body.ai-app-dark #page-finder-results button { color:#e2f2e9; }
body.ai-app-dark #page-finder-results button:hover { background:#245254; border-color:#315c5d; }

@media(min-width:1500px) { .content { padding:40px 46px; } }
@media(max-width:1200px) {
  .page-heading,.ops-hero,.dash-header { gap:17px; padding:24px; }
  .page-symbol,.hero-symbol { width:48px; height:48px; border-radius:15px; }
  .page-heading h1,.ops-hero h1,.dash-header h1 { font-size:28px; }
  .dash-header-actions { flex-direction:column; }
  .page-actions,.ops-hero .ops-actions { max-width:260px; }
  .login-shell { gap:45px; padding-left:40px; padding-right:40px; }
}
@media(max-width:1000px) {
  .workspace { grid-template-columns:210px minmax(0,1fr); }
  #workspace .sidebar { padding:22px 12px 16px; }
  .content { padding:25px; }
  #workspace .topbar { padding:0 25px; }
  .page-heading,.ops-hero { align-items:flex-start; flex-wrap:wrap; }
  .page-identity { flex-basis:100%; }
  .page-actions,.ops-hero .ops-actions { max-width:none; }
  .hero-copy { flex-basis:calc(100% - 75px); }
  .ops-hero .ops-actions { margin-left:65px; }
  .cards { grid-template-columns:repeat(auto-fill,minmax(240px,1fr)); }
  .dash-header .hero-symbol { display:none; }
  .dash-header .hero-copy { flex-basis:auto; }
  .dash-header-actions { flex-shrink:1; }
  .dash-metrics { gap:12px; }
  .dash-metric { padding:18px; }
  .dash-metric-value { font-size:28px; }
  .login-story h2 { font-size:44px; }
}
@media(max-width:750px) {
  .login-shell { display:flex; padding:100px 24px 70px; min-height:100dvh; }
  .login-brand { left:24px; top:28px; }
  .login-story { display:none; }
  .login-card { padding:28px; max-width:430px; }
  .login-foot { font-size:10px; }
}
@media(max-width:650px) {
  .workspace { grid-template-columns:minmax(0,1fr); }
  #workspace .sidebar { position:relative; height:68px; max-height:68px; padding:14px 18px; overflow:visible; display:flex; flex-direction:row; align-items:center; justify-content:space-between; z-index:30; border:0; }
  #workspace .brand { margin:0; font-size:12px; }
  #workspace .brand-mark { width:37px; height:37px; border-radius:12px; font-size:19px; }
  #nav-toggle { display:grid; place-items:center; width:37px; height:37px; background:#ffffff0e; color:#e4f3e9; border:1px solid #ffffff22; border-radius:11px; }
  #workspace .sidebar-search,#workspace .sidebar nav,#workspace .sidebar-bottom { display:none; }
  #nav-no-results { display:none; }
  .vav-nav-open #nav-no-results:not([hidden]) { display:block; position:absolute; top:140px; left:28px; right:28px; margin:0; z-index:34; }
  .vav-nav-open #workspace .sidebar-search { display:block; position:absolute; top:80px; left:22px; right:22px; z-index:33; }
  .vav-nav-open #workspace .sidebar nav { display:flex; flex-direction:column; position:absolute; top:130px; left:12px; right:12px; max-height:calc(100dvh - 160px); overflow:auto; background:#123e40; padding:10px 14px 18px; border:1px solid #47746c; border-radius:0 0 18px 18px; box-shadow:0 20px 40px #143f4040; z-index:32; }
  .vav-nav-open #workspace .sidebar::after { content:""; position:absolute; left:12px; right:12px; top:75px; height:72px; background:#123e40; border:1px solid #47746c; border-bottom:0; border-radius:18px 18px 0 0; z-index:31; }
  .vav-nav-open #workspace .nav-group { display:block; }
  .vav-nav-open #workspace .sidebar nav button span { font-size:13px; }
  #workspace .topbar { height:56px; min-height:56px; padding:0 18px; gap:12px; }
  #workspace .topbar-label,#page-finder-open span,#page-finder-open kbd { display:none; }
  #page-finder-open { width:32px; height:32px; padding:7px; margin-left:auto; }
  #logout-mobile { font-size:11px; }
  .content { padding:20px 16px; }
  .page-heading,.ops-hero,.dash-header { padding:20px; border-radius:18px; gap:15px; margin-bottom:22px; }
  .page-identity { align-items:flex-start; gap:13px; }
  .page-symbol,.hero-symbol { width:39px; height:39px; border-radius:13px; }
  .page-symbol .vav-icon,.hero-symbol .vav-icon { width:22px; height:22px; }
  .page-kicker,.ops-hero .eyebrow,.dash-kicker { font-size:8px; letter-spacing:1.2px; margin-bottom:8px; }
  .page-heading h1,.ops-hero h1,.dash-header h1 { font-size:25px; letter-spacing:-.8px; }
  .page-heading p,.ops-hero p,.dash-header p:last-child { font-size:12px; }
  .page-actions { width:100%; }
  .page-actions button { font-size:12px; }
  .ops-hero .ops-actions { margin-left:0; }
  .hero-copy { flex-basis:calc(100% - 54px); }
  .dash-header { flex-wrap:wrap; }
  .dash-header .hero-copy { flex-basis:100%; }
  .dash-header-actions { flex-direction:row; width:100%; }
  .dash-metric-value { font-size:26px; }
  .dash-metrics,.ops-stats,.call-log-stats { gap:10px; }
  .ops-stat,.call-log-stats .stat,.dash-metric { padding:16px; }
  .ops-stat strong { font-size:25px; }
  .ops-stat small { font-size:10px; }
  .overview { padding:17px 14px; }
  .overview .stat { padding:0 12px; }
  .overview .stat span { font-size:10px; }
  .overview .stat strong { font-size:26px; }
  .cards { grid-template-columns:minmax(0,1fr); }
  .panel,.dash-panel { padding:20px; border-radius:15px; }
  .call-log-filters { padding:16px; }
  .call-log-page .page-heading { flex-wrap:wrap; }
  dialog { padding:22px; border-radius:18px; }
  #page-finder h2 { font-size:21px; }
  .finder-hint { font-size:9px; }
  body.vav-assistant main { height:calc(100dvh - 68px); min-height:440px; }
}
@media(prefers-reduced-motion:reduce) {
  .card,#workspace .sidebar nav button { transition:none; }
  .card:hover { transform:none; }
}
