/* ============================================================================
   CellScope Pro — skin v9 "CafeTele House" (2026-06-27)
   Re-themes the whole workspace to the CafeTele house identity, on top of v7/v8:
     paper #fafaf7 · ink #1c1917 · warm hairlines · violet accent #7c3aed
     signature 4-stop gradient (blue→violet→pink→orange) for hero/primary surfaces
     Instrument Serif display · Inter UI · JetBrains Mono data
   Loads LAST, so its !important rules settle the palette. Token-driven: most of
   the reskin happens by re-declaring the --v7-* vars the v7/v8 rules already use.
   ========================================================================== */
@import url('https://fonts.googleapis.com/css2?family=Instrument+Serif:ital@0;1&family=JetBrains+Mono:wght@400;500;600;700&display=swap');

/* ---------- 1. RE-TOKEN the v7/v8 design system to the house palette ---------- */
:root{
  --v7-bg:#fafaf7; --v7-surface:#ffffff;
  --v7-line:#ece7dd; --v7-line-2:#ddd6c8;
  --v7-ink:#1c1917; --v7-ink-2:#44403c; --v7-mut:#78716c; --v7-faint:#a8a29e;
  --v7-acc:#7c3aed; --v7-acc-soft:#f4effe; --v7-acc-line:#ddd0f7;
  --v7-ok:#10b981; --v7-warn:#f59e0b; --v7-bad:#ef4444;
  --v7-sh-sm:0 1px 2px rgba(28,25,23,.05);
  --v7-sh:0 4px 16px rgba(28,25,23,.08),0 1px 3px rgba(28,25,23,.05);
  --v7-sh-lg:0 24px 60px rgba(28,25,23,.18);
  --v7-mono:'JetBrains Mono','Cascadia Code','Consolas',monospace;
  --v7-serif:'Instrument Serif',Georgia,'Times New Roman',serif;
  /* house signature gradients */
  --ct-sig:linear-gradient(135deg,#2563eb,#7c3aed 45%,#ec4899 80%,#f97316);
  --ct-sig-3:linear-gradient(135deg,#06b6d4,#7c3aed 55%,#ec4899);
  /* keep older skin tokens coherent in case any rule still references them */
  --csp-v6-accent:#7c3aed; --csp-v6-accent-2:#ec4899; --csp-v6-bg:#fafaf7;
  --csp-v6-fg:#1c1917; --csp-v6-muted:#78716c; --csp-v6-border:#ece7dd;
  /* app-native tokens */
  --accent:#7c3aed; --menu-active:rgba(124,58,237,.12);
}

/* warm the global focus ring + scrollbars */
:focus-visible{outline-color:#7c3aed!important}
*::-webkit-scrollbar-thumb{background:#ddd6c8!important;border:2px solid #fafaf7!important}
*::-webkit-scrollbar-thumb:hover{background:#b8b0a0!important}

/* ---------- 2. CHROME BANDS → warm paper (v7 hardcoded these to #fff) ---------- */
body,.app{background:#fafaf7!important}
.brand-bar,.menubar{background:#fcfbf7!important;border-bottom:1px solid var(--v7-line)!important}
.toolbar{background:#fcfbf7!important;border-bottom:1px solid var(--v7-line)!important}
.left-panel{background:#fcfbf7!important;border-right:1px solid var(--v7-line)!important}
.dock-panel{background:#fcfbf7!important;border-left:1px solid var(--v7-line)!important}
.statusbar,.footer{background:#fcfbf7!important;border-top:1px solid var(--v7-line)!important}
.bottom-panel{background:#fcfbf7!important;border-top:1px solid var(--v7-line)!important}
.panel-tabs,.panel-tabs-bottom,.layer-strip{background:#fcfbf7!important}
/* content surfaces stay clean white */
.dock-panel-body,.dialog-body,.pw-body,.menu-dropdown,.tb-dropdown-panel,.ctx-menu{background:#fff!important}
.left-panel input[type="text"],.prop-grid-header{background:#fafaf7!important}

/* ---------- 3. SERIF DISPLAY on brand + every title surface ---------- */
.dialog-titlebar,.dialog-header,.pw-header,.dock-panel-title,.legend-title,
.brand-bar .brand-name,.brand-title,.bottom-tab.active,
.float-dashboard h1,.float-dashboard h2,.copilot-panel h2,.kpi-card .kpi-title{
  font-family:var(--v7-serif)!important;letter-spacing:.1px!important}
.dock-panel-title{text-transform:none!important;font-size:15px!important;font-weight:500!important}
.dialog-titlebar,.dialog-header,.pw-header{font-size:17px!important;font-weight:500!important}

/* ---------- 4. SIGNATURE GRADIENT on hero/primary surfaces ---------- */
/* dialog top accent stripe + progress */
.dialog-titlebar::before,.dialog-header::before,.pw-header::before{background:var(--ct-sig)!important;height:4px!important}
.progress-fill{background:var(--ct-sig)!important}
/* primary actions */
.dialog-btn.primary,.toolbar .tb-btn.csp-primary,
.toolbar button[title*="Open Operator Project"]{
  background:var(--ct-sig)!important;border:none!important;color:#fff!important;
  box-shadow:0 2px 10px rgba(124,58,237,.28)!important}
.dialog-btn.primary:hover,.toolbar button[title*="Open Operator Project"]:hover{
  filter:brightness(1.07) saturate(1.05)!important;background:var(--ct-sig)!important;transform:translateY(-1px)!important}
/* selected tree rail + active tabs pick up violet from tokens automatically */

/* ---------- 5. REBRAND every hardcoded indigo inline gradient → signature ----------
   The app paints its logo, the welcome-modal header, and active demo cards with an
   inline linear-gradient(135deg,#6366f1,…). Repaint them all with the house gradient. */
[style*="linear-gradient(135deg,#6366f1"],
[style*="linear-gradient(135deg, #6366f1"],
[style*="linear-gradient(135deg,rgb(99, 102, 241)"],
[style*="linear-gradient(135deg, rgb(99, 102, 241)"],
/* welcome-modal header uses rgba()+alpha → browser serialises as rgba(99, 102, 241, 0.9) */
[style*="rgba(99, 102, 241, 0.9)"],
/* class-less INSPECTOR side tab: linear-gradient(135deg,#3b82f6,#6366f1) */
[style*="rgb(59, 130, 246), rgb(99, 102, 241)"]{
  background-image:var(--ct-sig)!important}

/* welcome-modal title → serif display (h2 lives inside the gradient header) */
[style*="rgba(99, 102, 241, 0.9)"] h2{font-family:var(--v7-serif)!important;font-weight:500!important;letter-spacing:.3px!important}

/* brand wordmark icon (CSS class, not inline) → house signature, clipped to glyph */
.menubar .mb-brand i,.brand-bar .brand-logo i{
  background:var(--ct-sig)!important;-webkit-background-clip:text!important;background-clip:text!important;-webkit-text-fill-color:transparent!important}
.menubar .mb-brand{font-family:var(--v7-serif)!important;font-size:17px!important;letter-spacing:.2px!important}

/* ---------- 6. WELCOME / ONBOARDING MODAL: house hero ---------- */
/* its header is the inline gradient repainted above; make its title serif & airy */
.dialog h2,.pw-dialog h2,[class*="welcome"] h2,[class*="onboard"] h2{
  font-family:var(--v7-serif)!important;font-weight:500!important;letter-spacing:.2px!important}
/* demo preset cards: warm hover, violet ring on hover */
.dialog [style*="border-radius"][style*="cursor"]:hover{border-color:#ddd0f7!important}

/* ---------- 7. small house touches ---------- */
/* menubar brand wordmark in serif if present */
.menubar .mb-brand,.menubar .brand{font-family:var(--v7-serif)!important;font-size:18px!important}
/* badges / chips: warm */
.tree-badge{background:#f4effe!important;color:#6d28d9!important}
/* command-palette FAB → violet glyph already via token; give it a faint sig ring */
.csp-fab{color:#7c3aed!important}
/* legend + map cards: warm hairline already via token; nothing else needed */
/* keep the map tiles slightly warmer to sit on paper */
.leaflet-tile-pane{filter:saturate(.85) contrast(1.01) brightness(1.02)!important}

/* ---------- 8. links / accents that used app blue → violet for cohesion ---------- */
a:not(.dialog-btn):not(.tb-btn){color:#7c3aed}
.menu-item:hover{background:#f4effe!important;color:#6d28d9!important}

/* ---------- 9. TOOLBAR RIBBON: clean, aligned 2-row layout ----------
   skin-v7 injects group captions (PROJECT / EDIT / PLAN / PREDICT / VIEW / TOOLS)
   designed for a SINGLE-row ribbon. The toolbar wraps to two rows, so those
   captions (positioned at each group's bottom edge) collide with the row below and
   read as broken overlapping text. Remove them — the vertical group dividers already
   convey the grouping — and tighten spacing so both rows sit clean and aligned. */
.tb-group[data-v7label]{padding-bottom:0!important}
.tb-group[data-v7label]::before{display:none!important}
.toolbar{align-items:center!important;row-gap:4px!important;padding:7px 10px!important;column-gap:1px!important}
.tb-group{padding:0 9px!important;align-items:center!important}
.tb-group:not(:last-child)::after{top:15%!important;height:70%!important}
/* every toolbar button: uniform height + vertical centering for a tidy ribbon */
.tb-btn{height:30px!important;display:inline-flex!important;align-items:center!important;gap:6px!important}
.tb-btn i{width:15px;text-align:center}

/* ---------- 10. BOOT SPLASH → bright white house theme, beautifully redesigned ----------
   Was a dark navy radial with indigo/emerald/amber rings. Reworked to the house identity:
   warm-paper glow, signature-palette concentric rings, a glowing violet→blue core,
   serif ink brand with a violet "Pro", and violet badges. */
#csp-splash{
  background:radial-gradient(120% 120% at 50% 38%, #ffffff 0%, #fafaf7 52%, #f3eefe 100%)!important;
}
/* concentric rings → signature palette, slightly bolder, with a soft glow */
#csp-splash .ring{border-width:2px!important;border-top-color:#7c3aed!important;filter:drop-shadow(0 0 6px rgba(124,58,237,.30))}
#csp-splash .ring:nth-child(2){border-top-color:#2563eb!important}
#csp-splash .ring:nth-child(3){border-top-color:#ec4899!important}
#csp-splash .ring:nth-child(4){border-top-color:#f97316!important}
/* core → signature-gradient orb with a warm house glow */
#csp-splash .core{
  background:radial-gradient(circle at 35% 30%, #a78bfa 0%, #7c3aed 46%, #2563eb 100%)!important;
  box-shadow:0 0 36px rgba(124,58,237,.42), 0 0 86px rgba(236,72,153,.20)!important;
}
/* brand → serif, ink with a soft gradient; "Pro" in violet */
#csp-splash .brand{
  background:linear-gradient(120deg,#1c1917 0%,#44403c 100%)!important;
  -webkit-background-clip:text!important;background-clip:text!important;-webkit-text-fill-color:transparent!important;
}
#csp-splash .brand em{color:#7c3aed!important;-webkit-text-fill-color:#7c3aed!important}
#csp-splash .tag{color:#78716c!important}
#csp-splash .badges span{background:#f4effe!important;color:#6d28d9!important;border:1px solid #ddd0f7!important}

/* ============================================================================
   11. PREMIUM TOOLBAR · MENUS · DROPDOWNS  (v9.1)
   A polished, professional ribbon: soft elevated surface, pill buttons with
   smooth micro-interactions, floating glass dropdowns, refined menu bar.
   ========================================================================== */

/* ---- toolbar + menubar: soft elevated paper surfaces ---- */
.menubar{background:linear-gradient(180deg,#fffdfa,#fcfbf7)!important;border-bottom:1px solid #efeae0!important}
.toolbar{
  background:linear-gradient(180deg,#fffdfa,#faf9f4)!important;
  border-bottom:1px solid #ece7dd!important;
  box-shadow:0 1px 0 rgba(28,25,23,.015),0 2px 6px rgba(28,25,23,.025)!important;
  padding:8px 12px!important;row-gap:5px!important;column-gap:1px!important;align-items:center!important;
}

/* ---- top menu-bar items ---- */
.menu-item{
  font-size:13px!important;font-weight:600!important;color:#44403c!important;
  padding:6px 12px!important;border-radius:9px!important;
  transition:background .15s ease,color .15s ease!important;
}
.menu-item:hover{background:#f4effe!important;color:#6d28d9!important}
.menu-item.active,.menu-item[aria-expanded="true"],.menu-item.open{background:#ece3fd!important;color:#6d28d9!important}

/* ---- toolbar buttons (incl. dropdown buttons): refined pill + micro-interactions ---- */
.tb-btn,.tb-dropdown-btn{
  height:31px!important;border:1px solid transparent!important;border-radius:10px!important;
  padding:5px 11px!important;gap:7px!important;
  font-size:12.5px!important;font-weight:600!important;color:#44403c!important;letter-spacing:.1px!important;
  display:inline-flex!important;align-items:center!important;
  transition:background .16s ease,border-color .16s ease,color .16s ease,box-shadow .16s ease,transform .12s cubic-bezier(.2,.8,.2,1)!important;
}
.tb-btn i,.tb-dropdown-btn i{font-size:13px!important;width:16px;text-align:center;transition:transform .16s ease,color .16s ease}
.tb-btn:hover,.tb-dropdown-btn:hover{
  background:#f7f3fe!important;border-color:#eee8fb!important;color:#1c1917!important;
  box-shadow:0 1px 2px rgba(124,58,237,.05),0 3px 10px rgba(124,58,237,.08)!important;
  transform:translateY(-1px)!important;
}
.tb-btn:hover i,.tb-dropdown-btn:hover i{transform:scale(1.1)}
.tb-btn:active,.tb-dropdown-btn:active{transform:translateY(0)!important;box-shadow:inset 0 1px 2px rgba(28,25,23,.06)!important}
.tb-btn.active,.tb-btn[aria-pressed="true"],.tb-dropdown-btn.active,.tb-dropdown-btn[aria-expanded="true"]{
  background:linear-gradient(180deg,#f5f0fe,#efe7fd)!important;border-color:#ddd0f7!important;color:#6d28d9!important;
  box-shadow:inset 0 1px 1px rgba(255,255,255,.7),0 1px 2px rgba(124,58,237,.08)!important;
}
.tb-btn.active i,.tb-btn[aria-pressed="true"] i,.tb-dropdown-btn.active i,.tb-dropdown-btn[aria-expanded="true"] i{color:#7c3aed!important}
.tb-btn:focus-visible,.tb-dropdown-btn:focus-visible{outline:2px solid #c4b5fd!important;outline-offset:1px!important}
/* dropdown caret on ▾ buttons */
.tb-btn .fa-caret-down,.tb-btn .fa-chevron-down,.tb-btn .fa-angle-down,
.tb-dropdown-btn .fa-caret-down,.tb-dropdown-btn .fa-chevron-down,.tb-dropdown-btn .fa-angle-down{color:#b6afa3!important;font-size:10px!important;width:auto;margin-left:0}
.tb-btn:hover .fa-caret-down,.tb-dropdown-btn:hover .fa-caret-down,
.tb-btn:hover .fa-chevron-down,.tb-dropdown-btn:hover .fa-chevron-down,
.tb-btn:hover .fa-angle-down,.tb-dropdown-btn:hover .fa-angle-down{color:#7c3aed!important}

/* ---- group dividers: soft fading hairline ---- */
.tb-group{padding:0 10px!important;align-items:center!important}
.tb-group:not(:last-child)::after{
  background:linear-gradient(180deg,transparent,#e7e1d5 18%,#e7e1d5 82%,transparent)!important;
  width:1px!important;top:12%!important;height:76%!important;
}

/* ---- PRIMARY "Open Project": polished signature gradient with depth ---- */
.toolbar button[title*="Open Operator Project"],.toolbar .tb-btn.csp-primary{
  border-radius:10px!important;padding:6px 15px!important;height:31px!important;font-weight:700!important;letter-spacing:.2px!important;
  background:var(--ct-sig)!important;border:none!important;color:#fff!important;
  box-shadow:0 1px 2px rgba(124,58,237,.28),0 5px 14px rgba(124,58,237,.24)!important;
}
.toolbar button[title*="Open Operator Project"] i{color:#fff!important}
.toolbar button[title*="Open Operator Project"]:hover{
  filter:brightness(1.05) saturate(1.05)!important;transform:translateY(-1px)!important;
  box-shadow:0 2px 4px rgba(124,58,237,.32),0 9px 22px rgba(124,58,237,.3)!important;
}

/* ---- DROPDOWN PANELS: floating glass cards ---- */
.tb-dropdown-panel,.menu-dropdown,.ctx-menu{
  background:rgba(255,255,255,.9)!important;
  backdrop-filter:blur(22px) saturate(1.5)!important;-webkit-backdrop-filter:blur(22px) saturate(1.5)!important;
  border:1px solid rgba(28,25,23,.065)!important;border-radius:15px!important;
  box-shadow:0 1px 2px rgba(28,25,23,.04),0 14px 36px rgba(28,25,23,.14),0 3px 10px rgba(28,25,23,.06)!important;
  padding:7px!important;
  animation:ct-dd-in .15s cubic-bezier(.16,1,.3,1)!important;
}
@keyframes ct-dd-in{from{opacity:0;transform:translateY(-7px) scale(.97)}to{opacity:1;transform:none}}

/* dropdown items: pill hover + slide + violet glyph + mono shortcut ---- */
.tb-dd-item,.menu-dropdown-item,.ctx-item{
  border-radius:10px!important;padding:8px 12px!important;margin:1px 0!important;
  font-size:12.5px!important;font-weight:500!important;color:#44403c!important;
  display:flex!important;align-items:center;gap:10px;
  transition:background .13s ease,color .13s ease,transform .13s cubic-bezier(.2,.8,.2,1)!important;
}
.tb-dd-item i,.menu-dropdown-item i,.ctx-item i{color:#7c3aed!important;width:17px;text-align:center;font-size:12.5px!important;flex:0 0 auto}
.tb-dd-item:hover,.menu-dropdown-item:hover,.ctx-item:hover{
  background:linear-gradient(90deg,#f3eefe,#f7f3fe)!important;color:#1c1917!important;transform:translateX(3px)!important;
}
.tb-dd-item:hover i,.menu-dropdown-item:hover i,.ctx-item:hover i{color:#6d28d9!important}
.menu-dropdown-item .shortcut,.tb-dd-item .shortcut,.ctx-item .shortcut{
  margin-left:auto!important;color:#a8a29e!important;font-family:var(--v7-mono)!important;font-size:10.5px!important;letter-spacing:.3px;font-weight:500
}
.menu-dropdown-item.disabled{color:#c4beb4!important;opacity:.7}
.menu-sep,.ctx-sep{height:1px!important;background:linear-gradient(90deg,transparent,rgba(28,25,23,.07),transparent)!important;margin:6px 10px!important;border:none!important}

/* respect reduced motion */
@media (prefers-reduced-motion:reduce){
  .tb-btn,.tb-dd-item,.menu-dropdown-item,.menu-item,.tb-dropdown-panel,.menu-dropdown{transition:none!important;animation:none!important}
}

/* ============================================================================
   12. PREMIUM PANELS · DOCK · STATUS · DIALOG FORMS  (v9.2)
   Extends the toolbar polish to the whole workspace, house-theme consistent.
   ========================================================================== */

/* ---- LEFT NETWORK PANEL ---- */
.left-panel{background:linear-gradient(180deg,#fffdfa,#fbf9f4)!important;border-right:1px solid #ece7dd!important}
.left-panel input[type="text"],.left-panel input[type="search"]{
  background:#faf8f2!important;border:1px solid #e7e1d5!important;border-radius:10px!important;
  font-size:12.5px!important;padding:8px 12px!important;color:#1c1917!important;
  transition:border-color .15s ease,box-shadow .15s ease,background .15s ease!important;
}
.left-panel input[type="text"]:focus,.left-panel input[type="search"]:focus{
  border-color:#c4b5fd!important;background:#fff!important;box-shadow:0 0 0 3px rgba(124,58,237,.1)!important;outline:none!important;
}
/* tree rows */
.tree-row{border-radius:9px!important;margin:1px 7px!important;transition:background .13s ease,box-shadow .13s ease!important}
.tree-row:hover{background:#f5f1fd!important}
.tree-row.selected{background:linear-gradient(90deg,#f3eefe,#f8f5fe)!important;box-shadow:inset 2.5px 0 0 #7c3aed!important}
.tree-row.selected .tree-label{color:#6d28d9!important;font-weight:700!important}
.tree-toggle{border-radius:6px!important;transition:all .12s ease!important}
.tree-toggle:hover{background:#ece3fd!important;color:#7c3aed!important}
.tree-cb{accent-color:#7c3aed!important}
.tree-badge{background:#f4effe!important;color:#6d28d9!important;border-radius:6px!important;font-weight:700!important;border:1px solid #ebe3fc!important}
.folder-row{color:#1c1917!important;font-weight:700!important}
/* bottom panel tabs (Network/Site/Geo/Parameters/6G) */
.panel-tabs,.panel-tabs-bottom{background:linear-gradient(180deg,#fcfbf7,#f9f7f1)!important;border-top:1px solid #ece7dd!important;padding:5px 4px!important}
.panel-btab{
  font-size:10.5px!important;font-weight:700!important;color:#78716c!important;border-radius:9px!important;
  padding:7px 6px!important;letter-spacing:.2px!important;transition:background .14s ease,color .14s ease,box-shadow .14s ease!important;
}
.panel-btab i{transition:transform .14s ease}
.panel-btab:hover{background:#f4effe!important;color:#6d28d9!important}
.panel-btab:hover i{transform:translateY(-1px)}
.panel-btab.active,.panel-btab[data-active="true"]{
  background:linear-gradient(180deg,#f4effe,#ece3fd)!important;color:#6d28d9!important;
  box-shadow:inset 0 1px 1px rgba(255,255,255,.8),0 1px 3px rgba(124,58,237,.12)!important;
}
.panel-btab.active i,.panel-btab[data-active="true"] i{color:#7c3aed!important}
/* layer-group strip */
.layer-strip{background:#fcfbf7!important;border-top:1px solid #ece7dd!important}
.layer-strip-btn{border-radius:9px!important;transition:background .14s ease!important}
.layer-strip-btn:hover{background:#f4effe!important}

/* ---- RIGHT DOCK (Properties / Inspector) ---- */
.dock-panel{background:linear-gradient(180deg,#fffdfa,#fbf9f4)!important;border-left:1px solid #ece7dd!important}
.dock-panel-title{
  background:#fffdfa!important;border-bottom:1px solid #ece7dd!important;
  font-family:var(--v7-serif)!important;font-size:15.5px!important;font-weight:500!important;
  letter-spacing:.2px!important;text-transform:none!important;color:#1c1917!important;
}
.prop-grid-header{background:#f6f2fd!important;border-radius:9px!important;color:#6d28d9!important;font-weight:700!important}
.empty-state{color:#a8a29e!important}

/* ---- SHARED FORM CONTROLS (dock + dialogs) ---- */
.prop-grid input,.prop-grid select,.dlg-input,.dlg-select,.dialog select,.dialog input[type="text"],.dialog input[type="number"]{
  background:#fff!important;border:1px solid #e3ddd0!important;border-radius:10px!important;
  font-size:12.5px!important;padding:9px 12px!important;color:#1c1917!important;
  transition:border-color .15s ease,box-shadow .15s ease!important;
}
.prop-grid input:hover,.dlg-input:hover,.dlg-select:hover,.dialog select:hover{border-color:#cfc6ed!important}
.prop-grid input:focus,.prop-grid select:focus,.dlg-input:focus,.dlg-select:focus,.dialog select:focus,.dialog input:focus{
  border-color:#a78bfa!important;box-shadow:0 0 0 3px rgba(124,58,237,.12)!important;outline:none!important;
}

/* ---- STATUS BAR ---- */
.statusbar,.footer{background:linear-gradient(180deg,#fffdfa,#fbf9f4)!important;border-top:1px solid #ece7dd!important;color:#78716c!important}
.statusbar>*{border-right:1px solid #ece7dd!important}
.statusbar>*:hover{background:#f7f4fd!important}
.statusbar .mono,.footer .mono{font-family:var(--v7-mono)!important;color:#57534e!important}

/* ---- DIALOGS: rounder, deeper, blurred overlay ---- */
.dialog-overlay,.pw-overlay,.modal-overlay{background:rgba(28,25,23,.42)!important;backdrop-filter:blur(5px)!important;-webkit-backdrop-filter:blur(5px)!important}
.dialog,.dialog-panel,.pw-dialog{
  border-radius:18px!important;border:1px solid rgba(28,25,23,.07)!important;
  box-shadow:0 1px 3px rgba(28,25,23,.06),0 30px 72px rgba(28,25,23,.24)!important;overflow:hidden;
}
.dialog-body,.pw-body{background:#fdfcf9!important}
.dialog-footer,.pw-footer{background:#fbf9f4!important;border-top:1px solid #ece7dd!important}
.dialog-btn{border-radius:11px!important;font-weight:600!important;transition:background .15s ease,border-color .15s ease,box-shadow .15s ease,transform .12s ease!important}
.dialog-btn:not(.primary){background:#fff!important;border:1px solid #e3ddd0!important;color:#44403c!important}
.dialog-btn:not(.primary):hover{background:#f7f4fd!important;border-color:#cfc6ed!important;color:#6d28d9!important;transform:translateY(-1px)!important}
.dialog-btn.primary{background:var(--ct-sig)!important;border:none!important;color:#fff!important;box-shadow:0 2px 10px rgba(124,58,237,.26)!important}
.dialog-btn.primary:hover{filter:brightness(1.05) saturate(1.04)!important;transform:translateY(-1px)!important;box-shadow:0 5px 16px rgba(124,58,237,.3)!important}
.dlg-fieldset{border:1px solid #ece7dd!important;border-radius:13px!important;background:#fcfbf7!important}
.dlg-label{color:#78716c!important;font-weight:700!important;letter-spacing:.3px!important}
.kpi-card,.dash-card,.cap-card,.lb-result-card{border:1px solid #ece7dd!important;border-radius:13px!important;box-shadow:0 1px 2px rgba(28,25,23,.04)!important;background:#fff!important}
/* the app's KPI cards ship white text (for a coloured bg) — now that the card is white,
   recolour the value/label to house ink/violet so they're visible & premium */
.kpi-card .kpi-val{color:#6d28d9!important;font-weight:800!important}
.kpi-card .kpi-lbl{color:#78716c!important;opacity:1!important}
.data-table th{background:#f6f2fd!important;color:#6d28d9!important;font-weight:700!important;letter-spacing:.3px!important}

/* ============================================================================
   13. WIZARD/DIALOG INNER POLISH + LEFT-PANEL REFINEMENT  (v9.3)
   Targets the wizard's inline-styled React cards by their serialised gradient,
   and tightens the network tree so cell names breathe.
   ========================================================================== */

/* ---- WIZARD STAT CHIPS → clean premium white cards (coloured numbers pop) ---- */
.dialog-body [style*="rgb(239, 246, 255), rgb(219, 234, 254)"],
.dialog-body [style*="rgb(245, 243, 255), rgb(237, 233, 254)"],
.dialog-body [style*="rgb(255, 247, 237), rgb(255, 237, 213)"],
.dialog-body [style*="rgb(236, 253, 245), rgb(209, 250, 229)"],
.dialog-body [style*="rgb(248, 250, 252), rgb(226, 232, 240)"]{
  background:#ffffff!important;border:1px solid #ece7dd!important;border-radius:14px!important;
  box-shadow:0 1px 2px rgba(28,25,23,.04),0 3px 12px rgba(28,25,23,.05)!important;
  transition:box-shadow .16s ease,transform .14s ease!important;
}
.dialog-body [style*="rgb(239, 246, 255), rgb(219, 234, 254)"]:hover,
.dialog-body [style*="rgb(245, 243, 255), rgb(237, 233, 254)"]:hover,
.dialog-body [style*="rgb(255, 247, 237), rgb(255, 237, 213)"]:hover,
.dialog-body [style*="rgb(236, 253, 245), rgb(209, 250, 229)"]:hover,
.dialog-body [style*="rgb(248, 250, 252), rgb(226, 232, 240)"]:hover{
  box-shadow:0 4px 16px rgba(28,25,23,.09)!important;transform:translateY(-2px)!important;
}

/* ---- QUICK-SCENARIO box → clean paper card ---- */
.dialog-body [style*="rgb(250, 251, 255), rgb(240, 244, 255)"]{
  background:#fcfbf7!important;border:1px solid #ece7dd!important;border-radius:15px!important;
}
/* ---- STEP HEADER bars → refined house-violet gradient ---- */
.dialog-body [style*="rgb(240, 244, 255), rgb(232, 238, 248)"]{
  background:linear-gradient(135deg,#f3eefe,#ebe2fd)!important;border:1px solid #e1d4fb!important;border-radius:11px!important;
}
/* ---- ESA / green data card → clean ---- */
.dialog-body [style*="rgb(240, 253, 244), rgb(236, 253, 245)"]{
  background:#f8fbf9!important;border:1px solid #d9ecde!important;border-radius:13px!important;
}
/* ---- AI-suggestions banner → keep semantic amber but cleaner ---- */
.dialog-body [style*="rgb(255, 251, 235), rgb(254, 243, 199)"]{
  background:linear-gradient(135deg,#fffdf4,#fdf4d9)!important;border:1px solid #f3e3b0!important;border-radius:15px!important;
}
/* section cards / fieldsets inside the wizard body */
.dialog-body fieldset,.dialog-body .dlg-fieldset{border-radius:14px!important}

/* ---- LEFT NETWORK PANEL: cleaner, more compact, professional ---- */
/* compact azimuth + PCI badges so the cell NAME gets the room */
.tree-badge{font-size:9px!important;padding:2px 7px!important;letter-spacing:.2px!important;font-weight:700!important;flex:0 0 auto!important}
.tree-row .mono,.tree-row [class*="pci"],.tree-row span[style*="font-family"]{font-size:9px!important;letter-spacing:.2px!important}
.tree-label{font-size:12px!important;flex:1 1 auto!important;min-width:0!important;font-weight:500!important}
.folder-row .tree-label,.tree-row.folder-row>*{font-weight:700!important}
/* tighten row rhythm + crisper indent guides */
.tree-row{min-height:27px!important;padding-top:2px!important;padding-bottom:2px!important;gap:5px!important}
.tree-icon{width:18px!important;height:18px!important;border-radius:6px!important;box-shadow:none!important}
/* the "Sites (7)" folder header: a subtle paper strip */
.folder-row{background:transparent!important}
.folder-row:hover{background:#f5f1fd!important}
/* network panel header ("Network" + ×) */
.left-panel .panel-header,.left-panel>div:first-child{letter-spacing:.2px}
/* widen the panel so deeply-nested cell names (56px indent + icon + badge) show in
   full instead of truncating to "5G N…" — a more professional, readable tree */
.left-panel{width:320px!important;min-width:320px!important}

/* ---- 14. INSPECTOR side-tab no longer overlaps the Properties panel ----
   The class-less fixed INSPECTOR pull-tab (right:0, 34px) sat on top of the
   right Properties panel's edge, hiding the input spinners. Reserve a clear
   strip on the panel's right so its content never sits under the tab. */
.right-panel .dock-panel-body,.right-panel .prop-grid{padding-right:40px!important;box-sizing:border-box!important}
.right-panel .dock-panel-title{padding-right:42px!important;box-sizing:border-box!important}

/* ---- 15. DIALOG HEADERS/BANNERS still using the app's indigo gradient → house signature ----
   e.g. Transmitter Bulk-Edit header = linear-gradient(135deg,#635BFF,#4F46E5)
   (browser serialises to rgb(99, 91, 255), rgb(79, 70, 229)). Repaint them all. */
/* only repaint elements whose background is an indigo GRADIENT (dialog headers) —
   NOT every element that merely references #635BFF (e.g. a banner's left border).
   Some keep hex in the attribute, others serialise to rgb() — cover both. */
[style*="gradient(135deg,#635BFF" i],[style*="gradient(135deg, #635BFF" i],
[style*="gradient(135deg,#4F46E5" i],
[style*="rgb(99, 91, 255), rgb(79, 70, 229)"],
[style*="rgb(99, 102, 241), rgb(79, 70, 229)"]{background-image:var(--ct-sig)!important}
/* primary/Apply buttons in bulk/pickup dialogs (solid indigo) → signature, white text */
.pw-dialog button[style*="#635BFF" i],.dialog button[style*="#635BFF" i],
button[style*="background:#635BFF" i],button[style*="background: #635BFF" i],
button[style*="background:#4F46E5" i]{background-image:var(--ct-sig)!important;border:none!important;color:#fff!important}

/* reduced-motion safety inherited from v7 */
