/*
 * AeroDAQ UNIVERSAL UI FOUNDATION — Project 00
 * SINGLE STYLESHEET CONTRACT
 * Generated by controlled consolidation on 2026-10-04.
 *
 * This file contains all currently required production and developer-workspace
 * presentation rules. Existing modules MUST inherit from this file. New module-
 * specific CSS files are prohibited unless Project 00 is explicitly reopened.
 */

/* ======================================================================
   LEGACY MIGRATION SOURCE: src/daq/webui/shared/foundation.css
   Consolidated into the single universal Project 00 stylesheet.
   ====================================================================== */
/*
 * AeroDAQ Universal UI Foundation — Project 00 (FROZEN CONTRACT)
 * ---------------------------------------------------------------------------
 * SINGLE SOURCE OF TRUTH for reusable visual primitives across AeroDAQ.
 *
 * Rules:
 *  - Feature modules consume these tokens/classes; they do not repaint them.
 *  - Module CSS may define domain-specific layout only.
 *  - No page-specific theme overrides, no specificity hacks, no !important chains.
 *  - New reusable visual patterns are added here by explicitly reopening Project 00.
 */

/* ============================== TOKENS =================================== */
:root {
  --adq-ui-canvas:#f1eefb;
  --adq-ui-surface:#ffffff;
  --adq-ui-surface-muted:#f7f6fb;
  --adq-ui-surface-raised:#ffffff;
  --adq-ui-text:#1c1640;
  --adq-ui-text-muted:#524c7c;
  --adq-ui-border:rgba(90,70,170,.18);
  --adq-ui-border-strong:rgba(90,70,170,.30);
  --adq-ui-divider:rgba(90,70,170,.10);
  --adq-ui-accent:#ffb547;
  --adq-ui-primary:#2f79e8;
  --adq-ui-success:#109343;
  --adq-ui-warning:#935f10;
  --adq-ui-danger:#93102c;
  --adq-ui-focus:#7d4ae0;
  --adq-ui-overlay:rgba(8,5,24,.58);
  --adq-ui-shadow-card:0 8px 26px rgba(27,18,64,.08);
  --adq-ui-shadow-float:0 16px 42px rgba(20,13,54,.18);

  --adq-ui-space-1:4px;
  --adq-ui-space-2:8px;
  --adq-ui-space-3:12px;
  --adq-ui-space-4:16px;
  --adq-ui-space-5:20px;
  --adq-ui-space-6:24px;
  --adq-ui-space-8:32px;

  --adq-ui-radius-sm:10px;
  --adq-ui-radius-control:14px;
  --adq-ui-radius-card:18px;
  --adq-ui-radius-modal:24px;
  --adq-ui-radius-pill:999px;
  --adq-ui-control-height:38px;
  --adq-ui-font-family:"Sora","Segoe UI",sans-serif;
  --adq-ui-mono-family:"JetBrains Mono","Cascadia Mono",monospace;

  /* Editor compatibility tokens consumed by the existing operator UI. */
  --adq-ui-editor-surface:#ffffff;
  --adq-ui-editor-header:#f1eefb;
  --adq-ui-editor-body:#f7f6fb;
  --adq-ui-editor-text:#1c1640;
  --adq-ui-editor-muted:#524c7c;
  --adq-ui-editor-label:#3a3466;
  --adq-ui-editor-section:rgba(90,70,170,.025);
  --adq-ui-editor-row:rgba(90,70,170,.028);
  --adq-ui-editor-panel:rgba(90,70,170,.018);
  --adq-ui-editor-progress:rgba(117,99,174,.08);
  --adq-ui-editor-border:rgba(90,70,170,.16);
  --adq-ui-editor-border-active:rgba(90,70,170,.32);
  --adq-ui-editor-border-outer:rgba(90,70,170,.28);
  --adq-ui-editor-border-soft:rgba(90,70,170,.14);
  --adq-ui-editor-border-row:rgba(90,70,170,.13);
  --adq-ui-editor-border-field:rgba(90,70,170,.18);
  --adq-ui-editor-divider:rgba(90,70,170,.10);
  --adq-ui-editor-footer-border:rgba(90,70,170,.11);
  --adq-ui-editor-actions:linear-gradient(180deg,rgba(247,246,251,0),rgba(247,246,251,.98) 35%);
}

html[data-theme="dark"] {
  --adq-ui-canvas:#0d0a1f;
  --adq-ui-surface:#1d1740;
  --adq-ui-surface-muted:#241d4a;
  --adq-ui-surface-raised:#292052;
  --adq-ui-text:#f4f1ff;
  --adq-ui-text-muted:#c1b9e6;
  --adq-ui-border:rgba(151,140,204,.16);
  --adq-ui-border-strong:rgba(151,140,204,.28);
  --adq-ui-divider:rgba(151,140,204,.10);
  --adq-ui-success:#5be38a;
  --adq-ui-warning:#ffb43d;
  --adq-ui-danger:#ff5c7a;
  --adq-ui-focus:#ffb547;
  --adq-ui-overlay:rgba(4,2,14,.72);
  --adq-ui-shadow-card:0 8px 26px rgba(0,0,0,.18);
  --adq-ui-shadow-float:0 18px 48px rgba(0,0,0,.34);

  --adq-ui-editor-surface:#1d1740;
  --adq-ui-editor-header:#241b50;
  --adq-ui-editor-body:#1b153c;
  --adq-ui-editor-text:#f0edff;
  --adq-ui-editor-muted:#aaa3c6;
  --adq-ui-editor-label:#ded9f4;
  --adq-ui-editor-section:rgba(255,255,255,.025);
  --adq-ui-editor-row:rgba(255,255,255,.028);
  --adq-ui-editor-panel:rgba(255,255,255,.018);
  --adq-ui-editor-progress:rgba(117,99,174,.16);
  --adq-ui-editor-border:rgba(151,140,204,.16);
  --adq-ui-editor-border-active:rgba(151,140,204,.22);
  --adq-ui-editor-border-outer:rgba(148,136,210,.28);
  --adq-ui-editor-border-soft:rgba(151,140,204,.14);
  --adq-ui-editor-border-row:rgba(151,140,204,.13);
  --adq-ui-editor-border-field:rgba(151,140,204,.18);
  --adq-ui-editor-divider:rgba(151,140,204,.10);
  --adq-ui-editor-footer-border:rgba(151,140,204,.11);
  --adq-ui-editor-actions:linear-gradient(180deg,rgba(27,21,60,0),rgba(27,21,60,.98) 35%);
}

/* ============================= BASE CONTRACT ============================= */
.adq-ui {
  font-family:var(--adq-ui-font-family);
  color:var(--adq-ui-text);
  background:var(--adq-ui-canvas);
  color-scheme:dark;
}
html[data-theme="light"] .adq-ui { color-scheme:light; }
.adq-ui *, .adq-ui *::before, .adq-ui *::after { box-sizing:border-box; }
.adq-ui :is(button,input,select,textarea) { font:inherit; }
.adq-ui :is(button,input,select,textarea,[tabindex]):focus-visible {
  outline:2px solid var(--adq-ui-focus);
  outline-offset:2px;
}
.adq-ui :disabled,.adq-ui [aria-disabled="true"] { opacity:.5; cursor:not-allowed; }

/* ============================== CONTROLS ================================= */
.adq-ui :is(.adq-button,.adq-input,.adq-select,.adq-textarea) {
  min-height:var(--adq-ui-control-height);
  padding:var(--adq-ui-space-2) var(--adq-ui-space-3);
  border:1px solid var(--adq-ui-border);
  border-radius:var(--adq-ui-radius-control);
  color:var(--adq-ui-text);
  background:var(--adq-ui-surface);
}
.adq-ui .adq-button {
  cursor:pointer;
  display:inline-flex;
  gap:var(--adq-ui-space-2);
  align-items:center;
  justify-content:center;
  text-decoration:none;
  font-weight:650;
  line-height:1.1;
}
.adq-ui .adq-button:hover:not(:disabled) { border-color:var(--adq-ui-border-strong); }
.adq-ui .adq-button[data-variant="primary"] {
  background:var(--adq-ui-accent);
  border-color:var(--adq-ui-accent);
  color:#1c1640;
}
.adq-ui .adq-button[data-variant="danger"] {
  color:var(--adq-ui-danger);
  border-color:color-mix(in srgb,var(--adq-ui-danger) 42%,transparent);
}
.adq-ui .adq-icon-button {
  width:var(--adq-ui-control-height);
  min-width:var(--adq-ui-control-height);
  padding:0;
  border-radius:50%;
}
.adq-ui .adq-icon-button > svg { width:16px; height:16px; max-width:16px; max-height:16px; }

/* =============================== FORMS =================================== */
.adq-ui .adq-field { display:grid; gap:var(--adq-ui-space-2); min-width:0; }
.adq-ui .adq-field > span:first-child,
.adq-ui .adq-label { font-size:12px; font-weight:650; color:var(--adq-ui-text); }
.adq-ui .adq-field small,.adq-ui .adq-muted { color:var(--adq-ui-text-muted); }
.adq-ui .adq-form-grid {
  display:grid;
  grid-template-columns:repeat(12,minmax(0,1fr));
  gap:var(--adq-ui-space-3);
}
.adq-ui .adq-form-grid > * { min-width:0; }

/* =============================== CARDS =================================== */
.adq-ui .adq-card {
  padding:var(--adq-ui-space-6);
  border:1px solid var(--adq-ui-border);
  border-radius:var(--adq-ui-radius-card);
  background:var(--adq-ui-surface);
}
.adq-ui .adq-card[data-elevation="raised"] { box-shadow:var(--adq-ui-shadow-card); }
.adq-ui .adq-section {
  padding:var(--adq-ui-space-4);
  border:1px solid var(--adq-ui-border);
  border-radius:var(--adq-ui-radius-card);
  background:var(--adq-ui-surface);
}
.adq-ui .adq-section + .adq-section { margin-top:var(--adq-ui-space-3); }

/* ================================ TABS =================================== */
.adq-ui .adq-tabs { display:flex; gap:var(--adq-ui-space-2); flex-wrap:wrap; }
.adq-ui .adq-tabs [role="tab"] { min-width:0; }
.adq-ui .adq-tabs [role="tab"][aria-selected="true"] {
  border-color:var(--adq-ui-primary);
  background:var(--adq-ui-primary);
  color:#fff;
}

/* =============================== TABLES ================================== */
.adq-ui .adq-table-wrap { overflow:auto; border:1px solid var(--adq-ui-border); border-radius:var(--adq-ui-radius-card); }
.adq-ui .adq-table { width:100%; border-collapse:collapse; font:inherit; }
.adq-ui .adq-table :is(th,td) { padding:var(--adq-ui-space-3); text-align:left; border-bottom:1px solid var(--adq-ui-divider); }
.adq-ui .adq-table th { font-size:11px; color:var(--adq-ui-text-muted); font-weight:700; }
.adq-ui .adq-table tr:last-child td { border-bottom:0; }

/* =============================== MODALS ================================== */
.adq-ui .adq-modal {
  border:1px solid var(--adq-ui-border-strong);
  border-radius:var(--adq-ui-radius-modal);
  background:var(--adq-ui-surface);
  color:var(--adq-ui-text);
  max-width:calc(100vw - 32px);
  max-height:calc(100vh - 32px);
  overflow:hidden;
  display:flex;
  flex-direction:column;
  box-shadow:var(--adq-ui-shadow-float);
}
.adq-ui .adq-modal-head,.adq-ui .adq-modal-actions { padding:var(--adq-ui-space-4) var(--adq-ui-space-6); flex:none; }
.adq-ui .adq-modal-head { border-bottom:1px solid var(--adq-ui-divider); }
.adq-ui .adq-modal-body { padding:var(--adq-ui-space-6); overflow:auto; min-height:0; flex:1; }
.adq-ui .adq-modal-actions {
  border-top:1px solid var(--adq-ui-divider);
  display:flex;
  justify-content:flex-end;
  gap:var(--adq-ui-space-2);
  background:var(--adq-ui-surface);
}

/* ============================== STATUSES ================================= */
.adq-ui .adq-status {
  display:inline-flex;
  align-items:center;
  gap:6px;
  min-height:24px;
  padding:3px 9px;
  border:1px solid var(--adq-ui-border);
  border-radius:var(--adq-ui-radius-pill);
  font-size:10px;
  font-weight:700;
  background:var(--adq-ui-surface-muted);
  color:var(--adq-ui-text-muted);
}
.adq-ui .adq-status::before { content:""; width:6px; height:6px; border-radius:50%; background:currentColor; }
.adq-ui .adq-status[data-status="good"] { color:var(--adq-ui-success); }
.adq-ui .adq-status[data-status="warn"] { color:var(--adq-ui-warning); }
.adq-ui .adq-status[data-status="bad"] { color:var(--adq-ui-danger); }
.adq-ui .adq-status[data-status="info"] { color:var(--adq-ui-primary); }

/* ============================== FEEDBACK ================================= */
.adq-ui .adq-alert {
  border:1px solid var(--adq-ui-border);
  border-left:3px solid var(--adq-ui-warning);
  background:var(--adq-ui-surface-muted);
  border-radius:var(--adq-ui-radius-sm);
  padding:var(--adq-ui-space-4);
  line-height:1.6;
}
.adq-ui .adq-empty { text-align:center; padding:32px 20px; color:var(--adq-ui-text-muted); }
.adq-ui .adq-empty strong { display:block; color:var(--adq-ui-text); margin-bottom:8px; }
.adq-ui .adq-skeleton {
  background:linear-gradient(90deg,var(--adq-ui-surface-muted),var(--adq-ui-border),var(--adq-ui-surface-muted));
  background-size:200% 100%;
  animation:adq-skeleton 1.3s linear infinite;
}
@keyframes adq-skeleton { to { background-position:-200% 0; } }
.adq-ui .adq-toast {
  border:1px solid var(--adq-ui-border);
  border-radius:var(--adq-ui-radius-sm);
  background:var(--adq-ui-surface);
  color:var(--adq-ui-text);
  padding:12px 16px;
  box-shadow:var(--adq-ui-shadow-float);
}

/* ============================= DROPDOWN ================================== */
.adq-ui .adq-dropdown { position:relative; width:100%; }
.adq-ui .adq-dropdown-trigger {
  display:flex;
  align-items:center;
  justify-content:space-between;
  width:100%;
  min-height:var(--adq-ui-control-height);
  padding:var(--adq-ui-space-2) var(--adq-ui-space-3);
  text-align:left;
  color:var(--adq-ui-text);
  background:var(--adq-ui-surface);
  border:1px solid var(--adq-ui-border);
  border-radius:var(--adq-ui-radius-control);
  cursor:pointer;
}
.adq-ui .adq-dropdown-trigger::after { content:"⌄"; margin-left:16px; }
.adq-ui .adq-dropdown-menu {
  position:fixed;
  margin:0;
  z-index:1000;
  padding:6px;
  background:var(--adq-ui-surface);
  border:1px solid var(--adq-ui-border);
  border-radius:12px;
  box-shadow:var(--adq-ui-shadow-float);
}
.adq-ui .adq-dropdown-menu[hidden] { display:none; }
.adq-ui .adq-dropdown-menu [role="option"] {
  padding:10px 12px;
  min-height:40px;
  border-radius:8px;
  color:var(--adq-ui-text);
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:space-between;
}
.adq-ui .adq-dropdown-menu [role="option"]:hover,
.adq-ui .adq-dropdown-menu .highlighted { background:var(--adq-ui-surface-muted); }
.adq-ui .adq-dropdown-menu [aria-selected="true"]::after { content:"✓"; color:var(--adq-ui-accent); margin-left:12px; }
.adq-ui select[data-adq-dropdown-mounted] { display:none; }

/* ============================= RESPONSIVE ================================ */
@media (max-width:900px) {
  .adq-ui .adq-card,.adq-ui .adq-modal-body { padding:var(--adq-ui-space-4); }
  .adq-ui .adq-modal-head,.adq-ui .adq-modal-actions { padding:var(--adq-ui-space-3) var(--adq-ui-space-4); }
}
@media (prefers-reduced-motion:reduce) {
  .adq-ui .adq-skeleton { animation:none; }
  .adq-ui * { scroll-behavior:auto !important; }
}


/* ======================================================================
   LEGACY MIGRATION SOURCE: src/daq/static/dashboard.css
   Consolidated into the single universal Project 00 stylesheet.
   ====================================================================== */
/* AESST DAS 4.19.0 — Dashboard unified layout. One authoritative component layer. */
*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:var(--adq-font)}body{padding-bottom:94px}.dashboard-shell{min-height:100vh}.top-glass{position:sticky;top:10px;z-index:80;margin:10px 14px 0;border-radius:20px}.top-inner{min-height:70px;padding:10px 14px;display:flex;align-items:center;gap:12px}.brand-mark.small{width:42px;height:42px;object-fit:contain}.station-copy{min-width:0;display:grid;gap:2px}.station-copy strong{font-size:15px}.station-copy small{font-size:11px}.top-actions{margin-left:auto;display:flex;align-items:center;gap:8px}.account-control{display:flex;align-items:center;gap:8px}.account-identity{display:grid;text-align:right}.account-identity strong{font-size:12px}.account-identity span{font-size:10px;color:var(--adq-text-secondary)}#clock{font:650 12px ui-monospace,SFMono-Regular,Consolas,monospace}.settings-popover{position:absolute;right:14px;top:72px;width:310px;padding:14px;display:grid;gap:10px}.settings-row{display:flex;align-items:center;justify-content:space-between;gap:10px}.dashboard-content{padding:14px}.dashboard-inner{max-width:1780px;margin:auto;display:grid;gap:16px}.page{display:grid;gap:16px}.page-heading,.section-head,.trend-workspace-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.page-heading h1,.section-head h2,.trend-workspace-header h2{margin:2px 0 4px}.page-heading p,.section-head p,.trend-workspace-header p{margin:0}.station-identity{padding:14px 16px;display:flex;align-items:center;justify-content:space-between;gap:16px}.station-identity h1{margin:2px 0 7px;font-size:22px}.station-meta{display:flex;gap:8px;flex-wrap:wrap}.station-meta span{padding:5px 9px;border-radius:999px;background:var(--adq-surface-soft);font-size:10px;color:var(--adq-text-secondary)}.metric-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.metric-card{padding:13px 14px;min-height:94px;display:grid;align-content:center;gap:4px}.metric-card>span{font-size:10px;color:var(--adq-text-secondary);font-weight:650}.metric-card>strong{font-size:24px;letter-spacing:-.02em}.metric-card>small{font-size:10px}.overview-mode-tabs{padding:5px;display:flex;gap:5px}.overview-mode-tab{flex:1}.overview-mode-tab.active{background:var(--adq-accent-soft);color:var(--adq-accent-strong)}.panel-pad{padding:16px}.trend-workspace-card{padding:16px;overflow:visible}.trend-workspace-header{margin-bottom:14px}.trend-workspace-controls{display:flex;align-items:flex-end;gap:8px;flex-wrap:wrap;justify-content:flex-end}.trend-range-control{min-width:128px;display:grid;gap:5px;font-size:10px;color:var(--adq-text-secondary);font-weight:650}.trend-workspace-layout{display:grid;grid-template-columns:minmax(230px,290px) minmax(0,1fr);gap:14px;min-height:440px}.trend-legend-panel{min-width:0;padding:10px;border:1px solid var(--adq-edge);border-radius:18px;background:var(--adq-surface-soft);overflow:auto}.trend-legend-head{display:flex;align-items:center;justify-content:space-between;padding:2px 4px 9px;font-size:11px}.trend-selected-legend{display:grid;gap:7px}
.trend-legend-item{--parameter-color:#1479c9;appearance:none;width:100%;min-height:54px;padding:8px 10px;border:1px solid var(--adq-edge);border-left:5px solid var(--parameter-color);border-radius:14px;background:var(--adq-surface);display:grid;grid-template-columns:10px minmax(0,1fr) auto;grid-template-areas:"dot name reading" "dot device reading";column-gap:8px;row-gap:2px;text-align:left;cursor:pointer;box-shadow:0 5px 14px rgba(25,58,84,.05);transition:.15s var(--adq-motion)}.trend-legend-item:hover{transform:translateY(-1px);box-shadow:0 8px 20px rgba(25,58,84,.09)}.trend-legend-item.active{background:color-mix(in srgb,var(--adq-surface) 88%,var(--parameter-color) 12%);border-color:color-mix(in srgb,var(--parameter-color) 44%,var(--adq-edge));box-shadow:0 8px 22px color-mix(in srgb,var(--parameter-color) 12%,transparent)}.trend-legend-item>i{grid-area:dot;align-self:center;width:9px;height:9px;border-radius:999px;background:var(--parameter-color);box-shadow:0 0 0 3px color-mix(in srgb,var(--parameter-color) 16%,transparent)}.trend-name{grid-area:name;color:var(--parameter-color)!important;font-size:11px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.trend-live-reading{grid-area:reading;color:var(--parameter-color)!important;font-size:14px;font-weight:750;font-variant-numeric:tabular-nums;align-self:center}.trend-live-reading small{color:inherit}.trend-device{grid-area:device;color:var(--adq-text-secondary);font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.trend-plot-panel{min-width:0;display:grid;grid-template-rows:auto 1fr;gap:8px}.trend-context-line{display:flex;justify-content:space-between;gap:12px;color:var(--adq-text-secondary);font-size:10px}.station-trend-surface,.chart-wrap,.interactive-chart{min-height:390px;border:1px solid #d8e4ed;border-radius:18px;background:var(--adq-technical-bg)!important;padding:10px;box-shadow:inset 0 1px 0 #fff,0 8px 24px rgba(31,67,95,.06)}.station-trend-surface canvas{width:100%!important;height:100%!important}.value-grid,.station-live-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.value-tile,.premium-live-tile,.metro-value-tile{min-height:128px;padding:14px;border:1px solid var(--adq-edge);border-radius:18px;background:var(--adq-surface);box-shadow:0 7px 18px rgba(28,60,87,.06);position:relative;overflow:hidden}.premium-live-tile:before,.premium-live-tile:after,.value-tile:before,.value-tile:after{content:none!important}.premium-live-tile{border-top:3px solid var(--tile-color,var(--adq-accent))}.premium-live-tile .parameter,.premium-live-tile .reading{color:var(--tile-color,var(--adq-accent))!important}.reading{font-size:24px;font-weight:750}.page-stack{display:grid;gap:12px}.segmented{display:flex;gap:4px;padding:4px;border-radius:16px;background:var(--adq-surface-soft)}.segment.active{background:var(--adq-surface);color:var(--adq-accent-strong)}.report-grid,.report-filter-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px}.graph-control-bar{display:flex;gap:8px;flex-wrap:wrap}.diagnostic-parameter-stack{display:grid;gap:12px}.list-surface,.trace-table-wrap,.tabular-content{border-radius:16px;border:1px solid var(--adq-edge);overflow:auto}.modal-backdrop{position:fixed;inset:0;background:rgba(7,27,43,.44);z-index:400;display:grid;place-items:center;padding:20px}.modal{width:min(520px,100%);padding:20px}.error-banner{position:fixed;z-index:500;top:94px;left:50%;transform:translateX(-50%);padding:10px 14px;border-radius:14px;background:var(--adq-danger-soft);color:var(--adq-error)}
@media(max-width:1280px){.metric-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.value-grid,.station-live-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.trend-workspace-layout{grid-template-columns:250px minmax(0,1fr)}}
@media(max-width:1024px){.top-inner{align-items:flex-start;flex-wrap:wrap}.top-actions{width:100%;justify-content:flex-end}.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.value-grid,.station-live-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.trend-workspace-layout{grid-template-columns:1fr}.trend-selected-legend{grid-template-columns:repeat(2,minmax(0,1fr))}.trend-workspace-header{display:grid}.trend-workspace-controls{justify-content:flex-start}}
@media(max-width:720px){.dashboard-content{padding:10px}.metric-grid,.value-grid,.station-live-grid,.trend-selected-legend{grid-template-columns:1fr}.account-identity{display:none}.overview-mode-tabs{overflow-x:auto}.overview-mode-tab{min-width:140px}.trend-context-line small{display:none}}


/* AESST DAS Dashboard: Match Service Manager Layout Structure */
:root{
  --fb-blue:#1877f2;
  --fb-blue-hover:#166fe5;
  --fb-blue-deep:#0b5fcc;
  --fb-blue-soft:rgba(24,119,242,.06);
  --fb-blue-light:rgba(24,119,242,.10);
  --fb-ink:#1a2e42;
  --fb-ink-light:#2a3e52;
  --fb-muted:#5a6e82;
  --fb-muted-light:#7a8e9a;
  --fb-line:rgba(64,112,151,.15);
  --fb-line-light:rgba(64,112,151,.10);
  --fb-surface:rgba(255,255,255,.82);
  --fb-surface-strong:rgba(255,255,255,.90);
  --fb-surface-strong:rgba(255,255,255,.95);
  --fb-shadow:0 8px 24px rgba(31,64,96,.08),inset 0 1px 0 rgba(255,255,255,.95);
  --fb-shadow-hover:0 12px 32px rgba(31,64,96,.12),inset 0 1px 0 rgba(255,255,255,.98);
  --fb-success:#21896e;
  --fb-success-bg:rgba(33,137,110,.10);
  --fb-warning:#c45a08;
  --fb-warning-bg:rgba(196,90,8,.10);
  --fb-error:#9e3443;
  --fb-error-bg:rgba(158,52,67,.10);
}

/* Global Dashboard Shell - Match Service Manager */
.dashboard-shell{
  background:linear-gradient(145deg,#eef6fc 0%,#f7fbff 48%,#eaf4fb 100%)!important;
  color:var(--fb-ink)!important;
  min-height:100vh;
  overflow:hidden;
}
.dashboard-shell::before{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  background:radial-gradient(circle at 12% 8%,rgba(24,119,242,.06),transparent 35%),radial-gradient(circle at 88% 15%,rgba(65,188,171,.05),transparent 30%),radial-gradient(circle at 45% 85%,rgba(24,119,242,.04),transparent 28%);
  z-index:-1;
}

/* App Shell Structure */
.app-shell{
  height:100vh;
  display:flex;
  flex-direction:column;
  position:relative;
  isolation:isolate;
}

/* App Content - Match Service Manager Padding */
.app-content{
  flex:1;
  overflow:auto;
  padding:12px 14px 78px;
  scroll-behavior:smooth;
}
.app-content-inner{
  width:min(1440px,100%);
  margin:0 auto;
  display:grid;
  gap:10px;
}

/* Hero Shell - Top Container like Service Manager */
.top-glass{
  display:flex;
  align-items:center;
  gap:11px;
  padding:13px 15px;
  margin-bottom:10px;
  background:var(--fb-surface);
  border:1px solid rgba(255,255,255,.95);
  border-radius:14px;
  box-shadow:var(--fb-shadow);
  
  
}
.top-inner{
  display:flex;
  align-items:center;
  gap:11px;
  min-width:0;
  flex:1;
}
.brand-mark.small{
  width:42px;
  height:42px;
  border-radius:14px;
  object-fit:contain;
}
.station-copy{
  min-width:0;
  flex:1;
  display:grid;
  gap:2px;
}
.station-copy .eyebrow{
  font-size:8px;
  letter-spacing:.11em;
  color:var(--fb-blue);
  font-weight:800;
  text-transform:uppercase;
}
.station-copy strong{
  font-size:16px;
  color:var(--fb-ink);
  font-weight:700;
  letter-spacing:-.032em;
  line-height:1.06;
}
.station-copy small{
  font-size:10px;
  color:var(--fb-muted);
  line-height:1.35;
}
.top-actions{
  display:flex;
  align-items:center;
  gap:10px;
}
.account-identity{
  text-align:right;
}
.account-identity strong{
  font-size:12px;
  color:var(--fb-ink);
  font-weight:600;
}
.account-identity span{
  font-size:9px;
  color:var(--fb-muted);
}
#clock{
  font:650 10px ui-monospace,SFMono-Regular,Consolas,monospace;
  color:var(--fb-muted);
  padding:5px 10px;
  background:var(--fb-surface-strong);
  border-radius:16px;
  border:1px solid var(--fb-line-light);
}

/* Page Grid Layout */
.page-grid{
  display:grid;
  gap:10px;
}

/* Surface cards */
.glass-card{
  background:var(--fb-surface);
  background-image:none;
  border:1px solid rgba(255,255,255,.95);
  border-radius:14px;
  box-shadow:var(--fb-shadow);
  
  
  transition:all 0.3s cubic-bezier(0.4,0,0.2,1);
}
.glass-card:hover{
  background:var(--fb-surface-strong);
  box-shadow:var(--fb-shadow-hover);
  border-color:rgba(255,255,255,.98);
}
.glass-card:before{
  content:none;
  background:none;
}
.panel-pad{
  padding:13px 15px;
}
.section-head{
  display:flex;
  align-items:flex-start;
  gap:8px;
  justify-content:space-between;
  margin-bottom:8px;
}
.section-head .eyebrow{
  font-size:8px;
  letter-spacing:.11em;
  color:var(--fb-blue);
  font-weight:800;
  text-transform:uppercase;
}
.section-head h2{
  font-size:14px;
  color:var(--fb-ink);
  font-weight:700;
  letter-spacing:-.015em;
  margin:0;
}
.section-head h3{
  font-size:13px;
  color:var(--fb-ink);
  font-weight:600;
  margin:0;
}
.section-head p{
  font-size:9px;
  color:var(--fb-muted);
  margin:3px 0 0;
  line-height:1.35;
}

/* Status Chips */
.status-chip{
  font-size:9px;
  font-weight:700;
  padding:4px 10px;
  border-radius:18px;
  text-transform:uppercase;
  letter-spacing:.05em;
  border:1px solid transparent;
}
.status-chip.good{
  background:var(--fb-success-bg);
  color:var(--fb-success);
  border-color:rgba(33,137,110,.20);
}
.status-chip.bad{
  background:var(--fb-error-bg);
  color:var(--fb-error);
  border-color:rgba(158,52,67,.20);
}
.status-chip.warn{
  background:var(--fb-warning-bg);
  color:var(--fb-warning);
  border-color:rgba(196,90,8,.20);
}

/* Overview Tab */
.station-identity{
  padding:13px 15px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
}
.station-identity h1{
  font-size:20px;
  color:var(--fb-ink);
  font-weight:700;
  margin:1px 0 3px;
  letter-spacing:-.032em;
}
.station-meta{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
}
.station-meta span{
  padding:6px 10px;
  border-radius:20px;
  background:var(--fb-surface-strong);
  font-size:9px;
  color:var(--fb-muted);
  border:1px solid var(--fb-line-light);
  font-weight:600;
}

/* Metric Grid */
.metric-grid{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:8px;
  margin:8px 0;
}
.metric-card{
  padding:13px 15px;
  min-height:72px;
  display:grid;
  align-content:center;
  gap:4px;
  transition:all 0.3s cubic-bezier(0.4,0,0.2,1);
}
.metric-card:hover{
  transform:translateY(-2px);
}
.metric-card>span{
  font-size:9px;
  color:var(--fb-muted);
  font-weight:600;
  text-transform:uppercase;
  letter-spacing:.05em;
}
.metric-card>strong{
  font-size:20px;
  color:var(--fb-ink);
  font-weight:700;
  line-height:1.1;
}
.metric-card>small{
  font-size:9px;
  color:var(--fb-muted-light);
}

/* Overview Mode Tabs */
.overview-mode-tabs{
  display:flex;
  gap:4px;
  padding:6px;
  background:var(--fb-surface-strong);
  border-radius:14px;
  border:1px solid var(--fb-line-light);
}
.overview-mode-tab{
  min-height:34px;
  padding:0 16px;
  border-radius:10px;
  font-size:11px;
  font-weight:600;
  background:transparent;
  border:none;
  color:var(--fb-muted);
  cursor:pointer;
  transition:all 0.2s ease;
  flex:1;
}
.overview-mode-tab:hover{
  background:var(--fb-surface-strong);
  color:var(--fb-ink);
}
.overview-mode-tab.active{
  background:var(--fb-blue);
  color:#fff;
  box-shadow:0 3px 10px rgba(24,119,242,.20);
}

/* Trend Workspace */
.trend-workspace-card{
  padding:13px 15px;
}
.trend-workspace-header{
  margin-bottom:10px;
}
.trend-workspace-header h2{
  font-size:14px;
  color:var(--fb-ink);
  font-weight:700;
  margin:0;
}
.trend-workspace-header p{
  font-size:9px;
  color:var(--fb-muted);
  margin:3px 0 0;
  line-height:1.35;
}
.trend-workspace-controls{
  display:flex;
  gap:8px;
  align-items:center;
  flex-wrap:wrap;
}
.trend-range-control{
  display:flex;
  flex-direction:column;
  gap:3px;
  min-width:120px;
}
.trend-range-control small{
  font-size:8px;
  color:var(--fb-muted);
  font-weight:600;
  text-transform:uppercase;
  letter-spacing:.05em;
}
.trend-range-control select,
.trend-range-control input{
  height:34px;
  padding:0 10px;
  border-radius:10px;
  border:1px solid var(--fb-line);
  background:var(--fb-surface-strong);
  color:var(--fb-ink);
  font-size:11px;
  font-weight:600;
}
.trend-control-action{
  min-height:34px;
  padding:0 14px;
  border-radius:10px;
  font-size:11px;
  font-weight:600;
  background:var(--fb-surface-strong);
  border:1px solid var(--fb-line);
  color:var(--fb-ink);
  cursor:pointer;
  transition:all 0.2s ease;
}
.trend-control-action:hover{
  background:var(--fb-surface-strong);
  border-color:var(--fb-blue);
  color:var(--fb-blue);
}
.trend-control-action[aria-pressed="true"]{
  background:var(--fb-blue);
  color:#fff;
  border-color:var(--fb-blue);
}

.trend-workspace-layout{
  display:grid;
  grid-template-columns:260px minmax(0,1fr);
  gap:10px;
  min-height:380px;
}
.trend-legend-panel{
  padding:12px;
  border-radius:12px;
  background:var(--fb-surface-strong);
  border:1px solid var(--fb-line-light);
}
.trend-legend-head{
  display:flex;
  justify-content:space-between;
  align-items:center;
  margin-bottom:8px;
  padding-bottom:8px;
  border-bottom:1px solid var(--fb-line-light);
}
.trend-legend-head strong{
  font-size:12px;
  color:var(--fb-ink);
  font-weight:700;
}
.trend-selected-count{
  font-size:10px;
  color:var(--fb-blue);
  font-weight:700;
}
.parameter-chips{
  display:flex;
  flex-direction:column;
  gap:6px;
  max-height:320px;
  overflow-y:auto;
}
.trend-legend-item{
  width:100%;
  min-height:44px;
  padding:10px;
  border-radius:12px;
  background:var(--fb-surface);
  border:1px solid var(--fb-line-light);
  display:grid;
  grid-template-columns:10px minmax(0,1fr) auto;
  grid-template-areas:"dot name reading" "dot device reading";
  column-gap:10px;
  row-gap:3px;
  cursor:pointer;
  transition:all 0.2s ease;
}
.trend-legend-item:hover{
  background:var(--fb-surface-strong);
  border-color:var(--fb-line);
  transform:translateX(3px);
}
.trend-legend-item.active{
  background:var(--trend-surface-active, var(--fb-blue-soft));
  border-color:var(--trend-border, var(--fb-line));
}
.trend-legend-item>i{
  grid-area:dot;
  align-self:center;
  width:10px;
  height:10px;
  border-radius:50%;
  background:var(--parameter-color, var(--fb-blue));
  box-shadow:0 0 0 3px var(--trend-soft, rgba(24,119,242,.12));
}
.trend-name{
  grid-area:name;
  color:var(--trend-color, var(--fb-ink));
  font-size:11px;
  font-weight:700;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.trend-live-reading{
  grid-area:reading;
  color:var(--trend-color, var(--fb-blue));
  font-size:14px;
  font-weight:750;
  font-variant-numeric:tabular-nums;
  align-self:center;
}
.trend-device{
  grid-area:device;
  color:var(--fb-muted);
  font-size:9px;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.trend-plot-panel{
  min-width:0;
  display:grid;
  grid-template-rows:auto 1fr;
  gap:8px;
}
.trend-context-line{
  display:flex;
  justify-content:space-between;
  gap:12px;
  color:var(--fb-muted);
  font-size:10px;
}
.trend-context-line span{
  font-weight:600;
  color:var(--fb-ink);
}
.station-trend-surface{
  min-height:340px;
  border-radius:12px;
  padding:12px;
  background:#fff;
  border:1px solid var(--fb-line);
  box-shadow:inset 0 2px 6px rgba(31,64,96,.04);
}

/* Live Tiles */
.live-tiles-card{
  padding:13px 15px;
}
.value-grid{
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(160px,1fr));
  gap:8px;
}
.value-tile{
  padding:12px;
  border-radius:12px;
  background:var(--fb-surface);
  border:1px solid var(--fb-line-light);
  display:grid;
  gap:6px;
  transition:all 0.2s ease;
}
.value-tile:hover{
  background:var(--fb-surface-strong);
  border-color:var(--fb-line);
  transform:translateY(-2px);
}
.value-tile strong{
  font-size:18px;
  color:var(--fb-ink);
  font-weight:700;
  line-height:1.1;
}
.value-tile small{
  font-size:9px;
  color:var(--fb-muted);
  text-transform:uppercase;
  letter-spacing:.05em;
}

/* Tabular Data */
.tabular-segment{
  display:flex;
  gap:4px;
  padding:6px;
  background:var(--fb-surface-strong);
  border-radius:14px;
  margin-bottom:10px;
  border:1px solid var(--fb-line-light);
}
.tabular-segment .segment{
  min-height:34px;
  padding:0 16px;
  border-radius:10px;
  font-size:11px;
  font-weight:600;
  background:transparent;
  border:none;
  color:var(--fb-muted);
  cursor:pointer;
  transition:all 0.2s ease;
  flex:1;
}
.tabular-segment .segment:hover{
  background:var(--fb-surface-strong);
  color:var(--fb-ink);
}
.tabular-segment .segment.active{
  background:var(--fb-blue);
  color:#fff;
  box-shadow:0 3px 10px rgba(24,119,242,.20);
}
.tabular-panel{
  display:grid;
  gap:10px;
}
.tabular-toolbar{
  padding:12px;
  margin-bottom:0;
}
.tabular-content{
  background:var(--fb-surface-strong);
  border-radius:12px;
  padding:12px;
  border:1px solid var(--fb-line-light);
  min-height:240px;
}

/* Matrix Tables */
.live-matrix-table-shell{
  overflow-x:auto;
  border-radius:12px;
  background:#fff;
  border:1px solid var(--fb-line);
  box-shadow:0 3px 12px rgba(31,64,96,.05);
}
.live-matrix-table{
  width:100%;
  border-collapse:collapse;
  font-size:10px;
}
.live-matrix-table th{
  background:linear-gradient(180deg,rgba(24,119,242,.08),rgba(24,119,242,.05));
  color:var(--fb-blue);
  font-weight:700;
  border-bottom:2px solid var(--fb-blue);
  padding:8px 10px;
  text-align:left;
  position:sticky;
  top:0;
  z-index:10;
}
.live-matrix-table td{
  border-bottom:1px solid var(--fb-line-light);
  padding:8px 10px;
}
.live-matrix-table tr:hover{
  background:rgba(24,119,242,.03);
}
.matrix-value{
  display:inline-block;
  text-align:left;
}
.matrix-value.valid b{
  color:var(--fb-ink);
}
.matrix-value.valid small{
  color:var(--fb-muted);
}
.matrix-value.invalid b{
  color:var(--fb-error);
}
.matrix-value.invalid small{
  color:var(--fb-warning);
}
.matrix-value.missing b{
  color:var(--fb-muted);
}
.matrix-value.missing small{
  color:var(--fb-muted-light);
}
.matrix-parameter-head{
  border-left:1px solid var(--fb-line-light);
}
.matrix-timebase-head{
  background:rgba(24,119,242,.05);
  color:var(--fb-blue);
  font-size:9px;
  font-weight:600;
}
.matrix-summary-row{
  background:rgba(24,119,242,.03);
  font-weight:600;
}
.history-time-col{
  background:rgba(24,119,242,.06);
  color:var(--fb-blue);
  font-weight:700;
  white-space:nowrap;
}
.history-data-cell{
  min-width:80px;
}
.history-data-cell.invalid{
  background:rgba(158,52,67,.06);
}

/* Tabular Toolbar */
.toolbar-head{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:12px;
  margin-bottom:8px;
}
.toolbar-head strong{
  font-size:13px;
  color:var(--fb-ink);
  font-weight:700;
}
.toolbar-head small{
  font-size:10px;
  color:var(--fb-muted);
  line-height:1.35;
}
.toolbar-status-actions{
  display:flex;
  gap:8px;
  align-items:center;
}
.matrix-filter-row{
  display:flex;
  gap:12px;
  align-items:center;
  margin-bottom:8px;
}
.filter-caption{
  font-size:8px;
  font-weight:700;
  color:var(--fb-muted);
  text-transform:uppercase;
  letter-spacing:.08em;
}
.live-timebase-tabs{
  display:flex;
  gap:4px;
}
.live-timebase-tabs button{
  min-height:32px;
  padding:0 12px;
  border-radius:8px;
  font-size:10px;
  font-weight:600;
  background:var(--fb-surface);
  border:1px solid var(--fb-line-light);
  color:var(--fb-ink);
  cursor:pointer;
  transition:all 0.2s ease;
}
.live-timebase-tabs button:hover{
  background:var(--fb-surface-strong);
  border-color:var(--fb-line);
}
.live-timebase-tabs button.active{
  background:var(--fb-blue);
  color:#fff;
  border-color:var(--fb-blue);
}

/* Controls and Inputs */
.touch-field,
.touch-input,
input:not([type=checkbox]):not([type=radio]),
textarea,
select{
  min-height:34px;
  height:34px;
  padding:0 12px;
  border-radius:10px;
  border:1px solid var(--fb-line);
  background:var(--fb-surface-strong);
  color:var(--fb-ink);
  font-size:11px;
  font-weight:600;
  box-shadow:inset 0 1px 2px rgba(31,64,96,.03);
  transition:all 0.2s ease;
}
.touch-field:focus,
.touch-input:focus,
input:focus,
textarea:focus,
select:focus{
  border-color:var(--fb-blue);
  box-shadow:0 0 0 2px rgba(24,119,242,.10),inset 0 1px 2px rgba(31,64,96,.03);
  outline:none;
}
.touch-button{
  min-height:34px;
  padding:0 16px;
  border-radius:10px;
  font-size:11px;
  font-weight:700;
  background:var(--fb-surface-strong);
  border:1px solid var(--fb-line);
  color:var(--fb-ink);
  cursor:pointer;
  transition:all 0.2s ease;
}
.touch-button:hover{
  background:var(--fb-surface-strong);
  border-color:var(--fb-blue);
  color:var(--fb-blue);
  transform:translateY(-1px);
}
.touch-button.primary{
  background:linear-gradient(135deg,var(--fb-blue),var(--fb-blue-hover));
  border-color:var(--fb-blue);
  color:#fff;
  box-shadow:0 4px 12px rgba(24,119,242,.20),inset 0 1px 0 rgba(255,255,255,.20);
}
.touch-button.primary:hover{
  background:linear-gradient(135deg,var(--fb-blue-hover),var(--fb-blue));
  box-shadow:0 6px 16px rgba(24,119,242,.25),inset 0 1px 0 rgba(255,255,255,.30);
  transform:translateY(-2px);
}
.touch-button.danger{
  border-color:rgba(158,52,67,.20);
  color:var(--fb-error);
  background:rgba(255,245,247,.85);
}
.touch-button.danger:hover{
  background:rgba(255,245,247,.95);
  border-color:var(--fb-error);
}

/* Page Stack */
.page-stack{
  display:grid;
  gap:10px;
}

/* Dock Navigation - Match Service Manager */
.dock-wrap{
  position:fixed;
  z-index:60;
  left:50%;
  bottom:10px;
  transform:translateX(-50%);
  width:min(calc(100vw - 22px),760px);
  padding:5px;
  border-radius:24px;
  background:rgba(249,253,255,.80);
  border:1px solid rgba(255,255,255,.94);
  box-shadow:0 12px 32px rgba(31,64,96,.12),inset 0 1px 0 rgba(255,255,255,.95);
  
  
}
.dock{
  height:54px;
  display:flex;
  align-items:stretch;
  justify-content:center;
  gap:4px;
}
.dock-item{
  appearance:none;
  border:0;
  min-height:40px;
  height:100%;
  min-width:68px;
  flex:1;
  max-width:132px;
  border-radius:18px;
  background:transparent;
  color:#557086;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:2px;
  cursor:pointer;
  transition:transform .16s cubic-bezier(0.4,0,0.2,1),background .2s cubic-bezier(0.4,0,0.2,1),box-shadow .2s cubic-bezier(0.4,0,0.2,1),color .2s cubic-bezier(0.4,0,0.2,1);
}
.dock-item .nav-svg{
  font-size:16px;
  line-height:1;
}
.dock-item .label{
  font-size:9px;
  font-weight:700;
}
.dock-item:hover{
  background:rgba(255,255,255,.68);
  transform:translateY(-1px);
}
.dock-item.active{
  color:var(--fb-blue);
  background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(225,240,250,.94));
  box-shadow:0 6px 15px rgba(24,119,242,.13),inset 0 1px 0 rgba(255,255,255,.92);
  transform:translateY(-1px);
}
.dock-item b{
  position:absolute;
  top:6px;
  right:6px;
  min-width:16px;
  height:16px;
  padding:0 4px;
  border-radius:8px;
  background:var(--fb-error);
  color:#fff;
  font-size:9px;
  font-weight:700;
  display:flex;
  align-items:center;
  justify-content:center;
}

/* Report Controls */
.report-controls{
  padding:13px 15px;
}
.report-filter-row{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(160px,1fr));
  gap:8px;
  margin-bottom:12px;
}
.report-timebase-field{
  display:grid;
  gap:6px;
}
.report-row-title{
  font-size:10px;
  font-weight:700;
  color:var(--fb-muted);
  text-transform:uppercase;
  letter-spacing:.05em;
}
.timebase-toggle-strip{
  display:flex;
  flex-wrap:wrap;
  gap:4px;
}
.timebase-toggle-strip button{
  min-height:28px;
  padding:0 10px;
  border-radius:8px;
  font-size:10px;
  font-weight:600;
  background:var(--fb-surface);
  border:1px solid var(--fb-line-light);
  color:var(--fb-ink);
  cursor:pointer;
  transition:all 0.2s ease;
}
.timebase-toggle-strip button:hover{
  background:var(--fb-surface-strong);
  border-color:var(--fb-line);
}
.timebase-toggle-strip button.active{
  background:var(--fb-blue);
  color:#fff;
  border-color:var(--fb-blue);
}
.report-parameter-row{
  display:grid;
  grid-template-columns:1fr auto;
  gap:12px;
  align-items:start;
  margin-bottom:12px;
}
.report-option-stack{
  display:flex;
  flex-direction:column;
  gap:8px;
}
.toggle-line{
  display:flex;
  align-items:center;
  gap:8px;
  font-size:11px;
  color:var(--fb-ink);
  font-weight:600;
}
.toggle-line input[type="checkbox"]{
  width:16px;
  height:16px;
  border-radius:3px;
  border:2px solid var(--fb-line);
  background:var(--fb-surface-strong);
  cursor:pointer;
}
.toggle-line input[type="checkbox"]:checked{
  background:var(--fb-blue);
  border-color:var(--fb-blue);
}
.report-export-fab{
  position:relative;
  display:inline-block;
}
.report-export-menu{
  position:absolute;
  top:100%;
  right:0;
  margin-top:6px;
  padding:6px;
  background:var(--fb-surface-strong);
  border:1px solid var(--fb-line);
  border-radius:12px;
  box-shadow:0 10px 24px rgba(31,64,96,.10);
  display:grid;
  gap:3px;
  min-width:120px;
}
.report-export-menu button{
  width:100%;
  text-align:left;
  padding:8px 12px;
  border-radius:8px;
  font-size:11px;
  font-weight:600;
}

/* Auto Check */
.schedule-editor{
  padding:13px 15px;
}
.report-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(160px,1fr));
  gap:8px;
  margin-bottom:12px;
}
.diagnostic-chart-wrap{
  padding:12px;
  background:var(--fb-surface-strong);
  border-radius:12px;
  border:1px solid var(--fb-line-light);
}

/* Empty States */
.empty-state{
  text-align:center;
  padding:28px 16px;
  color:var(--fb-muted);
}
.empty-state strong{
  font-size:14px;
  color:var(--fb-ink);
  font-weight:700;
  margin-bottom:6px;
  display:block;
}
.empty-state p{
  font-size:11px;
  margin:0;
}

/* Login Card */
.login-card{
  width:min(400px,calc(100vw - 32px));
  padding:24px;
  text-align:center;
  background:var(--fb-surface-strong);
  border:1px solid var(--fb-line);
  box-shadow:0 16px 40px rgba(31,64,96,.14);
  
  
  border-radius:16px;
}
.login-card .brand-mark{
  width:48px;
  height:48px;
  margin:0 auto 12px;
}
.login-card .eyebrow{
  font-size:9px;
  letter-spacing:.11em;
  color:var(--fb-blue);
  font-weight:800;
  text-transform:uppercase;
}
.login-card h1{
  font-size:18px;
  color:var(--fb-ink);
  font-weight:700;
  margin:6px 0 10px;
}
.login-card p{
  font-size:12px;
  color:var(--fb-muted);
  margin:0 0 6px;
  line-height:1.4;
}
.login-card small{
  font-size:10px;
  color:var(--fb-muted-light);
}

/* Responsive Breakpoints - Match Service Manager */
@media(max-width:980px){
  .metric-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .value-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .trend-workspace-layout{
    grid-template-columns:1fr;
  }
  .app-content{
    padding:15px 15px 72px;
  }
}
@media(max-width:720px){
  .metric-grid,
  .value-grid{
    grid-template-columns:1fr 1fr;
  }
  .top-inner{
    align-items:flex-start;
  }
  .brand-mark.small{
    width:36px;
    height:36px;
  }
  .account-identity{
    display:none;
  }
  .overview-mode-tabs{
    overflow-x:auto;
  }
  .overview-mode-tab{
    min-width:120px;
  }
  .trend-context-line small{
    display:none;
  }
  .dock-wrap{
    bottom:7px;
    width:calc(100vw - 12px);
    border-radius:21px;
  }
  .dock{
    height:52px;
  }
  .dock-item{
    min-width:48px;
    border-radius:16px;
  }
  .dock-item .label{
    font-size:8px;
  }
  .app-content{
    padding:9px 9px 72px;
  }
  .station-meta{
    flex-direction:column;
    gap:4px;
  }
}
/* AESST DAS 4.20.6 — compact tablet Dashboard authority. */
.dashboard-shell .top-glass,.top-glass{margin:7px 9px 0!important;border-radius:16px!important}.top-inner{min-height:54px!important;padding:7px 10px!important}.brand-mark.small{width:32px!important;height:32px!important}.station-copy strong{font-size:14px!important}.station-copy small,.top-actions time{font-size:8px!important}.top-actions{gap:7px!important}.dashboard-account{min-height:34px!important;padding:4px 8px!important;border-radius:11px!important}
.dashboard-main,.dashboard-content,.page-content{padding:8px 10px 76px!important}.value-grid,.station-live-grid{gap:8px!important}.value-tile,.premium-live-tile,.metro-value-tile{min-height:104px!important;padding:10px!important;border-radius:15px!important}.reading{font-size:21px!important}.trend-legend-item{min-height:46px!important;padding:6px 8px!important;border-radius:11px!important}.trend-live-reading{font-size:12px!important}.station-trend-surface,.chart-wrap,.interactive-chart{min-height:330px!important;border-radius:15px!important;padding:8px!important}.report-grid,.report-filter-row,.diagnostic-parameter-stack,.page-stack{gap:8px!important}


/* AESST DAS 4.20.6 — dynamic Dashboard document flow and scroll authority. */
html,body{height:auto!important;min-height:100%!important;overflow-x:hidden!important;overflow-y:auto!important;margin:0!important;padding-top:0!important;scrollbar-gutter:stable}
body{padding-bottom:0!important}
#workspace.dashboard-shell{min-height:100vh!important;height:auto!important;overflow:visible!important;margin:0!important;padding:0 0 96px!important;position:relative!important;top:0!important;transform:none!important}
.dashboard-shell .top-glass{position:sticky!important;top:7px!important;z-index:80!important;margin:7px 9px 0!important}
.dashboard-content{height:auto!important;min-height:0!important;overflow:visible!important;padding:8px 10px 104px!important}
.dashboard-inner,.page,.dynamic-panel,.trend-workspace-card,.trend-workspace-layout,.trend-plot-panel,.station-identity,.metric-grid{min-width:0!important;max-width:100%}
.page{align-content:start!important}
.trend-workspace-layout{align-items:stretch!important}
.trend-workspace-controls>*{max-width:100%}
.station-trend-surface,.chart-wrap,.interactive-chart{width:100%!important;max-width:100%!important;overflow:hidden!important}
@media(max-width:1024px){.dashboard-content{padding:8px 8px 100px!important}.trend-workspace-layout{grid-template-columns:1fr!important}.trend-legend-panel{max-height:280px!important}}

/* AESST DAS 4.20.19 — compact top flow, rounded surfaces, matched dock and scrollbar. */
:root{--dashboard-dock-width:900px;--dashboard-card-radius:18px}
.svg-defs{position:absolute!important;width:0!important;height:0!important;overflow:hidden!important;pointer-events:none!important;visibility:hidden!important}
.dashboard-shell .top-glass{margin:8px 10px 0!important;border-radius:var(--dashboard-card-radius)!important}
.dashboard-shell .top-inner{min-height:56px!important;padding:8px 12px!important;gap:14px!important}
.dashboard-shell .suite-brand{padding-right:13px;border-right:1px solid rgba(83,123,155,.16)}
.dashboard-shell .station-copy{display:grid!important;gap:3px!important;flex:1;min-width:0}
.dashboard-shell .station-copy>strong{font-size:14px!important;color:#18334b!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.station-meta-inline{display:flex;align-items:center;gap:6px;min-width:0;overflow:hidden;color:#627d93;font-size:8px}
.station-meta-inline span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:220px}
.station-meta-inline span+span:before{content:"·";margin-right:6px;color:#91a6b8}
.dashboard-content{padding-top:8px!important}
.dashboard-inner{gap:10px!important}
.dashboard-shell .glass-card,.dashboard-shell .metric-card,.dashboard-shell .overview-mode-tabs,.dashboard-shell .trend-legend-panel,.dashboard-shell .station-trend-surface,.dashboard-shell .list-surface,.dashboard-shell .trace-table-wrap,.dashboard-shell .tabular-content,.dashboard-shell .tabular-toolbar{border-radius:var(--dashboard-card-radius)!important;overflow:hidden}
.dashboard-shell .trend-workspace-card{overflow:visible!important}
#sidebar.dock-wrap{width:auto!important;max-width:calc(100vw - 18px)!important}
#sidebar .dock{width:min(var(--dashboard-dock-width),calc(100vw - 18px))!important;gap:var(--adq-dock-item-gap)!important;padding-inline:8px!important}
#sidebar .dock-item{min-width:0!important;flex:1 1 0!important;color:#35556f!important}
#sidebar .dock-item.active{color:#0f70cf!important;background:rgba(216,237,255,.94)!important}
.trend-legend-panel{scrollbar-width:thin;scrollbar-color:rgba(58,126,181,.55) transparent}
.trend-legend-panel::-webkit-scrollbar{width:8px;height:8px}
.trend-legend-panel::-webkit-scrollbar-track{background:rgba(218,233,244,.34);border-radius:999px}
.trend-legend-panel::-webkit-scrollbar-thumb{background:linear-gradient(180deg,rgba(77,154,217,.72),rgba(38,117,187,.70));border:2px solid rgba(244,249,253,.86);border-radius:999px}
.trend-legend-panel::-webkit-scrollbar-thumb:hover{background:rgba(32,111,181,.78)}
@media(max-width:900px){.dashboard-shell .suite-brand-copy{display:none}.dashboard-shell .suite-brand{padding-right:8px}.station-meta-inline #station-hero-desc{display:none}:root{--dashboard-dock-width:calc(100vw - 16px)}}

/* AESST DAS 4.20.19 — balanced header spacing and colored KPI cards. */
.dashboard-shell .top-inner{
  display:grid!important;
  grid-template-columns:auto minmax(0,1fr) auto!important;
  align-items:center!important;
  column-gap:16px!important;
  row-gap:8px!important;
}
.dashboard-shell .suite-brand{display:flex!important;align-items:center!important;gap:9px!important;min-width:0!important}
.dashboard-shell .station-copy{min-width:0!important;padding-inline:2px!important}
.dashboard-shell .top-actions{display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:8px!important;min-width:0!important;flex-wrap:nowrap!important}
.dashboard-shell .dashboard-account,.dashboard-shell .status-chip,.dashboard-shell .top-actions time{flex:0 0 auto!important}
.dashboard-shell .top-actions time{min-width:96px!important;text-align:center!important;padding:6px 9px!important;border-radius:999px!important;background:rgba(255,255,255,.62)!important;border:1px solid rgba(99,137,166,.14)!important}

.dashboard-shell .metric-card{
  --metric-accent:#2b83d5;
  --metric-tint:rgba(43,131,213,.105);
  position:relative!important;
  overflow:hidden!important;
  border:1px solid color-mix(in srgb,var(--metric-accent) 24%,rgba(255,255,255,.88))!important;
  background:linear-gradient(145deg,rgba(255,255,255,.88),var(--metric-tint))!important;
  box-shadow:0 10px 28px color-mix(in srgb,var(--metric-accent) 10%,rgba(37,72,100,.08)),inset 0 1px 0 rgba(255,255,255,.96)!important;
  
  
}
.dashboard-shell .metric-card:before{
  content:""!important;
  position:absolute!important;
  inset:0 auto 0 0!important;
  width:4px!important;
  background:var(--metric-accent)!important;
  opacity:.92!important;
}
.dashboard-shell .metric-card>span{color:color-mix(in srgb,var(--metric-accent) 76%,#38556e)!important}
.dashboard-shell .metric-card>strong{color:color-mix(in srgb,var(--metric-accent) 82%,#173047)!important}
.dashboard-shell .metric-total{--metric-accent:#2580d8;--metric-tint:rgba(37,128,216,.12)}
.dashboard-shell .metric-online{--metric-accent:#159b78;--metric-tint:rgba(21,155,120,.12)}
.dashboard-shell .metric-offline{--metric-accent:#e08a21;--metric-tint:rgba(224,138,33,.126)}
.dashboard-shell .metric-alerts{--metric-accent:#d65362;--metric-tint:rgba(214,83,98,.12)}
.dashboard-shell .metric-alarms{--metric-accent:#7657d8;--metric-tint:rgba(118,87,216,.12)}
@media(max-width:980px){
  .dashboard-shell .top-inner{grid-template-columns:auto minmax(0,1fr)!important}
  .dashboard-shell .top-actions{grid-column:1/-1!important;justify-content:flex-end!important;flex-wrap:wrap!important}
}

/* AESST DAS 4.20.19 — Dashboard component completion and dock-safe document flow. */
:root{
  --dashboard-dock-clearance:96px;
  --dashboard-section-gap:12px;
  --dashboard-control-height:36px;
}

/* Keep the floating dock visible without ever covering the last content block. */
#workspace.dashboard-shell{padding-bottom:var(--dashboard-dock-clearance)!important}
.dashboard-content{padding-bottom:calc(var(--dashboard-dock-clearance) + 18px)!important}
.dashboard-inner{padding-bottom:12px!important}
.page-view{padding-bottom:12px!important}
.page-view:last-child{margin-bottom:0!important}

/* Trend control alignment: labels, selects and action buttons share one baseline. */
.trend-workspace-header{align-items:flex-start!important}
.trend-workspace-controls{align-items:flex-end!important;gap:9px!important}
.trend-range-control,.trend-action-control{display:grid!important;grid-template-rows:14px var(--dashboard-control-height)!important;gap:4px!important;align-self:flex-end!important;min-width:116px!important}
.trend-range-control{font-size:9px!important;font-weight:700!important;line-height:14px!important;color:#557086!important;letter-spacing:.015em!important}
.trend-range-control>small,.trend-action-control>span{
  font-size:9px!important;font-weight:700!important;line-height:14px!important;color:#557086!important;letter-spacing:.015em!important;
}
.trend-range-control select,.trend-range-control input,.trend-control-action{height:var(--dashboard-control-height)!important;min-height:var(--dashboard-control-height)!important;margin:0!important;align-self:end!important}
.trend-action-control{min-width:auto!important}
.trend-action-control>span{display:block!important;padding-left:2px!important}
.trend-action-control .trend-control-action{min-width:76px!important;padding-inline:14px!important}

/* Multi-Trace parameter cards: content-driven height with analyzer metadata. */
.trend-workspace-layout{align-items:start!important;min-height:380px!important}
.trend-legend-panel{align-self:start!important;height:fit-content!important;min-height:0!important;overflow:auto!important;padding:10px!important}
.parameter-chips{max-height:none!important;overflow:visible!important;gap:8px!important}
.trend-legend-item{
  min-height:0!important;height:auto!important;padding:10px 11px!important;border-radius:14px!important;
  display:grid!important;grid-template-columns:1fr!important;grid-template-areas:none!important;gap:7px!important;position:relative!important;
  text-align:left!important;overflow:hidden!important;
}
.trend-legend-top{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:8px!important;min-width:0!important}
.trend-name{display:block!important;min-width:0!important;font-size:12px!important;font-weight:800!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
.trend-analyzer{font-size:9px!important;color:#647f95!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
.trend-live-line{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:8px!important;min-width:0!important}
.trend-live-reading{font-size:15px!important;line-height:1.1!important;white-space:nowrap!important}
.trend-live-reading small{font-size:9px!important;font-weight:700!important}
.trend-link-state{display:inline-flex!important;align-items:center!important;gap:5px!important;flex:0 0 auto!important;padding:3px 7px!important;border-radius:999px!important;font-size:8px!important;font-weight:800!important;letter-spacing:.04em!important}
.trend-link-state i{width:7px!important;height:7px!important;border-radius:50%!important;box-shadow:0 0 0 3px rgba(0,0,0,.04)!important}
.trend-link-state.good{color:#167a61!important;background:rgba(30,164,126,.10)!important;border:1px solid rgba(30,164,126,.16)!important}
.trend-link-state.good i{background:#21a67d!important}
.trend-link-state.bad{color:#b13c4c!important;background:rgba(208,72,89,.10)!important;border:1px solid rgba(208,72,89,.16)!important}
.trend-link-state.bad i{background:#d34859!important}
.trend-comm-badge{display:inline-flex!important;align-items:center!important;gap:5px!important;max-width:130px!important;padding:4px 7px!important;border-radius:9px!important;background:rgba(211,72,89,.08)!important;color:#ad3547!important;border:1px solid rgba(211,72,89,.14)!important;font-size:8px!important;font-weight:750!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
.trend-comm-badge>b{width:14px!important;height:14px!important;border-radius:50%!important;display:grid!important;place-items:center!important;background:#d34859!important;color:#fff!important;font-size:9px!important}
.trend-legend-specs{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:7px!important;padding-top:7px!important;border-top:1px solid rgba(77,120,151,.12)!important}
.trend-legend-specs>span{display:grid!important;gap:2px!important;min-width:0!important}
.trend-legend-specs small{font-size:7px!important;text-transform:uppercase!important;letter-spacing:.06em!important;color:#71899c!important;font-weight:800!important}
.trend-legend-specs b{font-size:9px!important;color:#29485f!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;font-weight:750!important}
.trend-range-value,.trend-transport-value{display:block!important}

/* Shared light scrollbar treatment for every Dashboard surface. */
.dashboard-shell *{scrollbar-width:thin;scrollbar-color:rgba(54,126,184,.48) rgba(225,238,247,.30)}
.dashboard-shell *::-webkit-scrollbar{width:8px;height:8px}
.dashboard-shell *::-webkit-scrollbar-track{background:rgba(224,237,247,.38);border-radius:999px}
.dashboard-shell *::-webkit-scrollbar-thumb{background:linear-gradient(180deg,rgba(78,159,221,.68),rgba(42,120,187,.64));border:2px solid rgba(247,251,254,.90);border-radius:999px}
.dashboard-shell *::-webkit-scrollbar-thumb:hover{background:rgba(34,112,181,.78)}

/* Page headings and section rhythm. */
.page-heading{padding:4px 4px 2px!important;align-items:center!important}
.page-heading>div{display:grid!important;gap:3px!important}
.page-heading .eyebrow{font-size:8px!important}
.page-heading h1{font-size:24px!important;line-height:1.05!important;margin:0!important;letter-spacing:-.025em!important}
.page-heading p{font-size:11px!important;color:#5e768b!important;margin:0!important}
.page-stack{gap:var(--dashboard-section-gap)!important}

/* Tabular workspace. */
.tabular-panel{gap:12px!important}
.tabular-toolbar{padding:14px 16px!important;overflow:visible!important}
.tabular-content{padding:14px 16px!important;min-height:220px!important;overflow:visible!important}
.toolbar-head{display:flex!important;justify-content:space-between!important;align-items:flex-start!important;gap:14px!important;margin-bottom:12px!important}
.toolbar-head>div{display:grid!important;gap:4px!important;min-width:0!important}
.toolbar-head strong{display:block!important;font-size:13px!important;color:#18334b!important}
.toolbar-head small{display:block!important;font-size:9px!important;line-height:1.35!important;color:#687f93!important}
.toolbar-status-actions{display:flex!important;align-items:center!important;gap:8px!important;flex-wrap:wrap!important}
.matrix-filter-row{display:flex!important;align-items:flex-end!important;justify-content:space-between!important;gap:14px!important;flex-wrap:wrap!important;margin:0!important}
.matrix-filter-row>div{display:grid!important;gap:5px!important}
.filter-caption{display:block!important;margin:0!important;font-size:8px!important;font-weight:800!important;color:#617a8f!important}
.timebase-tab-strip{display:flex!important;align-items:center!important;gap:5px!important;flex-wrap:wrap!important}
.timebase-tab{appearance:none!important;min-height:32px!important;padding:0 12px!important;border-radius:10px!important;border:1px solid rgba(82,125,158,.17)!important;background:rgba(255,255,255,.74)!important;color:#37566e!important;font-size:10px!important;font-weight:750!important;cursor:pointer!important;box-shadow:0 3px 10px rgba(37,78,110,.04)!important}
.timebase-tab:hover{border-color:rgba(24,119,242,.32)!important;color:#176fca!important;background:#fff!important}
.timebase-tab.active{background:#247ff0!important;border-color:#247ff0!important;color:#fff!important;box-shadow:0 5px 13px rgba(36,127,240,.20)!important}
.history-filter-grid{display:grid!important;grid-template-columns:repeat(3,minmax(150px,1fr)) minmax(240px,1.25fr)!important;gap:10px!important;align-items:end!important;margin-bottom:12px!important}
.history-filter-grid>label{display:grid!important;gap:5px!important;font-size:9px!important;font-weight:700!important;color:#5e778d!important;min-width:0!important}
.history-timebase-field{display:grid!important;gap:5px!important;min-width:0!important}
.parameter-check-picker{padding:11px!important;border:1px solid rgba(82,125,158,.14)!important;border-radius:14px!important;background:rgba(248,252,255,.66)!important;display:grid!important;gap:9px!important;min-width:0!important}
.picker-toolbar{display:flex!important;align-items:center!important;gap:8px!important;flex-wrap:wrap!important;min-height:28px!important}
.picker-toolbar strong{font-size:11px!important;color:#24445c!important;margin-right:2px!important}
.picker-toolbar>[data-picker-count]{font-size:9px!important;color:#6d8396!important;margin-right:auto!important}
.picker-link{appearance:none!important;border:0!important;background:rgba(33,126,232,.08)!important;color:#166fc7!important;border-radius:8px!important;min-height:28px!important;padding:0 9px!important;font-size:9px!important;font-weight:750!important;cursor:pointer!important}
.picker-check-grid{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(170px,1fr))!important;gap:7px!important}
.picker-check{display:flex!important;align-items:center!important;gap:8px!important;min-width:0!important;padding:7px 9px!important;border-radius:10px!important;border:1px solid rgba(85,126,157,.12)!important;background:rgba(255,255,255,.68)!important;cursor:pointer!important}
.picker-check input{width:15px!important;height:15px!important;flex:0 0 auto!important;accent-color:#247ff0!important}
.picker-check>span{display:grid!important;gap:1px!important;min-width:0!important}
.picker-check b{font-size:9px!important;color:#28475e!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
.picker-check small{font-size:8px!important;color:#71889a!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
.quality-review-controls{display:grid!important;grid-template-columns:minmax(170px,1fr) minmax(220px,1.5fr) auto auto auto!important;gap:8px!important;align-items:end!important;margin-top:10px!important}
.quality-review-controls>label{display:grid!important;gap:5px!important;font-size:9px!important;font-weight:700!important;color:#5d768b!important}
.history-selection-count{display:grid!important;place-items:center!important;align-content:center!important;min-width:92px!important;height:36px!important;border-radius:10px!important;background:rgba(36,127,240,.07)!important;border:1px solid rgba(36,127,240,.13)!important}
.history-selection-count strong{font-size:13px!important;color:#1877d8!important}
.history-selection-count small{font-size:7px!important;color:#6a8295!important}
.history-toolbar-actions{display:flex!important;align-items:center!important;gap:10px!important;flex-wrap:wrap!important;margin-top:10px!important}
.history-toolbar-actions>span{font-size:9px!important;color:#657d90!important}
.quality-readonly-note{margin-top:10px!important;padding:9px 11px!important;border-radius:10px!important;background:rgba(228,238,247,.56)!important;color:#60788c!important;font-size:9px!important}
.matrix-section{overflow:hidden!important}
.live-matrix-table-shell,.table-shell{overflow:auto!important;border-radius:14px!important;border:1px solid rgba(83,126,158,.15)!important;background:rgba(255,255,255,.86)!important;box-shadow:0 5px 18px rgba(37,75,105,.05)!important}
.live-matrix-table,.table-shell table{width:100%!important;border-collapse:separate!important;border-spacing:0!important;font-size:10px!important;min-width:680px!important}
.live-matrix-table th,.table-shell th{padding:9px 10px!important;background:rgba(232,243,252,.74)!important;color:#246fbc!important;font-weight:800!important;text-align:left!important;border-bottom:1px solid rgba(56,125,185,.18)!important;white-space:nowrap!important}
.live-matrix-table td,.table-shell td{padding:9px 10px!important;border-bottom:1px solid rgba(84,124,154,.09)!important;color:#314f66!important;vertical-align:middle!important}
.live-matrix-table tbody tr:last-child td,.table-shell tbody tr:last-child td{border-bottom:0!important}
.matrix-parameter-head small{display:block!important;margin-top:2px!important;font-size:7px!important;font-weight:650!important;color:#6c8497!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;max-width:220px!important}
.matrix-timebase-head{font-size:8px!important;color:#3d769e!important;background:rgba(240,247,252,.92)!important}
.matrix-value{display:grid!important;gap:1px!important;min-width:66px!important}
.matrix-value b{font-size:10px!important}
.matrix-value small{font-size:7px!important;color:#71889a!important}
.matrix-value.invalid b{color:#b13f4d!important}.matrix-value.valid b{color:#22475f!important}
.matrix-value.com-fail{padding:3px 6px!important;border-radius:8px!important;background:rgba(207,70,87,.08)!important;border:1px solid rgba(207,70,87,.12)!important}

/* Connections & traces. */
.connection-segmented{margin-bottom:2px!important}
.connection-card{display:grid!important;gap:12px!important;padding:14px 16px!important;overflow:hidden!important}
.device-head{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important}
.device{display:flex!important;align-items:center!important;gap:10px!important;min-width:0!important}
.device-icon{width:34px!important;height:34px!important;border-radius:11px!important;display:grid!important;place-items:center!important;background:rgba(36,127,240,.09)!important;color:#1775d2!important;font-size:18px!important;flex:0 0 auto!important}
.device-copy{display:grid!important;gap:2px!important;min-width:0!important}
.device-copy strong{font-size:12px!important;color:#1f4058!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
.device-copy small{font-size:8px!important;color:#6d8396!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
.connection-error{padding:9px 11px!important;border-radius:11px!important;border:1px solid rgba(203,69,87,.16)!important;background:rgba(211,74,91,.08)!important;color:#b43a4c!important;font-size:9px!important;font-weight:700!important}
.connection-stats{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:7px!important}
.connection-stat{display:grid!important;gap:2px!important;padding:8px 10px!important;border-radius:11px!important;background:rgba(245,250,254,.82)!important;border:1px solid rgba(83,126,158,.12)!important}
.connection-stat span{font-size:7px!important;text-transform:uppercase!important;letter-spacing:.08em!important;color:#73899b!important;font-weight:800!important}
.connection-stat strong{font-size:14px!important;color:#24465e!important;font-variant-numeric:tabular-nums!important}
.trace-shell{display:grid!important;gap:8px!important;padding:10px!important;border-radius:13px!important;background:rgba(247,251,254,.76)!important;border:1px solid rgba(82,125,158,.12)!important;max-height:330px!important;overflow:auto!important}
.trace-shell .toolbar-head{margin:0!important}
.trace-row{display:grid!important;grid-template-columns:72px 64px minmax(0,1fr)!important;align-items:start!important;gap:8px!important;padding:6px 8px!important;border-radius:8px!important;background:rgba(255,255,255,.66)!important;border:1px solid rgba(83,126,158,.08)!important}
.trace-row time{font:650 8px ui-monospace,SFMono-Regular,Consolas,monospace!important;color:#6d8497!important}
.trace-dir{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-height:20px!important;padding:0 6px!important;border-radius:999px!important;background:rgba(36,127,240,.08)!important;color:#236fae!important;font-size:7px!important;font-weight:800!important}
.trace-dir.ERROR{background:rgba(207,70,87,.09)!important;color:#b13c4c!important}.trace-dir.RX{background:rgba(31,158,123,.09)!important;color:#1b7e64!important}.trace-dir.TX{background:rgba(119,87,216,.09)!important;color:#644ab8!important}
.trace-row code{font:500 9px ui-monospace,SFMono-Regular,Consolas,monospace!important;color:#2f4d64!important;white-space:pre-wrap!important;overflow-wrap:anywhere!important}

/* Alarm page. */
.alarm-toolbar{display:grid!important;grid-template-columns:minmax(180px,320px) minmax(210px,1fr) auto!important;align-items:end!important;gap:10px!important;padding:13px 15px!important}
.alarm-toolbar>label:first-child{display:grid!important;gap:5px!important;font-size:9px!important;font-weight:700!important;color:#5f778b!important}
.alarm-toolbar .toggle-line{align-self:center!important}
.alarm-rule-summary{display:grid!important;gap:10px!important}
.alarm-rule-grid{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))!important;gap:8px!important}
.alarm-rule-chip{display:grid!important;gap:3px!important;padding:10px 11px!important;border-radius:11px!important;background:rgba(247,251,254,.78)!important;border:1px solid rgba(83,126,158,.12)!important}
.alarm-rule-chip b{font-size:10px!important;color:#25465e!important}.alarm-rule-chip span{font-size:8px!important;color:#6e8496!important}
.alarm-events-stack{display:grid!important;gap:8px!important}
.alarm-card{display:grid!important;grid-template-columns:auto minmax(0,1fr) auto!important;align-items:center!important;gap:10px!important;padding:12px 14px!important}
.alarm-icon{width:32px!important;height:32px!important;border-radius:10px!important;display:grid!important;place-items:center!important;background:rgba(208,72,89,.09)!important;color:#bd3c4d!important}
.alarm-copy{display:grid!important;gap:4px!important;min-width:0!important}.alarm-copy>strong{font-size:11px!important;color:#24445c!important}.alarm-copy>small{font-size:8px!important;color:#708698!important}.alarm-copy>div{display:flex!important;gap:5px!important;flex-wrap:wrap!important}
.muted-copy{margin:0!important;color:#6e8496!important;font-size:9px!important}

/* Reports. */
.report-controls{display:grid!important;gap:12px!important;padding:14px 16px!important}
.report-filter-row{grid-template-columns:minmax(190px,.85fr) minmax(190px,.85fr) minmax(280px,1.3fr)!important;align-items:end!important;margin:0!important}
.report-filter-row>label{display:grid!important;gap:5px!important;font-size:9px!important;font-weight:700!important;color:#60798d!important}
.report-timebase-field{align-self:end!important}
.report-parameter-row{grid-template-columns:minmax(0,1fr) 210px!important;align-items:start!important;margin:0!important}
.report-option-stack{padding-top:1px!important}
.report-preview{min-height:220px!important;overflow:hidden!important}
.report-trend-legend{display:flex!important;gap:7px!important;flex-wrap:wrap!important;margin:8px 0!important}
.report-trend-chip{display:inline-flex!important;align-items:center!important;gap:6px!important;padding:5px 8px!important;border-radius:9px!important;background:var(--report-soft,rgba(36,127,240,.08))!important;border:1px solid color-mix(in srgb,var(--report-color,#247ff0) 22%,transparent)!important}
.report-trend-chip>i{width:8px!important;height:8px!important;border-radius:50%!important;background:var(--report-color,#247ff0)!important}.report-trend-chip>b{font-size:9px!important;color:#26465e!important}.report-trend-chip>small{font-size:7px!important;color:#6f8597!important}
.report-chart{height:260px!important;border-radius:13px!important;border:1px solid rgba(83,126,158,.12)!important;background:#fff!important;padding:8px!important;margin-bottom:10px!important}

/* Auto Check. */
#auto-check{gap:12px!important}
.autocheck-live-card{padding:12px 14px!important;display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;align-items:center!important;gap:10px!important}
.schedule-editor{padding:14px 16px!important}
.schedule-editor .report-grid{grid-template-columns:minmax(180px,.9fr) minmax(220px,1.15fr) minmax(150px,.7fr) minmax(240px,1.15fr) minmax(140px,.65fr)!important;align-items:end!important;margin-bottom:10px!important}
.schedule-editor .report-grid>label{display:grid!important;gap:5px!important;font-size:9px!important;font-weight:700!important;color:#60798d!important;min-width:0!important}
#autocheck-schedules{gap:8px!important}
#autocheck-history{overflow:auto!important}
.diagnostic-chart-wrap{min-height:260px!important;overflow:hidden!important}
.diagnostic-chart-wrap canvas{width:100%!important;height:240px!important}

/* Empty states and general dynamic panels. */
.empty-state{min-height:150px!important;display:grid!important;place-items:center!important;align-content:center!important;gap:6px!important;border:1px dashed rgba(80,126,160,.16)!important;border-radius:14px!important;background:rgba(251,253,255,.54)!important}
.empty-state:before{content:""!important;width:28px!important;height:28px!important;border-radius:10px!important;background:linear-gradient(145deg,rgba(36,127,240,.12),rgba(83,183,170,.10))!important;box-shadow:inset 0 0 0 1px rgba(36,127,240,.10)!important}
.empty-state strong{margin:0!important}.empty-state p{max-width:680px!important}

@media(max-width:1180px){
  .history-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .quality-review-controls{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .connection-stats{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  .report-filter-row{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .report-timebase-field{grid-column:1/-1!important}
  .schedule-editor .report-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}
@media(max-width:820px){
  .trend-workspace-controls{justify-content:flex-start!important}
  .trend-range-control,.trend-action-control{min-width:calc(50% - 5px)!important}
  .trend-legend-specs{grid-template-columns:1fr!important}
  .alarm-toolbar{grid-template-columns:1fr!important;align-items:stretch!important}
  .report-parameter-row{grid-template-columns:1fr!important}
  .report-option-stack{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .connection-stats{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .trace-row{grid-template-columns:60px 52px minmax(0,1fr)!important}
  .schedule-editor .report-grid{grid-template-columns:1fr 1fr!important}
}
@media(max-width:560px){
  .trend-range-control,.trend-action-control{min-width:100%!important}
  .history-filter-grid,.quality-review-controls,.picker-check-grid,.schedule-editor .report-grid{grid-template-columns:1fr!important}
  .connection-stats{grid-template-columns:1fr 1fr!important}
  .trace-row{grid-template-columns:1fr!important}
}


/* AESST DAS 4.20.19 bugfix pack — colorful dock, alarm badge authority and richer controls. */
.dashboard-shell .dock-item{position:relative!important;overflow:visible!important;--nav-accent:#5f7990}
.dashboard-shell .dock-item .nav-svg{width:18px!important;height:18px!important;color:var(--nav-accent)!important;fill:none!important;stroke:currentColor!important;stroke-width:1.8!important;stroke-linecap:round!important;stroke-linejoin:round!important}
.dashboard-shell .dock-item[data-page="overview"]{--nav-accent:#1784f6}
.dashboard-shell .dock-item[data-page="table-data"]{--nav-accent:#0ea5a8}
.dashboard-shell .dock-item[data-page="diagnostics"]{--nav-accent:#8b5cf6}
.dashboard-shell .dock-item[data-page="connections"]{--nav-accent:#f59e0b}
.dashboard-shell .dock-item[data-page="alarms"]{--nav-accent:#e05063}
.dashboard-shell .dock-item[data-page="reports"]{--nav-accent:#2563eb}
.dashboard-shell .dock-item[data-page="auto-check"]{--nav-accent:#16a34a}
.dashboard-shell .dock-item:hover .nav-svg,.dashboard-shell .dock-item.active .nav-svg{color:var(--nav-accent)!important;filter:drop-shadow(0 7px 14px color-mix(in srgb,var(--nav-accent) 20%,transparent))}
.dashboard-shell .dock-item span{font-weight:700!important}
.dashboard-shell .dock-item[data-page]::before{content:"";position:absolute;left:50%;top:7px;transform:translateX(-50%);width:28px;height:28px;border-radius:12px;background:color-mix(in srgb,var(--nav-accent) 14%,#fff);opacity:.92;box-shadow:inset 0 1px 0 rgba(255,255,255,.94);z-index:0}
.dashboard-shell .dock-item .nav-svg,.dashboard-shell .dock-item span,.dashboard-shell .dock-item b{position:relative;z-index:1}
.dashboard-shell .dock-item b{top:-5px!important;right:6px!important;min-width:18px!important;height:18px!important;padding:0 5px!important;display:grid!important;place-items:center!important;font-size:9px!important;line-height:1!important;border-radius:999px!important;background:linear-gradient(180deg,#cb4254,#a7293c)!important;color:#fff!important;box-shadow:0 8px 18px rgba(167,41,60,.28)!important}
.dashboard-shell .dock-item[data-page="alarms"] .nav-svg{width:18px!important;height:18px!important}
.dashboard-shell input:not([type=checkbox]):not([type=radio]),.dashboard-shell select,.dashboard-shell textarea{appearance:none!important;-webkit-appearance:none!important;width:100%!important;min-height:38px!important;height:38px!important;padding:7px 11px!important;border-radius:12px!important;border:1px solid rgba(74,119,153,.18)!important;background:rgba(255,255,255,.88)!important;color:#1f3850!important;box-shadow:inset 0 1px 2px rgba(42,72,99,.04),0 1px 0 rgba(255,255,255,.84)!important}
.dashboard-shell select{padding-right:34px!important;background-image:linear-gradient(45deg,transparent 50%,#66849b 50%),linear-gradient(135deg,#66849b 50%,transparent 50%);background-position:calc(100% - 18px) calc(50% - 1px),calc(100% - 12px) calc(50% - 1px);background-size:6px 6px,6px 6px;background-repeat:no-repeat}
.trend-workspace-controls{display:flex!important;flex-wrap:wrap!important;align-items:flex-end!important}
.trend-action-control,.trend-range-control{justify-content:end!important}
.trend-control-action{display:inline-flex!important;align-items:center!important;justify-content:center!important}
.trend-legend-panel{background:linear-gradient(180deg,rgba(255,255,255,.58),rgba(241,248,253,.72))!important;border:1px solid rgba(91,132,164,.12)!important;border-radius:18px!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.9),0 12px 28px rgba(37,75,107,.08)!important}
.trend-legend-item{background:linear-gradient(180deg,rgba(255,255,255,.66),rgba(244,249,253,.84))!important;box-shadow:var(--trend-shadow)!important;border:1px solid var(--trend-border)!important}
.trend-legend-item.active{transform:translateY(-1px)!important;box-shadow:0 12px 28px color-mix(in srgb,var(--parameter-color) 18%,transparent),inset 0 1px 0 rgba(255,255,255,.94)!important}
.trend-link-state{min-width:32px!important;justify-content:center!important;padding:4px 8px!important}
.trend-link-state .trend-link-icon{display:inline-flex!important;align-items:center!important;justify-content:center!important;font-size:9px!important;font-weight:900!important;line-height:1!important}
.trend-link-state.good .trend-link-icon{color:#1d8d70!important}
.trend-link-state.bad .trend-link-icon{color:#cf4759!important}
.trend-live-line{justify-content:flex-start!important}
.station-trend-surface{min-height:var(--trend-graph-min-height,400px)!important}
.station-trend-surface canvas{min-height:calc(var(--trend-graph-min-height,400px) - 12px)!important}
.value-tile-premium,.premium-live-tile{background:linear-gradient(180deg,color-mix(in srgb,var(--tile-color) 12%,rgba(255,255,255,.96)) 0%,rgba(255,255,255,.76) 100%)!important;border-color:var(--tile-border)!important;box-shadow:var(--tile-shadow)!important;}
.value-tile-premium .tile-insight-grid,.premium-live-tile .tile-insight-grid{gap:10px!important}
.value-tile-premium .tile-top,.premium-live-tile .tile-top{align-items:flex-start!important}
.value-tile-premium .tile-spec-pane,.premium-live-tile .tile-spec-pane{background:rgba(255,255,255,.48)!important;border:1px solid rgba(84,128,162,.10)!important;border-radius:14px!important;padding:8px 9px!important;}


/* AESST DAS 4.20.19 — Dashboard visibility, dock geometry and control-state authority. */
:root{--dashboard-dock-height:60px}
#sidebar .dock{height:var(--dashboard-dock-height)!important;min-height:var(--dashboard-dock-height)!important}
.dashboard-shell .dock-item[hidden]{display:none!important}
#live-graph-section .manual-range[hidden],.dashboard-shell .manual-range[hidden]{display:none!important}
.dashboard-shell .dock-item[data-page="alarms"] #dock-alarm-count{position:absolute!important;top:2px!important;left:calc(50% + 14px)!important;right:auto!important;transform:none!important;z-index:5!important;pointer-events:none!important}
.dashboard-shell .metric-card{border-color:color-mix(in srgb,var(--metric-accent) 30%,rgba(255,255,255,.88))!important;box-shadow:0 12px 30px color-mix(in srgb,var(--metric-accent) 14%,rgba(37,72,100,.08)),inset 0 1px 0 rgba(255,255,255,.98)!important}
.dashboard-shell .metric-card:before{width:5px!important;opacity:1!important}
.dashboard-shell .dashboard-account{padding:0!important;background:transparent!important;border:0!important;box-shadow:none!important}


/* AESST DAS 4.20.19 — dynamic trend height, matrix geometry and report legibility. */
.dashboard-shell{overflow-x:hidden!important}
.trend-workspace-card,.trend-workspace-layout,.trend-plot-panel{overflow:visible!important}
.trend-legend-panel{overflow:visible!important;max-height:none!important;height:auto!important}
.parameter-chips{max-height:none!important;overflow:visible!important}
.station-trend-surface{overflow:hidden!important;width:100%!important}
.station-trend-surface canvas{width:100%!important;height:100%!important;min-height:0!important}
.live-matrix-table th:not(:last-child),.live-matrix-table td:not(:last-child){border-right:1px solid rgba(65,121,164,.16)!important}
.live-matrix-table .matrix-parameter-head{border-left:1px solid rgba(65,121,164,.16)!important;border-bottom:1px solid rgba(65,121,164,.18)!important}
.live-matrix-table .matrix-timebase-head{border-top:1px solid rgba(65,121,164,.12)!important;border-left:1px solid rgba(65,121,164,.10)!important}
.live-matrix-table .history-time-col{background-clip:padding-box!important}
.report-export-fab > #report-export-toggle{opacity:1!important;color:#245879!important;-webkit-text-fill-color:#245879!important;background:rgba(247,252,255,.96)!important;border-color:rgba(76,139,187,.24)!important;text-shadow:none!important;font-weight:800!important}
.report-export-fab > #report-export-toggle:hover{color:#176fca!important;-webkit-text-fill-color:#176fca!important;background:#fff!important}
.dashboard-shell .dashboard-account{background:transparent!important;border:0!important;box-shadow:none!important;padding:0!important}


/* AESST DAS 4.20.19 — exact dynamic dashboard geometry. */
.station-live-grid.tiles-1{grid-template-columns:repeat(1,minmax(0,1fr))!important}
.station-live-grid.tiles-2{grid-template-columns:repeat(2,minmax(0,1fr))!important}
.station-live-grid.tiles-3{grid-template-columns:repeat(3,minmax(0,1fr))!important}
.station-live-grid.tiles-4{grid-template-columns:repeat(4,minmax(0,1fr))!important}
.trend-workspace-layout{min-height:0!important;height:auto;align-items:start!important}
.trend-legend-panel{overflow:visible!important;max-height:none!important;height:auto!important}
.trend-selected-legend{overflow:visible!important;max-height:none!important}
.station-trend-surface{overflow:hidden!important}

/* Groups use the same colored surface language as the combined trend. */
.group-comparison-workspace{display:grid!important;gap:12px!important;padding:14px!important;border:1px solid rgba(82,126,160,.15)!important;border-radius:20px!important;background:linear-gradient(155deg,rgba(255,255,255,.88),rgba(235,246,253,.66))!important;box-shadow:0 14px 34px rgba(33,72,104,.08),inset 0 1px 0 rgba(255,255,255,.94)!important}
.group-workspace-head{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;padding-bottom:10px!important;border-bottom:1px solid rgba(76,121,155,.11)!important}
.group-workspace-head>div{display:grid!important;gap:3px!important}.group-workspace-head strong{font-size:15px!important;color:#1c3a52!important}.group-workspace-head small{font-size:9px!important;color:#6e8598!important}
.group-comparison-grid{display:grid!important;grid-template-columns:minmax(220px,280px) minmax(0,1fr)!important;gap:14px!important;align-items:start!important;min-width:0!important}
.group-live-list{display:grid!important;gap:9px!important;min-width:0!important}
.group-live-card{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;align-items:center!important;gap:10px!important;padding:11px 12px!important;border-radius:15px!important;border:1px solid color-mix(in srgb,var(--group-color,#247ff0) 28%,rgba(80,126,160,.15))!important;border-left:4px solid var(--group-color,#247ff0)!important;background:linear-gradient(145deg,color-mix(in srgb,var(--group-soft,rgba(36,127,240,.10)) 65%,rgba(255,255,255,.88)),rgba(255,255,255,.76))!important;box-shadow:0 9px 20px color-mix(in srgb,var(--group-color,#247ff0) 10%,transparent),inset 0 1px 0 rgba(255,255,255,.92)!important;min-width:0!important}
.group-live-card>div{display:grid!important;gap:2px!important;min-width:0!important}.group-live-card strong{font-size:11px!important;color:var(--group-color,#247ff0)!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}.group-live-card small{font-size:8px!important;color:#72889a!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}.group-live-card>b{font-size:13px!important;color:var(--group-color,#247ff0)!important;white-space:nowrap!important}
.group-graph-pane{display:grid!important;gap:10px!important;min-width:0!important}.compact-graph-controls{display:flex!important;align-items:flex-end!important;gap:9px!important;flex-wrap:wrap!important}.compact-graph-controls>label{display:grid!important;gap:4px!important;min-width:125px!important;font-size:9px!important;font-weight:700!important;color:#60798d!important}.group-trend-selector{display:flex!important;gap:7px!important;flex-wrap:wrap!important}.group-trend-toggle{display:inline-flex!important;align-items:center!important;gap:6px!important;min-height:30px!important;padding:5px 9px!important;border-radius:10px!important;border:1px solid color-mix(in srgb,var(--group-color,#247ff0) 22%,rgba(80,126,160,.14))!important;background:color-mix(in srgb,var(--group-soft,rgba(36,127,240,.10)) 55%,rgba(255,255,255,.82))!important;color:#385b73!important;font-size:9px!important;font-weight:750!important}.group-trend-toggle i{width:8px!important;height:8px!important;border-radius:50%!important;background:var(--group-color,#247ff0)!important}.group-trend-toggle.active{color:var(--group-color,#247ff0)!important;box-shadow:0 7px 15px color-mix(in srgb,var(--group-color,#247ff0) 12%,transparent)!important}.group-comparison-chart{height:clamp(300px,42vh,460px)!important;min-width:0!important;border:1px solid rgba(79,124,158,.13)!important;border-radius:17px!important;background:rgba(255,255,255,.78)!important;padding:9px!important;overflow:hidden!important}.group-comparison-chart canvas{width:100%!important;height:100%!important}


.diagnostic-device-container{display:grid!important;gap:12px!important;padding:14px!important;border-radius:20px!important;background:linear-gradient(155deg,rgba(255,255,255,.9),rgba(239,247,253,.70))!important;border:1px solid rgba(82,126,160,.15)!important;box-shadow:0 14px 34px rgba(33,72,104,.08),inset 0 1px 0 rgba(255,255,255,.94)!important;overflow:visible!important}
.diagnostic-device-head{align-items:center!important;padding-bottom:10px!important;border-bottom:1px solid rgba(76,121,155,.11)!important}.diagnostic-graph-controls{display:flex!important;align-items:flex-end!important;gap:9px!important;flex-wrap:wrap!important}.diagnostic-graph-controls>label{display:grid!important;gap:4px!important;min-width:125px!important;font-size:9px!important;font-weight:700!important;color:#60798d!important}.diagnostic-parameter-stack{display:grid!important;gap:12px!important}
.diagnostic-parameter-panel{display:grid!important;grid-template-columns:minmax(220px,300px) minmax(0,1fr)!important;gap:12px!important;align-items:stretch!important;padding:12px!important;border-radius:17px!important;border:1px solid color-mix(in srgb,var(--diag-color,#8b5cf6) 24%,rgba(80,126,160,.13))!important;border-left:4px solid var(--diag-color,#8b5cf6)!important;background:linear-gradient(145deg,color-mix(in srgb,var(--diag-soft,rgba(139,92,246,.10)) 55%,rgba(255,255,255,.90)),rgba(255,255,255,.76))!important;box-shadow:0 10px 24px color-mix(in srgb,var(--diag-color,#8b5cf6) 10%,transparent)!important;min-width:0!important}
.diagnostic-parameter-header{display:grid!important;grid-template-columns:1fr!important;align-content:start!important;gap:11px!important;min-width:0!important}.diagnostic-parameter-identity{display:flex!important;align-items:center!important;gap:8px!important;min-width:0!important}.diagnostic-parameter-identity>i{width:10px!important;height:10px!important;border-radius:50%!important;flex:0 0 auto!important}.diagnostic-parameter-identity>div{display:grid!important;gap:2px!important;min-width:0!important}.diagnostic-parameter-identity strong{font-size:12px!important;color:#213e56!important}.diagnostic-parameter-identity small{font-size:8px!important;color:#70879a!important}.diagnostic-reading{display:flex!important;align-items:baseline!important;gap:5px!important}.diagnostic-reading b{font-size:24px!important;color:var(--diag-color,#8b5cf6)!important}.diagnostic-reading small{font-size:9px!important;color:#657e92!important}.diagnostic-range-block{display:grid!important;gap:4px!important;padding:9px!important;border-radius:12px!important;background:rgba(255,255,255,.56)!important;border:1px solid rgba(80,126,160,.10)!important}.diagnostic-range-block small{font-size:7px!important;text-transform:uppercase!important;letter-spacing:.07em!important;color:#768da0!important;font-weight:800!important}.diagnostic-range-block strong{font-size:10px!important;color:#2e5068!important}.diagnostic-range-state{display:inline-flex!important;width:max-content!important;padding:4px 7px!important;border-radius:999px!important;font-size:8px!important;font-weight:800!important}.diagnostic-range-state.good{background:rgba(27,158,123,.10)!important;color:#187c63!important}.diagnostic-range-state.bad{background:rgba(208,72,89,.10)!important;color:#b23b4c!important}.diagnostic-parameter-graph{height:260px!important;min-width:0!important;border-radius:15px!important;border:1px solid rgba(80,126,160,.12)!important;background:rgba(255,255,255,.8)!important;padding:8px!important;overflow:hidden!important}.diagnostic-parameter-graph canvas{width:100%!important;height:100%!important}
@media(max-width:1050px){.group-comparison-grid,.diagnostic-parameter-panel{grid-template-columns:1fr!important}.group-comparison-chart{height:320px!important}}
@media(max-width:720px){.station-live-grid.tiles-2,.station-live-grid.tiles-3,.station-live-grid.tiles-4{grid-template-columns:1fr!important}}


/* AESST DAS 4.20.19 — compact live tiles, lighter shadows, fixed tabular identity columns and taller dock. */
.dashboard-shell{--suite-dock-height:70px;--live-tile-height:240px}
.dashboard-shell .metric-card{box-shadow:0 6px 16px color-mix(in srgb,var(--metric-accent) 7%,rgba(37,72,100,.05)),inset 0 1px 0 rgba(255,255,255,.98)!important}
#live-tiles-section.live-tiles-card{padding:12px 14px!important}
.station-live-grid{align-items:start!important;grid-auto-rows:var(--live-tile-height)!important}
.station-live-grid .value-tile-premium{
  height:var(--live-tile-height)!important;
  min-height:var(--live-tile-height)!important;
  max-height:var(--live-tile-height)!important;
  padding:10px 11px!important;
  display:grid!important;
  grid-template-rows:minmax(0,1fr) 54px!important;
  gap:8px!important;
  box-shadow:0 6px 16px color-mix(in srgb,var(--tile-color) 8%,rgba(31,66,95,.045)),inset 0 1px 0 rgba(255,255,255,.95)!important;
}
.station-live-grid .tile-insight-grid{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:9px!important;min-height:0!important;align-items:stretch!important}
.station-live-grid .tile-primary-pane{display:grid!important;grid-template-rows:auto auto 1fr!important;align-content:start!important;gap:8px!important;min-width:0!important}
.station-live-grid .tile-top{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:9px!important;min-width:0!important}
.station-live-grid .tile-top .parameter{font-size:13px!important;font-weight:800!important;line-height:1.1!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;min-width:0!important}
.station-live-grid .comm-state{display:inline-flex!important;align-items:center!important;gap:5px!important;flex:0 0 auto!important;min-height:23px!important;padding:3px 7px!important;border-radius:999px!important;background:rgba(255,255,255,.56)!important;border:1px solid rgba(76,123,157,.11)!important}
.station-live-grid .tile-quality{font-size:8px!important;line-height:1!important;white-space:nowrap!important}
.station-live-grid .reading{display:block!important;font-size:22px!important;line-height:1!important;margin:0!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
.station-live-grid .reading small{font-size:9px!important}
.station-live-grid .tile-analyzer-line{display:grid!important;gap:3px!important;align-content:start!important;min-width:0!important}
.station-live-grid .tile-analyzer-line small,.station-live-grid .tile-spec-pane small{font-size:7.5px!important;text-transform:uppercase!important;letter-spacing:.055em!important;color:#70879a!important;font-weight:800!important}
.station-live-grid .tile-analyzer-line .device{font-size:10px!important;line-height:1.25!important;color:#2b4b63!important;white-space:normal!important;overflow-wrap:anywhere!important}
.station-live-grid .tile-spec-pane{display:grid!important;grid-template-columns:1fr!important;grid-auto-rows:minmax(0,auto)!important;align-content:start!important;gap:7px!important;padding:9px 10px!important;min-width:0!important;overflow:hidden!important}
.station-live-grid .tile-spec-pane>div{display:grid!important;gap:2px!important;min-width:0!important}
.station-live-grid .tile-spec-pane span{font-size:9.5px!important;line-height:1.2!important;color:#2f5068!important;white-space:normal!important;overflow-wrap:anywhere!important}
.station-live-grid .tile-sparkline-wrap{height:54px!important;min-height:54px!important;max-height:54px!important;border-top:1px solid rgba(77,121,154,.10)!important;padding-top:5px!important;overflow:hidden!important}
.station-live-grid .tile-sparkline{width:100%!important;height:48px!important;max-height:48px!important}
#sidebar.dock-wrap{bottom:10px!important}
#sidebar .dock{height:var(--suite-dock-height)!important;min-height:var(--suite-dock-height)!important;padding:8px!important;align-items:center!important}
#sidebar .dock-item{height:54px!important;min-height:54px!important;align-self:center!important;justify-content:center!important}
:root{--dashboard-dock-clearance:116px}
#workspace.dashboard-shell{padding-bottom:var(--dashboard-dock-clearance)!important}
.dashboard-content{padding-bottom:calc(var(--dashboard-dock-clearance) + 18px)!important}
.live-matrix-table .history-date-col,.live-matrix-table .history-clock-col{width:112px!important;min-width:112px!important;max-width:112px!important;position:sticky!important;background:rgba(239,247,253,.98)!important;z-index:14!important}
.live-matrix-table .history-date-col{left:0!important}
.live-matrix-table .history-clock-col{left:112px!important;box-shadow:3px 0 0 rgba(65,121,164,.10)!important}
.live-matrix-table thead .history-date-col,.live-matrix-table thead .history-clock-col{z-index:24!important;background:rgba(232,243,252,.99)!important}
.live-matrix-table tfoot .history-date-col,.live-matrix-table tfoot .history-clock-col{z-index:18!important}
@media(max-width:760px){.dashboard-shell{--live-tile-height:220px}.station-live-grid .tile-insight-grid{grid-template-columns:1fr!important}.station-live-grid .tile-spec-pane{grid-template-columns:repeat(3,minmax(0,1fr))!important}.station-live-grid .value-tile-premium{height:auto!important;min-height:220px!important;max-height:none!important}}

/* AESST DAS 4.20.19 — unified rolling graph + historian analysis surfaces. */
.overview-live-tabular{display:grid;gap:10px;margin:12px 0 14px}.overview-live-tabular-head{padding:0 4px}.overview-live-tabular .tabular-toolbar{margin:0}.tile-sparkline-toolbar{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:6px 0 2px}.tile-sparkline-toolbar small{font-size:9px;color:var(--adq-text-muted,#687d90)}.tile-window-select{min-height:30px!important;height:30px!important;max-width:104px!important;padding-block:3px!important;font-size:9px!important}.analysis-workspace{display:grid;gap:14px}.analysis-control-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px}.analysis-control-grid label{display:grid;gap:5px}.analysis-multi-select{height:112px!important;min-height:112px!important;padding:7px!important}.analysis-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:9px}.analysis-summary article{padding:10px 12px;border:1px solid var(--adq-border,rgba(75,105,135,.14));border-radius:13px;background:rgba(255,255,255,.56);display:grid;gap:3px}.analysis-summary small{color:var(--adq-text-muted,#687d90);font-size:9px}.analysis-summary strong{font-size:16px}.analysis-chart-wrap{height:min(56vh,560px);min-height:360px;border-radius:18px;background:#fff;padding:12px;border:1px solid var(--adq-border,rgba(75,105,135,.14))}.analysis-chart-wrap canvas{width:100%!important;height:100%!important}.diagnostic-parameter-panel,.group-comparison-workspace{transition:box-shadow .18s ease,transform .18s ease}.diagnostic-parameter-graph,.group-comparison-chart{background:#fff!important;border-radius:16px!important}.graph-control-bar .touch-select{min-width:112px}

/* AESST DAS 4.20.20 — Dashboard owns a real viewport scroller and uses the larger dock. */
html,body{height:100%!important;min-height:100%!important;overflow:hidden!important}
body{padding-bottom:0!important}
#workspace.dashboard-shell{height:100dvh!important;min-height:0!important;display:flex!important;flex-direction:column!important;overflow:hidden!important;padding-bottom:0!important}
.dashboard-content{flex:1 1 auto!important;min-height:0!important;overflow-y:auto!important;overflow-x:hidden!important;overscroll-behavior:contain!important;scrollbar-gutter:stable!important;-webkit-overflow-scrolling:touch;padding-bottom:132px!important}
.dashboard-shell{--suite-dock-height:78px!important}
#sidebar .dock{height:78px!important;min-height:78px!important;padding:7px!important}
#sidebar .dock-item{height:62px!important;min-height:62px!important;grid-template-rows:30px 16px!important;gap:3px!important}
.dashboard-shell .dock-item .nav-svg,.dashboard-shell .dock-item[data-page="alarms"] .nav-svg{width:26px!important;height:26px!important}
.dashboard-shell .dock-item span{font-size:11px!important;line-height:1.05!important;font-weight:750!important}
@media(max-width:800px){#sidebar .dock{height:72px!important;min-height:72px!important}#sidebar .dock-item{height:56px!important;min-height:56px!important;grid-template-rows:27px 14px!important}.dashboard-shell .dock-item .nav-svg,.dashboard-shell .dock-item[data-page="alarms"] .nav-svg{width:23px!important;height:23px!important}.dashboard-shell .dock-item span{font-size:9px!important}}

/* AESST DAS 4.20.22 — Dashboard footer dock participates in layout and never covers a page. */
html,body{height:100%!important;overflow:hidden!important}
#workspace.dashboard-shell{height:100dvh!important;min-height:0!important;display:flex!important;flex-direction:column!important;overflow:hidden!important;padding-bottom:0!important}
.dashboard-content{flex:1 1 auto!important;min-height:0!important;overflow-y:auto!important;overflow-x:hidden!important;padding-bottom:0!important}
.dashboard-inner{padding-bottom:14px!important}
#sidebar.dock-wrap{position:relative!important;left:auto!important;right:auto!important;bottom:auto!important;top:auto!important;transform:none!important;flex:0 0 auto!important;width:min(1180px,calc(100vw - 20px))!important;max-width:calc(100vw - 20px)!important;margin:8px auto 10px!important;z-index:90!important}
#sidebar .dock{width:100%!important;margin:0!important}

/* AESST DAS 4.20.22 — bounded Combined Trend parameter selector */
#trend-legend-panel.trend-legend-panel{
  height:310px!important;
  max-height:310px!important;
  min-height:0!important;
  overflow-x:hidden!important;
  overflow-y:auto!important;
  align-self:start!important;
}
#trend-selector.trend-selected-legend{
  max-height:none!important;
  overflow:visible!important;
  gap:4px!important;
}
#trend-selector .trend-legend-item{
  min-height:26px!important;
  padding:4px 7px!important;
  border-radius:10px!important;
  row-gap:1px!important;
}
#trend-selector .trend-legend-specs{display:none!important}
#trend-selector .trend-analyzer{font-size:8px!important}
#trend-selector .trend-live-reading{font-size:11px!important}
.trend-workspace-layout{align-items:start!important}
.station-trend-surface{height:420px!important;min-height:420px!important;max-height:56vh!important}

/* AESST DAS 4.20.22 — Dashboard live database table + unified Analysis UI. */
.dashboard-live-data-card{display:grid!important;gap:10px!important;margin:10px 0 12px!important;overflow:hidden!important}
.dashboard-live-data-head{align-items:end!important}
.dashboard-live-timebase-label{display:grid!important;gap:5px!important;min-width:142px!important;color:var(--adq-text-secondary)!important;font-size:9px!important;font-weight:750!important;text-transform:uppercase!important;letter-spacing:.05em!important}
.dashboard-live-data-table{min-width:0!important;overflow-x:auto!important;border:1px solid rgba(77,121,154,.12)!important;border-radius:16px!important;background:rgba(255,255,255,.42)!important}
.dashboard-live-table-shell{min-width:max-content!important;border:0!important;border-radius:0!important}
.dashboard-live-table{border-collapse:separate!important;border-spacing:0!important;min-width:100%!important;background:transparent!important}
.dashboard-live-table th,.dashboard-live-table td{min-width:112px!important;padding:8px 10px!important;border-right:1px solid rgba(76,123,157,.09)!important;border-bottom:1px solid rgba(76,123,157,.09)!important;text-align:center!important;white-space:nowrap!important}
.dashboard-live-table th:first-child,.dashboard-live-table th:nth-child(2),.dashboard-live-table td:first-child,.dashboard-live-table td:nth-child(2){min-width:96px!important;position:sticky!important;z-index:3!important;background:rgba(242,249,254,.96)!important}
.dashboard-live-table th:first-child,.dashboard-live-table td:first-child{left:0!important}
.dashboard-live-table th:nth-child(2),.dashboard-live-table td:nth-child(2){left:96px!important;box-shadow:3px 0 0 rgba(60,115,157,.07)!important}
.dashboard-live-table th{font-size:9px!important;color:var(--adq-text-secondary)!important;background:rgba(235,246,253,.80)!important}
.dashboard-live-table th small{display:block!important;margin-top:3px!important;font-size:7px!important;color:#6d879b!important}
.dashboard-live-table td strong{display:block!important;font-size:13px!important;color:#244c69!important}
.dashboard-live-table td small{display:block!important;margin-top:3px!important;font-size:7px!important;color:#748c9f!important}
.dashboard-live-table td.invalid{background:rgba(239,76,76,.08)!important}
.dashboard-live-param{display:block!important;max-width:150px!important;overflow:hidden!important;text-overflow:ellipsis!important}
.analysis-section-tabs{width:max-content!important;max-width:100%!important;margin:0 0 10px!important;padding:4px!important;overflow-x:auto!important}
.analysis-panel{min-width:0!important}
.analysis-workspace,.analysis-group-card{display:grid!important;gap:10px!important}
.analysis-mode-strip{display:flex!important;gap:6px!important;overflow-x:auto!important;padding:5px!important;border:1px solid rgba(83,127,159,.12)!important;border-radius:15px!important;background:rgba(237,246,252,.58)!important}
.analysis-mode-chip{appearance:none!important;min-height:34px!important;padding:7px 11px!important;border:1px solid rgba(67,116,151,.13)!important;border-radius:11px!important;background:rgba(255,255,255,.62)!important;color:#4c687c!important;font:inherit!important;font-size:9px!important;font-weight:750!important;white-space:nowrap!important;cursor:pointer!important}
.analysis-mode-chip.active{color:#176fca!important;border-color:rgba(23,111,202,.24)!important;background:linear-gradient(180deg,rgba(255,255,255,.94),rgba(224,241,254,.88))!important;box-shadow:0 6px 15px rgba(25,97,156,.10)!important}
.analysis-control-grid{padding:10px!important;border:1px solid rgba(83,127,159,.12)!important;border-radius:16px!important;background:rgba(255,255,255,.46)!important}
.analysis-control-grid label{color:var(--adq-text-secondary)!important;font-size:9px!important;font-weight:720!important}
.analysis-multi-select{border-radius:11px!important;background:rgba(255,255,255,.82)!important;color:#274a62!important}
.analysis-summary article{background:linear-gradient(180deg,rgba(255,255,255,.76),rgba(240,248,253,.78))!important;box-shadow:0 5px 14px rgba(31,70,99,.05)!important}
.analysis-chart-wrap{background:#fff!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.98),0 8px 22px rgba(36,75,105,.06)!important}
.analysis-group-card .group-summary{display:grid!important;gap:10px!important}
@media(max-width:720px){.dashboard-live-data-head{align-items:stretch!important}.dashboard-live-timebase-label{width:100%!important}.analysis-section-tabs{width:100%!important}.analysis-mode-strip{scrollbar-width:thin!important}}

/* AESST DAS 4.20.22 — readable Combined Trend cards + graph-forward Parameter Tiles. */
#trend-legend-panel.trend-legend-panel{height:430px!important;max-height:430px!important;overflow-y:auto!important;overflow-x:hidden!important;padding:9px!important}
#trend-selector.trend-selected-legend{display:grid!important;grid-template-columns:1fr!important;gap:7px!important}
#trend-selector .trend-legend-item{min-height:96px!important;padding:9px 10px!important;border-radius:13px!important;display:grid!important;gap:8px!important;text-align:left!important}
#trend-selector .trend-card-main{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;align-items:start!important;gap:10px!important;min-width:0!important}
#trend-selector .trend-name-block{display:flex!important;align-items:center!important;gap:7px!important;min-width:0!important}
#trend-selector .trend-name{font-size:13px!important;font-weight:850!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}
#trend-selector .trend-live-reading{font-size:18px!important;line-height:1!important;text-align:right!important;white-space:nowrap!important}
#trend-selector .trend-live-reading small{font-size:9px!important;font-weight:750!important}
#trend-selector .trend-legend-specs{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:6px 10px!important;min-width:0!important}
#trend-selector .trend-legend-specs>span{display:grid!important;gap:2px!important;min-width:0!important}
#trend-selector .trend-legend-specs small{font-size:7px!important;text-transform:uppercase!important;letter-spacing:.055em!important;color:#71889b!important;font-weight:800!important}
#trend-selector .trend-legend-specs b{font-size:9.5px!important;color:#294c64!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}
.station-live-grid{--live-tile-height:300px!important}
.station-live-grid .value-tile-premium{height:var(--live-tile-height)!important;min-height:var(--live-tile-height)!important;max-height:var(--live-tile-height)!important;grid-template-rows:minmax(0,1fr) auto 120px!important;gap:6px!important;padding:10px 11px!important}
.station-live-grid .tile-insight-grid{min-height:0!important;max-height:126px!important;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr)!important;gap:8px!important}
.station-live-grid .tile-primary-pane{gap:5px!important}
.station-live-grid .tile-spec-pane{gap:4px!important;padding:7px 8px!important}
.station-live-grid .tile-sparkline-toolbar.tile-trend-toolbar{margin:0!important;min-height:34px!important;padding:2px 3px 0!important;border-top:1px solid rgba(77,121,154,.10)!important}
.station-live-grid .tile-window-select{height:32px!important;min-height:32px!important;min-width:112px!important;max-width:132px!important;font-size:10px!important;color:#244c69!important;background:rgba(255,255,255,.92)!important;border-color:rgba(65,117,156,.20)!important;-webkit-text-fill-color:#244c69!important;opacity:1!important}
.station-live-grid .tile-window-select option{color:#1f4057!important;background:#fff!important}
.station-live-grid .tile-sparkline-wrap{height:120px!important;min-height:120px!important;max-height:120px!important;border:1px solid rgba(77,121,154,.10)!important;border-radius:13px!important;padding:6px!important;background:rgba(255,255,255,.62)!important;overflow:hidden!important}
.station-live-grid .tile-sparkline{width:100%!important;height:106px!important;max-height:106px!important}
@media(max-width:760px){.station-live-grid{--live-tile-height:320px!important}.station-live-grid .value-tile-premium{height:auto!important;min-height:320px!important;max-height:none!important}.station-live-grid .tile-insight-grid{max-height:none!important;grid-template-columns:1fr!important}.station-live-grid .tile-spec-pane{grid-template-columns:repeat(3,minmax(0,1fr))!important}}

.trend-legend-specs{display:grid!important}

/* AESST DAS 4.20.40 — bounded live Central trace */
.central-trace-toolbar{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:10px}.central-trace-toolbar span{font-size:11px;color:var(--muted)}
.central-trace-scroll{max-height:520px;overflow:auto!important;scrollbar-gutter:stable;border-radius:16px}.central-trace-table{min-width:1280px!important}.central-trace-table th{position:sticky;top:0;z-index:3}

/* AESST DAS 4.20.40 — structured per-device communication + parsing trace */
.trace-table-wrap{margin-top:10px;border:1px solid var(--adq-edge);border-radius:16px;background:var(--adq-surface-soft);overflow:auto;max-height:430px;scrollbar-gutter:stable;padding:8px}.trace-table-wrap .toolbar-head{position:sticky;left:0;margin-bottom:8px}.device-trace-table{min-width:1320px;width:100%;border-collapse:separate;border-spacing:0}.device-trace-table th{position:sticky;top:0;z-index:2;background:color-mix(in srgb,var(--adq-surface) 94%,white 6%);font-size:9px;text-transform:uppercase;letter-spacing:.04em}.device-trace-table td{vertical-align:top;font-size:10px}.device-trace-table code{display:block;max-width:260px;white-space:pre-wrap;overflow-wrap:anywhere;font:500 9px ui-monospace,SFMono-Regular,Consolas,monospace}.trace-hex{display:block;margin-top:3px;color:var(--adq-text-secondary);max-width:300px;white-space:pre-wrap;overflow-wrap:anywhere;font:500 8px ui-monospace,SFMono-Regular,Consolas,monospace}.trace-dir.PARSE{background:rgba(25,145,111,.11)!important;color:#167c61!important}.profile-parameter-binding{border:1px solid color-mix(in srgb,var(--adq-accent) 24%,var(--adq-edge));border-radius:16px;background:color-mix(in srgb,var(--adq-surface-soft) 92%,var(--adq-accent) 8%);padding:12px}.profile-binding-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:9px}.profile-binding-head span{color:var(--adq-text-secondary);font-size:10px}.profile-binding-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.profile-binding-grid>div{padding:8px 10px;border:1px solid var(--adq-edge);border-radius:12px;background:var(--adq-surface)}.profile-binding-grid small{display:block;color:var(--adq-text-secondary);font-size:8px;text-transform:uppercase;letter-spacing:.04em}.profile-binding-grid b,.profile-binding-grid code{display:block;margin-top:3px;font-size:10px;overflow-wrap:anywhere}.profile-parameter-binding p{margin:8px 0 0;color:var(--adq-text-secondary);font-size:9px}
@media(max-width:900px){.profile-binding-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* AESST DAS 4.20.40 — development diagnostics, Auto Check tile status and quality context actions. */
.tile-autocheck-indicator{position:absolute;top:9px;right:9px;width:30px;height:30px;min-width:30px;padding:0!important;border-radius:999px!important;border:1px solid rgba(84,128,162,.18)!important;display:grid;place-items:center;font-size:12px;font-weight:900;z-index:5;box-shadow:0 6px 14px rgba(35,72,102,.10);transition:transform .15s ease,box-shadow .15s ease,background .15s ease,color .15s ease}
.tile-autocheck-indicator:hover{transform:translateY(-1px) scale(1.04);box-shadow:0 9px 20px rgba(35,72,102,.16)}
.tile-autocheck-indicator.pass{background:#dcf8ec!important;color:#087658!important;border-color:#9ee4ca!important}.tile-autocheck-indicator.fail{background:#ffe8ec!important;color:#bb3146!important;border-color:#f5a9b5!important}.tile-autocheck-indicator.stopped{background:#fff0d7!important;color:#b36500!important;border-color:#f0c37f!important}.tile-autocheck-indicator.running{background:#e2efff!important;color:#176fc7!important;border-color:#9bc8f2!important}.tile-autocheck-indicator.ready{background:#eef4f8!important;color:#577489!important}
.dashboard-context-menu{position:fixed;z-index:900;width:min(330px,calc(100vw - 16px));padding:7px;border-radius:18px!important;background:rgba(248,252,255,.94)!important;box-shadow:0 18px 50px rgba(29,60,86,.22),inset 0 1px 0 rgba(255,255,255,.96);}
.dashboard-context-menu[hidden]{display:none!important}.context-action{width:100%;min-height:48px;border:0;background:transparent;border-radius:13px;display:grid;grid-template-columns:28px 1fr;gap:8px;align-items:center;text-align:left;padding:7px 9px;color:var(--adq-text-primary);cursor:pointer;transition:.14s ease}.context-action:hover:not(:disabled){background:rgba(33,126,221,.08);transform:translateX(1px)}.context-action:disabled{cursor:default;opacity:.72}.context-action>span{width:28px;height:28px;border-radius:10px;display:grid;place-items:center;background:rgba(34,124,214,.08);font-weight:900}.context-action>div{display:grid;gap:2px}.context-action b{font-size:11px}.context-action small{font-size:9px;color:var(--adq-text-muted,#687d90);line-height:1.3}.context-action.danger>span{background:#ffe8ec;color:#b83145}.context-separator{height:1px;background:rgba(83,126,159,.13);margin:4px 5px}
.dashboard-live-table tbody tr{transition:background .14s ease,box-shadow .14s ease}.dashboard-live-table tbody tr:hover{background:rgba(34,124,214,.035)}.dashboard-live-table tbody tr.maintenance-mode{box-shadow:inset 4px 0 0 #e59a19}.dashboard-live-table tbody tr.invalid-hold{box-shadow:inset 4px 0 0 #d84257}.dashboard-live-table tbody tr.maintenance-mode.invalid-hold{box-shadow:inset 4px 0 0 #d84257,inset 8px 0 0 #e59a19}.parameter-state-badge{display:inline-flex;margin-left:6px;padding:2px 6px;border-radius:999px;font-style:normal;font-size:7px;font-weight:900;letter-spacing:.04em}.parameter-state-badge.maintenance{background:#fff0d7;color:#a65e00}.parameter-state-badge.invalid{background:#ffe8ec;color:#b43145}
.station-live-grid .tile-sparkline-toolbar{display:flex!important;visibility:visible!important;opacity:1!important}.station-live-grid .tile-window-select{display:block!important;visibility:visible!important;opacity:1!important;min-width:124px!important;max-width:150px!important;z-index:3}.station-live-grid .tile-sparkline-wrap{direction:ltr!important}.station-live-grid .tile-sparkline{direction:ltr!important}

/* AESST DAS 4.20.62 — Premium Mica Operator Dashboard authority */
.dashboard-shell{--premium-content-max:1840px;--premium-gap:12px;--premium-chart:205px;min-height:100dvh;background:transparent!important}
.dashboard-content{padding:11px 15px 96px!important;overflow-x:hidden!important;overflow-y:auto!important;background:transparent!important}
.dashboard-inner{width:min(var(--premium-content-max),100%)!important;margin:0 auto!important;display:grid!important;gap:var(--premium-gap)!important}.page{gap:12px!important}
.top-glass{top:8px!important;margin:8px 15px 0!important;background:transparent!important}.top-inner{min-height:64px!important;padding:9px 13px!important;border-radius:18px!important;box-shadow:var(--adq-shadow-md)!important}.suite-brand{display:flex!important;align-items:center!important;gap:10px!important}.suite-brand-mark{width:38px!important;height:38px!important;filter:drop-shadow(0 5px 8px rgba(20,104,168,.15))}.suite-brand-copy{display:grid!important;gap:2px!important}.suite-brand-copy strong{font-size:11px!important}.dashboard-build{font-size:8px!important;color:var(--adq-accent)!important;font-weight:800!important;letter-spacing:.04em!important}.station-copy{padding-left:14px!important;border-left:1px solid var(--adq-divider)!important}.station-copy strong{font-size:14px!important}.station-meta-inline{font-size:9px!important;color:var(--adq-text-secondary)!important}.top-actions{gap:7px!important}

.metric-grid{gap:9px!important}.metric-card{min-height:80px!important;padding:11px 13px!important;border-radius:15px!important;background:linear-gradient(145deg,var(--adq-surface-strong),var(--adq-surface))!important;border:1px solid var(--adq-edge)!important;box-shadow:var(--adq-shadow-sm)!important;position:relative!important;overflow:hidden!important}.metric-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--metric-accent,var(--adq-accent))}.metric-card.metric-online{--metric-accent:var(--adq-success)}.metric-card.metric-offline,.metric-card.metric-alerts{--metric-accent:var(--adq-warning)}.metric-card.metric-alarms{--metric-accent:var(--adq-danger)}.metric-card>span{font-size:8px!important;font-weight:820!important;letter-spacing:.06em!important}.metric-card>strong{font-size:22px!important;letter-spacing:-.04em!important}.metric-card>small{font-size:9px!important;color:var(--adq-text-secondary)!important}
.dashboard-live-data-card{border-radius:17px!important;padding:13px!important;background:linear-gradient(145deg,var(--adq-surface-strong),var(--adq-surface))!important;border:1px solid var(--adq-edge)!important;box-shadow:var(--adq-shadow-md)!important}.dashboard-live-data-head{margin-bottom:8px!important}

.overview-mode-tabs{padding:5px!important;gap:4px!important;border-radius:16px!important;background:linear-gradient(145deg,var(--adq-surface-strong),var(--adq-surface))!important;border:1px solid var(--adq-edge)!important;box-shadow:var(--adq-shadow-sm)!important;display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important}.overview-mode-tab{min-height:36px!important;border-radius:11px!important;border:0!important;background:transparent!important;color:var(--adq-text-secondary)!important;font-weight:760!important}.overview-mode-tab.active{background:linear-gradient(180deg,color-mix(in srgb,var(--adq-accent-soft) 76%,var(--adq-surface-strong)),color-mix(in srgb,var(--adq-accent-soft) 52%,var(--adq-surface)))!important;color:var(--adq-accent)!important;box-shadow:0 4px 12px color-mix(in srgb,var(--adq-accent) 9%,transparent)!important}

.live-tiles-card,.trend-workspace-card,.analysis-workspace-shell,.analysis-group-card{border-radius:18px!important;background:linear-gradient(145deg,var(--adq-surface-strong),var(--adq-surface))!important;border:1px solid var(--adq-edge)!important;box-shadow:var(--adq-shadow-md)!important}.live-tiles-card{padding:14px!important}.live-tiles-card>.section-head{margin-bottom:10px!important}.station-live-grid{display:grid!important;grid-template-columns:repeat(var(--tile-columns,4),minmax(0,1fr))!important;gap:12px!important}.station-live-grid .premium-live-tile{height:370px!important;min-height:370px!important;max-height:370px!important;border-radius:17px!important;padding:13px!important;background:linear-gradient(150deg,color-mix(in srgb,var(--tile-color,var(--adq-accent)) 5%,var(--adq-surface-strong)),var(--adq-surface) 58%)!important;border:1px solid color-mix(in srgb,var(--tile-color,var(--adq-accent)) 23%,var(--adq-edge))!important;border-top:3px solid var(--tile-color,var(--adq-accent))!important;box-shadow:0 1px 0 var(--adq-border-bright) inset,0 10px 25px color-mix(in srgb,var(--tile-color,var(--adq-accent)) 7%,rgba(24,60,88,.06))!important;display:grid!important;grid-template-rows:118px minmax(0,1fr)!important;gap:10px!important;overflow:hidden!important;transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease!important}.station-live-grid .premium-live-tile:hover{transform:translateY(-2px)!important;border-color:color-mix(in srgb,var(--tile-color,var(--adq-accent)) 44%,var(--adq-edge))!important;box-shadow:0 1px 0 var(--adq-border-bright) inset,0 15px 32px color-mix(in srgb,var(--tile-color,var(--adq-accent)) 9%,rgba(20,53,80,.08))!important}.station-live-grid .tile-insight-grid{display:grid!important;grid-template-columns:minmax(0,1.16fr) minmax(165px,.84fr)!important;gap:10px!important;min-height:0!important;max-height:118px!important}.station-live-grid .tile-primary-pane{display:grid!important;grid-template-rows:auto auto 1fr!important;align-content:start!important;min-width:0!important;padding:1px 0!important}.station-live-grid .tile-top{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:8px!important}.station-live-grid .parameter{font-size:12px!important;font-weight:820!important;letter-spacing:-.01em!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}.station-live-grid .comm-state{display:inline-flex!important;align-items:center!important;gap:5px!important;min-height:24px!important;padding:0 8px!important;border:1px solid var(--adq-edge)!important;border-radius:999px!important;background:var(--adq-surface-soft)!important}.station-live-grid .tile-quality{font-size:8px!important;letter-spacing:.05em!important}.station-live-grid .reading{font-size:clamp(30px,3vw,46px)!important;line-height:1!important;font-weight:780!important;letter-spacing:-.055em!important;margin-top:10px!important;font-variant-numeric:tabular-nums!important}.station-live-grid .reading small{font-size:9px!important;letter-spacing:.05em!important;font-weight:800!important;color:var(--adq-text-secondary)!important}.station-live-grid .tile-analyzer-line{align-self:end!important;display:grid!important;gap:2px!important;min-width:0!important}.station-live-grid .tile-analyzer-line small,.station-live-grid .tile-spec-pane small{font-size:7px!important;letter-spacing:.08em!important;text-transform:uppercase!important;font-weight:850!important;color:var(--adq-text-tertiary)!important}.station-live-grid .tile-analyzer-line .device{font-size:9px!important;color:var(--adq-text-primary)!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}.station-live-grid .tile-spec-pane{display:grid!important;align-content:center!important;gap:8px!important;border-left:1px solid var(--adq-divider)!important;padding:3px 0 3px 12px!important;background:transparent!important}.station-live-grid .tile-spec-pane>div{display:grid!important;gap:2px!important}.station-live-grid .tile-spec-pane span{font-size:9px!important;color:var(--adq-text-secondary)!important;line-height:1.25!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
.station-live-grid .tile-sparkline-wrap{height:100%!important;min-height:0!important;max-height:none!important;position:relative!important;border:1px solid color-mix(in srgb,var(--tile-color,var(--adq-accent)) 15%,#cfdae3)!important;border-radius:14px!important;padding:10px 8px 3px!important;background:linear-gradient(180deg,#ffffff,#fbfdff)!important;overflow:hidden!important;box-shadow:0 1px 0 #fff inset,0 5px 14px rgba(34,72,101,.045)!important}.station-live-grid .tile-sparkline{width:100%!important;height:100%!important;direction:ltr!important}.station-live-grid .tile-chart-overlay{position:absolute!important;top:8px!important;right:8px!important;z-index:5!important}.station-live-grid .tile-window-select[data-native-select="true"]{appearance:none!important;-webkit-appearance:none!important;width:104px!important;min-width:104px!important;height:30px!important;min-height:30px!important;padding:0 28px 0 10px!important;border-radius:9px!important;border:1px solid rgba(79,112,138,.20)!important;background-color:rgba(255,255,255,.96)!important;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%233a607b' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m7 10 5 5 5-5'/%3E%3C/svg%3E")!important;background-repeat:no-repeat!important;background-position:right 8px center!important;color:#173a54!important;-webkit-text-fill-color:#173a54!important;font-size:9px!important;font-weight:750!important;box-shadow:0 4px 12px rgba(25,58,85,.08)!important;cursor:pointer!important}.station-live-grid .tile-window-select option{color:#173a54!important;background:#fff!important}.station-live-grid .tile-autocheck-indicator{position:absolute!important;top:11px!important;right:11px!important;width:30px!important;height:30px!important;border-radius:9px!important;border:1px solid var(--adq-edge)!important;background:var(--adq-surface-strong)!important;box-shadow:var(--adq-shadow-sm)!important}.station-live-grid .tile-autocheck-glyph{display:grid!important;place-items:center!important;width:100%!important;height:100%!important;font-size:8px!important;line-height:1!important;font-weight:900!important}.station-live-grid .tile-autocheck-indicator.pass{color:var(--adq-success)!important}.station-live-grid .tile-autocheck-indicator.fail{color:var(--adq-danger)!important}.station-live-grid .tile-autocheck-indicator.running{color:var(--adq-warning)!important}.station-live-grid .tile-autocheck-indicator[hidden]{display:none!important}

.trend-workspace-card{padding:14px!important}.trend-workspace-header{margin-bottom:12px!important;align-items:flex-end!important}.trend-workspace-layout{grid-template-columns:minmax(225px,270px) minmax(0,1fr)!important;gap:12px!important;min-height:450px!important}.trend-legend-panel{border-radius:14px!important;border:1px solid var(--adq-edge)!important;background:var(--adq-surface-soft)!important;box-shadow:0 1px 0 var(--adq-border-bright) inset!important}.trend-legend-item{border-radius:11px!important;box-shadow:none!important}.trend-plot-panel{min-height:0!important}.station-trend-surface{min-height:470px!important;height:calc(100dvh - 330px)!important;max-height:700px!important;border-radius:14px!important;border:1px solid #d7e3eb!important;background:#fff!important;box-shadow:0 1px 0 #fff inset,0 7px 18px rgba(25,63,91,.05)!important}.trend-context-line{padding:0 2px!important}

/* Analysis is a workstation: fixed control rail + always-visible visualization. */
.type4-analysis-heading{align-items:center!important;margin-bottom:2px!important}.analysis-section-tabs{width:max-content!important;margin:0!important;border:1px solid var(--adq-edge)!important;box-shadow:var(--adq-shadow-sm)!important}.analysis-workspace-shell{display:grid!important;grid-template-rows:auto auto minmax(0,1fr)!important;gap:9px!important;min-height:calc(100dvh - 225px)!important;padding:12px!important}.analysis-mode-strip{display:flex!important;gap:5px!important;overflow-x:auto!important;padding:5px!important;border:1px solid var(--adq-edge)!important;border-radius:14px!important;background:var(--adq-surface-soft)!important;box-shadow:0 1px 0 var(--adq-border-bright) inset!important}.analysis-mode-chip{min-height:36px!important;flex:0 0 auto!important;padding:0 13px!important;border-radius:10px!important;background:transparent!important;border:1px solid transparent!important;color:var(--adq-text-secondary)!important;font-size:9px!important;font-weight:780!important}.analysis-mode-chip.active{background:var(--adq-surface-strong)!important;color:var(--adq-accent)!important;border-color:color-mix(in srgb,var(--adq-accent) 20%,var(--adq-edge))!important;box-shadow:0 4px 12px rgba(24,62,91,.08)!important}.analysis-mode-description{padding:1px 5px 4px!important;color:var(--adq-text-secondary)!important;font-size:10px!important;line-height:1.4!important}.analysis-studio-grid{display:grid!important;grid-template-columns:minmax(280px,330px) minmax(0,1fr)!important;gap:11px!important;min-height:0!important}.analysis-control-rail{display:grid!important;grid-template-rows:auto minmax(0,1fr)!important;gap:9px!important;align-content:start!important;min-width:0!important}.analysis-command-bar{display:grid!important;gap:10px!important;align-items:stretch!important;padding:12px!important;border:1px solid var(--adq-edge)!important;border-radius:14px!important;background:linear-gradient(145deg,var(--adq-surface-strong),var(--adq-surface-soft))!important;box-shadow:var(--adq-shadow-sm)!important}.analysis-command-status{display:grid!important;grid-template-columns:auto 1fr!important;gap:3px 8px!important;align-items:center!important}.analysis-command-status .eyebrow{grid-column:1!important}.analysis-command-status strong{grid-column:2!important;font-size:12px!important}.analysis-command-status small{grid-column:1/-1!important;font-size:9px!important;line-height:1.35!important;color:var(--adq-text-secondary)!important}.analysis-command-actions{display:grid!important;grid-template-columns:1fr 1fr!important;gap:7px!important}.analysis-command-actions #analysis-controls-toggle{grid-column:1/-1!important;min-height:32px!important}.analysis-command-actions .touch-button{width:100%!important}.analysis-control-grid{display:grid!important;grid-template-columns:1fr!important;gap:9px!important;padding:12px!important;align-content:start!important;border:1px solid var(--adq-edge)!important;border-radius:14px!important;background:var(--adq-surface-soft)!important;box-shadow:0 1px 0 var(--adq-border-bright) inset!important;overflow:auto!important}.analysis-control-grid[hidden]{display:none!important}.analysis-control-grid>label{display:grid!important;gap:5px!important;min-width:0!important;color:var(--adq-text-secondary)!important;font-size:8px!important;font-weight:820!important;letter-spacing:.04em!important;text-transform:uppercase!important}.analysis-control-grid>label[hidden]{display:none!important}.analysis-control-grid .touch-input,.analysis-control-grid .touch-select{width:100%!important;min-width:0!important}.analysis-multi-select{appearance:auto!important;-webkit-appearance:auto!important;height:132px!important;min-height:132px!important;max-height:132px!important;padding:6px!important;background-image:none!important;overflow-y:auto!important;text-transform:none!important;font-size:10px!important}.analysis-multi-select option{padding:5px 7px!important;border-radius:5px!important}.analysis-visualization-pane{display:grid!important;grid-template-rows:auto minmax(0,1fr)!important;gap:9px!important;min-width:0!important;min-height:0!important}.analysis-summary{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(115px,1fr))!important;gap:7px!important;margin:0!important}.analysis-summary:empty{display:none!important}.analysis-summary>article{padding:9px 10px!important;border-radius:11px!important;border:1px solid var(--adq-edge)!important;background:var(--adq-surface-soft)!important;display:grid!important;gap:2px!important}.analysis-summary small{font-size:7px!important;text-transform:uppercase!important;letter-spacing:.06em!important;color:var(--adq-text-tertiary)!important}.analysis-summary strong{font-size:14px!important;color:var(--adq-text-primary)!important}.analysis-chart-stage{position:relative!important;height:calc(100dvh - 330px)!important;min-height:490px!important;max-height:740px!important;border-radius:15px!important;background:#fff!important;border:1px solid #d7e3eb!important;box-shadow:0 1px 0 #fff inset,0 8px 22px rgba(25,63,91,.055)!important;overflow:hidden!important;padding:13px!important}.analysis-chart-stage canvas{width:100%!important;height:100%!important}.analysis-result-state{position:absolute!important;inset:0!important;display:grid!important;place-content:center!important;justify-items:center!important;gap:8px!important;padding:24px!important;text-align:center!important;color:#5d7689!important;background:radial-gradient(circle at 50% 38%,rgba(20,120,212,.055),transparent 34%),linear-gradient(180deg,#fff,#f8fbfd)!important}.analysis-result-state[hidden]{display:none!important}.analysis-result-state strong{font-size:18px!important;color:#143850!important;letter-spacing:-.02em!important}.analysis-result-state span{font-size:10px!important;max-width:460px!important}.analysis-empty-icon{width:46px;height:46px;display:grid;place-items:center;border-radius:15px;background:#eaf4fc;color:#1478d4;font-size:25px;font-weight:500;border:1px solid #d9e9f5;box-shadow:0 7px 16px rgba(20,84,132,.07)}

/* Floating dock and stable dark theme. */
#sidebar.dock-wrap{width:min(calc(100vw - 26px),940px)!important;max-width:940px!important;bottom:12px!important}.dock{height:66px!important}.dock-item{border-radius:15px!important}




.analysis-chart-stage,.station-trend-surface{color:#173a54!important}

@media(max-width:1450px){.station-live-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,370px),1fr))!important}.station-live-grid .premium-live-tile{height:360px!important;min-height:360px!important;max-height:360px!important}.analysis-studio-grid{grid-template-columns:300px minmax(0,1fr)!important}}
@media(max-width:1120px){.trend-workspace-layout{grid-template-columns:1fr!important}.trend-legend-panel{max-height:230px!important}.station-trend-surface{height:520px!important}.analysis-studio-grid{grid-template-columns:1fr!important}.analysis-control-rail{grid-template-columns:minmax(240px,.7fr) minmax(0,1.3fr)!important;grid-template-rows:auto!important}.analysis-control-grid{grid-template-columns:repeat(2,minmax(150px,1fr))!important;max-height:310px!important}.analysis-chart-stage{height:560px!important}.analysis-command-actions #analysis-controls-toggle{grid-column:auto!important}}
@media(max-width:820px){.top-actions #updated,.top-actions #clock{display:none!important}.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.metric-card:last-child{grid-column:1/-1!important}.overview-mode-tabs{grid-template-columns:1fr!important}.station-live-grid{grid-template-columns:1fr!important}.station-live-grid .premium-live-tile{height:390px!important;min-height:390px!important;max-height:none!important}.trend-workspace-header{align-items:flex-start!important;display:grid!important}.analysis-control-rail{grid-template-columns:1fr!important}.analysis-control-grid{grid-template-columns:1fr 1fr!important;max-height:none!important}.analysis-chart-stage{min-height:420px!important;height:520px!important}.analysis-section-tabs{width:100%!important}}
@media(max-width:580px){.dashboard-content{padding:9px 9px 92px!important}.top-glass{margin:7px 9px 0!important}.station-copy{display:none!important}.metric-grid{grid-template-columns:1fr!important}.metric-card:last-child{grid-column:auto!important}.station-live-grid .tile-insight-grid{grid-template-columns:1fr!important;max-height:none!important}.station-live-grid .tile-spec-pane{display:none!important}.analysis-control-grid{grid-template-columns:1fr!important}.analysis-mode-chip{min-width:130px!important}.analysis-command-actions{grid-template-columns:1fr!important}.analysis-command-actions #analysis-controls-toggle{grid-column:auto!important}}

/* AESST DAS 4.20.62 Material Flat dashboard refinement. */
html.adq-material-flat .metric-card,
html.adq-material-flat .dashboard-live-data-card,
html.adq-material-flat .overview-mode-tabs,
html.adq-material-flat .live-tiles-card,
html.adq-material-flat .trend-workspace-card,
html.adq-material-flat .analysis-workspace-shell,
html.adq-material-flat .analysis-group-card{
  background:var(--adq-material-surface)!important;
  background-image:none!important;
  border-color:var(--adq-material-outline)!important;
  box-shadow:var(--adq-material-shadow-1)!important;
}
html.adq-material-flat .station-live-grid .premium-live-tile{
  background:color-mix(in srgb,var(--tile-color,var(--adq-material-primary)) 4%,var(--adq-material-surface))!important;
  background-image:none!important;
  border-color:color-mix(in srgb,var(--tile-color,var(--adq-material-primary)) 20%,var(--adq-material-outline))!important;
  box-shadow:var(--adq-material-shadow-1)!important;
}
html.adq-material-flat .station-live-grid .premium-live-tile:hover{transform:none!important;box-shadow:var(--adq-material-shadow-2)!important}
html.adq-material-flat .analysis-command-bar,
html.adq-material-flat .analysis-control-grid,
html.adq-material-flat .analysis-mode-strip,
html.adq-material-flat .trend-legend-panel{
  background:var(--adq-material-surface-2)!important;
  background-image:none!important;
  border-color:var(--adq-material-outline)!important;
  box-shadow:none!important;
}
html.adq-material-flat .station-live-grid .tile-sparkline-wrap,
html.adq-material-flat .station-trend-surface,
html.adq-material-flat .analysis-chart-stage,
html.adq-material-flat .diagnostic-chart-wrap{
  background:#fbfdff!important;
  border-color:#d3e0e9!important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.55)!important;
}

html.adq-material-flat .overview-mode-tabs .segment.active,
html.adq-material-flat .analysis-mode-chip.active,
html.adq-material-flat .segment.active{background:var(--adq-material-primary-soft)!important;color:var(--adq-material-primary)!important;box-shadow:none!important}


/* AESST DAS 4.20.62 UI2 — Dashboard scroll/spacing authority. */
html.adq-ui2 #workspace.dashboard-shell .dashboard-content{overflow-y:auto!important;overflow-x:hidden!important;overscroll-behavior-y:auto!important;touch-action:pan-y!important;padding:14px 18px 12px!important}
html.adq-ui2 #workspace.dashboard-shell .app-content-inner{width:min(1840px,100%)!important}
html.adq-ui2 #workspace.dashboard-shell .page-view:not([hidden]){padding:4px 0 14px!important}
html.adq-ui2 #workspace.dashboard-shell #sidebar.dock-wrap{margin:12px auto 14px!important;padding:7px!important;border-radius:18px!important;background:var(--adq-material-surface)!important;border:1px solid var(--adq-material-outline)!important;box-shadow:var(--adq-material-shadow-2)!important}
html.adq-ui2 #workspace.dashboard-shell #sidebar .dock{gap:6px!important;background:transparent!important;border:0!important;box-shadow:none!important}

/* AESST DAS UI6.1 India CPCB/SPCB regulatory presentation */
.regulatory-summary-card{max-width:100%;background:#fff!important;border-color:#d9e6f2!important;box-shadow:0 12px 30px rgba(34,78,114,.08)!important}
.regulatory-summary-content{display:grid;gap:14px}.regulatory-band{padding:16px;border-radius:16px;border:1px solid #dce8f2;background:#f8fbfe}.ambient-band{border-left:4px solid #2563eb}.cems-band{border-left:4px solid #8b5cf6}
.regulatory-band-head{display:flex;justify-content:space-between;align-items:center;gap:16px}.regulatory-band-head h3{margin:3px 0 0;color:#16324a}.regulatory-param-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(155px,1fr));gap:10px;margin-top:12px}.regulatory-param{display:grid;gap:5px;padding:12px;border-radius:13px;background:#fff;border:1px solid #dce8f2;border-top:3px solid #94a3b8}.regulatory-param strong{font-size:13px;color:#16324a}.regulatory-param span{font-size:16px;font-weight:700}.regulatory-param small,.regulatory-param em{font-size:11px;color:#607d96;font-style:normal}.regulatory-param.reg-ok{border-top-color:#16a34a}.regulatory-param.reg-bad{border-top-color:#ef4444;background:#fff8f8}.regulatory-param.reg-warn{border-top-color:#f59e0b;background:#fffbf1}.aqi-badge{--aqi-color:#64748b;min-width:118px;padding:9px 12px;border-radius:14px;background:color-mix(in srgb,var(--aqi-color) 12%,#fff);border:1px solid color-mix(in srgb,var(--aqi-color) 42%,#fff);display:grid;grid-template-columns:auto auto;align-items:center;gap:1px 9px}.aqi-badge span{grid-row:1/3;font-size:10px;font-weight:800;color:var(--aqi-color)}.aqi-badge strong{font-size:23px;color:var(--aqi-color)}.aqi-badge small{font-size:10px;color:#526b80}.regulatory-meta-line{display:flex;gap:18px;flex-wrap:wrap;margin-top:8px;font-size:12px;color:#607d96}.regulatory-empty-inline{margin-top:9px;padding:9px 11px;border-radius:10px;background:#f1f5f9;color:#64748b;font-size:12px}.regulatory-source-note{font-size:11px;color:#607d96}.report-mode-row{display:flex;gap:12px;align-items:end;flex-wrap:wrap;margin-bottom:14px}.report-mode-row label{display:grid;gap:6px;min-width:210px;font-size:11px;color:#607d96}.report-provenance-chip{align-self:center;padding:8px 10px;border-radius:999px;background:#eaf5ff;border:1px solid #c9e2f7;color:#176fca;font-size:11px;font-weight:650}.regulatory-report-provenance{display:grid;gap:6px;padding:12px 14px;margin:12px 0;border-radius:12px;background:#f4f9fd;border:1px solid #dceaf4;color:#4f6f88;font-size:11px}.regulatory-report-provenance code{overflow-wrap:anywhere;color:#176fca}.report-operational-muted{opacity:.58}
@media(max-width:760px){.regulatory-band-head{align-items:flex-start;flex-direction:column}.aqi-badge{width:100%}.report-mode-row label{width:100%}}

/* UI10 embedded Dashboard: unified shell provides topbar and navigation. */
html.ui10-embedded,html.ui10-embedded body{background:#f7f9fc!important;min-height:100%;}
html.ui10-embedded body{overflow:auto!important;}
html.ui10-embedded .top-glass,
html.ui10-embedded #sidebar{display:none!important;}
html.ui10-embedded .dashboard-shell{min-height:0!important;background:#f7f9fc!important;}
html.ui10-embedded .dashboard-content{padding:0!important;margin:0!important;min-height:0!important;background:#f7f9fc!important;}
html.ui10-embedded .dashboard-inner{max-width:none!important;margin:0!important;padding:18px!important;padding-bottom:28px!important;}
html.ui10-embedded .glass-card{box-shadow:0 6px 20px rgba(27,44,70,.045)!important;border-color:#e2e9f1!important;}
html.ui10-embedded .page-view{padding-bottom:18px!important;}
html.ui10-embedded{--dashboard-dock-clearance:0px!important;}
@media(max-width:900px){html.ui10-embedded .dashboard-inner{padding:12px!important;}}

/* UI13.37 Quality / Validation / QAQC workspace */
.quality-kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:14px}.quality-kpi{padding:14px 16px;border:1px solid #e2e8f0;border-radius:8px;background:#fff}.quality-kpi span{display:block;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#64748b}.quality-kpi strong{display:block;margin-top:4px;font-size:28px;line-height:1;color:#0f172a}.quality-kpi small{color:#64748b}.quality-layout{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:14px}.quality-card{min-width:0}.quality-form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.quality-form-grid label,.quality-wide-label{display:flex;flex-direction:column;gap:5px;font-size:12px;font-weight:600;color:#475569}.quality-toggle{justify-content:flex-end;flex-direction:row!important;align-items:center!important}.quality-actions{display:flex;align-items:center;gap:10px;margin-top:12px}.quality-textarea{resize:vertical;min-height:58px}.quality-chart-controls{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.qaqc-chart-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.qaqc-chart-grid>div{min-width:0;border:1px solid #e2e8f0;background:#f8fafc;border-radius:8px;padding:10px;height:260px}.qaqc-chart-grid h3{margin:0 0 6px;color:#334155;font-size:13px}.qaqc-chart-grid canvas{width:100%!important;height:220px!important}.quality-table-wrap{max-height:360px;overflow:auto;border:1px solid #e2e8f0;border-radius:8px}.quality-audit-table{width:100%;border-collapse:collapse;font-size:12px}.quality-audit-table th{position:sticky;top:0;background:#f1f5f9;color:#334155;z-index:2}.quality-audit-table th,.quality-audit-table td{padding:7px 9px;border-bottom:1px solid #e2e8f0;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:220px}.quality-audit-table tr:nth-child(even) td{background:#f8fafc}.quality-system-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.quality-system-item{border:1px solid #e2e8f0;border-radius:8px;padding:12px;background:#f8fafc}.quality-system-item span{display:block;color:#64748b;font-size:11px;text-transform:uppercase;font-weight:700}.quality-system-item strong{display:block;color:#0f172a;margin-top:4px}.quality-lower{align-items:start}.quality-card select,.quality-card input,.quality-card textarea{z-index:1}.quality-card .touch-select:focus,.quality-card .touch-input:focus{position:relative;z-index:99999}@media(max-width:1100px){.quality-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.quality-layout,.qaqc-chart-grid{grid-template-columns:1fr}.quality-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.quality-system-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:680px){.quality-kpi-grid,.quality-form-grid,.quality-system-grid{grid-template-columns:1fr}}
.compact-slideshow{min-height:30px!important;padding:5px 10px!important;font-size:11px!important;border-radius:999px!important}.compact-slideshow.active{background:#d1fae5!important;color:#065f46!important;border-color:#a7f3d0!important}
.episode-card{margin-bottom:14px}.episode-threshold{width:140px;min-width:120px}


/* ======================================================================
   LEGACY MIGRATION SOURCE: src/daq/webui/configuration/configuration.css
   Consolidated into the single universal Project 00 stylesheet.
   ====================================================================== */
.config-topbar{position:relative;z-index:40;padding:9px 15px 0}.topbar-inner{width:min(1440px,100%);margin:auto;min-height:68px;padding:10px 12px;display:flex;gap:10px;align-items:center;border:1px solid rgba(255,255,255,.9);border-radius:20px;background:rgba(255,255,255,.78);box-shadow:var(--shadow-md);}.hero-icon.small{width:40px;height:40px;border-radius:13px;flex:0 0 auto}.topbar-copy{min-width:185px;flex:1}.topbar-copy strong{display:block;font-size:17px;letter-spacing:-.018em;margin:1px 0}.topbar-copy small{display:block;color:var(--muted);font-size:10px}.config-content{padding-top:12px}.config-section{margin-bottom:13px}.config-section>.glass-card{padding:16px}
.database-hero{display:grid;grid-template-columns:1.2fr .8fr;gap:13px}.db-status-card{padding:19px;min-height:184px;display:flex;flex-direction:column;justify-content:space-between}.db-main{display:flex;align-items:center;gap:11px}.db-orb{width:50px;height:50px;border-radius:16px;display:grid;place-items:center;background:linear-gradient(145deg,#e8f5ff,#d8ebf8);color:var(--blue);font-size:21px;box-shadow:var(--shadow-sm)}.db-status-card h2{margin:0;font-size:18px}.db-status-card p{margin:5px 0 0;color:var(--muted);font-size:11px;word-break:break-word}.db-actions-card{padding:16px;display:grid;gap:8px}.db-action{min-height:51px;display:flex;align-items:center;gap:10px;padding:8px 11px;border:1px solid var(--line);border-radius:14px;background:rgba(255,255,255,.65);cursor:pointer;text-align:left;transition:.16s var(--ease)}.db-action:hover{transform:translateY(-1px);background:white;box-shadow:var(--shadow-sm)}.db-action:disabled{opacity:.45;cursor:not-allowed;transform:none}.db-action .db-icon{width:32px;height:32px;border-radius:10px;display:grid;place-items:center;background:var(--blue-soft);color:var(--blue);font-size:14px}.db-action strong{display:block;color:var(--ink);font-size:11px}.db-action small{display:block;color:var(--muted);font-size:9px;margin-top:2px}.db-action.danger .db-icon{background:var(--red-soft);color:var(--red)}.db-action.danger strong{color:var(--red)}
.settings-card{padding:16px;margin-bottom:12px;overflow:visible}.settings-card h2{margin:0 0 3px;font-size:16px}.settings-card>p{margin:0 0 13px;color:var(--muted);font-size:10px}.timebase-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.timebase-row{display:grid;grid-template-columns:minmax(0,1fr) 105px 44px;gap:7px;align-items:end;padding:9px;border-radius:14px;background:rgba(246,250,253,.75);border:1px solid var(--line)}
.instrument-toolbar{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:11px}.section-title-inline{margin:2px 0 0;font-size:17px}.instrument-list{display:grid;gap:11px}.instrument-card{padding:0;overflow:visible}.instrument-summary{padding:13px 14px;display:flex;gap:10px;align-items:center;cursor:pointer;list-style:none;border-radius:var(--r-lg)}.instrument-summary::-webkit-details-marker{display:none}.instrument-symbol{width:38px;height:38px;display:grid;place-items:center;border-radius:13px;background:linear-gradient(145deg,#edf7ff,#dceefa);color:var(--blue);font-size:16px;flex:0 0 auto}.instrument-title{flex:1;min-width:0}.instrument-title strong{display:block;font-size:13px}.instrument-title small{display:block;margin-top:3px;color:var(--muted);font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.instrument-body{border-top:1px solid var(--line);padding:14px}.sub-card{padding:12px;border:1px solid var(--line);border-radius:15px;background:rgba(249,252,255,.72);margin-top:10px;overflow:visible}.sub-card h3{margin:0 0 10px;font-size:12px}.parameter-list{display:grid;gap:8px}.parameter-card{border:1px solid var(--line);border-radius:15px;background:white;overflow:visible}.parameter-card summary{list-style:none;padding:10px 11px;display:flex;align-items:center;gap:8px;cursor:pointer;border-radius:15px}.parameter-card summary::-webkit-details-marker{display:none}.parameter-card .parameter-body{border-top:1px solid var(--line);padding:11px}.parameter-summary-title{flex:1;min-width:0}.parameter-summary-title strong{font-size:11px}.parameter-summary-title small{display:block;color:var(--muted);font-size:9px;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.remove-button{width:44px;min-width:44px;padding:0}.advanced-json{font-family:Consolas,monospace;font-size:11px}
.compact-delete{width:34px;height:34px;min-width:34px;border:1px solid rgba(195,71,89,.18);border-radius:11px;background:rgba(255,247,248,.9);color:#b0364b;display:grid;place-items:center;cursor:pointer;font-size:15px;box-shadow:0 3px 9px rgba(90,53,62,.05),inset 0 1px 0 #fff;transition:transform .14s var(--ease),background .16s,box-shadow .16s}.compact-delete:hover{background:#fff1f3;box-shadow:0 5px 12px rgba(158,55,73,.10);transform:translateY(-1px)}.compact-delete:active{transform:scale(.95)}.summary-chevron{width:24px;text-align:center;color:#71879a;font-size:13px;transition:transform .18s var(--ease)}.instrument-card[open]>.instrument-summary .summary-chevron,.parameter-card[open]>summary .summary-chevron{transform:rotate(180deg)}
.toggle-row{min-height:46px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:7px 9px;border:1px solid var(--line);border-radius:13px;background:rgba(249,252,255,.72)}.toggle-copy{min-width:0;display:block}.toggle-copy strong{display:block;color:var(--ink);font-size:12px;line-height:1.2}.toggle-copy small{display:block;margin-top:3px;color:var(--muted);font-size:9px;line-height:1.25}.toggle-field>span{margin-bottom:0}
.choice-select{position:relative;min-width:0}.choice-trigger{appearance:none;display:flex;align-items:center;justify-content:space-between;gap:10px;text-align:left;cursor:pointer}.choice-trigger:focus-visible{border-color:rgba(21,119,212,.6);box-shadow:0 0 0 3px rgba(21,119,212,.10)}.choice-value{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.choice-chevron{flex:0 0 auto;color:#45647d;font-size:13px;transition:transform .16s var(--ease)}.choice-select.open .choice-chevron{transform:rotate(180deg)}.choice-menu{position:absolute;z-index:120;left:0;right:0;top:calc(100% + 5px);max-height:230px;overflow:auto;padding:5px;border:1px solid rgba(118,149,175,.25);border-radius:13px;background:rgba(252,254,255,.98);box-shadow:0 16px 38px rgba(36,67,100,.18),0 4px 10px rgba(36,67,100,.06),inset 0 1px 0 #fff;}.choice-menu[hidden]{display:none}.choice-option{width:100%;min-height:36px;padding:0 10px;border:0;border-radius:9px;background:transparent;color:var(--ink);font:inherit;font-size:12px;text-align:left;cursor:pointer;display:flex;align-items:center;transition:background .12s,color .12s,transform .12s}.choice-option:hover,.choice-option:focus-visible{outline:none;background:rgba(21,119,212,.08);color:#0f6dbd}.choice-option.selected{background:linear-gradient(180deg,rgba(225,242,255,.98),rgba(211,233,250,.95));color:#0d67a7;font-weight:750;box-shadow:inset 0 0 0 1px rgba(21,119,212,.10)}.choice-option:active{transform:scale(.99)}
.diagnostic-device{padding:16px;margin-bottom:11px;overflow:visible}.diagnostic-header{display:flex;align-items:center;gap:10px;margin-bottom:11px}.diagnostic-header .instrument-symbol{width:36px;height:36px}.diagnostic-heading{flex:1;min-width:0}.diagnostic-header h2{margin:0;font-size:15px}.diagnostic-header small{display:block;margin-top:2px;color:var(--muted);font-size:9px}.diagnostic-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.diagnostic-card{padding:12px;border-radius:15px;background:rgba(250,253,255,.84);border:1px solid var(--line);overflow:visible}.diagnostic-title{display:flex;align-items:center;gap:8px;margin-bottom:10px}.diagnostic-title strong{flex:1;font-size:12px}.alarm-preview{margin-top:8px;padding:8px 10px;border-radius:11px;background:rgba(195,71,89,.06);color:#8f4250;font-size:9px;line-height:1.45}.modal-actions{justify-content:flex-end;margin-top:14px}.danger-text{color:var(--red)}.sticky-status{position:sticky;top:0;z-index:5;margin-bottom:10px;display:flex;justify-content:space-between;align-items:center;gap:8px;padding:9px 11px;border-radius:14px;background:rgba(255,255,255,.82);border:1px solid rgba(255,255,255,.9);box-shadow:var(--shadow-sm);}.empty-state .touch-button{margin-top:11px}
@media(max-width:980px){.topbar-inner{align-items:flex-start;flex-wrap:wrap}.topbar-inner>.actions{width:100%;justify-content:flex-end}.database-hero{grid-template-columns:1fr}.timebase-grid{grid-template-columns:1fr 1fr}.diagnostic-grid{grid-template-columns:1fr}}
@media(max-width:720px){.config-topbar{padding:6px 7px 0}.topbar-inner{border-radius:17px;padding:8px}.topbar-copy small{display:none}.topbar-inner>.actions{display:grid;grid-template-columns:1fr 1fr}.timebase-grid{grid-template-columns:1fr}.timebase-row{grid-template-columns:1fr 92px 44px}.instrument-summary{padding:10px}.settings-card,.diagnostic-device{padding:12px}.compact-delete{width:32px;height:32px;min-width:32px}}

/* 3.6.2 compact Station workspace and easy reporting-time-base toggles. */
.config-topbar{padding:7px 12px 0}.topbar-inner{min-height:58px;padding:8px 10px;border-radius:17px}.hero-icon.small{width:34px;height:34px;border-radius:11px}.topbar-copy strong{font-size:15px}.topbar-copy small{font-size:9px}.config-content{padding-top:9px}.config-section{margin-bottom:9px}.config-section>.glass-card,.settings-card{padding:12px}.settings-card{margin-bottom:9px}.settings-card h2{font-size:14px}.settings-card>p{margin-bottom:9px;font-size:9px}.station-settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;align-items:stretch}.station-settings-grid>.settings-card{height:100%;margin-bottom:0}.station-settings-grid .form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.timebase-toggle-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin-top:3px}.standard-timebase-tile{min-height:48px;padding:6px 7px;border:1px solid var(--line);border-radius:12px;background:linear-gradient(145deg,rgba(249,252,255,.92),rgba(240,247,252,.78));display:flex;align-items:center;justify-content:space-between;gap:6px;cursor:pointer;transition:transform .14s var(--ease),box-shadow .16s var(--ease),border-color .16s,background .16s}.standard-timebase-tile:hover{transform:translateY(-1px);box-shadow:var(--shadow-sm)}.standard-timebase-tile.active{border-color:rgba(21,119,212,.22);background:linear-gradient(145deg,rgba(229,244,255,.98),rgba(214,237,252,.88));box-shadow:inset 0 1px 0 #fff,0 5px 13px rgba(21,119,212,.08)}.standard-timebase-tile.locked{cursor:default}.timebase-toggle-copy{min-width:0}.timebase-toggle-copy strong{display:block;font-size:10px;color:var(--ink);white-space:nowrap}.timebase-toggle-copy small{display:block;margin-top:2px;font-size:8px;color:var(--muted)}.standard-timebase-tile .toggle-switch{transform:scale(.82);transform-origin:right center;margin-left:auto}.custom-timebase-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:9px;padding-top:8px;border-top:1px solid rgba(125,151,174,.14);font-size:9px;font-weight:800;color:#526d83}.compact-add{height:32px!important;min-height:32px!important;padding:0 9px!important;font-size:9px!important}.custom-timebase-list{display:grid;gap:6px;margin-top:6px}.custom-timebase-empty{display:block;color:var(--muted);font-size:8px;padding:4px 1px}.custom-timebase-row{grid-template-columns:minmax(0,1fr) 90px 34px;padding:7px;border-radius:11px}.custom-timebase-row .touch-field{min-height:36px}.instrument-toolbar{margin-bottom:8px}.instrument-list{gap:8px}.instrument-summary{padding:10px 11px}.instrument-body{padding:11px}.sub-card{padding:9px;margin-top:7px}.parameter-list{gap:6px}.parameter-card summary{padding:8px 9px}.parameter-card .parameter-body{padding:9px}
@media(max-width:1050px){.station-settings-grid{grid-template-columns:1fr}.timebase-toggle-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:720px){.timebase-toggle-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.station-settings-grid .form-grid{grid-template-columns:1fr}}

/* 3.6.2 controlled color cues across configuration cards. */
#view-database .db-status-card,#view-station .settings-card,#view-instruments .instrument-card,#view-diagnostics .instrument-card,#view-diagnostics .settings-card,#view-network .settings-card{border:1px solid rgba(151,174,194,.18);box-shadow:0 14px 30px rgba(43,72,98,.10),inset 0 1px 0 rgba(255,255,255,.78)}

/* 4.0 Dynamic Premium: seam-free depth, guided onboarding and compact engineering metadata. */
.config-shell .glass-card:before,.app-shell .glass-card:before{display:none}
.settings-card,.instrument-card{background:linear-gradient(155deg,rgba(255,255,255,.96),rgba(247,251,255,.88));box-shadow:0 16px 34px rgba(47,76,103,.11),0 4px 10px rgba(47,76,103,.05),inset 0 1px 0 rgba(255,255,255,.95);transition:transform .18s var(--ease),box-shadow .18s var(--ease)}
.instrument-card[open]{box-shadow:0 20px 44px rgba(40,70,101,.14),0 5px 12px rgba(40,70,101,.06),inset 0 1px 0 rgba(255,255,255,.98)}
.instrument-summary:hover{background:linear-gradient(100deg,rgba(234,246,255,.72),rgba(255,255,255,.35))}
.onboarding-card{background:linear-gradient(145deg,rgba(237,247,255,.94),rgba(248,243,255,.88));box-shadow:inset 0 1px 0 #fff,0 9px 22px rgba(55,90,125,.07)}
.onboarding-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.onboarding-select{min-height:40px}
.subtle-copy{margin:-3px 0 10px;color:var(--muted);font-size:9px;line-height:1.45}
.resolved-profile-card{border-color:rgba(21,154,145,.18);background:linear-gradient(145deg,rgba(233,249,246,.88),rgba(250,253,255,.9))}
.parameter-field-section{padding:9px;border:1px solid rgba(125,151,174,.16);border-radius:13px;background:rgba(250,252,255,.68);margin-bottom:8px}.parameter-field-section h4{margin:0 0 8px;font-size:10px;color:#3b5870}.compliance-section{background:linear-gradient(145deg,rgba(255,249,236,.80),rgba(245,250,255,.82))}
.parameter-group-list{display:grid;gap:7px}.parameter-group-row{display:grid;grid-template-columns:minmax(180px,.8fr) minmax(260px,1.5fr) 38px;gap:8px;align-items:end;padding:9px;border:1px solid rgba(125,151,174,.16);border-radius:13px;background:rgba(250,252,255,.72)}.group-multi-select{height:auto!important;min-height:58px;padding:5px!important}
.diagnostic-parameter-section{border-color:rgba(230,125,47,.18);background:linear-gradient(145deg,rgba(255,247,239,.8),rgba(251,253,255,.86))}
@media(max-width:1100px){.onboarding-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.onboarding-grid{grid-template-columns:1fr}.parameter-group-row{grid-template-columns:1fr 38px}.parameter-group-row .field:nth-child(2){grid-column:1/-1}}

/* 4.0 Dynamic Premium onboarding controls: native, compact and touch-first. */
.onboarding-select{
  appearance:none;
  -webkit-appearance:none;
  width:100%;
  min-height:42px;
  padding:0 38px 0 12px;
  border:1px solid rgba(122,151,176,.28);
  border-radius:12px;
  background:
    linear-gradient(45deg,transparent 50%,#5f7f98 50%) calc(100% - 17px) 50%/5px 5px no-repeat,
    linear-gradient(135deg,#5f7f98 50%,transparent 50%) calc(100% - 12px) 50%/5px 5px no-repeat,
    linear-gradient(180deg,rgba(255,255,255,.98),rgba(244,249,253,.94));
  color:var(--ink);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.9),0 5px 14px rgba(41,72,101,.06);
  transition:border-color .14s var(--ease),box-shadow .14s var(--ease),transform .14s var(--ease),background .14s var(--ease);
}
.onboarding-select:hover:not(:disabled){border-color:rgba(21,119,212,.34);box-shadow:inset 0 1px 0 #fff,0 7px 18px rgba(21,119,212,.08)}
.onboarding-select:focus,.onboarding-select:focus-visible{outline:none;border-color:rgba(21,119,212,.66);box-shadow:0 0 0 3px rgba(21,119,212,.11),inset 0 1px 0 #fff,0 8px 20px rgba(21,119,212,.08)}
.onboarding-select:disabled{cursor:not-allowed;opacity:.58;background:linear-gradient(180deg,rgba(245,248,251,.86),rgba(238,244,248,.82));box-shadow:inset 0 1px 0 rgba(255,255,255,.7)}


/* 4.0 review: colorful header, differentiated controls and alarm editor. */
.topbar-inner{background:linear-gradient(112deg,rgba(255,255,255,.92) 0%,rgba(235,247,255,.92) 44%,rgba(242,238,255,.88) 100%);border-color:rgba(135,187,229,.30);box-shadow:0 14px 34px rgba(45,83,117,.13),inset 0 1px 0 rgba(255,255,255,.96)}
.topbar-copy .eyebrow{display:inline-flex;align-items:center;min-height:22px;padding:0 9px;border-radius:999px;color:#fff;background:linear-gradient(120deg,#245fc2,#148fcf 55%,#6c5bd3);box-shadow:0 5px 13px rgba(55,91,171,.18);letter-spacing:.105em}
.topbar-copy strong{color:#183f61}.hero-icon.small{background:linear-gradient(145deg,#1c87d4,#6b5bd4);color:white;box-shadow:0 8px 18px rgba(65,91,175,.22),inset 0 1px 0 rgba(255,255,255,.32)}
.db-actions-card .db-action:nth-child(1) .db-icon{background:rgba(21,119,212,.11);color:var(--blue)}.db-actions-card .db-action:nth-child(2) .db-icon{background:rgba(33,137,110,.11);color:var(--green)}.db-actions-card .db-action:nth-child(3) .db-icon{background:rgba(185,120,22,.11);color:var(--amber)}.db-actions-card .db-action:nth-child(4) .db-icon{background:rgba(124,92,227,.11);color:var(--violet)}
.compact-add{background:linear-gradient(180deg,rgba(241,253,250,.98),rgba(225,248,244,.96))!important;color:#147e77!important;border-color:rgba(21,154,145,.22)!important}.alarm-add{background:linear-gradient(180deg,rgba(249,244,255,.98),rgba(239,232,255,.95))!important;color:#674ac7!important;border-color:rgba(124,92,227,.22)!important}
.process-parameter-section{border-color:rgba(21,119,212,.17);background:linear-gradient(145deg,rgba(239,248,255,.82),rgba(252,253,255,.90))}.alarm-parameter-section{border-color:rgba(124,92,227,.20);background:linear-gradient(145deg,rgba(247,242,255,.88),rgba(255,248,252,.88))}.alarm-rule-list{display:grid;gap:7px}.alarm-rule-card{padding:9px;border-radius:13px;border:1px solid rgba(124,92,227,.17);background:rgba(255,255,255,.78);box-shadow:inset 0 1px 0 #fff,0 5px 13px rgba(87,69,151,.05)}.alarm-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.alarm-rule-card .diagnostic-title strong{color:#5e48ad}
.onboarding-select{background:linear-gradient(45deg,transparent 50%,#5f7f98 50%) calc(100% - 17px) 50%/5px 5px no-repeat,linear-gradient(135deg,#5f7f98 50%,transparent 50%) calc(100% - 12px) 50%/5px 5px no-repeat,linear-gradient(180deg,#fff,rgba(239,248,255,.96));border-color:rgba(64,145,203,.27)}
@media(max-width:900px){.alarm-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:620px){.alarm-grid{grid-template-columns:1fr}}

/* 4.0 next architecture: compact Database, Central Sync and calculated parameters. */
#view-database .database-hero{grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);gap:10px;align-items:start}
#view-database .db-status-card{padding:14px;min-height:0}
#view-database .db-connection-card{padding:12px;margin:0}
#view-database .db-actions-card{grid-column:1/-1;grid-template-columns:repeat(3,minmax(0,1fr));padding:11px;gap:7px}
#view-database .db-action{min-height:48px;padding:7px 9px;border-radius:12px}
#view-database .db-meta-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin-top:9px}
#view-database .db-meta-item{padding:7px 8px;border-radius:10px}
.db-progress-banner{margin-top:9px;padding:8px 10px;border-radius:11px;background:linear-gradient(100deg,rgba(232,244,255,.96),rgba(239,235,255,.92));border:1px solid rgba(81,118,209,.18);color:#385c96;font-size:10px;font-weight:700;animation:dbPulse 1.2s ease-in-out infinite alternate}
@keyframes dbPulse{from{opacity:.72}to{opacity:1}}
.central-sync-card{border-color:rgba(21,154,145,.18)!important;background:linear-gradient(145deg,rgba(236,250,247,.88),rgba(244,249,255,.92))!important}
.central-sync-card .form-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}
.parameter-picker{min-width:150px;max-width:220px;min-height:36px}
.touch-button.secondary{background:linear-gradient(180deg,rgba(247,242,255,.98),rgba(236,232,255,.96));color:#6550bd;border:1px solid rgba(124,92,227,.2)}
@media(max-width:1000px){#view-database .database-hero{grid-template-columns:1fr}#view-database .db-actions-card{grid-column:auto;grid-template-columns:repeat(2,minmax(0,1fr))}.central-sync-card .form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){#view-database .db-actions-card{grid-template-columns:1fr}#view-database .db-meta-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.central-sync-card .form-grid{grid-template-columns:1fr}}
.profile-tool-row{display:flex;align-items:center;gap:10px;margin-top:8px;padding-top:8px;border-top:1px solid rgba(125,151,174,.14)}.profile-tool-row .field-note{margin:0;color:var(--muted)}

/* 4.0 complete: restored database workflow, system COM discovery and formula builder. */
.database-classic-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px}.database-classic-layout>.db-actions-card{grid-column:1/-1}.db-create-card{margin:0!important}.db-create-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.db-storage-field{grid-column:1/-1}.storage-picker-line,.serial-choice-line{display:flex;gap:7px;align-items:center}.storage-picker-line .touch-field,.serial-choice-line .choice-select{flex:1;min-width:0}.serial-refresh{flex:0 0 auto;white-space:nowrap}.parameter-picker-choice{min-width:180px;max-width:260px}.formula-builder{background:linear-gradient(145deg,rgba(242,249,255,.94),rgba(248,244,255,.90));border-color:rgba(82,113,206,.18)}.formula-chip-row,.formula-operator-row{display:flex;gap:6px;flex-wrap:wrap;margin:8px 0}.formula-chip,.formula-operator{border:1px solid rgba(78,127,177,.18);border-radius:10px;min-height:31px;padding:0 10px;background:#fff;color:#285c86;cursor:pointer;font:inherit;font-size:10px;box-shadow:0 3px 8px rgba(41,72,101,.05)}.formula-chip:hover,.formula-operator:hover{background:#eef7ff;border-color:rgba(21,119,212,.3)}.formula-operator{min-width:34px;color:#644eb7;background:#f7f3ff}.formula-expression{width:100%;resize:vertical;font-family:Consolas,"Cascadia Mono",monospace;font-size:11px;line-height:1.5}.formula-status{margin-top:7px;padding:7px 9px;border-radius:10px;font-size:9px;background:rgba(92,113,130,.07);color:var(--muted)}.formula-status.good{background:rgba(21,154,145,.09);color:#147e77}.formula-status.warn{background:rgba(205,139,32,.10);color:#9c6b16}.formula-status.bad{background:rgba(195,71,89,.09);color:#a23d50}@media(max-width:850px){.database-classic-layout{grid-template-columns:1fr}.database-classic-layout>.db-actions-card{grid-column:auto}.db-create-grid{grid-template-columns:1fr}.db-storage-field{grid-column:auto}}

/* 4.1 correction batch: compact responsive Configuration workspace. */
:root{--config-dock-safe:92px}
.config-content{min-height:0;overflow-y:auto!important;overflow-x:hidden;padding:8px 12px var(--config-dock-safe)!important;scrollbar-gutter:stable both-edges}
.config-content .app-content-inner{width:min(1380px,100%);margin-inline:auto}
.page-view{min-width:0}.settings-card,.glass-card,.instrument-card{min-width:0}
.database-classic-layout{max-width:1280px;margin:0 auto;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;align-items:start}
.database-classic-layout>.db-actions-card,.database-classic-layout>.db-maintenance-details{grid-column:1/-1}
#view-database .db-status-card,#view-database .db-create-card{text-align:center;display:flex;flex-direction:column;align-items:stretch}
.db-main-centered{justify-content:center!important;text-align:left}.db-main-copy{min-width:0}.db-main-copy h2,.db-main-copy p{overflow-wrap:anywhere}
.db-state-chip{align-self:center;margin-top:7px}.db-meta-grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:7px!important;width:100%}
.db-meta-item{display:grid!important;grid-template-rows:auto minmax(24px,auto);align-content:center;justify-items:center;text-align:center;gap:3px;min-width:0;padding:8px!important}
.db-meta-item small{font-size:8px;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}.db-meta-item strong{font-size:11px;line-height:1.25;max-width:100%;overflow-wrap:anywhere;word-break:break-word}
#view-database .db-actions-card{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));max-width:1280px;margin-inline:auto;width:100%;padding:9px!important;gap:7px!important}
#view-database .db-action{min-height:54px!important;text-align:left}.db-action.connected{border-color:rgba(21,154,145,.22);background:linear-gradient(145deg,rgba(232,250,245,.96),rgba(248,255,253,.95))}.db-action.connected .db-icon{color:var(--green)!important;background:rgba(21,154,145,.12)!important}
.db-maintenance-details{max-width:1280px;width:100%;margin:0 auto;padding:9px 12px}.db-maintenance-details>summary{cursor:pointer;font-weight:800;font-size:10px;color:#4f6b82}.db-maintenance-body{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-top:9px}.db-maintenance-body p{margin:0;color:var(--muted);font-size:9px;line-height:1.4}
.instrument-list{min-width:0}.instrument-render-error{padding:12px;border:1px solid rgba(195,71,89,.25)!important;background:linear-gradient(145deg,#fff7f8,#fff)!important}.instrument-render-error strong{color:#a23d50}.instrument-render-error p{margin:4px 0 0;font-size:9px;color:#7f5660;overflow-wrap:anywhere}
.container-grouping-card{margin-top:10px}.parameter-group-row{grid-template-columns:minmax(150px,.75fr) minmax(220px,1.5fr) 34px!important}.group-multi-select{max-height:112px;overflow-y:auto}
.control-workspace-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;align-items:start}.control-pane{min-width:0}.compact-control-list{display:grid;gap:8px;margin-top:8px}.compact-control-card{padding:10px!important;margin:0!important}.compact-settings-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:6px!important}.autocheck-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}.sequence-actions{display:flex;align-items:center;justify-content:flex-end;gap:6px;margin:-2px 0 7px}.sequence-actions small{margin-right:auto}.compact-danger{min-height:34px!important;height:34px;padding:0 10px!important;margin-top:7px}.control-pane>.settings-card:first-child{margin-bottom:0}
.instrument-body,.parameter-body{min-width:0}.parameter-list{min-width:0}.choice-menu{max-height:min(320px,45vh);overflow-y:auto}
@media(max-width:1120px){.database-classic-layout{grid-template-columns:1fr}.database-classic-layout>.db-actions-card,.database-classic-layout>.db-maintenance-details{grid-column:auto}#view-database .db-actions-card{grid-template-columns:repeat(3,minmax(0,1fr))}.control-workspace-grid{grid-template-columns:1fr}.autocheck-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:760px){:root{--config-dock-safe:82px}.config-topbar{padding-inline:7px}.topbar-inner{align-items:flex-start;flex-wrap:wrap}.topbar-copy{min-width:0}.topbar-inner>.actions{width:100%;justify-content:flex-end}.config-content{padding:7px 7px var(--config-dock-safe)!important}.db-meta-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}#view-database .db-actions-card{grid-template-columns:1fr}.db-maintenance-body{align-items:stretch;flex-direction:column}.compact-settings-grid,.autocheck-grid{grid-template-columns:1fr!important}.parameter-group-row{grid-template-columns:1fr 34px!important}.parameter-group-row .field:nth-child(2){grid-column:1/-1}.instrument-toolbar{align-items:flex-start;flex-wrap:wrap}.instrument-toolbar>.touch-button{margin-left:auto}}
@media(max-width:480px){.db-meta-grid{grid-template-columns:1fr!important}.storage-picker-line,.serial-choice-line{align-items:stretch;flex-direction:column}.storage-picker-line .touch-button,.serial-choice-line .touch-button{width:100%}}

/* AESST DAS 4.2 centered database/operator rhythm. */
#view-database .db-status-card,#view-database .db-create-card{justify-content:flex-start;padding:12px!important}
#view-database .db-main{justify-content:center;text-align:center;flex-wrap:wrap}
#view-database .db-main-copy{text-align:center;flex:1 1 280px}
#view-database .db-main-copy p{max-width:620px;margin-inline:auto}
#view-database .db-actions-card{align-items:stretch;justify-content:center}
#view-database .db-action{display:grid;grid-template-columns:34px minmax(0,1fr);align-items:center;justify-items:center;text-align:center!important;gap:7px;padding:8px!important}
#view-database .db-action>span:last-child{min-width:0;width:100%}
#view-database .db-action strong,#view-database .db-action small{text-align:center;overflow-wrap:anywhere}
#view-database .db-action .db-icon{margin-inline:auto}
#view-database .db-create-card>h2,#view-database .db-create-card>p{text-align:center}
#view-database .db-create-grid{align-items:end}
#view-database .field>span{text-align:left}
#view-instruments .instrument-toolbar:first-child{position:sticky;top:0;z-index:8;padding:7px 4px;background:linear-gradient(180deg,rgba(244,249,253,.98),rgba(244,249,253,.88) 82%,transparent);}
.instrument-list{display:grid;gap:8px;align-content:start}.instrument-card{overflow:visible}.instrument-card>summary{position:relative;z-index:2}.instrument-body{display:grid;gap:8px}.instrument-body>.sub-card{margin:0!important}.parameter-list{display:grid;gap:6px}.parameter-card{overflow:visible}.parameter-body{display:grid;gap:7px}.diagnostic-parameter-card{border-color:rgba(21,154,145,.18)}
@media(max-width:900px){#view-database .db-action{grid-template-columns:30px minmax(0,1fr)}#view-database .db-main{align-items:center}.instrument-card{border-radius:18px}}


/* AESST DAS 4.4 correction: symmetric database/station layouts and recoverable instruments. */
.database-classic-layout{align-items:stretch!important}
#view-database .db-status-card,#view-database .db-create-card{height:100%;min-height:300px;box-sizing:border-box}
#view-database .db-actions-card{grid-template-columns:repeat(4,minmax(0,1fr))!important;align-items:stretch;justify-content:center}
#view-database .db-action{min-height:64px!important;grid-template-columns:34px minmax(0,1fr)!important;text-align:center!important}
#view-database .db-action strong{display:block;font-size:11px;line-height:1.2}
#view-database .db-action small{display:block;margin-top:3px;font-size:8px;line-height:1.3;color:var(--muted)}
.station-lower-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;align-items:stretch}
.station-lower-grid>.settings-card{height:100%;margin-bottom:0;min-width:0}
.station-lower-grid .central-sync-card .form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}
.reporting-storage-row{display:grid;grid-template-columns:1fr;gap:5px;padding:8px;margin:0 0 8px;border:1px solid rgba(105,145,180,.14);border-radius:12px;background:rgba(246,250,253,.7)}
.reporting-storage-row h3{margin:0;font-size:10px}.reporting-storage-row .field{max-width:280px}
.instrument-toolbar-actions,.instrument-error-actions,.relay-intro-actions{display:flex;align-items:center;justify-content:flex-end;gap:7px;flex-wrap:wrap}
.instrument-render-error{display:grid;gap:8px}.instrument-error-actions{justify-content:flex-start;margin-top:4px}
.instrument-error-actions .touch-button{min-height:34px;height:34px;padding:0 11px}
.relay-intro-actions{justify-content:flex-start;margin-top:8px}
@media(max-width:1050px){#view-database .db-actions-card{grid-template-columns:repeat(2,minmax(0,1fr))!important}.station-lower-grid{grid-template-columns:1fr}}
@media(max-width:650px){#view-database .db-actions-card{grid-template-columns:1fr!important}.instrument-toolbar-actions{width:100%;justify-content:stretch}.instrument-toolbar-actions .touch-button{flex:1 1 160px}.station-lower-grid .central-sync-card .form-grid{grid-template-columns:1fr}}

/* AESST DAS 4.5 approved compact onboarding, database symmetry and checkbox grouping. */
#view-database .database-classic-layout{gap:14px!important;align-items:stretch!important}
#view-database .db-status-card,#view-database .db-create-card{min-height:0!important;height:auto!important;padding:18px!important;justify-content:center!important;box-sizing:border-box}
#view-database .db-status-card .db-main,#view-database .db-create-card .db-create-grid{margin-block:auto}
#view-database .db-meta-grid{margin-top:14px!important;gap:10px!important}
#view-database .db-meta-item{padding:10px 8px!important;min-height:54px}
#view-database .db-actions-card{padding:10px!important;gap:10px!important;margin-top:0!important}
#view-database .db-action{padding:10px!important;min-height:66px!important}
.onboarding-card{padding:12px!important}
.onboarding-primary-grid{display:grid;grid-template-columns:minmax(210px,.75fr) minmax(0,2.25fr);gap:10px;align-items:start}
.onboarding-connection-block{min-width:0;padding:10px;border:1px solid rgba(91,130,163,.14);border-radius:14px;background:linear-gradient(145deg,rgba(250,253,255,.94),rgba(240,248,253,.82))}
.onboarding-connection-title{display:flex;align-items:baseline;justify-content:space-between;gap:8px;margin-bottom:7px}.onboarding-connection-title strong{font-size:10px}.onboarding-connection-title small{font-size:8px;color:var(--muted);text-align:right}
.onboarding-connection-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:7px!important;align-items:end}.onboarding-connection-grid>.field{min-width:0}.onboarding-connection-empty{grid-column:1/-1;padding:10px;border-radius:10px;color:var(--muted);background:rgba(238,246,252,.72);font-size:9px}
.onboarding-oem-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:8px!important;margin-top:9px}.onboarding-oem-grid .built-in-profile-note{align-self:end;min-height:48px;box-sizing:border-box}
.parameter-group-list{display:grid;gap:9px}.parameter-group-card{padding:10px;border:1px solid rgba(89,129,164,.14);border-radius:15px;background:linear-gradient(145deg,rgba(255,255,255,.94),rgba(244,250,254,.82));box-shadow:0 7px 18px rgba(44,76,108,.05)}
.group-card-head{display:grid;grid-template-columns:minmax(180px,1fr) auto 34px;gap:8px;align-items:end;margin-bottom:8px}.group-check-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.group-check-item{display:flex;align-items:center;gap:8px;padding:8px 9px;border:1px solid rgba(91,130,163,.13);border-radius:11px;background:rgba(248,252,255,.9);cursor:pointer;min-width:0}.group-check-item:hover{border-color:rgba(22,119,210,.28);box-shadow:0 5px 12px rgba(22,119,210,.07)}.group-check-item input{width:16px;height:16px;accent-color:#1677d2;flex:0 0 auto}.group-check-item span{display:grid;min-width:0}.group-check-item strong{font-size:10px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.group-check-item small{font-size:8px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
@media(max-width:1100px){.onboarding-primary-grid{grid-template-columns:1fr}.onboarding-connection-grid,.onboarding-oem-grid,.group-check-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:680px){.onboarding-connection-grid,.onboarding-oem-grid,.group-check-grid{grid-template-columns:1fr!important}.group-card-head{grid-template-columns:1fr auto}.group-card-head>.field{grid-column:1/-1}.onboarding-connection-title{align-items:flex-start;flex-direction:column}.onboarding-connection-title small{text-align:left}}


/* AESST DAS 4.6 approved symmetry and compact transport refinement. */
#view-database{min-height:calc(100vh - 168px);display:grid;align-content:center}
#view-database .database-balanced-stage{width:min(1320px,100%);margin-inline:auto;align-content:center;gap:14px!important}
#view-database .db-status-card,#view-database .db-create-card{padding:20px!important;align-self:stretch;justify-content:center!important}
#view-database .db-status-card>*:first-child,#view-database .db-create-card>*:first-child{margin-top:auto}
#view-database .db-status-card>*:last-child,#view-database .db-create-card>*:last-child{margin-bottom:auto}
#view-database .db-actions-card{grid-template-columns:repeat(3,minmax(0,1fr))!important}
.db-connection-test{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px;align-items:center;margin-top:10px;padding-top:10px;border-top:1px solid rgba(105,145,180,.14);text-align:left}
.db-connection-test .touch-button{min-height:38px;height:38px;padding-inline:13px}.db-connection-test .field-note{margin:0!important;text-align:left}
.transport-connection-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:8px!important;align-items:end}.transport-connection-grid>.field,.transport-connection-grid>.sub-card{min-width:0;margin:0!important}.transport-connection-grid .serial-choice-line{min-width:0}.transport-connection-grid .serial-choice-line .choice-menu{min-width:0}.transport-connection-grid .touch-field,.transport-connection-grid .text-input{width:100%;min-width:0}
.connection-advanced-toggle{margin-top:8px;border:0;background:transparent;color:#416983;font-size:9px;font-weight:800;cursor:pointer;padding:5px 2px}.connection-advanced-grid{margin-top:3px;padding-top:8px;border-top:1px dashed rgba(105,145,180,.16)}
.onboarding-primary-grid{grid-template-columns:minmax(210px,.72fr) minmax(0,2.28fr)!important;align-items:start!important}.onboarding-connection-block{padding:9px!important}.onboarding-connection-title{margin-bottom:6px!important}.onboarding-oem-grid{margin-top:8px!important}
@media(max-width:1050px){#view-database{align-content:start}.transport-connection-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.onboarding-primary-grid{grid-template-columns:1fr!important}}
@media(max-width:680px){.transport-connection-grid{grid-template-columns:1fr!important}.db-connection-test{grid-template-columns:1fr}.db-connection-test .touch-button{width:100%}}

/* AESST DAS 4.7 standard Modbus mapping and transport controls. */
.modbus-transport-field{padding:7px 8px;border:1px solid rgba(22,119,210,.16);border-radius:12px;background:rgba(245,250,255,.96)}
.modbus-mapping-card{margin-top:10px!important;padding:12px!important;border:1px solid rgba(22,119,210,.17)!important;background:linear-gradient(145deg,rgba(252,254,255,.98),rgba(241,248,253,.9))!important;box-shadow:0 8px 22px rgba(43,82,116,.06)!important}
.modbus-mapping-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:9px}.modbus-mapping-copy{display:grid;gap:2px}.modbus-mapping-copy h3{margin:0}.modbus-mapping-copy .field-note{margin:0!important;max-width:720px}
.modbus-mapping-grid{display:grid;grid-template-columns:minmax(190px,.9fr) minmax(190px,1.1fr);gap:9px;align-items:end}.modbus-mapping-grid>.field{min-width:0}
.mapping-status{display:inline-flex;align-items:center;justify-content:center;min-height:25px;padding:3px 9px;border-radius:999px;font-size:8px;font-weight:850;letter-spacing:.04em;text-transform:uppercase;background:rgba(223,235,244,.84);color:#526f82;white-space:nowrap}.mapping-status.good{background:rgba(22,164,116,.11);color:#147a58}.mapping-status.warn{background:rgba(225,155,40,.12);color:#8c601b}
.mapping-resolved{display:block;margin-top:8px;padding:7px 9px;border-radius:10px;background:rgba(233,243,250,.82);color:#48677a;font-size:9px}.mapping-resolved.good{background:rgba(22,164,116,.08);color:#166d52}.mapping-resolved.bad{background:rgba(215,68,79,.08);color:#98414a}
@media(max-width:680px){.modbus-mapping-grid{grid-template-columns:1fr}.modbus-mapping-head{flex-direction:column}.mapping-status{align-self:flex-start}}

/* AESST DAS 4.10 combined refinement: protocol-first symmetric instrument setup. */
.modern-instrument-setup{padding:14px!important;border:1px solid rgba(83,128,164,.16)!important;background:linear-gradient(145deg,rgba(255,255,255,.98),rgba(241,248,253,.90))!important;box-shadow:0 14px 32px rgba(31,68,103,.08),inset 0 1px 0 rgba(255,255,255,.98)}
.instrument-setup-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:11px}.instrument-setup-heading>div:first-child{min-width:0}.instrument-setup-heading h3{margin:0;font-size:14px;letter-spacing:-.015em}.instrument-setup-heading .subtle-copy{margin:4px 0 0;max-width:820px}.instrument-setup-badge{flex:0 0 auto;padding:5px 8px;border-radius:999px;background:rgba(22,119,210,.08);border:1px solid rgba(22,119,210,.14);color:#1769ad;font-size:7px;font-weight:900;letter-spacing:.07em}
.instrument-setup-shell{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;align-items:stretch}
.instrument-setup-panel{min-width:0;display:grid;align-content:start;gap:9px;padding:12px;border:1px solid rgba(91,130,163,.14);border-radius:16px;background:linear-gradient(145deg,rgba(252,254,255,.98),rgba(244,250,254,.92));box-shadow:0 7px 18px rgba(38,74,108,.055),inset 0 1px 0 #fff}
.instrument-panel-title{font-size:8px;font-weight:900;letter-spacing:.055em;text-transform:uppercase;color:#55758c;padding-bottom:7px;border-bottom:1px solid rgba(91,130,163,.11)}
.instrument-setup-panel>.field,.protocol-family-field{margin:0!important}.protocol-family-field .text-input{font-size:11px;font-weight:750}
.instrument-setup-panel .onboarding-connection-block{padding:0!important;border:0!important;border-radius:0!important;background:transparent!important}.instrument-setup-panel .onboarding-connection-title{margin:1px 0 6px!important}.instrument-setup-panel .onboarding-connection-title strong{font-size:9px}.instrument-setup-panel .onboarding-connection-title small{font-size:7px}
.instrument-setup-panel .onboarding-oem-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;margin:0!important}.instrument-setup-panel .built-in-profile-note{grid-column:1/-1;min-height:58px!important;padding:9px 10px;border-radius:12px;background:rgba(236,246,253,.72);border:1px solid rgba(91,130,163,.12)}.instrument-setup-panel .built-in-profile-note.neutral{background:rgba(247,250,252,.82)}
.instrument-body>.sub-card{border-radius:16px}.general-device-settings .form-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:8px}.general-device-settings .field{min-width:0}.general-device-settings .touch-field,.general-device-settings .text-input{width:100%;min-width:0}
@media(max-width:1050px){.instrument-setup-shell{grid-template-columns:1fr}.general-device-settings .form-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:680px){.instrument-setup-heading{flex-direction:column}.instrument-setup-panel .onboarding-oem-grid,.general-device-settings .form-grid{grid-template-columns:1fr!important}.instrument-setup-badge{align-self:flex-start}}

/* 4.11 compact commissioning layout */
.compact-device-basics .settings-grid,.compact-device-basics{min-width:0}
.instrument-advanced-settings,.parameter-advanced-settings{margin-top:10px;border:1px solid rgba(96,137,173,.16);border-radius:16px;background:rgba(249,252,255,.72);overflow:hidden}
.instrument-advanced-settings>summary,.parameter-advanced-settings>summary{cursor:pointer;list-style:none;padding:12px 15px;font-weight:800;color:#49647b;display:flex;align-items:center;justify-content:space-between}
.instrument-advanced-settings>summary::-webkit-details-marker,.parameter-advanced-settings>summary::-webkit-details-marker{display:none}
.instrument-advanced-settings>summary:after,.parameter-advanced-settings>summary:after{content:"⌄";font-size:14px;color:#6d8397;transition:transform .18s ease}
.instrument-advanced-settings[open]>summary:after,.parameter-advanced-settings[open]>summary:after{transform:rotate(180deg)}
.instrument-advanced-body,.parameter-advanced-body{padding:0 13px 13px;display:grid;gap:10px}
.compact-parameter-body{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px!important;align-items:start}
.compact-parameter-body>.parameter-advanced-settings,.compact-parameter-body>.modbus-mapping-card,.compact-parameter-body>.formula-builder{grid-column:1/-1}
.compact-parameter-section{margin:0!important;min-width:0}
.compact-parameter-section .form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px 10px}
.local-modbus-publisher{border-top:1px solid rgba(96,137,173,.13);padding-top:10px}
@media(max-width:900px){.compact-parameter-body{grid-template-columns:1fr}.compact-parameter-section .form-grid{grid-template-columns:1fr}}

/* AESST DAS 4.12 compact vibrant configuration system */
@keyframes premiumEnter{0%{opacity:0;transform:translate3d(0,7px,0) scale(.994)}100%{opacity:1;transform:none}}
.configuration-shell,.instrument-card,.parameter-card,.sub-card{transition:box-shadow .22s var(--ease),border-color .22s var(--ease),transform .22s var(--ease)}
.instrument-card,.parameter-card{animation:premiumEnter .3s var(--ease) both}
.instrument-body{display:grid;gap:10px}.instrument-body>.sub-card,.compact-parameter-section,.modbus-mapping-card{box-shadow:0 8px 22px rgba(39,72,104,.055),inset 0 1px 0 rgba(255,255,255,.94)}
.touch-field,.touch-select,.text-input{min-height:var(--control-height,42px)!important;height:var(--control-height,42px)!important;border-radius:12px!important;border:1px solid rgba(92,137,174,.22)!important;background:linear-gradient(180deg,#fff,rgba(247,251,254,.98))!important;box-shadow:inset 0 1px 1px rgba(30,66,98,.025),0 3px 9px rgba(42,78,111,.035)!important;transition:border-color .18s var(--ease),box-shadow .18s var(--ease),transform .18s var(--ease)}
.touch-field:focus,.touch-select:focus,.text-input:focus{outline:none!important;border-color:var(--vibrant-blue,#147df5)!important;box-shadow:0 0 0 3px rgba(20,125,245,.10),0 6px 14px rgba(42,78,111,.05)!important}
.modbus-mapping-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important;align-items:end}.modbus-mapping-grid>.field{margin:0!important;min-width:0}.modbus-mapping-card{border:1px solid rgba(20,125,245,.13)!important;background:linear-gradient(145deg,rgba(250,254,255,.99),rgba(239,248,255,.92))!important}.modbus-mapping-head{align-items:center!important}.mapping-status{background:linear-gradient(135deg,rgba(20,125,245,.09),rgba(120,87,255,.09))!important;color:#315d87!important}
.instrument-local-actions,.parameter-local-actions,.group-local-actions{display:flex;align-items:center;justify-content:flex-end;gap:7px;flex-wrap:wrap;padding:8px 0}.instrument-local-actions .primary,.parameter-local-actions .primary,.group-local-actions .primary{background:linear-gradient(135deg,var(--vibrant-blue,#147df5),var(--vibrant-violet,#7857ff))!important;border:0!important;color:#fff!important;box-shadow:0 8px 18px rgba(70,90,220,.18)}
.instrument-local-actions .primary:hover,.parameter-local-actions .primary:hover,.group-local-actions .primary:hover{transform:translateY(-1px);box-shadow:0 11px 22px rgba(70,90,220,.22)}
.instrument-advanced-settings,.parameter-advanced-settings{background:linear-gradient(145deg,rgba(250,253,255,.94),rgba(244,248,253,.88))}.instrument-advanced-settings>summary,.parameter-advanced-settings>summary{min-height:38px;padding:9px 12px}.compact-parameter-body{gap:9px!important}.compact-parameter-section .form-grid{gap:7px 9px!important}.modern-instrument-setup{background:linear-gradient(145deg,rgba(255,255,255,.99),rgba(239,249,255,.93))!important;border-top:3px solid transparent!important;border-image:linear-gradient(90deg,var(--vibrant-blue,#147df5),var(--vibrant-cyan,#00b8e6),var(--vibrant-violet,#7857ff)) 1!important}.instrument-setup-panel{padding:10px!important;gap:7px!important}.instrument-setup-shell{gap:9px!important}.instrument-setup-heading{margin-bottom:8px!important}
@media(max-width:680px){.modbus-mapping-grid{grid-template-columns:1fr!important}.instrument-local-actions,.parameter-local-actions,.group-local-actions{justify-content:stretch}.instrument-local-actions .touch-button,.parameter-local-actions .touch-button,.group-local-actions .touch-button{flex:1}}
@media(prefers-reduced-motion:reduce){.instrument-card,.parameter-card{animation:none!important}.configuration-shell,.instrument-card,.parameter-card,.sub-card,.touch-field,.touch-select,.text-input{transition:none!important}}
.local-card-actions{display:flex;align-items:center;justify-content:flex-end;gap:7px;flex-wrap:wrap;margin-top:8px;padding-top:8px;border-top:1px solid rgba(87,128,162,.10)}
.local-card-actions .local-save{background:linear-gradient(135deg,var(--vibrant-blue,#147df5),var(--vibrant-violet,#7857ff))!important;color:#fff!important;border:0!important;box-shadow:0 7px 17px rgba(72,91,219,.17)}
.local-card-actions .local-save:hover{transform:translateY(-1px);box-shadow:0 10px 21px rgba(72,91,219,.22)}
.back-button{border-color:rgba(20,125,245,.18)!important;color:#356788!important;background:linear-gradient(180deg,#fff,rgba(239,247,254,.94))!important}
@media(max-width:680px){.local-card-actions{justify-content:stretch}.local-card-actions>.touch-button{flex:1}}

/* 4.13 compact hierarchy and uniform Alarm/Groups */
.instrument-editor-shell{display:grid;gap:9px;padding:10px!important}.instrument-editor-shell>.sub-card,.instrument-editor-shell>.instrument-advanced-settings{margin:0!important}.instrument-bottom-actions,.instrument-add-row,.parameter-add-row{display:flex;justify-content:flex-end;align-items:center;gap:8px;padding:9px 2px 1px}.instrument-bottom-actions{margin-top:2px;padding-top:10px;border-top:1px solid rgba(108,142,170,.14)}.compact-instrument-grid,.parameter-binary-layout .compact-instrument-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.compact-device-basics .form-grid,.compact-parameter-section .form-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:7px}.alarm-section,.group-section{border-color:rgba(21,119,212,.16)!important;background:linear-gradient(145deg,rgba(242,249,255,.91),rgba(255,255,255,.92))!important}.alarm-section .alarm-rule-card,.group-editor-card{border:1px solid rgba(21,119,212,.14);background:rgba(255,255,255,.86);box-shadow:0 6px 16px rgba(38,70,103,.05)}.alarm-section .diagnostic-title strong{color:var(--ink)!important}.group-editor-card{border-radius:14px;overflow:hidden}.group-summary-row{list-style:none;display:grid;grid-template-columns:minmax(0,1fr) auto 24px;gap:8px;align-items:center;padding:9px 10px;cursor:pointer}.group-summary-row::-webkit-details-marker{display:none}.group-summary-row small{color:var(--muted);font-size:9px}.group-editor-body{padding:9px;border-top:1px solid var(--line)}.parameter-binary-layout{border-color:rgba(21,154,145,.16);background:linear-gradient(145deg,rgba(239,251,249,.82),rgba(255,255,255,.9))}.field-na{display:flex;align-items:end;min-height:55px;padding:0 8px 8px;color:var(--muted);font-size:9px}.parameter-add-row{border-top:1px dashed rgba(108,142,170,.18);margin-top:7px}.instrument-add-row{margin-top:8px}.parameter-card[open],.instrument-card[open],.group-editor-card[open]{border-color:rgba(21,119,212,.22)}
@media(max-width:900px){.compact-instrument-grid,.parameter-binary-layout .compact-instrument-grid,.compact-device-basics .form-grid,.compact-parameter-section .form-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:620px){.compact-instrument-grid,.parameter-binary-layout .compact-instrument-grid,.compact-device-basics .form-grid,.compact-parameter-section .form-grid{grid-template-columns:1fr!important}.instrument-bottom-actions,.instrument-add-row,.parameter-add-row{flex-wrap:wrap}}

/* 4.14.2 page-owned save workflow */
.config-content{padding-bottom:178px}
.channel-role-settings{border-left:3px solid rgba(44,141,231,.28)}
.parameter-card[open] .channel-role-settings{animation:configRoleIn .2s ease-out both}
@keyframes configRoleIn{from{opacity:.65;transform:translateY(4px)}to{opacity:1;transform:none}}
@media(max-width:720px){.config-content{padding-bottom:168px}}


.config-topbar{padding:10px 14px 0!important;background:transparent!important;border:0!important;box-shadow:none!important;position:relative;z-index:45}
.topbar-inner{
  width:min(1480px,100%)!important;margin:0 auto!important;min-height:72px!important;padding:12px 15px!important;border-radius:22px!important;
  background:var(--adq-surface)!important;border:1px solid var(--adq-edge)!important;
  box-shadow:var(--adq-shadow-md),0 0 0 transparent!important;
}
.topbar-copy strong{font-size:20px!important;color:var(--station-ink)!important;letter-spacing:-.025em}.topbar-copy small{color:var(--station-muted)!important}.topbar-copy .eyebrow{color:var(--station-blue)!important}
.config-content{padding-top:14px!important}.config-section,.settings-card,.sub-card,.onboarding-card,.db-status-card,.db-create-card,.db-actions-card,.db-connection-card,
.instrument-card,.instrument-editor-shell,.modern-instrument-setup,.instrument-setup-panel,.parameter-card,.parameter-field-section,.compact-parameter-section,
.modbus-mapping-card,.group-editor-card,.container-grouping-card,.alarm-rule-card,.diagnostic-card,.diagnostic-parameter-card,.central-sync-card,.compact-control-card{
  background:var(--adq-surface)!important;border:1px solid var(--adq-edge)!important;border-radius:var(--station-radius-card)!important;
  box-shadow:var(--adq-shadow-sm),0 0 0 transparent!important;
}
.config-section,.instrument-card,.parameter-card,.group-editor-card{overflow:hidden!important}
.instrument-summary,.parameter-summary-title,.group-card-head,.section-title-inline{color:var(--station-ink)!important}.field-note,.subtle-copy,.instrument-summary small,.parameter-summary-title small{color:var(--station-muted)!important}
.instrument-setup-panel,.parameter-field-section,.compact-parameter-section,.modbus-mapping-card{
  border-radius:18px!important;background:linear-gradient(145deg,rgba(255,255,255,.91),rgba(241,248,252,.77))!important;
  box-shadow:0 10px 24px rgba(44,83,117,.065),inset 0 1px 0 rgba(255,255,255,.98),inset 0 -1px 0 rgba(104,149,183,.06)!important;
}
.touch-field,.text-input,select.text-input,input.text-input,textarea.text-input{
  min-height:42px!important;border-radius:var(--station-radius-control)!important;border:1px solid rgba(138,176,204,.25)!important;
  background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(247,251,254,.91))!important;color:var(--station-ink)!important;
  box-shadow:var(--station-control-shadow)!important;outline:none!important;
}
.touch-field:hover,.text-input:hover{border-color:rgba(71,154,211,.34)!important}.touch-field:focus,.text-input:focus{border-color:rgba(34,136,202,.56)!important;box-shadow:var(--station-control-shadow-focus)!important;background:#fff!important}
.touch-button{
  min-height:42px!important;border-radius:var(--station-radius-control)!important;border:1px solid rgba(255,255,255,.96)!important;
  background:linear-gradient(180deg,rgba(255,255,255,.97),rgba(239,247,252,.91))!important;color:#294f6c!important;box-shadow:var(--station-control-shadow)!important;
}
.touch-button:hover{transform:translateY(-2px)!important;box-shadow:var(--adq-shadow-sm)!important;border-color:rgba(113,172,213,.34)!important}.touch-button.primary{color:#fff!important;background:linear-gradient(135deg,#278fd9 0%,#147bc6 54%,#17a4a0 100%)!important;border-color:rgba(255,255,255,.28)!important;box-shadow:0 14px 28px rgba(24,118,187,.24),0 5px 12px rgba(24,118,187,.13),inset 0 1px 0 rgba(255,255,255,.45)!important}.touch-button.danger{color:#a73549!important;background:linear-gradient(180deg,rgba(255,255,255,.97),rgba(255,239,243,.94))!important}
.instrument-advanced-settings,.parameter-advanced-settings{border-color:rgba(137,174,202,.18)!important;background:rgba(248,252,255,.72)!important;box-shadow:inset 0 2px 7px rgba(49,88,123,.05)!important}.instrument-advanced-settings>summary,.parameter-advanced-settings>summary{color:#496b83!important}
.group-check-item,.parameter-picker-choice,.list-row,.group-summary-row{background:linear-gradient(145deg,rgba(255,255,255,.86),rgba(244,250,253,.73))!important;border:1px solid rgba(139,176,204,.17)!important;box-shadow:0 6px 15px rgba(46,84,117,.045),inset 0 1px 0 rgba(255,255,255,.95)!important}
#config-dock{background:rgba(249,253,255,.80)!important;border:1px solid rgba(255,255,255,.94)!important;box-shadow:var(--adq-shadow-md),0 0 0 transparent!important}.dock-item.active{background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(225,240,250,.94))!important;box-shadow:0 12px 26px rgba(35,105,158,.14),inset 0 1px 0 #fff!important}.dock-item:hover{background:rgba(255,255,255,.68)!important}
.modal.glass-card{box-shadow:var(--adq-shadow-md),0 0 0 transparent!important}
@media(max-width:720px){.config-topbar{padding:7px 8px 0!important}.topbar-inner{border-radius:19px!important;padding:10px 12px!important}}

/* AESST DAS 4.14.2 screenshot correction patch: premium header, compact database status, symmetric metadata. */
.config-topbar{padding:12px 16px 0!important}
.topbar-inner{
  display:grid!important;
  grid-template-columns:48px minmax(0,1fr)!important;
  align-items:center!important;
  column-gap:14px!important;
  min-height:86px!important;
  padding:14px 18px!important;
  border-radius:26px!important;
  background:linear-gradient(118deg,rgba(255,255,255,.985) 0%,rgba(249,252,255,.965) 48%,rgba(226,240,251,.93) 100%)!important;
  border:1px solid rgba(255,255,255,.98)!important;
  box-shadow:0 22px 54px rgba(38,78,112,.14),0 8px 22px rgba(42,82,119,.07),inset 0 1px 0 rgba(255,255,255,1),inset 0 -1px 0 rgba(102,151,188,.08)!important;
}
.topbar-inner>img{width:44px!important;height:44px!important;border-radius:14px!important;box-shadow:0 10px 24px rgba(33,111,169,.18),inset 0 1px 0 rgba(255,255,255,.42)!important}
.topbar-copy{display:grid!important;grid-template-columns:minmax(0,max-content);grid-template-rows:auto auto auto;align-items:center!important;gap:2px!important;min-width:0!important}
.topbar-copy .eyebrow{color:#fff!important;background:linear-gradient(120deg,#167ac4 0%,#238fd2 52%,#6259d7 100%)!important;box-shadow:0 7px 18px rgba(42,92,171,.20),inset 0 1px 0 rgba(255,255,255,.26)!important;font-weight:850!important;letter-spacing:.115em!important;line-height:1!important;min-height:24px!important;padding:0 11px!important;max-width:max-content!important;text-shadow:0 1px 1px rgba(22,63,111,.18)!important}
.topbar-copy strong{font-size:24px!important;line-height:1.08!important;margin:3px 0 1px!important;color:#152f45!important;letter-spacing:-.03em!important}
.topbar-copy small{font-size:11px!important;line-height:1.35!important;color:#5e7990!important;max-width:760px!important}

#view-database{min-height:0!important;align-content:start!important}
#view-database .database-balanced-stage{align-content:start!important;align-items:start!important;gap:14px!important}
#view-database .db-status-card{
  min-height:0!important;height:auto!important;padding:18px!important;
  display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;
  grid-template-areas:"main chip" "progress progress" "meta meta"!important;
  align-items:center!important;gap:14px 16px!important;justify-content:stretch!important;
}
#view-database .db-status-card>*:first-child,#view-database .db-status-card>*:last-child{margin:0!important}
#view-database .db-main{grid-area:main!important;display:flex!important;align-items:center!important;justify-content:flex-start!important;text-align:left!important;gap:14px!important;margin:0!important;min-width:0!important}
#view-database .db-orb{width:58px!important;height:58px!important;flex:0 0 58px!important;border-radius:18px!important;font-size:22px!important;background:linear-gradient(145deg,rgba(231,246,255,.98),rgba(213,235,250,.92))!important;box-shadow:0 10px 24px rgba(42,99,143,.10),inset 0 1px 0 rgba(255,255,255,.96)!important}
#view-database .db-main-copy{text-align:left!important;min-width:0!important;flex:1!important}
#view-database .db-main-copy .eyebrow{font-size:9px!important;letter-spacing:.12em!important;color:#187fca!important}
#view-database .db-main-copy h2{font-size:20px!important;line-height:1.18!important;margin:4px 0 3px!important;color:#183247!important}
#view-database .db-main-copy p{font-size:10px!important;margin:0!important;color:#668098!important;max-width:none!important}
#view-database .db-state-chip{grid-area:chip!important;align-self:center!important;justify-self:end!important;margin:0!important;min-height:30px!important;padding:5px 12px!important;box-shadow:0 6px 16px rgba(51,90,121,.08),inset 0 1px 0 rgba(255,255,255,.92)!important}
#view-database .db-progress-banner{grid-area:progress!important;margin:0!important}
#view-database .db-meta-grid{grid-area:meta!important;display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:10px!important;margin:0!important;width:100%!important}
#view-database .db-meta-item{min-height:64px!important;padding:10px 9px!important;border-radius:15px!important;border:1px solid rgba(126,169,202,.16)!important;background:linear-gradient(145deg,rgba(255,255,255,.90),rgba(239,248,254,.76))!important;box-shadow:0 7px 18px rgba(44,83,117,.055),inset 0 1px 0 rgba(255,255,255,.96)!important;align-content:center!important;gap:4px!important}
#view-database .db-meta-item small{font-size:8px!important;color:#6f889c!important;letter-spacing:.08em!important}
#view-database .db-meta-item strong{font-size:12px!important;color:#1d3549!important;line-height:1.25!important}

@media(max-width:900px){
  #view-database .db-status-card{grid-template-columns:1fr!important;grid-template-areas:"main" "chip" "progress" "meta"!important}
  #view-database .db-state-chip{justify-self:start!important}
  #view-database .db-meta-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:620px){
  .topbar-inner{grid-template-columns:40px minmax(0,1fr)!important;padding:11px 12px!important;column-gap:10px!important;min-height:76px!important}
  .topbar-inner>img{width:38px!important;height:38px!important}
  .topbar-copy .eyebrow{font-size:7px!important;white-space:normal!important;line-height:1.25!important;padding:5px 9px!important}
  .topbar-copy strong{font-size:20px!important}
  .topbar-copy small{display:block!important;font-size:9px!important}
  #view-database .db-main{align-items:flex-start!important}
  #view-database .db-orb{width:48px!important;height:48px!important;flex-basis:48px!important}
  #view-database .db-meta-grid{grid-template-columns:1fr!important}
}

/* AESST DAS 4.14.2 Instrument workspace reorganization */
.instrument-workspace-stack{display:grid;gap:12px;align-content:start;min-width:0;padding-bottom:12px}
.instrument-page-toolbar{margin:0 2px 1px;padding:2px 1px}.instrument-page-toolbar .section-title-inline{font-size:18px;letter-spacing:-.02em}.instrument-page-toolbar .subtle-copy{max-width:920px;margin:4px 0 0;line-height:1.55}
.instrument-card[open],.instrument-editor-shell,.modern-instrument-setup,.instrument-setup-panel,.instrument-identity-field{overflow:visible!important}
.instrument-card[open]{position:relative;z-index:3}.instrument-card:not([open]){z-index:1}
.instrument-summary{min-height:62px;padding:11px 14px!important}.instrument-title strong{font-size:13px!important;letter-spacing:-.01em}.instrument-title small{font-size:9px!important;line-height:1.45;margin-top:4px!important}
.instrument-editor-shell{gap:10px!important;padding:11px!important}.modern-instrument-setup{padding:13px!important}.instrument-setup-heading{align-items:center!important;margin-bottom:10px!important}.instrument-setup-heading h3{font-size:14px!important}.instrument-setup-heading .subtle-copy{font-size:9px;line-height:1.55}
.instrument-setup-shell{gap:10px!important}.instrument-setup-panel{padding:12px!important;gap:9px!important}.instrument-panel-title{font-size:8px!important;font-weight:900!important;letter-spacing:.075em!important;color:#4d6e89!important;padding-bottom:7px!important;border-bottom:1px solid rgba(104,139,169,.13)!important}
.instrument-identity-field{min-width:0;margin:0!important}.instrument-identity-field>span{display:block;margin:0 0 6px;padding:0 2px;font-size:9px;font-weight:800;color:#4d687e;letter-spacing:.01em}
.instrument-identity-choice{width:100%;min-width:0}.instrument-identity-choice .choice-trigger{width:100%;min-height:46px;padding:0 14px!important;border-radius:13px!important;background:linear-gradient(145deg,rgba(255,255,255,.98),rgba(247,251,254,.94))!important;font-size:11px!important;font-weight:700!important;color:#173047!important}.instrument-identity-choice .choice-value{line-height:1.3}.instrument-identity-choice.disabled{opacity:.58}.instrument-identity-choice.disabled .choice-trigger{cursor:not-allowed}
.instrument-identity-choice .choice-menu{top:calc(100% + 7px);z-index:900;max-height:min(300px,42vh);padding:7px;border-radius:14px;background:rgba(252,254,255,.985);border:1px solid rgba(91,132,166,.22);box-shadow:0 20px 44px rgba(39,75,108,.19),0 6px 16px rgba(39,75,108,.08),inset 0 1px 0 #fff}
.instrument-identity-choice .choice-option{min-height:40px;padding:8px 12px;border-radius:10px;font-size:11px;line-height:1.35;font-weight:650;white-space:normal}.instrument-identity-choice .choice-option+.choice-option{margin-top:2px}.instrument-identity-choice .choice-option:hover,.instrument-identity-choice .choice-option:focus-visible{background:rgba(21,119,212,.075)}.instrument-identity-choice .choice-option.selected{background:linear-gradient(145deg,rgba(225,243,255,.98),rgba(235,247,255,.96));box-shadow:inset 0 0 0 1px rgba(21,119,212,.12)}
.onboarding-connection-title{padding:0 2px}.onboarding-connection-title strong{font-size:9px!important}.onboarding-connection-title small{font-size:8px!important;line-height:1.45}.transport-connection-grid{gap:9px!important}.transport-connection-grid>.field>span{margin-bottom:5px;display:block;padding-left:2px}.transport-connection-grid .touch-field,.transport-connection-grid .text-input{min-height:42px!important;padding-left:12px!important;padding-right:12px!important}
.compact-device-basics{padding:11px!important}.compact-device-basics h3,.parameter-configuration-section h3{font-size:12px!important;margin:0 0 5px!important}.compact-device-basics .subtle-copy,.parameter-configuration-section .field-note{line-height:1.5}.compact-device-basics .form-grid,.compact-parameter-section .form-grid{gap:8px 10px!important}
.parameter-configuration-section{padding:12px!important;border-color:rgba(77,126,166,.16)!important;background:linear-gradient(145deg,rgba(252,254,255,.97),rgba(241,249,255,.9))!important}.parameter-list{gap:7px!important}.parameter-card summary{min-height:48px;padding:9px 11px!important}.parameter-card .parameter-body{padding:10px!important}.parameter-summary-title strong{font-size:11px!important}.parameter-summary-title small{font-size:8.5px!important;line-height:1.4}.parameter-field-section{padding:10px!important}.parameter-field-section h4{margin:0 0 7px!important;font-size:10px!important}.parameter-add-row{gap:7px!important;padding-top:9px!important;flex-wrap:wrap}.parameter-add-row .touch-button{min-height:36px!important}
.container-grouping-card,.instrument-role-container{margin:0!important;padding:0!important;border:1px solid rgba(73,120,160,.16)!important;border-radius:19px!important;background:linear-gradient(145deg,rgba(255,255,255,.96),rgba(238,248,255,.88))!important;box-shadow:0 14px 34px rgba(37,72,104,.075),inset 0 1px 0 rgba(255,255,255,.98)!important;overflow:hidden!important}
.container-grouping-card>.compact-section-summary{min-height:58px;padding:12px 15px!important;font-size:12px!important;font-weight:850;color:#183149}.container-grouping-card>.compact-section-summary span{letter-spacing:-.01em}.container-grouping-card>.compact-section-body{padding:12px 14px 14px!important;border-top:1px solid rgba(101,137,166,.12)}
.instrument-role-container{padding:14px!important}.role-container-header{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:1px 1px 11px;border-bottom:1px solid rgba(99,136,166,.13)}.role-container-copy{min-width:0}.role-container-copy .eyebrow{font-size:7px!important;letter-spacing:.1em;color:#3c78a5}.role-container-copy h3{margin:4px 0 3px;font-size:14px;letter-spacing:-.015em;color:#183149}.role-container-copy .subtle-copy{margin:0;max-width:950px;font-size:9px;line-height:1.5}.role-container-header>.status-chip{flex:0 0 auto}
.role-parameter-list{display:grid;gap:9px;margin-top:11px}.role-parameter-card{padding:11px 12px;border:1px solid rgba(85,127,161,.14);border-radius:15px;background:rgba(255,255,255,.82);box-shadow:0 6px 17px rgba(42,76,107,.045),inset 0 1px 0 rgba(255,255,255,.95)}.role-parameter-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.role-parameter-identity{min-width:0}.role-parameter-identity strong{display:block;font-size:11px;color:#193249}.role-parameter-identity small{display:block;margin-top:3px;font-size:8.5px;color:#698096}.parameter-type-badge{flex:0 0 auto;padding:5px 8px;border-radius:999px;font-size:7px;font-weight:900;letter-spacing:.075em}.parameter-type-badge.alarm{background:rgba(204,76,92,.09);border:1px solid rgba(204,76,92,.16);color:#a53c4e}.parameter-type-badge.diagnostic{background:rgba(21,154,145,.09);border:1px solid rgba(21,154,145,.16);color:#137b74}.role-parameter-help{margin:8px 0 9px;padding:7px 9px;border-radius:10px;background:rgba(235,244,251,.62);color:#607a90;font-size:8.5px;line-height:1.5}.role-settings-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px 10px}.role-settings-grid>.field{min-width:0;margin:0!important}.role-settings-grid>.field>span{display:block;margin:0 0 5px;padding-left:2px;font-size:8px;font-weight:800;color:#557086}.role-settings-grid .touch-field,.role-settings-grid .choice-trigger{min-height:40px!important}.alarm-configuration-container{border-top:3px solid rgba(204,76,92,.18)!important}.diagnostic-configuration-container{border-top:3px solid rgba(21,154,145,.18)!important}
.instrument-add-row{padding:2px 1px 1px!important;margin:0!important}.instrument-add-row .touch-button{min-height:38px!important}.instrument-bottom-actions{padding-top:11px!important}
@media(max-width:1050px){.role-settings-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.instrument-setup-shell{grid-template-columns:1fr!important}}
@media(max-width:680px){.instrument-workspace-stack{gap:9px}.role-container-header{align-items:flex-start;flex-direction:column}.role-settings-grid{grid-template-columns:1fr}.instrument-role-container{padding:11px!important}.instrument-summary{padding:10px!important}.parameter-add-row,.instrument-add-row{justify-content:stretch}.parameter-add-row .touch-button,.instrument-add-row .touch-button{flex:1 1 auto}}


/* 4.14.2 local save ownership + protocol overlap correction */
.protocol-family-field .choice-select.open .choice-menu{position:static!important;left:auto!important;right:auto!important;top:auto!important;width:100%!important;margin-top:7px;max-height:min(300px,42vh);transform:none!important}
.protocol-family-field .choice-select.open{display:grid;grid-template-columns:minmax(0,1fr);align-content:start}
.instrument-local-actions .back-button,.parameter-local-actions .back-button{margin-right:auto}
.role-add-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:10px;padding:10px 1px 1px;border-top:1px solid rgba(99,136,166,.11)}
.role-add-row>.field-note{margin:0;min-width:0;line-height:1.45}
.role-card-head-actions{display:flex;align-items:center;justify-content:flex-end;gap:7px;flex-wrap:wrap;flex:0 0 auto}
.compact-role-delete{min-height:30px!important;height:30px!important;padding:0 9px!important;border-radius:9px!important;font-size:8px!important}
.group-editor-body .local-card-actions,.role-parameter-card .local-card-actions{justify-content:flex-end}
@media(max-width:680px){.role-add-row{align-items:stretch;flex-direction:column}.role-add-row .touch-button{width:100%}.role-parameter-head{align-items:flex-start}.role-card-head-actions{max-width:50%}.instrument-local-actions .back-button,.parameter-local-actions .back-button{margin-right:0}}

/* AESST DAS 4.14.2.2 launcher-driven Instrument Configuration workspace */
.instrument-workspace-v2{display:grid;gap:12px;align-content:start;min-width:0;padding:0 0 18px}
.instrument-page-toolbar-v2{display:grid;gap:3px;padding:2px 3px 0}.instrument-page-toolbar-v2 .section-title-inline{margin:0;font-size:20px;letter-spacing:-.025em;color:var(--station-ink,#173047)}.instrument-page-toolbar-v2 .subtle-copy{margin:0;max-width:1040px;font-size:10px;line-height:1.5;color:var(--station-muted,#617d93)}
.instrument-launcher-row{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:9px;position:relative;z-index:5}.instrument-launcher{appearance:none;min-width:0;min-height:72px;padding:11px 12px;border:1px solid rgba(255,255,255,.92);border-radius:18px;background:linear-gradient(145deg,rgba(255,255,255,.94),rgba(233,246,255,.83));box-shadow:0 11px 28px rgba(37,79,113,.09),inset 0 1px 0 #fff;color:#1b3b54;text-align:left;cursor:pointer;transition:transform .16s var(--ease),box-shadow .18s var(--ease),border-color .18s var(--ease)}.instrument-launcher:hover{transform:translateY(-2px);box-shadow:0 16px 34px rgba(37,79,113,.14),inset 0 1px 0 #fff;border-color:rgba(73,155,211,.28)}.instrument-launcher:active{transform:translateY(0) scale(.985)}.instrument-launcher strong{display:block;font-size:12px;line-height:1.2}.instrument-launcher small{display:block;margin-top:6px;font-size:8.5px;line-height:1.35;color:#69849a}.instrument-launcher.group{background:linear-gradient(145deg,rgba(255,255,255,.96),rgba(239,244,255,.88))}.instrument-launcher.alarm{background:linear-gradient(145deg,rgba(255,255,255,.96),rgba(255,244,241,.89))}.instrument-launcher.diagnostic{background:linear-gradient(145deg,rgba(255,255,255,.96),rgba(238,250,247,.88))}.instrument-launcher.relay{background:linear-gradient(145deg,rgba(255,255,255,.96),rgba(245,242,255,.88))}
.instrument-workspace-editor{position:relative;z-index:4;padding:15px!important;border-radius:24px!important;overflow:visible!important;background:linear-gradient(145deg,rgba(255,255,255,.95),rgba(231,245,254,.86))!important;box-shadow:0 18px 42px rgba(36,78,111,.12),inset 0 1px 0 rgba(255,255,255,.98)!important}.workspace-editor-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:1px 1px 12px;border-bottom:1px solid rgba(99,136,166,.15)}.workspace-editor-copy{min-width:0}.workspace-editor-copy h2{margin:3px 0 4px;font-size:18px;letter-spacing:-.025em}.workspace-editor-copy .subtle-copy{margin:0;max-width:1000px;font-size:9.5px;line-height:1.5}.workspace-close{flex:0 0 auto;min-height:38px!important;padding:0 12px!important;font-size:9px!important}
.workspace-step{display:grid;gap:10px;margin-top:12px;padding:13px;border:1px solid rgba(109,147,177,.15);border-radius:18px;background:linear-gradient(145deg,rgba(255,255,255,.84),rgba(246,251,255,.72));box-shadow:inset 0 1px 0 rgba(255,255,255,.96)}.workspace-subtitle{font-size:9px;font-weight:900;letter-spacing:.075em;text-transform:uppercase;color:#4b718d}.workspace-step-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.workspace-step-head>div{min-width:0}.workspace-step-head .field-note{display:block;margin-top:4px}.workspace-form-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;align-items:start}.identity-workspace-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.alarm-owner-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.alarm-settings-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.group-name-grid{grid-template-columns:minmax(220px,420px)}.workspace-form-grid .field{min-width:0}.workspace-form-grid .field>span,.workspace-select-field>span{font-size:8.5px!important;font-weight:800!important;color:#4d697f!important}.workspace-form-grid .touch-field,.workspace-select-field .touch-field{min-height:43px!important;border-radius:13px!important;background:linear-gradient(145deg,rgba(255,255,255,.98),rgba(246,251,254,.93))!important}
.instrument-workspace-editor .workspace-flow-choice{max-width:520px}.instrument-workspace-editor .workspace-flow-choice>.choice-select{width:100%}.instrument-workspace-editor .workspace-flow-choice .choice-trigger{min-height:46px}.instrument-workspace-editor .workspace-flow-choice .choice-select.open .choice-menu{position:static!important;left:auto!important;right:auto!important;top:auto!important;width:100%!important;margin-top:7px;max-height:min(300px,42vh);transform:none!important}.instrument-workspace-editor .onboarding-connection-block{margin-top:1px;padding:0;border:0;background:transparent;box-shadow:none}.instrument-workspace-editor .onboarding-connection-title{padding:0 0 5px}.instrument-workspace-editor .transport-connection-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.workspace-advanced-settings{margin-top:10px;border:1px solid rgba(120,151,177,.15);border-radius:15px;background:rgba(248,252,255,.72);overflow:hidden}.workspace-advanced-settings>summary{list-style:none;cursor:pointer;padding:10px 12px;font-size:9px;font-weight:850;color:#54738a}.workspace-advanced-settings>summary::-webkit-details-marker{display:none}.workspace-advanced-settings>.workspace-form-grid{padding:0 12px 12px}
.parameter-workspace-step{gap:11px}.compact-workspace-add{min-height:38px!important;padding:0 12px!important;font-size:9px!important;flex:0 0 auto}.workspace-parameter-list{display:grid;gap:10px}.workspace-parameter-card{position:relative;padding:12px;border:1px solid rgba(92,138,174,.17);border-radius:17px;background:linear-gradient(145deg,rgba(255,255,255,.95),rgba(240,249,255,.82));box-shadow:0 8px 20px rgba(36,76,108,.06),inset 0 1px 0 #fff}.workspace-parameter-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:9px;margin-bottom:9px;border-bottom:1px solid rgba(99,136,166,.13)}.workspace-parameter-identity{min-width:0}.workspace-parameter-identity strong{display:block;font-size:12px;color:#18334a}.workspace-parameter-identity small{display:block;margin-top:3px;font-size:8px;color:#748da1}.compact-workspace-delete{min-height:34px!important;padding:0 10px!important;font-size:8.5px!important;flex:0 0 auto}.parameter-primary-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.parameter-formula-grid{grid-template-columns:1fr;margin-top:8px}.formula-workspace-note{display:block;margin-top:5px}.workspace-modbus-mapping{display:grid;gap:7px;margin-top:9px;padding:10px;border:1px solid rgba(37,133,199,.14);border-radius:14px;background:rgba(237,248,255,.72)}.modbus-workspace-grid{grid-template-columns:repeat(2,minmax(0,1fr));max-width:760px}.workspace-mapping-status{font-size:8px;color:#6c879a}.workspace-mapping-status.good{color:#147a58}.workspace-mapping-status.warn{color:#986b1f}.workspace-local-actions,.workspace-editor-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;margin-top:10px;padding-top:10px;border-top:1px solid rgba(100,137,166,.13)}.workspace-local-actions .local-save,.workspace-editor-actions .local-save{min-width:130px}.workspace-relay-note{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:11px;padding:12px 13px;border-radius:15px;border:1px solid rgba(115,101,200,.14);background:rgba(247,244,255,.78)}.workspace-relay-note strong{font-size:10px;color:#453d78}.workspace-relay-note small{font-size:8.5px;color:#766f97;text-align:right}
.parameter-select-title{margin-top:4px}.workspace-parameter-select-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.workspace-check-item{min-width:0;display:flex;align-items:center;gap:8px;padding:9px 10px;border:1px solid rgba(104,140,169,.15);border-radius:13px;background:rgba(255,255,255,.78);cursor:pointer}.workspace-check-item input{width:17px;height:17px;accent-color:#1686cf;flex:0 0 auto}.workspace-check-item span{min-width:0}.workspace-check-item strong{display:block;font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.workspace-check-item small{display:block;margin-top:2px;font-size:8px;color:#718b9f;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.configured-workspace-overview{display:grid;gap:8px;margin-top:1px;padding:12px;border:1px solid rgba(255,255,255,.92);border-radius:21px;background:linear-gradient(145deg,rgba(255,255,255,.75),rgba(230,244,253,.67));box-shadow:0 12px 30px rgba(40,78,108,.07),inset 0 1px 0 rgba(255,255,255,.98)}.workspace-overview-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 1px}.workspace-overview-head>div{font-size:10px;font-weight:850;color:#385a73}.configured-item-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.configured-item-card{min-width:0;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px;border:1px solid rgba(98,139,170,.14);border-radius:15px;background:rgba(255,255,255,.82);box-shadow:0 5px 13px rgba(35,72,102,.045)}.configured-item-copy{min-width:0}.configured-item-kind{display:block;font-size:7px;font-weight:900;letter-spacing:.08em;color:#4084af}.configured-item-copy strong{display:block;margin-top:3px;font-size:11px;color:#19364d;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.configured-item-copy span{display:block;margin-top:3px;font-size:8px;color:#748c9f;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.configured-item-edit{flex:0 0 auto;min-height:34px!important;padding:0 10px!important;font-size:8px!important}.configured-item-card.alarm{border-color:rgba(200,97,70,.13)}.configured-item-card.diagnostic{border-color:rgba(28,152,126,.13)}.configured-item-card.group{border-color:rgba(86,110,199,.13)}.configured-item-card.relay{border-color:rgba(117,93,190,.13)}
@media(max-width:1280px){.instrument-launcher-row{grid-template-columns:repeat(3,minmax(0,1fr))}.identity-workspace-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.workspace-form-grid,.parameter-primary-grid,.instrument-workspace-editor .transport-connection-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.alarm-settings-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.configured-item-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.workspace-parameter-select-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:820px){.instrument-launcher-row{grid-template-columns:repeat(2,minmax(0,1fr))}.workspace-editor-head,.workspace-step-head{align-items:stretch;flex-direction:column}.workspace-close,.compact-workspace-add{align-self:flex-start}.identity-workspace-grid,.workspace-form-grid,.parameter-primary-grid,.instrument-workspace-editor .transport-connection-grid,.alarm-owner-grid,.alarm-settings-grid,.modbus-workspace-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.configured-item-grid,.workspace-parameter-select-grid{grid-template-columns:1fr}.workspace-relay-note{align-items:flex-start;flex-direction:column}.workspace-relay-note small{text-align:left}}
@media(max-width:560px){.instrument-launcher-row,.identity-workspace-grid,.workspace-form-grid,.parameter-primary-grid,.instrument-workspace-editor .transport-connection-grid,.alarm-owner-grid,.alarm-settings-grid,.modbus-workspace-grid{grid-template-columns:1fr}.instrument-launcher{min-height:62px}.instrument-workspace-editor{padding:11px!important}.workspace-step{padding:10px}.workspace-parameter-head,.workspace-editor-actions,.workspace-local-actions{align-items:stretch;flex-direction:column}.compact-workspace-delete,.workspace-editor-actions .touch-button,.workspace-local-actions .touch-button{width:100%}}

/* AESST DAS 4.14.2.3 corrective local-save and draft-first workspace */
.page-local-save-row{display:flex;align-items:center;justify-content:flex-end;gap:10px;margin:14px 0 0;padding:12px 2px 2px;border-top:1px solid rgba(92,132,165,.15)}
.page-local-save-row .touch-button{min-width:150px;min-height:44px!important;border-radius:15px!important}
.instrument-workspace-v2{display:grid;gap:12px}.instrument-launcher-row{grid-template-columns:repeat(5,minmax(0,1fr))}
.category-workspace-intro{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 0 4px}.category-workspace-intro>div{min-width:0}.category-workspace-intro strong{display:block;font-size:12px;color:#17354c}.category-workspace-intro small{display:block;margin-top:4px;font-size:8.5px;color:#6e8799}.category-workspace-add{min-width:160px;flex:0 0 auto}
.unified-instrument-form{display:grid;gap:0}.unified-instrument-form .workspace-step{margin:0;padding:16px 2px;border:0;border-radius:0;background:transparent;box-shadow:none;border-top:1px solid rgba(93,133,165,.14)}.unified-instrument-form .workspace-step:first-of-type{border-top:0}.unified-instrument-form .workspace-advanced-settings{margin:0 0 4px}.unified-instrument-form .workspace-editor-actions{margin-top:2px}
.communication-symmetric-grid{display:grid;grid-template-columns:1fr;gap:12px}.communication-symmetric-grid .workspace-flow-choice{max-width:none;width:100%}.unified-instrument-form .transport-connection-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.identity-workspace-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.parameter-add-controls{display:grid;grid-template-columns:minmax(220px,1fr) auto auto;gap:10px;align-items:end}.parameter-add-controls .field{min-width:0}.draft-parameter-card .workspace-local-actions{display:none}.draft-delete-x{width:34px;min-width:34px!important;height:34px;min-height:34px!important;border-radius:50%!important;padding:0!important;font-size:15px!important;display:grid!important;place-items:center}.category-saved-list{display:grid;gap:8px;margin-top:12px}.category-saved-card{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border:1px solid rgba(94,137,170,.15);border-radius:15px;background:rgba(255,255,255,.66)}.category-saved-copy{min-width:0}.category-saved-copy strong{display:block;font-size:10.5px;color:#19364e}.category-saved-copy small{display:block;margin-top:3px;font-size:8px;color:#6f899c}.diagnostic-approved-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.alarm-settings-grid{grid-template-columns:repeat(5,minmax(0,1fr))}
@media(max-width:1280px){.instrument-launcher-row{grid-template-columns:repeat(3,minmax(0,1fr))}.unified-instrument-form .transport-connection-grid,.identity-workspace-grid,.diagnostic-approved-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.parameter-add-controls{grid-template-columns:1fr auto}.parameter-add-controls .secondary-action{grid-column:1/-1;justify-self:start}}
@media(max-width:820px){.instrument-launcher-row{grid-template-columns:repeat(2,minmax(0,1fr))}.category-workspace-intro{align-items:stretch;flex-direction:column}.category-workspace-add{align-self:flex-start}.unified-instrument-form .transport-connection-grid,.identity-workspace-grid,.diagnostic-approved-grid,.alarm-settings-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.parameter-add-controls{grid-template-columns:1fr}.category-saved-card{align-items:flex-start;flex-direction:column}}
@media(max-width:560px){.instrument-launcher-row,.unified-instrument-form .transport-connection-grid,.identity-workspace-grid,.diagnostic-approved-grid,.alarm-settings-grid{grid-template-columns:1fr}.page-local-save-row{align-items:stretch}.page-local-save-row .touch-button{width:100%}.category-workspace-add{width:100%}.parameter-add-controls{grid-template-columns:1fr}}

/* AESST DAS 4.14.2.4 architectural UI correction */
.db-connection-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:10px;padding-top:10px;border-top:1px solid rgba(102,139,167,.14)}
.db-connection-action-buttons{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.db-connection-actions>.field-note{flex:1;min-width:260px;margin:0}
.station-vertical-stack{display:grid;grid-template-columns:1fr;gap:12px}.station-vertical-stack>.settings-card{margin:0!important;width:100%}.inline-container-save-row{display:flex;justify-content:flex-end;align-items:center;gap:8px;margin-top:14px;padding-top:12px;border-top:1px solid rgba(98,137,166,.14)}.inline-container-save-row .local-save{min-width:170px}
.instrument-workspace-editor .choice-select{position:relative;z-index:2}.instrument-workspace-editor .choice-select.open{z-index:260}.instrument-workspace-editor .choice-menu{z-index:280;border-color:rgba(56,137,197,.22);background:linear-gradient(145deg,rgba(255,255,255,.99),rgba(235,247,255,.985));box-shadow:0 20px 48px rgba(35,76,108,.20),0 6px 16px rgba(35,76,108,.08),inset 0 1px 0 #fff}.instrument-workspace-editor .choice-option{min-height:40px;border-radius:10px;padding:0 12px;font-size:10px;color:#1d405a}.instrument-workspace-editor .choice-option:hover,.instrument-workspace-editor .choice-option:focus-visible{background:linear-gradient(145deg,rgba(229,244,255,.96),rgba(240,247,255,.96));color:#126cae}.instrument-workspace-editor .choice-option.selected{background:linear-gradient(145deg,rgba(210,237,255,.98),rgba(223,234,255,.96));color:#0f67a8}.workspace-themed-choice{width:100%}.workspace-themed-choice>.choice-trigger{width:100%;min-height:43px!important;border-radius:13px!important}
.standalone-alarm-editor .communication-symmetric-grid{grid-template-columns:1fr}.alarm-custom-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.alarm-source-grid{grid-template-columns:minmax(260px,1fr);max-width:760px}.standalone-alarm-editor .onboarding-connection-block{width:100%}
@media(max-width:1100px){.alarm-custom-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:720px){.db-connection-action-buttons{width:100%}.db-connection-action-buttons .touch-button{flex:1}.db-connection-actions>.field-note{min-width:0;width:100%}.inline-container-save-row{align-items:stretch}.inline-container-save-row .local-save{width:100%}.alarm-custom-grid{grid-template-columns:1fr}}


.config-topbar,.settings-card,.instrument-workspace-editor,.workspace-step,.category-saved-card,.control-pane,.sub-card,.database-status-card,.database-editor-card{background:var(--adq-surface)!important;background-image:none!important;border-color:var(--adq-edge)!important;box-shadow:var(--adq-shadow-sm)!important}
.config-topbar:before,.settings-card:before,.instrument-workspace-editor:before,.workspace-step:before{content:none!important;background:none!important}
.choice-menu,.workspace-choice-menu{background:rgba(248,252,255,.98)!important;background-image:none!important;border-color:rgba(104,161,203,.28)!important;box-shadow:0 18px 38px rgba(34,78,113,.15)!important}
.direct-relay-workspace{max-width:100%;margin:0 auto}


/* 4.14.2.10 · Relay/Auto Check clean card boundary */
.control-workspace-grid{background:transparent!important;background-image:none!important;box-shadow:none!important;border:0!important}
.control-pane{background:transparent!important;background-image:none!important;border:0!important;box-shadow:none!important;padding:0!important;border-radius:0!important}
.control-pane:before,.control-pane:after,.control-workspace-grid:before,.control-workspace-grid:after{content:none!important;display:none!important}
.control-pane>.settings-card:first-child{border-radius:24px!important;overflow:hidden!important}

/* 4.14.2.11 · transparent header wrapper + unified database status surface */
.config-topbar{
  background:transparent!important;
  background-image:none!important;
  border:0!important;
  box-shadow:none!important;
  
  
}
.config-topbar:before,.config-topbar:after{content:none!important;display:none!important;background:none!important}
.config-topbar>.topbar-inner,.topbar-inner{
  background:var(--adq-surface)!important;
  background-image:none!important;
  border:1px solid var(--adq-edge)!important;
  box-shadow:var(--adq-shadow-sm)!important;
  
  
}
.db-status-rows{grid-area:meta;display:grid;gap:6px;margin-top:14px;padding:8px;border:1px solid rgba(104,151,188,.15);border-radius:17px;background:rgba(246,251,254,.42)}
.db-status-row{display:grid;grid-template-columns:minmax(132px,.58fr) minmax(0,1.42fr);align-items:center;gap:12px;min-height:38px;padding:7px 10px;border:1px solid rgba(121,161,192,.11);border-radius:12px;background:rgba(255,255,255,.53);box-shadow:inset 0 1px 0 rgba(255,255,255,.78)}
.db-status-row small{font-size:8px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:#6f8799}
.db-status-row strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10px;font-weight:760;color:#24465e;text-align:right}
.db-runtime-note{margin-top:9px;padding:9px 11px;border:1px solid rgba(207,139,63,.18);border-radius:12px;background:rgba(255,248,232,.72);color:#78562d;font-size:8.5px;line-height:1.45}
@media(max-width:720px){.db-status-row{grid-template-columns:1fr;gap:3px}.db-status-row strong{text-align:left;white-space:normal}}
#view-database .db-runtime-note{grid-column:1/-1!important}


/* AESST DAS 4.15.1 · compact Database Configuration workflow */
#view-database .db-configuration-card{
  margin:0!important;
  min-height:100%!important;
  padding:22px!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  align-items:stretch!important;
  box-sizing:border-box!important;
  text-align:left!important;
}
#view-database .db-configuration-card>h2{
  margin:0 0 16px!important;
  font-size:18px!important;
  line-height:1.2!important;
  color:#183247!important;
  text-align:left!important;
}
#view-database .db-default-location{
  display:grid;
  gap:6px;
  min-width:0;
  padding:13px 14px;
  border:1px solid rgba(104,151,188,.16);
  border-radius:14px;
  background:rgba(255,255,255,.58);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.82);
}
#view-database .db-default-location small{
  font-size:8px;
  font-weight:850;
  letter-spacing:.06em;
  text-transform:uppercase;
  color:#6f8799;
}
#view-database .db-default-location strong{
  min-width:0;
  overflow-wrap:anywhere;
  word-break:break-word;
  font-size:10px;
  line-height:1.45;
  color:#24465e;
}
#view-database .db-configuration-actions{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:10px!important;
  margin-top:16px!important;
}
#view-database .db-configuration-actions .db-action{
  min-height:72px!important;
  padding:10px!important;
  grid-template-columns:32px minmax(0,1fr)!important;
  text-align:center!important;
}
#view-database .db-configuration-actions .db-action strong{
  font-size:11px!important;
  line-height:1.2!important;
}
#view-database .db-configuration-actions .db-action:disabled{
  opacity:.36!important;
  filter:saturate(.28)!important;
  box-shadow:none!important;
  background:rgba(245,248,250,.58)!important;
}
@media(max-width:1120px){
  #view-database .db-configuration-actions{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:620px){
  #view-database .db-configuration-card{padding:16px!important}
  #view-database .db-configuration-actions{grid-template-columns:1fr!important}
}


/* AESST DAS 4.15.2 · vertically balanced Database workspace + schematic configuration card */
.config-content{display:flex!important;flex-direction:column!important}
.config-content>.app-content-inner{flex:1;min-height:100%;display:flex;flex-direction:column}
#view-database:not([hidden]){flex:1;width:100%;display:flex!important;align-items:center;justify-content:center;padding:14px 0 18px}
#view-database .database-hero{width:min(1380px,100%);margin:auto!important;grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr)!important;align-items:stretch!important;gap:14px!important}
#view-database .db-status-card,#view-database .db-configuration-card{min-height:0!important;border-radius:24px!important;border:1px solid rgba(255,255,255,.82)!important;background:rgba(247,252,255,.66)!important;box-shadow:0 14px 34px rgba(42,79,111,.08),inset 0 1px 0 rgba(255,255,255,.94)!important;}
#view-database .db-configuration-card{padding:18px!important;justify-content:center!important}
#view-database .db-configuration-card>h2{margin:0 0 13px!important;font-size:17px!important}
#view-database .db-default-location{background:rgba(255,255,255,.50)!important;border-radius:13px!important}
#view-database .db-configuration-actions{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:9px!important;margin-top:12px!important}
#view-database .db-configuration-actions .db-action{min-height:76px!important;border-radius:14px!important;background:rgba(255,255,255,.48)!important;box-shadow:none!important;transform:none!important}
#view-database .db-configuration-actions .db-action:hover{transform:none!important;background:rgba(255,255,255,.72)!important;border-color:rgba(86,146,190,.22)!important}
#view-database .db-configuration-actions .db-action.connected{background:rgba(218,245,237,.62)!important;border-color:rgba(38,153,115,.20)!important}
#config-dock .dock-item:hover{transform:none!important;color:var(--dock-accent,var(--blue))!important;background:color-mix(in srgb,var(--dock-soft,rgba(21,119,212,.13)) 70%,rgba(255,255,255,.65))!important;box-shadow:none!important}
#config-dock .dock-item.active{transform:none!important;color:var(--dock-accent,var(--blue))!important;background:color-mix(in srgb,var(--dock-soft,rgba(21,119,212,.13)) 84%,rgba(255,255,255,.72))!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.94),0 5px 14px color-mix(in srgb,var(--dock-accent,var(--blue)) 10%,transparent)!important}
@media(max-width:1000px){#view-database:not([hidden]){align-items:flex-start}#view-database .database-hero{grid-template-columns:1fr!important}.config-content>.app-content-inner{min-height:auto}}
@media(max-width:620px){#view-database .db-configuration-actions{grid-template-columns:1fr!important}}


/* AESST DAS 4.15.3 · Configuration dock is neutral until a user click */
#config-dock .dock-item:not(.active):not(:hover){background:transparent!important;background-image:none!important;color:#557086!important;box-shadow:none!important}

/* AESST DAS 4.15.5 database symmetry + connected action state */
#view-database .db-symmetric-pair{grid-template-columns:repeat(2,minmax(0,1fr))!important;align-items:stretch!important;grid-auto-rows:1fr!important}
#view-database .db-symmetric-pair>.db-status-card,#view-database .db-symmetric-pair>.db-configuration-card{height:100%!important;min-height:0!important;margin:0!important;align-self:stretch!important}
#view-database .db-configuration-card{display:flex!important;flex-direction:column!important;justify-content:center!important}
#view-database .db-configuration-actions .db-action.state-highlight,#view-database .db-configuration-actions .db-action.connected{background:linear-gradient(145deg,rgba(217,246,238,.84),rgba(234,250,246,.66))!important;border-color:rgba(35,151,113,.30)!important;color:#176f58!important;box-shadow:0 9px 20px rgba(35,151,113,.09),inset 0 1px 0 rgba(255,255,255,.95)!important}
#view-database .db-configuration-actions .db-action.state-highlight:disabled,#view-database .db-configuration-actions .db-action.connected:disabled{opacity:.78!important;filter:saturate(.92)!important}
@media(max-width:1120px){#view-database .db-symmetric-pair{grid-template-columns:1fr!important;grid-auto-rows:auto!important}}


/* AESST DAS 4.15.6 · balanced database configuration stage */
#view-database .database-balanced-stage.db-symmetric-pair{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  grid-template-rows:1fr!important;
  align-items:stretch!important;
  gap:18px!important;
  width:min(1380px,100%)!important;
}
#view-database .database-balanced-stage.db-symmetric-pair>.db-status-card,
#view-database .database-balanced-stage.db-symmetric-pair>.db-configuration-card{
  min-width:0!important;
  height:auto!important;
  min-height:510px!important;
  align-self:stretch!important;
  padding:22px!important;
  justify-content:flex-start!important;
  border-radius:26px!important;
}
#view-database .db-configuration-card>h2{margin:2px 0 18px!important;font-size:19px!important}
#view-database .db-default-location{margin:0!important;min-height:64px!important}
#view-database .db-configuration-actions{margin-top:18px!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important}
#view-database .db-configuration-actions .db-action{min-height:96px!important;cursor:pointer!important}
#view-database .db-configuration-actions .db-action.connected,
#view-database .db-configuration-actions .db-action.state-highlight{cursor:pointer!important;pointer-events:auto!important}
#view-database .db-configuration-actions .db-action:disabled{cursor:not-allowed!important;pointer-events:auto!important}
@media(max-width:1000px){
  #view-database .database-balanced-stage.db-symmetric-pair{grid-template-columns:1fr!important;grid-template-rows:auto!important}
  #view-database .database-balanced-stage.db-symmetric-pair>.db-status-card,
  #view-database .database-balanced-stage.db-symmetric-pair>.db-configuration-card{min-height:0!important}
}

/* 4.15.6 balanced database-stage alias used by the runtime layout. */
#view-database .db-balanced-stage{width:min(1320px,100%);margin-inline:auto}

/* AESST DAS 4.16.0 · SuperAdmin user/security workspace */
.user-admin-list{display:grid;gap:8px;margin-top:10px}.user-admin-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px!important;border-radius:15px!important;background:rgba(255,255,255,.58)!important}.user-admin-row>div:first-child{display:grid;gap:3px}.user-admin-row strong{font-size:10px;color:#1d3b52}.user-admin-row small{font-size:8px;color:#6a8296}.user-admin-row>.actions{display:flex;gap:6px;flex-wrap:wrap}.user-admin-row>span{font-size:8px;color:#60798e}.settings-grid:has(> input.touch-field){display:grid;grid-template-columns:1.2fr 1.2fr .8fr auto;gap:8px;align-items:end}
#view-security>.settings-card{margin-bottom:10px}.access-denied-card{max-width:720px;margin:60px auto;padding:28px!important;text-align:center}.access-denied-card .actions{justify-content:center;margin-top:16px}
@media(max-width:850px){.settings-grid:has(> input.touch-field){grid-template-columns:1fr 1fr}.user-admin-row{align-items:flex-start;flex-direction:column}.user-admin-row>.actions{width:100%}}

/* AESST DAS 4.19.0 — app layout convergence */
*{box-sizing:border-box}body{padding-bottom:94px!important;color:var(--adq-text-primary)!important}.app-content-inner,.service-main,.protocol-grid{max-width:1780px;margin-inline:auto}.config-topbar,.service-topbar,.protocol-header{margin:10px 14px 0!important;border-radius:20px!important}.topbar-inner,.service-topbar-inner{min-height:70px!important;padding:10px 14px!important}.settings-grid,.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px 14px!important}.field,label{min-width:0}.card-pad,.studio-panel,.config-card{padding:16px!important}.section-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.section-head h2,.section-head h3{margin:0 0 4px}.section-head p{margin:0}.metric-grid{gap:12px!important}.metric-card{border-radius:18px!important}.metric-icon{width:32px!important;height:32px!important;border-radius:11px!important;font-size:0!important}.metric-icon svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8}.modal{border-radius:var(--adq-radius-modal)!important}.technical-input,.list-surface,.trace-table-wrap,.latest-response,.modbus-result{border-radius:16px!important;background:var(--adq-technical-bg)!important;color:var(--adq-technical-ink)!important}.compact-add,.compact-danger{min-height:36px!important}.protocol-grid{gap:14px!important;padding:14px!important}.studio-panel{border-radius:20px!important}.trace-table{font-family:ui-monospace,SFMono-Regular,Consolas,monospace}.command-format{display:flex;gap:6px}.mode-button.active{background:var(--adq-accent-soft);color:var(--adq-accent-strong)}


/* Current white/blue compatibility layer. */

.configuration-app{
  --cfg-blue:#1877f2;--cfg-blue-deep:#0b5fcc;--cfg-ink:#172b3a;--cfg-muted:#62788c;
  --cfg-line:rgba(64,112,151,.16);--cfg-surface:rgba(255,255,255,.78);--cfg-soft:rgba(246,250,255,.72);
  background:linear-gradient(145deg,#eef5fb 0%,#f7faff 46%,#eaf3fb 100%)!important;color:var(--cfg-ink)!important;
}
.configuration-app:before{content:"";position:fixed;inset:0;pointer-events:none;background:radial-gradient(circle at 14% 5%,rgba(24,119,242,.11),transparent 32%),radial-gradient(circle at 88% 18%,rgba(65,188,171,.07),transparent 29%)}
.configuration-app .config-topbar{position:sticky;top:8px;z-index:80;width:min(1500px,calc(100% - 24px));margin:8px auto 0;border:1px solid rgba(255,255,255,.82);border-radius:17px;background:rgba(255,255,255,.76);box-shadow:0 9px 28px rgba(36,73,108,.09),inset 0 1px 0 #fff;}
.configuration-app .topbar-inner{min-height:62px;padding:9px 14px!important}.configuration-app .topbar-copy{gap:1px}.configuration-app .topbar-copy .eyebrow{font-size:8px;letter-spacing:.09em;color:#668096}.configuration-app #section-title{font-size:17px;line-height:1.2}.configuration-app #section-subtitle{font-size:10px;color:var(--cfg-muted)}
.configuration-app .app-content{padding:14px 16px 94px!important}.configuration-app .app-content-inner{width:min(1460px,100%)!important;margin:auto}.configuration-app .page-view{width:100%}
.configuration-app .station-vertical-stack{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px!important;align-items:start}.configuration-app .station-vertical-stack>.timebase-card{grid-column:1/-1}
.configuration-app .settings-card,.configuration-app .workspace-step,.configuration-app .configuration-shell,.configuration-app .sub-card{padding:15px!important;border:1px solid var(--cfg-line)!important;border-radius:17px!important;background:var(--cfg-surface)!important;box-shadow:0 8px 24px rgba(34,70,104,.07),inset 0 1px 0 rgba(255,255,255,.94)!important;}
.configuration-app .settings-card>h2,.configuration-app .workspace-step>h2{margin:0 0 3px!important;font-size:14px!important;line-height:1.3}.configuration-app .settings-card>p{margin:0 0 12px!important;font-size:9.5px!important;line-height:1.45;color:var(--cfg-muted)!important}
.configuration-app .form-grid,.configuration-app .settings-grid,.configuration-app .workspace-form-grid{gap:9px 10px!important}.configuration-app .field{gap:4px!important;margin:0!important}.configuration-app .field>span,.configuration-app label>span{font-size:8.5px!important;font-weight:750!important;color:#526d83!important}
.configuration-app .touch-field,.configuration-app .touch-select,.configuration-app .text-input,.configuration-app .choice-trigger{min-height:38px!important;height:38px;padding:7px 10px!important;border:1px solid rgba(67,111,147,.20)!important;border-radius:10px!important;background:rgba(255,255,255,.86)!important;color:var(--cfg-ink)!important;font-size:11px!important;box-shadow:inset 0 1px 2px rgba(42,72,99,.035)!important}
.configuration-app textarea.touch-field{height:auto!important;min-height:76px!important}.configuration-app .touch-field:focus,.configuration-app .touch-select:focus,.configuration-app .choice-trigger:focus{border-color:rgba(24,119,242,.55)!important;box-shadow:0 0 0 3px rgba(24,119,242,.11)!important;outline:none!important}
.configuration-app .touch-button{min-height:36px!important;padding:7px 12px!important;border-radius:10px!important;font-size:10px!important;font-weight:750!important}.configuration-app .touch-button.primary{background:linear-gradient(180deg,#2682f5,#1877f2)!important;border-color:#1269da!important;color:#fff!important;box-shadow:0 5px 13px rgba(24,119,242,.18)!important}
.configuration-app .inline-container-save-row,.configuration-app .page-local-save-row{margin-top:12px!important;padding-top:11px!important;border-top:1px solid rgba(75,118,153,.12)!important;display:flex!important;justify-content:flex-end!important}
.configuration-app .reporting-storage-row{display:grid!important;grid-template-columns:minmax(170px,.6fr) minmax(220px,1fr);align-items:end;gap:12px!important;margin:0 0 12px!important;padding:11px!important;border-radius:13px!important;background:rgba(240,247,254,.72)!important}.configuration-app .reporting-storage-row h3{margin:0 0 8px!important;font-size:11px!important}
.configuration-app .timebase-toggle-grid{display:grid!important;grid-template-columns:repeat(4,minmax(120px,1fr))!important;gap:8px!important}.configuration-app .standard-timebase-tile{min-height:48px!important;padding:8px 10px!important;border:1px solid var(--cfg-line)!important;border-radius:12px!important;background:rgba(255,255,255,.62)!important}.configuration-app .standard-timebase-tile.active{border-color:rgba(24,119,242,.30)!important;background:rgba(24,119,242,.075)!important}.configuration-app .timebase-toggle-copy strong{font-size:10px!important}.configuration-app .timebase-toggle-copy small{font-size:8px!important}
.configuration-app .custom-timebase-head{margin-top:12px!important;padding-top:10px!important;border-top:1px solid rgba(75,118,153,.12)!important}.configuration-app .custom-timebase-list{gap:7px!important}.configuration-app .custom-timebase-row{grid-template-columns:minmax(160px,1fr) minmax(120px,.5fr) 34px!important;gap:8px!important;padding:8px!important;border-radius:12px!important;background:rgba(246,250,255,.72)!important}
.configuration-app .dock-wrap{bottom:10px!important}.configuration-app .dock{padding:5px!important;border:1px solid rgba(255,255,255,.86)!important;border-radius:17px!important;background:rgba(255,255,255,.80)!important;box-shadow:0 12px 32px rgba(28,62,94,.15)!important;}.configuration-app .dock-item{min-width:72px!important;min-height:48px!important;padding:5px 9px!important;border-radius:12px!important}.configuration-app .dock-item .icon{width:19px!important;height:19px!important}.configuration-app .dock-item .label{font-size:8px!important}.configuration-app .dock-item.active{background:rgba(24,119,242,.11)!important;color:var(--cfg-blue)!important}
@media(max-width:900px){.configuration-app .station-vertical-stack{grid-template-columns:1fr}.configuration-app .station-vertical-stack>.timebase-card{grid-column:auto}.configuration-app .timebase-toggle-grid{grid-template-columns:repeat(2,minmax(120px,1fr))!important}}
@media(max-width:560px){.configuration-app .config-topbar{width:calc(100% - 14px)}.configuration-app .app-content{padding-inline:9px!important}.configuration-app .timebase-toggle-grid{grid-template-columns:1fr!important}.configuration-app .reporting-storage-row{grid-template-columns:1fr}.configuration-app #section-subtitle,.configuration-app .topbar-copy .eyebrow{display:none}.configuration-app .dock-item{min-width:54px!important}}


/* AESST DAS Configuration standard theme. */
.configuration-app{
  --cfg-blue:var(--adq-ui-blue);
  --cfg-blue-deep:var(--adq-ui-blue-strong);
  --cfg-ink:var(--adq-ui-ink);
  --cfg-muted:var(--adq-ui-muted);
  --cfg-line:var(--adq-ui-line);
  --cfg-surface:var(--adq-surface);
  min-height:100vh;
}
.configuration-app .config-topbar{position:sticky!important;top:8px!important;z-index:80!important;width:min(1480px,calc(100vw - 32px))!important;margin:8px auto 0!important;padding:0!important;border-radius:var(--adq-ui-radius-lg)!important;background:transparent!important;box-shadow:none!important;border:0!important}
.configuration-app .topbar-inner{min-height:62px!important;padding:10px 14px!important;border-radius:var(--adq-ui-radius-lg)!important;display:flex!important;align-items:center!important;gap:12px!important}
.configuration-app .topbar-inner img{width:36px!important;height:36px!important;border-radius:12px!important;box-shadow:0 8px 18px rgba(24,119,242,.18)!important}
.configuration-app .topbar-copy{display:grid!important;gap:1px!important;min-width:0!important;flex:1 1 auto!important}
.configuration-app .topbar-copy .eyebrow{font-size:8px!important;line-height:1.15!important;letter-spacing:.09em!important;font-weight:850!important;color:#496e8d!important;text-transform:uppercase!important}
.configuration-app #section-title{font-size:17px!important;line-height:1.15!important;letter-spacing:-.02em!important;color:var(--cfg-ink)!important;margin:0!important}
.configuration-app #section-subtitle{font-size:10px!important;line-height:1.35!important;color:var(--cfg-muted)!important}
.configuration-app .topbar-actions{margin-left:auto!important}.configuration-app .account-control{min-width:128px!important;padding:9px 14px!important;border-radius:15px!important;background:rgba(255,255,255,.70)!important;border:1px solid var(--cfg-line)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.88)!important;text-align:center!important}
.configuration-app .account-identity strong{display:block!important;font-size:13px!important}.configuration-app .account-identity span{display:block!important;font-size:10px!important;color:var(--cfg-muted)!important;margin-top:2px!important}
.configuration-app .app-content{padding:14px 16px 96px!important}.configuration-app .app-content-inner{width:min(1480px,100%)!important;margin:0 auto!important}.configuration-app .page-view{width:100%!important}
.configuration-app .station-vertical-stack{display:grid!important;grid-template-columns:minmax(420px,.92fr) minmax(520px,1.08fr)!important;gap:14px!important;align-items:start!important}
.configuration-app .station-vertical-stack>.settings-card{height:auto!important;min-height:unset!important;margin:0!important;align-self:start!important;width:100%!important;box-sizing:border-box!important;overflow:visible!important}
.configuration-app .station-vertical-stack>.timebase-card{grid-column:1/-1!important;min-height:unset!important}
.configuration-app .settings-card,.configuration-app .workspace-step,.configuration-app .configuration-shell,.configuration-app .sub-card{padding:16px!important;border-radius:var(--adq-ui-radius)!important;border-color:rgba(255,255,255,.88)!important;background:var(--adq-surface)!important;box-shadow:var(--adq-ui-shadow)!important}
.configuration-app .settings-card>h2,.configuration-app .workspace-step>h2{font-size:15px!important;line-height:1.25!important;letter-spacing:-.015em!important;margin:0 0 4px!important;color:var(--cfg-ink)!important}.configuration-app .settings-card>p{margin:0 0 13px!important;font-size:10px!important;line-height:1.45!important;color:var(--cfg-muted)!important}
.configuration-app .station-vertical-stack>.settings-card:not(.timebase-card) .form-grid{display:grid!important;grid-template-columns:repeat(3,minmax(155px,1fr))!important;gap:10px 12px!important;align-items:end!important}
.configuration-app .station-vertical-stack>.settings-card:not(.timebase-card) .field{min-width:0!important;margin:0!important;gap:4px!important}.configuration-app .station-vertical-stack>.settings-card:not(.timebase-card) .touch-field,.configuration-app .station-vertical-stack>.settings-card:not(.timebase-card) .touch-select,.configuration-app .station-vertical-stack>.settings-card:not(.timebase-card) .choice-trigger{width:100%!important;min-width:0!important;min-height:39px!important;height:39px!important;padding:0 12px!important;font-size:12px!important;border-radius:12px!important}
.configuration-app .central-sync-card .form-grid{grid-template-columns:repeat(3,minmax(150px,1fr))!important;gap:10px 12px!important}.configuration-app .central-sync-card .toggle-row{min-height:52px!important;padding:8px 10px!important;border-radius:14px!important;background:rgba(255,255,255,.58)!important;border:1px solid var(--cfg-line)!important}.configuration-app .toggle-copy strong{font-size:12px!important;line-height:1.1!important}.configuration-app .toggle-copy small{font-size:9px!important;color:var(--cfg-muted)!important;margin-top:3px!important}
.configuration-app .inline-container-save-row,.configuration-app .page-local-save-row{display:flex!important;justify-content:flex-end!important;align-items:center!important;gap:8px!important;margin-top:14px!important;padding-top:12px!important;border-top:1px solid rgba(75,118,153,.12)!important}.configuration-app .inline-container-save-row .local-save{min-width:160px!important;height:42px!important;border-radius:13px!important}
.configuration-app .timebase-card{padding-bottom:14px!important}.configuration-app .reporting-storage-row{display:grid!important;grid-template-columns:minmax(180px,.35fr) minmax(220px,360px) 1fr!important;align-items:end!important;gap:12px!important;margin:0 0 12px!important;padding:12px!important;border-radius:14px!important;background:rgba(255,255,255,.54)!important;border:1px solid var(--cfg-line)!important}.configuration-app .reporting-storage-row h3{margin:0!important;font-size:11px!important;line-height:1.2!important;color:var(--cfg-ink)!important}.configuration-app .reporting-storage-row .field{max-width:360px!important;width:100%!important}
.configuration-app .timebase-toggle-grid{display:grid!important;grid-template-columns:repeat(4,minmax(180px,1fr))!important;gap:10px!important}.configuration-app .standard-timebase-tile{min-height:52px!important;padding:8px 10px!important;border-radius:14px!important;border:1px solid var(--cfg-line)!important;background:rgba(255,255,255,.56)!important;background-image:none!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.78)!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:10px!important;transform:none!important}.configuration-app .standard-timebase-tile:hover{border-color:var(--adq-ui-blue-line)!important;box-shadow:0 8px 18px rgba(24,119,242,.08),inset 0 1px 0 rgba(255,255,255,.82)!important}.configuration-app .standard-timebase-tile.active{background:rgba(24,119,242,.085)!important;border-color:rgba(24,119,242,.28)!important}.configuration-app .timebase-toggle-copy strong{font-size:11px!important;line-height:1.1!important;color:var(--cfg-ink)!important}.configuration-app .timebase-toggle-copy small{font-size:8px!important;color:var(--cfg-muted)!important;margin-top:4px!important}.configuration-app .standard-timebase-tile .toggle-switch{margin-left:auto!important;transform:none!important;flex:0 0 auto!important}
.configuration-app .custom-timebase-head{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:10px!important;margin-top:12px!important;padding-top:12px!important;border-top:1px solid rgba(75,118,153,.12)!important;font-size:10px!important;color:var(--cfg-muted)!important;font-weight:800!important}.configuration-app .custom-timebase-list{display:grid!important;gap:8px!important;margin-top:8px!important}.configuration-app .custom-timebase-empty{font-size:9px!important;color:var(--cfg-muted)!important;padding:4px 0!important}.configuration-app .custom-timebase-row{grid-template-columns:minmax(180px,1fr) minmax(120px,220px) 36px!important;gap:8px!important;padding:8px!important;border-radius:13px!important;background:rgba(255,255,255,.52)!important;border:1px solid var(--cfg-line)!important}.configuration-app .compact-add{min-height:32px!important;height:32px!important;padding:0 11px!important;font-size:10px!important}.configuration-app .compact-delete{width:34px!important;height:34px!important;min-width:34px!important;border-radius:11px!important}
.configuration-app .dock-wrap{bottom:12px!important;left:50%!important;transform:translateX(-50%)!important;max-width:calc(100vw - 26px)!important;width:auto!important;background:transparent!important;border:0!important;box-shadow:none!important;padding:0!important}.configuration-app .dock{min-height:58px!important;height:58px!important;padding:6px!important;gap:5px!important;border-radius:24px!important;background:rgba(255,255,255,.76)!important;border:1px solid rgba(255,255,255,.88)!important;box-shadow:0 16px 42px rgba(29,64,96,.18),inset 0 1px 0 rgba(255,255,255,.92)!important;}.configuration-app .dock-item{min-width:78px!important;height:46px!important;min-height:46px!important;padding:5px 10px!important;border-radius:17px!important;background:transparent!important;color:#516d84!important;border:0!important;box-shadow:none!important;display:grid!important;grid-template-rows:22px 13px!important;place-items:center!important;gap:2px!important}.configuration-app .dock-item:hover{background:rgba(24,119,242,.07)!important;color:var(--cfg-blue)!important;transform:translateY(-2px)!important}.configuration-app .dock-item.active{background:rgba(24,119,242,.12)!important;color:var(--cfg-blue)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.66),0 7px 18px rgba(24,119,242,.12)!important}.configuration-app .dock-item .icon,.configuration-app .dock-item .icon svg{width:19px!important;height:19px!important}.configuration-app .dock-item .label{font-size:9px!important;font-weight:750!important;line-height:1!important;white-space:nowrap!important}
.configuration-app .instrument-toolbar{margin-bottom:10px!important;gap:10px!important}.configuration-app .instrument-list,.configuration-app .parameter-list{gap:10px!important}.configuration-app .instrument-card,.configuration-app .parameter-card{border-radius:var(--adq-ui-radius)!important}.configuration-app .instrument-summary{padding:12px 14px!important}.configuration-app .instrument-body{padding:14px!important}.configuration-app .sub-card{margin-top:10px!important}.configuration-app .workspace-form-grid,.configuration-app .identity-workspace-grid,.configuration-app .parameter-primary-grid,.configuration-app .alarm-settings-grid,.configuration-app .modbus-workspace-grid{gap:10px 12px!important}
@media(max-width:1180px){.configuration-app .station-vertical-stack{grid-template-columns:1fr!important}.configuration-app .station-vertical-stack>.timebase-card{grid-column:auto!important}.configuration-app .timebase-toggle-grid{grid-template-columns:repeat(3,minmax(160px,1fr))!important}.configuration-app .reporting-storage-row{grid-template-columns:minmax(160px,.4fr) minmax(220px,360px)!important}}
@media(max-width:820px){.configuration-app .config-topbar{width:calc(100vw - 20px)!important}.configuration-app .topbar-inner{align-items:flex-start!important;flex-wrap:wrap!important}.configuration-app .topbar-actions{width:100%!important}.configuration-app .account-control{margin-left:auto!important}.configuration-app .station-vertical-stack>.settings-card:not(.timebase-card) .form-grid,.configuration-app .central-sync-card .form-grid{grid-template-columns:repeat(2,minmax(150px,1fr))!important}.configuration-app .timebase-toggle-grid{grid-template-columns:repeat(2,minmax(145px,1fr))!important}.configuration-app .reporting-storage-row{grid-template-columns:1fr!important}.configuration-app .dock{max-width:calc(100vw - 24px)!important;overflow-x:auto!important}.configuration-app .dock-item{min-width:66px!important}}
@media(max-width:560px){.configuration-app .app-content{padding:10px 10px 92px!important}.configuration-app .topbar-copy .eyebrow,.configuration-app #section-subtitle{display:none!important}.configuration-app .station-vertical-stack>.settings-card:not(.timebase-card) .form-grid,.configuration-app .central-sync-card .form-grid,.configuration-app .timebase-toggle-grid{grid-template-columns:1fr!important}.configuration-app .dock-item .label{display:none!important}.configuration-app .dock-item{min-width:48px!important;grid-template-rows:1fr!important}.configuration-app .dock{height:54px!important;min-height:54px!important}}
.configuration-app .serial-choice-line{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:8px!important;align-items:center!important;min-width:0!important}.configuration-app .serial-choice-line .choice-select{min-width:0!important;width:100%!important}.configuration-app .serial-choice-line .choice-trigger{min-width:0!important;width:100%!important}.configuration-app .serial-refresh{height:39px!important;min-height:39px!important;white-space:nowrap!important;padding-inline:12px!important}.configuration-app .field-key-pairing-token{min-width:0!important}.configuration-app .field-key-pairing-token .touch-field{font-family:"Cascadia Mono",Consolas,monospace!important;font-size:11px!important;letter-spacing:-.02em!important}

/* Secure credential controls. */
.configuration-app .sensitive-value-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:7px;align-items:center}
.configuration-app .sensitive-value{font-family:"Cascadia Mono",Consolas,monospace!important;letter-spacing:.02em!important}
.configuration-app .password-reset-modal{width:min(460px,calc(100vw - 28px));padding:20px!important}
.configuration-app .password-reset-modal .auth-fields{display:grid;gap:9px;margin:14px 0}
@media(max-width:620px){.configuration-app .sensitive-value-row{grid-template-columns:1fr 1fr}.configuration-app .sensitive-value{grid-column:1/-1}}

/* AESST DAS 4.20.6 — compact tablet Configuration authority. */
.configuration-app{--cfg-compact-control:34px;--cfg-compact-gap:8px;--cfg-compact-card-pad:11px}
.configuration-app .config-topbar{width:calc(100% - 18px)!important;margin:7px auto 0!important;padding:0!important;top:6px!important}
.configuration-app .topbar-inner{min-height:54px!important;padding:7px 10px!important;border-radius:16px!important}
.configuration-app .topbar-inner>img{width:32px!important;height:32px!important;border-radius:10px!important}
.configuration-app .topbar-copy strong{font-size:14px!important}.configuration-app .topbar-copy small{font-size:8px!important}.configuration-app .topbar-copy .eyebrow{font-size:7px!important}
.configuration-app .topbar-actions{gap:7px!important}.configuration-app .account-control{min-height:36px!important;padding:5px 9px!important;border-radius:12px!important}.configuration-app .account-identity strong{font-size:10px!important}.configuration-app .account-identity span{font-size:8px!important}
.configuration-app .app-content{padding:8px 10px 76px!important}.configuration-app .app-content-inner{width:min(1540px,100%)!important}
.configuration-app .station-vertical-stack{display:grid!important;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr)!important;gap:var(--cfg-compact-gap)!important;align-items:start!important}
.configuration-app .station-vertical-stack>.settings-card{height:auto!important;min-height:0!important;align-self:start!important;margin:0!important;padding:var(--cfg-compact-card-pad)!important}
.configuration-app .station-vertical-stack>.timebase-card{grid-column:1/-1!important;width:100%!important}
.configuration-app .settings-card>h2{font-size:13px!important;margin:0 0 2px!important}.configuration-app .settings-card>p{font-size:8.5px!important;margin:0 0 8px!important;line-height:1.3!important}
.configuration-app .station-vertical-stack>.settings-card:not(.timebase-card) .form-grid{gap:6px 8px!important}
.configuration-app .central-sync-card .form-grid{grid-template-columns:repeat(3,minmax(130px,1fr))!important;gap:6px 8px!important}
.configuration-app .station-vertical-stack>.settings-card:not(.timebase-card) .touch-field,.configuration-app .station-vertical-stack>.settings-card:not(.timebase-card) .touch-select,.configuration-app .station-vertical-stack>.settings-card:not(.timebase-card) .choice-trigger{min-height:var(--cfg-compact-control)!important;height:var(--cfg-compact-control)!important;padding:0 9px!important;font-size:10.5px!important;border-radius:10px!important}
.configuration-app .central-sync-card .toggle-row{min-height:44px!important;padding:6px 8px!important;border-radius:11px!important}.configuration-app .toggle-copy strong{font-size:10.5px!important}.configuration-app .toggle-copy small{font-size:8px!important;margin-top:2px!important}
.configuration-app .inline-container-save-row,.configuration-app .page-local-save-row{margin-top:8px!important;padding-top:8px!important;gap:6px!important}.configuration-app .inline-container-save-row .local-save{min-width:136px!important;height:32px!important;min-height:32px!important;border-radius:10px!important}
.configuration-app .reporting-storage-row{grid-template-columns:minmax(150px,.32fr) minmax(190px,300px) 1fr!important;gap:8px!important;margin:0 0 8px!important;padding:8px 9px!important;border-radius:11px!important}.configuration-app .reporting-storage-row h3{font-size:9.5px!important}.configuration-app .reporting-storage-row .field{max-width:300px!important}
.configuration-app .timebase-toggle-grid{grid-template-columns:repeat(4,minmax(150px,1fr))!important;gap:7px!important}.configuration-app .standard-timebase-tile{min-height:44px!important;padding:6px 8px!important;border-radius:11px!important;gap:7px!important}.configuration-app .timebase-toggle-copy strong{font-size:9.5px!important}.configuration-app .timebase-toggle-copy small{font-size:7.5px!important;margin-top:2px!important}
.configuration-app .custom-timebase-head{margin-top:8px!important;padding-top:8px!important;font-size:8.5px!important}.configuration-app .custom-timebase-list{gap:6px!important;margin-top:6px!important}.configuration-app .custom-timebase-row{grid-template-columns:minmax(160px,1fr) minmax(100px,180px) 32px!important;gap:6px!important;padding:6px!important;border-radius:10px!important}.configuration-app .compact-delete{width:30px!important;height:30px!important;min-width:30px!important;border-radius:9px!important}.configuration-app .compact-add{height:30px!important;min-height:30px!important;font-size:9px!important}
.configuration-app .dock{height:62px!important;min-height:62px!important;padding:6px!important;border-radius:23px!important}.configuration-app .dock-item{height:50px!important;min-height:50px!important;min-width:70px!important;padding:4px 8px!important;border-radius:16px!important;grid-template-rows:20px 11px!important}.configuration-app .dock-item .icon,.configuration-app .dock-item .icon svg{width:18px!important;height:18px!important}.configuration-app .dock-item .label{font-size:8px!important}
.configuration-app .instrument-summary{padding:9px 10px!important}.configuration-app .instrument-body{padding:10px!important}.configuration-app .sub-card{padding:9px!important;margin-top:7px!important}.configuration-app .parameter-card summary{padding:7px 8px!important}.configuration-app .parameter-card .parameter-body{padding:8px!important}
@media(max-width:1100px){.configuration-app .station-vertical-stack{grid-template-columns:1fr!important}.configuration-app .station-vertical-stack>.timebase-card{grid-column:auto!important}.configuration-app .central-sync-card .form-grid{grid-template-columns:repeat(2,minmax(140px,1fr))!important}.configuration-app .timebase-toggle-grid{grid-template-columns:repeat(3,minmax(140px,1fr))!important}}
@media(max-width:720px){.configuration-app .central-sync-card .form-grid,.configuration-app .timebase-toggle-grid{grid-template-columns:repeat(2,minmax(130px,1fr))!important}.configuration-app .reporting-storage-row{grid-template-columns:1fr!important}.configuration-app .dock-item{min-width:58px!important}}


/* AESST DAS 4.20.6 — Station workspace three-card symmetry authority. */
@media(min-width:1181px){
  .configuration-app .station-vertical-stack{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;grid-auto-rows:1fr!important;gap:10px!important;align-items:stretch!important}
  .configuration-app .station-vertical-stack>.settings-card{height:100%!important;min-height:0!important;align-self:stretch!important;display:flex!important;flex-direction:column!important;width:100%!important}
  .configuration-app .station-vertical-stack>.timebase-card{grid-column:auto!important;width:100%!important}
  .configuration-app .station-identity-card .form-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:6px 8px!important}
  .configuration-app .central-sync-card .form-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:6px 8px!important}
  .configuration-app .timebase-toggle-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:6px!important}
  .configuration-app .reporting-storage-row{grid-template-columns:1fr!important;gap:5px!important;padding:7px 8px!important}
  .configuration-app .reporting-storage-row .field{max-width:none!important;width:100%!important}
  .configuration-app .station-vertical-stack>.settings-card .inline-container-save-row{margin-top:auto!important;padding-top:8px!important}
  .configuration-app .station-vertical-stack>.settings-card>p{min-height:22px!important}
  .configuration-app .central-sync-card .field-note{margin-top:6px!important;line-height:1.25!important}
}


/* AESST DAS 4.20.6 — centered Station workspace and overflow-safe three-card geometry. */
@media(min-width:1181px){
  .configuration-app #view-station:not([hidden]){display:grid!important;align-items:center!important;min-height:calc(100dvh - 154px)!important;padding:8px 0 14px!important;overflow:visible!important}
  .configuration-app #view-station .station-vertical-stack{width:100%!important;display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:12px!important;align-items:stretch!important;grid-auto-rows:1fr!important;margin:auto 0!important}
  .configuration-app #view-station .station-vertical-stack>.settings-card{min-width:0!important;width:100%!important;height:auto!important;min-height:clamp(500px,58dvh,580px)!important;max-width:100%!important;overflow:visible!important;padding:12px!important;display:flex!important;flex-direction:column!important}
  .configuration-app #view-station .station-vertical-stack>.settings-card .form-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:7px 9px!important;min-width:0!important}
  .configuration-app #view-station .field,.configuration-app #view-station .field>*{min-width:0!important;max-width:100%!important}
  .configuration-app #view-station input,.configuration-app #view-station select,.configuration-app #view-station .touch-field,.configuration-app #view-station .choice-select,.configuration-app #view-station .choice-trigger{width:100%!important;max-width:100%!important;min-width:0!important}
  .configuration-app #view-station .serial-choice-line{grid-template-columns:minmax(0,1fr) auto!important;min-width:0!important}
  .configuration-app #view-station .serial-refresh{max-width:96px!important;padding-inline:8px!important}
  .configuration-app #view-station .field-note{overflow-wrap:anywhere!important;word-break:break-word!important}
  .configuration-app #view-station .timebase-toggle-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:7px!important}
  .configuration-app #view-station .reporting-storage-row{grid-template-columns:1fr!important;gap:5px!important;padding:8px!important}
  .configuration-app #view-station .custom-timebase-list{min-height:0!important;overflow:auto!important}
  .configuration-app #view-station .inline-container-save-row{margin-top:auto!important;flex:0 0 auto!important}
}

/* AESST DAS 4.20.19 — aligned suite header and wider configuration dock. */
.configuration-app{--config-dock-width:720px}
.configuration-app .topbar-inner{display:flex!important;align-items:center!important;gap:14px!important;padding:9px 14px!important}
.configuration-app .suite-brand{padding-right:13px;border-right:1px solid rgba(83,123,155,.16)}
.configuration-app .topbar-context{display:grid;gap:1px;min-width:0;flex:1 1 auto}
.configuration-app .topbar-context #section-title{display:block;font-size:17px!important;line-height:1.15!important;letter-spacing:-.02em!important;color:var(--cfg-ink,#173047)!important;margin:0!important}
.configuration-app .topbar-context #section-subtitle{display:block;font-size:9px!important;line-height:1.3!important;color:var(--cfg-muted,#617d93)!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.configuration-app #config-dock{width:auto!important;max-width:calc(100vw - 18px)!important}
.configuration-app #config-dock .dock{width:min(var(--config-dock-width),calc(100vw - 18px))!important;gap:var(--adq-dock-item-gap)!important;padding-inline:8px!important}
.configuration-app #config-dock .dock-item{min-width:0!important;flex:1 1 0!important;color:#35556f!important}
.configuration-app #config-dock .dock-item.active{color:#0f70cf!important;background:rgba(216,237,255,.94)!important}
@media(max-width:760px){.configuration-app .suite-brand-copy{display:none}.configuration-app .suite-brand{padding-right:8px}.configuration-app .topbar-context #section-subtitle{display:none!important}.configuration-app{--config-dock-width:calc(100vw - 16px)}}

/* AESST DAS 4.20.19 — Instrument spacing, dropdown layering and Station section workspaces. */
.configuration-app .unified-instrument-form{gap:12px!important}
.configuration-app .unified-instrument-form>.workspace-step{
  margin:0!important;
  padding:14px!important;
  border:1px solid rgba(116,157,189,.18)!important;
  border-radius:18px!important;
  background:rgba(255,255,255,.72)!important;
  box-shadow:0 8px 22px rgba(42,79,108,.07),inset 0 1px 0 rgba(255,255,255,.94)!important;
  position:relative!important;
  overflow:visible!important;
}
.configuration-app .unified-instrument-form>.communication-symmetric-grid{z-index:40!important}
.configuration-app .unified-instrument-form>.identity-workspace-step{z-index:30!important}
.configuration-app .unified-instrument-form>.parameter-workspace-step{z-index:10!important}
.configuration-app .unified-instrument-form>.workspace-step:has(.choice-select.open){z-index:100!important}
.configuration-app .instrument-workspace-editor .choice-menu{
  z-index:1200!important;
  scrollbar-width:thin;
  scrollbar-color:rgba(47,132,198,.58) rgba(224,237,247,.42);
}
.configuration-app .instrument-workspace-editor .choice-menu::-webkit-scrollbar{width:8px;height:8px}
.configuration-app .instrument-workspace-editor .choice-menu::-webkit-scrollbar-track{background:rgba(224,237,247,.42);border-radius:999px}
.configuration-app .instrument-workspace-editor .choice-menu::-webkit-scrollbar-thumb{background:linear-gradient(180deg,rgba(74,157,219,.72),rgba(30,116,185,.72));border:2px solid rgba(248,252,255,.92);border-radius:999px}
.configuration-app .instrument-workspace-editor .choice-menu::-webkit-scrollbar-thumb:hover{background:rgba(25,107,176,.82)}

.configuration-app #view-station:not([hidden]){
  display:block!important;
  min-height:0!important;
  padding:4px 0 86px!important;
}
.configuration-app .station-config-launchers{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
  width:100%;
  margin:0 auto 14px;
}
.configuration-app .station-config-launcher{
  appearance:none;
  min-width:0;
  min-height:82px;
  padding:13px 14px;
  border:1px solid rgba(113,154,185,.18);
  border-radius:18px;
  background:rgba(255,255,255,.72);
  color:var(--cfg-ink);
  box-shadow:0 10px 26px rgba(37,74,105,.08),inset 0 1px 0 rgba(255,255,255,.94);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  text-align:left;
  cursor:pointer;
  transition:transform .14s var(--ease),border-color .14s,box-shadow .14s,background .14s;
}
.configuration-app .station-config-launcher:hover{transform:translateY(-1px);border-color:rgba(24,119,242,.28);box-shadow:0 14px 30px rgba(37,74,105,.11),inset 0 1px 0 rgba(255,255,255,.96)}
.configuration-app .station-config-launcher.active{background:rgba(224,241,255,.90);border-color:rgba(24,119,242,.34);box-shadow:0 14px 30px rgba(24,119,242,.12),inset 0 1px 0 rgba(255,255,255,.96)}
.configuration-app .station-config-launcher-copy{display:grid;gap:4px;min-width:0}
.configuration-app .station-config-launcher-copy strong{font-size:13px;line-height:1.2;color:var(--cfg-ink)}
.configuration-app .station-config-launcher-copy small{font-size:9px;line-height:1.35;color:var(--cfg-muted);white-space:normal}
.configuration-app .station-config-status{flex:0 0 auto;padding:5px 8px;border-radius:999px;background:rgba(105,128,148,.09);color:#6b8193;font-size:8px;font-weight:850;letter-spacing:.02em}
.configuration-app .station-config-status.configured{background:rgba(30,164,122,.11);color:#147c5e}
.configuration-app .station-config-panel{width:min(1060px,100%);margin:0 auto;position:relative;z-index:2}
.configuration-app .station-config-panel>.settings-card{width:100%!important;min-height:0!important;height:auto!important;margin:0!important;padding:16px!important;overflow:visible!important}
.configuration-app .station-config-panel>.settings-card .form-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:10px 12px!important}
.configuration-app .station-config-panel>.central-sync-card .form-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
.configuration-app .station-config-panel>.timebase-card .timebase-toggle-grid{grid-template-columns:repeat(4,minmax(145px,1fr))!important}
.configuration-app .station-config-panel .inline-container-save-row{margin-top:16px!important}
@media(max-width:1050px){
  .configuration-app .station-config-launchers{grid-template-columns:1fr}
  .configuration-app .station-config-panel>.settings-card .form-grid,.configuration-app .station-config-panel>.central-sync-card .form-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .configuration-app .station-config-panel>.timebase-card .timebase-toggle-grid{grid-template-columns:repeat(2,minmax(135px,1fr))!important}
}
@media(max-width:620px){
  .configuration-app .station-config-panel>.settings-card .form-grid,.configuration-app .station-config-panel>.central-sync-card .form-grid{grid-template-columns:1fr!important}
}

/* AESST DAS 4.20.19 — database-first configuration and rounded control authority. */
.configuration-app input:not([type=checkbox]):not([type=radio]),
.configuration-app select,
.configuration-app textarea,
.configuration-app .touch-field,
.configuration-app .touch-input,
.configuration-app .touch-select,
.configuration-app .text-input,
.configuration-app .choice-trigger,
.configuration-app .adq-select-trigger{
  border-radius:12px!important;
  clip-path:none!important;
}
.configuration-app input:not([type=checkbox]):not([type=radio]),
.configuration-app select,
.configuration-app textarea{
  border:1px solid rgba(67,111,147,.20)!important;
  background:rgba(255,255,255,.90)!important;
  box-shadow:inset 0 1px 2px rgba(42,72,99,.035)!important;
}
.configuration-app .field,
.configuration-app .form-grid>*{
  min-width:0!important;
}
.configuration-app .settings-card,
.configuration-app .sub-card,
.configuration-app .instrument-card,
.configuration-app .parameter-card,
.configuration-app .workspace-step{
  border-radius:18px!important;
}


/* AESST DAS 4.20.19 — Configuration dock + session chip authority. */
.configuration-app{--config-dock-height:68px}
.configuration-app #config-dock .dock{height:var(--config-dock-height)!important;min-height:var(--config-dock-height)!important}
.configuration-app .account-identity.session-user-chip{display:inline-flex!important;text-align:left!important}
.configuration-app #config-dock .dock-item:nth-child(1){--dock-accent:#1784f6}.configuration-app #config-dock .dock-item:nth-child(2){--dock-accent:#0ea5a8}.configuration-app #config-dock .dock-item:nth-child(3){--dock-accent:#8b5cf6}.configuration-app #config-dock .dock-item:nth-child(4){--dock-accent:#f59e0b}.configuration-app #config-dock .dock-item:nth-child(5){--dock-accent:#16a34a}
.configuration-app #config-dock .dock-item .icon{color:var(--dock-accent,#51738c)!important;background:color-mix(in srgb,var(--dock-accent,#51738c) 12%,#fff)!important;border-radius:10px!important}
.configuration-app #config-dock .dock-item.active .label,.configuration-app #config-dock .dock-item:hover .label{color:var(--dock-accent,#1877f2)!important}


/* AESST DAS 4.20.19 — Station save divider breathing room and unified session identity. */
.configuration-app .station-identity-card .inline-container-save-row{margin-top:22px!important;padding-top:14px!important}
.configuration-app .station-identity-card .form-grid{padding-bottom:3px!important}
.configuration-app .account-control{background:transparent!important;border:0!important;box-shadow:none!important;padding:0!important;min-width:0!important}
.configuration-app .account-identity.session-user-chip{min-width:0!important}

/* AESST DAS 4.20.19 — feature access, limits and scheduled export workspace. */
.feature-toggle-grid{display:grid;gap:9px;margin-top:10px}.feature-toggle-row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:11px 12px;border:1px solid rgba(72,128,169,.15);border-radius:16px;background:rgba(255,255,255,.72);box-shadow:inset 0 1px 0 rgba(255,255,255,.92),0 7px 18px rgba(41,79,108,.05)}.feature-toggle-row>div{min-width:0}.feature-toggle-row strong{display:block;font-size:11px;color:#17364d}.feature-toggle-row small{display:block;margin-top:3px;font-size:8.5px;color:#70879a;line-height:1.35}.export-page-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin:3px 4px 12px}.export-page-heading h2{margin:2px 0 3px;font-size:22px}.export-page-heading p{margin:0}.export-job-stack{display:grid;gap:12px}.export-job-card{padding:16px!important}.export-settings-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:10px!important}.export-enabled-field{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:58px;padding:8px 10px;border:1px solid rgba(75,127,164,.15);border-radius:13px;background:rgba(248,252,255,.74);font-size:9px;font-weight:800;color:#4d6b82}.export-folder-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:end;margin:10px 0 12px}.export-folder-row .field{min-width:0}.export-parameter-list{display:grid;gap:7px;margin:8px 0 12px}.export-parameter-row{display:grid;grid-template-columns:22px minmax(0,1fr) auto;align-items:center;gap:9px;padding:8px 10px;border:1px solid rgba(76,127,164,.13);border-radius:13px;background:rgba(255,255,255,.64)}.export-parameter-row.selected{border-color:rgba(24,119,242,.24);background:rgba(231,244,255,.72);box-shadow:inset 3px 0 0 rgba(24,119,242,.68)}.export-parameter-row input[type=checkbox]{width:16px;height:16px;accent-color:#1877f2}.export-parameter-copy strong{display:block;font-size:10px;color:#18374f}.export-parameter-copy small{display:block;margin-top:2px;font-size:8px;color:#748a9d}.export-order-actions{display:flex;gap:5px}.export-order-actions .touch-button{min-width:30px!important;width:30px!important;height:30px!important;padding:0!important}.alarm-settings-grid{grid-template-columns:repeat(5,minmax(0,1fr))!important}.standalone-alarm-editor{max-width:none!important}@media(max-width:1100px){.export-settings-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.alarm-settings-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}@media(max-width:720px){.export-page-heading{align-items:stretch;flex-direction:column}.export-page-heading .touch-button{align-self:flex-start}.export-settings-grid,.alarm-settings-grid{grid-template-columns:1fr!important}.export-folder-row{grid-template-columns:1fr}.feature-toggle-row{align-items:flex-start}}

/* AESST DAS 4.20.19 — Export-aware dock spacing and feature accents. */
.configuration-app{--config-dock-width:840px}
.configuration-app #config-dock .dock-item:nth-child(6){--dock-accent:#db2777}
.configuration-app #config-dock .dock-item:nth-child(7){--dock-accent:#0891b2}
@media(max-width:900px){.configuration-app{--config-dock-width:calc(100vw - 16px)}}


/* AESST DAS 4.20.19 — dock-safe Configuration scrolling and centered taller dock. */
.configuration-app{--suite-dock-height:70px;--config-dock-clearance:132px}
.configuration-app .app-content{padding-bottom:var(--config-dock-clearance)!important}
.configuration-app .app-content-inner{padding-bottom:18px!important}
.configuration-app .page-view:not([hidden]){padding-bottom:18px!important}
.configuration-app #config-dock{bottom:10px!important}
.configuration-app #config-dock .dock{height:var(--suite-dock-height)!important;min-height:var(--suite-dock-height)!important;padding:8px!important;align-items:center!important}
.configuration-app #config-dock .dock-item{height:54px!important;min-height:54px!important;align-self:center!important;justify-content:center!important}

/* AESST DAS 4.20.19 — dock-safe Instrument scrolling + inherited diagnostic communication. */
#view-instruments{overflow:visible!important;min-height:0!important}.instrument-workspace-v2{min-height:0!important;height:auto!important;overflow:visible!important;padding-bottom:132px!important}.instrument-workspace-editor{overflow:visible!important;margin-bottom:8px!important}.config-content,.app-content-inner{min-height:0!important;overflow:visible!important}.inherited-communication-summary{grid-column:1/-1;display:grid;gap:8px;padding:10px;border:1px solid rgba(24,119,242,.16);border-radius:14px;background:rgba(24,119,242,.055)}.inherited-communication-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.inherited-communication-item{display:grid;gap:2px;padding:7px 9px;border-radius:10px;background:rgba(255,255,255,.72);border:1px solid rgba(75,115,150,.10)}.inherited-communication-item small{font-size:8px;color:var(--muted)}.inherited-communication-item strong{font-size:9.5px;overflow-wrap:anywhere}@media(max-width:900px){.inherited-communication-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:560px){.inherited-communication-grid{grid-template-columns:1fr}}


.configured-item-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.notification-channel-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:8px;margin:10px 0 14px}.notification-toggle-row{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:9px 11px;border:1px solid var(--station-line,rgba(80,110,140,.14));border-radius:13px;background:rgba(255,255,255,.54)}.notification-recipient-list{display:grid;gap:10px}.notification-recipient-row{padding:10px;border:1px solid var(--station-line,rgba(80,110,140,.14));border-radius:14px;background:rgba(255,255,255,.45)}.notification-test-row{display:grid;grid-template-columns:minmax(120px,.4fr) minmax(220px,1fr) auto;gap:9px;align-items:center;margin-top:12px}.alert-notification-card h3{margin:13px 0 7px;font-size:12px}@media(max-width:720px){.notification-test-row{grid-template-columns:1fr}.configured-item-actions{width:100%;justify-content:flex-end}}

/* AESST DAS 4.20.20 — scroll-safe Configuration shell and larger readable dock. */
.configuration-app .app-content{min-height:0!important;overflow-y:auto!important;overflow-x:hidden!important;overscroll-behavior:contain!important;scrollbar-gutter:stable!important;padding-bottom:124px!important}
.configuration-app{--suite-dock-height:78px!important;--config-dock-clearance:138px!important}
.configuration-app #config-dock .dock{height:78px!important;min-height:78px!important;padding:7px!important}
.configuration-app #config-dock .dock-item{height:62px!important;min-height:62px!important;grid-template-rows:30px 16px!important;gap:3px!important}
.configuration-app .dock-item .icon,.configuration-app .dock-item .icon svg{width:26px!important;height:26px!important}
.configuration-app .dock-item .label{display:block!important;font-size:11px!important;line-height:1.05!important}
@media(max-width:800px){.configuration-app #config-dock .dock{height:72px!important;min-height:72px!important}.configuration-app #config-dock .dock-item{height:56px!important;min-height:56px!important;grid-template-rows:27px 14px!important}.configuration-app .dock-item .icon,.configuration-app .dock-item .icon svg{width:23px!important;height:23px!important}.configuration-app .dock-item .label{display:block!important;font-size:9px!important}}

/* AESST DAS 4.20.22 — Configuration content scrolls to its real end above the footer dock. */
.configuration-app{height:100dvh!important;min-height:0!important;overflow:hidden!important;padding-bottom:0!important}
.configuration-app .app-shell{height:100%!important;min-height:0!important}
.configuration-app .config-content{flex:1 1 auto!important;min-height:0!important;overflow-y:auto!important;overflow-x:hidden!important;padding-bottom:14px!important}
.configuration-app #config-dock{position:relative!important;left:auto!important;bottom:auto!important;transform:none!important;margin:8px auto 10px!important;flex:0 0 auto!important}

/* AESST DAS 4.20.22 — remove legacy inner dock clearance after dock became a footer. */
.instrument-workspace-v2{padding-bottom:0!important}
.configuration-app .page-view:not([hidden]){padding-bottom:4px!important}

/* 4.20.40 advanced parameter binding dropdown visibility */
.configuration-app .workspace-advanced-settings,
.configuration-app .parameter-advanced-settings,
.configuration-app .parameter-card,
.configuration-app .instrument-card,
.configuration-app .config-section:has(.adq-select){overflow:visible!important}
.configuration-app .workspace-advanced-settings[open],
.configuration-app .parameter-advanced-settings[open]{position:relative;z-index:45}
.configuration-app .adq-select.open,
.configuration-app .choice-select.open{z-index:500!important}
.configuration-app .adq-select-popover,
.configuration-app .choice-menu{z-index:2500!important;max-height:min(320px,45vh)!important;overflow-y:auto!important;box-shadow:0 18px 46px rgba(31,67,98,.22)!important}

/* 4.20.40 — Protocol Studio profile mapping inside Instrument Configuration */
.profile-parameter-binding{grid-column:1/-1;border:1px solid rgba(55,139,205,.18);border-radius:16px;background:rgba(248,252,255,.78);padding:12px}.profile-binding-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:9px}.profile-binding-head span{color:var(--muted);font-size:10px}.profile-binding-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.profile-binding-grid>div{padding:8px 10px;border:1px solid rgba(73,123,158,.13);border-radius:12px;background:rgba(255,255,255,.72)}.profile-binding-grid small{display:block;color:var(--muted);font-size:8px;text-transform:uppercase;letter-spacing:.04em}.profile-binding-grid b,.profile-binding-grid code{display:block;margin-top:3px;font-size:10px;overflow-wrap:anywhere}.profile-parameter-binding p{margin:8px 0 0;color:var(--muted);font-size:9px}.profile-runtime-note{grid-column:1/-1}.link-protocol-field{min-width:0}
@media(max-width:900px){.profile-binding-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* 4.20.54 profile-runtime commissioning contract */
.profile-runtime-test-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:10px;padding-top:10px;border-top:1px solid rgba(83,130,166,.14)}
.profile-runtime-test{min-width:190px}.profile-runtime-test-result{flex:1;min-width:260px;font-size:9px;line-height:1.45;color:#657f94}.profile-runtime-test-result.good{color:#127961}.profile-runtime-test-result.error{color:#b63c54}

@media(max-width:680px){.profile-runtime-test-row{align-items:stretch;flex-direction:column}.profile-runtime-test{width:100%}.profile-runtime-test-result{min-width:0}}

/* AESST DAS 4.20.62 — Canva Industrial Minimal Configuration */
.config-topbar{padding:8px 14px 0!important;background:transparent!important}.topbar-inner{min-height:58px!important;padding:8px 12px!important}
.config-content{padding:12px 16px 86px!important}.config-section{gap:10px!important}
.settings-card,.onboarding-card,.instrument-card,.parameter-card,.container-grouping-card,.direct-relay-workspace{border-radius:12px!important;background:var(--adq-surface)!important;border:1px solid var(--adq-edge)!important;box-shadow:none!important}
.modern-instrument-setup{padding:12px!important;border-radius:12px!important;background:var(--adq-surface)!important;border:1px solid var(--adq-edge)!important;box-shadow:none!important}
.instrument-setup-shell{gap:10px!important}.instrument-setup-panel{padding:11px!important;border-radius:10px!important;background:var(--adq-surface-soft)!important;border:1px solid var(--adq-edge)!important;box-shadow:none!important}
.instrument-panel-title{font-size:9px!important;letter-spacing:.065em!important;color:var(--adq-text-secondary)!important;border-bottom:1px solid var(--adq-divider)!important}
.instrument-setup-badge{border-radius:7px!important;background:var(--adq-accent-soft)!important;color:var(--adq-accent)!important;border:1px solid color-mix(in srgb,var(--adq-accent) 20%,var(--adq-edge))!important}
.parameter-card{padding:12px!important}.parameter-card:hover,.instrument-card:hover{border-color:color-mix(in srgb,var(--adq-accent) 30%,var(--adq-edge))!important;box-shadow:0 4px 14px rgba(16,24,32,.045)!important}
.modbus-mapping-card,.instrument-advanced-settings,.parameter-advanced-settings{border-radius:10px!important;background:var(--adq-surface-soft)!important;border:1px solid var(--adq-edge)!important;box-shadow:none!important}
.profile-runtime-test{border-radius:10px!important;background:var(--adq-surface-soft)!important;border:1px solid var(--adq-edge)!important;padding:10px!important}
.profile-parameter-binding,.resolved-profile-card{border-radius:10px!important;background:var(--adq-accent-soft)!important;border:1px solid color-mix(in srgb,var(--adq-accent) 18%,var(--adq-edge))!important}
.choice-menu,.choice-select{border-radius:9px!important}.choice-select.active,.choice-menu button.active{background:var(--adq-accent-soft)!important;color:var(--adq-accent)!important}



/* AESST DAS 4.20.62 Material Flat Configuration refinement. */
html.adq-material-flat .modern-instrument-setup,
html.adq-material-flat .settings-card,
html.adq-material-flat .onboarding-card,
html.adq-material-flat .instrument-card,
html.adq-material-flat .parameter-card{
  background:var(--adq-material-surface)!important;
  background-image:none!important;
  border-color:var(--adq-material-outline)!important;
  box-shadow:var(--adq-material-shadow-1)!important;
}
html.adq-material-flat .instrument-setup-panel,
html.adq-material-flat .modbus-mapping-card,
html.adq-material-flat .instrument-advanced-settings,
html.adq-material-flat .parameter-advanced-settings,
html.adq-material-flat .profile-runtime-test{
  background:var(--adq-material-surface-2)!important;
  background-image:none!important;
  border-color:var(--adq-material-outline)!important;
  box-shadow:none!important;
}
html.adq-material-flat .parameter-card:hover,
html.adq-material-flat .instrument-card:hover{transform:none!important;border-color:var(--adq-material-outline-strong)!important;box-shadow:var(--adq-material-shadow-2)!important}
html.adq-material-flat .choice-menu,
html.adq-material-flat .choice-select{background:var(--adq-material-surface)!important;border-color:var(--adq-material-outline)!important;box-shadow:var(--adq-material-shadow-2)!important}


/* AESST DAS 4.20.62 UI2 — visible Material/Flat Configuration authority.
   Page-local so it outranks legacy Configuration !important declarations. */
html.adq-ui2 body.configuration-app{
  --cfg-page-gap:18px;
  --cfg-card-gap:16px;
  --cfg-field-gap-x:18px;
  --cfg-field-gap-y:13px;
  --cfg-flat-radius:14px;
}
html.adq-ui2 body.configuration-app .config-topbar{padding:10px 16px 0!important}
html.adq-ui2 body.configuration-app .topbar-inner{
  width:min(1560px,100%)!important;
  min-height:64px!important;
  padding:10px 14px!important;
  border-radius:14px!important;
  background:var(--adq-material-surface)!important;
  border:1px solid var(--adq-material-outline)!important;
  box-shadow:var(--adq-material-shadow-1)!important;
}
html.adq-ui2 body.configuration-app .topbar-context{padding-left:16px!important;margin-left:2px!important;border-left:1px solid var(--adq-material-outline)!important}
html.adq-ui2 body.configuration-app .topbar-context strong{font-size:17px!important}
html.adq-ui2 body.configuration-app .config-content{
  padding:16px 18px 18px!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  scrollbar-gutter:stable!important;
  overscroll-behavior-y:auto!important;
  touch-action:pan-y!important;
}
html.adq-ui2 body.configuration-app .app-content-inner{width:min(1560px,100%)!important;padding:0 2px 10px!important}
html.adq-ui2 body.configuration-app .page-view:not([hidden]){padding:4px 0 12px!important;min-height:0!important}

/* Top-level Station navigation cards. */
html.adq-ui2 body.configuration-app .station-config-launchers{
  gap:16px!important;
  margin:0 0 20px!important;
  padding:0 2px!important;
}
html.adq-ui2 body.configuration-app .station-config-launcher{
  position:relative!important;
  min-height:78px!important;
  padding:16px 18px!important;
  border-radius:var(--cfg-flat-radius)!important;
  background:var(--adq-material-surface)!important;
  background-image:none!important;
  border:1px solid var(--adq-material-outline)!important;
  box-shadow:none!important;
  overflow:hidden!important;
  transition:background-color .18s ease,border-color .18s ease,box-shadow .18s ease,transform .18s cubic-bezier(.2,.8,.2,1)!important;
}
html.adq-ui2 body.configuration-app .station-config-launcher::before{
  content:"";position:absolute;left:0;top:12px;bottom:12px;width:3px;border-radius:0 5px 5px 0;background:transparent;transition:background .18s ease
}
html.adq-ui2 body.configuration-app .station-config-launcher:hover{
  transform:translateY(-2px)!important;
  background:var(--adq-material-hover)!important;
  border-color:var(--adq-material-outline-strong)!important;
  box-shadow:var(--adq-material-shadow-1)!important;
}
html.adq-ui2 body.configuration-app .station-config-launcher.active{
  background:var(--adq-material-primary-soft)!important;
  border-color:color-mix(in srgb,var(--adq-material-primary) 44%,var(--adq-material-outline))!important;
  box-shadow:none!important;
}
html.adq-ui2 body.configuration-app .station-config-launcher.active::before{background:var(--adq-material-primary)}
html.adq-ui2 body.configuration-app .station-config-launcher-copy{gap:6px!important;padding-left:2px!important}
html.adq-ui2 body.configuration-app .station-config-launcher-copy strong{font-size:13px!important;color:var(--adq-text-primary)!important}
html.adq-ui2 body.configuration-app .station-config-launcher-copy small{font-size:9.5px!important;color:var(--adq-text-secondary)!important}
html.adq-ui2 body.configuration-app .station-config-status{padding:6px 9px!important;border-radius:999px!important;background:var(--adq-material-surface-3)!important;color:var(--adq-text-secondary)!important}
html.adq-ui2 body.configuration-app .station-config-status.configured{background:var(--adq-success-soft)!important;color:var(--adq-success)!important}

/* Opened Station workspace: no narrow floating island; use full working width and real spacing. */
html.adq-ui2 body.configuration-app .station-config-panel{
  width:100%!important;max-width:none!important;margin:0!important;
  display:grid!important;gap:var(--cfg-card-gap)!important;
}
html.adq-ui2 body.configuration-app .station-config-panel>.settings-card,
html.adq-ui2 body.configuration-app .station-config-panel>.alert-notification-card{
  margin:0!important;padding:20px!important;border-radius:var(--cfg-flat-radius)!important;
  background:var(--adq-material-surface)!important;border:1px solid var(--adq-material-outline)!important;
  box-shadow:var(--adq-material-shadow-1)!important;
}
html.adq-ui2 body.configuration-app .station-config-panel>.settings-card .form-grid,
html.adq-ui2 body.configuration-app .station-config-panel>.central-sync-card .form-grid{
  gap:var(--cfg-field-gap-y) var(--cfg-field-gap-x)!important;
}
html.adq-ui2 body.configuration-app .notification-channel-grid{gap:12px!important;margin:14px 0 18px!important}
html.adq-ui2 body.configuration-app .notification-toggle-row{padding:11px 13px!important;border-radius:11px!important;background:var(--adq-material-surface-2)!important;border-color:var(--adq-material-outline)!important}
html.adq-ui2 body.configuration-app .inline-container-save-row{margin-top:18px!important;padding-top:14px!important}

/* Instrument top navigation cards + workspace spacing. */
html.adq-ui2 body.configuration-app .instrument-workspace-v2{gap:18px!important;padding:2px 0 12px!important}
html.adq-ui2 body.configuration-app .instrument-page-toolbar-v2{gap:5px!important;padding:4px 4px 2px!important}
html.adq-ui2 body.configuration-app .instrument-launcher-row{gap:14px!important;margin:0 0 2px!important;padding:0 2px!important}
html.adq-ui2 body.configuration-app .instrument-launcher{
  position:relative!important;min-height:76px!important;padding:15px 16px!important;
  border-radius:var(--cfg-flat-radius)!important;background:var(--adq-material-surface)!important;background-image:none!important;
  border:1px solid var(--adq-material-outline)!important;box-shadow:none!important;color:var(--adq-text-primary)!important;overflow:hidden!important;
}
html.adq-ui2 body.configuration-app .instrument-launcher::before{content:"";position:absolute;left:0;top:13px;bottom:13px;width:3px;border-radius:0 5px 5px 0;background:var(--launcher-accent,var(--adq-material-primary));opacity:.58}
html.adq-ui2 body.configuration-app .instrument-launcher.group{--launcher-accent:#725bc7}
html.adq-ui2 body.configuration-app .instrument-launcher.alarm{--launcher-accent:#c34b60}
html.adq-ui2 body.configuration-app .instrument-launcher.diagnostic{--launcher-accent:#14846f}
html.adq-ui2 body.configuration-app .instrument-launcher.relay{--launcher-accent:#8b63d2}
html.adq-ui2 body.configuration-app .instrument-launcher:hover{transform:translateY(-2px)!important;background:var(--adq-material-hover)!important;border-color:var(--adq-material-outline-strong)!important;box-shadow:var(--adq-material-shadow-1)!important}
html.adq-ui2 body.configuration-app .instrument-launcher.active{background:color-mix(in srgb,var(--launcher-accent,var(--adq-material-primary)) 10%,var(--adq-material-surface))!important;border-color:color-mix(in srgb,var(--launcher-accent,var(--adq-material-primary)) 38%,var(--adq-material-outline))!important}
html.adq-ui2 body.configuration-app .instrument-launcher strong{font-size:12.5px!important;color:var(--adq-text-primary)!important}
html.adq-ui2 body.configuration-app .instrument-launcher small{margin-top:6px!important;font-size:9px!important;color:var(--adq-text-secondary)!important}
html.adq-ui2 body.configuration-app .instrument-workspace-editor{
  margin:0!important;padding:20px!important;border-radius:var(--cfg-flat-radius)!important;
  background:var(--adq-material-surface)!important;background-image:none!important;
  border:1px solid var(--adq-material-outline)!important;box-shadow:var(--adq-material-shadow-1)!important;
}
html.adq-ui2 body.configuration-app .workspace-editor-head{padding:0 0 15px!important;margin-bottom:2px!important;border-bottom-color:var(--adq-material-outline)!important}
html.adq-ui2 body.configuration-app .workspace-step{gap:13px!important;margin-top:16px!important;padding:15px!important;border-radius:12px!important;background:var(--adq-material-surface-2)!important;background-image:none!important;border-color:var(--adq-material-outline)!important;box-shadow:none!important}
html.adq-ui2 body.configuration-app .workspace-form-grid,
html.adq-ui2 body.configuration-app .identity-workspace-grid,
html.adq-ui2 body.configuration-app .parameter-primary-grid,
html.adq-ui2 body.configuration-app .alarm-settings-grid,
html.adq-ui2 body.configuration-app .modbus-workspace-grid{gap:13px 16px!important}

/* Bottom dock: deliberate space between navigation containers instead of touching edges. */
html.adq-ui2 body.configuration-app #config-dock{
  width:min(980px,calc(100vw - 36px))!important;
  margin:12px auto 14px!important;padding:7px!important;
  border-radius:18px!important;background:var(--adq-material-surface)!important;
  border:1px solid var(--adq-material-outline)!important;box-shadow:var(--adq-material-shadow-2)!important;
}
html.adq-ui2 body.configuration-app #config-dock .dock{height:68px!important;min-height:68px!important;padding:5px!important;gap:7px!important;border:0!important;box-shadow:none!important;background:transparent!important}
html.adq-ui2 body.configuration-app #config-dock .dock-item{height:56px!important;min-height:56px!important;min-width:76px!important;padding:6px 9px!important;border-radius:12px!important}
html.adq-ui2 body.configuration-app #config-dock .dock-item .icon,
html.adq-ui2 body.configuration-app #config-dock .dock-item .icon svg{width:22px!important;height:22px!important}
html.adq-ui2 body.configuration-app #config-dock .dock-item .label{font-size:9px!important;margin-top:2px!important}

@media(max-width:1050px){
  html.adq-ui2 body.configuration-app .station-config-launchers{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:12px!important}
  html.adq-ui2 body.configuration-app .station-config-launcher{padding:14px!important}
}
@media(max-width:820px){
  html.adq-ui2 body.configuration-app .config-content{padding:12px 12px 14px!important}
  html.adq-ui2 body.configuration-app .station-config-launchers{grid-template-columns:1fr!important}
  html.adq-ui2 body.configuration-app .station-config-panel>.settings-card{padding:16px!important}
  html.adq-ui2 body.configuration-app .instrument-launcher-row{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  html.adq-ui2 body.configuration-app #config-dock{width:calc(100vw - 20px)!important;margin:9px auto 10px!important}
  html.adq-ui2 body.configuration-app #config-dock .dock{overflow-x:auto!important;justify-content:flex-start!important}
}
@media(max-width:560px){
  html.adq-ui2 body.configuration-app .instrument-launcher-row{grid-template-columns:1fr!important}
  html.adq-ui2 body.configuration-app .topbar-context{border-left:0!important;padding-left:4px!important}
}

/* AESST DAS UI6.1 India regulatory workspace */
.india-regulatory-card{max-width:1360px!important;margin:0 auto!important;display:grid;gap:18px;background:var(--mui-surface,#fff)!important;border-color:var(--mui-border,#d9e6f2)!important}
.regulatory-profile-status{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.regulatory-chip{display:inline-flex;align-items:center;min-height:30px;padding:5px 10px;border-radius:999px;font-size:12px;font-weight:650;border:1px solid var(--mui-border,#d9e6f2);background:#f7fbff;color:#3f617c}
.regulatory-chip.info{background:#e8f5ff;border-color:#b9ddf7;color:#176fca}.regulatory-chip.success{background:#e9f8ef;border-color:#b9e4c9;color:#137a3a}.regulatory-chip.neutral{background:#f1f5f8;color:#607d96}
.regulatory-guidance,.legacy-limit-note,.regulatory-empty{padding:12px 14px;border-radius:12px;background:#f4f9fd;border:1px solid #dceaf4;color:#4f6f88;font-size:12px;line-height:1.55}
.legacy-limit-note{background:#fff8e8;border-color:#f5d99b;color:#7b5a12}
.regulatory-binding-list,.regulatory-limit-list{display:grid;gap:12px}.regulatory-binding-row,.regulatory-limit-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:end;padding:14px;border-radius:14px;background:#f8fbfe;border:1px solid #dce8f2}
.regulatory-binding-grid{grid-template-columns:repeat(5,minmax(145px,1fr))!important}.regulatory-limit-grid{grid-template-columns:repeat(5,minmax(130px,1fr))!important}
.station-config-launchers{max-width:1360px!important;margin-left:auto!important;margin-right:auto!important;grid-template-columns:repeat(4,minmax(0,1fr))!important}
@media(max-width:1100px){.station-config-launchers{grid-template-columns:repeat(2,minmax(0,1fr))!important}.regulatory-binding-grid,.regulatory-limit-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:680px){.station-config-launchers,.regulatory-binding-grid,.regulatory-limit-grid{grid-template-columns:1fr!important}.regulatory-binding-row,.regulatory-limit-row{grid-template-columns:1fr}}

/* UI17.6 inline delete confirmation */
.inline-delete-pending{border-color:rgba(214,56,91,.58)!important;background:rgba(214,56,91,.055)!important}.inline-delete-confirm{display:inline-flex;align-items:center;gap:7px;margin-left:7px}.inline-delete-label{font-size:9px;font-weight:900;color:#ad3550}.inline-delete-confirm .touch-button{min-width:38px;padding:8px 10px;border-radius:999px}


/* ======================================================================
   LEGACY MIGRATION SOURCE: src/daq/webui/profile/profile.css
   Consolidated into the single universal Project 00 stylesheet.
   ====================================================================== */
*{box-sizing:border-box}body{margin:0;padding:12px 12px 28px;background:var(--adq-shell-bg);color:var(--adq-text-primary);font-family:Inter,"Segoe UI",Arial,sans-serif}.protocol-header{position:sticky;top:6px;z-index:20;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:13px 16px;margin-bottom:10px;border-radius:22px}.protocol-header h1{font-size:20px;margin:2px 0}.protocol-header p{margin:2px 0;color:var(--adq-text-secondary);font-size:11px}.protocol-header-actions{display:flex;align-items:center;gap:10px}.protocol-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:10px;max-width:1540px;margin:0 auto}.studio-panel{padding:13px;border-radius:20px;min-width:0}.connection-panel,.console-panel{grid-column:span 6}.trace-panel,.discovery-panel,.parser-panel,.identity-panel{grid-column:1/-1}.section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:10px}.section-head h2,.section-head h3{margin:1px 0;font-size:15px}.section-head p{margin:4px 0;color:var(--adq-text-secondary);font-size:10px}.section-head.compact{margin-top:14px}.form-grid{display:grid;grid-template-columns:repeat(4,minmax(120px,1fr));gap:8px}.form-grid label,.parser-toolbar label,.command-actions label{display:grid;gap:4px;font-size:9px;color:var(--adq-text-secondary)}.touch-field,.technical-input{width:100%;border:1px solid var(--station-line,rgba(80,120,150,.22));border-radius:12px;background:var(--adq-technical-bg);color:var(--adq-technical-ink);padding:8px 10px;outline:none}.technical-input{font-family:"Cascadia Mono",Consolas,monospace;resize:vertical}.command-format,.command-actions,.actions{display:flex;align-items:end;gap:7px;flex-wrap:wrap}.mode-button{border:0;border-radius:10px;padding:7px 12px;background:rgba(80,110,135,.12);color:var(--adq-text-primary)}.mode-button.active{background:#176fc1;color:#fff}.latest-response{margin-top:10px;border-radius:14px;padding:9px;background:var(--adq-technical-bg);color:var(--adq-technical-ink)}.latest-response small{display:block}.latest-response pre{margin:5px 0 0;white-space:pre-wrap;font-family:"Cascadia Mono",Consolas,monospace;font-size:10px}.trace-table-wrap{max-height:310px;overflow:auto;border-radius:14px;background:var(--adq-technical-bg)}.trace-table{width:100%;border-collapse:collapse;color:var(--adq-technical-ink);font-size:9px}.trace-table th{position:sticky;top:0;background:#eaf1f7;text-align:left;padding:7px}.trace-table td{padding:6px 7px;border-top:1px solid rgba(70,100,125,.1);vertical-align:top}.trace-table code{white-space:pre-wrap;word-break:break-all}.trace-tx td:nth-child(2){color:#176fc1}.trace-rx td:nth-child(2){color:#08766d}.trace-error td:nth-child(2){color:#b33b4f}.analysis-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.analysis-grid article{padding:10px;border-radius:14px;background:var(--adq-technical-bg);color:var(--adq-technical-ink);display:grid;gap:5px}.analysis-grid article.wide{grid-column:1/-1}.analysis-grid code{white-space:pre-wrap;word-break:break-word}.parser-toolbar{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:8px}.parser-fields,.profile-parameters{display:grid;gap:7px}.parser-field{display:grid;grid-template-columns:minmax(100px,.8fr) minmax(200px,2fr) repeat(6,minmax(74px,.65fr)) 42px;gap:6px;align-items:center;padding:7px;border-radius:14px;background:rgba(110,145,170,.08)}.parser-field .small-field{min-width:70px}.parser-results{display:grid;gap:7px;margin-top:10px}.parser-results article{padding:9px;border-radius:12px;background:var(--adq-technical-bg);color:var(--adq-technical-ink)}.parser-results article.pass{border-left:4px solid #159a91}.parser-results article.fail{border-left:4px solid #cf4258}.parser-results pre{white-space:pre-wrap}.profile-parameter{display:grid;grid-template-columns:1fr 1.2fr .6fr .8fr 42px;gap:7px;align-items:center}.save-profile-actions{justify-content:flex-end;margin-top:13px}.poll-control{min-width:150px}.subtle-copy{color:var(--adq-text-secondary);font-size:9px;max-width:360px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media(max-width:1050px){.connection-panel,.console-panel{grid-column:1/-1}.form-grid{grid-template-columns:repeat(2,1fr)}.parser-field{grid-template-columns:repeat(4,1fr)}.profile-parameter{grid-template-columns:repeat(2,1fr)}}

.modbus-mapper{margin-top:12px;padding-top:10px;border-top:1px solid var(--station-line,rgba(90,120,145,.16))}.modbus-result{margin:9px 0 0;padding:9px;border-radius:12px;background:var(--adq-technical-bg);color:var(--adq-technical-ink);white-space:pre-wrap}

/* AESST DAS 4.19.0 — app layout convergence */
*{box-sizing:border-box}body{padding-bottom:94px!important;color:var(--adq-text-primary)!important}.app-content-inner,.service-main,.protocol-grid{max-width:1780px;margin-inline:auto}.config-topbar,.service-topbar,.protocol-header{margin:10px 14px 0!important;border-radius:20px!important}.topbar-inner,.service-topbar-inner{min-height:70px!important;padding:10px 14px!important}.settings-grid,.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px 14px!important}.field,label{min-width:0}.card-pad,.studio-panel,.config-card{padding:16px!important}.section-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.section-head h2,.section-head h3{margin:0 0 4px}.section-head p{margin:0}.metric-grid{gap:12px!important}.metric-card{border-radius:18px!important}.metric-icon{width:32px!important;height:32px!important;border-radius:11px!important;font-size:0!important}.metric-icon svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8}.modal{border-radius:var(--adq-radius-modal)!important}.technical-input,.list-surface,.trace-table-wrap,.latest-response,.modbus-result{border-radius:16px!important;background:var(--adq-technical-bg)!important;color:var(--adq-technical-ink)!important}.compact-add,.compact-danger{min-height:36px!important}.protocol-grid{gap:14px!important;padding:14px!important}.studio-panel{border-radius:20px!important}.trace-table{font-family:ui-monospace,SFMono-Regular,Consolas,monospace}.command-format{display:flex;gap:6px}.mode-button.active{background:var(--adq-accent-soft);color:var(--adq-accent-strong)}




.protocol-studio-shell{
  --proto-blue:#1877f2;--proto-blue-deep:#0b5fcc;--proto-ink:#172b3a;--proto-muted:#62788c;
  --proto-line:rgba(64,112,151,.16);--proto-surface:rgba(255,255,255,.78);--proto-soft:rgba(246,250,255,.72);
  background:linear-gradient(145deg,#eef5fb 0%,#f7faff 46%,#eaf3fb 100%)!important;color:var(--proto-ink)!important;
}
.protocol-studio-shell:before{content:"";position:fixed;inset:0;pointer-events:none;background:radial-gradient(circle at 14% 5%,rgba(24,119,242,.11),transparent 32%),radial-gradient(circle at 88% 18%,rgba(65,188,171,.07),transparent 29%)}
.protocol-studio-shell .protocol-header{position:sticky;top:8px;z-index:80;width:min(1500px,calc(100% - 24px));margin:8px auto 0;border:1px solid rgba(255,255,255,.82);border-radius:17px;background:rgba(255,255,255,.76);box-shadow:0 9px 28px rgba(36,73,108,.09),inset 0 1px 0 #fff;}
.protocol-studio-shell .protocol-header h1{background:none!important;color:var(--proto-ink)!important;-webkit-text-fill-color:var(--proto-ink)!important}
.protocol-studio-shell .protocol-header .eyebrow{color:#167caf!important}
.protocol-studio-shell .protocol-grid{padding:14px!important;gap:14px!important}.protocol-studio-shell .app-content-inner{width:min(1460px,100%)!important;margin:auto}
.protocol-studio-shell .studio-panel{padding:15px!important;border:1px solid var(--proto-line)!important;border-radius:17px!important;background:var(--proto-surface)!important;box-shadow:0 8px 24px rgba(34,70,104,.07),inset 0 1px 0 rgba(255,255,255,.94)!important;}
.protocol-studio-shell .studio-panel:before{content:none!important;background:none!important}
.protocol-studio-shell .section-head h2,.protocol-studio-shell .section-head h3{margin:0 0 3px!important;font-size:14px!important;line-height:1.3}.protocol-studio-shell .section-head p{margin:0 0 12px!important;font-size:9.5px!important;line-height:1.45;color:var(--proto-muted)!important}
.protocol-studio-shell .form-grid{gap:9px 10px!important;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))!important}
.protocol-studio-shell label{gap:4px!important;font-size:9px!important;font-weight:750!important;color:#526d83!important}
.protocol-studio-shell .touch-field,.protocol-studio-shell input:not([type=checkbox]):not([type=radio]),.protocol-studio-shell textarea,.protocol-studio-shell select{min-height:38px!important;height:38px;padding:7px 10px!important;border:1px solid rgba(67,111,147,.20)!important;border-radius:10px!important;background:rgba(255,255,255,.86)!important;color:var(--proto-ink)!important;font-size:11px!important;box-shadow:inset 0 1px 2px rgba(42,72,99,.035)!important}
.protocol-studio-shell .technical-input{min-height:70px!important;font-family:"Cascadia Mono",Consolas,monospace!important}
.protocol-studio-shell .touch-field:focus,.protocol-studio-shell input:focus,.protocol-studio-shell textarea:focus,.protocol-studio-shell select:focus{border-color:rgba(24,119,242,.55)!important;box-shadow:0 0 0 3px rgba(24,119,242,.11)!important;outline:none!important}
.protocol-studio-shell .touch-button{min-height:36px!important;padding:7px 12px!important;border-radius:10px!important;font-size:10px!important;font-weight:750!important}
.protocol-studio-shell .touch-button.primary{background:linear-gradient(180deg,#2682f5,#1877f2)!important;border-color:#1269da!important;color:#fff!important;box-shadow:0 5px 13px rgba(24,119,242,.18)!important}
.protocol-studio-shell .mode-button{border:0!important;border-radius:10px!important;padding:7px 12px!important;background:rgba(80,110,135,.12)!important;color:var(--proto-ink)!important}
.protocol-studio-shell .mode-button.active{background:rgba(24,119,242,.12)!important;color:var(--proto-blue)!important}
.protocol-studio-shell .trace-table{font-size:10px!important}.protocol-studio-shell .trace-table-wrap{border-radius:16px!important;background:var(--proto-surface)!important;border:1px solid var(--proto-line)!important}
.protocol-studio-shell .latest-response,.protocol-studio-shell .modbus-result{border-radius:16px!important;background:var(--proto-soft)!important;border:1px solid var(--proto-line)!important}
.protocol-studio-shell .status-chip{font-size:9px!important;font-weight:700!important;padding:4px 10px!important;border-radius:20px!important}
.protocol-studio-shell .status-chip.good{background:rgba(68,184,149,.15)!important;color:#21896e!important}.protocol-studio-shell .status-chip.bad{background:rgba(184,77,91,.15)!important;color:#9e3443!important}

@media(max-width:900px){.protocol-studio-shell .connection-panel,.protocol-studio-shell .console-panel{grid-column:1/-1}.protocol-studio-shell .form-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:560px){.protocol-studio-shell .protocol-header{width:calc(100% - 14px)}.protocol-studio-shell .protocol-grid{padding:9px!important}.protocol-studio-shell .form-grid{grid-template-columns:1fr!important}}
/* AESST DAS 4.20.6 — compact tablet Protocol Studio. */
.protocol-studio .protocol-header,.protocol-header{padding:10px 12px!important;margin:7px 9px 0!important;border-radius:16px!important}.protocol-header h1{font-size:17px!important;margin:2px 0!important}.protocol-header p{font-size:9px!important;margin:0!important}.protocol-grid{gap:8px!important;padding:8px 10px 76px!important}.studio-panel{padding:10px!important;border-radius:15px!important}.studio-panel h2{font-size:13px!important}.studio-panel p{font-size:8.5px!important}.protocol-header-actions{gap:7px!important}

/* AESST DAS 4.20.19 — full-page Protocol Studio scrolling + automatic parser results. */
html,body{min-height:100%;height:auto!important;overflow-y:auto!important;overflow-x:hidden!important}
.protocol-studio-shell{min-height:100vh!important;height:auto!important;overflow-y:auto!important;padding-bottom:124px!important}
.protocol-studio-shell .protocol-grid{min-height:0!important;height:auto!important;overflow:visible!important;padding-bottom:132px!important}
.protocol-studio-shell .studio-panel{min-height:0!important;overflow:visible!important}
.auto-parse-panel{margin-top:10px;padding-top:10px;border-top:1px solid var(--proto-line,rgba(64,112,151,.16));display:grid;gap:8px}.auto-parse-head{display:flex;justify-content:space-between;gap:12px;align-items:baseline}.auto-parse-head strong{font-size:11px}.auto-parse-head small{font-size:8.5px;color:var(--proto-muted)}.auto-parse-results{display:grid;gap:8px}.auto-parse-summary{display:flex;gap:8px;flex-wrap:wrap}.auto-parse-summary span{padding:5px 8px;border-radius:9px;background:rgba(24,119,242,.07);font-size:9px}.auto-best{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:11px;background:rgba(68,184,149,.10);border:1px solid rgba(68,184,149,.18)}.auto-best small{color:var(--proto-muted)}.auto-candidate{display:grid;grid-template-columns:minmax(130px,1fr) auto auto;gap:5px 10px;align-items:center;padding:8px 10px;border:1px solid var(--proto-line);border-radius:11px;background:rgba(255,255,255,.60)}.auto-candidate.best{border-color:rgba(24,119,242,.28);background:rgba(24,119,242,.07)}.auto-candidate>div{display:grid}.auto-candidate small{font-size:8px;color:var(--proto-muted)}.auto-candidate .auto-value{font-family:"Cascadia Mono",Consolas,monospace;font-size:12px}.auto-candidate .auto-reason{grid-column:1/-1}.empty-state.compact{padding:9px}
@media(max-width:700px){.auto-parse-head{display:grid}.auto-candidate{grid-template-columns:1fr auto}.auto-candidate>small:not(.auto-reason){grid-column:1/-1}}

/* AESST DAS 4.20.19 — selectable complete TX/RX captures and collision-safe controls. */
.capture-list{display:grid;gap:7px;max-height:300px;overflow-y:auto;padding:2px 4px 2px 0}.capture-select{display:grid;grid-template-columns:auto minmax(90px,.5fr) minmax(180px,1fr) minmax(180px,1fr) 70px 90px;align-items:center;gap:9px;padding:8px 10px;border:1px solid var(--proto-line);border-radius:12px;background:rgba(255,255,255,.62);cursor:pointer;min-width:0}.capture-select.selected{border-color:rgba(24,119,242,.38);background:rgba(24,119,242,.08)}.capture-select>span{min-width:0;display:grid;gap:2px}.capture-select code{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.capture-select small{color:var(--proto-muted);font-size:8px}.capture-select input{width:16px;height:16px}.capture-index{font-size:8px;color:var(--proto-muted)}
.protocol-studio-shell select.touch-field{padding-right:34px!important;text-overflow:ellipsis;white-space:nowrap}.protocol-studio-shell .actions{display:flex;gap:7px;flex-wrap:wrap}.protocol-studio-shell button{white-space:nowrap;overflow:visible}.protocol-studio-shell .touch-button{min-width:max-content}.protocol-studio-shell textarea{line-height:1.45!important;overflow:auto!important}.protocol-studio-shell .trace-table-wrap{overflow:auto!important;max-width:100%}.protocol-studio-shell .trace-table{min-width:980px}.protocol-studio-shell .parser-field,.protocol-studio-shell .profile-parameter{min-width:0;overflow:visible}.protocol-studio-shell .parser-field>*{min-width:0}.protocol-studio-shell .parser-results{overflow-x:auto}.protocol-studio-shell .capture-panel{grid-column:1/-1}
@media(max-width:900px){.capture-select{grid-template-columns:auto 1fr 1fr}.capture-select>span:nth-last-child(-n/**/+2){display:none}}

/* AESST DAS 4.20.20 — Protocol Studio readable controls and independent page scrolling. */
html{height:100%!important;min-height:100%!important;overflow:hidden!important}
body.protocol-studio-shell{height:100dvh!important;min-height:0!important;overflow-y:auto!important;overflow-x:hidden!important;overscroll-behavior:contain!important;scrollbar-gutter:stable!important;-webkit-overflow-scrolling:touch;padding-bottom:132px!important}
.protocol-studio-shell .touch-button{font-size:11px!important;font-weight:750!important;line-height:1.1!important;color:var(--proto-ink)!important;-webkit-text-fill-color:currentColor!important;text-shadow:none!important}
.protocol-studio-shell .touch-button:not(.primary):not(.danger){background:rgba(255,255,255,.9)!important;color:var(--proto-ink)!important;border-color:rgba(67,111,147,.22)!important;box-shadow:0 5px 13px rgba(35,72,104,.08)!important}
.protocol-studio-shell .touch-button:not(.primary):not(.danger):hover{background:#fff!important;color:var(--proto-blue-deep)!important;border-color:rgba(24,119,242,.30)!important}
.protocol-studio-shell .touch-button.primary{color:#fff!important;-webkit-text-fill-color:#fff!important}
.protocol-studio-shell .touch-button.danger{color:#a73549!important;-webkit-text-fill-color:#a73549!important}
.protocol-studio-shell .mode-button{font-size:11px!important;font-weight:750!important;line-height:1.15!important;color:var(--proto-ink)!important;-webkit-text-fill-color:currentColor!important}
.protocol-studio-shell .mode-button.active{color:var(--proto-blue-deep)!important;-webkit-text-fill-color:var(--proto-blue-deep)!important;background:rgba(24,119,242,.12)!important}
.protocol-studio-shell select,.protocol-studio-shell option{color:var(--proto-ink)!important;background:#fff!important;-webkit-text-fill-color:var(--proto-ink)!important}
.protocol-studio-shell input,.protocol-studio-shell textarea{color:var(--proto-ink)!important;-webkit-text-fill-color:var(--proto-ink)!important}
.protocol-studio-shell .section-head h2,.protocol-studio-shell .section-head h3{color:var(--proto-ink)!important;-webkit-text-fill-color:var(--proto-ink)!important}
.protocol-studio-shell .eyebrow{opacity:1!important}
.protocol-studio-shell label{font-size:10px!important;color:#405f78!important}
.protocol-studio-shell .adq-select-trigger{color:var(--proto-ink)!important;-webkit-text-fill-color:var(--proto-ink)!important;background:rgba(255,255,255,.92)!important;font-size:11px!important}
.protocol-studio-shell .adq-select-option{color:var(--proto-ink)!important;-webkit-text-fill-color:var(--proto-ink)!important;background:transparent!important;font-size:11px!important}
.protocol-studio-shell .adq-select-option:hover,.protocol-studio-shell .adq-select-option:focus{color:var(--proto-blue-deep)!important;background:rgba(24,119,242,.08)!important}
.protocol-studio-shell .subtle-copy,.protocol-studio-shell .latest-response small,.protocol-studio-shell .auto-parse-head small{font-size:9.5px!important;color:#587087!important}

/* AESST DAS 4.20.22 — Protocol Studio scrolls to the final container with no artificial dock clearance. */
body.protocol-studio-shell{height:100dvh!important;min-height:0!important;overflow-y:auto!important;overflow-x:hidden!important;padding-bottom:18px!important}
.protocol-studio-shell .protocol-grid{padding-bottom:18px!important}

/* AESST DAS 4.20.22 — Protocol Studio A-to-Z reliability. */
.protocol-studio-shell .protocol-grid,
.protocol-studio-shell .studio-panel,
.protocol-studio-shell .form-grid,
.protocol-studio-shell .form-grid>label,
.protocol-studio-shell .command-actions,
.protocol-studio-shell .parser-toolbar,
.protocol-studio-shell .adq-select,
.protocol-studio-shell .adq-select-trigger,
.protocol-studio-shell .adq-select-value{min-width:0!important;max-width:100%!important}
.protocol-studio-shell .form-grid>label{overflow:visible!important}
.protocol-studio-shell .touch-field,
.protocol-studio-shell select,
.protocol-studio-shell input,
.protocol-studio-shell textarea{min-width:0!important;max-width:100%!important}
.protocol-studio-shell .adq-select-trigger{overflow:hidden!important}
.protocol-studio-shell .adq-select-value{display:block!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;text-align:left!important}
.protocol-studio-shell .adq-select-popover{min-width:min(420px,calc(100vw - 40px))!important;max-width:min(520px,calc(100vw - 40px))!important;right:auto!important;overflow-x:hidden!important}
.protocol-studio-shell .adq-select-option{white-space:normal!important;overflow-wrap:anywhere!important;line-height:1.3!important;height:auto!important;min-height:38px!important;padding-block:8px!important}
.protocol-studio-shell .modbus-field[hidden],
.protocol-studio-shell .serial-field[hidden],
.protocol-studio-shell .tcp-field[hidden],
.protocol-studio-shell #modbus-mapper[hidden]{display:none!important}
.protocol-studio-shell .modbus-mapper{min-width:0!important;overflow:visible!important}
.protocol-studio-shell .modbus-result{overflow-x:auto!important;overflow-wrap:anywhere!important;max-width:100%!important}
.protocol-studio-shell .section-head>*{min-width:0!important}
.protocol-studio-shell .section-head .actions{justify-content:flex-end}
.protocol-studio-shell .touch-button{max-width:100%!important;text-overflow:ellipsis!important}
@media(max-width:720px){
  .protocol-studio-shell .command-actions{display:grid!important;grid-template-columns:1fr 1fr!important;align-items:end!important}
  .protocol-studio-shell .command-actions>*{min-width:0!important;max-width:100%!important}
}
/* AESST DAS 4.20.22 Protocol Studio field reliability */
.profile-identity-grid{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));align-items:end}
.mapper-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.studio-panel .form-grid>*{min-width:0}
.studio-panel select.touch-field,.studio-panel input.touch-field{width:100%;min-width:0;max-width:100%}
.profile-parameters,.parser-fields{min-width:0}
@media(max-width:900px){.profile-identity-grid{grid-template-columns:1fr}.mapper-actions{width:100%}.mapper-actions .touch-button{flex:1 1 180px}}

/* 4.20.40 operator-first Protocol Studio */
.advanced-diagnostics{padding:0;overflow:hidden}.advanced-diagnostics>summary{cursor:pointer;list-style:none;padding:16px 18px;font-weight:650;display:flex;align-items:center;gap:8px}.advanced-diagnostics>summary::-webkit-details-marker{display:none}.advanced-diagnostics>summary:before{content:"›";font-size:20px;transition:transform .16s ease}.advanced-diagnostics[open]>summary:before{transform:rotate(90deg)}.advanced-diagnostics>.studio-panel{border:0;border-top:1px solid var(--adq-edge);border-radius:0;background:transparent;box-shadow:none;margin:0}.inline-advanced{margin-top:10px}.inline-advanced>summary{cursor:pointer;color:var(--adq-text-secondary);font-size:12px}.protocol-header p{max-width:780px}.profile-parameters{max-height:360px;overflow:auto}

/* 4.20.40 Protocol Studio parser-selection + Advanced Diagnostics layout fix */
.protocol-studio-shell .advanced-diagnostics{grid-column:1/-1!important;width:100%!important;min-width:0!important;overflow:visible!important;border-radius:18px!important}
.protocol-studio-shell .advanced-diagnostics[open]{display:block!important}
.protocol-studio-shell .advanced-diagnostics>.studio-panel{width:100%!important;max-width:100%!important;min-width:0!important;overflow:visible!important}
.protocol-studio-shell .advanced-diagnostics .trace-table-wrap{width:100%!important;max-width:100%!important;overflow:auto!important}
.protocol-studio-shell .advanced-diagnostics .capture-list{width:100%!important;max-width:100%!important;overflow:auto!important}
.protocol-studio-shell .auto-candidate{cursor:pointer;grid-template-columns:auto minmax(130px,1fr) auto auto!important}
.protocol-studio-shell .auto-candidate>input[type=radio]{width:17px;height:17px;accent-color:var(--proto-blue);align-self:center}
.protocol-studio-shell .auto-candidate.selected{border-color:rgba(24,119,242,.5)!important;background:rgba(24,119,242,.11)!important;box-shadow:0 0 0 2px rgba(24,119,242,.07)}
.protocol-studio-shell .auto-candidate .auto-reason{grid-column:2/-1!important}
.protocol-studio-shell .candidate-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding-top:4px}
.protocol-studio-shell .candidate-actions .subtle-copy{white-space:normal!important;max-width:680px!important}
@media(max-width:760px){.protocol-studio-shell .auto-candidate{grid-template-columns:auto 1fr!important}.protocol-studio-shell .auto-candidate>.auto-value{grid-column:2}.protocol-studio-shell .auto-candidate>small:not(.auto-reason){grid-column:2}.protocol-studio-shell .auto-candidate .auto-reason{grid-column:2!important}}

/* AESST DAS 4.20.40 — two-stage protocol/medium selection and live COM discovery */
.protocol-studio-shell .field-with-button{display:grid;grid-template-columns:minmax(0,1fr) 42px;gap:7px;align-items:center}
.protocol-studio-shell .compact-icon{min-width:42px!important;width:42px!important;padding:0!important;font-size:18px!important}
.protocol-studio-shell .serial-field[hidden],.protocol-studio-shell .tcp-field[hidden],.protocol-studio-shell .modbus-field[hidden]{display:none!important}
.protocol-studio-shell .form-grid>label{min-width:0}.protocol-studio-shell select.touch-field{width:100%;min-width:0}


/* AESST DAS 4.20.40 — COM-only selector, single-session control and parser workflow polish */
.protocol-studio-shell .connection-panel{position:relative;z-index:3;overflow:visible!important}
.protocol-studio-shell .console-panel{position:relative;z-index:2;overflow:hidden!important}
.protocol-studio-shell .com-port-field{grid-column:span 2;min-width:280px!important}
.protocol-studio-shell .com-port-field .field-with-button{grid-template-columns:minmax(230px,1fr) 42px!important}
.protocol-studio-shell .com-port-field .adq-select{min-width:0!important;width:100%!important}
.protocol-studio-shell .com-port-field .adq-select-popover{left:0!important;right:auto!important;min-width:100%!important;width:100%!important;max-width:100%!important;white-space:nowrap!important}
.protocol-studio-shell .com-port-field .adq-select-option{white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
.protocol-studio-shell .parser-help{margin:8px 0 10px;padding:9px 11px;border:1px solid rgba(24,119,242,.15);border-radius:12px;background:rgba(24,119,242,.055);color:#4f677c;font-size:10px;line-height:1.45}
.protocol-studio-shell .parser-help strong{color:var(--proto-ink)}
.protocol-studio-shell .advanced-diagnostics>.studio-panel{overflow:hidden!important}
.protocol-studio-shell .advanced-diagnostics .trace-table-wrap,.protocol-studio-shell .advanced-diagnostics .capture-list{overscroll-behavior:contain!important}
@media(max-width:720px){.protocol-studio-shell .com-port-field{grid-column:1/-1;min-width:0!important}.protocol-studio-shell .com-port-field .field-with-button{grid-template-columns:minmax(0,1fr) 42px!important}}
.protocol-studio-shell .serial-discovery-status{display:block;margin-top:6px;padding-left:2px;font-size:9px;line-height:1.35;color:var(--proto-muted);white-space:normal;overflow-wrap:anywhere}
.protocol-studio-shell .serial-discovery-status.good{color:#167a68}
.protocol-studio-shell .serial-discovery-status.error{color:#a45b18}

/* COM port uses the browser/native select directly.  The shared select mirror is
   intentionally bypassed because dynamic WebView2 option mutation was stale on
   some Windows systems even when discovery returned ports correctly. */
.protocol-studio-shell select.native-com-select[data-native-select="true"]{
  position:static!important;opacity:1!important;pointer-events:auto!important;
  width:100%!important;height:38px!important;min-height:38px!important;
  border-radius:10px!important;padding:7px 34px 7px 10px!important;
  background:rgba(255,255,255,.90)!important;color:var(--proto-ink)!important;
}

/* AESST DAS 4.20.40 — Thermo iSeries / 5014i C-Link framing workflow */
.protocol-studio-shell .field-hint{display:block;margin-top:5px;color:var(--proto-muted);font-size:9px;line-height:1.35}
.protocol-studio-shell .clink-tool-row{display:grid;grid-template-columns:minmax(260px,.9fr) minmax(360px,1.5fr);gap:10px;align-items:end;margin:10px 0;padding:10px 12px;border:1px solid rgba(24,119,242,.14);border-radius:14px;background:rgba(24,119,242,.045)}
.protocol-studio-shell .clink-tool-row[hidden]{display:none!important}
.protocol-studio-shell .clink-guide{display:grid;gap:4px;min-width:0;padding:2px 4px 4px;color:#536c81;font-size:10px;line-height:1.4}
.protocol-studio-shell .clink-guide strong{color:var(--proto-ink)}
.protocol-studio-shell .command-frame-preview{display:grid;gap:4px;margin:8px 0 10px;padding:10px 12px;border:1px solid rgba(57,105,148,.15);border-radius:13px;background:rgba(255,255,255,.66);min-width:0}
.protocol-studio-shell .command-frame-preview small{color:var(--proto-muted);font-size:9px}
.protocol-studio-shell .command-frame-preview code{white-space:pre-wrap;overflow-wrap:anywhere;color:#244963;font-size:10px;line-height:1.45}
.protocol-studio-shell #terminator:disabled{opacity:.72;cursor:not-allowed}
@media(max-width:860px){.protocol-studio-shell .clink-tool-row{grid-template-columns:1fr}}

/* 4.20.40 universal command/frame engine */
.universal-framing-panel{margin-top:12px;border-radius:22px;padding:0;overflow:hidden}
.universal-framing-panel>summary{cursor:pointer;padding:14px 16px;font-weight:700;display:flex;gap:10px;align-items:center;justify-content:space-between}
.universal-framing-panel[open]>summary{border-bottom:1px solid var(--line,rgba(90,110,150,.16))}
.universal-frame-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;padding:16px}
.universal-frame-grid label{min-width:0}
.universal-frame-grid .touch-field{width:100%;min-width:0}
.universal-frame-help{margin:0 16px 16px;padding:12px 14px;border-radius:16px;background:rgba(255,255,255,.38);font-size:.84rem;line-height:1.45}
.universal-command-note{margin:0 0 10px;padding:10px 12px;border-radius:14px;background:rgba(255,255,255,.32);font-size:.82rem;line-height:1.45}
@media(max-width:1180px){.universal-frame-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.universal-frame-grid{grid-template-columns:1fr}}


/* AESST DAS 4.20.40 — parameter-centric universal profile authoring */
.mapping-target-bar{display:grid;grid-template-columns:minmax(280px,1fr) auto;gap:12px;align-items:end;margin:10px 0 14px;padding:12px 14px;border:1px solid rgba(24,119,242,.16);border-radius:16px;background:rgba(24,119,242,.05)}
.mapping-target-bar label{min-width:0}.mapping-list{display:grid;gap:8px}.mapping-card{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:10px;align-items:center;padding:10px 12px;border:1px solid rgba(65,105,145,.15);border-radius:14px;background:rgba(255,255,255,.54)}.mapping-card>div{display:grid;gap:3px;min-width:0}.mapping-card code{overflow-wrap:anywhere}.mapping-ok,.mapping-state{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:5px 9px;font-size:9px;font-weight:750;white-space:nowrap}.mapping-ok,.mapping-state.good{background:rgba(30,170,120,.12);color:#17755e}.mapping-state.warn{background:rgba(230,155,35,.12);color:#945f0e}.profile-parameter{grid-template-columns:minmax(150px,1fr) minmax(150px,1fr) minmax(100px,.7fr) minmax(120px,.75fr) auto auto!important;align-items:center}.profile-save-note{margin:10px 0;padding:9px 12px;border-radius:13px;font-size:10px}.profile-save-note.good{background:rgba(30,170,120,.09);color:#17755e}.profile-save-note.warn{background:rgba(230,155,35,.09);color:#87580f}.field-with-inline-action{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px;align-items:center}.profile-identity-grid #profile-id[readonly]{background:rgba(235,242,248,.78)!important;color:#456277}.bound-mappings{margin-top:14px;padding-top:12px;border-top:1px solid rgba(75,105,135,.12)}
@media(max-width:900px){.mapping-target-bar{grid-template-columns:1fr}.mapping-card{grid-template-columns:1fr auto}.mapping-card .mapping-remove{grid-column:2}.profile-parameter{grid-template-columns:1fr 1fr!important}.profile-parameter .mapping-state{justify-self:start}}

/* AESST DAS 4.20.47 — Protocol Studio Easy Mode */
/* Anchor custom OEM/model suggestion popovers to their identity fields. */
.profile-identity-grid label{position:relative}
.easy-mode-shell{grid-column:1/-1;display:grid;gap:14px;min-width:0}
.easy-mode-head{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px 20px;border-radius:22px;min-width:0}
.easy-mode-head h2{margin:2px 0 4px;font-size:22px;line-height:1.2;color:var(--proto-ink)}
.easy-mode-head p{margin:0;max-width:820px;color:var(--proto-muted);font-size:11px;line-height:1.5}
.easy-mode-badge{flex:none;border-radius:999px;padding:6px 10px;background:rgba(24,119,242,.09);color:#1769c4;font-size:9px;font-weight:800;letter-spacing:.06em}
.easy-step{padding:16px 18px;border-radius:22px;min-width:0;overflow:visible!important}
.easy-step-head{display:grid;grid-template-columns:34px minmax(0,1fr) auto;gap:12px;align-items:start;margin-bottom:14px}
.easy-step-number{display:grid;place-items:center;width:34px;height:34px;border-radius:12px;background:rgba(24,119,242,.10);color:#1769c4;font-size:14px;font-weight:800}
.easy-step-head h3{margin:1px 0 3px;font-size:16px;color:var(--proto-ink)}
.easy-step-head p{margin:0;color:var(--proto-muted);font-size:10px;line-height:1.45;max-width:840px}
.easy-step-state{align-self:start;border-radius:999px;padding:5px 9px;background:rgba(94,111,128,.08);color:var(--proto-muted);font-size:9px;font-weight:800;white-space:nowrap}
.easy-step-state.good{background:rgba(30,170,120,.11);color:#17755e}.easy-step-state.warn{background:rgba(230,155,35,.12);color:#8a5a10}.easy-step-state.error{background:rgba(205,72,83,.10);color:#a53443}
.easy-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;min-width:0}.easy-grid>label{min-width:0}
.easy-grid.identity-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.easy-grid.connection-grid{margin-top:10px}
.easy-combo{position:relative;min-width:0}.easy-combo>.touch-field{padding-right:42px}.easy-combo-toggle{position:absolute;z-index:4;top:4px;right:5px;width:34px;height:34px;border:0;border-radius:10px;background:transparent;color:var(--proto-muted);font-size:18px;line-height:1;cursor:pointer}.easy-combo-toggle:hover,.easy-combo-toggle:focus-visible{background:rgba(24,119,242,.08);color:#1769c4;outline:none}.easy-suggestion-popover{position:relative;z-index:3;left:auto;right:auto;top:auto;margin-top:5px;max-height:180px;overflow:auto;padding:5px;border:1px solid rgba(68,102,132,.16);border-radius:14px;background:rgba(252,254,255,.98);box-shadow:0 12px 30px rgba(44,70,94,.12);}
.easy-suggestion-popover[hidden]{display:none!important}.easy-suggestion-item{display:flex;width:100%;align-items:center;justify-content:space-between;gap:8px;border:0;border-radius:10px;padding:9px 10px;background:transparent;color:var(--proto-ink);font:inherit;text-align:left;cursor:pointer}.easy-suggestion-item:hover,.easy-suggestion-item:focus{background:rgba(24,119,242,.08);outline:none}.easy-suggestion-item small{color:var(--proto-muted)}
.easy-more{margin-top:10px;border-top:1px solid rgba(67,102,130,.10);padding-top:8px}.easy-more>summary{cursor:pointer;color:var(--proto-muted);font-size:10px;font-weight:700}.easy-more[open]>summary{margin-bottom:10px}

.easy-model-parameter-panel{margin-top:12px;padding:11px 12px;border:1px solid rgba(67,102,130,.10);border-radius:16px;background:rgba(255,255,255,.38)}
.easy-model-parameter-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:8px}.easy-model-parameter-head strong{display:block;color:var(--proto-ink);font-size:10px}.easy-model-parameter-head small{display:block;margin-top:2px;color:var(--proto-muted);font-size:8.5px;line-height:1.4}.easy-model-parameter-head>span{flex:none;border-radius:999px;padding:4px 8px;background:rgba(24,119,242,.08);color:#1769c4;font-size:8px;font-weight:800}
.easy-model-parameters{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}.easy-model-parameter-chip{display:flex;align-items:center;justify-content:space-between;gap:8px;min-width:0;padding:9px 10px;border:1px solid rgba(67,102,130,.11);border-radius:12px;background:rgba(255,255,255,.58);color:var(--proto-ink);text-align:left;cursor:pointer}.easy-model-parameter-chip:hover,.easy-model-parameter-chip.selected{border-color:rgba(24,119,242,.34);background:rgba(24,119,242,.06)}.easy-model-parameter-chip span{min-width:0}.easy-model-parameter-chip strong{display:block;font-size:9.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.easy-model-parameter-chip small{display:block;margin-top:2px;color:var(--proto-muted);font-size:8px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.easy-model-parameter-chip b{flex:none;color:#1769c4;font-size:8px}
.easy-modbus-read-options{margin-top:10px!important;padding-top:8px!important}
.easy-action-row{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap;margin-top:12px}.easy-human-status{margin-right:auto;color:var(--proto-muted);font-size:10px;line-height:1.4}.easy-human-status.good{color:#17755e}.easy-human-status.warn{color:#8a5a10}.easy-human-status.error{color:#a53443}
.easy-command-mode{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:10px;align-items:end}.easy-command-input{font-size:14px!important}.easy-check{display:flex!important;flex-direction:row!important;align-items:center!important;gap:7px!important;height:38px;white-space:nowrap}.easy-check input{width:17px;height:17px;accent-color:#1877f2}.easy-send{min-width:130px}
.easy-modbus-fields{margin-top:10px;padding:12px;border:1px solid rgba(24,119,242,.12);border-radius:16px;background:rgba(24,119,242,.035)}.easy-modbus-fields .easy-send{margin-top:10px}
.easy-framing-note{margin-top:10px;padding:9px 11px;border-radius:13px;background:rgba(91,111,130,.055);color:var(--proto-muted);font-size:10px;line-height:1.45}.easy-framing-note.good{background:rgba(30,170,120,.08);color:#17755e}.easy-framing-note.warn{background:rgba(230,155,35,.09);color:#8a5a10}.easy-framing-note.error{background:rgba(205,72,83,.08);color:#a53443}
.easy-evidence{margin-top:10px;border:1px solid rgba(67,102,130,.10);border-radius:16px;overflow:hidden}.easy-evidence>summary{cursor:pointer;padding:10px 12px;font-size:10px;font-weight:750;color:var(--proto-ink)}.evidence-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:0 12px 12px}.evidence-grid>div{min-width:0;border-radius:12px;background:rgba(255,255,255,.55);padding:9px}.evidence-grid small{display:block;color:var(--proto-muted);font-size:9px;margin-bottom:4px}.evidence-grid pre{margin:0;white-space:pre-wrap;overflow-wrap:anywhere;color:#294d68;font-size:10px;line-height:1.45;max-height:130px;overflow:auto}.evidence-wide{grid-column:1/-1}
.easy-candidates{display:grid;gap:9px}.easy-candidate-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;padding:12px 13px;border:1px solid rgba(67,102,130,.13);border-radius:16px;background:rgba(255,255,255,.54)}.easy-candidate-card.best{border-color:rgba(24,119,242,.30);background:rgba(24,119,242,.055);box-shadow:0 0 0 2px rgba(24,119,242,.035)}.easy-candidate-card h4{margin:0 0 3px;font-size:14px;color:var(--proto-ink)}.easy-candidate-card p{margin:0;color:var(--proto-muted);font-size:9px;line-height:1.45}.easy-candidate-meta{display:flex;gap:6px;flex-wrap:wrap;margin-top:6px}.easy-candidate-meta span{border-radius:999px;padding:4px 7px;background:rgba(70,100,125,.065);font-size:8px;color:var(--proto-muted)}
.easy-selected-reading{margin-bottom:10px;padding:10px 12px;border-radius:14px;background:rgba(91,111,130,.055);color:var(--proto-muted);font-size:10px}.easy-selected-reading.good{background:rgba(30,170,120,.08);color:#17755e}.easy-grid.parameter-grid{grid-template-columns:1.5fr 1fr 1fr}
.easy-parameter-list{display:grid;gap:7px;margin-top:12px}.easy-parameter-row{display:grid;grid-template-columns:minmax(140px,1fr) minmax(90px,.7fr) auto auto;gap:8px;align-items:center;padding:9px 10px;border:1px solid rgba(67,102,130,.11);border-radius:13px;background:rgba(255,255,255,.45);font-size:10px}.easy-parameter-row strong{color:var(--proto-ink)}.easy-parameter-row small{color:var(--proto-muted)}.easy-verified{border-radius:999px;padding:4px 7px;background:rgba(30,170,120,.10);color:#17755e;font-size:8px;font-weight:800}
.easy-profile-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.easy-summary-card{padding:10px 11px;border:1px solid rgba(67,102,130,.11);border-radius:14px;background:rgba(255,255,255,.46);min-width:0}.easy-summary-card small{display:block;color:var(--proto-muted);font-size:8px;text-transform:uppercase;letter-spacing:.04em}.easy-summary-card strong{display:block;margin-top:4px;color:var(--proto-ink);font-size:11px;overflow-wrap:anywhere}.easy-summary-parameters{grid-column:1/-1;display:grid;gap:6px}.easy-summary-param{display:grid;grid-template-columns:minmax(140px,1fr) 1fr auto;gap:8px;align-items:center;padding:8px 9px;border-radius:11px;background:rgba(255,255,255,.45);font-size:9px}
.advanced-engineering{grid-column:1/-1;padding:0!important;border-radius:22px!important;overflow:visible!important}.advanced-engineering>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;cursor:pointer;padding:15px 18px;list-style:none}.advanced-engineering>summary::-webkit-details-marker{display:none}.advanced-engineering>summary strong{color:var(--proto-ink);font-size:13px}.advanced-engineering>summary small{display:block;margin-top:2px;color:var(--proto-muted);font-size:9px}.advanced-chevron{font-size:22px;color:var(--proto-muted);transition:transform .16s ease}.advanced-engineering[open] .advanced-chevron{transform:rotate(90deg)}.advanced-engineering-body{display:grid;grid-template-columns:minmax(0,1fr);gap:14px;padding:0 12px 12px;border-top:1px solid rgba(67,102,130,.10)}.advanced-engineering-body>.studio-panel,.advanced-engineering-body>.advanced-diagnostics{margin-top:12px}
@media(max-width:980px){.easy-grid,.easy-grid.identity-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.easy-model-parameters{grid-template-columns:repeat(2,minmax(0,1fr))}.easy-profile-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){.easy-model-parameters{grid-template-columns:1fr}.easy-mode-head{align-items:flex-start}.easy-step-head{grid-template-columns:30px minmax(0,1fr)}.easy-step-state{grid-column:2;justify-self:start}.easy-grid,.easy-grid.identity-grid,.easy-grid.parameter-grid{grid-template-columns:1fr}.easy-command-mode{grid-template-columns:1fr}.easy-profile-summary{grid-template-columns:1fr}.evidence-grid{grid-template-columns:1fr}.evidence-wide{grid-column:1}.easy-candidate-card{grid-template-columns:1fr}.easy-parameter-row{grid-template-columns:1fr auto}.easy-summary-parameters{grid-column:1}.easy-summary-param{grid-template-columns:1fr auto}}

/* AESST DAS 4.20.47 — Protocol Analysis Lab + protocol mismatch guidance. */
.easy-protocol-hint{margin-top:10px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border:1px solid rgba(214,139,34,.22);border-radius:14px;background:linear-gradient(180deg,rgba(255,248,233,.92),rgba(255,243,218,.78));color:#7a541d}
.easy-protocol-hint[hidden]{display:none!important}.easy-protocol-hint>div{display:grid;gap:2px;min-width:0}.easy-protocol-hint strong{font-size:10px}.easy-protocol-hint span{font-size:9px;line-height:1.45}.easy-protocol-hint .touch-button{flex:none}
.protocol-analysis-lab{display:grid!important;gap:10px!important}.protocol-analysis-head{margin-bottom:0!important}.protocol-analysis-head .actions{align-items:center!important;justify-content:flex-end!important}.protocol-analysis-guide{display:flex;align-items:flex-start;gap:10px;padding:9px 11px;border:1px solid rgba(24,119,242,.12);border-radius:13px;background:rgba(24,119,242,.045);font-size:9px;line-height:1.45;color:var(--proto-muted)}.protocol-analysis-guide strong{flex:none;color:var(--proto-blue-deep)}
.protocol-analysis-tabs{display:flex;gap:5px;overflow-x:auto;padding:4px;border:1px solid var(--proto-line);border-radius:13px;background:rgba(239,246,252,.72);scrollbar-width:thin}.protocol-analysis-tabs button{appearance:none;border:1px solid transparent;border-radius:10px;min-height:32px;padding:6px 10px;background:transparent;color:var(--proto-muted);font:inherit;font-size:9px;font-weight:800;white-space:nowrap;cursor:pointer}.protocol-analysis-tabs button:hover{background:rgba(255,255,255,.72);color:var(--proto-ink)}.protocol-analysis-tabs button.active{border-color:rgba(24,119,242,.20);background:#fff;color:var(--proto-blue-deep);box-shadow:0 4px 12px rgba(38,82,118,.08)}
.protocol-analysis-content{min-height:220px}.protocol-analysis-content>[data-protocol-analysis-panel]{display:grid;gap:10px}.protocol-analysis-content>[data-protocol-analysis-panel][hidden]{display:none!important}.protocol-analysis-metrics{display:grid;grid-template-columns:repeat(4,minmax(120px,1fr));gap:8px}.protocol-analysis-metrics article,.protocol-analysis-evidence article,.protocol-value-summary article{padding:10px 11px;border:1px solid var(--proto-line);border-radius:13px;background:rgba(255,255,255,.58);min-width:0;display:grid;gap:4px}.protocol-analysis-metrics small,.protocol-analysis-evidence small,.protocol-value-summary small{font-size:8px;text-transform:uppercase;letter-spacing:.05em;color:var(--proto-muted)}.protocol-analysis-metrics strong{font-size:15px;color:var(--proto-ink)}.protocol-analysis-evidence{display:grid;grid-template-columns:1fr 1fr;gap:8px}.protocol-analysis-evidence code{font-size:9px;overflow-wrap:anywhere}.protocol-analysis-evidence span{font-size:9px;color:var(--proto-muted);overflow-wrap:anywhere}.protocol-analysis-note{display:flex;gap:9px;padding:9px 11px;border-radius:12px;background:rgba(42,124,191,.055);color:var(--proto-muted);font-size:9px;line-height:1.45}.protocol-analysis-note strong{color:var(--proto-ink);flex:none}
.protocol-analysis-subhead{display:flex;justify-content:space-between;align-items:end;gap:10px}.protocol-analysis-subhead strong{font-size:11px}.protocol-analysis-subhead small{display:block;margin-top:2px;color:var(--proto-muted);font-size:8px}.protocol-byte-map{display:flex;gap:4px;flex-wrap:wrap;padding:9px;border:1px solid var(--proto-line);border-radius:13px;background:var(--adq-technical-bg);max-height:240px;overflow:auto}.protocol-byte{display:grid;justify-items:center;gap:2px;min-width:42px;padding:5px 6px;border-radius:8px;border:1px solid rgba(80,110,135,.12);font-size:8px}.protocol-byte b{font-size:7px;color:var(--proto-muted)}.protocol-byte code{font-size:8px}.protocol-byte.constant{background:rgba(24,119,242,.10);color:#155fa8}.protocol-byte.changing{background:rgba(236,148,44,.13);color:#89540e}
.protocol-range-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}.protocol-range-grid article{min-width:0}.protocol-range-grid h4{margin:0 0 6px;font-size:10px;color:var(--proto-ink)}.protocol-analysis-table-wrap{overflow:auto;border:1px solid var(--proto-line);border-radius:12px;background:rgba(255,255,255,.50)}.protocol-analysis-table-wrap table{width:100%;border-collapse:collapse;min-width:460px;font-size:8.5px}.protocol-analysis-table-wrap th,.protocol-analysis-table-wrap td{padding:7px 8px;text-align:left;border-bottom:1px solid rgba(74,105,130,.08);vertical-align:top}.protocol-analysis-table-wrap th{position:sticky;top:0;background:#edf5fb;color:#587087;font-size:8px;text-transform:uppercase;letter-spacing:.04em}.protocol-analysis-table-wrap code{overflow-wrap:anywhere;white-space:normal}
.protocol-value-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:8px}.protocol-value-summary strong{font-size:12px;color:var(--proto-ink);overflow-wrap:anywhere}.protocol-value-summary span{font-size:8px;color:var(--proto-muted)}.protocol-parser-suggestion{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;padding:11px 12px;border:1px solid var(--proto-line);border-radius:14px;background:rgba(255,255,255,.58)}.protocol-parser-suggestion h4{margin:5px 0 3px;font-size:11px;color:var(--proto-ink)}.protocol-parser-suggestion p{margin:0 0 6px;color:var(--proto-muted);font-size:8.5px;line-height:1.4}.protocol-parser-suggestion code{display:block;padding:6px 8px;border-radius:9px;background:var(--adq-technical-bg);color:var(--adq-technical-ink);font-size:8px;overflow-wrap:anywhere}.protocol-parser-suggestion small{display:block;margin-top:5px;color:var(--proto-muted);font-size:8px}
@media(max-width:900px){.protocol-analysis-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.protocol-analysis-evidence,.protocol-range-grid{grid-template-columns:1fr}.protocol-parser-suggestion{grid-template-columns:1fr}.protocol-analysis-head{display:grid!important}.protocol-analysis-head .actions{justify-content:flex-start!important}}
@media(max-width:560px){.protocol-analysis-metrics{grid-template-columns:1fr}.easy-protocol-hint{align-items:flex-start;flex-direction:column}.protocol-analysis-guide{display:grid}.protocol-analysis-tabs{padding-bottom:6px}}

/* AESST DAS 4.20.54 — shared toast host owns Protocol Studio notifications; portable command profiles carry no bottom-flow notification container. */

/* 4.20.62 explicit Configuration model binding */
.easy-profile-binding{margin:12px 0;padding:14px;border:1px solid rgba(70,115,155,.16);border-radius:16px;background:rgba(239,248,255,.62)}
.profile-binding-grid{margin-top:10px}.profile-binding-grid label{min-width:0}.profile-binding-grid #easy-map-profile-id[readonly]{background:rgba(235,242,248,.78);color:#456277}

/* AESST DAS 4.20.62 — Canva Industrial Minimal Protocol Studio */
body{padding:10px 12px 24px!important;background:var(--adq-shell-bg)!important}.protocol-studio-shell{max-width:1500px!important;margin:0 auto!important;gap:10px!important}.studio-panel,.protocol-studio{border-radius:12px!important;background:var(--adq-surface)!important;border:1px solid var(--adq-edge)!important;box-shadow:none!important}
.easy-mode-shell{gap:9px!important}.easy-mode-head{padding:11px 12px!important;border-radius:10px!important;background:var(--adq-surface-soft)!important;border:1px solid var(--adq-edge)!important}
.easy-step{padding:11px!important;border-radius:10px!important;background:var(--adq-surface)!important;border:1px solid var(--adq-edge)!important;box-shadow:none!important}
.easy-step:hover{border-color:color-mix(in srgb,var(--adq-accent) 28%,var(--adq-edge))!important}.easy-step-head{padding-bottom:8px!important;margin-bottom:9px!important;border-bottom:1px solid var(--adq-divider)!important}
.easy-step-number{width:25px!important;height:25px!important;border-radius:7px!important;background:var(--adq-accent-soft)!important;color:var(--adq-accent)!important;border:1px solid color-mix(in srgb,var(--adq-accent) 22%,var(--adq-edge))!important;box-shadow:none!important}
.easy-step-state,.easy-mode-badge{border-radius:7px!important;box-shadow:none!important}.easy-grid{gap:8px!important}.easy-action-row{gap:7px!important}
.easy-model-parameter-panel,.easy-profile-binding,.advanced-diagnostics,.advanced-engineering,.modbus-mapper,.universal-framing-panel,.protocol-analysis-lab{border-radius:10px!important;background:var(--adq-surface-soft)!important;border:1px solid var(--adq-edge)!important;box-shadow:none!important}
.easy-model-parameters,.capture-list,.easy-candidates,.profile-parameters{gap:6px!important}.easy-model-parameters button,.easy-candidates button{border-radius:8px!important;background:var(--adq-surface)!important;border:1px solid var(--adq-edge)!important;box-shadow:none!important}
.protocol-analysis-tabs{border-radius:9px!important;background:var(--adq-surface)!important;border:1px solid var(--adq-edge)!important}.protocol-analysis-tabs button{border-radius:7px!important}.protocol-analysis-tabs button.active{background:var(--adq-accent-soft)!important;color:var(--adq-accent)!important}
.protocol-analysis-table-wrap{border-radius:9px!important;background:var(--adq-surface)!important;border:1px solid var(--adq-edge)!important}
.easy-suggestion-popover{border-radius:9px!important;background:var(--adq-surface)!important;border:1px solid var(--adq-edge)!important;box-shadow:var(--adq-shadow-md)!important}

/* AESST DAS 4.20.62 Material Flat Protocol Studio refinement. */
html.adq-material-flat .easy-step,
html.adq-material-flat .studio-panel,
html.adq-material-flat .protocol-studio{
  background:var(--adq-material-surface)!important;
  background-image:none!important;
  border-color:var(--adq-material-outline)!important;
  box-shadow:var(--adq-material-shadow-1)!important;
}
html.adq-material-flat .easy-mode-head,
html.adq-material-flat .easy-model-parameter-panel,
html.adq-material-flat .easy-profile-binding,
html.adq-material-flat .advanced-diagnostics,
html.adq-material-flat .advanced-engineering,
html.adq-material-flat .modbus-mapper,
html.adq-material-flat .universal-framing-panel,
html.adq-material-flat .protocol-analysis-lab{
  background:var(--adq-material-surface-2)!important;
  background-image:none!important;
  border-color:var(--adq-material-outline)!important;
  box-shadow:none!important;
}
html.adq-material-flat .protocol-analysis-tabs{background:var(--adq-material-surface)!important;border-color:var(--adq-material-outline)!important;box-shadow:none!important}
html.adq-material-flat .protocol-analysis-tabs button.active{background:var(--adq-material-primary-soft)!important;color:var(--adq-material-primary)!important;box-shadow:none!important}
html.adq-material-flat .easy-suggestion-popover{background:var(--adq-material-surface)!important;border-color:var(--adq-material-outline)!important;box-shadow:var(--adq-material-shadow-2)!important}


/* AESST DAS 4.20.62 UI2 — Protocol Studio native scroll + Material spacing authority. */
html.adq-ui2 body.protocol-studio-shell{overflow-y:auto!important;overflow-x:hidden!important;overscroll-behavior-y:auto!important;touch-action:pan-y!important;padding:14px 16px 24px!important}
html.adq-ui2 body.protocol-studio-shell .protocol-grid{gap:16px!important;padding:16px 0 24px!important}
html.adq-ui2 body.protocol-studio-shell .studio-panel{padding:16px!important;border-radius:14px!important;background:var(--adq-material-surface)!important;border:1px solid var(--adq-material-outline)!important;box-shadow:var(--adq-material-shadow-1)!important}
html.adq-ui2 body.protocol-studio-shell .form-grid{gap:12px 14px!important}


/* ======================================================================
   LEGACY MIGRATION SOURCE: src/daq/webui/service/service.css
   Consolidated into the single universal Project 00 stylesheet.
   ====================================================================== */
/* AESST DAS 4.20.62 — Premium Mica Service Manager */
.service-manager-shell{background:transparent!important;color:var(--adq-text-primary);overflow:hidden}
.service-manager-shell .app-shell{height:100dvh;display:flex;flex-direction:column;overflow:hidden}
.service-manager-shell .app-content{flex:1 1 auto;min-height:0;overflow:auto;padding:15px 18px 5px!important}
.service-manager-shell .app-content-inner{width:min(1560px,100%);margin:0 auto}
.service-page{display:grid;gap:13px}

.service-commandbar{min-height:78px;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:13px 16px;border:1px solid var(--adq-edge);border-radius:20px;background:linear-gradient(145deg,var(--adq-surface-strong),var(--adq-surface));box-shadow:var(--adq-shadow-md);position:relative;overflow:hidden}
.service-commandbar:after{content:"";position:absolute;inset:0 auto 0 0;width:4px;background:linear-gradient(180deg,var(--adq-accent),var(--adq-accent-2))}
.service-commandbar .suite-brand{display:flex;align-items:center;gap:13px;min-width:0}.service-commandbar .suite-brand-mark{width:42px;height:42px;flex:0 0 auto;filter:drop-shadow(0 5px 9px rgba(20,99,158,.14))}
.service-title-stack{min-width:0}.service-title-stack .eyebrow{display:block;margin-bottom:2px}.service-title-line{display:flex;align-items:center;gap:9px;min-width:0;flex-wrap:wrap}.service-title-line h1{margin:0;font-size:22px;line-height:1.05;letter-spacing:-.035em}.service-product{font-size:10px;color:var(--adq-text-tertiary);font-weight:700;white-space:nowrap}.service-title-stack p{margin:4px 0 0;font-size:10px;color:var(--adq-text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:760px}.build-chip{font:800 8px/1 var(--adq-font);letter-spacing:.06em;color:var(--adq-accent);background:var(--adq-accent-soft);border:1px solid color-mix(in srgb,var(--adq-accent) 18%,var(--adq-edge));border-radius:999px;padding:5px 7px}
.hero-session{display:flex;align-items:center;gap:8px;flex:0 0 auto}.account-control{display:flex;align-items:center;gap:7px}.account-icon-action{width:36px!important;min-width:36px!important;height:36px!important;padding:0!important}.account-icon-action svg{width:17px;height:17px}.account-icon-action:not(.is-authenticated) .logout-icon,.account-icon-action.is-authenticated .login-icon{display:none}.account-icon-action:not(.is-authenticated) .login-icon,.account-icon-action.is-authenticated .logout-icon{display:block}.session-user-chip{min-height:36px;padding:6px 10px!important;display:flex;align-items:center;gap:7px}.session-user-chip .session-label{font-size:8px;text-transform:uppercase;color:var(--adq-text-tertiary)}.session-user-chip strong{font-size:10px}

.service-workbench{display:grid;grid-template-columns:minmax(300px,360px) minmax(0,1fr);gap:13px;min-height:0}
.service-control-rail{display:grid;grid-template-rows:auto auto;gap:13px;align-content:start}
.service-operations-pane{display:grid;grid-template-rows:auto minmax(320px,1fr) auto;gap:13px;min-width:0;min-height:0}
.service-primary-console,.service-database-panel,.service-activity-panel,.reliability-strip,.operations-strip{border:1px solid var(--adq-edge);border-radius:18px;background:linear-gradient(145deg,var(--adq-surface-strong),var(--adq-surface));box-shadow:var(--adq-shadow-md)}

.service-primary-console{padding:18px;background:radial-gradient(circle at 100% 0%,rgba(52,157,236,.18),transparent 44%),linear-gradient(150deg,#102f47,#0b2134 58%,#081a2a)!important;color:#f6fbff;border-color:rgba(99,181,240,.20);box-shadow:0 1px 0 rgba(255,255,255,.07) inset,0 14px 34px rgba(12,45,70,.18)!important;position:relative;overflow:hidden}
.service-primary-console:after{content:"";position:absolute;width:180px;height:180px;border:1px solid rgba(105,185,255,.10);border-radius:50%;right:-92px;bottom:-98px;box-shadow:0 0 0 25px rgba(105,185,255,.025),0 0 0 52px rgba(105,185,255,.018)}
.service-primary-console>*{position:relative;z-index:1}.service-primary-console .panel-kicker,.service-primary-console .runtime-label{color:#8cc9f6!important}.service-primary-console h2,.service-primary-console strong{color:#fff!important}.service-primary-console .status-chip{background:rgba(255,255,255,.08)!important;color:#e9f6ff!important;border-color:rgba(255,255,255,.14)!important}
.console-head,.section-head,.reliability-title{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.console-head h2,.section-head h2,.reliability-title h2{margin:3px 0 0;font-size:16px;letter-spacing:-.02em}.panel-kicker{font-size:8px;letter-spacing:.12em;text-transform:uppercase;font-weight:850;color:var(--adq-accent)}
.runtime-console{display:grid;grid-template-columns:72px minmax(0,1fr);align-items:center;gap:15px;margin:18px 0;padding:17px 0;border-top:1px solid rgba(255,255,255,.09);border-bottom:1px solid rgba(255,255,255,.09)}
.service-orb{display:grid;place-items:center}.orb-ring{width:62px;height:62px;border-radius:50%;display:grid;place-items:center;border:1px solid rgba(255,255,255,.15);background:radial-gradient(circle,rgba(105,185,255,.08),rgba(255,255,255,.02));box-shadow:0 0 0 7px rgba(105,185,255,.025)}.orb-core{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:#17374d;border:1px solid rgba(255,255,255,.13);box-shadow:inset 0 0 16px rgba(100,184,242,.08)}.orb-state-dot{width:9px;height:9px;border-radius:50%;background:#91a9b9;box-shadow:0 0 0 5px rgba(145,169,185,.10)}.service-orb.running .orb-core{background:#113c32}.service-orb.running .orb-state-dot{background:#5bd1b2;box-shadow:0 0 0 5px rgba(91,209,178,.13),0 0 18px rgba(91,209,178,.22)}.service-orb.starting .orb-core{background:#463619}.service-orb.starting .orb-state-dot{background:#e6b55f;box-shadow:0 0 0 5px rgba(230,181,95,.12)}
.runtime-copy{display:grid;gap:3px;min-width:0}.runtime-label{font-size:8px;text-transform:uppercase;letter-spacing:.10em}.runtime-copy>#metric-runtime{font-size:31px;line-height:1;letter-spacing:-.045em}.runtime-copy>#metric-runtime-caption{font-size:10px;color:#bfd3e1}.runtime-detail-title{margin-top:9px;font-size:11px}.runtime-detail{font-size:9px;color:#9db8ca;line-height:1.4}
.service-actions{display:grid;grid-template-columns:1fr 96px;gap:8px}.service-primary-console .touch-button:not(.primary){background:rgba(255,255,255,.08)!important;color:#edf8ff!important;border-color:rgba(255,255,255,.14)!important;box-shadow:none!important}.service-primary-console .touch-button:disabled{opacity:.48!important}

.service-database-panel{padding:15px}.compact-head{margin-bottom:12px}.compact-head p{margin:3px 0 0;font-size:9px;color:var(--adq-text-secondary);max-width:100%;font-family:ui-monospace,SFMono-Regular,Consolas,monospace}.service-db-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.service-db-actions [data-db-action="delete"]{grid-column:span 2}

.operations-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));overflow:hidden;box-shadow:var(--adq-shadow-md)}
.operation-summary{padding:14px 15px;min-width:0;border-right:1px solid var(--adq-divider);display:grid;gap:4px;position:relative}.operation-summary:before{content:"";position:absolute;left:15px;top:0;width:34px;height:3px;border-radius:0 0 4px 4px;background:var(--adq-accent)}.operation-summary:nth-child(2):before{background:var(--adq-accent-2)}.operation-summary:nth-child(3):before{background:#7c64d9}.operation-summary:last-child{border-right:0}.summary-label{font-size:8px;text-transform:uppercase;letter-spacing:.09em;color:var(--adq-text-tertiary);font-weight:850;margin-top:3px}.operation-summary strong{font-size:16px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;letter-spacing:-.02em}.operation-summary>span:last-child{font-size:9px;color:var(--adq-text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

.service-activity-panel{padding:15px;min-height:0;display:flex;flex-direction:column}.service-activity-panel .section-head{margin-bottom:11px}.activity-list{flex:1 1 auto;min-height:260px;max-height:52vh;overflow:auto;border:1px solid var(--adq-edge);border-radius:13px;background:linear-gradient(180deg,color-mix(in srgb,var(--adq-surface-soft) 86%,transparent),var(--adq-surface));box-shadow:0 1px 0 var(--adq-border-bright) inset}.activity-row{display:grid;grid-template-columns:12px 64px minmax(0,1fr);align-items:center;gap:8px;padding:8px 11px;border-bottom:1px solid var(--adq-divider);font-size:9px;min-height:33px}.activity-row:last-child{border-bottom:0}.timeline-dot{width:7px;height:7px;border-radius:50%;background:var(--adq-accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--adq-accent) 10%,transparent)}.timeline-dot.error{background:var(--adq-danger)}.timeline-dot.warning,.timeline-dot.warn{background:var(--adq-warning)}.activity-time{color:var(--adq-text-tertiary);font-family:ui-monospace,SFMono-Regular,Consolas,monospace}.activity-message{color:var(--adq-text-primary);line-height:1.35}.empty-state{min-height:170px;display:grid;place-items:center;text-align:center;color:var(--adq-text-secondary);font-size:10px}.empty-state strong{display:block;margin-bottom:4px;color:var(--adq-text-primary)}

.reliability-strip{display:grid;grid-template-columns:minmax(150px,.72fr) minmax(220px,1.2fr) minmax(220px,1.2fr) auto;gap:9px;align-items:stretch;padding:10px}.reliability-title{align-items:center;padding:5px 7px}.startup-option{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 36px;align-items:center;gap:8px;margin:0;padding:10px 11px;border:1px solid var(--adq-edge);border-radius:13px;background:var(--adq-surface-soft);cursor:pointer}.startup-option strong{display:block;font-size:10px}.startup-option small{display:block;margin-top:2px;font-size:8px;line-height:1.28;color:var(--adq-text-secondary)}.startup-option input{position:absolute;opacity:0;pointer-events:none}.switch-ui{width:34px;height:19px;border-radius:999px;background:color-mix(in srgb,var(--adq-text-tertiary) 35%,var(--adq-surface-soft));position:relative;transition:.16s}.switch-ui:after{content:"";position:absolute;top:3px;left:3px;width:13px;height:13px;border-radius:50%;background:#fff;box-shadow:0 2px 5px rgba(15,41,61,.18);transition:.16s}.startup-option input:checked+.switch-ui{background:var(--adq-accent)}.startup-option input:checked+.switch-ui:after{transform:translateX(15px)}.startup-option input:disabled+.switch-ui{opacity:.48}.reliability-quit{height:100%!important;min-width:102px}

.service-manager-shell #service-dock{position:relative!important;left:auto!important;bottom:auto!important;transform:none!important;margin:9px auto 11px!important;flex:0 0 auto!important;width:min(570px,calc(100vw - 20px))!important}.service-manager-shell #service-dock .dock{height:64px!important;min-height:64px!important;padding:5px!important;border-radius:18px!important}.service-manager-shell #service-dock .dock-item{height:52px!important;min-height:52px!important;border-radius:13px!important;grid-template-rows:23px 12px!important}.service-manager-shell #service-dock .dock-item .icon,.service-manager-shell #service-dock .dock-item .icon svg{width:21px!important;height:21px!important}.service-manager-shell #service-dock .dock-item .label{font-size:9px!important}
.service-manager-shell{--service-dock-width:570px;--service-dock-height:64px;--suite-dock-height:64px}#hero-status{display:none!important}.service-manager-shell .account-control.is-authenticated .session-label{display:inline!important}.service-manager-shell .dock-item[data-dock="service"]{--dock-accent:#1478d4}.service-manager-shell .dock-item[data-dock="configuration"]{--dock-accent:#735fd4}.service-manager-shell .dock-item[data-dock="dashboard"]{--dock-accent:#0c9b82}.service-manager-shell .dock-item[data-dock]{color:var(--adq-text-secondary)!important}.service-manager-shell .dock-item[data-dock] .icon{color:var(--dock-accent)!important}.service-manager-shell .dock-item[data-dock].active{color:var(--dock-accent)!important;background:linear-gradient(180deg,color-mix(in srgb,var(--dock-accent) 12%,var(--adq-surface)),color-mix(in srgb,var(--dock-accent) 7%,var(--adq-surface)))!important;box-shadow:0 5px 13px color-mix(in srgb,var(--dock-accent) 10%,transparent)!important}.service-manager-shell .dock-item[data-dock="configuration"]{opacity:1!important}


@media(max-width:1050px){.service-workbench{grid-template-columns:1fr}.service-control-rail{grid-template-columns:1fr 1fr;grid-template-rows:auto}.service-operations-pane{grid-template-rows:auto minmax(300px,1fr) auto}.reliability-strip{grid-template-columns:1fr 1fr}.reliability-title{grid-column:1/-1}.reliability-quit{grid-column:1/-1;height:38px!important}}
@media(max-width:720px){.service-commandbar{align-items:flex-start}.service-product,.service-title-stack p{display:none}.hero-session{flex-wrap:wrap;justify-content:flex-end}.service-control-rail{grid-template-columns:1fr}.operations-strip{grid-template-columns:1fr}.operation-summary{border-right:0;border-bottom:1px solid var(--adq-divider)}.operation-summary:last-child{border-bottom:0}.reliability-strip{grid-template-columns:1fr}.reliability-title,.reliability-quit{grid-column:auto}.service-manager-shell .app-content{padding:10px 10px 2px!important}}

/* Runtime/auth compatibility retained after structural redesign. */
.service-manager-shell .account-control:not(.is-authenticated) .account-identity{display:none!important}.service-manager-shell .account-icon-action svg{display:block!important;opacity:1!important;visibility:visible!important}.service-manager-shell .account-icon-action:not(.is-authenticated) .logout-icon{display:none!important}.service-manager-shell .account-icon-action.is-authenticated .login-icon{display:none!important}.service-manager-shell .service-db-actions .touch-button:disabled{opacity:.75!important;color:var(--adq-text-secondary)!important;-webkit-text-fill-color:var(--adq-text-secondary)!important;background:var(--adq-surface-soft)!important;border-color:var(--adq-edge)!important}.service-manager-shell .modal{width:min(420px,calc(100vw - 30px));max-height:calc(100vh - 48px);overflow:auto}.service-manager-shell .auth-brand{display:flex;align-items:center;gap:10px;margin-bottom:10px}.service-manager-shell .auth-brand>img{width:44px;height:44px;border-radius:10px;object-fit:contain}.service-manager-shell .auth-brand span{display:block;font-size:13px;font-weight:800}.service-manager-shell .auth-brand small{display:block;font-size:9px;color:var(--adq-text-secondary)}.service-manager-shell .auth-actions{display:grid;grid-template-columns:1fr auto;gap:8px;margin-top:12px}.service-manager-shell .auth-cancel{display:inline-flex!important;align-items:center;justify-content:center;min-width:74px!important;color:var(--adq-text-primary)!important;background:var(--adq-surface-soft)!important;border-color:var(--adq-edge)!important;opacity:1!important;visibility:visible!important}.service-manager-shell .account-control.is-authenticated .account-identity{display:inline-flex!important}.service-manager-shell .account-icon-action svg{stroke:var(--adq-accent)!important;fill:none!important;stroke-width:1.9!important;stroke-linecap:round!important;stroke-linejoin:round!important}.service-manager-shell [data-db-action="create"],.service-manager-shell [data-db-action="connect"]{font-weight:760!important}.service-manager-shell [data-db-action="delete"]{color:var(--adq-danger)!important}.service-manager-shell #service-dock .dock{align-items:center!important}

html[data-theme="light"] .service-manager-shell .auth-cancel{color:#245879!important}

/* AESST DAS 4.20.62 Material Flat Service Manager refinement. */
html.adq-material-flat .service-primary-console,
html.adq-material-flat .service-database-panel,
html.adq-material-flat .operations-strip,
html.adq-material-flat .reliability-strip{
  background:var(--adq-material-surface)!important;
  background-image:none!important;
  border:1px solid var(--adq-material-outline)!important;
  box-shadow:var(--adq-material-shadow-1)!important;
}
html.adq-material-flat .service-primary-console{background:linear-gradient(145deg,#123149,#0e273a)!important;border-color:#25485f!important;color:#f4f9fd!important}
html.adq-material-flat .service-primary-console :is(.runtime-label,.runtime-detail,.panel-kicker){color:#b9d0df!important}
html.adq-material-flat .runtime-console{background:rgba(5,18,28,.32)!important;border:1px solid rgba(177,213,237,.15)!important;box-shadow:none!important}
html.adq-material-flat .service-db-actions{gap:7px!important}
html.adq-material-flat .operation-summary{background:transparent!important;box-shadow:none!important}


/* AESST DAS 4.20.62 UI2 — Service Manager scroll/spacing authority. */
html.adq-ui2 body.service-manager-shell .app-content{overflow-y:auto!important;overflow-x:hidden!important;overscroll-behavior-y:auto!important;touch-action:pan-y!important;padding:18px 20px 8px!important}
html.adq-ui2 body.service-manager-shell .service-workbench{gap:16px!important}
html.adq-ui2 body.service-manager-shell .service-control-rail{gap:14px!important}
html.adq-ui2 body.service-manager-shell .service-operations-pane{gap:14px!important}
html.adq-ui2 body.service-manager-shell #service-dock{margin:12px auto 14px!important;padding:7px!important;border-radius:18px!important;background:var(--adq-material-surface)!important;border:1px solid var(--adq-material-outline)!important;box-shadow:var(--adq-material-shadow-2)!important}
html.adq-ui2 body.service-manager-shell #service-dock .dock{gap:7px!important;background:transparent!important;border:0!important;box-shadow:none!important}


/* ======================================================================
   LEGACY MIGRATION SOURCE: src/daq/webui/unified/unified.css
   Consolidated into the single universal Project 00 stylesheet.
   ====================================================================== */
:root{
  --sidebar-w:260px;--topbar-h:68px;--bg:#e9eff5;--bg-2:#f2f6fa;--panel:#ffffff;--panel-2:#f7fafc;
  --ink:#102a43;--ink-2:#486581;--muted:#829ab1;--line:#d8e2ec;--line-2:#cbd8e5;
  --primary:#246bfd;--primary-2:#1b5de3;--cyan:#0ea5c6;--green:#16a36a;--orange:#d88913;--red:#d34f5f;--purple:#7b55e7;
  --sidebar:#0a1625;--sidebar-2:#0d1e31;--sidebar-ink:#d9e7f4;--sidebar-muted:#9fb5c9;
  --shadow-sm:0 8px 24px rgba(17,39,65,.06);--shadow:0 18px 50px rgba(20,42,68,.10);--shadow-xl:0 28px 80px rgba(10,28,49,.22);
  --r-sm:10px;--r:14px;--r-lg:20px;--ease:cubic-bezier(.2,.8,.2,1);
  --text-primary:#17324b;--text-secondary:#5a6e82;--text-muted:#5b6e83;--text-accent:#105dfd;
  --text-on-dark:#f3f8fc;--text-sidebar:#90a7bd;--surface-control:#ffffff;
  --radius-control:10px;--radius-card:14px;--radius-hero:18px;--radius-pill:999px;
}
*{box-sizing:border-box}html,body{width:100%;height:100%;margin:0;overflow:hidden;background:var(--bg);color:var(--ink);font-family:"Segoe UI Variable","Segoe UI",Inter,system-ui,-apple-system,sans-serif;font-size:14px}button,input,select,textarea{font:inherit}button{cursor:pointer}svg{fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.icon-sprite{position:absolute;width:0;height:0;overflow:hidden}
.app-shell{height:calc(100dvh / var(--nb-zoom,1));display:grid;grid-template-columns:var(--sidebar-w) minmax(0,1fr);background:linear-gradient(135deg,#e7eef6 0%,#f4f7fa 48%,#e9f4f4 100%)}
.sidebar{min-width:0;display:flex;flex-direction:column;background-color:var(--sidebar);background-image:linear-gradient(180deg,var(--sidebar) 0%,#0a1828 48%,var(--sidebar-2) 100%);color:var(--sidebar-ink);border-right:1px solid rgba(255,255,255,.06);box-shadow:12px 0 34px rgba(9,25,43,.10);z-index:40;overflow:hidden}
.brand-block{height:84px;display:flex;align-items:center;gap:12px;padding:16px 17px;border-bottom:1px solid rgba(255,255,255,.08);flex:0 0 auto}.brand-block img{width:44px;height:44px;border-radius:13px;filter:drop-shadow(0 8px 18px rgba(30,112,255,.25))}.brand-copy{display:flex;flex-direction:column;min-width:0}.brand-copy strong{font-size:17px;letter-spacing:-.02em;color:#fff}.brand-copy span{font-size:9px;letter-spacing:.16em;font-weight:750;color:#9fb5c9;margin-top:4px}.sidebar-scroll{min-height:0;flex:1;overflow:auto;padding:15px 11px 18px;scrollbar-width:thin;scrollbar-color:#29435c transparent}.nav-group{margin-bottom:18px}.nav-label{padding:0 10px 8px;font-size:9px;font-weight:800;letter-spacing:.16em;color:var(--sidebar-muted)}.nav-item{width:100%;height:44px;border:1px solid transparent;background:transparent;color:#90a7bd;border-radius:11px;display:grid;grid-template-columns:24px minmax(0,1fr) auto;align-items:center;gap:9px;padding:0 10px;text-align:left;transition:background .16s var(--ease),color .16s var(--ease),transform .16s var(--ease),border-color .16s var(--ease)}.nav-item svg{width:18px;height:18px}.nav-item span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:620}.nav-item:hover{background:rgba(255,255,255,.055);color:#e9f4ff;transform:translateX(2px)}.nav-item.active{background-color:#153b6b;background-image:linear-gradient(90deg,rgba(45,105,255,.26),rgba(45,105,255,.10));border-color:rgba(93,142,255,.16);color:#fff;box-shadow:inset 3px 0 0 #5f8cff}.nav-badge{font-size:8px;font-weight:800;letter-spacing:.06em;color:#74d5a9;background:rgba(24,166,105,.13);border:1px solid rgba(71,203,148,.17);border-radius:999px;padding:3px 6px}.nav-badge.pro{color:#cdbfff;background:rgba(123,85,231,.15);border-color:rgba(167,139,250,.20)}
.sidebar-footer{padding:12px 12px 13px;border-top:1px solid rgba(255,255,255,.08);flex:0 0 auto}.sidebar-account{width:100%;display:grid;grid-template-columns:36px minmax(0,1fr) 8px;align-items:center;gap:9px;border:1px solid rgba(255,255,255,.07);background:rgba(255,255,255,.04);color:inherit;padding:9px;border-radius:12px;text-align:left;transition:background .16s,border-color .16s}.sidebar-account:hover{background:rgba(255,255,255,.07);border-color:rgba(255,255,255,.12)}.avatar{width:36px;height:36px;border-radius:11px;display:grid;place-items:center;background:linear-gradient(145deg,#163c5c,#102b45);color:#8fc1ef;border:1px solid rgba(255,255,255,.08)}.avatar svg{width:17px;height:17px}.avatar.compact{width:30px;height:30px;border-radius:9px;background:#eaf4ff;color:#2369d9;border:1px solid #d4e6f8}.sidebar-account-copy{min-width:0;display:flex;flex-direction:column}.sidebar-account-copy strong{font-size:11px;color:#f3f8fc;overflow:hidden;text-overflow:ellipsis}.sidebar-account-copy small{font-size:8.5px;color:#7290a9;margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.presence{width:7px;height:7px;border-radius:50%;background:#9cb0c2}.presence.online{background:#27c47c;box-shadow:0 0 0 3px rgba(39,196,124,.12)}.build-label{text-align:center;color:var(--sidebar-muted);font-size:8px;letter-spacing:.06em;padding-top:9px}
.app-main{min-width:0;min-height:0;display:grid;grid-template-rows:var(--topbar-h) minmax(0,1fr)}.topbar{height:var(--topbar-h);display:flex;align-items:center;justify-content:space-between;gap:18px;padding:0 22px;background:rgba(255,255,255,.92);border-bottom:1px solid var(--line);box-shadow:0 1px 0 rgba(24,47,73,.03);backdrop-filter:saturate(125%) blur(12px);z-index:20}.topbar-left,.topbar-right{display:flex;align-items:center;gap:10px;min-width:0}.breadcrumbs{display:flex;align-items:center;gap:7px;min-width:0}.breadcrumbs span{color:var(--text-muted);font-size:11px}.breadcrumbs svg{width:12px;height:12px;color:#a3b1bf}.breadcrumbs strong{font-size:13px;color:#263b50;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.search-box{width:min(320px,calc(27vw / var(--nb-zoom,1)));height:38px;border:1px solid var(--line);background:#f7fafc;border-radius:11px;display:flex;align-items:center;gap:8px;padding:0 10px;transition:border-color .15s,box-shadow .15s,background .15s}.search-box:focus-within{background:#fff;border-color:#9dbef5;box-shadow:0 0 0 3px rgba(36,107,253,.08)}.search-box svg{width:15px;height:15px;color:#7b8da0}.search-box input{flex:1;min-width:0;border:0;outline:0;background:transparent;color:var(--ink);font-size:11px}.search-box kbd{font-size:8px;color:#8292a3;background:#edf2f7;border:1px solid #dfe6ee;border-radius:5px;padding:2px 5px}.toolbar-icon{width:38px;height:38px;display:grid;place-items:center;border:1px solid var(--line);background:#fff;color:#5c7186;border-radius:11px;transition:all .16s var(--ease)}.toolbar-icon:hover{color:#1f64d8;border-color:#c1d2e4;background:#f8fbff;box-shadow:var(--shadow-sm);transform:translateY(-1px)}.toolbar-icon svg{width:17px;height:17px}.runtime-pill{height:31px;display:flex;align-items:center;gap:7px;border:1px solid var(--line);background:#f7fafc;border-radius:999px;padding:0 10px;color:#627589;font-size:9px;font-weight:800;letter-spacing:.04em}.runtime-pill i{width:7px;height:7px;border-radius:50%;background:#91a4b5}.runtime-pill.good{color:#12835a;background:#edf9f4;border-color:#c5e8da}.runtime-pill.good i{background:#22b878}.runtime-pill.warn{color:#946410;background:#fff8ea;border-color:#eeddb8}.runtime-pill.warn i{background:#dda326}.runtime-pill.bad{color:#b33d4a;background:#fff1f3;border-color:#edc8cd}.runtime-pill.bad i{background:#dc5361}.account-control{height:42px;display:flex;align-items:center;gap:8px;padding:4px 7px 4px 5px;border:1px solid var(--line);background:#fff;border-radius:13px;color:var(--ink);transition:all .16s var(--ease)}.account-control:hover{border-color:#c1d2e4;box-shadow:var(--shadow-sm);transform:translateY(-1px)}.account-text{display:flex;flex-direction:column;min-width:58px;text-align:left}.account-text strong{font-size:10.5px}.account-text small{font-size:8.5px;color:#8192a4;margin-top:2px}.account-control>svg{width:15px;height:15px;color:#2a70dd}.page-root{min-height:0;overflow-y:auto;overflow-x:hidden;padding:24px 26px 42px;scrollbar-width:thin;scrollbar-color:#acbccb transparent;scroll-behavior:auto}.page-root::-webkit-scrollbar{width:10px}.page-root::-webkit-scrollbar-thumb{background:#adbdca;border:2px solid transparent;background-clip:padding-box;border-radius:99px}.page-root::-webkit-scrollbar-track{background:transparent}
.page{max-width:1540px;margin:0 auto;animation:pageIn .24s var(--ease) both}.page-head{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:18px}.page-head .eyebrow{font-size:9px;font-weight:850;letter-spacing:.14em;color:#4b78a5;margin-bottom:5px}.page-head h1{font-size:26px;letter-spacing:-.035em;margin:0;color:#132f49}.page-head p{margin:6px 0 0;color:var(--text-secondary);font-size:11.5px;line-height:1.5}.page-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}.card,.panel{background-color:#fff;background-image:linear-gradient(180deg,#fff 0%,#fbfdff 100%);border:1px solid var(--line-2);border-radius:var(--r);box-shadow:var(--shadow-sm)}.panel{padding:18px}.card{padding:16px}.card.hover{transition:transform .16s var(--ease),box-shadow .16s var(--ease),border-color .16s var(--ease)}.card.hover:hover{transform:translateY(-2px);box-shadow:0 14px 34px rgba(24,47,73,.09);border-color:#bfd0df}.grid{display:grid;gap:14px}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}.stack{display:flex;flex-direction:column;gap:14px}.split{display:grid;grid-template-columns:minmax(280px,.72fr) minmax(0,1.4fr);gap:14px}.hero{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:18px;padding:24px 25px;border-radius:20px;background-color:#fff;background-image:radial-gradient(circle at 90% 0%,rgba(29,191,181,.12),transparent 30%),radial-gradient(circle at 20% 0%,rgba(36,107,253,.13),transparent 36%),linear-gradient(135deg,#ffffff 0%,#f7fbff 100%);border:1px solid #ccdae7;box-shadow:var(--shadow-sm);overflow:hidden}.hero h1{font-size:30px;letter-spacing:-.045em;margin:0;color:#102d48}.hero p{max-width:760px;margin:8px 0 0;color:#647c92;line-height:1.55}.hero .eyebrow{font-size:9px;font-weight:850;letter-spacing:.14em;color:#3470aa;margin-bottom:6px}.metric-card{display:grid;grid-template-columns:42px minmax(0,1fr);gap:12px;align-items:center;padding:15px}.metric-icon{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;background:#eaf3ff;color:#2369db}.metric-icon.green{background:#e7f7f0;color:#159363}.metric-icon.orange{background:#fff3df;color:#c77808}.metric-icon.purple{background:#f1ebff;color:#7550dc}.metric-icon svg{width:20px;height:20px}.metric-copy strong{display:block;font-size:18px;line-height:1.15}.metric-copy span{display:block;font-size:9px;color:#8293a5;margin-top:4px;text-transform:uppercase;letter-spacing:.06em}.section-title{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.section-title h2{font-size:15px;margin:0;letter-spacing:-.02em}.section-title p{font-size:10px;color:#7d90a4;margin:3px 0 0}.section-title .copy{display:flex;flex-direction:column}.divider{height:1px;background:var(--line);margin:14px 0}.button{height:38px;border-radius:10px;padding:0 14px;border:1px solid var(--line-2);background:#fff;color:#19344f;font-size:10.5px;font-weight:720;display:inline-flex;align-items:center;justify-content:center;gap:7px;transition:all .15s var(--ease)}.button:hover{border-color:#b8cce0;background:#f8fbff;transform:translateY(-1px);box-shadow:var(--shadow-sm)}.button svg{width:15px;height:15px}.button.primary{background-color:var(--primary-2);background-image:linear-gradient(135deg,var(--primary),var(--primary-2));border-color:var(--primary-2);color:#fff;box-shadow:0 8px 18px rgba(36,107,253,.19)}.button.primary:hover{background-color:#174fc4;background-image:linear-gradient(135deg,#1f63ea,#174fc4)}.button.success{background:#eef9f4;border-color:#c4e7d8;color:#128057}.button.danger{background:#fff2f3;border-color:#ecc6cb;color:#b6424e}.button.ghost{background:transparent}.button:disabled{opacity:.48;cursor:not-allowed;transform:none;box-shadow:none}.icon-button-small{width:34px;padding:0}.status-chip{display:inline-flex;align-items:center;gap:6px;height:28px;border:1px solid var(--line);border-radius:999px;background:#f7fafc;padding:0 9px;font-size:9px;font-weight:750;color:#5c6e80}.status-chip:before{content:"";width:7px;height:7px;border-radius:50%;background:#91a4b6}.status-chip.good{color:#138158;background:#eef9f4;border-color:#c7e7da}.status-chip.good:before{background:#24b87a}.status-chip.bad{color:#b4414c;background:#fff2f3;border-color:#edc7cc}.status-chip.bad:before{background:#dc5361}.status-chip.warn{color:#956510;background:#fff8eb;border-color:#efddb8}.status-chip.warn:before{background:#dfa22a}.status-chip.info{color:#2765cf;background:#eef4ff;border-color:#cadbfd}.status-chip.info:before{background:#3479ef}
.form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.field{display:flex;flex-direction:column;gap:6px;min-width:0}.field.wide{grid-column:1/-1}.field.span-2{grid-column:span 2}.field label{font-size:9px;font-weight:750;color:#536c83}.input,.select,.textarea{width:100%;border:1px solid #cedae5;background:#f9fbfd;color:#17314a;border-radius:10px;outline:0;transition:border-color .15s,box-shadow .15s,background .15s}.input,.select{height:40px;padding:0 11px}.textarea{min-height:86px;padding:10px 11px;resize:vertical}.input:focus,.select:focus,.textarea:focus{background:#fff;border-color:#8db4ee;box-shadow:0 0 0 3px rgba(36,107,253,.08)}.help{font-size:8.5px;color:#8998a7;line-height:1.45}.toggle-row{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid #d7e2ec;background:#f8fbfd;border-radius:11px;padding:11px 12px}.toggle-row .copy{display:flex;flex-direction:column}.toggle-row strong{font-size:10.5px}.toggle-row small{font-size:8.5px;color:#8293a4;margin-top:2px}.switch{position:relative;width:46px;height:26px;border:0;background:transparent;padding:0;flex:0 0 auto}.switch span{position:absolute;inset:0;border-radius:99px;background:#b8c7d4;border:1px solid #a6b8c7;transition:background .16s,border-color .16s}.switch span:after{content:"";position:absolute;width:20px;height:20px;left:2px;top:2px;border-radius:50%;background:#fff;box-shadow:0 2px 5px rgba(20,43,66,.18);transition:transform .18s var(--ease)}.switch.on span{background:#2f6fff;border-color:#245fde}.switch.on span:after{transform:translateX(20px)}
.table-wrap{overflow:auto;border:1px solid var(--line);border-radius:12px;background:#fff}.data-table{width:100%;border-collapse:separate;border-spacing:0;min-width:680px}.data-table th,.data-table td{padding:10px 12px;text-align:left;border-bottom:1px solid #e6edf3;font-size:10px}.data-table th{position:sticky;top:0;background:#f4f8fb;color:#60768b;font-size:8.5px;text-transform:uppercase;letter-spacing:.06em;z-index:1}.data-table tbody tr:hover td{background:#f9fbfd}.data-table tr:last-child td{border-bottom:0}.empty-state{display:grid;place-items:center;text-align:center;min-height:220px;color:#7b8da0;padding:28px}.empty-state .empty-icon{width:52px;height:52px;border-radius:16px;display:grid;place-items:center;background:#eef4fa;color:#6384a3;margin-bottom:12px}.empty-state .empty-icon svg{width:24px;height:24px}.empty-state strong{color:#29445d;font-size:13px}.empty-state p{max-width:420px;font-size:10px;line-height:1.55;margin:6px 0 0}.live-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}.live-card{position:relative;overflow:hidden;padding:15px;background:linear-gradient(145deg,#fff,#f8fbfe);border:1px solid #d4e0ea;border-radius:14px;box-shadow:var(--shadow-sm);transition:transform .15s var(--ease),box-shadow .15s var(--ease),border-color .15s}.live-card:hover{transform:translateY(-2px);box-shadow:0 14px 30px rgba(20,43,68,.09);border-color:#bed0df}.live-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--accent,#2f6bff)}.live-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.live-name{font-size:11px;font-weight:800;color:#17324b;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.live-value{display:flex;align-items:baseline;gap:6px;margin:16px 0 8px}.live-value strong{font-size:30px;letter-spacing:-.04em;color:var(--accent,#2369db)}.live-value span{font-size:9px;font-weight:700;color:#6d8296}.live-meta{display:grid;grid-template-columns:1fr auto;gap:8px;color:#5c6e81;font-size:8.5px}.quality-good{color:#138158}.quality-bad{color:#b63e4b}.quality-warn{color:#996510}.spark{height:48px;margin:10px -3px 0}.spark svg{width:100%;height:100%;stroke:var(--accent,#2f6bff);fill:none;stroke-width:1.8}.activity-list{display:flex;flex-direction:column;gap:0;border:1px solid #d7e1ea;border-radius:12px;overflow:hidden;background:#f8fbfd;min-height:250px}.activity-row{display:grid;grid-template-columns:86px 10px minmax(0,1fr);gap:10px;align-items:center;padding:9px 11px;border-bottom:1px solid #e4ebf1;font-size:9.5px}.activity-row:last-child{border-bottom:0}.activity-time{color:#5e7388;font-family:ui-monospace,SFMono-Regular,Consolas,monospace}.activity-dot{width:7px;height:7px;border-radius:50%;background:#3a7cf0}.activity-message{color:#28445e;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.runtime-card{display:flex;flex-direction:column;justify-content:space-between;min-height:320px;background-color:#eef5fb;background-image:radial-gradient(circle at 60% 18%,rgba(36,107,253,.09),transparent 30%),linear-gradient(180deg,#f8fbff,#eef5fb);border:1px solid #cbd9e6;border-radius:16px;padding:18px}.runtime-hero{display:grid;grid-template-columns:72px minmax(0,1fr);gap:15px;align-items:center}.runtime-glyph{width:72px;height:72px;border-radius:20px;display:grid;place-items:center;background:#edf4fa;border:1px solid #cbd9e6;color:#7993aa}.runtime-glyph svg{width:30px;height:30px}.runtime-title small{display:block;font-size:8.5px;color:#768da2;letter-spacing:.1em;font-weight:800}.runtime-title strong{display:block;font-size:25px;margin-top:2px;letter-spacing:-.035em}.runtime-title span{display:block;font-size:9px;color:#596f83;margin-top:4px}.runtime-actions{display:grid;grid-template-columns:1fr 96px;gap:8px;margin-top:14px}.db-card{min-height:190px;display:flex;flex-direction:column;justify-content:space-between}.db-state{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.db-state strong{display:block;font-size:18px}.db-state span{display:block;font-size:9px;color:#5c6e80;margin-top:4px}.db-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:16px}.service-layout{display:grid;grid-template-columns:360px minmax(0,1fr);gap:14px;align-items:stretch}.service-left{display:grid;grid-template-rows:minmax(320px,1fr) minmax(190px,.6fr);gap:14px}.service-right{display:grid;grid-template-rows:auto minmax(0,1fr);gap:14px;min-height:524px}.summary-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.summary-card{min-width:0;padding:13px;border:1px solid #d3dee8;background:#fff;border-radius:13px;box-shadow:var(--shadow-sm)}.summary-card .kicker{font-size:8px;font-weight:850;color:#6b8298;letter-spacing:.08em}.summary-card strong{display:block;font-size:16px;margin-top:4px;white-space:normal;overflow-wrap:anywhere}.summary-card small{display:block;font-size:8px;color:#7d8fa1;margin-top:4px;white-space:normal;overflow-wrap:anywhere;line-height:1.35}.workspace-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.workspace-card{padding:15px;min-height:112px;display:flex;flex-direction:column;justify-content:space-between}.workspace-card .top{display:flex;align-items:flex-start;justify-content:space-between;gap:9px}.workspace-card h3{font-size:12px;margin:0}.workspace-card p{font-size:9px;color:#7c8fa2;line-height:1.45;margin:5px 0 0}.workspace-card .number{font-size:26px;font-weight:760;letter-spacing:-.04em;color:#17324b}.chip-row{display:flex;gap:6px;flex-wrap:wrap}.mini-chip{font-size:8px;border:1px solid #d5e0e9;background:#f6f9fc;color:#61778b;padding:4px 7px;border-radius:999px}.instrument-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.instrument-card{padding:14px;display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:11px;align-items:center}.instrument-card .device-icon{width:42px;height:42px;border-radius:12px;background:#eaf3ff;color:#236bdc;display:grid;place-items:center}.instrument-card .device-icon svg{width:20px;height:20px}.instrument-card h3{font-size:11px;margin:0}.instrument-card p{font-size:8.5px;color:#75899c;margin:3px 0 0}.instrument-actions{display:flex;gap:6px}.protocol-layout{display:grid;grid-template-columns:330px minmax(0,1fr);gap:14px}.console{min-height:280px;border-radius:12px;background:#0d1b29;color:#dcecff;padding:13px;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:10px;line-height:1.55;overflow:auto;border:1px solid #17324a}.console-line{white-space:pre-wrap;word-break:break-word}.console-line.tx{color:#8cc7ff}.console-line.rx{color:#8be0b4}.console-line.err{color:#ff9ca6}.timebase-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.timebase-card{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px;border:1px solid #d6e1eb;background:#f8fbfd;border-radius:11px}.timebase-card strong{display:block;font-size:10.5px}.timebase-card small{display:block;font-size:8px;color:#7e91a4;margin-top:3px}.segmented{display:inline-flex;background:#eef3f8;border:1px solid #d9e2ea;padding:3px;border-radius:10px}.segmented button{height:30px;border:0;background:transparent;color:#6a7e92;border-radius:7px;padding:0 11px;font-size:9px;font-weight:700}.segmented button.active{background:#fff;color:#1d5fca;box-shadow:0 2px 8px rgba(19,42,67,.08)}
.modal-backdrop{position:fixed;inset:0;background:rgba(6,20,35,.42);backdrop-filter:blur(7px);display:grid;place-items:center;padding:18px;z-index:100;animation:fade .15s}.modal{width:min(480px,calc(calc(100vw / var(--nb-zoom,1)) - 36px));max-height:calc(calc(100dvh / var(--nb-zoom,1)) - 36px);overflow:auto;background:linear-gradient(180deg,#fff,#f7fafc);border:1px solid rgba(255,255,255,.8);border-radius:20px;box-shadow:var(--shadow-xl);padding:22px;animation:dialogIn .22s var(--ease)}.modal.wide{width:min(820px,calc(calc(100vw / var(--nb-zoom,1)) - 36px))}.modal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:14px}.modal-head h2{margin:0;font-size:21px;letter-spacing:-.03em}.modal-head p{margin:5px 0 0;color:#72869a;font-size:10px}.modal-close{width:34px;height:34px;border:1px solid var(--line);background:#fff;border-radius:10px;color:#64798d;display:grid;place-items:center}.modal-close svg{width:16px;height:16px}.modal-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:16px;padding-top:14px;border-top:1px solid #e1e9f0}.toast-root{position:fixed;right:20px;bottom:20px;z-index:120;display:flex;flex-direction:column;gap:8px;pointer-events:none}.toast{width:min(360px,calc(calc(100vw / var(--nb-zoom,1)) - 30px));display:grid;grid-template-columns:34px minmax(0,1fr);gap:10px;align-items:center;background:rgba(255,255,255,.98);border:1px solid #d6e1ea;border-left:4px solid #3478ef;border-radius:13px;box-shadow:0 18px 46px rgba(11,30,50,.18);padding:10px 12px 10px 9px;animation:toastIn .22s var(--ease);pointer-events:auto}.toast-mark{width:30px;height:30px;border-radius:9px;display:grid;place-items:center;background:#eaf2ff;color:#2468dc;font-size:14px;font-weight:900}.toast-copy strong{display:block;font-size:10px}.toast-copy span{display:block;font-size:9px;color:#5b6e83;margin-top:2px;line-height:1.4}.toast.success{border-left-color:#169d67}.toast.success .toast-mark{background:#e8f7f0;color:#128258}.toast.error{border-left-color:#d64c5b}.toast.error .toast-mark{background:#feecef;color:#bd3e4a}.toast.warning{border-left-color:#d88a13}.toast.warning .toast-mark{background:#fff3de;color:#b5700b}.loading-skeleton{background:linear-gradient(90deg,#eef3f7 25%,#f8fbfd 37%,#eef3f7 63%);background-size:400% 100%;animation:shimmer 1.3s ease infinite;border-radius:10px}.sidebar-backdrop{display:none}.mobile-only{display:none!important}
@keyframes pageIn{from{opacity:.25;transform:translateY(5px)}to{opacity:1;transform:none}}@keyframes dialogIn{from{opacity:0;transform:translateY(8px) scale(.985)}to{opacity:1;transform:none}}@keyframes toastIn{from{opacity:0;transform:translateY(8px) scale(.985)}to{opacity:1;transform:none}}@keyframes fade{from{opacity:0}to{opacity:1}}@keyframes shimmer{0%{background-position:100% 0}100%{background-position:0 0}}
@media(max-width:1360px){:root{--sidebar-w:238px}.search-box{width:250px}.grid-4,.live-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.workspace-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.field.span-2{grid-column:span 2}.timebase-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:1120px){:root{--sidebar-w:220px}.search-box{display:none}.service-layout,.protocol-layout,.split{grid-template-columns:1fr}.service-left{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:auto}.service-right{min-height:0}.summary-strip{grid-template-columns:repeat(3,minmax(0,1fr))}.instrument-list{grid-template-columns:1fr}.grid-3{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){.app-shell{grid-template-columns:1fr}.sidebar{position:fixed;inset:0 auto 0 0;width:min(280px,calc(86vw / var(--nb-zoom,1)));transform:translateX(-103%);transition:transform .24s var(--ease);box-shadow:18px 0 60px rgba(5,19,34,.28)}body.sidebar-open .sidebar{transform:none}.sidebar-backdrop{display:block;position:fixed;inset:0;z-index:35;background:rgba(5,18,31,.38);opacity:0;pointer-events:none;transition:opacity .2s}body.sidebar-open .sidebar-backdrop{opacity:1;pointer-events:auto}.mobile-only{display:grid!important}.topbar{padding:0 14px}.page-root{padding:18px 14px 30px}.account-text{display:none}.account-control{width:42px;padding:4px;justify-content:center}.topbar-right{gap:7px}.runtime-pill{display:none}.grid-3,.grid-2,.live-grid,.workspace-card-grid{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}.field.span-2{grid-column:auto}.service-left{grid-template-columns:1fr}.summary-strip{grid-template-columns:1fr}.timebase-grid{grid-template-columns:1fr}.hero{grid-template-columns:1fr}.page-head{flex-direction:column}.page-actions{justify-content:flex-start}}
@media(max-width:560px){.breadcrumbs span,.breadcrumbs svg{display:none}.page-root{padding:14px 10px 24px}.hero{padding:19px}.hero h1{font-size:25px}.page-head h1{font-size:23px}.grid-4{grid-template-columns:1fr}.runtime-actions,.db-actions{grid-template-columns:1fr}.modal{padding:18px}.toast-root{right:10px;bottom:10px}.topbar{gap:8px}.toolbar-icon{width:36px;height:36px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}
/* UI13 visual-polish corrections found by Chromium simulator. */
.nav-group{margin-bottom:12px}.nav-label{padding:0 10px 6px}.nav-item{height:38px}.sidebar-scroll{padding-top:11px;padding-bottom:12px}
.workspace-card{min-height:96px}.workspace-card .top>svg{width:15px;height:15px;color:#8aa0b4;flex:0 0 auto}.workspace-card .top .metric-icon svg{width:20px;height:20px}.workspace-card .top{align-items:center}.workspace-card h3{margin-top:10px}.workspace-card p{margin-top:3px}
.service-left,.service-right,.runtime-card,.db-card{min-width:0}.runtime-actions{grid-template-columns:minmax(0,1fr) minmax(92px,112px);overflow:hidden}.runtime-actions .button{min-width:0;padding-left:10px;padding-right:10px;white-space:nowrap}.db-state>svg{width:30px;height:30px;color:#6d88a0;flex:0 0 auto}.db-state{align-items:center}
/* UI13.1 persistent-navigation legibility: keep full station labels visible on 1024–1120 desktop-class windows. */
@media (min-width:901px) and (max-width:1120px){
  :root{--sidebar-w:252px}
  .nav-item{grid-template-columns:22px minmax(0,1fr) auto;gap:8px;padding-inline:9px}
  .nav-item span{font-size:11.5px}
}
/* UI13 online verification overlay mirrors the final desktop source fixes. */
.search-box kbd{color:#52687d}
.runtime-pill.good{color:#0b6f4c}
.account-text small{color:#52687d}
.toggle-row small{color:#52687d!important}
@keyframes pageIn{from{transform:translateY(5px)}to{transform:none}}

/* UI13 release geometry/session patch */
.account-summary{display:grid;grid-template-columns:48px minmax(0,1fr);gap:13px;align-items:center;padding:14px;border:1px solid var(--line);background:#f2f7fb;border-radius:14px}.account-summary .account-avatar{width:48px;height:48px;border-radius:14px}.account-summary strong{display:block;font-size:14px;color:var(--ink)}.account-summary span{display:block;margin-top:3px;font-size:10px;color:var(--muted);text-transform:capitalize}.account-modal{overflow-x:hidden}

.account-control:disabled,.toolbar-icon:disabled,.sidebar-account:disabled{opacity:.58;cursor:wait;transform:none!important;box-shadow:none!important}

/* UI13.3 configuration lifecycle + full instrument commissioning */
.db-card{padding:16px!important;overflow:visible!important;gap:14px}.db-card>div:first-child{min-width:0}.db-actions-contained{position:static!important;inset:auto!important;width:100%!important;margin-top:0!important;padding-top:14px!important;border-top:1px solid var(--line)!important;grid-template-columns:repeat(2,minmax(0,1fr))!important}.db-actions-contained .button{position:static!important;min-width:0!important;width:100%!important}.db-actions-contained #db-delete{grid-column:1/-1}
.saved-config-row{display:grid;grid-template-columns:32px minmax(0,1fr) auto;align-items:center;gap:10px;margin:0 0 14px;padding:10px 12px;border:1px solid #cfe2d9;border-radius:12px;background:#f2fbf6}.saved-config-icon{width:30px;height:30px;border-radius:9px;display:grid;place-items:center;background:#ddf5e7;color:#18885f}.saved-config-icon svg{width:16px;height:16px}.saved-config-copy{min-width:0}.saved-config-copy strong{display:block;font-size:10.5px;color:#244337}.saved-config-copy small{display:block;margin-top:2px;font-size:8.5px;color:#617d70;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.saved-config-state{font-size:8px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:#197756;background:#e1f6e9;border:1px solid #c7ead7;padding:4px 7px;border-radius:999px}
.instrument-modal{max-width:min(980px,calc(calc(100vw / var(--nb-zoom,1)) - 44px))!important;max-height:min(880px,calc(calc(100dvh / var(--nb-zoom,1)) - 42px))!important;overflow:auto!important}.instrument-form-section{padding:14px 0;border-top:1px solid var(--line)}.instrument-form-section:first-of-type{border-top:0;padding-top:2px}.instrument-form-title{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-bottom:10px}.instrument-form-title strong{font-size:11px;color:var(--ink)}.instrument-form-title span{font-size:8.5px;color:var(--muted)}.instrument-connection-grid{margin-top:10px}.instrument-modal .form-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.instrument-modal .field.span-2{grid-column:span 2}.instrument-modal .modal-actions{position:sticky;bottom:-1px;background:rgba(255,255,255,.96);backdrop-filter:blur(10px);z-index:3}
@media(max-width:900px){.instrument-modal .form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.db-actions-contained{grid-template-columns:1fr!important}.db-actions-contained #db-delete{grid-column:auto}}
@media(max-width:620px){.instrument-modal{max-width:calc(calc(100vw / var(--nb-zoom,1)) - 20px)!important}.instrument-modal .form-grid{grid-template-columns:1fr}.instrument-modal .field.span-2{grid-column:auto}.saved-config-row{grid-template-columns:30px minmax(0,1fr)}.saved-config-state{grid-column:2;justify-self:start}.saved-config-copy small{white-space:normal}}

/* UI13.4 database-card containment fix: lifecycle controls stay inside the card. */
.service-left{grid-template-rows:minmax(320px,1fr) auto!important;align-content:start}
.db-card{min-height:0!important;height:auto!important;overflow:hidden!important;justify-content:flex-start!important}
.db-card .db-actions-contained{flex:0 0 auto!important;margin-top:14px!important}

/* UI13.5 analyzer workflow + guest database RBAC */
.db-readonly-note{display:flex;align-items:center;gap:10px;margin-top:14px;padding:11px 12px;border:1px solid var(--line);border-radius:12px;background:var(--surface-soft,#f5f8fb);color:var(--muted)}.db-readonly-note>svg{width:18px;height:18px;flex:0 0 auto}.db-readonly-note strong{display:block;font-size:10px;color:var(--ink)}.db-readonly-note span{display:block;margin-top:2px;font-size:8.5px}.instrument-modal [hidden]{display:none!important}.instrument-modal input[readonly]{background:var(--surface-soft,#f4f7fa);color:var(--muted);cursor:not-allowed}

/* UI13.6 staged analyzer commissioning wizard */
.wizard-modal{max-width:min(1040px,calc(calc(100vw / var(--nb-zoom,1)) - 36px))!important}
.wizard-progress{display:grid;grid-template-columns:30px 1fr 30px 1fr 30px;align-items:center;gap:8px;margin:2px 0 16px}.wizard-progress span{width:30px;height:30px;display:grid;place-items:center;border:1px solid var(--line);border-radius:999px;background:var(--surface-soft,#f4f7fa);color:var(--muted);font-size:10px;font-weight:800}.wizard-progress span.active{background:#246bfd;color:white;border-color:#246bfd;box-shadow:0 5px 14px rgba(36,107,253,.18)}.wizard-progress i{height:1px;background:var(--line)}
.wizard-step{padding:15px;border:1px solid var(--line);border-radius:16px;background:rgba(255,255,255,.58);margin-bottom:12px}.wizard-step.active{border-color:#bfd3f2}.wizard-step-actions{display:flex;justify-content:flex-end;margin-top:12px;padding-top:12px;border-top:1px solid var(--line)}
.parameter-editor-list{display:grid;gap:12px}.parameter-editor{padding:13px;border:1px solid var(--line);border-radius:14px;background:var(--surface,#fff)}.parameter-editor-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.parameter-editor-head strong{font-size:10.5px;color:var(--ink)}.wizard-parameter-actions{display:flex;align-items:center;gap:12px;margin-top:12px}.wizard-parameter-actions small{font-size:8.5px;color:var(--muted)}
@media(max-width:620px){.wizard-step{padding:11px}.wizard-progress{grid-template-columns:28px 1fr 28px 1fr 28px}.wizard-progress span{width:28px;height:28px}.wizard-parameter-actions{align-items:flex-start;flex-direction:column}}


/* UI13.7 consolidated Configuration workspace */
.configuration-tabs{display:flex;flex-wrap:wrap;max-width:920px}.configuration-tabs button{white-space:nowrap}.station-entity-tabs{align-self:flex-start;margin:-2px 0 14px;display:flex;flex-wrap:wrap}.station-entity-stack{min-height:210px}.config-entity-panel{padding:16px}.config-empty-entity{min-height:92px;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:15px;border:1px dashed var(--line-2);border-radius:13px;background:#f8fbfd}.config-empty-entity strong{display:block;font-size:12px}.config-empty-entity small{display:block;margin-top:4px;color:var(--muted);font-size:9px}.config-entity-row{display:grid;grid-template-columns:34px minmax(0,1fr) auto auto;align-items:center;gap:11px;padding:12px 13px;border:1px solid #cfe2d9;border-radius:13px;background:#f4fbf7}.config-entity-copy{min-width:0}.config-entity-copy strong{display:block;font-size:11px}.config-entity-copy small{display:block;margin-top:3px;color:#607b70;font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.config-entity-actions{display:flex;gap:6px}.config-editor-modal{max-width:min(860px,calc(calc(100vw / var(--nb-zoom,1)) - 40px))!important}.field-help{display:block;margin-top:5px;color:var(--muted);font-size:8px;line-height:1.35}.parameter-editor .form-grid{align-items:end}
@media(max-width:900px){.configuration-tabs{width:100%;overflow-x:auto;flex-wrap:nowrap;justify-content:flex-start}.configuration-tabs button{flex:0 0 auto}.config-entity-row{grid-template-columns:32px minmax(0,1fr) auto}.config-entity-actions{grid-column:2/-1;justify-self:start}.saved-config-state{justify-self:end}}
@media(max-width:620px){.config-empty-entity{align-items:stretch;flex-direction:column}.config-empty-entity .button{align-self:flex-start}.station-entity-tabs{width:100%;overflow-x:auto;flex-wrap:nowrap}.station-entity-tabs button{flex:0 0 auto}}

/* UI13.8 Adaptive / Responsive / Progressive layout system */
:root{
  --content-max:1540px;
  --page-x:clamp(10px,calc(1.8vw / var(--nb-zoom,1)),28px);
  --page-y:clamp(14px,calc(2.2vh / var(--nb-zoom,1)),26px);
  --adaptive-gap:clamp(10px,calc(1.15vw / var(--nb-zoom,1)),16px);
  --control-h:clamp(42px,calc(4.6vh / var(--nb-zoom,1)),50px);
}
.page{width:min(100%,var(--content-max));max-width:var(--content-max)}
.page-root{padding:var(--page-y) var(--page-x) max(24px,env(safe-area-inset-bottom))}
.grid,.stack,.service-layout,.workspace-card-grid,.form-grid,.parameter-editor-list{gap:var(--adaptive-gap)}
.input,.select,.button{min-height:var(--control-h)}
.card,.panel,.wizard-step,.parameter-editor,.config-entity-panel{container-type:inline-size}

/* Fluid desktop: use available width instead of fixed breakpoint jumps. */
.grid-4,.live-grid{grid-template-columns:repeat(auto-fit,minmax(min(250px,100%),1fr))}
.grid-3{grid-template-columns:repeat(auto-fit,minmax(min(280px,100%),1fr))}
.workspace-card-grid{grid-template-columns:repeat(auto-fit,minmax(min(270px,100%),1fr))}
.instrument-list{grid-template-columns:repeat(auto-fit,minmax(min(430px,100%),1fr))}
.summary-strip{grid-template-columns:repeat(auto-fit,minmax(min(170px,100%),1fr))}
.timebase-grid{grid-template-columns:repeat(auto-fit,minmax(min(220px,100%),1fr))}

/* Configuration behaves like a native settings workspace. */
.configuration-tabs,.station-entity-tabs{scrollbar-width:none;-ms-overflow-style:none;overscroll-behavior-inline:contain;scroll-snap-type:x proximity}
.configuration-tabs::-webkit-scrollbar,.station-entity-tabs::-webkit-scrollbar{display:none}
.configuration-tabs button,.station-entity-tabs button{scroll-snap-align:start}
.config-entity-row{min-width:0}
.config-entity-copy,.config-entity-copy small{min-width:0}

/* Progressive wizard: only the current stage demands attention. */
.wizard-step{transition:opacity .16s var(--ease),border-color .16s var(--ease),box-shadow .16s var(--ease)}
.wizard-step:not(.active){background:rgba(250,252,254,.72)}
.wizard-step.active{box-shadow:0 10px 28px rgba(36,107,253,.07)}
.wizard-step[hidden]{display:none!important}
.wizard-progress{position:sticky;top:-1px;z-index:4;padding:4px 0 10px;background:linear-gradient(180deg,rgba(255,255,255,.98) 0%,rgba(255,255,255,.92) 78%,rgba(255,255,255,0) 100%)}
.wizard-modal .modal-actions{position:sticky;bottom:-1px;z-index:6;margin-inline:-2px;padding:14px 2px max(2px,env(safe-area-inset-bottom));background:rgba(255,255,255,.96);backdrop-filter:blur(12px)}

/* Height-adaptive UI for laptop/industrial panel displays. */
@media(max-height:780px) and (min-width:901px){
  :root{--topbar-h:58px;--control-h:40px;--page-y:12px}
  .brand-block{height:70px;padding-block:10px}.brand-block img{width:38px;height:38px}.nav-item{height:36px}.sidebar-scroll{padding-top:8px}
  .page-head{margin-bottom:12px}.page-head h1{font-size:23px}.panel,.card{padding:14px}.modal{padding:16px}.wizard-step{padding:12px}.form-grid{gap:8px 10px}
}

/* Tablet: navigation becomes an off-canvas drawer and content stays touch friendly. */
@media(max-width:1024px){
  .topbar{padding-inline:max(12px,env(safe-area-inset-left)) max(12px,env(safe-area-inset-right))}
  .configuration-tabs{border-radius:12px;max-width:100%;padding:3px}
  .configuration-tabs button{min-height:40px}
  .page-head{gap:12px}
  .page-actions{width:100%}
  .page-actions>.button{flex:0 1 auto}
  .wizard-modal,.config-editor-modal{width:min(calc(96vw / var(--nb-zoom,1)),900px)!important;max-width:none!important}
  .wizard-modal .form-grid,.config-editor-modal .form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .parameter-editor .form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}

/* Phone / narrow window: full-screen modal, single column and thumb-safe actions. */
@media(max-width:700px){
  :root{--topbar-h:56px;--control-h:46px;--page-x:10px;--page-y:12px}
  html,body{font-size:15px}
  .topbar{gap:6px}.topbar-left{min-width:0;flex:1}.breadcrumbs strong{max-width:calc(45vw / var(--nb-zoom,1))}.toolbar-icon,.account-control{width:40px;height:40px;flex:0 0 auto}
  .page-head{margin-bottom:12px}.page-head h1{font-size:22px}.page-head p{font-size:11px}.page-actions{display:grid;grid-template-columns:1fr}.page-actions>.button{width:100%}
  .configuration-tabs,.station-entity-tabs{margin-inline:-2px;padding-bottom:2px}.configuration-tabs button,.station-entity-tabs button{min-height:42px;padding-inline:14px}
  .modal-backdrop{padding:0;place-items:stretch;background:rgba(6,20,35,.48)}
  .modal,.modal.wide,.wizard-modal,.config-editor-modal,.instrument-modal{width:calc(100vw / var(--nb-zoom,1))!important;max-width:none!important;height:calc(100dvh / var(--nb-zoom,1))!important;max-height:calc(100dvh / var(--nb-zoom,1))!important;border-radius:0!important;border:0!important;padding:max(16px,env(safe-area-inset-top)) 14px max(12px,env(safe-area-inset-bottom))!important}
  .modal-head{position:sticky;top:calc(-1 * max(16px,env(safe-area-inset-top)));z-index:8;margin:-16px -14px 12px;padding:max(16px,env(safe-area-inset-top)) 14px 12px;background:rgba(255,255,255,.96);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}
  .wizard-progress{top:56px;margin-inline:-2px}
  .wizard-modal .form-grid,.config-editor-modal .form-grid,.parameter-editor .form-grid,.instrument-modal .form-grid{grid-template-columns:1fr!important}
  .field.span-2,.instrument-modal .field.span-2{grid-column:auto!important}
  .wizard-step{padding:12px;border-radius:14px}.instrument-form-title{align-items:flex-start;flex-direction:column;gap:3px}.instrument-form-title span{font-size:9px}
  .wizard-step-actions{position:sticky;bottom:0;background:linear-gradient(180deg,rgba(255,255,255,0),rgba(255,255,255,.98) 36%);padding-top:18px}.wizard-step-actions>.button{width:100%}
  .wizard-parameter-actions{display:grid;grid-template-columns:1fr;gap:8px}.wizard-parameter-actions>.button{width:100%}
  .config-empty-entity .button{width:100%;align-self:stretch}.config-entity-row{grid-template-columns:32px minmax(0,1fr)!important}.config-entity-actions{grid-column:1/-1!important;width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.config-entity-actions>.button{width:100%}
  .saved-config-state{grid-column:2;justify-self:start!important}
  .toast-root{left:10px;right:10px;bottom:max(10px,env(safe-area-inset-bottom))}.toast{width:100%}
}

/* Very narrow embedded panels. */
@media(max-width:420px){
  .brand-copy span,.field-help,.instrument-form-title span,.wizard-parameter-actions small{display:none}
  .breadcrumbs strong{max-width:calc(40vw / var(--nb-zoom,1))}.hero h1{font-size:22px}.hero{padding:15px}
  .wizard-progress{grid-template-columns:26px 1fr 26px 1fr 26px;gap:6px}.wizard-progress span{width:26px;height:26px}
  .segmented button{padding-inline:10px}
}

/* Pointer adaptation: larger targets for touch, tighter hover behavior for mouse. */
@media(pointer:coarse){
  button,.button,.nav-item,.segmented button{min-height:44px}.modal-close{width:42px;height:42px}.select,.input{font-size:16px}
}
@media(hover:none){.card.hover:hover,.toolbar-icon:hover,.account-control:hover,.nav-item:hover{transform:none;box-shadow:inherit}}

/* Ultra-wide screens: preserve readable line lengths and avoid stretched forms. */
@media(min-width:1800px){
  :root{--content-max:1680px;--sidebar-w:276px}
  .form-grid{grid-template-columns:repeat(3,minmax(220px,1fr))}
  .wizard-modal{max-width:1120px!important}.config-editor-modal{max-width:960px!important}
}

/* UI13.9 staged configuration/device commissioning */
.wizard-saved-row{display:grid;grid-template-columns:34px minmax(0,1fr) auto auto;gap:10px;align-items:center;padding:12px 13px;border:1px solid #cfe2d9;border-radius:13px;background:#f4fbf7}.wizard-saved-copy{min-width:0}.wizard-saved-copy strong{display:block;font-size:10.5px;color:var(--ink)}.wizard-saved-copy small{display:block;margin-top:3px;color:#607b70;font-size:8.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.wizard-saved-actions{display:flex;gap:6px}.parameter-id-badge{width:30px;height:30px;display:grid;place-items:center;border-radius:10px;background:#eaf3ff;color:#246bfd;font-size:10px;font-weight:800}.parameter-saved-row{border-color:#d7e3ef;background:#f8fbfd}.parameter-editor-active{border-color:#bcd2f8;box-shadow:0 10px 28px rgba(36,107,253,.07)}.staged-device-modal .wizard-step{min-height:0}.staged-device-modal .wizard-step[hidden]{display:none!important}.staged-device-modal .modal-actions{position:sticky;bottom:-1px;z-index:5;background:rgba(255,255,255,.97);backdrop-filter:blur(10px)}
@media(max-width:700px){.wizard-saved-row{grid-template-columns:32px minmax(0,1fr) auto}.wizard-saved-actions{grid-column:2/-1;justify-self:start}.wizard-saved-row .saved-config-state{justify-self:end}.staged-device-modal .modal-actions{padding-bottom:max(10px,env(safe-area-inset-bottom))}}

/* UI13.12 MET dashboard */
.met-page{justify-content:flex-start!important}.met-window{display:flex;gap:4px;padding:3px;border:1px solid var(--line);border-radius:12px;background:rgba(255,255,255,.7)}.met-window button{border:0;background:transparent;color:var(--muted);padding:8px 12px;border-radius:9px;font-size:9px;font-weight:800}.met-window button.active{background:var(--panel);color:var(--primary);box-shadow:0 3px 10px rgba(20,42,68,.08)}
.met-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:12px}.met-kpi{min-width:0;padding:16px 17px;border:1px solid var(--line-2);border-radius:18px;background:linear-gradient(180deg,#fff,#f8fbfd);box-shadow:var(--shadow-sm)}.met-kpi>small,.met-panel header small{display:block;font-size:8px;font-weight:800;letter-spacing:.16em;color:#6f8ca8}.met-kpi>div{display:flex;align-items:baseline;gap:5px;margin-top:8px}.met-kpi strong{font-size:28px;letter-spacing:-.04em}.met-kpi span{font-size:10px;color:var(--ink-2)}.met-kpi p{margin:5px 0 0;color:var(--muted);font-size:9px}
.met-grid{display:grid;grid-template-columns:minmax(300px,.66fr) minmax(0,1.34fr);gap:12px}.met-panel{min-width:0;padding:16px;border:1px solid var(--line-2);border-radius:20px;background:linear-gradient(180deg,#fff,#f8fbfd);box-shadow:var(--shadow-sm)}.met-panel header{margin-bottom:10px}.met-panel header strong{display:block;margin-top:5px;font-size:12px}.met-panel canvas{display:block;width:100%;height:290px}.met-thermal-panel{grid-column:1/-1}.met-thermal-panel canvas{height:300px}.met-summary{min-height:18px;margin-top:6px;text-align:center;color:var(--muted);font-size:8.5px}
[data-theme="dark"] .met-kpi,[data-theme="dark"] .met-panel{background:#111713;border-color:#202922;box-shadow:none}[data-theme="dark"] .met-kpi strong,[data-theme="dark"] .met-panel header strong{color:#f1f6f3}[data-theme="dark"] .met-kpi p,[data-theme="dark"] .met-kpi>small,[data-theme="dark"] .met-panel header small,[data-theme="dark"] .met-summary{color:#7f9487}[data-theme="dark"] .met-window{background:#111713;border-color:#263129}[data-theme="dark"] .met-window button.active{background:#1b241e;color:#dce9e0}
@media(max-width:1000px){.met-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.met-grid{grid-template-columns:1fr}.met-thermal-panel{grid-column:auto}.met-panel canvas{height:260px}}
@media(max-width:560px){.met-kpis{grid-template-columns:1fr 1fr}.met-kpi{padding:12px}.met-kpi strong{font-size:23px}.met-panel{padding:12px}.met-panel canvas,.met-thermal-panel canvas{height:230px}.met-window{width:100%;justify-content:stretch}.met-window button{flex:1}}

/* UI13.15 Protocol Studio device library */
.ps-device-selector .form-grid{grid-template-columns:minmax(220px,1fr) minmax(220px,1fr) minmax(280px,1fr)}.ps-inline-actions>div{display:flex;gap:8px;flex-wrap:wrap}.ps-model-profile{min-height:260px}.ps-verify-panel{margin-top:14px;padding:12px}.console.compact{min-height:90px;max-height:150px}.ps-parameter-modal .form-grid{grid-template-columns:repeat(3,minmax(0,1fr))}@media(max-width:900px){.ps-device-selector .form-grid,.ps-parameter-modal .form-grid{grid-template-columns:1fr 1fr}}@media(max-width:620px){.ps-device-selector .form-grid,.ps-parameter-modal .form-grid{grid-template-columns:1fr}}


/* UI13.19 fixed adaptive Configuration navigation */
.page-root>.page{min-height:0;display:block}
.configuration-page{padding-top:0}
.configuration-nav-stack{position:sticky;top:0;z-index:12;display:flex;flex-direction:column;gap:8px;margin:0 0 18px;padding:8px 0 10px;background:linear-gradient(180deg,rgba(238,244,249,.98) 0%,rgba(238,244,249,.95) 78%,rgba(238,244,249,0) 100%);backdrop-filter:blur(10px)}
.configuration-nav-primary,.configuration-nav-secondary{display:flex;align-items:center;min-width:0}
.configuration-tabs{display:flex;flex-wrap:nowrap;width:max-content;max-width:100%;padding:5px;border:1px solid var(--line-2);border-radius:14px;background:rgba(239,245,250,.94);box-shadow:0 5px 16px rgba(24,47,73,.05);overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none}
.configuration-tabs::-webkit-scrollbar{display:none}
.configuration-tabs button{flex:0 0 auto;min-height:44px;padding:0 19px;border-radius:10px;font-size:10.5px;font-weight:760;letter-spacing:.005em;white-space:nowrap;color:#566a7f}
.configuration-tabs button.active{box-shadow:0 5px 14px rgba(28,63,103,.10)}
.station-entity-tabs{display:flex;flex-wrap:nowrap;width:max-content;max-width:100%;margin:0;padding:4px;border:1px solid var(--line);border-radius:12px;background:rgba(247,250,252,.96);overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none}
.station-entity-tabs::-webkit-scrollbar{display:none}
.station-entity-tabs button{flex:0 0 auto;min-height:40px;padding:0 16px;border-radius:9px;font-size:10px;font-weight:720;white-space:nowrap}
.configuration-page>.page-head{margin-top:0;margin-bottom:18px}
@media(max-width:900px){
  .configuration-nav-stack{margin-inline:-4px;padding-inline:4px;top:0}
  .configuration-tabs,.station-entity-tabs{width:100%;max-width:100%}
  .configuration-tabs button{min-height:44px;padding-inline:16px}
  .station-entity-tabs button{min-height:40px;padding-inline:14px}
}
@media(max-width:620px){
  .configuration-nav-stack{gap:6px;margin-bottom:14px;padding-top:5px}
  .configuration-tabs{padding:4px;border-radius:12px}
  .configuration-tabs button{min-height:42px;padding-inline:14px;font-size:10px}
  .station-entity-tabs button{min-height:39px;padding-inline:12px;font-size:9.5px}
}
@media(pointer:coarse){
  .configuration-tabs button,.station-entity-tabs button{min-height:44px}
}

/* UI13.20 progressive operational Protocol Studio */
.ps-selector-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:end}.ps-progress-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:12px 0}.ps-progress-strip span{min-height:38px;display:flex;align-items:center;justify-content:center;padding:8px 12px;border:1px solid var(--line);border-radius:12px;background:rgba(244,248,252,.9);color:#59748f;font-size:9px;font-weight:800;letter-spacing:.03em}.ps-progress-strip span.done,.ps-progress-strip span.active{border-color:#bfd7ff;background:#eef5ff;color:#1967d2}.ps-active-profile{min-height:0}.ps-param-list{margin-top:4px}.ps-profile-actions{display:flex;gap:10px;margin-top:14px}.ps-progress-panel{margin-top:12px;animation:pageIn .18s ease both}.ps-progress-panel .eyebrow{margin-bottom:4px}.ps-connection-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.ps-parser-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.ps-progress-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}.ps-parse-result{display:grid;grid-template-columns:auto minmax(0,1fr);gap:4px 14px;align-items:center;margin:14px 0;padding:12px 14px;border:1px solid #bfe5d2;border-radius:12px;background:#f1fbf6}.ps-parse-result strong{font-size:10px}.ps-parse-result span{font-size:18px;font-weight:700;color:var(--ink)}.ps-parse-result small{grid-column:1/-1;color:var(--muted)}.ps-trace-grid{align-items:start;margin-top:12px}.compact-title{margin-bottom:8px}.ps-inline-console{min-height:180px;max-height:280px}.ps-parser-panel .field.span-2{grid-column:span 2}
@media(max-width:980px){.ps-selector-grid,.ps-connection-grid,.ps-parser-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ps-progress-strip{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.ps-selector-grid,.ps-connection-grid,.ps-parser-grid,.ps-trace-grid{grid-template-columns:1fr}.ps-parser-panel .field.span-2{grid-column:auto}.ps-progress-strip{display:flex;overflow-x:auto;scrollbar-width:none}.ps-progress-strip span{flex:0 0 auto;min-width:150px}.ps-progress-actions .button,.ps-profile-actions .button{width:100%}}


/* UI13.22 navigation recovery + adaptive one-screen Overview */
/* The page scroller only appears when content actually exceeds the available viewport. */
.overview-page{display:grid!important;grid-template-rows:auto auto minmax(0,1fr);align-content:start;gap:0;min-height:0!important}
.overview-main-grid{align-items:stretch;min-height:0}
.overview-main-grid>.panel{min-height:0}
.overview-quick-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px!important}
.overview-quick-grid .workspace-card{min-height:84px;padding:12px 13px}
.overview-quick-grid .workspace-card .metric-icon{width:36px;height:36px;border-radius:10px}
.overview-quick-grid .workspace-card .metric-icon svg{width:17px;height:17px}
.overview-quick-grid .workspace-card h3{font-size:11px}
.overview-quick-grid .workspace-card p{font-size:8.5px;margin-top:3px}
.overview-latest-panel .empty-state{min-height:210px;padding-block:20px}
@media(min-width:1101px) and (min-height:760px){
  .overview-page .hero{padding:18px 20px}
  .overview-page .hero h1{font-size:26px}
  .overview-page .hero p{margin-top:6px;line-height:1.45}
  .overview-page>.grid.grid-4{margin-top:10px!important;gap:10px}
  .overview-page .metric-card{padding:12px 13px}
  .overview-page>.overview-main-grid{margin-top:10px!important;gap:10px}
  .overview-page .panel{padding:14px}
  .overview-page .section-title{margin-bottom:9px}
  .overview-page .workspace-card-grid{gap:9px!important}
}
@media(min-width:1101px) and (max-height:900px){
  .page-root{padding-top:14px;padding-bottom:14px}
  .overview-page .hero{padding:14px 18px}
  .overview-page .hero h1{font-size:23px}
  .overview-page .hero p{font-size:10px;line-height:1.35;max-width:850px}
  .overview-page .metric-card{padding:10px 12px}
  .overview-page .metric-icon{width:36px;height:36px}
  .overview-page .metric-copy strong{font-size:16px}
  .overview-page .overview-main-grid{margin-top:9px!important}
  .overview-page .panel{padding:12px}
  .overview-quick-grid .workspace-card{min-height:72px;padding:10px 11px}
  .overview-quick-grid .workspace-card p{display:none}
  .overview-latest-panel .empty-state{min-height:160px;padding:14px}
}
@media(max-width:1100px){
  .overview-quick-grid{grid-template-columns:repeat(auto-fit,minmax(min(220px,100%),1fr))}
}
@media(max-width:700px){
  .overview-page{display:block!important}
  .overview-quick-grid{grid-template-columns:1fr}
  .overview-quick-grid .workspace-card{min-height:76px}
}

/* UI13.23 — reference-parity Live Monitoring visualization system */
.live-monitor-page{max-width:1680px!important;display:block!important;animation:none!important}
.live-page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:22px;margin:0 0 12px;padding:0 2px}.live-page-head h1{margin:0;color:#0c2747;font-size:30px;line-height:1;letter-spacing:-.045em}.live-page-head p{margin:7px 0 0;color:#5b6e83;font-size:12px}.live-header-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;min-width:0}.station-pill{height:42px;display:flex;align-items:center;gap:9px;padding:0 15px;border:1px solid #cfdbe8;border-radius:13px;background:#fff;color:#163657;font-size:10px;font-weight:750;white-space:nowrap}.station-pill i{width:8px;height:8px;border-radius:50%;background:#17b875;box-shadow:0 0 0 4px rgba(23,184,117,.10)}.live-updated{display:flex;flex-direction:column;padding:0 5px;white-space:nowrap}.live-updated small{font-size:8px;color:#7d92a9}.live-updated strong{font-size:8.5px;color:#526d88;margin-top:2px}.live-refresh-icon{min-width:42px!important;width:42px;padding:0!important}.auto-refresh-pill{display:flex;align-items:center;gap:8px;color:#556f89;font-size:9px;white-space:nowrap}.auto-refresh-pill .switch{transform:none;transform-origin:center}.auto-refresh-pill b{font-size:8px;color:#637c94;border:1px solid #d8e2ec;background:#f8fbfd;border-radius:8px;padding:5px 7px}
.live-tabs{position:sticky;top:-1px;z-index:8;display:flex;align-items:stretch;width:max-content;max-width:100%;margin-bottom:14px;border:1px solid #d4dfeb;border-radius:13px 13px 0 0;background:rgba(248,251,254,.96);box-shadow:0 1px 0 rgba(28,52,78,.03);backdrop-filter:blur(16px);overflow:auto;scrollbar-width:none}.live-tabs::-webkit-scrollbar{display:none}.live-tabs button{height:48px;min-width:220px;display:flex;align-items:center;justify-content:center;gap:10px;border:0;border-right:1px solid #dbe4ed;background:transparent;color:#526c86;font-size:11px;font-weight:650;white-space:nowrap;position:relative;padding:0 20px;transition:background .16s var(--ease),color .16s var(--ease)}.live-tabs button:last-child{border-right:0}.live-tabs button svg{width:17px;height:17px}.live-tabs button:hover{background:#f3f8fd;color:#1d5fc8}.live-tabs button.active{background:#fff;color:#1264ee}.live-tabs button.active:after{content:"";position:absolute;left:0;right:0;bottom:0;height:3px;background:#1767f2;border-radius:3px 3px 0 0}.live-tab-body{min-height:0;contain:layout style}
.live-reference-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:14px!important;align-items:stretch}.live-card-reference{min-height:238px;padding:18px 18px 14px!important;border-radius:20px!important;border:1px solid #ccd9e6!important;background:linear-gradient(180deg,#fff 0%,#fbfdff 100%)!important;box-shadow:0 10px 28px rgba(31,55,82,.07)!important;position:relative;overflow:hidden;contain:layout paint}.live-card-reference:before{content:"";position:absolute;inset:0 auto 0 0;width:4px;background:var(--accent);border-radius:20px 0 0 20px}.live-card-reference .live-name{font-size:12px;text-transform:none}.live-card-reference .status-chip{font-size:8px;padding:6px 10px;border-radius:999px;background:#edf9f4;border:1px solid #c4e8d9;color:#11815a}.live-card-reference .status-chip:before{content:"";display:inline-block;width:7px;height:7px;border-radius:50%;background:#1ab779;margin-right:6px}.live-card-reference .live-value{margin:22px 0 12px;gap:8px}.live-card-reference .live-value strong{font-size:37px;line-height:1;color:var(--accent);font-weight:760}.live-card-reference .live-value span{font-size:10px;color:#586e86}.live-card-reference .live-value.direction-value strong{font-size:31px}.live-card-reference .live-meta{font-size:8.5px;line-height:1.4;min-height:28px}.live-card-reference .spark{height:58px;margin:12px -4px -1px}.live-card-reference .spark svg{stroke-width:2.3}.live-card-reference .spark polyline{vector-effect:non-scaling-stroke}.live-empty-span{grid-column:1/-1}
.combined-stack{display:grid;gap:16px}.combined-note{display:flex;align-items:center;gap:8px;justify-self:end;padding:8px 12px;border-radius:999px;background:#edf5ff;color:#4a6c92;font-size:9px}.combined-note svg{width:15px;height:15px;color:#1767f2}.combined-panel{padding:16px 18px 14px;border:1px solid #cedbe8;border-radius:18px;background:linear-gradient(180deg,#fff,#fbfdff);box-shadow:0 10px 28px rgba(31,55,82,.06)}.combined-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;border-bottom:1px solid #e0e7ef;padding-bottom:10px}.combined-title-row h2{margin:0;font-size:21px;letter-spacing:-.025em}.combined-title-row p{margin:4px 0 0;color:#5a6e83;font-size:10.5px}.combined-controls{display:flex;align-items:center;gap:10px}.compact-select{width:auto!important;min-width:150px;min-height:38px!important;height:38px!important;padding-block:0!important}.combined-chip-row{display:flex;flex-wrap:wrap;gap:10px;padding:10px 0 8px}.combined-chip{height:36px;display:flex;align-items:center;gap:8px;border:1px solid #d5e0ea;border-radius:10px;background:#fff;padding:0 13px;color:#27415c;cursor:pointer;user-select:none}.combined-chip input{position:absolute;opacity:0;pointer-events:none}.combined-check{width:19px;height:19px;display:grid;place-items:center;border-radius:5px;background:#dfe8f1;color:transparent;font-size:12px;font-weight:900;transition:.15s}.combined-chip input:checked+.combined-check{background:var(--series);color:#fff;box-shadow:0 2px 7px rgba(36,107,253,.16)}.combined-chip b{font-size:10px}.combined-canvas-wrap{height:285px;border:1px solid #e0e7ee;border-radius:13px;background:#fff;padding:8px}.combined-canvas-wrap canvas{display:block;width:100%;height:100%}.combined-empty{min-height:170px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:#7389a0}.combined-empty .empty-icon{width:44px;height:44px}.combined-empty strong{color:#28445f;margin-top:8px}.combined-empty p{font-size:10px;max-width:420px}
.met-reference{display:grid;gap:12px}.met-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.met-summary-card{position:relative;min-height:165px;padding:15px 17px 12px;border:1px solid #cedbe8;border-radius:18px;background:linear-gradient(180deg,#fff,#fbfdff);box-shadow:0 10px 28px rgba(31,55,82,.06);overflow:hidden;contain:layout paint}.met-summary-card:before{content:"";position:absolute;inset:0 auto 0 0;width:4px;background:var(--accent)}.met-summary-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.met-summary-head>strong{font-size:10px;text-transform:uppercase;letter-spacing:.04em}.met-summary-head .status-chip{font-size:7px}.met-summary-value{display:flex;align-items:baseline;gap:7px;margin-top:15px}.met-summary-value b{font-size:32px;color:var(--accent);line-height:1;letter-spacing:-.035em}.met-summary-value span{font-size:12px;color:#576e88;font-weight:700}.met-summary-card p{margin:9px 0 0;color:#576e88;font-size:9px}.met-mini-spark{height:43px;margin-top:7px}.met-mini-spark svg{width:100%;height:100%;fill:none;stroke:var(--accent);stroke-width:2;vector-effect:non-scaling-stroke}.met-feature-grid{display:grid;grid-template-columns:1.15fr 1.05fr .78fr .92fr;gap:12px}.met-feature-panel,.met-guidance-panel,.met-trend-panel{min-width:0;border:1px solid #cedbe8;border-radius:18px;background:linear-gradient(180deg,#fff,#fbfdff);box-shadow:0 10px 28px rgba(31,55,82,.055);padding:14px}.met-panel-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:8px}.met-panel-heading h2{margin:0;font-size:12px;color:#173451}.met-panel-heading p{margin:3px 0 0;font-size:8px;color:#576f86}.met-panel-heading>svg{width:15px;height:15px;color:#5d7c9a}.rose-layout{display:grid;grid-template-columns:minmax(210px,1fr) minmax(125px,.58fr);gap:8px;align-items:center}.rose-layout canvas{display:block;width:100%;height:285px}.rose-summary{display:flex;flex-direction:column;gap:4px}.rose-summary small{font-size:8.5px;color:#617b96}.rose-summary>strong{font-size:23px;color:#0d47ad;line-height:1.1;margin-bottom:7px}.wind-speed-legend{display:grid;gap:4px;margin-top:4px}.wind-speed-legend span{font-size:8px;color:#4e6780;display:flex;align-items:center;gap:7px}.wind-speed-legend i{width:8px;height:8px;border-radius:50%}.wind-speed-legend .s1{background:#1767f2}.wind-speed-legend .s2{background:#0ca9c8}.wind-speed-legend .s3{background:#27b7b0}.wind-speed-legend .s4{background:#55c879}.wind-speed-legend .s5{background:#e7c821}.wind-speed-legend .s6{background:#f58a1f}.pollution-layout{grid-template-columns:minmax(210px,1fr) 110px}.pollution-legend{display:flex;flex-direction:column;gap:6px;color:#5c7590;font-size:8px}.pollution-legend strong{font-size:10px;color:#284560}.pollution-scale{display:flex;height:10px;border-radius:99px;overflow:hidden}.pollution-scale i{flex:1}.compass-layout{display:grid;grid-template-columns:minmax(150px,1fr) 92px;align-items:center}.compass-layout canvas{width:100%;height:230px}.compass-values{display:flex;flex-direction:column}.compass-values strong:first-child{font-size:27px;color:#0b2d5b}.compass-values b{font-size:25px;color:#0b2d5b;margin-top:2px}.compass-values strong:nth-of-type(2){font-size:20px;color:#0b2d5b;margin-top:18px}.compass-values small{font-size:8px;color:#71879d;margin-top:3px}.met-guidance-panel{padding:14px 12px}.met-guide-table{border:1px solid #d9e3ed;border-radius:10px;overflow:hidden}.met-guide-table>div{display:grid;grid-template-columns:.95fr 1.05fr;border-bottom:1px solid #e2e9f0}.met-guide-table>div:last-child{border-bottom:0}.met-guide-table b,.met-guide-table span{padding:7px 8px;font-size:7.8px;line-height:1.25}.met-guide-table b{background:#f3f7fb;color:#496883}.met-guide-table span:first-child{border-right:1px solid #e2e9f0;color:#405f7c}.met-guide-table span:last-child{color:#6b8299}.met-trend-grid{display:grid;grid-template-columns:.85fr .65fr .7fr 1.25fr;gap:12px}.met-trend-panel{min-height:190px;padding:12px}.met-trend-panel canvas{width:100%;height:150px;display:block}.met-thermal-wide canvas{height:150px}
.live-tab-body canvas{transform:translateZ(0);backface-visibility:hidden}.live-card-reference,.met-summary-card,.combined-panel,.met-feature-panel,.met-guidance-panel,.met-trend-panel{will-change:auto}.live-tab-body *{animation-duration:.18s}
@media(max-width:1450px){.live-reference-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}.met-feature-grid{grid-template-columns:1.2fr 1.05fr .85fr}.met-guidance-panel{grid-column:1/-1}.met-guide-table{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:0;gap:6px}.met-guide-table>div{display:flex;flex-direction:column;border:1px solid #d9e3ed;border-radius:9px;overflow:hidden}.met-guide-table>div:first-child{display:none}.met-guide-table span:first-child{border-right:0;border-bottom:1px solid #e2e9f0;font-weight:700}.met-trend-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.met-thermal-wide{grid-column:1/-1}}
@media(max-width:1150px){.live-page-head{flex-direction:column}.live-header-actions{width:100%;justify-content:flex-start;overflow-x:auto;padding-bottom:2px}.live-reference-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.met-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.met-feature-grid{grid-template-columns:1fr 1fr}.met-compass-panel,.met-guidance-panel{grid-column:auto}.combined-title-row{flex-direction:column}.combined-controls{width:100%;flex-wrap:wrap}}
@media(max-width:760px){.live-tabs{width:100%}.live-tabs button{min-width:190px}.live-reference-grid{grid-template-columns:1fr!important}.live-card-reference{min-height:210px}.met-summary-grid,.met-feature-grid,.met-trend-grid{grid-template-columns:1fr}.met-guidance-panel,.met-compass-panel,.met-thermal-wide{grid-column:auto}.rose-layout,.pollution-layout,.compass-layout{grid-template-columns:1fr}.rose-layout canvas,.compass-layout canvas{height:250px}.rose-summary,.pollution-legend,.compass-values{align-items:center;text-align:center}.combined-controls .compact-select{min-width:135px;flex:1}.live-header-actions{gap:7px}.live-updated,.auto-refresh-pill{display:none}}
@media(max-width:480px){.live-page-head h1{font-size:25px}.live-tabs button{min-width:165px;height:46px;padding:0 12px;font-size:10px}.live-card-reference .live-value strong{font-size:32px}.met-summary-grid{grid-template-columns:1fr}.combined-chip{padding:0 10px}.combined-canvas-wrap{height:235px}}
@media(prefers-reduced-motion:reduce){.live-monitor-page,.live-card-reference,.met-summary-card,.combined-panel,.met-feature-panel,.met-guidance-panel,.met-trend-panel{animation:none!important;transition:none!important}.spark polyline{transition:none!important}}

/* UI13.23 directional-analysis configuration + stable live paint */
.parameter-chart-guidance{margin:12px 0 2px;padding:12px 14px;border:1px solid #d7e3ef;border-radius:14px;background:linear-gradient(180deg,#f8fbff,#f3f8fd)}
.parameter-chart-guidance>strong{display:block;margin-bottom:9px;font-size:10px;color:#163a61;letter-spacing:.01em}
.parameter-chart-guidance>div{display:grid;grid-template-columns:minmax(120px,.8fr) minmax(160px,1.2fr);gap:0;border:1px solid #dce6ef;border-radius:10px;overflow:hidden;background:#fff}
.parameter-chart-guidance span,.parameter-chart-guidance b{padding:7px 9px;border-bottom:1px solid #e6edf4;font-size:8.5px;line-height:1.3}
.parameter-chart-guidance span{color:#496985;background:#f6f9fc;border-right:1px solid #e6edf4}
.parameter-chart-guidance b{color:#173c65;font-weight:700}
.parameter-chart-guidance span:nth-last-of-type(1),.parameter-chart-guidance b:last-child{border-bottom:0}
.live-monitor-page .live-tab-body,.live-monitor-page .live-card,.live-monitor-page canvas{contain:layout paint}
.live-monitor-page canvas{image-rendering:auto}
@media(max-width:700px){.parameter-chart-guidance>div{grid-template-columns:1fr}.parameter-chart-guidance span{border-right:0}.parameter-chart-guidance span,.parameter-chart-guidance b{border-bottom:1px solid #e6edf4}}

/* UI13.24 adaptive compact database + time-base tabular + MET mapping refinement */
.database-compact-page{min-height:0!important}.database-compact-page>.configuration-nav-stack{margin-bottom:10px}.database-compact-page>.page-head{margin-bottom:10px}.database-compact-page .service-layout{grid-template-columns:minmax(310px,340px) minmax(0,1fr);gap:11px;align-items:start}.database-compact-page .service-left{grid-template-rows:auto auto;gap:11px}.database-compact-page .runtime-card{min-height:0;padding:13px 14px}.database-compact-page .runtime-hero{margin-top:8px}.database-compact-page .runtime-glyph{width:58px;height:58px;border-radius:17px}.database-compact-page .runtime-title strong{font-size:22px}.database-compact-page .runtime-title span{font-size:8.5px;line-height:1.4}.database-compact-page .runtime-actions{margin-top:10px}.database-compact-page .db-card{min-height:0;padding:13px 14px}.database-compact-page .db-actions{margin-top:11px;gap:7px}.database-compact-page .service-right{min-height:0;grid-template-rows:auto auto;gap:11px}.database-compact-page .summary-strip{gap:8px}.database-compact-page .summary-card{padding:10px 11px;border-radius:12px}.database-compact-page .service-right>.panel{padding:13px}.database-compact-page .activity-list{min-height:150px;max-height:270px;overflow:auto}.database-compact-page .activity-row{min-height:36px}.database-compact-page .section-title{margin-bottom:8px}
@media(min-width:1101px) and (max-height:900px){.database-compact-page .activity-list{min-height:120px;max-height:205px}.database-compact-page .runtime-glyph{width:52px;height:52px}.database-compact-page .runtime-title strong{font-size:20px}}
@media(max-width:1120px){.database-compact-page .service-layout{grid-template-columns:1fr}.database-compact-page .service-left{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:auto}.database-compact-page .service-right{grid-template-rows:auto auto}.database-compact-page .activity-list{max-height:240px}}
@media(max-width:720px){.database-compact-page .service-left,.database-compact-page .summary-strip{grid-template-columns:1fr}.database-compact-page .activity-list{max-height:220px}}

.live-tabs{display:grid!important;grid-template-columns:repeat(var(--live-tab-count),minmax(0,1fr))!important;width:100%!important;max-width:100%!important;overflow:hidden!important}.live-tabs button{min-width:0!important;width:100%;padding-inline:14px}.live-reference-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important}.live-card-reference{min-height:220px}.live-card-reference .live-value{margin:18px 0 10px}.live-card-reference .spark{height:50px}
@media(max-width:1180px){.live-reference-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}}
@media(max-width:900px){.live-reference-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:560px){.live-reference-grid{grid-template-columns:1fr!important}.live-tabs{overflow-x:auto!important;display:flex!important}.live-tabs button{flex:1 0 170px}}

.met-subtabs{display:flex;align-items:center;gap:5px;width:max-content;max-width:100%;padding:4px;border:1px solid #d4dfeb;border-radius:12px;background:#eef4f9}.met-subtabs button{min-height:38px;padding:0 16px;border:0;border-radius:9px;background:transparent;color:#5b718a;font-size:10px;font-weight:750;display:flex;align-items:center;gap:7px}.met-subtabs button svg{width:15px;height:15px}.met-subtabs button.active{background:#1767f2;color:#fff;box-shadow:0 5px 14px rgba(23,103,242,.18)}.met-wind-workspace,.met-pollution-workspace{display:grid;grid-template-columns:minmax(420px,1.25fr) minmax(300px,.75fr);gap:12px}.met-wind-primary,.met-pollution-primary{min-height:365px}.met-panel-actions{display:flex;gap:8px;flex-wrap:wrap}.met-wind-primary .rose-layout,.met-pollution-primary .rose-layout{grid-template-columns:minmax(250px,1fr) minmax(150px,.55fr)}.met-wind-primary .rose-layout canvas,.met-pollution-primary .rose-layout canvas{height:300px}.met-compass-panel{min-height:365px}.met-compass-panel .compass-layout canvas{height:275px}.met-reference .met-trend-grid{grid-template-columns:.8fr .65fr .7fr 1.35fr}
@media(max-width:1180px){.met-wind-workspace,.met-pollution-workspace{grid-template-columns:1fr}.met-compass-panel{min-height:300px}.met-reference .met-trend-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.met-thermal-wide{grid-column:1/-1}}
@media(max-width:650px){.met-subtabs{width:100%}.met-subtabs button{flex:1;justify-content:center}.met-reference .met-trend-grid{grid-template-columns:1fr}.met-thermal-wide{grid-column:auto}.met-wind-primary .rose-layout,.met-pollution-primary .rose-layout{grid-template-columns:1fr}}

.directional-map-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.directional-map-card{padding:14px;border:1px solid #d4e0eb;border-radius:15px;background:linear-gradient(180deg,#fff,#f8fbfe)}.directional-map-card .section-title{margin-bottom:11px}.directional-map-card h3{font-size:12px}.directional-map-card p{font-size:8.5px}.check-chip-row{display:flex;gap:7px;flex-wrap:wrap}.check-chip{display:flex;align-items:center;gap:7px;min-height:42px;padding:0 11px;border:1px solid #d5e0ea;border-radius:10px;background:#fff;color:#36536f;font-size:9px;font-weight:700}.compact-guidance{margin-top:10px}
@media(max-width:760px){.directional-map-grid{grid-template-columns:1fr}}

.ps-selector-grid-four{grid-template-columns:repeat(4,minmax(0,1fr))!important}.ps-selector-grid-four .field{min-width:0}@media(max-width:1100px){.ps-selector-grid-four{grid-template-columns:repeat(2,minmax(0,1fr))!important}}@media(max-width:620px){.ps-selector-grid-four{grid-template-columns:1fr!important}}

.tabular-page{min-height:0!important}.tabular-page>.page-head{margin-bottom:11px}.tabular-mode-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:min(100%,520px);padding:4px;border:1px solid #d4dfeb;border-radius:13px;background:#eef4f9;margin-bottom:10px}.tabular-mode-tabs button{height:40px;border:0;border-radius:9px;background:transparent;color:#5c7187;font-size:10px;font-weight:780}.tabular-mode-tabs button.active{background:#fff;color:#1767f2;box-shadow:0 4px 12px rgba(22,61,104,.09)}.timebase-tab-strip{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;padding:0 0 9px}.timebase-tab-strip::-webkit-scrollbar{display:none}.timebase-tab-strip button{flex:0 0 auto;min-height:38px;padding:0 15px;border:1px solid #d2deea;border-radius:10px;background:#f8fbfd;color:#58718a;font-size:9.5px;font-weight:730}.timebase-tab-strip button.active{border-color:#a8c8ff;background:#edf5ff;color:#1666f2}.tabular-range-note{margin-bottom:9px;padding:9px 12px;border:1px solid #d7e5f4;border-radius:11px;background:#f4f9ff;color:#5c7590;font-size:9px}.tabular-history-controls{display:grid;grid-template-columns:minmax(180px,260px) minmax(180px,260px) auto;align-items:end;gap:10px;margin-bottom:10px;padding:12px}.tabular-data-panel{padding:11px!important;min-height:0}.tabular-summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(155px,1fr));gap:7px;margin-bottom:9px}.tabular-stat{display:grid;grid-template-columns:1fr auto;gap:3px 8px;padding:9px 10px;border:1px solid #d8e3ed;border-radius:10px;background:#f8fbfd}.tabular-stat strong{grid-column:1/-1;font-size:9.5px;color:#26435f;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tabular-stat span,.tabular-stat b{font-size:8px;color:#688099}.tabular-stat b{text-align:right;color:#315f8a}.tabular-table-wrap{max-height:min(calc(54vh / var(--nb-zoom,1)),540px);border:1px solid #dce5ed;border-radius:11px;overflow:auto}.tabular-matrix{min-width:max-content}.tabular-matrix th,.tabular-matrix td{min-width:116px;white-space:nowrap}.tabular-matrix th span{display:block}.tabular-matrix th small{display:block;margin-top:2px;color:#8396a8;font-size:7.5px;font-weight:600}.tabular-matrix .date-col{left:0;min-width:100px}.tabular-matrix .time-col{left:100px;min-width:105px}.tabular-matrix .sticky-col{position:sticky;z-index:3;background:#fff}.tabular-matrix thead .sticky-col{z-index:5;background:#f6f9fc}.tabular-matrix .invalid-cell{background:#fff4f4;color:#a34d58}.cell-quality{display:block;margin-top:2px;font-size:7px;color:#b25260}.tabular-footer{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-top:9px;color:#6f8397;font-size:8.5px}.tabular-footer>div{display:flex;gap:7px}.tabular-footer .button{min-height:34px}.tabular-loading{height:260px}.tabular-empty{min-height:230px}
@media(max-width:760px){.tabular-mode-tabs{width:100%}.tabular-history-controls{grid-template-columns:1fr 1fr}.tabular-history-controls .button{grid-column:1/-1}.tabular-table-wrap{max-height:calc(58vh / var(--nb-zoom,1))}}
@media(max-width:480px){.tabular-history-controls{grid-template-columns:1fr}.tabular-history-controls .button{grid-column:auto}.tabular-footer{align-items:flex-start;flex-direction:column}}
.met-preset-library{margin:10px 0 12px;padding:11px 12px;border:1px solid #d6e2ed;border-radius:13px;background:linear-gradient(180deg,#fafdff,#f4f9fd)}
.met-preset-title{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:8px}.met-preset-title strong{font-size:10px;color:#173d64}.met-preset-title span{font-size:8px;color:#71879b;text-align:right}.met-preset-chips{display:flex;flex-wrap:wrap;gap:6px}.met-preset-chip{min-height:34px;padding:0 10px;border:1px solid #cbdceb;border-radius:9px;background:#fff;color:#42627f;font-size:8.5px;font-weight:720;cursor:pointer}.met-preset-chip:hover{border-color:#9fc2ff;background:#f2f7ff;color:#1767f2}.met-preset-chip.is-added{border-color:#bfe7d4;background:#f0fbf6;color:#23875a;cursor:default}.met-preset-chip.is-custom{border-style:dashed;color:#1767f2}.met-preset-chip:disabled{opacity:1}
[data-theme="dark"] .met-preset-library{background:#111914;border-color:#26342b}.met-preset-title strong{color:inherit}[data-theme="dark"] .met-preset-title strong{color:#e7f0eb}[data-theme="dark"] .met-preset-chip{background:#151d18;border-color:#2b3a30;color:#a7b8ad}[data-theme="dark"] .met-preset-chip:hover{background:#17251d;color:#9ac4ff;border-color:#35516d}[data-theme="dark"] .met-preset-chip.is-added{background:#14231a;border-color:#2e5b42;color:#8bd3aa}
@media(max-width:680px){.met-preset-title{display:block}.met-preset-title span{display:block;margin-top:3px;text-align:left}.met-preset-chips{gap:5px}.met-preset-chip{flex:1 1 calc(50% - 5px)}}
.pollutant-parameter-row .check-chip{align-items:flex-start;flex-direction:column;justify-content:center;gap:1px;min-width:150px}.pollutant-parameter-row .check-chip input{position:absolute;opacity:0;pointer-events:none}.pollutant-parameter-row .check-chip:has(input:checked){border-color:#9dc0ff;background:#edf5ff;color:#1767f2}.pollutant-parameter-row .check-chip small{font-size:7px;font-weight:600;color:#8193a5}.pollutant-parameter-row .check-chip:has(input:checked) small{color:#5f83b3}

/* UI13.25 Chrome QA control */
.browser-qa-control{width:104px;max-width:104px;min-width:104px;height:44px!important;padding:4px 8px;gap:2px;font-size:9px;font-weight:720;line-height:1.05;white-space:nowrap;overflow:hidden}
.browser-qa-control span{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
@media(max-width:1180px){.browser-qa-control{width:38px;padding:0}.browser-qa-control span{display:none}}


/* UI13.27 usability normalization — consolidated color/radius/button language */
.brand-block img,.card,.panel,.overview-page .empty-icon{border-radius:var(--radius-card)}
.brand-copy strong{color:var(--text-on-dark)}.brand-copy span{color:var(--sidebar-muted);font-size:10px;letter-spacing:.08em;font-weight:650}
.nav-item{border-radius:var(--radius-control);grid-template-columns:24px minmax(0,1fr);color:var(--text-sidebar)}
.nav-item-copy{min-width:0;display:flex!important;align-items:center;gap:6px;overflow:hidden}
.nav-item-copy>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:620}
.nav-badge{flex:0 0 auto;margin-left:0;border-radius:var(--radius-pill)}
.sidebar-account,.avatar,.avatar.compact,.search-box,.toolbar-icon,.account-control,.button,.search-box kbd{border-radius:var(--radius-control)}
.presence,.runtime-pill,.runtime-pill i{border-radius:var(--radius-pill)}
.sidebar-account{cursor:default}.sidebar-account:hover{background:rgba(255,255,255,.04);border-color:rgba(255,255,255,.07)}
.toolbar-icon,.account-control{height:40px;border-color:var(--line);background:var(--surface-control);color:var(--text-secondary);font-size:14px}
.account-control{padding-top:4px;padding-bottom:4px}.toolbar-icon:hover,.account-control:hover{color:var(--text-accent);border-color:#b8c8d9;background:#f8fbff}
.breadcrumbs span,.search-box input,.account-text small{color:var(--text-muted)}
.breadcrumbs strong,.account-text strong{color:var(--text-primary)}
.breadcrumbs.single>span,.breadcrumbs.single>svg{display:none}
.hero{border-radius:var(--radius-hero)}
.overview-page .hero{display:block;padding:20px 22px}
.overview-page .hero h1{color:var(--text-primary)}
.overview-page .hero p{font-size:12px!important;color:var(--text-secondary);line-height:1.5;max-width:820px}
.overview-page .hero .eyebrow{color:var(--text-accent);text-transform:none;letter-spacing:.08em}
.overview-hero-actions{display:flex;align-items:center;gap:8px;margin-top:14px}
.metric-icon{border-radius:var(--radius-control)}
.metric-icon.neutral{background:#eef2f5;color:var(--text-muted)}
.metric-copy strong,.section-title h2,.workspace-card h3,.empty-state strong,.latest-value{color:var(--text-primary)}
.metric-copy span,.section-title p,.workspace-card p,.empty-state p,.latest-unit{color:var(--text-muted)}
.button{border-radius:var(--radius-control);color:var(--text-primary)}
.button.primary{color:#fff}.button.ghost{background:transparent;color:var(--text-primary)}
.overview-main-grid .section-title{min-height:42px;align-items:center;margin-bottom:10px}
.overview-quick-grid .workspace-card{min-height:82px!important;padding:11px 12px!important;display:grid!important;grid-template-columns:38px minmax(0,1fr) 16px;align-items:center;gap:10px;text-align:left;justify-content:initial}
.overview-quick-grid .workspace-card-icon{width:38px;height:38px;margin:0}
.overview-quick-grid .workspace-card-main{display:block;min-width:0}
.overview-quick-grid .workspace-card h3{font-size:13px!important;line-height:1.25;margin:0!important}
.overview-quick-grid .workspace-card p{font-size:11px!important;line-height:1.35;margin:3px 0 0!important;display:block!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.overview-quick-grid .workspace-card-chevron{display:grid;place-items:center;color:var(--text-muted)}
.overview-quick-grid .workspace-card-chevron svg{width:15px;height:15px}
.latest-reading{text-align:right}.latest-value{font-size:18px}.latest-unit{display:block;font-size:9px;margin-top:2px}
.overview-latest-panel .toggle-row .copy small{color:var(--text-muted)}
.overview-page .empty-state{color:var(--text-muted)}
.overview-page .empty-state .empty-icon{color:var(--text-secondary)}

/* Keep the Overview heuristic surface on a small, shared token set. */
.sidebar .nav-label,.sidebar-account-copy small,.build-label{color:var(--sidebar-muted)}
.sidebar-account-copy strong{color:var(--text-on-dark)}
.overview-page .metric-card,.overview-page .workspace-card,.overview-page .panel{border-radius:var(--radius-card)}

@media(min-width:1101px) and (max-height:900px){
  .overview-page .hero{padding:16px 19px}
  .overview-page .hero p{font-size:12px!important;line-height:1.4}
  .overview-page .overview-main-grid{margin-top:9px!important}
  .overview-quick-grid .workspace-card{min-height:76px!important}
}

.text-link{display:inline-flex;align-items:center;min-height:38px;padding:0 3px;color:var(--text-accent);font-size:11px;font-weight:720;text-decoration:none;border-radius:var(--radius-control)}
.text-link:hover{text-decoration:underline;text-underline-offset:3px}
.text-link:focus-visible{outline:2px solid var(--text-accent);outline-offset:2px}

/* UI13.28 Prism accessibility hardening */
.nav-item .nav-item-copy>span{color:var(--text-sidebar)}
.nav-item:hover .nav-item-copy>span,.nav-item.active .nav-item-copy>span{color:var(--text-on-dark)}
.access-required-state p{color:var(--text-secondary)}


/* UI13.29 Prism follow-up: explicit surfaces, AA text and bounded prose */
.hero-copy>p{max-width:58ch}
.ps-device-selector .section-title .copy>p{max-width:65ch}

/* UI13.29 compatibility marker: .hero-copy>p{max-width:65ch} */


/* UI13.31 dashboard + protocol/instrument workflow */
.dashboard-page{display:flex;flex-direction:column;gap:12px}.dashboard-fixed-zone{display:flex;flex-direction:column;gap:10px}.dashboard-station-card{min-height:92px;padding:15px 18px;display:flex;align-items:center;justify-content:space-between;gap:16px;background:linear-gradient(135deg,rgba(255,255,255,.96),rgba(244,249,255,.92));overflow:hidden}.dashboard-station-main{display:flex;align-items:center;gap:13px;min-width:0}.dashboard-station-icon{width:46px;height:46px;border-radius:14px;background:rgba(23,103,242,.09);color:#1767f2;display:grid;place-items:center;flex:0 0 auto}.dashboard-station-icon svg{width:22px;height:22px}.dashboard-station-main small{display:block;color:#5b718a;font-size:9px;font-weight:800;letter-spacing:.12em}.dashboard-station-main h1{margin:3px 0 2px;font-size:22px;line-height:1.12;color:#173451}.dashboard-station-main p{margin:0;color:#5b6e83;font-size:11px}.dashboard-kpi-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px}.dashboard-kpi-card{min-height:70px;border:1px solid #d9e4ef;border-radius:14px;background:rgba(255,255,255,.92);padding:10px 11px;display:grid;grid-template-columns:34px minmax(0,1fr) 14px;align-items:center;gap:8px;text-align:left;color:#173451;cursor:pointer;transition:transform .16s var(--ease),border-color .16s var(--ease),box-shadow .16s var(--ease)}.dashboard-kpi-card:hover{transform:translateY(-1px);border-color:#b8d2ef;box-shadow:0 8px 22px rgba(26,72,115,.08)}.dashboard-kpi-card>svg{width:14px;height:14px;color:#7890a7}.dashboard-kpi-icon{width:34px;height:34px;border-radius:10px;background:#edf5ff;color:#1767f2;display:grid;place-items:center}.dashboard-kpi-icon svg{width:16px;height:16px}.dashboard-kpi-card strong{display:block;font-size:18px;line-height:1;color:#173451}.dashboard-kpi-card small{display:block;margin-top:5px;font-size:9px;color:#5b6e83;font-weight:650;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dashboard-tab-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:2px}.dashboard-tab-head h2{margin:0;color:#173451;font-size:15px}.dashboard-tab-head p{margin:3px 0 0;color:#5b6e83;font-size:10px}.dashboard-tabs{position:sticky;top:0;z-index:5}.dashboard-live-table-panel{padding:12px}.dashboard-matrix-wrap{max-height:420px;overflow:auto;border:1px solid #dbe4ed;border-radius:12px}.dashboard-live-matrix{min-width:760px}.dashboard-live-matrix th,.dashboard-live-matrix td{white-space:nowrap}.dashboard-live-matrix .sticky-col{z-index:3}.dashboard-live-matrix .sticky-param-col{position:sticky;left:190px;z-index:3;background:inherit;min-width:180px}.dashboard-live-matrix thead .sticky-param-col{z-index:5;background:#f5f9fd}.dashboard-live-matrix .sticky-param-col strong{display:block;color:#173451}.dashboard-live-matrix .sticky-param-col small{display:block;color:#5b718a;margin-top:2px}.protocol-selector-ordered{grid-template-columns:repeat(4,minmax(0,1fr))}
@media(max-width:1200px){.dashboard-kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.protocol-selector-ordered{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.dashboard-station-card,.dashboard-tab-head{align-items:flex-start;flex-direction:column}.dashboard-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-live-matrix .sticky-param-col{position:static}.protocol-selector-ordered{grid-template-columns:1fr}}

/* UI13.32 UI/UX Pro Max guided control-center + resilient dashboard refinement */
.acquisition-control-page{display:flex;flex-direction:column;gap:14px}
.control-center-head{display:flex;align-items:center;gap:14px;padding:2px 8px 0}.control-center-icon{width:48px;height:48px;border-radius:14px;display:grid;place-items:center;background:#edf5ff;color:#1767f2;border:1px solid #d7e5f5;flex:0 0 auto}.control-center-icon svg{width:23px;height:23px}.control-center-head h1{margin:0;font-size:clamp(22px,calc(2vw / var(--nb-zoom,1)),30px);line-height:1.1;letter-spacing:-.035em;color:#173451}.control-center-head p{margin:5px 0 0;color:#5b6e83;font-size:11px;line-height:1.45}
.acquisition-runtime-card{padding:18px 20px 20px;overflow:hidden}.acquisition-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.acquisition-card-title{display:flex;align-items:center;gap:12px;min-width:0}.acquisition-title-icon,.acquisition-status-icon{display:grid;place-items:center;border:1px solid #d6e4f2;background:#edf5ff;color:#1767f2}.acquisition-title-icon{width:48px;height:48px;border-radius:14px;flex:0 0 auto}.acquisition-title-icon svg{width:21px;height:21px}.acquisition-card-title h2{margin:0;color:#173451;font-size:16px;line-height:1.2}.acquisition-card-title p{margin:4px 0 0;color:#5b6e83;font-size:10px;line-height:1.4}.acquisition-status-grid{display:grid;grid-template-columns:minmax(0,1fr) 1px minmax(0,1fr);align-items:center;gap:26px;margin-top:18px;padding:18px 34px;border-bottom:1px solid var(--line)}.acquisition-status-divider{height:72px;background:var(--line)}.acquisition-status-item{display:flex;align-items:center;justify-content:center;gap:18px;min-width:0}.acquisition-status-icon{width:72px;height:72px;border-radius:20px;color:#6d88a0;flex:0 0 auto}.acquisition-status-icon svg{width:30px;height:30px}.acquisition-status-item small{display:block;color:#6b8298;font-size:8.5px;font-weight:850;letter-spacing:.1em}.acquisition-status-item strong{display:block;margin-top:4px;color:#173451;font-size:24px;letter-spacing:-.035em;overflow-wrap:anywhere}.acquisition-db-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding-top:16px}.acquisition-db-actions .button{width:100%;min-height:46px}.acquisition-primary-action{padding-top:14px;margin-top:14px;border-top:1px solid var(--line)}.acquisition-primary-action .button{width:100%;min-height:50px;font-size:11px}.acquisition-readonly{margin-top:16px}
.recent-events-card{padding:14px 16px 16px}.recent-events-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:10px}.recent-events-title{display:flex;align-items:center;gap:10px;min-width:0}.recent-events-icon{width:38px;height:38px;border-radius:11px;display:grid;place-items:center;background:#edf5ff;color:#1767f2;border:1px solid #d7e5f5;flex:0 0 auto}.recent-events-icon svg{width:18px;height:18px}.recent-events-title h2{margin:0;font-size:14px;color:#173451}.recent-events-title p{margin:3px 0 0;font-size:9.5px;color:#5b6e83}.recent-events-table-wrap{border:1px solid #dbe5ee;border-radius:11px;overflow:auto;background:#fff}.recent-events-table{width:100%;border-collapse:collapse;min-width:720px}.recent-events-table th,.recent-events-table td{padding:8px 12px;border-bottom:1px solid #e6edf3;text-align:left;font-size:9.5px;color:#4f6780}.recent-events-table th{background:#f5f9fd;color:#60768b;font-size:8px;text-transform:uppercase;letter-spacing:.06em}.recent-events-table tbody tr:last-child td{border-bottom:0}.recent-events-table tbody tr:hover td{background:#f9fbfd}.event-level{display:inline-flex;align-items:center;gap:6px;font-size:9px;font-weight:760}.event-level i{width:7px;height:7px;border-radius:50%;background:#3479ef}.event-level.warn{color:#996510}.event-level.warn i{background:#dfa22a}.event-level.bad{color:#b4414c}.event-level.bad i{background:#dc5361}.event-level.info{color:#2765cf}.recent-events-empty{min-height:120px}
.live-reference-grid{grid-template-columns:repeat(var(--live-tile-cols,4),minmax(0,1fr))!important}.live-card-reference{display:flex;flex-direction:column;min-width:0}.live-reading-zone{min-width:0;padding-bottom:12px}.live-chart-zone{margin-top:auto;padding-top:11px;border-top:1px solid #dce6ef}.live-chart-label{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:6px;color:#5b6e83}.live-chart-label span{font-size:8.5px;font-weight:780;text-transform:uppercase;letter-spacing:.05em}.live-chart-label small{font-size:7.5px}.live-chart-zone .spark{height:58px;margin:0}
.input,.select,.textarea{min-width:0;max-width:100%;font-size:10.5px;line-height:1.25;overflow-wrap:anywhere}.input,.select{min-height:42px;height:auto;padding:9px 11px}.select{padding-right:32px;text-overflow:ellipsis;white-space:nowrap}.textarea{padding:10px 11px}.field{min-width:0}.field label{overflow-wrap:anywhere;line-height:1.3}.help,.field-help{overflow-wrap:anywhere}.button{min-width:0;height:auto;min-height:40px;line-height:1.2;white-space:normal;overflow-wrap:anywhere}.configuration-tabs button,.station-entity-tabs button,.live-tabs button{overflow:hidden;text-overflow:ellipsis}.search-box input,.account-text,.breadcrumbs{min-width:0}.account-text strong,.account-text small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
@media(max-width:1150px){.live-reference-grid{grid-template-columns:repeat(auto-fit,minmax(min(320px,100%),1fr))!important}.acquisition-status-grid{padding-inline:18px;gap:16px}}
@media(max-width:760px){.input,.select,.textarea{font-size:16px}.control-center-head,.acquisition-card-head,.recent-events-head{align-items:flex-start}.acquisition-card-head,.recent-events-head{flex-direction:column}.acquisition-status-grid{grid-template-columns:1fr;gap:12px;padding:14px 0}.acquisition-status-divider{width:100%;height:1px}.acquisition-status-item{justify-content:flex-start;padding:0 6px}.acquisition-db-actions{grid-template-columns:1fr}.live-reference-grid{grid-template-columns:1fr!important}.browser-qa-control{width:40px;min-width:40px;max-width:40px;padding:0}.browser-qa-control span{display:none}.control-center-head p{max-width:60ch}}



/* UI13.33 - UI/UX Pro Max whole-workspace alignment pass */
:root{--control-h-pro:42px;--control-font-pro:11px;--field-label-h-pro:24px;--form-gap-pro:12px}
.browser-qa-control{width:104px!important;min-width:104px!important;max-width:104px!important;height:40px!important;min-height:40px!important;padding:3px 8px!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:1px!important;font-size:9px!important;line-height:1!important}
.browser-qa-control svg{width:14px!important;height:14px!important}.browser-qa-control span{font-size:9px!important;font-weight:720!important;line-height:1.05!important}
.topbar-right>.toolbar-icon,.topbar-right>.account-control{height:40px!important;min-height:40px!important}.topbar-right>.account-control{max-height:40px}
.form-grid{align-items:start;gap:var(--form-gap-pro)!important}.form-grid>.field{align-self:stretch;display:grid!important;grid-template-rows:minmax(var(--field-label-h-pro),auto) auto;align-content:start;gap:6px!important}.form-grid>.field>label{min-height:var(--field-label-h-pro);display:flex;align-items:flex-end;font-size:10px!important;line-height:1.25!important;white-space:normal!important;overflow:visible!important}.input,.select{min-height:var(--control-h-pro)!important;height:var(--control-h-pro)!important;font-size:var(--control-font-pro)!important;line-height:1.2!important;padding-block:0!important}.input{padding-inline:11px!important}.select{padding-left:11px!important;padding-right:34px!important}.textarea{font-size:var(--control-font-pro)!important;line-height:1.45!important}.input,.select,.textarea,.button{box-sizing:border-box}.field,.field>*{min-width:0}.field-help,.help{line-height:1.45!important}.modal .form-grid,.panel .form-grid{grid-auto-rows:auto}.button{font-size:10.5px!important}.segmented button{min-height:40px;line-height:1.15;white-space:normal!important;overflow-wrap:anywhere}.configuration-tabs{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;width:100%!important}.configuration-tabs button{width:100%!important;padding:8px 10px!important}
.database-configuration-card{padding:18px}.database-config-summary{display:grid;grid-template-columns:minmax(150px,.7fr) minmax(260px,1.6fr) minmax(150px,.7fr);gap:10px;padding:14px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.database-config-summary>div{min-width:0;padding:8px 12px;border:1px solid var(--line);border-radius:12px;background:var(--surface-control,#f8fbfd);display:flex;flex-direction:column;gap:4px}.database-config-summary small{font-size:8px;font-weight:800;letter-spacing:.08em;color:var(--text-muted)}.database-config-summary strong{font-size:13px;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.database-config-summary span{font-size:9px;color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.database-config-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:14px}.database-config-actions .button{width:100%;min-height:44px}.database-config-note{display:flex;flex-direction:column;gap:4px;margin-top:12px;padding:11px 12px;border:1px solid #d7e4f1;border-radius:11px;background:#f6faff}.database-config-note strong{font-size:10px;color:var(--text-primary)}.database-config-note span{font-size:9px;line-height:1.45;color:var(--text-muted);overflow-wrap:anywhere}
@media(max-width:1050px){.configuration-tabs{grid-template-columns:repeat(2,minmax(0,1fr))!important}.database-config-summary{grid-template-columns:1fr 1fr}.database-config-summary>div:nth-child(2){grid-column:1/-1}.database-config-actions{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){.browser-qa-control{width:40px!important;min-width:40px!important;max-width:40px!important}.browser-qa-control span{display:none!important}.configuration-tabs,.database-config-summary,.database-config-actions{grid-template-columns:1fr!important}.database-config-summary>div:nth-child(2){grid-column:auto}.form-grid{grid-template-columns:1fr!important}.field.span-2{grid-column:auto!important}}
/* UI13.33 desktop form density: keep three-field rows aligned without cramped inputs. */
@media(min-width:1025px){.config-editor-modal{width:min(900px,calc(calc(100vw / var(--nb-zoom,1)) - 48px))!important;max-width:900px!important}}

/* UI13.34 production configuration / network / report / analysis workspaces */
.pro-grid-6{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;align-items:start}.pro-grid-4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;align-items:start}
.config-editor-row{display:grid;grid-template-columns:minmax(140px,1.25fr) minmax(140px,1.1fr) minmax(110px,.8fr) minmax(110px,.8fr) minmax(84px,.65fr) auto;gap:10px;align-items:end;padding:12px 0;border-bottom:1px solid var(--line,#e3e9ef)}.config-editor-row:last-child{border-bottom:0}.config-editor-row>*{min-width:0}.config-row-actions{display:flex;gap:6px;align-items:center;justify-content:flex-end;min-height:40px}
.network-pro-layout{display:grid;grid-template-columns:1fr;gap:14px}.network-service-panel{overflow:visible}.network-endpoint-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;align-items:start;margin:12px 0}.network-map-table{display:grid;gap:8px;margin-top:12px;overflow:visible}.network-map-head,.network-map-row{display:grid;grid-template-columns:72px minmax(150px,1.5fr) minmax(92px,.85fr) minmax(92px,.75fr) minmax(120px,1fr) minmax(92px,.75fr) minmax(110px,.85fr);gap:8px;align-items:center}.network-map-head{padding:0 8px;color:var(--muted,#63798d);font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.network-map-row{padding:9px 8px;border:1px solid var(--line,#e3e9ef);border-radius:12px;background:var(--card,#fff)}.network-map-row>*{min-width:0}.network-security-note{margin-top:12px;padding:10px 12px;border-radius:12px;background:rgba(23,103,242,.06);border:1px solid rgba(23,103,242,.12);color:var(--muted,#5b6e83);font-size:11px;line-height:1.45}.compact-input,.compact-select{min-width:0!important;width:100%!important;height:38px!important;font-size:11px!important}.network-map-row .switch{justify-self:center}
.report-scheduler-intro{margin-bottom:14px}.report-scheduler-card{overflow:visible}.report-scheduler-card+.report-scheduler-card{margin-top:12px}.report-parameter-picker{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:10px}.report-parameter-picker .check-chip{min-width:0;overflow:hidden}.report-parameter-picker .check-chip span,.report-parameter-picker .check-chip small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.inline-field-action{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:end}.inline-field-action>*{min-width:0}
.analysis-config-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.analysis-config-card{overflow:visible}.analysis-config-card .section-title{margin-bottom:10px}.analysis-source-grid{display:flex;flex-wrap:wrap;gap:7px;margin-top:10px}.analysis-operational-page{min-width:0}.analysis-type-tabs{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:12px}.analysis-query-panel{overflow:visible}.analysis-query-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;align-items:end}.analysis-query-grid>*{min-width:0}.analysis-run-cell{display:flex;align-items:end}.analysis-run-cell .button{width:100%}.analysis-canvas-panel{min-height:390px}.analysis-canvas{min-height:300px;display:flex;flex-direction:column;gap:12px;position:relative;overflow:auto}.analysis-svg{width:100%;height:300px;min-height:300px;overflow:visible}.analysis-svg circle{fill:#1767f2;opacity:.72}.analysis-gridline{fill:none;stroke:rgba(94,119,142,.22);stroke-width:.5;vector-effect:non-scaling-stroke}.analysis-legend{display:flex;flex-wrap:wrap;gap:10px;font-size:11px;color:var(--muted,#5b6e83)}.analysis-legend span{display:flex;align-items:center;gap:5px}.analysis-legend i{width:9px;height:9px;border-radius:999px}.analysis-stat-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.analysis-stat-strip span{padding:9px 10px;border:1px solid var(--line,#e3e9ef);border-radius:10px;background:var(--soft,#f7f9fb);font-size:10px;color:var(--muted,#5b6e83)}.analysis-stat-strip b{display:block;margin-top:3px;color:var(--ink,#173451);font-size:15px}.analysis-rose-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.rose-sector{display:grid;grid-template-columns:50px 1fr;grid-template-rows:auto auto;gap:4px 8px;align-items:center;padding:9px;border:1px solid var(--line,#e3e9ef);border-radius:11px}.rose-sector>span{font-weight:700;color:var(--ink,#173451)}.rose-sector>b{height:7px;border-radius:99px;background:linear-gradient(90deg,#1767f2 var(--rose),rgba(23,103,242,.12) var(--rose))}.rose-sector>small{grid-column:1/-1;color:var(--muted,#5b6e83)}
.configuration-tabs{display:flex!important;gap:5px!important;flex-wrap:wrap!important}.configuration-tabs button{flex:1 1 125px!important;min-width:0!important;max-width:220px!important;white-space:normal!important;line-height:1.18!important;padding:9px 10px!important}.station-entity-tabs{display:flex;gap:5px;flex-wrap:wrap}.station-entity-tabs button{flex:0 1 auto;min-width:120px}

@media(max-width:1220px){.pro-grid-6{grid-template-columns:repeat(3,minmax(0,1fr))}.pro-grid-4,.report-parameter-picker{grid-template-columns:repeat(2,minmax(0,1fr))}.network-endpoint-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.network-map-head{display:none}.network-map-row{grid-template-columns:repeat(3,minmax(0,1fr))}.analysis-query-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:820px){.pro-grid-6,.pro-grid-4,.analysis-config-grid,.report-parameter-picker,.network-endpoint-grid,.analysis-query-grid{grid-template-columns:1fr}.config-editor-row{grid-template-columns:1fr 1fr}.config-row-actions{grid-column:1/-1;justify-content:flex-start}.network-map-row{grid-template-columns:1fr 1fr}.analysis-stat-strip,.analysis-rose-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.configuration-tabs button{flex:1 1 46%}}
@media(max-width:520px){.network-map-row,.analysis-stat-strip,.analysis-rose-grid{grid-template-columns:1fr}.configuration-tabs button{flex-basis:100%}}
.autocheck-schedule-compose{display:grid;grid-template-columns:minmax(180px,1fr) 160px auto;gap:10px;align-items:end}.autocheck-schedule-list{display:grid;gap:8px;margin-top:12px}.autocheck-schedule-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;gap:10px;align-items:center;padding:10px 12px;border:1px solid var(--line,#e3e9ef);border-radius:12px}.autocheck-schedule-row div{min-width:0}.autocheck-schedule-row strong,.autocheck-schedule-row small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media(max-width:760px){.autocheck-schedule-compose,.autocheck-schedule-row{grid-template-columns:1fr}.autocheck-schedule-row .button{width:100%}}

/* UI13.35 mapping-builder + symmetric report/analysis refinement */
.mapping-builder-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:14px;padding-top:14px;border-top:1px solid var(--line,#e3e9ef)}
.mapping-builder-head>div{display:grid;gap:3px}.mapping-builder-head strong{font-size:12px;color:var(--ink,#173451)}.mapping-builder-head span{font-size:9.5px;color:var(--muted,#5b6e83)}
.network-bind-help,.analysis-config-note{display:flex;align-items:flex-start;gap:10px;margin:10px 0 2px;padding:10px 12px;border:1px solid rgba(23,103,242,.14);border-radius:12px;background:rgba(23,103,242,.05);color:var(--muted,#5b6e83);font-size:10px;line-height:1.5}
.network-bind-help svg,.analysis-config-note svg{width:18px;height:18px;flex:0 0 auto;color:#1767f2}.network-bind-help strong{display:block;color:var(--ink,#173451);margin-bottom:2px}.network-bind-help b{color:var(--ink,#173451)}
.network-map-table .data-table td>strong,.network-map-table .data-table td>small{display:block}.network-map-table .data-table td>small{margin-top:3px;color:var(--muted,#5b6e83)}
.mapping-row-actions{display:flex;gap:6px;align-items:center;justify-content:flex-end;flex-wrap:wrap}.mapping-row-actions .button{min-height:34px!important;padding:0 10px!important}
.table-empty-row{padding:16px 12px;text-align:center;color:var(--muted,#5b6e83);font-size:10px;line-height:1.5}
.network-card-save{display:flex;justify-content:flex-end;margin-top:14px;padding-top:12px;border-top:1px solid var(--line,#e3e9ef)}.network-card-save .button{min-width:190px}
.network-mapping-modal .network-mapping-note{margin-top:12px;padding:10px 12px;border-radius:11px;background:var(--soft,#f6f9fc);border:1px solid var(--line,#e3e9ef);font-size:10px;color:var(--muted,#5b6e83)}
.network-api-access-choice{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 12px;border:1px solid var(--line,#e3e9ef);border-radius:12px;margin-top:10px;background:var(--card,#fff)}.network-api-access-choice strong,.network-api-access-choice span{display:block}.network-api-access-choice strong{font-size:11px;color:var(--ink,#173451)}.network-api-access-choice div>span{margin-top:2px;font-size:9px;color:var(--muted,#5b6e83)}

.report-symmetric-card{display:grid;gap:14px}.report-header-actions{display:flex;align-items:center;gap:8px;color:var(--muted,#5b6e83);font-size:10px}.report-settings-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;align-items:start}.report-folder-field{grid-column:span 2}.report-columns-panel{border:1px solid var(--line,#e3e9ef);border-radius:14px;padding:12px;background:var(--surface-control,#f8fbfd)}.report-columns-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.report-columns-head>div{display:grid;gap:3px}.report-columns-head strong{font-size:11px;color:var(--ink,#173451)}.report-columns-head span{font-size:9px;color:var(--muted,#5b6e83)}.report-fixed-columns{display:flex;gap:8px;margin:10px 0}.report-fixed-columns>span{display:inline-flex;align-items:center;gap:6px;padding:7px 10px;border-radius:10px;background:#edf5ff;border:1px solid #d6e5f4;color:#264b70;font-size:9.5px;font-weight:700}.report-fixed-columns b,.report-column-index{display:grid;place-items:center;width:22px;height:22px;border-radius:8px;background:#fff;color:#1767f2;border:1px solid #d8e5f2;font-size:9px}.report-selected-list{display:grid;gap:8px}.report-selected-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:center;padding:9px 10px;border:1px solid var(--line,#e3e9ef);border-radius:11px;background:var(--card,#fff)}.report-selected-copy{min-width:0}.report-selected-copy strong,.report-selected-copy small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.report-selected-copy strong{font-size:10.5px;color:var(--ink,#173451)}.report-selected-copy small{margin-top:2px;font-size:8.5px;color:var(--muted,#5b6e83)}.report-selected-actions{display:flex;align-items:center;gap:5px;flex-wrap:wrap}.report-selected-actions .button{min-height:32px!important;padding:0 8px!important}.report-card-actions{padding-top:12px;border-top:1px solid var(--line,#e3e9ef)}

.analysis-builder-layout{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.analysis-builder-card{display:flex;flex-direction:column;min-height:220px}.analysis-card-status{display:flex;align-items:center;gap:8px;font-size:9px;color:var(--muted,#5b6e83)}.analysis-saved-list{display:grid;gap:8px;margin-top:4px;flex:1}.analysis-saved-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:9px 10px;border:1px solid var(--line,#e3e9ef);border-radius:11px;background:var(--surface-control,#f8fbfd)}.analysis-saved-row>div:nth-child(2){min-width:0}.analysis-saved-row strong,.analysis-saved-row small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.analysis-saved-row strong{font-size:10.5px;color:var(--ink,#173451)}.analysis-saved-row small{font-size:8.5px;color:var(--muted,#5b6e83);margin-top:2px}.analysis-saved-index{display:grid;place-items:center;width:28px;height:28px;border-radius:9px;background:#edf5ff;color:#1767f2;font-size:10px;font-weight:800}.analysis-builder-footer{display:flex;justify-content:flex-start;margin-top:12px;padding-top:10px;border-top:1px solid var(--line,#e3e9ef)}

.instrument-wizard-progress,.wizard-progress,.instrument-progress{grid-template-columns:30px minmax(24px,1fr) 30px minmax(24px,1fr) 30px minmax(24px,1fr) 30px!important}
@media(max-width:980px){.report-settings-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.report-folder-field{grid-column:1/-1}.analysis-builder-layout{grid-template-columns:1fr}}
@media(max-width:680px){.mapping-builder-head,.report-columns-head{align-items:stretch;flex-direction:column}.mapping-builder-head .button,.report-columns-head .button,.network-card-save .button{width:100%}.report-settings-grid{grid-template-columns:1fr}.report-folder-field{grid-column:auto}.report-selected-row,.analysis-saved-row{grid-template-columns:auto minmax(0,1fr)}.report-selected-actions,.analysis-saved-row .mapping-row-actions{grid-column:1/-1;justify-content:flex-start}}
.analysis-enable-hint{font-size:9.5px;color:var(--muted,#5b6e83);padding:7px 0}

/* UI13.35.1 stable 4-step MET wizard + Analysis group parameter builder */
.analysis-group-builder{margin-top:14px;border:1px solid var(--line,#e3e9ef);border-radius:14px;padding:12px;background:var(--surface-control,#f8fbfd)}
.analysis-group-builder-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.analysis-group-builder-head>div{display:grid;gap:3px}.analysis-group-builder-head strong{font-size:11px;color:var(--ink,#173451)}.analysis-group-builder-head span{font-size:9px;color:var(--muted,#5b6e83)}
.analysis-inline-picker{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:end;margin-top:10px;padding:10px;border:1px solid #cfe0f2;border-radius:12px;background:#f4f9ff}.analysis-inline-picker[hidden]{display:none!important}
.wizard-progress>i{min-width:0}.wizard-progress>[data-wizard-dot="4"][hidden],.wizard-progress>[data-wizard-link="4"][hidden]{display:none!important}
@media(max-width:680px){.instrument-wizard-progress,.wizard-progress,.instrument-progress{grid-template-columns:26px minmax(12px,1fr) 26px minmax(12px,1fr) 26px minmax(12px,1fr) 26px!important}.analysis-group-builder-head{align-items:stretch;flex-direction:column}.analysis-group-builder-head .button{width:100%}.analysis-inline-picker{grid-template-columns:1fr}}

/* UI13.35 adaptive dashboard + axis-aware trends */
.field,.form-grid>*,.input,.select,.button,.panel,.card,.adq-select,.adq-select-trigger{min-width:0;max-width:100%}
.input,.select,.adq-select-value,.button{overflow:hidden;text-overflow:ellipsis}
.dashboard-page{gap:9px!important;font-size:clamp(11px,.78vw,13px)}
.dashboard-fixed-zone{gap:8px!important}
.dashboard-station-card{position:sticky;top:0;z-index:14;min-height:70px!important;padding:10px 14px!important;border-radius:15px!important;box-shadow:0 7px 22px rgba(25,55,86,.08)!important;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
.dashboard-station-icon{width:38px!important;height:38px!important;border-radius:11px!important}.dashboard-station-icon svg{width:19px!important;height:19px!important}
.dashboard-station-main{gap:10px!important}.dashboard-station-main h1{font-size:clamp(16px,calc(1.25vw / var(--nb-zoom,1)),20px)!important;margin:1px 0!important}.dashboard-station-main p{font-size:clamp(8.5px,.68vw,10px)!important}.dashboard-station-main small{font-size:8px!important}
.dashboard-station-meta{display:flex;align-items:center;justify-content:flex-end;gap:10px;min-width:0;margin-left:auto}.dashboard-last-update{display:grid;grid-template-columns:auto auto;column-gap:7px;align-items:baseline;padding:6px 10px;border:1px solid #d9e4ee;border-radius:11px;background:rgba(248,251,254,.9);white-space:nowrap}.dashboard-last-update small{grid-column:1/-1;font-size:7px;letter-spacing:.08em;color:#70869c;font-weight:800}.dashboard-last-update strong,.dashboard-last-update span{font-size:8.5px;color:#314f6d}.dashboard-last-update strong{font-weight:750}
.dashboard-station-meta .status-chip{white-space:nowrap}.dashboard-station-meta .live-refresh-icon{width:36px!important;min-width:36px!important;height:36px!important;min-height:36px!important;border-radius:10px!important}
.dashboard-kpi-grid{gap:6px!important}.dashboard-kpi-card{min-height:57px!important;padding:7px 9px!important;border-radius:12px!important;grid-template-columns:29px minmax(0,1fr) 12px!important}.dashboard-kpi-icon{width:29px!important;height:29px!important;border-radius:9px!important}.dashboard-kpi-card strong{font-size:15px!important}.dashboard-kpi-card small{margin-top:3px!important;font-size:8px!important}
.dashboard-tab-head{margin:0!important;min-height:32px}.dashboard-tab-head h2{font-size:13px!important}.dashboard-tab-head p{font-size:8.5px!important;margin-top:1px!important}
.dashboard-tabs{top:72px!important;z-index:12!important;margin-bottom:8px!important;border-radius:11px!important}.dashboard-tabs button{height:39px!important;min-width:clamp(135px,calc(18vw / var(--nb-zoom,1)),205px)!important;padding:0 13px!important;font-size:9.5px!important}
.dashboard-visual-controls{display:grid;grid-template-columns:minmax(135px,1fr) minmax(145px,190px) minmax(145px,210px);align-items:end;gap:8px;margin:-1px 0 8px;padding:8px 10px;border:1px solid #d6e2ed;border-radius:12px;background:rgba(248,251,254,.92)}.dashboard-range-copy{display:grid;gap:1px}.dashboard-range-copy small{font-size:7px;font-weight:800;letter-spacing:.08em;color:#7890a7}.dashboard-range-copy strong{font-size:10px;color:#173451}.dashboard-visual-controls label{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:7px;font-size:8px;font-weight:700;color:#607891}.dashboard-visual-controls .compact-select,.dashboard-visual-controls .adq-select-trigger{height:34px!important;min-height:34px!important;min-width:0!important;width:100%!important;font-size:9px!important}
.live-reference-grid{gap:9px!important}.live-card-reference{min-height:208px!important;padding:12px 13px 10px!important;border-radius:15px!important}.live-card-reference .live-name{font-size:10.5px!important;line-height:1.2}.live-comm-dot{width:10px;height:10px;border-radius:50%;display:inline-block;flex:0 0 auto;border:2px solid rgba(255,255,255,.96);box-shadow:0 0 0 1px rgba(83,108,132,.18)}.live-comm-dot.connected{background:#17b875}.live-comm-dot.disconnected{background:#df4c5d}.live-card-reference .live-value{margin:13px 0 8px!important}.live-card-reference .live-value strong{font-size:clamp(26px,calc(2.2vw / var(--nb-zoom,1)),34px)!important}.live-card-reference .live-value.direction-value strong{font-size:clamp(22px,calc(1.9vw / var(--nb-zoom,1)),29px)!important}.live-card-reference .live-meta{font-size:7.6px!important;min-height:22px!important}.live-reading-zone{padding-bottom:8px!important}.live-chart-zone{padding-top:7px!important}.live-chart-label{margin-bottom:3px!important}.live-chart-label span{font-size:7px!important}.live-chart-label small{font-size:6.8px!important;white-space:nowrap}.live-chart-zone .spark,.tile-axis-chart{height:82px!important;min-height:82px!important}.axis-spark{display:block;width:100%;height:100%;overflow:visible}.axis-line{stroke:#b9cad9;stroke-width:.8;vector-effect:non-scaling-stroke}.axis-grid{stroke:#e2eaf1;stroke-width:.7;stroke-dasharray:3 3;vector-effect:non-scaling-stroke}.axis-series{stroke-width:2;vector-effect:non-scaling-stroke;stroke-linecap:round;stroke-linejoin:round}.axis-label{font-size:7px;fill:#72889e;font-family:"Segoe UI",Arial,sans-serif}.axis-x-label{font-size:6.5px}
.combined-panel{padding:12px 14px 10px!important;border-radius:15px!important}.combined-title-row{gap:10px!important;padding-bottom:7px!important;align-items:center!important}.combined-title-row h2{font-size:16px!important}.combined-title-row p{font-size:8.5px!important}.combined-axis-note{display:grid;grid-template-columns:auto auto;gap:2px 7px;align-items:center;padding:6px 8px;border:1px solid #dbe6f0;border-radius:10px;background:#f8fbfe}.combined-axis-note small{font-size:7px;color:#778ca1;text-transform:uppercase;letter-spacing:.05em}.combined-axis-note strong{font-size:8px;color:#36536f;white-space:nowrap}.combined-chip-row{gap:6px!important;padding:7px 0 5px!important}.combined-chip{height:30px!important;padding:0 9px!important;border-radius:8px!important}.combined-chip b{font-size:8.5px!important}.combined-check{width:16px!important;height:16px!important}.combined-canvas-wrap{height:250px!important;padding:5px!important}
.instrument-visual-editing [data-wizard-panel="visualization"],.instrument-visual-editing .directional-map-grid{scroll-margin-top:70px}

@media(max-width:1180px){.dashboard-station-meta{gap:7px}.dashboard-last-update{padding:5px 7px}.dashboard-kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}.live-reference-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.dashboard-visual-controls{grid-template-columns:minmax(120px,1fr) repeat(2,minmax(130px,180px))}.dashboard-tabs{top:70px!important}}
@media(max-width:760px){.dashboard-station-card{position:sticky!important;top:0!important;align-items:center!important;flex-direction:row!important;flex-wrap:wrap}.dashboard-station-main{flex:1 1 260px}.dashboard-station-meta{flex:1 1 100%;justify-content:flex-start;margin-left:48px}.dashboard-last-update{margin-right:auto}.dashboard-tabs{top:112px!important}.dashboard-visual-controls{grid-template-columns:1fr 1fr}.dashboard-range-copy{grid-column:1/-1}.live-reference-grid{grid-template-columns:1fr!important}.combined-title-row{align-items:flex-start!important;flex-direction:column}.combined-axis-note{width:100%}}
@media(max-width:480px){.dashboard-station-meta{margin-left:0}.dashboard-last-update{width:100%;grid-template-columns:1fr 1fr}.dashboard-tabs{top:136px!important}.dashboard-visual-controls{grid-template-columns:1fr}.dashboard-range-copy{grid-column:auto}.dashboard-visual-controls label{grid-template-columns:70px minmax(0,1fr)}.dashboard-kpi-grid{grid-template-columns:1fr 1fr!important}.combined-canvas-wrap{height:220px!important}}
@supports not (display:grid){.dashboard-kpi-grid,.live-reference-grid,.dashboard-visual-controls{display:flex;flex-wrap:wrap}.dashboard-kpi-card,.live-card-reference{flex:1 1 220px}.dashboard-visual-controls>*{flex:1 1 160px}.analysis-builder-layout,.report-settings-grid,.network-endpoint-grid{display:block}.analysis-builder-card,.report-settings-grid>*,.network-endpoint-grid>*{margin-bottom:10px}}

/* UI13.35 Advanced AQ Analytics - high-density dark visualization workspace */
.analysis-pro-page{--aq-bg:#0B0F19;--aq-card:#111827;--aq-card-2:#151d2c;--aq-line:rgba(148,163,184,.18);--aq-text:#e6edf7;--aq-muted:#93a4b8;--aq-cyan:#22d3ee;--aq-blue:#60a5fa;--aq-violet:#a78bfa;--aq-green:#34d399;--aq-amber:#fbbf24;--aq-red:#fb7185;min-width:0}
.analysis-engine-ribbon{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px;margin:0 0 12px;padding:8px;border:1px solid rgba(38,116,173,.16);border-radius:14px;background:linear-gradient(135deg,rgba(10,25,43,.96),rgba(15,23,42,.92));box-shadow:0 10px 30px rgba(10,31,52,.10)}
.analysis-engine-node{position:relative;min-width:0;padding:9px 10px;border:1px solid rgba(148,163,184,.13);border-radius:11px;background:rgba(255,255,255,.035);overflow:hidden}.analysis-engine-node::after{content:"";position:absolute;inset:auto 12px 0;height:1px;background:linear-gradient(90deg,transparent,var(--aq-cyan),transparent);opacity:.36}.analysis-engine-node small{display:block;color:var(--aq-cyan);font-size:7.5px;font-weight:850;letter-spacing:.12em}.analysis-engine-node strong{display:block;margin-top:3px;color:var(--aq-text);font-size:9.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.analysis-engine-runtime{margin-top:3px;color:var(--aq-muted);font-size:7px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.analysis-operational-page .analysis-query-panel{border-color:rgba(67,107,145,.20);box-shadow:0 12px 34px rgba(19,48,72,.07)}
.analysis-operational-page .analysis-pro-canvas{min-height:460px;padding:15px!important;border-color:rgba(60,123,174,.24)!important;background:radial-gradient(circle at 85% -10%,rgba(34,211,238,.10),transparent 32%),radial-gradient(circle at 10% 115%,rgba(167,139,250,.08),transparent 30%),var(--aq-bg)!important;box-shadow:0 22px 58px rgba(4,12,24,.22)!important;color:var(--aq-text)}
.analysis-pro-canvas .section-title h2{color:var(--aq-text)!important}.analysis-pro-canvas .section-title p{color:var(--aq-muted)!important}.analysis-pro-canvas .status-chip.info{border-color:rgba(34,211,238,.28)!important;background:rgba(34,211,238,.10)!important;color:#7eeaff!important}.analysis-pro-canvas .empty-state{border-color:rgba(148,163,184,.16)!important;background:rgba(255,255,255,.025)!important}.analysis-pro-canvas .empty-state strong{color:var(--aq-text)!important}.analysis-pro-canvas .empty-state p{color:var(--aq-muted)!important}
.analysis-source-readonly{display:flex;align-items:center;min-height:42px;padding:0 11px;border:1px solid var(--line,#dfe7ef);border-radius:10px;background:var(--surface-control,#f8fbfd);color:var(--ink,#173451);font-size:10px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.analysis-inline-kpi{display:grid;align-content:center;min-height:42px;padding:5px 10px;border:1px solid var(--line,#dfe7ef);border-radius:10px;background:var(--surface-control,#f8fbfd)}.analysis-inline-kpi small{font-size:7px;font-weight:800;letter-spacing:.08em;color:var(--muted,#6a8198)}.analysis-inline-kpi strong{font-size:11px;color:var(--ink,#173451)}
.analysis-canvas{min-height:350px}.analysis-pro-canvas .analysis-canvas{overflow:visible}.analysis-running{display:flex;align-items:center;justify-content:center;gap:16px;min-height:310px;border:1px dashed rgba(34,211,238,.22);border-radius:16px;background:rgba(15,23,42,.56)}.analysis-running strong{color:var(--aq-text);font-size:12px}.analysis-running p{margin:4px 0 0;color:var(--aq-muted);font-size:9px}.analysis-running-orbit{width:34px;height:34px;border-radius:50%;border:2px solid rgba(34,211,238,.16);border-top-color:var(--aq-cyan);box-shadow:0 0 18px rgba(34,211,238,.22);animation:aq-spin .85s linear infinite}@keyframes aq-spin{to{transform:rotate(360deg)}}
.analysis-stat-strip-pro{grid-template-columns:repeat(auto-fit,minmax(112px,1fr))!important;gap:8px!important}.analysis-pro-canvas .analysis-stat-strip span{position:relative;padding:9px 10px 8px!important;border-color:var(--aq-line)!important;background:linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.018))!important;color:var(--aq-muted)!important;box-shadow:inset 0 1px rgba(255,255,255,.025)}.analysis-pro-canvas .analysis-stat-strip span::before{content:"";position:absolute;left:0;top:10px;bottom:10px;width:2px;border-radius:99px;background:var(--aq-cyan);box-shadow:0 0 10px rgba(34,211,238,.50)}.analysis-pro-canvas .analysis-stat-strip b{color:var(--aq-text)!important;font-size:15px!important}.analysis-pro-canvas .analysis-stat-strip small{display:block;margin-top:2px;color:var(--aq-muted);font-size:7px;line-height:1.25}.analysis-pro-canvas .analysis-stat-strip em{display:block;margin-top:1px;color:#7dd3fc;font-size:7px;font-style:normal}
.analysis-pro-canvas .analysis-svg{height:330px;min-height:330px;border:1px solid var(--aq-line);border-radius:14px;background:linear-gradient(180deg,rgba(255,255,255,.018),rgba(255,255,255,.006));overflow:hidden}.analysis-pro-canvas .analysis-gridline{stroke:rgba(148,163,184,.16)!important}.analysis-xy-svg .analysis-normal-point{fill:var(--aq-blue)!important;opacity:.58!important;transition:opacity .15s ease}.analysis-xy-svg .analysis-normal-point:hover{opacity:1!important}.analysis-xy-svg .analysis-anomaly-point{fill:var(--aq-red)!important;stroke:#fff;stroke-width:.35;opacity:.98!important;filter:drop-shadow(0 0 2px rgba(251,113,133,.80))}.analysis-trendline{stroke:var(--aq-cyan);stroke-width:1.1;stroke-dasharray:3 2;vector-effect:non-scaling-stroke;filter:drop-shadow(0 0 2px rgba(34,211,238,.45))}
.analysis-pro-canvas .analysis-legend{color:var(--aq-muted)!important;padding:3px 2px 0}.analysis-pro-canvas .analysis-legend i{display:inline-block;flex:0 0 auto}.legend-dot.normal{background:var(--aq-blue)}.legend-dot.anomaly{background:var(--aq-red);box-shadow:0 0 8px rgba(251,113,133,.58)}.legend-dot.voc{background:var(--aq-violet);box-shadow:0 0 8px rgba(167,139,250,.45)}.legend-line{width:18px!important;height:2px!important;border-radius:99px!important;background:var(--aq-cyan)}.legend-line.cutoff{background:var(--aq-amber)}.legend-line.total{background:#f8fafc}.legend-line.recon{background:var(--aq-cyan)}.legend-line.sensor{background:var(--aq-cyan)}.legend-box{border-radius:2px!important;background:#334155}.legend-box.retained{background:var(--aq-violet);box-shadow:0 0 7px rgba(167,139,250,.32)}.legend-box.c1{background:var(--aq-blue)}.legend-box.c2{background:var(--aq-violet)}.legend-box.c3{background:var(--aq-cyan)}.legend-box.c4{background:var(--aq-green)}.legend-box.c5{background:var(--aq-amber)}
.analysis-dual-chart{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.analysis-subchart{min-width:0;padding:11px;border:1px solid var(--aq-line);border-radius:14px;background:rgba(17,24,39,.62);box-shadow:inset 0 1px rgba(255,255,255,.02)}.analysis-subchart-head{display:flex;align-items:end;justify-content:space-between;gap:10px;margin-bottom:8px}.analysis-subchart-head strong{color:var(--aq-text);font-size:10px}.analysis-subchart-head span{color:var(--aq-muted);font-size:7.5px;text-align:right}
.analysis-pca-bar{fill:#334155;opacity:.72}.analysis-pca-bar.retained{fill:var(--aq-violet);opacity:.92;filter:drop-shadow(0 0 2px rgba(167,139,250,.42))}.analysis-pa-cutoff{stroke:var(--aq-amber);stroke-width:1;stroke-dasharray:3 2;vector-effect:non-scaling-stroke}.analysis-loading-vector{stroke:rgba(34,211,238,.48);stroke-width:.6;vector-effect:non-scaling-stroke}.analysis-loading-point{fill:var(--aq-cyan)!important;opacity:.92!important}.analysis-loading-label{fill:#cbd5e1;font-size:3.1px;text-anchor:middle;pointer-events:none}.analysis-biplot{overflow:visible}
.analysis-polar-svg{height:350px!important}.analysis-polar-ring{fill:none;stroke:rgba(148,163,184,.16);stroke-width:.55}.analysis-cpf-wedge{stroke:rgba(255,255,255,.16);stroke-width:.3;transition:opacity .15s ease;filter:drop-shadow(0 0 1.2px rgba(34,211,238,.24))}.analysis-cpf-wedge:hover{opacity:1!important}.analysis-bpp-grid{display:grid;gap:2px;align-items:stretch;overflow:auto;padding:4px}.analysis-bpp-cell{min-width:22px;min-height:19px;border-radius:4px;border:1px solid rgba(255,255,255,.035);transition:transform .12s ease,filter .12s ease}.analysis-bpp-cell:hover{transform:scale(1.06);filter:brightness(1.25);z-index:2}.analysis-bpp-axis{display:flex;align-items:center;justify-content:center;color:var(--aq-muted);font-size:7px;white-space:nowrap}
.analysis-cmc-c1{fill:var(--aq-blue)}.analysis-cmc-c2{fill:var(--aq-violet)}.analysis-cmc-c3{fill:var(--aq-cyan)}.analysis-cmc-c4{fill:var(--aq-green)}.analysis-cmc-c5{fill:var(--aq-amber)}.analysis-cmc-total{stroke:#f8fafc;stroke-width:1.05;vector-effect:non-scaling-stroke}.analysis-cmc-recon{stroke:var(--aq-cyan);stroke-width:1;stroke-dasharray:3 2;vector-effect:non-scaling-stroke}
.analysis-corr-list{display:grid;gap:7px;max-height:310px;overflow:auto;padding-right:3px}.analysis-corr-row{display:grid;grid-template-columns:minmax(110px,1.2fr) minmax(90px,1fr) 46px;gap:8px;align-items:center;padding:7px 8px;border:1px solid rgba(148,163,184,.12);border-radius:9px;background:rgba(255,255,255,.018)}.analysis-corr-row strong{display:block;color:var(--aq-text);font-size:8.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.analysis-corr-row small{display:block;margin-top:2px;color:var(--aq-muted);font-size:7px}.analysis-corr-row b{height:6px;border-radius:99px;background:linear-gradient(90deg,var(--aq-green) calc(var(--corr)*100%),rgba(52,211,153,.09) 0)}.analysis-corr-row b.negative{background:linear-gradient(90deg,var(--aq-red) calc(var(--corr)*100%),rgba(251,113,133,.09) 0)}.analysis-corr-row>span{color:var(--aq-text);font-size:8px;text-align:right;font-variant-numeric:tabular-nums}.analysis-voc-sensor{stroke:var(--aq-cyan);stroke-width:1;vector-effect:non-scaling-stroke}.analysis-voc-lab{stroke:var(--aq-violet);stroke-width:.8;stroke-dasharray:2 1.5;vector-effect:non-scaling-stroke}.analysis-voc-peak{fill:var(--aq-violet)!important;stroke:#fff;stroke-width:.25;opacity:.96!important;filter:drop-shadow(0 0 2px rgba(167,139,250,.58))}.analysis-voc-config{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.analysis-voc-config>div{min-width:0}.analysis-voc-config>div>small{display:block;margin-bottom:6px;color:var(--muted,#6c8298);font-size:8px;font-weight:800;letter-spacing:.08em}
.analysis-config-note-hero{margin-bottom:12px;padding:12px 14px;border:1px solid rgba(23,103,242,.14);border-radius:13px;background:linear-gradient(120deg,rgba(23,103,242,.055),rgba(34,211,238,.035));display:grid;gap:4px}.analysis-config-note-hero strong{font-size:11px;color:var(--ink,#173451)}.analysis-config-note-hero span{font-size:9px;line-height:1.45;color:var(--muted,#647b92)}
@media(max-width:1180px){.analysis-engine-ribbon{grid-template-columns:repeat(3,minmax(0,1fr))}.analysis-dual-chart{grid-template-columns:1fr}.analysis-pro-canvas .analysis-svg{height:300px;min-height:300px}}
@media(max-width:760px){.analysis-engine-ribbon{grid-template-columns:repeat(2,minmax(0,1fr))}.analysis-voc-config{grid-template-columns:1fr}.analysis-subchart-head{align-items:flex-start;flex-direction:column}.analysis-subchart-head span{text-align:left}.analysis-pro-canvas .analysis-svg{height:265px;min-height:265px}.analysis-corr-row{grid-template-columns:minmax(100px,1fr) minmax(80px,.8fr) 40px}}
@media(max-width:480px){.analysis-engine-ribbon{grid-template-columns:1fr}.analysis-pro-canvas .analysis-stat-strip{grid-template-columns:repeat(2,minmax(0,1fr))!important}.analysis-pro-canvas .analysis-svg{height:230px;min-height:230px}}
@media(prefers-reduced-motion:reduce){.analysis-running-orbit{animation:none}.analysis-cpf-wedge,.analysis-bpp-cell,.analysis-xy-svg .analysis-normal-point{transition:none}}
.analysis-pca-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.analysis-loading-vector-3d{stroke:rgba(167,139,250,.50)}.analysis-loading-point-3d{fill:var(--aq-violet)!important}.analysis-gridline-3d{stroke-dasharray:2 2!important}.analysis-polar-svg text{fill:var(--aq-muted);font-size:4px;font-weight:800}.analysis-bpp-grid{grid-template-columns:repeat(var(--bpp-cols),minmax(22px,1fr))}.analysis-cmc-unc{fill:rgba(34,211,238,.10);stroke:rgba(34,211,238,.24);stroke-width:.35;vector-effect:non-scaling-stroke}.legend-box.unc{background:rgba(34,211,238,.18);border:1px solid rgba(34,211,238,.38)}
@media(max-width:1380px){.analysis-pca-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.analysis-pca-grid>.analysis-subchart:last-child{grid-column:1/-1}}
@media(max-width:900px){.analysis-pca-grid{grid-template-columns:1fr}.analysis-pca-grid>.analysis-subchart:last-child{grid-column:auto}}


/* UI13.53 — instrument wizard containment / simulator profile cleanup */
.staged-device-modal{display:flex!important;flex-direction:column!important;width:min(1040px,calc(calc(100vw / var(--nb-zoom,1)) - 36px))!important;height:min(900px,calc(calc(100dvh / var(--nb-zoom,1)) - 36px))!important;max-height:calc(calc(100dvh / var(--nb-zoom,1)) - 36px)!important;overflow:hidden!important}
.staged-device-modal>.modal-head,.staged-device-modal>.wizard-progress,.staged-device-modal>.modal-actions{flex:0 0 auto}
.staged-device-modal>.wizard-step{flex:0 0 auto;min-width:0;max-width:100%}
.staged-device-modal #wizard-parameters{max-height:min(calc(54dvh / var(--nb-zoom,1)),560px)!important;overflow-y:auto!important;overflow-x:hidden!important;overscroll-behavior:contain;scrollbar-gutter:stable}
.staged-device-modal #wizard-parameters .parameter-editor-list,.staged-device-modal #wizard-parameters .parameter-editor,.staged-device-modal #wizard-parameters .wizard-saved-row{min-width:0!important;max-width:100%!important;box-sizing:border-box!important}
.staged-device-modal #wizard-parameters .form-grid,.staged-device-modal #wizard-parameters .field,.staged-device-modal #wizard-parameters .input,.staged-device-modal #wizard-parameters .select{min-width:0!important;max-width:100%!important}
.staged-device-modal #wizard-parameters::-webkit-scrollbar{width:10px}.staged-device-modal #wizard-parameters::-webkit-scrollbar-thumb{background:rgba(100,116,139,.28);border:3px solid transparent;background-clip:padding-box;border-radius:999px}
.staged-device-modal .modal-actions{position:sticky!important;bottom:0!important;margin-top:10px!important;background:rgba(255,255,255,.96)!important;backdrop-filter:blur(14px)!important;-webkit-backdrop-filter:blur(14px)!important}
@media(max-height:760px){.staged-device-modal #wizard-parameters{max-height:calc(46dvh / var(--nb-zoom,1))!important}}
@media(max-width:700px){.staged-device-modal{width:calc(100vw / var(--nb-zoom,1))!important;height:calc(100dvh / var(--nb-zoom,1))!important;max-height:calc(100dvh / var(--nb-zoom,1))!important}.staged-device-modal #wizard-parameters{max-height:calc(52dvh / var(--nb-zoom,1))!important}}

/* UI13.54 — compact 80%-scale instrument wizard, always-visible save actions */
.staged-device-modal{
  width:min(1180px,calc(calc(100vw / var(--nb-zoom,1)) - 48px))!important;
  height:min(850px,calc(calc(100dvh / var(--nb-zoom,1)) - 30px))!important;
  max-height:calc(calc(100dvh / var(--nb-zoom,1)) - 30px)!important;
  overflow:hidden!important;
  border-radius:16px!important;
}
.staged-device-modal>.modal-head{padding:10px 14px!important}
.staged-device-modal>.modal-head h2{font-size:17px!important;line-height:1.12!important}
.staged-device-modal>.modal-head p{font-size:8.5px!important;line-height:1.3!important;margin-top:3px!important}
.staged-device-modal .wizard-progress{padding:8px 14px!important;margin-bottom:6px!important}
.staged-device-modal .wizard-progress span{width:30px!important;height:30px!important;font-size:10px!important}
.staged-device-modal .wizard-step{padding:10px 12px!important;margin-bottom:7px!important;border-radius:13px!important}
.staged-device-modal .instrument-form-title{margin-bottom:7px!important}
.staged-device-modal .instrument-form-title strong{font-size:10px!important}
.staged-device-modal .instrument-form-title span{font-size:7.5px!important}
.staged-device-modal .form-grid{gap:7px!important}
.staged-device-modal .field{gap:4px!important}
.staged-device-modal .field>label{min-height:auto!important;font-size:8.5px!important;line-height:1.15!important}
.staged-device-modal .input,.staged-device-modal .select{height:34px!important;min-height:34px!important;font-size:9.5px!important;padding-left:10px!important}
.staged-device-modal .field-help,.staged-device-modal .help{font-size:7.25px!important;line-height:1.25!important;margin-top:2px!important}
.staged-device-modal .button{min-height:34px!important;font-size:9px!important;padding:6px 10px!important}
.staged-device-modal .wizard-saved-row{padding:8px 10px!important;min-height:48px!important}
.staged-device-modal .wizard-saved-copy strong{font-size:9.5px!important}.staged-device-modal .wizard-saved-copy small{font-size:7.5px!important}
.staged-device-modal #wizard-parameters{flex:1 1 auto!important;min-height:230px!important;max-height:none!important;overflow-y:auto!important;overflow-x:hidden!important;padding-bottom:4px!important}
.staged-device-modal #wizard-parameters .parameter-editor{padding-bottom:0!important}
.staged-device-modal #wizard-parameters .wizard-step-actions{position:sticky!important;bottom:0!important;z-index:12!important;margin:10px -2px 0!important;padding:10px 2px 8px!important;background:linear-gradient(180deg,rgba(255,255,255,.15),rgba(255,255,255,.97) 28%)!important;backdrop-filter:blur(12px)!important;-webkit-backdrop-filter:blur(12px)!important}
.staged-device-modal>.modal-actions{position:relative!important;bottom:auto!important;z-index:20!important;min-height:54px!important;padding:9px 14px!important;margin:0!important;background:rgba(255,255,255,.98)!important;border-top:1px solid rgba(203,213,225,.72)!important;box-shadow:0 -8px 24px rgba(15,23,42,.06)!important}
.staged-device-modal>.modal-actions .button[disabled]{opacity:.48!important;cursor:not-allowed!important}
@media(max-height:760px){
  .staged-device-modal{height:calc(calc(100dvh / var(--nb-zoom,1)) - 18px)!important;max-height:calc(calc(100dvh / var(--nb-zoom,1)) - 18px)!important}
  .staged-device-modal #wizard-parameters{min-height:190px!important}
  .staged-device-modal .wizard-step{padding:8px 10px!important;margin-bottom:5px!important}
}


/* UI13.59 PATCH — instrument wizard header containment + fast parameter-save feedback */
#modal-root .modal-backdrop{
  top:var(--topbar-h,68px)!important;
  right:0!important;
  bottom:0!important;
  left:0!important;
  height:calc(calc(100dvh / var(--nb-zoom,1)) - var(--topbar-h,68px))!important;
  padding:12px 18px 16px!important;
  align-items:start!important;
  place-items:start center!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
}
#modal-root .staged-device-modal{
  margin:0 auto!important;
  height:min(820px,calc(calc(100dvh / var(--nb-zoom,1)) - var(--topbar-h,68px) - 28px))!important;
  max-height:calc(calc(100dvh / var(--nb-zoom,1)) - var(--topbar-h,68px) - 28px)!important;
  position:relative!important;
  top:auto!important;
}
#modal-root .staged-device-modal>.modal-head{
  position:relative!important;
  top:auto!important;
  z-index:20!important;
}
#modal-root .staged-device-modal .wizard-progress{
  position:relative!important;
  top:auto!important;
}
.staged-device-modal [data-save-parameter].is-saving{
  opacity:.72!important;
  cursor:progress!important;
  transform:none!important;
}
@media(max-width:700px){
  #modal-root .modal-backdrop{top:var(--topbar-h,56px)!important;height:calc(calc(100dvh / var(--nb-zoom,1)) - var(--topbar-h,56px))!important;padding:0!important}
  #modal-root .staged-device-modal{height:100%!important;max-height:100%!important}
}

/* UI13.60 stability: keep the combined plot/legend inside its panel and avoid clipping. */
.ref-trend-panel{min-width:0;overflow:hidden;display:flex;flex-direction:column}
.ref-trend-canvas{min-height:260px;height:clamp(260px,calc(32vh / var(--nb-zoom,1)),430px);overflow:hidden;position:relative;padding:10px 12px 4px}
.ref-trend-canvas canvas{display:block;width:100%!important;height:100%!important;max-width:100%}
.ref-trend-legend.legend-bottom{position:relative;display:flex;flex-wrap:wrap;gap:8px;padding:10px 12px 14px;min-height:46px;overflow:visible}
.ref-bottom-split{align-items:stretch;min-width:0}
.ref-bottom-split>.panel{min-width:0;height:var(--live-panel-height);max-height:none}
.ref-table-wrap{height:100%;min-height:0;overflow:auto}
.tb-pending{margin-left:6px;color:var(--muted,#64748b);font-weight:600;font-size:.72rem}


/* UI13.63 — Add Device wizard single-scroll containment fix.
   Keep header/progress/footer fixed in the dialog and give ALL wizard stages one
   shared scroll surface. This removes the nested Parameter/Visualization
   scrollbars that clipped fields and hid the meteorology mapping panel. */
#modal-root .staged-device-modal{
  display:flex!important;
  flex-direction:column!important;
  overflow:hidden!important;
  min-height:0!important;
}
#modal-root .staged-device-modal>.modal-head,
#modal-root .staged-device-modal>.wizard-progress,
#modal-root .staged-device-modal>.modal-actions{
  flex:0 0 auto!important;
}
#modal-root .staged-device-modal>.wizard-scroll-body{
  flex:1 1 auto!important;
  min-height:0!important;
  width:100%!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  overscroll-behavior:contain!important;
  scrollbar-gutter:stable!important;
  padding:0 12px 10px!important;
  scroll-padding-top:8px!important;
  scroll-padding-bottom:18px!important;
}
#modal-root .staged-device-modal>.wizard-scroll-body>.wizard-step{
  display:block;
  flex:none!important;
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  min-height:0!important;
  max-height:none!important;
  overflow:visible!important;
  box-sizing:border-box!important;
}
#modal-root .staged-device-modal>.wizard-scroll-body>.wizard-step[hidden]{display:none!important}
#modal-root .staged-device-modal #wizard-parameters{
  flex:none!important;
  min-height:0!important;
  max-height:none!important;
  overflow:visible!important;
  padding-bottom:10px!important;
  scrollbar-gutter:auto!important;
}
#modal-root .staged-device-modal #wizard-parameters .parameter-editor{
  padding-bottom:12px!important;
  overflow:visible!important;
}
#modal-root .staged-device-modal #wizard-parameters .wizard-step-actions,
#modal-root .staged-device-modal #wizard-visualization .wizard-step-actions{
  position:relative!important;
  inset:auto!important;
  z-index:1!important;
  margin:10px 0 0!important;
  padding:10px 0 0!important;
  background:transparent!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}
#modal-root .staged-device-modal #wizard-visualization{
  min-height:0!important;
  max-height:none!important;
  overflow:visible!important;
  margin-bottom:0!important;
}
#modal-root .staged-device-modal .directional-map-grid,
#modal-root .staged-device-modal .directional-map-card{
  min-width:0!important;
  max-width:100%!important;
}
#modal-root .staged-device-modal>.modal-actions{
  position:relative!important;
  bottom:auto!important;
  margin:0!important;
  z-index:30!important;
}
#modal-root .staged-device-modal>.wizard-scroll-body::-webkit-scrollbar{width:10px}
#modal-root .staged-device-modal>.wizard-scroll-body::-webkit-scrollbar-thumb{
  background:rgba(100,116,139,.30);
  border:3px solid transparent;
  background-clip:padding-box;
  border-radius:999px;
}
@media(max-width:700px){
  #modal-root .staged-device-modal>.wizard-scroll-body{padding:0 10px 10px!important}
}
.instrument-tabs{display:flex;gap:6px;overflow-x:auto;padding:4px 0 12px;margin-bottom:8px;border-bottom:1px solid var(--line)}
.instrument-tabs button{flex:0 0 auto;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--muted);font:inherit;font-size:10px;font-weight:700;padding:9px 12px;cursor:pointer}
.instrument-tabs button[aria-selected="true"]{background:#eaf2ff;border-color:#a9c8ff;color:#175ac8}
.instrument-modal .device-tab-concealed{display:none!important}

.tile-autocheck.failed{color:#c62929;background:#ffe9e9}.tile-autocheck.passed{color:#16733a;background:#e3f5e8}.instrument-tabs{display:flex;gap:8px;flex-wrap:wrap}.instrument-tabs button[aria-selected="true"]{background:var(--accent,#2675db);color:white}

/* Shared device communication and relay phase setup */
.instrument-modal [data-device-sections][hidden],.instrument-modal .wizard-progress[hidden]{display:none!important}
#modal-root .staged-device-modal.communication-only{height:auto!important;min-height:0!important;max-height:90vh!important}
#modal-root .staged-device-modal.communication-only>.wizard-scroll-body{flex:0 1 auto!important;min-height:0!important}
.instrument-modal .device-phase-outputs,.instrument-modal .device-phase-inputs{border:1px solid var(--line);border-radius:12px;padding:14px;margin:12px 0;min-width:0}
.instrument-modal .device-phase-outputs label,.instrument-modal .device-measurement-toggle{display:flex;align-items:center;gap:10px;padding:10px;border-radius:8px;background:rgba(100,116,139,.12);color:inherit}
.instrument-modal .device-phase-inputs .form-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:12px 0}
.instrument-modal .check-phase-timing{padding:10px;line-height:1.6;color:var(--muted)}
@media(max-width:700px){.instrument-modal .device-phase-inputs .form-grid{grid-template-columns:1fr}}

/* UI16.9 Protocol Studio: live polling + industrial DI/DO workflow */
.ps-live-status{display:inline-flex;align-items:center;gap:7px;min-height:32px;padding:0 12px;border:1px solid rgba(151,141,205,.24);border-radius:999px;color:var(--muted,#aaa2ca);font-size:12px;font-weight:700;letter-spacing:.02em;background:rgba(255,255,255,.025)}
.ps-live-status::before{content:"";width:7px;height:7px;border-radius:50%;background:#81789f;box-shadow:0 0 0 3px rgba(129,120,159,.12)}
.ps-live-status.is-live{color:#a9f3d0;border-color:rgba(68,214,144,.28);background:rgba(44,151,106,.08)}
.ps-live-status.is-live::before{background:#45d790;box-shadow:0 0 0 4px rgba(69,215,144,.12)}
.ps-live-monitor{display:grid;grid-template-columns:minmax(0,2fr) minmax(180px,1fr);gap:10px;margin:12px 0 14px}
.ps-live-monitor>span{display:flex;flex-direction:column;gap:5px;min-width:0;padding:11px 13px;border:1px solid rgba(151,141,205,.18);border-radius:12px;background:rgba(255,255,255,.022)}
.ps-live-monitor small{font-size:10px;font-weight:800;letter-spacing:.08em;color:var(--muted,#aaa2ca)}
.ps-live-monitor code,.ps-live-monitor strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px;color:var(--text,#f4f1ff)}
.ps-io-config{margin-top:14px;padding:16px;border:1px solid rgba(90,167,255,.22);border-radius:14px;background:linear-gradient(180deg,rgba(49,99,179,.08),rgba(255,255,255,.018))}
.ps-io-config[hidden],.ps-do-only[hidden]{display:none!important}
.ps-io-config-head{display:flex;justify-content:space-between;gap:16px;margin-bottom:13px}
.ps-io-config-head strong{display:block;color:var(--text,#f4f1ff);font-size:14px}
.ps-io-config-head small{display:block;margin-top:3px;color:var(--muted,#aaa2ca);line-height:1.4}
.ps-io-example{margin-top:12px;padding:11px 13px;border-left:3px solid #ffb23f;border-radius:8px;background:rgba(255,178,63,.07);color:var(--muted,#c4bddf);font-size:12px;line-height:1.5}
.ps-role.is-io{background:rgba(60,155,255,.12);border-color:rgba(60,155,255,.3);color:#acd4ff}
@media(max-width:900px){.ps-live-monitor{grid-template-columns:1fr}.ps-parser-actions{align-items:flex-start;flex-wrap:wrap}}

/* UI17.0 — Operational Engineering workspace */
.engineering-page{--eng-border:rgba(142,132,205,.28)}
.engineering-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:0 0 18px;padding:6px;border:1px solid var(--eng-border);border-radius:16px;background:rgba(26,20,55,.72)}
.engineering-tabs button{min-height:42px;border:0;border-radius:11px;background:transparent;color:var(--muted,#b9b2d0);font-weight:750;cursor:pointer;transition:background .14s ease,color .14s ease,box-shadow .14s ease}
.engineering-tabs button:hover{background:rgba(255,255,255,.045);color:var(--text,#fff)}
.engineering-tabs button.active,.engineering-tabs button[aria-selected="true"]{background:linear-gradient(135deg,#2f80ed,#337de0);color:white;box-shadow:0 7px 20px rgba(38,116,226,.24)}
.engineering-layout{display:grid;grid-template-columns:minmax(0,2fr) minmax(280px,.72fr);gap:16px;align-items:start}
.engineering-primary,.engineering-side{min-width:0}
.engineering-card{margin-top:12px;background:linear-gradient(180deg,rgba(44,35,85,.62),rgba(28,23,58,.62))}
.engineering-card .config-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}
.engineering-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:12px}
.engineering-facts>span{display:flex;flex-direction:column;gap:4px;min-width:0;padding:10px 12px;border:1px solid rgba(150,140,205,.2);border-radius:11px;background:rgba(12,10,30,.25);font-size:12px;color:var(--muted,#bbb4cf)}
.engineering-facts b{font-size:10px;text-transform:uppercase;letter-spacing:.07em;color:#8f86aa}
.engineering-mini-row{display:flex;justify-content:space-between;gap:14px;align-items:center;padding:12px 0;border-bottom:1px solid rgba(150,140,205,.14)}
.engineering-mini-row:last-child{border-bottom:0}.engineering-mini-row>div{display:flex;flex-direction:column;gap:3px}.engineering-mini-row span{font-size:11px;color:var(--muted,#bcb5d1)}
.quality-rule-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:12px;margin-top:12px}
.quality-rule-card{display:grid;grid-template-columns:minmax(0,1fr);gap:10px;padding:15px;border:1px solid rgba(142,132,205,.2);border-radius:14px;background:rgba(19,15,44,.44)}
.quality-rule-card.enabled{border-color:rgba(52,211,153,.30);box-shadow:inset 3px 0 0 rgba(52,211,153,.7)}
.quality-rule-card small{font-size:10px;color:#9b92b5;text-transform:uppercase;letter-spacing:.06em}.quality-rule-card h3{margin:2px 0 0;font-size:16px}.quality-rule-card p{margin:3px 0 0;color:var(--muted,#b8b1cb);font-size:12px}
.quality-rule-summary{display:flex;gap:6px;flex-wrap:wrap}.quality-rule-summary span{padding:5px 8px;border:1px solid rgba(150,140,205,.16);border-radius:999px;background:rgba(255,255,255,.025);font-size:10px;color:#c7c0d9}.quality-rule-actions{display:flex;justify-content:space-between;align-items:center;gap:8px}
.quality-rule-intro,.automation-safety-note{display:flex;flex-direction:column;gap:5px;margin:0 0 14px;padding:12px 14px;border:1px solid rgba(72,160,255,.24);border-radius:12px;background:rgba(36,98,170,.10)}
.quality-rule-intro span,.automation-safety-note{font-size:12px;color:var(--muted,#c2bbd4);line-height:1.45}
.engineering-event-list{display:flex;flex-direction:column}.engineering-event{display:grid;grid-template-columns:auto 1fr;gap:12px;align-items:flex-start;padding:11px 0;border-bottom:1px solid rgba(150,140,205,.13)}.engineering-event:last-child{border-bottom:0}.engineering-event p{margin:4px 0 0;color:var(--muted,#b9b2cb);font-size:12px}
.automation-rule-list{display:flex;flex-direction:column;gap:10px}.automation-rule-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;padding:14px;border:1px solid rgba(142,132,205,.22);border-radius:14px;background:rgba(18,15,42,.43)}
.automation-rule-flow{display:flex;align-items:center;gap:12px;min-width:0}.automation-rule-flow>span{display:flex;align-items:center;gap:7px;min-width:0;padding:9px 11px;border-radius:10px;background:rgba(255,255,255,.035)}.automation-rule-flow svg{width:16px;height:16px}.automation-rule-flow b{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.automation-rule-flow>i{font-style:normal;color:#ffb541;font-weight:900}
.automation-rule-meta{grid-column:1/2;display:flex;gap:8px;align-items:center;flex-wrap:wrap;color:var(--muted,#aaa3bf);font-size:11px}.automation-rule-actions{grid-column:2;grid-row:1/3;display:flex;align-items:center}
.automation-builder-flow{display:flex;align-items:center;justify-content:center;gap:12px;margin:0 0 16px;padding:10px;border:1px solid rgba(255,181,65,.22);border-radius:12px;background:rgba(255,181,65,.06);font-size:11px;font-weight:850;letter-spacing:.08em;color:#ffbd55}.automation-builder-flow i{font-style:normal;color:#8f86aa}
.engineering-safety-panel{border-color:rgba(52,211,153,.24)!important}.engineering-loading{padding:28px;text-align:center;color:var(--muted,#b9b2cb)}
.station-metadata-modal .station-meta-section{padding:0 0 16px;margin:0 0 16px;border-bottom:1px solid rgba(150,140,205,.14)}.station-metadata-modal .station-meta-section:last-of-type{border-bottom:0}.station-meta-section>.eyebrow{margin-bottom:10px;color:#ffb541}.pro-grid-4 .span-4{grid-column:1/-1}
@media(max-width:1100px){.engineering-layout{grid-template-columns:1fr}.engineering-side{order:-1}.engineering-facts{grid-template-columns:1fr 1fr}.automation-rule-card{grid-template-columns:1fr}.automation-rule-actions{grid-column:1;grid-row:auto}.engineering-tabs{grid-template-columns:1fr 1fr}}
@media(max-width:680px){.engineering-tabs{grid-template-columns:1fr}.engineering-facts{grid-template-columns:1fr}.automation-rule-flow{align-items:stretch;flex-direction:column}.automation-rule-flow>i{transform:rotate(90deg);align-self:center}}
.sequence-builder-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:16px 0 10px}.sequence-builder-head>div{display:flex;flex-direction:column;gap:3px}.sequence-builder-head span{font-size:11px;color:var(--muted,#b8b0cb)}
.sequence-step-list{display:flex;flex-direction:column;gap:8px;margin-bottom:14px}.sequence-step-row{display:grid;grid-template-columns:34px 190px minmax(180px,1fr) 120px 38px;gap:8px;align-items:end;padding:10px;border:1px solid rgba(145,136,201,.18);border-radius:12px;background:rgba(13,11,32,.28)}.sequence-step-index{width:28px;height:28px;display:grid;place-items:center;border-radius:50%;background:rgba(47,128,237,.18);color:#7eb2ff;font-weight:850;align-self:center}.sequence-step-value{align-self:end}.sequence-seconds{display:flex;flex-direction:column;gap:5px}.sequence-seconds span{font-size:10px;color:#9e96b5}.sequence-wait-copy{display:flex;min-height:38px;align-items:center;color:#aaa2bf;font-size:11px}
@media(max-width:900px){.sequence-step-row{grid-template-columns:34px 1fr 1fr}.sequence-step-value{grid-column:2/4}.sequence-seconds{grid-column:2/3}.sequence-step-row>.danger{grid-column:3;grid-row:3;justify-self:end}}

/* UI17.0 derived-parameter formula editor */
.calculated-parameter-editor{border-color:color-mix(in srgb,var(--accent) 36%,var(--line));background:linear-gradient(180deg,color-mix(in srgb,var(--panel) 96%,var(--accent) 4%),var(--panel))}
.calculated-parameter-editor .parameter-editor-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}
.calculated-parameter-editor .parameter-editor-head small{display:block;margin-top:4px;color:var(--muted);font-weight:500}
.calculated-formula-input{min-height:88px;resize:vertical;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;line-height:1.45}
.formula-source-chips{display:flex;flex-wrap:wrap;gap:8px;padding:8px 0}
.formula-source-chip{border:1px solid var(--line);background:var(--panel-2);color:var(--text);border-radius:999px;padding:7px 11px;font:inherit;font-size:12px;cursor:pointer}
.formula-source-chip:hover{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 12%,var(--panel-2))}

/* UI17.1 serial discovery */
.serial-port-control{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center}.serial-refresh-button{white-space:nowrap;min-height:40px}.serial-port-field .field-help,.ps-field-port .field-help{margin-top:6px}.input-invalid{outline:1px solid rgba(255,110,130,.72)!important}
@media(max-width:760px){.serial-port-control{grid-template-columns:1fr}.serial-refresh-button{width:100%}}

/* UI17.2 — simplified DI/DO, IF→THEN and Auto Check */
.simple-io-hero,.simple-output-card,.simple-io-section,.simple-autocheck-intro,.simple-autocheck-card{border:1px solid var(--line);border-radius:16px;background:linear-gradient(180deg,rgba(255,255,255,.035),rgba(255,255,255,.018));}
.simple-io-hero{padding:18px 20px;margin-bottom:14px}.simple-io-hero h3{margin:0 0 6px}.simple-io-hero p{margin:0;color:var(--muted)}
.simple-output-card,.simple-io-section{padding:18px;margin:14px 0}.simple-io-row{display:flex;gap:12px;align-items:center;justify-content:space-between;flex-wrap:wrap}.simple-io-add{display:flex;gap:10px;flex-wrap:wrap}.simple-io-advanced,.simple-advanced{margin-top:14px;border:1px solid var(--line);border-radius:12px;padding:12px 14px;background:rgba(0,0,0,.08)}.simple-io-advanced summary,.simple-advanced summary{cursor:pointer;font-weight:750}.simple-static-value{min-height:42px;display:flex;align-items:center;padding:0 12px;border:1px solid var(--line);border-radius:10px;background:rgba(255,255,255,.025)}
.ps-simple-note{margin-top:12px;padding:11px 13px;border:1px solid var(--line);border-radius:10px;background:rgba(255,255,255,.025);color:var(--muted)}.ps-simple-note strong{color:var(--text)}.simplified-action-library .simple-action-builder{margin-top:16px}.action-library-list{display:grid;gap:8px}
.simple-card-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.autocheck-timeline,.simple-flow{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:14px 0}.autocheck-timeline span,.simple-flow span{padding:9px 12px;border:1px solid var(--line);border-radius:999px;background:rgba(255,255,255,.025)}.autocheck-timeline span{display:flex;flex-direction:column;gap:2px;min-width:92px}.autocheck-timeline span b{font-size:11px;color:var(--accent)}.autocheck-timeline i,.simple-flow i{opacity:.6;font-style:normal}
.simple-autocheck-modal .phase-editor{display:grid;grid-template-columns:1fr;gap:12px;margin:16px 0}.simple-autocheck-modal .phase-editor section{border:1px solid var(--line);border-radius:14px;padding:14px;background:rgba(255,255,255,.025)}.simple-autocheck-modal .phase-editor h3{margin:0 0 10px;color:var(--accent)}.simple-autocheck-modal .phase-editor p{margin:10px 0 0;color:var(--muted);font-size:12px}.phase-time-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.phase-time-grid label,.gap-phase label{display:grid;gap:5px}.phase-time-grid small,.gap-phase small{color:var(--muted)}.gap-phase{max-width:440px}
@media (max-width:900px){.phase-time-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.simple-card-actions{justify-content:flex-start}}
@media (max-width:560px){.phase-time-grid{grid-template-columns:1fr}.autocheck-timeline,.simple-flow{align-items:stretch;flex-direction:column}.autocheck-timeline i,.simple-flow i{transform:rotate(90deg);align-self:center}}
/* UI17.6 approved inline-delete + DI/DO commissioning UX */
.inline-delete-pending{border-color:rgba(255,73,125,.78)!important;background:linear-gradient(90deg,rgba(112,29,70,.28),rgba(55,24,64,.46))!important;box-shadow:inset 0 0 0 1px rgba(255,73,125,.08)}
.inline-delete-confirm{display:flex;align-items:center;justify-content:flex-end;gap:10px;min-width:max-content;margin-left:auto}.inline-delete-label{color:#ff668f;font-weight:800;white-space:nowrap}.inline-delete-confirm small{color:var(--muted);max-width:260px}.inline-delete-confirm .inline-delete-input{width:128px;min-height:36px}.inline-delete-confirm .icon-button-small{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;padding:0}.inline-delete-confirm .inline-delete-accept{background:linear-gradient(135deg,#ff4779,#d52f68);border-color:#ff6a94;color:white}.inline-delete-confirm .inline-delete-cancel{background:rgba(255,255,255,.07)}
.ps-dio-commission{margin-top:18px}.ps-dio-mode{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:16px}.ps-dio-mode-btn{min-height:64px;border:1px solid var(--line);border-radius:15px;background:rgba(255,255,255,.025);color:var(--text);display:flex;align-items:center;gap:12px;padding:12px 16px;text-align:left}.ps-dio-mode-btn.is-active{border-color:#2f92ff;background:linear-gradient(135deg,rgba(25,113,255,.24),rgba(31,91,205,.12));box-shadow:0 0 0 1px rgba(47,146,255,.25),0 10px 24px rgba(13,74,174,.14)}.ps-dio-mode-btn span{display:grid;gap:3px}.ps-dio-mode-btn b{font-size:13px}.ps-dio-mode-btn small{font-size:10px;color:var(--muted)}.ps-command-capture{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:8px}.ps-do-verification-strip{display:flex;gap:12px;flex-wrap:wrap;margin:14px 0}.ps-do-verification-strip>span{padding:8px 12px;border:1px solid var(--line);border-radius:999px;color:var(--muted);font-size:11px}.ps-do-verification-strip>span.is-good{color:#6ff0b0;border-color:rgba(45,216,142,.35);background:rgba(45,216,142,.08)}.ps-save-ready{margin-top:14px;padding:13px 15px;border:1px solid rgba(45,216,142,.38);border-radius:14px;background:rgba(45,216,142,.07);display:flex;align-items:center;justify-content:space-between;gap:14px}.ps-save-ready>div{display:grid;gap:3px}.ps-save-ready strong{color:#64efb1}.ps-save-ready small{color:var(--muted)}.ps-di-test-card{padding:4px 0}.ps-di-live-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:14px 0}.ps-di-live-row>span:last-child{display:grid;gap:2px;min-width:100px}.ps-di-live-row small{color:var(--muted);font-size:9px}.ps-di-live-row b{font-size:18px}.dio-saved-row .wizard-saved-actions{margin-left:auto}
@media(max-width:900px){.ps-dio-mode{grid-template-columns:1fr}.ps-command-capture{grid-template-columns:1fr}.ps-save-ready{align-items:stretch;flex-direction:column}.inline-delete-confirm{min-width:0;flex-wrap:wrap}.inline-delete-label{white-space:normal}}

/* UI17.7 · Step-3 command classification + direct DI/DO commissioning */
.ps-command-purpose{margin:16px 0 14px;padding:16px;border:1px solid var(--line);border-radius:16px;background:rgba(255,255,255,.02)}
.ps-command-purpose-head{display:flex;align-items:flex-end;justify-content:space-between;gap:14px;margin-bottom:12px}.ps-command-purpose-head h3{margin:2px 0 0;font-size:16px}.ps-command-purpose-head>small{color:var(--muted);max-width:440px;text-align:right}
.ps-command-purpose-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.ps-command-purpose-tabs>button{min-height:68px;border:1px solid var(--line);border-radius:14px;background:rgba(255,255,255,.025);color:var(--text);display:flex;align-items:center;gap:12px;padding:12px 14px;text-align:left}.ps-command-purpose-tabs>button:hover{border-color:rgba(76,150,255,.55);background:rgba(76,150,255,.06)}.ps-command-purpose-tabs>button.is-active{border-color:#2f92ff;background:linear-gradient(135deg,rgba(25,113,255,.24),rgba(31,91,205,.12));box-shadow:0 0 0 1px rgba(47,146,255,.22),0 10px 24px rgba(13,74,174,.12)}.ps-command-purpose-tabs>button>svg{width:22px;height:22px;flex:0 0 auto}.ps-command-purpose-tabs>button>span{display:grid;gap:3px}.ps-command-purpose-tabs b{font-size:12px}.ps-command-purpose-tabs small{font-size:9px;color:var(--muted)}
.ps-inline-commission{margin-top:14px;padding:14px;border:1px solid rgba(76,150,255,.18);border-radius:14px;background:rgba(10,24,58,.22);display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.ps-inline-commission>.ps-simple-note,.ps-inline-commission>.ps-di-live-row,.ps-inline-commission>.ps-save-ready,.ps-inline-commission>.ps-do-verification-strip,.ps-inline-commission>.ps-inline-command-preview{grid-column:1/-1}
.ps-do-side-picker{display:grid;grid-template-columns:1fr 1fr;gap:8px}.ps-do-side-picker>button{height:40px;border:1px solid var(--line);border-radius:11px;background:rgba(255,255,255,.025);color:var(--text);font-weight:700}.ps-do-side-picker>button.is-active{background:rgba(47,146,255,.17);border-color:#2f92ff;color:#fff}
.ps-inline-command-preview{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:11px 12px;border:1px solid var(--line);border-radius:12px;background:rgba(255,255,255,.02)}.ps-inline-command-preview small{color:var(--muted);font-size:9px}.ps-inline-command-preview code{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#dbe9ff}
.ps-output-library-note{margin-top:14px}
.field em{font-style:normal;color:var(--muted);font-weight:400}
@media(max-width:980px){.ps-command-purpose-tabs{grid-template-columns:1fr}.ps-command-purpose-head{align-items:flex-start;flex-direction:column}.ps-command-purpose-head>small{text-align:left}.ps-inline-commission{grid-template-columns:1fr}.ps-inline-command-preview{grid-template-columns:1fr}.ps-inline-command-preview .button{width:100%}}

/* UI17.8 · Human-centered Step-3 DI/DO commissioning */
.ps-human-flow{grid-template-columns:repeat(2,minmax(0,1fr))}
.ps-flow-banner{grid-column:1/-1;display:grid;grid-template-columns:auto 1fr auto 1fr auto 1fr;gap:10px;align-items:center;padding:12px 14px;border:1px solid rgba(76,150,255,.22);border-radius:13px;background:linear-gradient(135deg,rgba(47,146,255,.08),rgba(255,255,255,.018))}
.ps-flow-banner>span{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:rgba(47,146,255,.18);border:1px solid rgba(76,150,255,.42);font-weight:800;color:#dceaff}.ps-flow-banner>div{display:grid;gap:2px}.ps-flow-banner strong{font-size:11px}.ps-flow-banner small{font-size:9px;color:var(--muted)}
.ps-inline-command-preview>div{display:grid;gap:3px;min-width:0}.ps-inline-command-preview>div code{font-size:14px;font-weight:700}
.ps-command-test-passed{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:13px 14px;border:1px solid rgba(45,216,142,.42);border-radius:13px;background:rgba(45,216,142,.075)}.ps-command-test-passed>div{display:flex;align-items:center;gap:10px;min-width:0}.ps-command-test-passed svg{width:22px;height:22px;color:#62efb0;flex:0 0 auto}.ps-command-test-passed span{display:grid;gap:3px;min-width:0}.ps-command-test-passed strong{color:#67efb4}.ps-command-test-passed small{color:var(--muted)}.ps-command-test-passed code{color:#e9f4ff}
.ps-do-slot-grid{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:10px}.ps-do-slot{display:grid;grid-template-columns:34px 1fr;gap:11px;align-items:center;padding:12px 13px;border:1px solid var(--line);border-radius:13px;background:rgba(255,255,255,.018)}.ps-do-slot>span{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;border:1px solid var(--line);font-weight:800;color:var(--muted)}.ps-do-slot>div{display:grid;gap:3px;min-width:0}.ps-do-slot strong{font-size:11px}.ps-do-slot code{font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#dceaff}.ps-do-slot small{font-size:9px;color:var(--muted)}.ps-do-slot.is-saved{border-color:rgba(45,216,142,.4);background:rgba(45,216,142,.055)}.ps-do-slot.is-saved>span{border-color:rgba(45,216,142,.5);background:rgba(45,216,142,.12);color:#68efb3}.ps-channel-ready{box-shadow:0 0 0 1px rgba(45,216,142,.08),0 10px 25px rgba(18,116,79,.08)}
@media(max-width:980px){.ps-human-flow{grid-template-columns:1fr}.ps-flow-banner{grid-template-columns:auto 1fr}.ps-do-slot-grid{grid-template-columns:1fr}.ps-command-test-passed{align-items:stretch;flex-direction:column}.ps-command-test-passed .button{width:100%}}
/* UI17.9: Step-3 DO polish — keep verification icons compact and local. */
.ps-do-slot>span svg{width:16px!important;height:16px!important;max-width:16px!important;max-height:16px!important;stroke-width:2.2}
.ps-do-slot>span{overflow:hidden}
.ps-do-slot-grid{align-items:stretch}
.ps-do-no-duplicate-console{margin-top:12px}

/* UI18.5: DI commissioning owns its live response; no duplicate Send & read toolbar. */
.ps-di-inline-monitor{display:grid;grid-template-columns:minmax(0,2fr) minmax(180px,1fr);gap:12px;margin-top:12px}
.ps-di-inline-monitor>span{display:flex;flex-direction:column;gap:6px;padding:12px 14px;border:1px solid rgba(158,144,210,.22);border-radius:14px;background:rgba(17,14,40,.26)}
.ps-di-inline-monitor small{font-size:10px;font-weight:800;letter-spacing:.08em;opacity:.68}
.ps-di-inline-monitor code,.ps-di-inline-monitor strong{font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
@media(max-width:800px){.ps-di-inline-monitor{grid-template-columns:1fr}}


/* UI18.7 — Protocol Studio DI commissioning cleanup */
.ps-di-bitfield{grid-column:1/-1;padding:14px;border:1px solid rgba(76,150,255,.20);border-radius:14px;background:rgba(8,20,48,.24)}
.ps-di-bitfield-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}
.ps-di-bitfield-head>div{display:grid;gap:3px}.ps-di-bitfield-head small{color:var(--muted)}
.ps-di-bit-grid{display:grid;grid-template-columns:repeat(4,minmax(96px,1fr));gap:8px;max-width:620px}
.ps-di-bit-grid button{min-height:54px;padding:9px 12px;border:1px solid var(--line);border-radius:12px;background:rgba(255,255,255,.035);color:var(--text);display:flex;align-items:center;justify-content:space-between;gap:12px;box-shadow:none;transition:border-color .12s ease,background .12s ease,transform .12s ease}
.ps-di-bit-grid button b{font-size:13px;letter-spacing:.01em}
.ps-di-bit-grid button span{font-size:10px;font-weight:800;letter-spacing:.05em;color:var(--muted);padding:4px 7px;border-radius:999px;background:rgba(255,255,255,.05)}
.ps-di-bit-grid button.is-on{border-color:rgba(45,216,142,.55);background:rgba(45,216,142,.10)}
.ps-di-bit-grid button.is-on span{color:#70efb5;background:rgba(45,216,142,.13)}
.ps-di-bit-grid button.is-selected{border-color:#2f92ff;box-shadow:0 0 0 1px rgba(47,146,255,.25);background:linear-gradient(135deg,rgba(29,104,230,.18),rgba(25,66,160,.10))}
.ps-di-bit-grid button:hover{transform:translateY(-1px);border-color:rgba(98,165,255,.65)}
.ps-next-di-ready{border-color:rgba(47,146,255,.38);background:rgba(47,146,255,.07)}
.ps-next-di-ready strong{color:#9ac8ff}
@media(max-width:760px){.ps-di-bit-grid{grid-template-columns:repeat(2,minmax(96px,1fr))}}

/* UI19.7 — centralized Digital I/O & Automation registry */
.central-dio-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,360px);gap:14px;align-items:start}.central-dio-registry{grid-row:span 2}.central-dio-summary{display:grid;grid-template-columns:repeat(4,minmax(110px,1fr));gap:8px;margin:12px 0}.central-dio-summary>span,.central-dio-facts>span{display:grid;gap:2px;padding:10px 12px;border:1px solid var(--border);border-radius:12px;background:var(--surface-2)}.central-dio-summary b{font-size:18px}.central-dio-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(330px,1fr));gap:10px}.central-dio-card{padding:14px!important}.central-dio-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin:10px 0}.central-dio-facts b{font-size:9px;text-transform:uppercase;color:var(--text-2)}.central-dio-channel-strip{display:flex;gap:6px;flex-wrap:wrap;min-height:30px;margin:8px 0 12px}.dio-chip{display:inline-flex;align-items:center;min-height:26px;padding:4px 9px;border:1px solid var(--border);border-radius:999px;font-size:9px;font-weight:800}.dio-chip.di{background:color-mix(in srgb,#2ccf8a 12%,var(--surface-2));border-color:color-mix(in srgb,#2ccf8a 34%,var(--border))}.dio-chip.do{background:color-mix(in srgb,#ffad32 12%,var(--surface-2));border-color:color-mix(in srgb,#ffad32 34%,var(--border))}.central-dio-empty{grid-column:1/-1;min-height:180px}.central-dio-modal{max-width:min(1220px,96vw)!important}.dio-wizard-strip{display:grid;grid-template-columns:repeat(5,1fr);gap:5px;margin:0 0 12px}.dio-wizard-strip span{padding:8px 10px;border:1px solid var(--border);border-radius:10px;text-align:center;font-size:9px;font-weight:800;color:var(--text-2)}.dio-wizard-strip span.active{background:color-mix(in srgb,var(--accent) 16%,var(--surface-2));border-color:var(--accent);color:var(--text-1)}.dio-wizard-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;max-height:65vh;overflow:auto;padding-right:4px}.dio-wizard-card{padding:14px;border:1px solid var(--border);border-radius:14px;background:var(--surface-2)}.dio-wizard-card.span-2{grid-column:1/-1}.dio-wizard-card h3{margin:0 0 10px}.dio-option-row{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:12px}.dio-choice{min-height:42px;border:1px solid var(--border);border-radius:12px;background:var(--surface-1);color:var(--text-1);font-weight:800;cursor:pointer}.dio-choice.active{border-color:var(--accent);box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 55%,transparent);background:color-mix(in srgb,var(--accent) 12%,var(--surface-1))}.dio-channel-columns{display:grid;grid-template-columns:1fr 1fr;gap:12px}.dio-channel-select{display:flex;gap:9px;align-items:center;padding:9px;border:1px solid var(--border);border-radius:10px;margin-bottom:6px;background:var(--surface-1)}.dio-channel-select span{display:grid}.dio-channel-select small{color:var(--text-2)}.dio-custom-row{display:grid;grid-template-columns:minmax(100px,1.2fr) 110px 100px 34px;gap:6px;margin-bottom:6px;align-items:center}.dio-custom-row.do{grid-template-columns:minmax(100px,1.2fr) 120px 90px 76px 76px 34px}.central-dio-principle{grid-column:2}.modal-inline-status{margin-right:auto;color:var(--text-2);font-size:10px;max-width:520px}.instrument-modal [data-device-tab="io"]{display:none!important}
@media(max-width:1100px){.central-dio-layout{grid-template-columns:1fr}.central-dio-registry{grid-row:auto}.central-dio-principle{grid-column:auto}.central-dio-summary{grid-template-columns:repeat(2,1fr)}.dio-wizard-grid,.dio-channel-columns{grid-template-columns:1fr}.dio-wizard-card.span-2{grid-column:auto}.dio-custom-row,.dio-custom-row.do{grid-template-columns:1fr 1fr}.dio-wizard-strip{grid-template-columns:1fr 1fr}}

/* UI19.8 — Centralized DIO architecture + modal UX integrity */

.central-dio-wizard-modal{width:min(1080px,96vw)!important;max-width:min(1080px,96vw)!important;height:min(820px,92vh)!important;display:flex!important;flex-direction:column!important;overflow:hidden!important;padding:0!important}
.central-dio-wizard-modal>.modal-head{flex:0 0 auto;padding:20px 22px 14px;border-bottom:1px solid var(--border);margin:0!important}
.central-dio-wizard-modal>.dio-wizard-strip{flex:0 0 auto;margin:0;padding:12px 22px;border-bottom:1px solid var(--border);background:color-mix(in srgb,var(--surface-2) 84%,transparent)}
.central-dio-wizard-modal>.dio-wizard-stage{flex:1 1 auto;min-height:0;overflow:auto;padding:20px 22px;scrollbar-gutter:stable}
.central-dio-wizard-modal>.modal-actions{flex:0 0 auto;margin:0!important;padding:13px 22px!important;border-top:1px solid var(--border);background:color-mix(in srgb,var(--surface-1) 94%,transparent);backdrop-filter:blur(12px)}
.central-dio-wizard-modal .dio-wizard-strip{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}
.central-dio-wizard-modal .dio-wizard-strip button{display:flex;align-items:center;justify-content:center;gap:8px;min-width:0;min-height:42px;padding:8px 10px;border:1px solid var(--border);border-radius:12px;background:var(--surface-1);color:var(--text-2);font:inherit;font-size:10px;font-weight:800;cursor:pointer}
.central-dio-wizard-modal .dio-wizard-strip button>span{display:grid;place-items:center;width:23px;height:23px;flex:0 0 23px;border-radius:50%;border:1px solid var(--border);background:var(--surface-2);font-size:9px}
.central-dio-wizard-modal .dio-wizard-strip button.active{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 15%,var(--surface-1));color:var(--text-1);box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 38%,transparent)}
.central-dio-wizard-modal .dio-wizard-strip button.active>span{border-color:var(--accent);background:var(--accent);color:#fff}
.central-dio-wizard-modal .dio-wizard-strip button.done{color:var(--text-1)}
.central-dio-wizard-modal .dio-wizard-strip button.done>span{border-color:#34c889;background:color-mix(in srgb,#34c889 18%,var(--surface-2));color:#82e9bd}
.dio-step-pane{max-width:920px;margin:0 auto;display:grid;gap:18px}
.dio-step-heading{display:flex;gap:12px;align-items:flex-start;padding-bottom:14px;border-bottom:1px solid var(--border)}
.dio-step-heading>span{display:grid;place-items:center;width:34px;height:34px;flex:0 0 34px;border-radius:11px;background:color-mix(in srgb,var(--accent) 18%,var(--surface-2));border:1px solid color-mix(in srgb,var(--accent) 45%,var(--border));color:#9ac8ff;font-weight:900}
.dio-step-heading h3{margin:0 0 4px;font-size:18px}.dio-step-heading p{margin:0;color:var(--text-2);font-size:11px;line-height:1.55}
.central-dio-wizard-modal .dio-option-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0}
.central-dio-wizard-modal .dio-choice{display:grid;grid-template-columns:28px 1fr;grid-template-rows:auto auto;column-gap:10px;align-items:center;text-align:left;min-height:84px;padding:16px;border:1px solid var(--border);border-radius:14px;background:var(--surface-2);color:var(--text-1)}
.central-dio-wizard-modal .dio-choice svg{grid-row:1/3;width:24px;height:24px;color:#8dbaff}.central-dio-wizard-modal .dio-choice b{font-size:13px}.central-dio-wizard-modal .dio-choice small{color:var(--text-2);font-size:10px}
.central-dio-wizard-modal .dio-choice.active{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 13%,var(--surface-2));box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 35%,transparent)}
.dio-explain-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.dio-explain-grid>div{display:grid;gap:5px;padding:14px;border:1px solid var(--border);border-radius:12px;background:var(--surface-2)}.dio-explain-grid b{font-size:11px}.dio-explain-grid span{font-size:10px;color:var(--text-2)}
.dio-profile-source-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.dio-source-card{display:grid;grid-template-columns:32px 1fr;grid-template-rows:auto auto;column-gap:10px;text-align:left;align-items:center;padding:14px;border:1px solid var(--border);border-radius:13px;background:var(--surface-2);color:var(--text-1);cursor:pointer}.dio-source-card .dio-source-icon{grid-row:1/3;display:grid;place-items:center;width:32px;height:32px;border-radius:10px;background:var(--surface-1);color:#8dbaff}.dio-source-card b{font-size:11px}.dio-source-card small{color:var(--text-2);font-size:9.5px}.dio-source-card.active{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 12%,var(--surface-2))}.dio-profile-select{margin-top:2px}
.dio-channel-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;align-items:start}.dio-channel-panel{min-width:0;padding:14px;border:1px solid var(--border);border-radius:14px;background:var(--surface-2)}.dio-channel-panel.di-panel{border-top-color:color-mix(in srgb,#2ccf8a 62%,var(--border))}.dio-channel-panel.do-panel{border-top-color:color-mix(in srgb,#ffad32 62%,var(--border))}.dio-channel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-bottom:12px}.dio-channel-head h4{margin:2px 0 3px;font-size:14px}.dio-channel-head p{margin:0;color:var(--text-2);font-size:9.5px;line-height:1.45}.dio-kicker{display:block;font-size:8px;font-weight:900;letter-spacing:.12em;color:#8dbaff}.dio-count{display:grid;place-items:center;min-width:30px;height:30px;border-radius:10px;background:var(--surface-1);border:1px solid var(--border);font-weight:900}.dio-channel-select{display:flex;gap:9px;align-items:center;padding:10px;border:1px solid var(--border);border-radius:10px;margin:7px 0;background:var(--surface-1)}.dio-channel-select input{width:16px;height:16px;accent-color:var(--accent)}.dio-channel-select span{display:grid;gap:2px;min-width:0}.dio-channel-select b{font-size:10px}.dio-channel-select small{color:var(--text-2);font-size:8.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.dio-custom-row{grid-template-columns:minmax(110px,1fr) 130px 110px 36px!important}.dio-custom-row.do{grid-template-columns:minmax(100px,1fr) 130px 96px 75px 75px 36px!important}.dio-command-row{margin:8px 0;padding:12px;border:1px solid var(--border);border-radius:12px;background:var(--surface-1)}.dio-command-row-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}.dio-command-row-head b{font-size:11px}.dio-command-row .form-grid{gap:9px}
.dio-review{display:grid;gap:14px}.dio-review-hero{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding:16px;border:1px solid var(--border);border-radius:14px;background:var(--surface-2)}.dio-review-hero h3{margin:3px 0 4px;font-size:20px}.dio-review-hero p{margin:0;color:var(--text-2)}
.dio-wizard-actions .modal-inline-status{margin-right:auto;align-self:center;color:var(--text-2);font-size:10px}
@media(max-width:820px){.central-dio-wizard-modal .dio-wizard-strip{grid-template-columns:repeat(5,44px);justify-content:center}.central-dio-wizard-modal .dio-wizard-strip button{padding:7px}.central-dio-wizard-modal .dio-wizard-strip button b{display:none}.central-dio-wizard-modal .dio-option-row,.dio-profile-source-grid,.dio-channel-columns,.dio-explain-grid{grid-template-columns:1fr}.dio-custom-row,.dio-custom-row.do{grid-template-columns:1fr 1fr!important}.central-dio-wizard-modal>.dio-wizard-stage{padding:16px}.central-dio-wizard-modal>.modal-head,.central-dio-wizard-modal>.modal-actions{padding-left:16px!important;padding-right:16px!important}}

/* UI19.9 — centralized DIO editor follows Instrument Configuration pattern (single-page, non-wizard). */
.central-dio-editor-modal{width:min(1180px,96vw)!important;max-width:min(1180px,96vw)!important;height:min(900px,94vh)!important;display:flex!important;flex-direction:column!important;overflow:hidden!important;padding:0!important}
.central-dio-editor-modal>.modal-head{flex:0 0 auto;padding:18px 22px 14px;border-bottom:1px solid var(--border);margin:0!important}
.central-dio-editor-body{flex:1 1 auto;min-height:0;overflow:auto;padding:16px 18px 22px;scrollbar-gutter:stable;background:color-mix(in srgb,var(--surface-1) 97%,transparent)}
.central-dio-editor-actions{flex:0 0 auto;margin:0!important;padding:12px 18px!important;border-top:1px solid var(--border);background:color-mix(in srgb,var(--surface-1) 96%,transparent);backdrop-filter:blur(12px)}
.dio-config-stack{display:grid;gap:10px;max-width:1120px;margin:0 auto}
.dio-config-section{padding:14px!important;margin:0!important;border-radius:14px!important;background:color-mix(in srgb,var(--surface-2) 88%,transparent)!important}
.dio-config-section>.section-title{margin-bottom:12px}
.dio-config-section>.section-title h2{font-size:15px;margin:2px 0 3px}
.dio-config-section>.section-title p{font-size:9.5px;line-height:1.45;margin:0;color:var(--text-2)}
.dio-inline-selector{display:grid;grid-template-columns:minmax(260px,420px);margin-bottom:12px}
.central-dio-editor-modal .form-grid{gap:10px}
.central-dio-editor-modal .field>span{font-size:10px;font-weight:750}
.central-dio-editor-modal .field small{font-size:8.5px;color:var(--text-2)}
.central-dio-editor-modal .input,.central-dio-editor-modal .select{min-height:38px}
.central-dio-editor-modal .dio-profile-source-grid{margin-top:8px}
.central-dio-editor-modal .dio-channel-columns{margin-top:4px}
.central-dio-editor-modal .dio-review{margin-top:2px}
.central-dio-editor-modal .central-dio-summary{grid-template-columns:repeat(4,minmax(0,1fr));margin:10px 0}
.central-dio-editor-modal .modal-inline-status{max-width:680px}
@media(max-width:900px){.central-dio-editor-modal{width:98vw!important;height:96vh!important}.central-dio-editor-body{padding:12px}.central-dio-editor-modal .central-dio-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.central-dio-editor-modal .dio-channel-columns{grid-template-columns:1fr}.dio-inline-selector{grid-template-columns:1fr}}


/* UI20.1 — UI integrity: preserve legacy Instrument Configuration; central DIO uses symmetric single-page forms. */
.central-dio-editor-modal [hidden]{display:none!important}
.central-dio-editor-modal{width:min(1160px,calc(100vw - 40px))!important;max-width:min(1160px,calc(100vw - 40px))!important;height:min(860px,calc(100dvh - 40px))!important;max-height:calc(100dvh - 40px)!important}
.central-dio-editor-modal>.modal-head{padding:16px 20px 13px!important}
.central-dio-editor-body{padding:14px 16px 20px!important}
.dio-config-stack{gap:12px;max-width:none;width:100%}
.dio-config-section{padding:16px!important;border-radius:14px!important;overflow:hidden}
.dio-config-section>.section-title{align-items:flex-start;margin-bottom:14px}
.dio-config-section>.section-title .copy{min-width:0}
.dio-config-section>.section-title .eyebrow{font-size:8.5px;letter-spacing:.12em}
.dio-config-section>.section-title h2{font-size:15px!important;line-height:1.2}
.dio-config-section>.section-title p{max-width:760px;font-size:9.5px!important}
.dio-inline-selector{grid-template-columns:minmax(260px,420px);margin:0 0 14px}
.central-dio-editor-modal .form-grid.grid-3{grid-template-columns:repeat(3,minmax(0,1fr));align-items:end}
.central-dio-editor-modal .field{min-width:0}
.central-dio-editor-modal .field>span,.dio-field-label{display:block;margin-bottom:6px;font-size:10px;font-weight:750;color:var(--text-1)}
.central-dio-editor-modal .input,.central-dio-editor-modal .select{width:100%;min-width:0;min-height:40px}
.dio-profile-source-wrap{margin-top:12px}
.dio-profile-source-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0}
.dio-source-card{position:relative;display:grid!important;grid-template-columns:36px minmax(0,1fr)!important;grid-template-rows:auto auto!important;column-gap:10px!important;row-gap:2px;min-height:66px!important;padding:11px 13px!important;overflow:hidden!important;align-items:center!important}
.dio-source-card .dio-source-icon{grid-row:1/3!important;width:32px!important;height:32px!important;min-width:32px!important;min-height:32px!important;max-width:32px!important;max-height:32px!important;overflow:hidden!important;border-radius:9px!important}
.dio-source-card .dio-source-icon svg{display:block!important;width:17px!important;height:17px!important;min-width:17px!important;min-height:17px!important;max-width:17px!important;max-height:17px!important}
.dio-source-card b{min-width:0;font-size:10.5px!important;line-height:1.2}
.dio-source-card small{min-width:0;font-size:8.7px!important;line-height:1.35;overflow-wrap:anywhere}
.dio-profile-select{margin-top:10px!important}
.dio-channel-columns{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px!important;align-items:stretch!important}
.dio-channel-panel{display:flex;flex-direction:column;min-height:220px;padding:14px!important;overflow:hidden}
.dio-channel-head{min-height:52px;margin-bottom:10px!important}
.dio-channel-panel>.empty-state{flex:1;min-height:118px;display:grid;place-content:center;text-align:center}
.dio-custom-row,.dio-custom-row.do{width:100%;min-width:0}
.central-dio-editor-actions{min-height:62px;padding:10px 16px!important;gap:8px!important}
.central-dio-editor-actions .modal-inline-status{font-size:9px;line-height:1.35}
/* Keep the original Instrument Configuration visual system. Only the DIO tab is removed architecturally. */
.instrument-modal [data-device-tab="io"]{display:none!important}
@media(max-width:900px){
 .central-dio-editor-modal{width:calc(100vw - 20px)!important;max-width:calc(100vw - 20px)!important;height:calc(100dvh - 20px)!important;max-height:calc(100dvh - 20px)!important}
 .central-dio-editor-modal .form-grid.grid-3,.dio-profile-source-grid,.dio-channel-columns{grid-template-columns:1fr!important}
 .dio-channel-panel{min-height:0}
}


/* ======================================================================
   LEGACY MIGRATION SOURCE: src/daq/webui/shared/material_ui6.css
   Consolidated into the single universal Project 00 stylesheet.
   ====================================================================== */
/* AESST DAS 4.20.62 UI6 — unified Material operator system.
   This file is the final visual authority for Service Manager, Configuration,
   Dashboard and Protocol Studio. Legacy page CSS may keep structural layout only. */
:root,
html[data-theme="light"],
html[data-aesstdas-ui="6"]{
  color-scheme:light;
  --mui-canvas:#c9d2d8;
  --mui-shell:#dfe6ea;
  --mui-panel:#d6dfe4;
  --mui-panel-strong:#e2e8eb;
  --mui-elevated:#e8edef;
  --mui-inset:#dce4e8;
  --mui-input:#e7ecef;
  --mui-border:rgba(62,86,104,.28);
  --mui-border-soft:rgba(62,86,104,.18);
  --mui-text:#173247;
  --mui-text-2:#4e6779;
  --mui-text-3:#708492;
  --mui-primary:#078bc6;
  --mui-primary-hover:#087daf;
  --mui-primary-soft:rgba(7,139,198,.12);
  --mui-success:#0b8d72;
  --mui-success-soft:rgba(11,141,114,.12);
  --mui-warning:#b77818;
  --mui-warning-soft:rgba(183,120,24,.12);
  --mui-error:#c34f5c;
  --mui-error-soft:rgba(195,79,92,.12);
  --mui-shadow-1:0 1px 2px rgba(25,42,54,.08),0 4px 12px rgba(25,42,54,.05);
  --mui-shadow-2:0 2px 5px rgba(25,42,54,.10),0 10px 28px rgba(25,42,54,.07);
  --mui-r-sm:10px;
  --mui-r-md:14px;
  --mui-r-lg:18px;
  --mui-r-xl:22px;
  --mui-space-1:4px;
  --mui-space-2:8px;
  --mui-space-3:12px;
  --mui-space-4:16px;
  --mui-space-5:20px;
  --mui-space-6:24px;
  --mui-space-8:32px;
  --adq-surface:var(--mui-panel-strong);
  --adq-surface-solid:var(--mui-panel-strong);
  --adq-surface-soft:var(--mui-inset);
  --adq-surface-muted:var(--mui-inset);
  --adq-technical-bg:var(--mui-inset);
  --adq-canvas:var(--mui-canvas);
  --adq-edge:var(--mui-border-soft);
  --adq-text-primary:var(--mui-text);
  --adq-text-secondary:var(--mui-text-2);
  --adq-accent:var(--mui-primary);
  --adq-accent-strong:var(--mui-primary-hover);
  --adq-primary:var(--mui-primary);
  --adq-success:var(--mui-success);
  --adq-warning:var(--mui-warning);
  --adq-error:var(--mui-error);
  --adq-motion:cubic-bezier(.2,0,0,1);
}

*{box-sizing:border-box}
html,body{min-height:100%;background:var(--mui-canvas)!important;color:var(--mui-text)!important}
body{margin:0;font-family:"Segoe UI Variable Text","Segoe UI",Inter,system-ui,-apple-system,sans-serif!important;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:hidden!important}
.theme-choice,[data-theme-choice],.adq-theme-switch{display:none!important}

/* Material surfaces */
.glass-card,.card,.panel,.studio-panel,.service-primary-console,.service-database-panel,.service-activity-panel,
.reliability-strip,.operation-summary,.analysis-workspace-shell,.analysis-group-card,.tabular-toolbar,.tabular-content,
.live-tiles-card,.trend-workspace-card,.dashboard-live-data-card,.modal,.auth-modal,.connection-card,
.instrument-card,.config-card,.workspace-card,.control-card,.device-card{
  background:color-mix(in srgb,var(--mui-panel-strong) 92%,white 8%)!important;
  border:1px solid var(--mui-border-soft)!important;
  border-radius:var(--mui-r-lg)!important;
  box-shadow:var(--mui-shadow-1)!important;
  backdrop-filter:none!important;
}
.glass-card::before,.glass-card::after,.card::before,.card::after,.premium-live-tile::before,.premium-live-tile::after{content:none!important;display:none!important}

/* Headers / chrome */
.top-glass,.service-commandbar,.protocol-header,.app-header,.topbar,.commandbar{
  background:var(--mui-shell)!important;
  border:1px solid var(--mui-border-soft)!important;
  border-radius:var(--mui-r-lg)!important;
  box-shadow:var(--mui-shadow-1)!important;
  backdrop-filter:none!important;
}
.app-content-inner,.dashboard-inner,.profile-page,.service-page,.configuration-page{width:min(100%,1560px)!important;margin-inline:auto!important}
.dashboard-content,.app-content,.profile-main,.configuration-main{background:transparent!important}

/* Typography */
h1,h2,h3,h4,strong,.section-title-inline{color:var(--mui-text)!important;letter-spacing:-.015em}
p,small,.subtle-copy,.field-note,.field-hint,.eyebrow,.panel-kicker{color:var(--mui-text-2)!important}
.eyebrow,.panel-kicker{text-transform:uppercase;font-size:10px!important;font-weight:700!important;letter-spacing:.095em!important}

/* Buttons: Material contained / outlined / text */
button,.touch-button,.trend-control-action,.segment,.overview-mode-tab,.dock-item,.analysis-mode-chip,.compact-delete{
  font-family:inherit!important;
  border-radius:var(--mui-r-sm)!important;
  transition:background-color 160ms var(--adq-motion),border-color 160ms var(--adq-motion),color 160ms var(--adq-motion),box-shadow 160ms var(--adq-motion),opacity 160ms var(--adq-motion)!important;
  transform:none!important;
}
button:not(:disabled){cursor:pointer}
.touch-button,.trend-control-action,.compact-delete{
  min-height:38px!important;padding:0 14px!important;border:1px solid var(--mui-border)!important;background:var(--mui-panel-strong)!important;color:var(--mui-text)!important;box-shadow:none!important;font-weight:650!important
}
.touch-button:hover,.trend-control-action:hover,.compact-delete:hover{background:#edf1f3!important;border-color:rgba(48,81,105,.38)!important;transform:none!important}
.touch-button.primary,.touch-button[data-variant="contained"],button.primary{
  background:var(--mui-primary)!important;border-color:var(--mui-primary)!important;color:#fff!important;box-shadow:0 2px 5px rgba(7,117,169,.20)!important
}
.touch-button.primary:hover,button.primary:hover{background:var(--mui-primary-hover)!important;border-color:var(--mui-primary-hover)!important}
.touch-button.danger,.compact-delete.danger{background:var(--mui-error-soft)!important;color:#963645!important;border-color:rgba(195,79,92,.30)!important}
button:focus-visible,.touch-button:focus-visible,.dock-item:focus-visible,.segment:focus-visible,.overview-mode-tab:focus-visible,.analysis-mode-chip:focus-visible,
input:focus-visible,textarea:focus-visible,select:focus-visible,.aesst-select-trigger:focus-visible{
  outline:3px solid color-mix(in srgb,var(--mui-primary) 30%,transparent)!important;outline-offset:2px!important
}

/* Unified Material fields */
input,textarea,select,.touch-field,.touch-input,.touch-select{
  min-height:42px!important;border:1px solid var(--mui-border)!important;border-radius:var(--mui-r-sm)!important;background:var(--mui-input)!important;color:var(--mui-text)!important;box-shadow:none!important;padding:8px 12px!important;font:500 13px/1.35 inherit!important;appearance:none;-webkit-appearance:none
}
textarea{min-height:84px!important;resize:vertical}
input::placeholder,textarea::placeholder{color:#748896!important;opacity:1}
input:focus,textarea:focus,select:focus,.touch-field:focus,.touch-input:focus,.touch-select:focus{border-color:var(--mui-primary)!important;background:#edf2f4!important;box-shadow:0 0 0 1px var(--mui-primary)!important;outline:none!important}
select,.touch-select{padding-right:34px!important;background-image:linear-gradient(45deg,transparent 50%,#536d7f 50%),linear-gradient(135deg,#536d7f 50%,transparent 50%)!important;background-position:calc(100% - 17px) 18px,calc(100% - 12px) 18px!important;background-size:5px 5px,5px 5px!important;background-repeat:no-repeat!important}
select option{background:#e7ecef!important;color:var(--mui-text)!important}
input[type="number"]{-moz-appearance:textfield!important}
input[type="number"]::-webkit-inner-spin-button,input[type="number"]::-webkit-outer-spin-button{-webkit-appearance:none!important;margin:0!important}
label,.field{color:var(--mui-text-2)!important;font-weight:600!important}
label>span,.field>span{color:var(--mui-text-2)!important}

/* Generic custom Material select enhancer */
.aesst-select-shell{position:relative;display:block;min-width:0;width:100%}
.aesst-select-native{position:absolute!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important;clip-path:inset(50%)!important;padding:0!important;border:0!important}
.aesst-select-trigger{width:100%;min-height:42px;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 12px;border:1px solid var(--mui-border);border-radius:var(--mui-r-sm);background:var(--mui-input);color:var(--mui-text);font:600 13px/1.2 inherit;text-align:left;box-shadow:none}
.aesst-select-trigger:hover{background:#edf1f3;border-color:rgba(48,81,105,.38)}
.aesst-select-trigger .aesst-chevron{font-size:11px;color:var(--mui-text-2);transition:transform 150ms var(--adq-motion)}
.aesst-select-shell.open .aesst-chevron{transform:rotate(180deg)!important}
.aesst-select-menu{position:fixed;z-index:10000;max-height:min(360px,calc(100vh - 24px));overflow:auto;padding:6px;border:1px solid var(--mui-border);border-radius:12px;background:#e9eef1;box-shadow:var(--mui-shadow-2);overscroll-behavior:contain}
.aesst-select-option{width:100%;min-height:38px;display:flex;align-items:center;gap:10px;padding:7px 10px;border:0!important;border-radius:8px!important;background:transparent!important;color:var(--mui-text)!important;text-align:left;font:600 12px/1.25 inherit!important;box-shadow:none!important}
.aesst-select-option:hover,.aesst-select-option.focused{background:rgba(7,139,198,.09)!important}
.aesst-select-option.selected{background:rgba(7,139,198,.13)!important;color:#075f8d!important}
.aesst-select-option[aria-disabled="true"]{opacity:.48;pointer-events:none}
.aesst-select-check{width:18px;height:18px;display:grid;place-items:center;border:1px solid rgba(51,83,105,.45);border-radius:4px;background:#eef2f4;color:white;font-size:12px}
.aesst-select-option.selected .aesst-select-check{background:var(--mui-primary);border-color:var(--mui-primary)}
.aesst-select-search{position:sticky;top:0;z-index:1;margin:0 0 5px;padding:8px;background:#e9eef1}
.aesst-select-search input{width:100%!important;min-height:36px!important}

/* Material switches */
.switch-ui{background:#aab7c0!important;border:1px solid rgba(57,78,93,.28)!important;box-shadow:none!important}
input:checked+.switch-ui{background:var(--mui-primary)!important;border-color:var(--mui-primary)!important}
.switch-ui::after{background:#fff!important;box-shadow:0 1px 3px rgba(0,0,0,.22)!important}

/* Chips */
.status-chip,.build-chip,.session-user-chip{border:1px solid var(--mui-border-soft)!important;background:var(--mui-inset)!important;color:var(--mui-text-2)!important;box-shadow:none!important}
.status-chip.good{background:var(--mui-success-soft)!important;color:#08715c!important;border-color:rgba(11,141,114,.25)!important}
.status-chip.warn{background:var(--mui-warning-soft)!important;color:#8b5a11!important;border-color:rgba(183,120,24,.28)!important}
.status-chip.bad{background:var(--mui-error-soft)!important;color:#973946!important;border-color:rgba(195,79,92,.26)!important}

/* Segmented controls / tabs */
.segmented,.overview-mode-tabs,.analysis-mode-strip,.protocol-analysis-tabs{background:rgba(101,122,136,.12)!important;border:1px solid var(--mui-border-soft)!important;border-radius:var(--mui-r-md)!important;padding:4px!important;gap:4px!important;box-shadow:none!important}
.segment,.overview-mode-tab,.analysis-mode-chip,.protocol-analysis-tabs button{border:1px solid transparent!important;background:transparent!important;color:var(--mui-text-2)!important;box-shadow:none!important;min-height:38px!important;font-weight:650!important}
.segment:hover,.overview-mode-tab:hover,.analysis-mode-chip:hover,.protocol-analysis-tabs button:hover{background:rgba(232,237,240,.66)!important;color:var(--mui-text)!important;transform:none!important}
.segment.active,.overview-mode-tab.active,.analysis-mode-chip.active,.protocol-analysis-tabs button.active{background:var(--mui-elevated)!important;color:#066d9f!important;border-color:var(--mui-border-soft)!important;box-shadow:0 1px 4px rgba(24,42,54,.08)!important}

/* Center every navigation-card/workspace selector block */
.workspace-selector,.workspace-nav,.mode-grid,.station-mode-grid,.instrument-mode-grid,.navigation-cards,.nav-card-grid,.onboarding-grid,.station-config-grid,.instrument-launcher-grid,
[data-workspace-selector],.configuration-nav,.configuration-section-tabs,.section-launcher,.profile-mode-grid{
  width:min(1120px,calc(100% - 32px))!important;margin-inline:auto!important;justify-content:center!important;justify-items:stretch!important
}
.workspace-selector>* ,.workspace-nav>* ,.mode-grid>* ,.station-mode-grid>* ,.instrument-mode-grid>* ,.navigation-cards>* ,.nav-card-grid>* ,.onboarding-grid>*{
  min-width:0!important
}

/* Dock */
.dock-wrap{left:50%!important;right:auto!important;transform:translateX(-50%)!important;width:min(1100px,calc(100vw - 32px))!important;pointer-events:none!important}
.dock{width:100%!important;display:flex!important;justify-content:center!important;gap:6px!important;padding:7px!important;background:rgba(223,230,234,.96)!important;border:1px solid var(--mui-border)!important;border-radius:20px!important;box-shadow:var(--mui-shadow-2)!important;backdrop-filter:none!important;pointer-events:auto!important}
.dock-item{flex:1 1 0!important;max-width:150px!important;min-width:72px!important;min-height:54px!important;background:transparent!important;border:1px solid transparent!important;color:var(--mui-text-2)!important;box-shadow:none!important}
.dock-item:hover{background:rgba(235,240,242,.72)!important;transform:none!important}
.dock-item.active{background:var(--mui-elevated)!important;color:#0679ad!important;border-color:rgba(7,139,198,.20)!important;box-shadow:0 2px 7px rgba(28,48,62,.08)!important}
.dock-item svg,.dock-item .icon{color:currentColor!important;stroke:currentColor!important}

/* Modal */
.modal-backdrop{background:rgba(33,50,62,.34)!important;backdrop-filter:blur(3px)!important;overflow-x:hidden!important}
.modal,.auth-modal{width:min(520px,calc(100vw - 32px))!important;max-width:calc(100vw - 32px)!important;overflow-x:hidden!important;padding:24px!important}

/* Service Manager: remove orb/creepy visual; retain status semantics. */
.service-orb{width:68px!important;height:68px!important;border-radius:16px!important;background:var(--mui-inset)!important;border:1px solid var(--mui-border)!important;box-shadow:none!important;display:grid!important;place-items:center!important}
.orb-ring,.orb-core{animation:none!important;transform:none!important;border-radius:12px!important;box-shadow:none!important;background:transparent!important}
.orb-ring::before,.orb-ring::after,.orb-core::before,.orb-core::after{content:none!important;display:none!important}
.service-workbench{gap:var(--mui-space-5)!important}
.service-control-rail,.service-operations-pane{gap:var(--mui-space-4)!important}

/* Configuration / Protocol Studio spacing */
.configuration-page,.profile-page{padding-bottom:96px!important}
.workspace,.workspace-editor,.studio-grid,.profile-workspace,.configuration-workspace{gap:var(--mui-space-4)!important}
.form-grid,.settings-grid,.compact-settings-grid{gap:var(--mui-space-3)!important}
.easy-suggestion-popover{background:#e9eef1!important;border:1px solid var(--mui-border)!important;border-radius:12px!important;box-shadow:var(--mui-shadow-2)!important;padding:6px!important}
.easy-suggestion-item{background:transparent!important;border:0!important;border-radius:8px!important;color:var(--mui-text)!important;box-shadow:none!important;min-height:38px!important}
.easy-suggestion-item:hover{background:var(--mui-primary-soft)!important}
.easy-suggestion-item small{display:none!important}

/* Dashboard uniformity */
.dashboard-shell{background:var(--mui-canvas)!important}
.dashboard-inner{display:grid!important;gap:var(--mui-space-4)!important;padding:10px 14px 90px!important}
.metric-grid{gap:12px!important}
.metric-card{background:var(--mui-panel)!important;border:1px solid var(--mui-border-soft)!important;border-radius:var(--mui-r-md)!important;box-shadow:none!important;transform:none!important}
.metric-card:hover{transform:none!important;box-shadow:none!important;background:color-mix(in srgb,var(--mui-panel) 92%,white 8%)!important}
.dashboard-live-data-card{background:var(--mui-panel-strong)!important}
.overview-mode-tabs{display:grid!important;grid-template-columns:repeat(var(--overview-tab-count,1),minmax(0,1fr))!important;width:100%!important}

/* Live parameter tiles: no inner floating graph card; full visible chart. */
#live-tiles-section{overflow:visible!important;padding:16px!important;background:var(--mui-panel)!important}
.station-live-grid{display:grid!important;grid-template-columns:repeat(var(--tile-columns,1),minmax(0,1fr))!important;gap:14px!important;align-items:stretch!important;width:100%!important}
.station-live-grid .premium-live-tile{
  display:grid!important;grid-template-rows:auto minmax(210px,1fr)!important;gap:12px!important;width:100%!important;min-width:0!important;min-height:430px!important;height:auto!important;padding:16px!important;overflow:visible!important;background:color-mix(in srgb,var(--mui-panel-strong) 94%,var(--tile-color,var(--mui-primary)) 6%)!important;border:1px solid color-mix(in srgb,var(--tile-color,var(--mui-primary)) 24%,var(--mui-border))!important;border-top:3px solid var(--tile-color,var(--mui-primary))!important;border-radius:var(--mui-r-lg)!important;box-shadow:var(--mui-shadow-1)!important
}
.station-live-grid.tiles-1 .premium-live-tile{min-height:clamp(470px,calc(100dvh - 310px),690px)!important}
.station-live-grid.tiles-2 .premium-live-tile{min-height:clamp(440px,calc(100dvh - 325px),620px)!important}
.station-live-grid .tile-insight-grid{display:grid!important;grid-template-columns:minmax(0,1.15fr) minmax(190px,.85fr)!important;gap:14px!important;min-height:0!important}
.station-live-grid .tile-primary-pane{min-width:0!important}
.station-live-grid .tile-status-actions{display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:7px!important;flex-wrap:wrap!important}
.station-live-grid .tile-autocheck-indicator{position:static!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;min-width:38px!important;height:30px!important;padding:0 9px!important;border-radius:9px!important;border:1px solid var(--mui-border)!important;background:var(--mui-inset)!important;color:#356178!important;font:750 10px/1 inherit!important;letter-spacing:.04em!important;box-shadow:none!important}
.station-live-grid .tile-autocheck-indicator[hidden]{display:none!important}
.station-live-grid .tile-autocheck-indicator.pass{background:var(--mui-success-soft)!important;color:#08715c!important;border-color:rgba(11,141,114,.25)!important}
.station-live-grid .tile-autocheck-indicator.fail{background:var(--mui-error-soft)!important;color:#9c3947!important;border-color:rgba(195,79,92,.25)!important}
.station-live-grid .tile-autocheck-indicator.running{background:var(--mui-warning-soft)!important;color:#8b5a11!important;border-color:rgba(183,120,24,.25)!important}
.station-live-grid .tile-spec-pane{background:rgba(207,218,224,.46)!important;border:1px solid var(--mui-border-soft)!important;border-radius:12px!important;padding:10px!important;box-shadow:none!important}
.station-live-grid .tile-sparkline-wrap{position:relative!important;display:block!important;min-height:210px!important;height:100%!important;width:100%!important;padding:44px 4px 2px!important;margin:0!important;background:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important;overflow:visible!important}
.station-live-grid .tile-sparkline{display:block!important;width:100%!important;height:100%!important;min-height:190px!important;max-height:none!important}
.station-live-grid .tile-chart-overlay{position:absolute!important;top:2px!important;right:2px!important;left:2px!important;display:flex!important;justify-content:flex-end!important;z-index:5!important;pointer-events:none}
.station-live-grid .tile-window-control{pointer-events:auto;display:flex!important;align-items:center!important;gap:7px!important;color:var(--mui-text-2)!important;font-size:9px!important;font-weight:700!important;text-transform:none!important;letter-spacing:0!important}
.station-live-grid .tile-window-select{min-width:118px!important;width:auto!important;min-height:34px!important;height:34px!important;padding-top:5px!important;padding-bottom:5px!important;font-size:11px!important;background-color:var(--mui-input)!important;color:var(--mui-text)!important;-webkit-text-fill-color:var(--mui-text)!important;opacity:1!important;visibility:visible!important}

/* Multi Trend: one continuous workspace, matching top/bottom. */
#live-graph-section{background:var(--mui-panel)!important;overflow:visible!important}
.trend-workspace-layout{display:grid!important;grid-template-columns:minmax(250px,30%) minmax(0,1fr)!important;gap:14px!important;align-items:stretch!important;min-height:clamp(430px,calc(100dvh - 335px),680px)!important}
#trend-legend-panel,.trend-plot-panel{height:100%!important;min-height:0!important;align-self:stretch!important}
#trend-legend-panel{display:grid!important;grid-template-rows:auto minmax(0,1fr)!important;background:rgba(210,220,225,.52)!important;border:1px solid var(--mui-border-soft)!important;border-radius:14px!important;padding:10px!important;overflow:hidden!important}
#trend-selector.trend-selected-legend{display:grid!important;grid-template-rows:repeat(var(--trend-card-count,1),minmax(0,1fr))!important;gap:8px!important;min-height:0!important;height:100%!important;overflow:hidden!important}
#trend-legend-panel[data-overflow="true"] #trend-selector{display:grid!important;grid-auto-rows:minmax(105px,auto)!important;grid-template-rows:none!important;overflow-y:auto!important}
#trend-selector .trend-legend-item{height:100%!important;min-height:0!important;background:rgba(228,234,237,.74)!important;border:1px solid var(--mui-border-soft)!important;border-left:4px solid var(--parameter-color)!important;border-radius:12px!important;box-shadow:none!important;transform:none!important}
.trend-plot-panel{display:grid!important;grid-template-rows:auto minmax(0,1fr)!important;gap:8px!important;min-width:0!important}
.station-trend-surface,.chart-wrap,.interactive-chart{height:100%!important;min-height:0!important;background:rgba(220,228,232,.48)!important;border:1px solid var(--mui-border-soft)!important;border-radius:14px!important;box-shadow:none!important;padding:10px!important;overflow:hidden!important}
.station-trend-surface canvas{display:block!important;width:100%!important;height:100%!important;min-height:360px!important}

/* Analysis */
.analysis-workspace-shell{background:var(--mui-panel)!important}
.analysis-studio-grid{gap:14px!important;align-items:stretch!important}
.analysis-control-rail,.analysis-visualization-pane{background:rgba(217,225,229,.54)!important;border:1px solid var(--mui-border-soft)!important;border-radius:14px!important;box-shadow:none!important}
.analysis-command-bar{background:transparent!important;border:0!important;box-shadow:none!important}
#analysis-controls-toggle{display:none!important}
.analysis-chart-stage{background:rgba(224,231,234,.72)!important;border:1px solid var(--mui-border-soft)!important;border-radius:14px!important;box-shadow:none!important;min-height:480px!important}
.analysis-check-toggle,.analysis-check-menu{background:var(--mui-input)!important;border-color:var(--mui-border)!important;color:var(--mui-text)!important;box-shadow:none!important}
.analysis-check-menu{box-shadow:var(--mui-shadow-2)!important}
.analysis-check-option:hover{background:var(--mui-primary-soft)!important}

/* Tables */
table{border-collapse:separate!important;border-spacing:0!important;color:var(--mui-text)!important}
th{background:rgba(195,207,214,.72)!important;color:#365266!important;font-weight:700!important}
td{background:rgba(231,237,239,.58)!important;border-color:var(--mui-border-soft)!important}
tr:hover td{background:rgba(236,241,243,.86)!important}

/* Scrollbars — visible, native and consistent. */
*{scrollbar-width:thin;scrollbar-color:#8fa0ab transparent}
*::-webkit-scrollbar{width:10px;height:10px}
*::-webkit-scrollbar-thumb{background:#8fa0ab;border:2px solid transparent;background-clip:padding-box;border-radius:999px}
*::-webkit-scrollbar-track{background:transparent}

/* Entry motion only; no ripple, no peel, no spring. */
@keyframes ui6-enter{from{opacity:0;transform:translateY(6px) scale(.99)}to{opacity:1;transform:none}}
.ui6-enter{animation:ui6-enter 190ms cubic-bezier(.2,0,0,1) both!important}
.adq-ripple,.ripple,.material-ripple{display:none!important;animation:none!important}

@media (max-width:1100px){
  .station-live-grid{grid-template-columns:repeat(min(var(--tile-columns,1),2),minmax(0,1fr))!important}
  .trend-workspace-layout{grid-template-columns:1fr!important;min-height:0!important}
  #trend-legend-panel{min-height:220px!important}
  #trend-selector.trend-selected-legend{grid-template-rows:none!important;grid-template-columns:repeat(auto-fit,minmax(210px,1fr))!important;overflow:visible!important}
  .station-trend-surface{min-height:420px!important}
}
@media (max-width:720px){
  .station-live-grid{grid-template-columns:1fr!important}
  .station-live-grid .tile-insight-grid{grid-template-columns:1fr!important}
  .overview-mode-tabs{grid-template-columns:1fr!important}
  .dock-item .label,.dock-item>span:not(.icon){font-size:9px!important}
}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}


/* UI6 final structural corrections */
.configuration-app .station-config-launchers{width:min(1120px,calc(100% - 32px))!important;margin:0 auto 16px!important;display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:14px!important;justify-content:center!important}
.configuration-app .station-config-launcher{min-width:0!important;min-height:84px!important;padding:14px 16px!important;background:var(--mui-panel)!important;border:1px solid var(--mui-border-soft)!important;border-radius:var(--mui-r-md)!important;box-shadow:none!important;transform:none!important}
.configuration-app .station-config-launcher:hover{background:var(--mui-panel-strong)!important;border-color:rgba(7,139,198,.30)!important;box-shadow:none!important;transform:none!important}
.configuration-app .station-config-launcher.active{background:color-mix(in srgb,var(--mui-panel-strong) 88%,var(--mui-primary) 12%)!important;border-color:rgba(7,139,198,.42)!important;box-shadow:0 0 0 1px rgba(7,139,198,.10)!important}
.configuration-app .station-config-panel{width:min(1320px,calc(100% - 32px))!important;margin-inline:auto!important}
.analysis-control-grid{display:grid!important;grid-template-columns:1fr!important;gap:12px!important}
.analysis-bottom-actions{display:grid!important;grid-template-columns:1fr 1fr!important;gap:10px!important;margin-top:6px!important;padding-top:14px!important;border-top:1px solid var(--mui-border-soft)!important}
.analysis-bottom-actions .touch-button{width:100%!important}
.analysis-command-bar{padding:12px 12px 0!important}
.analysis-control-rail{overflow:visible!important}
.analysis-control-grid{overflow:visible!important}
.analysis-chart-stage{height:clamp(500px,calc(100dvh - 300px),760px)!important}
.easy-suggestion-popover,.easy-suggestions,.easy-suggestion-list{background:#e9eef1!important;border:1px solid var(--mui-border)!important;border-radius:12px!important;box-shadow:var(--mui-shadow-2)!important;padding:6px!important}
.easy-suggestion-item{width:100%!important;min-height:38px!important;padding:8px 10px!important;border:0!important;border-radius:8px!important;background:transparent!important;color:var(--mui-text)!important;text-align:left!important;box-shadow:none!important;transform:none!important}
.easy-suggestion-item:hover,.easy-suggestion-item:focus-visible{background:var(--mui-primary-soft)!important;transform:none!important}
.easy-suggestion-item small{display:none!important}
@media(max-width:820px){.configuration-app .station-config-launchers{grid-template-columns:1fr!important;width:100%!important}.analysis-bottom-actions{grid-template-columns:1fr!important}}

/* UI6 final legacy-visual neutralization. Page styles retain structure only; these
   rules replace old Mica/gradient/lift treatments with one Material surface system. */
.protocol-studio-shell,.service-manager-shell,.configuration-app,.dashboard-shell{background:var(--mui-canvas)!important;color:var(--mui-text)!important}
.protocol-studio-shell::before,.service-commandbar::after{content:none!important;display:none!important}
.protocol-studio-shell .touch-button.primary,
.configuration-app .local-card-actions .local-save,
.configuration-app .instrument-local-actions .primary,
.configuration-app .parameter-local-actions .primary,
.configuration-app .group-local-actions .primary{
  background:var(--mui-primary)!important;border:1px solid var(--mui-primary)!important;color:#fff!important;box-shadow:0 2px 5px rgba(7,117,169,.20)!important;transform:none!important
}
.protocol-studio-shell .touch-button.primary:hover,
.configuration-app .local-card-actions .local-save:hover,
.configuration-app .instrument-local-actions .primary:hover,
.configuration-app .parameter-local-actions .primary:hover,
.configuration-app .group-local-actions .primary:hover{background:var(--mui-primary-hover)!important;box-shadow:0 2px 5px rgba(7,117,169,.20)!important;transform:none!important}
.configuration-app .topbar-copy .eyebrow{background:var(--mui-primary-soft)!important;color:#076893!important;box-shadow:none!important;text-shadow:none!important}
.configuration-app .instrument-launcher-row{width:min(1240px,calc(100% - 32px))!important;margin:0 auto 16px!important;display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:12px!important;justify-content:center!important}
.configuration-app .instrument-launcher{min-height:78px!important;padding:13px 14px!important;border:1px solid var(--mui-border-soft)!important;border-radius:var(--mui-r-md)!important;background:var(--mui-panel)!important;color:var(--mui-text)!important;box-shadow:none!important;transform:none!important;transition:background-color 160ms var(--adq-motion),border-color 160ms var(--adq-motion)!important}
.configuration-app .instrument-launcher:hover{background:var(--mui-panel-strong)!important;border-color:rgba(7,139,198,.30)!important;box-shadow:none!important;transform:none!important}
.configuration-app .instrument-launcher:active{transform:none!important}
.configuration-app .instrument-launcher.active{background:color-mix(in srgb,var(--mui-panel-strong) 88%,var(--mui-primary) 12%)!important;border-color:rgba(7,139,198,.42)!important;box-shadow:0 0 0 1px rgba(7,139,198,.10)!important}
.configuration-app .modern-instrument-setup,.configuration-app .alarm-section,.configuration-app .group-section,.configuration-app .parameter-binary-layout,.configuration-app .parameter-configuration-section,.configuration-app .container-grouping-card,.configuration-app .instrument-role-container{
  background:var(--mui-panel-strong)!important;border-color:var(--mui-border-soft)!important;border-image:none!important;box-shadow:none!important
}
.configuration-app .instrument-identity-choice .choice-trigger,.configuration-app .instrument-identity-choice .choice-option.selected{background:var(--mui-input)!important;box-shadow:none!important}
.service-manager-shell .dock-item[data-dock].active{background:var(--mui-elevated)!important;color:#0679ad!important;border-color:rgba(7,139,198,.20)!important;box-shadow:0 2px 7px rgba(28,48,62,.08)!important}
.service-manager-shell .dock-item[data-dock] .icon{color:currentColor!important}
.service-primary-console,.service-database-panel,.service-activity-panel,.reliability-strip,.operations-strip{background:var(--mui-panel-strong)!important;color:var(--mui-text)!important;border-color:var(--mui-border-soft)!important;box-shadow:var(--mui-shadow-1)!important}
.service-primary-console *{color:inherit}
.service-orb .orb-ring,.service-orb .orb-core{background:var(--mui-inset)!important;border-color:var(--mui-border-soft)!important;box-shadow:none!important}
.activity-list{background:var(--mui-inset)!important;box-shadow:none!important}
.analysis-result-state{background:var(--mui-panel-strong)!important;color:var(--mui-text-2)!important}
.analysis-result-state strong{color:var(--mui-text)!important}
.analysis-empty-icon{background:var(--mui-primary-soft)!important;color:#0679ad!important;border-color:rgba(7,139,198,.20)!important;box-shadow:none!important}
.analysis-command-status{background:transparent!important}
@media(max-width:1080px){.configuration-app .instrument-launcher-row{grid-template-columns:repeat(3,minmax(0,1fr))!important}}
@media(max-width:720px){.configuration-app .instrument-launcher-row{grid-template-columns:1fr!important;width:100%!important}}

/* AESST DAS UI6.1 — India light operator baseline. Final shared geometry authority. */
:root,html[data-theme="light"],html[data-aesstdas-ui="6"]{
  --ui6-canvas:#F3F7FB;
  --ui6-surface:#FFFFFF;
  --ui6-surface-soft:#F8FBFE;
  --ui6-surface-muted:#EEF5FA;
  --ui6-border:#D9E6F2;
  --ui6-text:#16324A;
  --ui6-text-muted:#607D96;
  --ui6-primary:#2563EB;
  --ui6-success:#16A34A;
  --ui6-warning:#F59E0B;
  --ui6-error:#EF4444;
  --ui6-secondary:#8B5CF6;
  --ui6-info:#06B6D4;
  --ui6-accent:#EC4899;
  --mui-canvas:var(--ui6-canvas);
  --mui-shell:#FFFFFF;
  --mui-panel:#F8FBFE;
  --mui-panel-strong:#FFFFFF;
  --mui-elevated:#FFFFFF;
  --mui-inset:#EEF5FA;
  --mui-input:#F7FAFD;
  --mui-border:rgba(80,112,138,.28);
  --mui-border-soft:rgba(80,112,138,.16);
  --mui-text:var(--ui6-text);
  --mui-text-2:var(--ui6-text-muted);
  --mui-text-3:#7890A4;
  --mui-primary:var(--ui6-primary);
  --mui-primary-hover:#1D4ED8;
  --mui-primary-soft:rgba(37,99,235,.10);
  --mui-success:var(--ui6-success);
  --mui-success-soft:rgba(22,163,74,.10);
  --mui-warning:var(--ui6-warning);
  --mui-warning-soft:rgba(245,158,11,.12);
  --mui-error:var(--ui6-error);
  --mui-error-soft:rgba(239,68,68,.10);
  --mui-secondary:var(--ui6-secondary);
  --mui-info:var(--ui6-info);
  --mui-accent:var(--ui6-accent);
  --mui-shadow-1:0 1px 2px rgba(31,58,82,.05),0 6px 18px rgba(31,58,82,.06);
  --mui-shadow-2:0 8px 28px rgba(31,58,82,.12);
}
html,body{background:var(--ui6-canvas)!important;}
.topbar,.top-glass,.service-commandbar,.protocol-header,.app-header,.commandbar{background:#FFFFFF!important;}
.glass-card,.card,.panel,.studio-panel,.service-primary-console,.service-database-panel,.service-activity-panel,
.reliability-strip,.operation-summary,.analysis-workspace-shell,.analysis-group-card,.tabular-toolbar,.tabular-content,
.live-tiles-card,.trend-workspace-card,.dashboard-live-data-card,.modal,.auth-modal,.connection-card,.instrument-card,
.config-card,.workspace-card,.control-card,.device-card{background:var(--ui6-surface)!important;}
.modal-backdrop{position:fixed!important;inset:0!important;display:grid!important;place-items:center!important;overflow:auto!important;padding:24px!important;z-index:20000!important;background:rgba(40,72,98,.22)!important;}
.modal,.auth-modal{position:relative!important;inset:auto!important;margin:auto!important;max-width:min(92vw,680px)!important;max-height:calc(100dvh - 48px)!important;overflow:auto!important;}
.app-dock,.bottom-dock,.dashboard-dock,.service-dock,.dock{position:fixed!important;left:50%!important;right:auto!important;bottom:18px!important;transform:translateX(-50%)!important;width:min(92vw,980px)!important;margin:0!important;justify-content:center!important;z-index:1100!important;background:rgba(255,255,255,.96)!important;border:1px solid var(--ui6-border)!important;border-radius:18px!important;box-shadow:0 12px 34px rgba(31,58,82,.12)!important;}
.account-control,.account-controls,.user-control,.auth-control{display:inline-flex!important;align-items:center!important;justify-content:flex-end!important;gap:10px!important;min-width:0!important;position:relative!important;inset:auto!important;}
.navigation-card-grid,.station-launcher-grid,.instrument-launcher-row,.launcher-grid,.navigation-grid{width:min(100%,1360px)!important;margin-inline:auto!important;justify-content:center!important;align-items:stretch!important;}
.navigation-card,.station-launcher,.instrument-launcher,.launcher-card{min-width:0!important;align-self:stretch!important;}
.status-ok,.status-valid,.chip-success{color:#0B6E34!important;background:rgba(22,163,74,.10)!important;border-color:rgba(22,163,74,.25)!important;}
.status-warning,.chip-warning{color:#9A5B00!important;background:rgba(245,158,11,.12)!important;border-color:rgba(245,158,11,.28)!important;}
.status-error,.chip-error,.danger{color:#B42318!important;background:rgba(239,68,68,.10)!important;border-color:rgba(239,68,68,.25)!important;}
.status-info,.chip-info{color:#08758C!important;background:rgba(6,182,212,.10)!important;border-color:rgba(6,182,212,.25)!important;}
.status-secondary,.chip-secondary{color:#6D28D9!important;background:rgba(139,92,246,.10)!important;border-color:rgba(139,92,246,.25)!important;}
.status-accent,.chip-accent{color:#BE185D!important;background:rgba(236,72,153,.09)!important;border-color:rgba(236,72,153,.24)!important;}

/* UI6.1 centered variable-count Configuration navigation rows. */
.configuration-app .station-config-launchers{display:flex!important;flex-wrap:wrap!important;justify-content:center!important;align-items:stretch!important;gap:14px!important;width:min(1120px,calc(100% - 32px))!important;margin:0 auto 16px!important;grid-template-columns:none!important}
.configuration-app .station-config-launchers>.station-config-launcher{flex:0 1 250px!important;width:min(100%,250px)!important;min-width:210px!important}
.configuration-app .instrument-launcher-row{display:flex!important;flex-wrap:wrap!important;justify-content:center!important;align-items:stretch!important;gap:12px!important;width:min(1240px,calc(100% - 32px))!important;margin:0 auto 16px!important;grid-template-columns:none!important}
.configuration-app .instrument-launcher-row>.instrument-launcher{flex:0 1 230px!important;width:min(100%,230px)!important;min-width:200px!important}
@media(max-width:720px){
  .configuration-app .station-config-launchers,.configuration-app .instrument-launcher-row{width:100%!important}
  .configuration-app .station-config-launchers>.station-config-launcher,.configuration-app .instrument-launcher-row>.instrument-launcher{flex:1 1 100%!important;width:100%!important;min-width:0!important}
}

/* UI6.1: dock wrapper is geometry-neutral; the dock itself owns viewport positioning. */
.dock-wrap{position:static!important;left:auto!important;right:auto!important;bottom:auto!important;top:auto!important;transform:none!important;width:auto!important;max-width:none!important;margin:0!important;padding:0!important;background:transparent!important;border:0!important;box-shadow:none!important;pointer-events:none!important}
.dock-wrap>.dock{pointer-events:auto!important}

/* AESST DAS UI6.2 — hidden-state + destructive-dialog hotfix.
   Keep this at the end of the final visual authority: author !important display
   rules must never override the semantic HTML hidden attribute. */
[hidden]{display:none!important}
.modal-backdrop[hidden]{display:none!important}

.service-manager-shell #service-db-delete-modal{padding:24px!important}
.service-manager-shell .destructive-confirmation{
  width:min(520px,calc(100vw - 40px))!important;
  padding:24px!important;
  border:1px solid rgba(180,35,24,.18)!important;
  border-radius:18px!important;
  background:#fff!important;
  box-shadow:0 24px 64px rgba(31,58,82,.20)!important;
  overflow:visible!important;
}
.service-manager-shell .destructive-modal-head{display:flex!important;align-items:flex-start!important;justify-content:space-between!important;gap:18px!important;margin-bottom:8px!important}
.service-manager-shell .destructive-modal-head h2{margin:6px 0 0!important;font-size:24px!important;line-height:1.15!important;letter-spacing:-.025em!important}
.service-manager-shell .danger-text{color:#B42318!important}
.service-manager-shell .modal-icon-close{
  flex:0 0 auto!important;width:36px!important;height:36px!important;min-height:36px!important;padding:0!important;
  display:grid!important;place-items:center!important;border:1px solid var(--ui6-border)!important;border-radius:10px!important;
  background:#F8FBFE!important;color:#607D96!important;font:500 24px/1 "Segoe UI",sans-serif!important;box-shadow:none!important
}
.service-manager-shell .modal-icon-close:hover{background:#EEF5FA!important;color:#16324A!important}
.service-manager-shell .destructive-confirmation>#service-db-delete-description{margin:0 0 18px!important;font-size:13px!important;line-height:1.55!important;color:var(--ui6-text-muted)!important}
.service-manager-shell .destructive-confirm-field{display:grid!important;gap:8px!important;margin:0!important;color:var(--ui6-text)!important;font-size:12px!important;font-weight:600!important}
.service-manager-shell .destructive-confirm-field>span{display:block!important}
.service-manager-shell #service-db-delete-confirm{width:100%!important;min-height:44px!important;font:600 13px/1.3 ui-monospace,SFMono-Regular,Consolas,monospace!important;letter-spacing:.04em!important}
.service-manager-shell .destructive-inline-error{margin:10px 0 0!important;padding:9px 11px!important;border:1px solid rgba(239,68,68,.22)!important;border-radius:10px!important;background:rgba(239,68,68,.07)!important;color:#B42318!important;font-size:11px!important;line-height:1.4!important}
.service-manager-shell .destructive-modal-actions{display:flex!important;justify-content:flex-end!important;gap:8px!important;margin-top:20px!important;padding-top:16px!important;border-top:1px solid var(--ui6-border)!important}
.service-manager-shell .destructive-modal-actions .touch-button{min-width:110px!important}
.service-manager-shell .destructive-modal-actions .touch-button.danger{background:#FFF1F2!important;color:#B42318!important;border-color:rgba(239,68,68,.30)!important}
.service-manager-shell .destructive-modal-actions .touch-button.danger:not(:disabled):hover{background:#FEE2E2!important;border-color:rgba(220,38,38,.38)!important}
.service-manager-shell .destructive-modal-actions .touch-button:disabled{opacity:.46!important;cursor:not-allowed!important}
@media(max-width:560px){
  .service-manager-shell #service-db-delete-modal{padding:14px!important}
  .service-manager-shell .destructive-confirmation{width:100%!important;padding:20px!important}
  .service-manager-shell .destructive-modal-actions{display:grid!important;grid-template-columns:1fr!important}
  .service-manager-shell .destructive-modal-actions .touch-button{width:100%!important}
}


/* ======================================================================
   LEGACY MIGRATION SOURCE: src/daq/webui/shared/approved_ui63.css
   Consolidated into the single universal Project 00 stylesheet.
   ====================================================================== */
/* AESST DAS 4.20.62 UI6.3 — Approved light-theme parity layer.
   Visual reference: 2026-09-21 approved Clean Light Theme montage.
   This stylesheet intentionally loads LAST and only changes presentation/layout. */
:root,html[data-theme="light"]{
  --approved-bg:#f4f9fd;
  --approved-surface:#ffffff;
  --approved-soft:#f7fbff;
  --approved-soft-blue:#eef7ff;
  --approved-border:#d9e7f3;
  --approved-border-strong:#c8dceb;
  --approved-text:#102f4b;
  --approved-muted:#5d7b96;
  --approved-primary:#1677f2;
  --approved-primary-soft:#e8f3ff;
  --approved-success:#18a957;
  --approved-success-soft:#e7f9ef;
  --approved-warning:#f3a20b;
  --approved-danger:#ef4c57;
  --approved-info:#09aeca;
  --approved-violet:#8055ef;
  --approved-pink:#ef3c8c;
  --approved-shadow:0 8px 24px rgba(44,86,121,.07);
  --approved-shadow-soft:0 2px 10px rgba(44,86,121,.055);
  --mui-canvas:var(--approved-bg);
  --mui-shell:var(--approved-surface);
  --mui-panel:var(--approved-soft);
  --mui-panel-strong:var(--approved-surface);
  --mui-elevated:var(--approved-surface);
  --mui-inset:var(--approved-soft-blue);
  --mui-input:#fbfdff;
  --mui-border:rgba(86,122,151,.26);
  --mui-border-soft:rgba(86,122,151,.16);
  --mui-text:var(--approved-text);
  --mui-text-2:var(--approved-muted);
  --mui-primary:var(--approved-primary);
  --mui-primary-hover:#0f66da;
}
html[data-theme="light"],html[data-theme="light"] body{background:var(--approved-bg)!important;color:var(--approved-text)!important}
html[data-theme="light"] body{font-family:"Segoe UI Variable Text","Segoe UI",Inter,system-ui,sans-serif!important;font-size:12px!important}
[hidden]{display:none!important}

/* Reduce the old oversized/animated system. */
html[data-theme="light"] .glass-card,
html[data-theme="light"] .card,
html[data-theme="light"] .panel,
html[data-theme="light"] .service-commandbar,
html[data-theme="light"] .config-topbar,
html[data-theme="light"] .top-glass,
html[data-theme="light"] .protocol-header,
html[data-theme="light"] .service-primary-console,
html[data-theme="light"] .service-database-panel,
html[data-theme="light"] .service-activity-panel,
html[data-theme="light"] .operation-summary,
html[data-theme="light"] .reliability-strip{
  background:var(--approved-surface)!important;
  background-image:none!important;
  border:1px solid var(--approved-border)!important;
  box-shadow:var(--approved-shadow-soft)!important;
  backdrop-filter:none!important;
}
html[data-theme="light"] .ui6-enter,
html[data-theme="light"] .premium-enter{animation:approved-enter .16s ease-out both!important}
@keyframes approved-enter{from{opacity:.72}to{opacity:1}}
html[data-theme="light"] *{scrollbar-color:#a8bdce transparent}
html[data-theme="light"] button{transform:none!important}

/* ---------------- Service Manager ---------------- */
html[data-theme="light"] body.service-manager-shell{overflow:hidden!important}
html[data-theme="light"] .service-manager-shell .app-shell{height:100dvh!important;display:flex!important;flex-direction:column!important;overflow:hidden!important}
html[data-theme="light"] .service-manager-shell .app-content{flex:1 1 auto!important;min-height:0!important;overflow:auto!important;padding:10px 12px 0!important}
html[data-theme="light"] .service-manager-shell .app-content-inner{width:min(1450px,100%)!important;margin:0 auto!important}
html[data-theme="light"] .service-manager-shell .service-page{display:grid!important;gap:10px!important}
html[data-theme="light"] .service-manager-shell .service-commandbar{min-height:70px!important;height:70px!important;border-radius:14px!important;padding:9px 13px!important;display:flex!important;align-items:center!important;justify-content:space-between!important;position:relative!important;overflow:visible!important}
html[data-theme="light"] .service-manager-shell .service-commandbar:after{display:none!important;content:none!important}
html[data-theme="light"] .service-manager-shell .suite-brand{display:flex!important;align-items:center!important;gap:10px!important;min-width:0!important}
html[data-theme="light"] .service-manager-shell .suite-brand-mark{width:40px!important;height:40px!important;filter:none!important;flex:0 0 auto!important}
html[data-theme="light"] .service-manager-shell .service-title-stack{display:grid!important;gap:1px!important;min-width:0!important}
html[data-theme="light"] .service-manager-shell .service-title-stack .brand-product{font-size:14px!important;line-height:1.05!important;font-weight:760!important;color:var(--approved-text)!important;letter-spacing:-.02em!important}
html[data-theme="light"] .service-manager-shell .service-title-stack .brand-company{font-size:9px!important;line-height:1.15!important;font-weight:650!important;color:var(--approved-text)!important}
html[data-theme="light"] .service-manager-shell .service-title-stack .brand-version{font-size:8px!important;line-height:1.15!important;font-weight:700!important;color:var(--approved-primary)!important}
html[data-theme="light"] .service-manager-shell #hero-status{display:inline-flex!important;position:absolute!important;left:50%!important;top:50%!important;transform:translate(-50%,-50%)!important;min-height:26px!important;padding:0 11px!important;border-radius:999px!important;font-size:9px!important;text-transform:none!important;letter-spacing:0!important}
html[data-theme="light"] .service-manager-shell .hero-session{display:flex!important;align-items:center!important;gap:7px!important}
html[data-theme="light"] .service-manager-shell .account-control{display:flex!important;align-items:center!important;gap:7px!important}
html[data-theme="light"] .service-manager-shell .account-identity{min-height:40px!important;padding:5px 10px 5px 39px!important;border:1px solid var(--approved-border)!important;border-radius:11px!important;background:var(--approved-soft)!important;display:grid!important;align-content:center!important;text-align:left!important;position:relative!important;min-width:124px!important}
html[data-theme="light"] .service-manager-shell .account-identity:before{content:""!important;position:absolute!important;left:8px!important;top:50%!important;transform:translateY(-50%)!important;width:24px!important;height:24px!important;border-radius:50%!important;background:var(--approved-primary-soft)!important;border:1px solid #cfe4fb!important}
html[data-theme="light"] .service-manager-shell .account-identity:after{content:"◉"!important;position:absolute!important;left:15px!important;top:50%!important;transform:translateY(-53%)!important;color:var(--approved-primary)!important;font-size:11px!important}
html[data-theme="light"] .service-manager-shell .session-user-chip .session-label{order:2!important;font-size:7px!important;text-transform:none!important;letter-spacing:0!important;color:var(--approved-muted)!important}
html[data-theme="light"] .service-manager-shell .session-user-chip strong{order:1!important;font-size:10px!important;color:var(--approved-text)!important}
html[data-theme="light"] .service-manager-shell .account-icon-action{width:36px!important;height:36px!important;min-width:36px!important;min-height:36px!important;padding:0!important;background:#fff!important;border:1px solid var(--approved-border)!important;border-radius:10px!important;box-shadow:none!important}
html[data-theme="light"] .service-manager-shell .account-icon-action svg{width:17px!important;height:17px!important;stroke:var(--approved-primary)!important}

html[data-theme="light"] .service-manager-shell .service-workbench{display:grid!important;grid-template-columns:196px minmax(0,1fr)!important;gap:10px!important;align-items:stretch!important;min-height:0!important}
html[data-theme="light"] .service-manager-shell .service-control-rail{display:block!important;min-width:0!important}
html[data-theme="light"] .service-manager-shell .service-primary-console{height:100%!important;min-height:205px!important;padding:12px!important;border-radius:13px!important;color:var(--approved-text)!important;overflow:hidden!important;position:relative!important}
html[data-theme="light"] .service-manager-shell .service-primary-console:after{display:none!important}
html[data-theme="light"] .service-manager-shell .console-head{display:block!important;margin:0 0 8px!important}
html[data-theme="light"] .service-manager-shell .console-head .panel-kicker{font-size:11px!important;letter-spacing:0!important;text-transform:none!important;color:var(--approved-text)!important;font-weight:760!important}
html[data-theme="light"] .service-manager-shell .console-head h2{display:none!important}
html[data-theme="light"] .service-manager-shell #service-state{position:absolute!important;left:83px!important;top:47px!important;border:0!important;background:transparent!important;padding:0!important;min-height:0!important;font-size:10px!important;color:var(--approved-success)!important;font-weight:760!important}
html[data-theme="light"] .service-manager-shell .runtime-console{display:grid!important;grid-template-columns:58px minmax(0,1fr)!important;align-items:center!important;gap:10px!important;margin:0 0 7px!important;padding:4px 0 5px!important;border:0!important}
html[data-theme="light"] .service-manager-shell .service-orb{display:grid!important;place-items:center!important}
html[data-theme="light"] .service-manager-shell .orb-ring{width:56px!important;height:56px!important;border-radius:16px!important;background:var(--approved-success-soft)!important;border:0!important;box-shadow:none!important}
html[data-theme="light"] .service-manager-shell .orb-core{width:40px!important;height:40px!important;border-radius:50%!important;background:linear-gradient(145deg,#1fcf75,#0ea85a)!important;border:0!important;box-shadow:0 5px 14px rgba(24,169,87,.22)!important;position:relative!important}
html[data-theme="light"] .service-manager-shell .orb-core:before{content:""!important;width:0!important;height:0!important;border-top:8px solid transparent!important;border-bottom:8px solid transparent!important;border-left:12px solid #fff!important;margin-left:3px!important}
html[data-theme="light"] .service-manager-shell .orb-state-dot{display:none!important}
html[data-theme="light"] .service-manager-shell .runtime-copy{display:grid!important;gap:1px!important;min-width:0!important}
html[data-theme="light"] .service-manager-shell .runtime-label{font-size:8px!important;text-transform:none!important;letter-spacing:0!important;color:var(--approved-muted)!important}
html[data-theme="light"] .service-manager-shell .runtime-copy>#metric-runtime{display:none!important}
html[data-theme="light"] .service-manager-shell .runtime-copy>#metric-runtime-caption{font-size:9px!important;color:var(--approved-text)!important;font-weight:650!important}
html[data-theme="light"] .service-manager-shell .runtime-detail-title{font-size:9px!important;color:var(--approved-text)!important;margin:3px 0 0!important}
html[data-theme="light"] .service-manager-shell .runtime-detail{font-size:8px!important;line-height:1.32!important;color:var(--approved-muted)!important}
html[data-theme="light"] .service-manager-shell .service-actions{display:grid!important;grid-template-columns:1fr 58px!important;gap:6px!important;margin-top:7px!important}
html[data-theme="light"] .service-manager-shell .service-primary-console .touch-button{min-height:30px!important;height:30px!important;padding:0 8px!important;border-radius:8px!important;font-size:9px!important}
html[data-theme="light"] .service-manager-shell .service-primary-console .touch-button.primary{background:#fff1f3!important;border-color:#ffacb3!important;color:#d9273b!important;box-shadow:none!important}
html[data-theme="light"] .service-manager-shell .service-primary-console .touch-button:not(.primary){background:#fff!important;color:var(--approved-text)!important;border-color:var(--approved-border-strong)!important}

html[data-theme="light"] .service-manager-shell .service-operations-pane{display:grid!important;grid-template-rows:auto minmax(132px,1fr)!important;gap:10px!important;min-width:0!important;min-height:0!important}
html[data-theme="light"] .service-manager-shell .operations-strip{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:10px!important;background:transparent!important;border:0!important;box-shadow:none!important;overflow:visible!important}
html[data-theme="light"] .service-manager-shell .operation-summary{min-height:70px!important;padding:10px 10px 9px 52px!important;border-radius:12px!important;position:relative!important;display:grid!important;align-content:center!important;gap:1px!important;overflow:visible!important}
html[data-theme="light"] .service-manager-shell .operation-summary:before{content:""!important;position:absolute!important;left:10px!important;top:12px!important;width:32px!important;height:32px!important;border-radius:9px!important;background:var(--approved-primary-soft)!important;border:0!important}
html[data-theme="light"] .service-manager-shell .operation-summary:after{position:absolute!important;left:20px!important;top:19px!important;font-size:15px!important;font-weight:900!important;color:var(--approved-primary)!important}
html[data-theme="light"] .service-manager-shell .database-summary:before{background:#e9faf2!important}
html[data-theme="light"] .service-manager-shell .database-summary:after{content:"≡"!important;color:#12b96d!important;transform:rotate(90deg)!important;left:21px!important;top:18px!important}
html[data-theme="light"] .service-manager-shell .api-summary:after{content:"✦"!important}
html[data-theme="light"] .service-manager-shell .config-summary:before{background:#f0ebff!important}
html[data-theme="light"] .service-manager-shell .config-summary:after{content:"▣"!important;color:var(--approved-violet)!important}
html[data-theme="light"] .service-manager-shell .summary-label{font-size:8px!important;text-transform:none!important;letter-spacing:0!important;color:var(--approved-muted)!important;font-weight:700!important;margin:0!important}
html[data-theme="light"] .service-manager-shell .operation-summary strong{font-size:12px!important;line-height:1.2!important;color:var(--approved-text)!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
html[data-theme="light"] .service-manager-shell .operation-summary>span:last-of-type{font-size:8px!important;color:var(--approved-muted)!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
html[data-theme="light"] .service-manager-shell #service-db-state{position:absolute!important;right:8px!important;top:7px!important;font-size:7px!important;min-height:20px!important;padding:0 6px!important}
html[data-theme="light"] .service-manager-shell #service-db-name{display:none!important}
html[data-theme="light"] .service-manager-shell .service-db-actions{display:flex!important;gap:4px!important;flex-wrap:wrap!important;margin-top:4px!important}
html[data-theme="light"] .service-manager-shell .service-db-actions:empty{display:none!important}
html[data-theme="light"] .service-manager-shell .service-db-actions .touch-button{min-height:22px!important;height:22px!important;padding:0 7px!important;border-radius:6px!important;font-size:7px!important;background:#fff!important;box-shadow:none!important}
html[data-theme="light"] .service-manager-shell .service-db-actions .danger{color:#c73647!important;background:#fff4f5!important}

html[data-theme="light"] .service-manager-shell .service-activity-panel{min-height:132px!important;padding:10px!important;border-radius:12px!important;display:flex!important;flex-direction:column!important}
html[data-theme="light"] .service-manager-shell .service-activity-panel .section-head{margin:0 0 6px!important;align-items:center!important}
html[data-theme="light"] .service-manager-shell .service-activity-panel .section-head .panel-kicker,
html[data-theme="light"] .service-manager-shell .service-activity-panel .section-head p{display:none!important}
html[data-theme="light"] .service-manager-shell .service-activity-panel .section-head h2{font-size:12px!important;margin:0!important}
html[data-theme="light"] .service-manager-shell .service-activity-panel .status-chip{min-height:22px!important;padding:0 7px!important;font-size:7px!important;color:#087b43!important;background:#e8f8ef!important;border-color:#ccefdc!important}
html[data-theme="light"] .service-manager-shell .activity-list{flex:1 1 auto!important;min-height:86px!important;max-height:190px!important;border:1px solid #dfeaf3!important;border-radius:8px!important;background:#f6fbff!important;overflow:auto!important;box-shadow:none!important}
html[data-theme="light"] .service-manager-shell .activity-row{grid-template-columns:9px 58px minmax(0,1fr)!important;min-height:24px!important;padding:4px 8px!important;gap:6px!important;font-size:8px!important;border-bottom:1px solid #e6eff6!important}
html[data-theme="light"] .service-manager-shell .timeline-dot{width:6px!important;height:6px!important;box-shadow:0 0 0 2px rgba(22,119,242,.10)!important}
html[data-theme="light"] .service-manager-shell .empty-state{min-height:74px!important;font-size:8px!important}

html[data-theme="light"] .service-manager-shell #startup-reliability{margin-top:0!important;display:grid!important;grid-template-columns:minmax(130px,.7fr) minmax(210px,1fr) minmax(210px,1fr) auto!important;gap:7px!important;padding:8px!important;border-radius:12px!important}
html[data-theme="light"] .service-manager-shell #startup-reliability[hidden]{display:none!important}
html[data-theme="light"] .service-manager-shell .startup-option{padding:7px 8px!important;border-radius:9px!important}
html[data-theme="light"] .service-manager-shell .startup-option strong{font-size:9px!important}
html[data-theme="light"] .service-manager-shell .startup-option small{font-size:7px!important}
html[data-theme="light"] .service-manager-shell .reliability-title h2{font-size:11px!important}
html[data-theme="light"] .service-manager-shell .reliability-quit{min-height:36px!important;height:100%!important;font-size:9px!important}

html[data-theme="light"] .service-manager-shell #service-dock{position:relative!important;left:auto!important;right:auto!important;bottom:auto!important;transform:none!important;width:min(520px,calc(100vw - 24px))!important;margin:8px auto 10px!important;pointer-events:auto!important;flex:0 0 auto!important}
html[data-theme="light"] .service-manager-shell #service-dock .dock{position:relative!important;left:auto!important;bottom:auto!important;transform:none!important;width:100%!important;height:54px!important;min-height:54px!important;margin:0!important;padding:4px!important;display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:3px!important;border-radius:13px!important;background:#fff!important;border:1px solid var(--approved-border)!important;box-shadow:var(--approved-shadow)!important}
html[data-theme="light"] .service-manager-shell #service-dock .dock-item{height:44px!important;min-height:44px!important;padding:2px 6px!important;border:0!important;border-radius:10px!important;background:transparent!important;box-shadow:none!important;display:grid!important;grid-template-rows:21px 11px!important;place-items:center!important;gap:2px!important;color:var(--approved-text)!important}
html[data-theme="light"] .service-manager-shell #service-dock .dock-item.active{background:#e9f4ff!important;color:var(--approved-primary)!important;box-shadow:none!important}
html[data-theme="light"] .service-manager-shell #service-dock .dock-item .icon,
html[data-theme="light"] .service-manager-shell #service-dock .dock-item .icon svg{width:18px!important;height:18px!important;stroke:currentColor!important}
html[data-theme="light"] .service-manager-shell #service-dock .dock-item .label{font-size:7px!important;font-weight:700!important;white-space:nowrap!important}

/* Approved compact sign-in dialog. */
html[data-theme="light"] .modal-backdrop{background:rgba(64,95,120,.22)!important;backdrop-filter:blur(4px)!important;padding:14px!important}
html[data-theme="light"] .service-manager-shell .clean-auth-modal,
html[data-theme="light"] .configuration-app .clean-auth-modal,
html[data-theme="light"] .dashboard-shell .clean-auth-modal{width:min(360px,calc(100vw - 28px))!important;max-width:360px!important;max-height:calc(100dvh - 28px)!important;padding:18px!important;border-radius:16px!important;overflow:hidden!important;background:#fff!important;border:1px solid var(--approved-border)!important;box-shadow:0 20px 55px rgba(39,73,100,.20)!important}
html[data-theme="light"] .clean-auth-modal .auth-brand{display:flex!important;align-items:center!important;gap:8px!important;margin:0 0 12px!important}
html[data-theme="light"] .clean-auth-modal .auth-brand img{width:36px!important;height:36px!important;border-radius:9px!important}
html[data-theme="light"] .clean-auth-modal .auth-brand span{font-size:11px!important;font-weight:800!important}
html[data-theme="light"] .clean-auth-modal .auth-brand small{font-size:7px!important;color:var(--approved-muted)!important}
html[data-theme="light"] .clean-auth-modal h2{font-size:20px!important;line-height:1.1!important;margin:0 0 6px!important;letter-spacing:-.025em!important}
html[data-theme="light"] .clean-auth-modal>p{font-size:10px!important;line-height:1.4!important;margin:0 0 12px!important;color:var(--approved-muted)!important}
html[data-theme="light"] .clean-auth-modal .bootstrap-credentials-hint{display:none!important}
html[data-theme="light"] .clean-auth-modal .auth-fields{display:grid!important;grid-template-columns:1fr!important;gap:8px!important}
html[data-theme="light"] .clean-auth-modal .auth-fields label{display:grid!important;gap:4px!important;font-size:8px!important;color:var(--approved-muted)!important}
html[data-theme="light"] .clean-auth-modal .auth-fields input{width:100%!important;min-height:36px!important;height:36px!important;padding:7px 10px!important;border-radius:8px!important;background:#f8fbfe!important;font-size:10px!important}
html[data-theme="light"] .clean-auth-modal .auth-meta-row{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:8px!important;margin:8px 0 0!important;font-size:7px!important;color:var(--approved-muted)!important}
html[data-theme="light"] .clean-auth-modal .auth-meta-row label{display:flex!important;align-items:center!important;gap:5px!important;font-weight:500!important}
html[data-theme="light"] .clean-auth-modal .auth-meta-row input{width:12px!important;height:12px!important;min-height:12px!important;padding:0!important;appearance:auto!important}
html[data-theme="light"] .clean-auth-modal .auth-help{border:0!important;background:transparent!important;color:var(--approved-primary)!important;min-height:0!important;padding:0!important;font-size:7px!important;box-shadow:none!important}
html[data-theme="light"] .clean-auth-modal .auth-actions{display:grid!important;grid-template-columns:1fr!important;gap:6px!important;margin-top:10px!important}
html[data-theme="light"] .clean-auth-modal .auth-submit{min-height:36px!important;height:36px!important;border-radius:8px!important;font-size:10px!important}
html[data-theme="light"] .clean-auth-modal .auth-cancel{min-height:30px!important;height:30px!important;border:0!important;background:transparent!important;color:var(--approved-muted)!important;font-size:8px!important;box-shadow:none!important}
html[data-theme="light"] .clean-auth-modal .auth-error{font-size:8px!important;margin:7px 0 0!important;padding:7px 8px!important;border-radius:7px!important}

/* ---------------- Configuration ---------------- */
html[data-theme="light"] body.configuration-app{overflow:hidden!important}
html[data-theme="light"] .configuration-app .app-shell{height:100dvh!important;display:flex!important;flex-direction:column!important;overflow:hidden!important}
html[data-theme="light"] .configuration-app .config-topbar{flex:0 0 auto!important;margin:9px 12px 0!important;border-radius:14px!important;background:#fff!important;border:1px solid var(--approved-border)!important;box-shadow:var(--approved-shadow-soft)!important}
html[data-theme="light"] .configuration-app .topbar-inner{min-height:66px!important;height:66px!important;padding:8px 12px!important;display:flex!important;align-items:center!important;gap:12px!important}
html[data-theme="light"] .configuration-app .suite-brand{display:flex!important;align-items:center!important;gap:10px!important;min-width:0!important}
html[data-theme="light"] .configuration-app .suite-brand-mark{width:39px!important;height:39px!important}
html[data-theme="light"] .configuration-app .suite-brand-copy{display:grid!important;gap:0!important}
html[data-theme="light"] .configuration-app .suite-brand-copy strong{font-size:14px!important;line-height:1.05!important;color:var(--approved-text)!important}
html[data-theme="light"] .configuration-app .suite-brand-copy .company-name{font-size:8px!important;font-weight:650!important;color:var(--approved-text)!important}
html[data-theme="light"] .configuration-app .suite-brand-copy .config-version{font-size:7px!important;font-weight:700!important;color:var(--approved-primary)!important}
html[data-theme="light"] .configuration-app .topbar-context{display:none!important}
html[data-theme="light"] .configuration-app .topbar-actions{margin-left:auto!important}
html[data-theme="light"] .configuration-app .account-control{display:flex!important;align-items:center!important;gap:7px!important}
html[data-theme="light"] .configuration-app .account-identity{min-height:40px!important;padding:5px 10px!important;border:1px solid var(--approved-border)!important;border-radius:11px!important;background:var(--approved-soft)!important;display:grid!important;text-align:right!important}
html[data-theme="light"] .configuration-app .session-user-chip strong{font-size:9px!important;order:1!important}
html[data-theme="light"] .configuration-app .session-user-chip .session-label{font-size:7px!important;order:2!important;text-transform:none!important;letter-spacing:0!important}
html[data-theme="light"] .configuration-app .account-icon-action{width:36px!important;height:36px!important;min-width:36px!important;min-height:36px!important;padding:0!important;background:#fff!important;border:1px solid var(--approved-border)!important;border-radius:10px!important;box-shadow:none!important}
html[data-theme="light"] .configuration-app .config-content{flex:1 1 auto!important;min-height:0!important;overflow:auto!important;padding:9px 12px 0!important}
html[data-theme="light"] .configuration-app #config-content{width:min(1480px,100%)!important;margin:0 auto!important;padding-bottom:4px!important}
html[data-theme="light"] .configuration-app .station-config-launchers{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:9px!important;width:100%!important;max-width:none!important;margin:0 0 9px!important}
html[data-theme="light"] .configuration-app .station-config-launcher{min-height:60px!important;height:60px!important;padding:8px 10px!important;border-radius:10px!important;background:#fff!important;border:1px solid var(--approved-border)!important;box-shadow:none!important;display:flex!important;align-items:center!important;gap:8px!important}
html[data-theme="light"] .configuration-app .station-config-launcher:hover{background:#f8fbff!important;border-color:#a8cdf3!important}
html[data-theme="light"] .configuration-app .station-config-launcher.active{background:#f1f8ff!important;border:1.5px solid #3a98f3!important;box-shadow:0 0 0 1px rgba(58,152,243,.08)!important}
html[data-theme="light"] .configuration-app .station-config-launcher-copy{display:grid!important;gap:1px!important}
html[data-theme="light"] .configuration-app .station-config-launcher-copy strong{font-size:10px!important}
html[data-theme="light"] .configuration-app .station-config-launcher-copy small{font-size:7px!important;line-height:1.25!important;color:var(--approved-muted)!important}
html[data-theme="light"] .configuration-app .station-config-panel,
html[data-theme="light"] .configuration-app .modern-instrument-setup,
html[data-theme="light"] .configuration-app .instrument-workspace-v2,
html[data-theme="light"] .configuration-app .alarm-section,
html[data-theme="light"] .configuration-app .group-section{width:100%!important;max-width:none!important;margin:0!important;border-radius:11px!important;padding:10px!important;background:#fff!important;border:1px solid var(--approved-border)!important;box-shadow:var(--approved-shadow-soft)!important}
html[data-theme="light"] .configuration-app .station-config-panel h2,
html[data-theme="light"] .configuration-app .section-title-inline{font-size:12px!important;margin:0 0 2px!important}
html[data-theme="light"] .configuration-app .station-config-panel p,
html[data-theme="light"] .configuration-app .subtle-copy{font-size:8px!important;line-height:1.3!important}
html[data-theme="light"] .configuration-app input,
html[data-theme="light"] .configuration-app select,
html[data-theme="light"] .configuration-app textarea,
html[data-theme="light"] .configuration-app .touch-input,
html[data-theme="light"] .configuration-app .touch-select,
html[data-theme="light"] .configuration-app .touch-field{min-height:34px!important;border-radius:7px!important;padding:6px 8px!important;font-size:9px!important;background:#fbfdff!important}
html[data-theme="light"] .configuration-app label,
html[data-theme="light"] .configuration-app .field{font-size:8px!important;gap:3px!important}
html[data-theme="light"] .configuration-app .instrument-launcher-row{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:9px!important;width:100%!important;max-width:none!important;margin:0 0 9px!important}
html[data-theme="light"] .configuration-app .instrument-launcher-row>.instrument-launcher{width:100%!important;min-width:0!important;min-height:60px!important;height:60px!important;padding:8px 10px!important;border-radius:10px!important;background:#fff!important;border:1px solid var(--approved-border)!important;box-shadow:none!important;display:grid!important;align-content:center!important}
html[data-theme="light"] .configuration-app .instrument-launcher-row>.instrument-launcher:hover{background:#f8fbff!important;border-color:#a8cdf3!important}
html[data-theme="light"] .configuration-app .instrument-launcher-row>.instrument-launcher.active{background:#eff7ff!important;border-color:#4e9ef2!important;box-shadow:none!important}
html[data-theme="light"] .configuration-app .instrument-launcher strong{font-size:9px!important}
html[data-theme="light"] .configuration-app .instrument-launcher small{font-size:7px!important;margin-top:2px!important}
html[data-theme="light"] .configuration-app .page-heading{margin:0 0 7px!important;align-items:center!important}
html[data-theme="light"] .configuration-app .page-heading h1{font-size:14px!important;margin:0!important}
html[data-theme="light"] .configuration-app .page-heading p{font-size:8px!important;margin:0!important}
html[data-theme="light"] .configuration-app .touch-button{min-height:32px!important;height:32px!important;padding:0 10px!important;border-radius:7px!important;font-size:8px!important}
html[data-theme="light"] .configuration-app #config-dock{position:relative!important;left:auto!important;right:auto!important;bottom:auto!important;transform:none!important;width:min(570px,calc(100vw - 24px))!important;margin:7px auto 9px!important;pointer-events:auto!important;flex:0 0 auto!important}
html[data-theme="light"] .configuration-app #config-dock .dock{position:relative!important;left:auto!important;bottom:auto!important;transform:none!important;width:100%!important;height:54px!important;min-height:54px!important;margin:0!important;padding:4px!important;display:grid!important;grid-template-columns:repeat(6,minmax(0,1fr))!important;gap:3px!important;border-radius:13px!important;background:#fff!important;border:1px solid var(--approved-border)!important;box-shadow:var(--approved-shadow)!important}
html[data-theme="light"] .configuration-app #config-dock .dock-item{height:44px!important;min-height:44px!important;padding:2px 4px!important;border:0!important;border-radius:10px!important;background:transparent!important;box-shadow:none!important;display:grid!important;grid-template-rows:20px 11px!important;place-items:center!important;gap:2px!important;color:var(--approved-text)!important}
html[data-theme="light"] .configuration-app #config-dock .dock-item.active{background:#e9f4ff!important;color:var(--approved-primary)!important}
html[data-theme="light"] .configuration-app #config-dock .dock-item .icon,
html[data-theme="light"] .configuration-app #config-dock .dock-item .icon svg{width:17px!important;height:17px!important}
html[data-theme="light"] .configuration-app #config-dock .dock-item .label{font-size:7px!important;line-height:1!important;white-space:nowrap!important}

/* ---------------- Dashboard ---------------- */
html[data-theme="light"] body{--approved-dock-h:56px}
html[data-theme="light"] #workspace.dashboard-shell{height:100dvh!important;min-height:0!important;display:flex!important;flex-direction:column!important;overflow:hidden!important;background:var(--approved-bg)!important}
html[data-theme="light"] .dashboard-shell .top-glass{position:relative!important;top:auto!important;flex:0 0 auto!important;margin:9px 12px 0!important;min-height:66px!important;height:66px!important;border-radius:14px!important;background:#fff!important;border:1px solid var(--approved-border)!important;box-shadow:var(--approved-shadow-soft)!important}
html[data-theme="light"] .dashboard-shell .top-inner{height:64px!important;min-height:64px!important;padding:8px 12px!important;display:flex!important;align-items:center!important}
html[data-theme="light"] .dashboard-shell .suite-brand{display:flex!important;align-items:center!important;gap:9px!important}
html[data-theme="light"] .dashboard-shell .suite-brand-mark{width:39px!important;height:39px!important}
html[data-theme="light"] .dashboard-shell .suite-brand-copy{display:grid!important;gap:0!important}
html[data-theme="light"] .dashboard-shell .suite-brand-copy strong{font-size:13px!important;line-height:1.05!important;color:var(--approved-text)!important}
html[data-theme="light"] .dashboard-shell .suite-brand-copy span{font-size:8px!important;color:var(--approved-text)!important;font-weight:650!important}
html[data-theme="light"] .dashboard-shell .station-copy{display:none!important}
html[data-theme="light"] .dashboard-shell .top-actions{margin-left:auto!important;display:flex!important;align-items:center!important;gap:7px!important}
html[data-theme="light"] .dashboard-shell #updated{display:inline-flex!important;min-height:26px!important;padding:0 10px!important;border-radius:999px!important;background:var(--approved-success-soft)!important;color:#087b43!important;border-color:#caefd9!important;font-size:8px!important}
html[data-theme="light"] .dashboard-shell #updated:before{content:"●"!important;margin-right:5px!important;font-size:6px!important}
html[data-theme="light"] .dashboard-shell #connection{display:none!important}
html[data-theme="light"] .dashboard-shell #clock{min-height:28px!important;padding:0 9px!important;display:flex!important;align-items:center!important;border:1px solid var(--approved-border)!important;border-radius:8px!important;background:#fff!important;font-size:8px!important;color:var(--approved-text)!important}
html[data-theme="light"] .dashboard-shell .dashboard-account .account-identity{min-height:30px!important;padding:4px 8px!important;border:1px solid var(--approved-border)!important;border-radius:8px!important;background:#fff!important;display:grid!important;text-align:right!important}
html[data-theme="light"] .dashboard-shell .dashboard-account .account-identity strong{font-size:8px!important}
html[data-theme="light"] .dashboard-shell .dashboard-account .account-identity span{font-size:6px!important}
html[data-theme="light"] .dashboard-shell .account-icon-action{width:30px!important;height:30px!important;min-width:30px!important;min-height:30px!important;padding:0!important;background:#fff!important;border:1px solid var(--approved-border)!important;border-radius:8px!important;box-shadow:none!important}
html[data-theme="light"] .dashboard-content{flex:1 1 auto!important;min-height:0!important;overflow:auto!important;padding:8px 12px 0!important}
html[data-theme="light"] .dashboard-inner{width:min(1480px,100%)!important;max-width:1480px!important;margin:0 auto!important;display:grid!important;gap:8px!important;padding-bottom:4px!important}
html[data-theme="light"] #overview{gap:8px!important}
html[data-theme="light"] #overview>.station-metrics,
html[data-theme="light"] #overview>#dashboard-live-data-card,
html[data-theme="light"] #overview>#regulatory-summary,
html[data-theme="light"] #overview>.overview-mode-tabs{display:none!important}
html[data-theme="light"] #live-tiles-section{padding:0!important;background:transparent!important;border:0!important;box-shadow:none!important;overflow:visible!important}
html[data-theme="light"] #live-tiles-section>.section-head{min-height:30px!important;margin:0 0 6px!important;display:flex!important;align-items:center!important}
html[data-theme="light"] #live-tiles-section>.section-head h2{font-size:12px!important;margin:0!important}
html[data-theme="light"] #live-tiles-section>.section-head #live-count{font-size:7px!important;min-height:21px!important;padding:0 7px!important}
html[data-theme="light"] .dashboard-live-toolbar{margin-left:auto!important;display:flex!important;align-items:center!important;gap:5px!important}
html[data-theme="light"] .dashboard-live-toolbar select{height:28px!important;min-height:28px!important;min-width:100px!important;padding:3px 26px 3px 8px!important;border-radius:7px!important;font-size:8px!important;background-position:calc(100% - 13px) 11px,calc(100% - 9px) 11px!important}
html[data-theme="light"] .dashboard-live-toolbar .overview-shortcut{width:28px!important;height:28px!important;min-height:28px!important;padding:0!important;border-radius:7px!important;background:#fff!important;color:var(--approved-primary)!important;border:1px solid var(--approved-border)!important;box-shadow:none!important;font-size:12px!important}
html[data-theme="light"] .station-live-grid{display:grid!important;grid-template-columns:repeat(var(--tile-columns,4),minmax(0,1fr))!important;gap:8px!important}
html[data-theme="light"] .station-live-grid .premium-live-tile{height:140px!important;min-height:140px!important;max-height:140px!important;padding:9px!important;border-radius:10px!important;background:color-mix(in srgb,var(--tile-color,var(--approved-primary)) 5%,#fff)!important;border:1px solid color-mix(in srgb,var(--tile-color,var(--approved-primary)) 32%,#dbe8f3)!important;border-top-width:1px!important;box-shadow:none!important;overflow:hidden!important;display:grid!important;grid-template-rows:auto auto 1fr auto!important;gap:3px!important}
html[data-theme="light"] .station-live-grid .tile-top{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:6px!important}
html[data-theme="light"] .station-live-grid .parameter{font-size:10px!important;font-weight:780!important;line-height:1.1!important}
html[data-theme="light"] .station-live-grid .tile-live-badge{display:inline-flex!important;align-items:center!important;gap:4px!important;min-height:18px!important;padding:0 6px!important;border-radius:999px!important;background:#e3f8ec!important;color:#0a8a48!important;font-size:6.5px!important;font-weight:750!important}
html[data-theme="light"] .station-live-grid .tile-live-badge:before{content:"●"!important;font-size:5px!important}
html[data-theme="light"] .station-live-grid .tile-live-badge.offline{background:#fff0f1!important;color:#d63649!important}
html[data-theme="light"] .station-live-grid .tile-reading-row{display:grid!important;grid-template-columns:minmax(0,1fr) 76px!important;align-items:end!important;gap:5px!important;min-height:47px!important}
html[data-theme="light"] .station-live-grid .reading{font-size:25px!important;line-height:1!important;font-weight:780!important;letter-spacing:-.035em!important;white-space:nowrap!important}
html[data-theme="light"] .station-live-grid .reading small{font-size:7px!important;font-weight:700!important;letter-spacing:0!important;margin-left:3px!important;color:var(--approved-text)!important}
html[data-theme="light"] .station-live-grid .tile-sparkline-wrap{height:42px!important;min-height:42px!important;max-height:42px!important;border:0!important;padding:0!important;align-self:end!important;position:relative!important;overflow:hidden!important}
html[data-theme="light"] .station-live-grid .tile-sparkline{width:100%!important;height:40px!important;max-height:40px!important}
html[data-theme="light"] .station-live-grid .tile-chart-overlay{display:none!important}
html[data-theme="light"] .station-live-grid .tile-meta{display:grid!important;gap:1px!important;min-width:0!important}
html[data-theme="light"] .station-live-grid .tile-meta .analyzer-name{font-size:7px!important;line-height:1.2!important;color:#466783!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
html[data-theme="light"] .station-live-grid .tile-meta .range-summary{font-size:6.5px!important;line-height:1.2!important;color:#617f99!important;white-space:nowrap!important}
html[data-theme="light"] .station-live-grid .tile-footer{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:5px!important}
html[data-theme="light"] .station-live-grid .comm-state{display:inline-flex!important;align-items:center!important;gap:4px!important;min-height:22px!important;padding:0 7px!important;border-radius:7px!important;background:#fff!important;border:1px solid var(--approved-border)!important;font-size:6.5px!important;font-weight:750!important;color:var(--approved-text)!important}
html[data-theme="light"] .station-live-grid .tile-dot{width:5px!important;height:5px!important;border-radius:50%!important}
html[data-theme="light"] .station-live-grid .tile-dot.comm-good{background:var(--approved-success)!important}
html[data-theme="light"] .station-live-grid .tile-dot.comm-bad{background:var(--approved-danger)!important}
html[data-theme="light"] .station-live-grid .tile-autocheck-indicator{position:static!important;width:auto!important;height:22px!important;min-height:22px!important;padding:0 7px!important;border-radius:7px!important;background:#e7f9ef!important;border:1px solid #c8eed9!important;color:#087b43!important;box-shadow:none!important;display:inline-flex!important;align-items:center!important;gap:4px!important;font-size:6.5px!important;font-weight:750!important}
html[data-theme="light"] .station-live-grid .tile-autocheck-indicator[hidden]{display:none!important}
html[data-theme="light"] .station-live-grid .tile-autocheck-indicator.fail{background:#fff0f1!important;border-color:#f7c8cd!important;color:#c62e41!important}
html[data-theme="light"] .station-live-grid .tile-autocheck-indicator.running{background:#fff7e7!important;border-color:#f7dfad!important;color:#aa6c00!important}
html[data-theme="light"] .station-live-grid .tile-autocheck-glyph{width:auto!important;height:auto!important;display:inline!important;font-size:6.5px!important;font-weight:800!important}
html[data-theme="light"] .station-live-grid .tile-hidden-specs{display:none!important}

html[data-theme="light"] #sidebar.dock-wrap{position:relative!important;left:auto!important;right:auto!important;bottom:auto!important;transform:none!important;flex:0 0 auto!important;width:min(520px,calc(100vw - 24px))!important;max-width:none!important;margin:7px auto 9px!important;pointer-events:auto!important}
html[data-theme="light"] #sidebar .dock{position:relative!important;left:auto!important;bottom:auto!important;transform:none!important;width:100%!important;height:54px!important;min-height:54px!important;margin:0!important;padding:4px!important;display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:3px!important;border-radius:13px!important;background:#fff!important;border:1px solid var(--approved-border)!important;box-shadow:var(--approved-shadow)!important}
html[data-theme="light"] #sidebar .dock-item{height:44px!important;min-height:44px!important;padding:2px 4px!important;border:0!important;border-radius:10px!important;background:transparent!important;box-shadow:none!important;display:grid!important;grid-template-rows:20px 11px!important;place-items:center!important;gap:2px!important;color:var(--approved-text)!important}
html[data-theme="light"] #sidebar .dock-item.active{background:#e9f4ff!important;color:var(--approved-primary)!important}
html[data-theme="light"] #sidebar .dock-item .nav-svg{width:17px!important;height:17px!important}
html[data-theme="light"] #sidebar .dock-item span{font-size:7px!important;font-weight:700!important;white-space:nowrap!important}
html[data-theme="light"] #sidebar .dock-item[data-page="connections"],
html[data-theme="light"] #sidebar .dock-item[data-page="alarms"],
html[data-theme="light"] #sidebar .dock-item[data-page="auto-check"]{display:none!important}

/* Analysis matching approved screenshot: compact mode tabs, left controls, large white plot. */
html[data-theme="light"] #data-analysis{gap:6px!important}
html[data-theme="light"] #data-analysis .page-heading{margin:0!important;align-items:center!important}
html[data-theme="light"] #data-analysis .page-heading h1{font-size:14px!important;margin:0!important}
html[data-theme="light"] #data-analysis .page-heading .eyebrow{display:none!important}
html[data-theme="light"] #data-analysis .page-heading p{font-size:7px!important;margin:1px 0 0!important}
html[data-theme="light"] .analysis-section-tabs{display:none!important}
html[data-theme="light"] .analysis-workspace-shell{min-height:0!important;padding:0!important;border:0!important;box-shadow:none!important;background:transparent!important;gap:5px!important;grid-template-rows:auto minmax(0,1fr)!important}
html[data-theme="light"] .analysis-mode-strip{height:32px!important;min-height:32px!important;padding:2px!important;border-radius:8px!important;background:#f5faff!important;border:1px solid var(--approved-border)!important;box-shadow:none!important;gap:2px!important;overflow:hidden!important}
html[data-theme="light"] .analysis-mode-chip{min-height:26px!important;height:26px!important;flex:1 1 0!important;padding:0 6px!important;border-radius:6px!important;font-size:7px!important}
html[data-theme="light"] .analysis-mode-chip.active{background:#e8f3ff!important;color:var(--approved-primary)!important;border-color:#bcdafa!important;box-shadow:none!important}
html[data-theme="light"] .analysis-mode-description{display:none!important}
html[data-theme="light"] .analysis-studio-grid{display:grid!important;grid-template-columns:255px minmax(0,1fr)!important;gap:7px!important;min-height:0!important}
html[data-theme="light"] .analysis-control-rail{display:block!important;min-width:0!important}
html[data-theme="light"] .analysis-command-bar{display:none!important}
html[data-theme="light"] .analysis-control-grid{display:grid!important;grid-template-columns:1fr!important;gap:5px!important;padding:8px!important;border-radius:9px!important;background:#fff!important;border:1px solid var(--approved-border)!important;box-shadow:none!important;max-height:none!important;overflow:visible!important}
html[data-theme="light"] .analysis-control-grid>label,
html[data-theme="light"] .analysis-control-field{font-size:7px!important;gap:3px!important;text-transform:none!important;letter-spacing:0!important}
html[data-theme="light"] .analysis-control-grid input,
html[data-theme="light"] .analysis-control-grid select,
html[data-theme="light"] .analysis-check-toggle{min-height:31px!important;height:31px!important;border-radius:6px!important;font-size:8px!important;padding:5px 8px!important}
html[data-theme="light"] .analysis-bottom-actions{grid-template-columns:1fr 1fr!important;gap:5px!important;margin-top:1px!important;padding-top:6px!important}
html[data-theme="light"] .analysis-bottom-actions .touch-button{min-height:30px!important;height:30px!important;font-size:8px!important}
html[data-theme="light"] .analysis-visualization-pane{min-height:0!important;gap:5px!important}
html[data-theme="light"] .analysis-summary{display:none!important}
html[data-theme="light"] .analysis-chart-stage{height:clamp(320px,calc(100dvh - 205px),650px)!important;min-height:320px!important;max-height:650px!important;border-radius:9px!important;padding:8px!important;background:#fff!important;border:1px solid var(--approved-border)!important;box-shadow:none!important}

/* Protocol Studio inherits the same approved clean chrome without changing workflow. */
html[data-theme="light"] body.protocol-studio-shell{background:var(--approved-bg)!important}
html[data-theme="light"] .protocol-header{margin:9px 12px 0!important;padding:9px 12px!important;border-radius:14px!important;min-height:66px!important}
html[data-theme="light"] .protocol-grid{padding:9px 12px 12px!important;gap:8px!important}
html[data-theme="light"] .protocol-studio-shell .glass-card{border-radius:10px!important;box-shadow:var(--approved-shadow-soft)!important}
html[data-theme="light"] .protocol-studio-shell input,
html[data-theme="light"] .protocol-studio-shell select,
html[data-theme="light"] .protocol-studio-shell textarea{min-height:34px!important;border-radius:7px!important;font-size:9px!important}
html[data-theme="light"] .protocol-studio-shell .touch-button{min-height:32px!important;border-radius:7px!important;font-size:8px!important}

/* Responsive behavior keeps the approved compact ratios while staying usable. */
@media(max-width:1100px){
  html[data-theme="light"] .service-manager-shell .service-workbench{grid-template-columns:180px minmax(0,1fr)!important}
  html[data-theme="light"] .configuration-app .instrument-launcher-row{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  html[data-theme="light"] .analysis-studio-grid{grid-template-columns:225px minmax(0,1fr)!important}
  html[data-theme="light"] .station-live-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:760px){
  html[data-theme="light"] .service-manager-shell .service-workbench{grid-template-columns:1fr!important}
  html[data-theme="light"] .service-manager-shell .operations-strip{grid-template-columns:1fr!important}
  html[data-theme="light"] .service-manager-shell #hero-status{position:static!important;transform:none!important}
  html[data-theme="light"] .configuration-app .station-config-launchers{grid-template-columns:1fr!important}
  html[data-theme="light"] .configuration-app .instrument-launcher-row{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  html[data-theme="light"] .analysis-studio-grid{grid-template-columns:1fr!important}
  html[data-theme="light"] .station-live-grid{grid-template-columns:1fr!important}
}
@media(max-width:520px){
  html[data-theme="light"] .service-manager-shell .account-identity,
  html[data-theme="light"] .configuration-app .account-identity,
  html[data-theme="light"] .dashboard-shell .dashboard-account .account-identity{display:none!important}
  html[data-theme="light"] .configuration-app .instrument-launcher-row{grid-template-columns:1fr!important}
}
/* Keep secondary Dashboard views reachable without cluttering the approved live-tile home screen. */
html[data-theme="light"] #live-tiles-section>.section-head>#live-count{display:none!important}
html[data-theme="light"] #overview:has(#live-graph-section:not([hidden]))>.overview-mode-tabs,
html[data-theme="light"] #overview:has(#met-section:not([hidden]))>.overview-mode-tabs{display:flex!important;order:-1!important;align-self:flex-end!important;width:max-content!important;max-width:100%!important;padding:2px!important;gap:2px!important;border-radius:8px!important;box-shadow:none!important}
html[data-theme="light"] #overview:has(#live-graph-section:not([hidden]))>.overview-mode-tabs .overview-mode-tab,
html[data-theme="light"] #overview:has(#met-section:not([hidden]))>.overview-mode-tabs .overview-mode-tab{min-height:27px!important;padding:0 9px!important;border-radius:6px!important;font-size:7px!important;flex:0 0 auto!important}

/* -------------------------------------------------------------------------
   UI6.3 parity hardening for the preserved production HTML contracts.
   These selectors intentionally target the original 4.20.62 markup so the
   approved visual layer does not require rewriting tested DOM structures.
   ------------------------------------------------------------------------- */

/* Service Manager brand hierarchy: AESST DAS / company / version. */
html[data-theme="light"] .service-manager-shell .service-title-stack>.eyebrow{
  font-size:0!important;line-height:1!important;letter-spacing:0!important;text-transform:none!important;color:var(--approved-text)!important;font-weight:800!important;
}
html[data-theme="light"] .service-manager-shell .service-title-stack>.eyebrow:after{
  content:"AESST DAS"!important;font-size:14px!important;line-height:15px!important;letter-spacing:-.01em!important;
}
html[data-theme="light"] .service-manager-shell .service-title-line{
  display:grid!important;grid-template-columns:auto!important;gap:0!important;align-items:start!important;justify-items:start!important;
}
html[data-theme="light"] .service-manager-shell .service-title-line h1{display:none!important}
html[data-theme="light"] .service-manager-shell .service-product{
  order:1!important;font-size:8px!important;line-height:10px!important;font-weight:700!important;color:var(--approved-text)!important;white-space:nowrap!important;
}
html[data-theme="light"] .service-manager-shell .build-chip{
  order:2!important;min-height:0!important;height:auto!important;padding:0!important;margin:0!important;border:0!important;background:transparent!important;box-shadow:none!important;border-radius:0!important;font-size:7px!important;line-height:9px!important;font-weight:750!important;color:var(--approved-primary)!important;
}
html[data-theme="light"] .service-manager-shell .service-title-stack>p{display:none!important}

/* Runtime card state is semantic, not painted permanently green/red. */
html[data-theme="light"] .service-manager-shell .service-primary-console:not(.is-running) .orb-ring{background:#eef5fa!important;border:1px solid #d8e5ef!important}
html[data-theme="light"] .service-manager-shell .service-primary-console:not(.is-running) .orb-core{background:#e2ebf2!important;box-shadow:none!important}
html[data-theme="light"] .service-manager-shell .service-primary-console:not(.is-running) .orb-core:before{border-left-color:#90a9bc!important}
html[data-theme="light"] .service-manager-shell .service-primary-console:not(.is-running) #service-state{color:#7391aa!important}
html[data-theme="light"] .service-manager-shell .service-primary-console .touch-button.primary{background:var(--approved-primary)!important;border-color:var(--approved-primary)!important;color:#fff!important;box-shadow:0 4px 10px rgba(22,119,242,.15)!important}
html[data-theme="light"] .service-manager-shell .service-primary-console.is-running .touch-button.primary{background:#fff1f3!important;border-color:#ffacb3!important;color:#cf3143!important;box-shadow:none!important}

/* Original operation-summary markup fallback (keeps contract tests intact). */
html[data-theme="light"] .service-manager-shell .operations-strip>.operation-summary:nth-child(1):before{background:#e9faf2!important}
html[data-theme="light"] .service-manager-shell .operations-strip>.operation-summary:nth-child(1):after{content:"≡"!important;color:#12b96d!important;transform:rotate(90deg)!important;left:21px!important;top:18px!important}
html[data-theme="light"] .service-manager-shell .operations-strip>.operation-summary:nth-child(2):before{background:#eaf4ff!important}
html[data-theme="light"] .service-manager-shell .operations-strip>.operation-summary:nth-child(2):after{content:"✦"!important;color:var(--approved-primary)!important}
html[data-theme="light"] .service-manager-shell .operations-strip>.operation-summary:nth-child(3):before{background:#f0ebff!important}
html[data-theme="light"] .service-manager-shell .operations-strip>.operation-summary:nth-child(3):after{content:"▣"!important;color:var(--approved-violet)!important}

/* The database workspace only appears while operator action is needed. */
html[data-theme="light"] .service-manager-shell .service-control-rail{display:grid!important;grid-template-rows:auto auto!important;gap:8px!important;align-content:start!important}
html[data-theme="light"] .service-manager-shell .service-database-panel{
  position:relative!important;min-height:0!important;height:auto!important;padding:9px!important;border-radius:11px!important;overflow:hidden!important;
}
html[data-theme="light"] .service-manager-shell .service-database-panel:has(#service-db-state.good){display:none!important}
html[data-theme="light"] .service-manager-shell .service-database-panel .section-head{margin:0 0 5px!important;padding:0!important;min-height:0!important}
html[data-theme="light"] .service-manager-shell .service-database-panel .panel-kicker{font-size:7px!important;line-height:1!important;letter-spacing:.03em!important}
html[data-theme="light"] .service-manager-shell .service-database-panel h2{font-size:10px!important;line-height:1.15!important;margin:2px 0 0!important}
html[data-theme="light"] .service-manager-shell .service-db-actions{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:5px!important;margin-top:3px!important}
html[data-theme="light"] .service-manager-shell .service-db-actions .touch-button{width:100%!important;min-height:27px!important;height:27px!important;padding:0 6px!important;font-size:7.5px!important}
html[data-theme="light"] .service-manager-shell .service-db-actions .touch-button.primary{background:#eff7ff!important;border-color:#c3def9!important;color:#176fcf!important}
html[data-theme="light"] .service-manager-shell .service-db-actions .danger{background:#fff2f3!important;border-color:#f5c7cd!important;color:#c83445!important}

/* Settings is a deliberate secondary workspace, hidden until requested. */
html[data-theme="light"] .service-manager-shell #startup-reliability:not([hidden]){grid-column:1/-1!important;margin-top:0!important}
html[data-theme="light"] .service-manager-shell #service-dock .dock-item[data-dock="settings"] .icon{color:#617b92!important}

/* Make both auth and destructive dialogs compact and immune to legacy grids. */
html[data-theme="light"] .clean-auth-modal{display:block!important;grid-template-columns:1fr!important;min-width:0!important;height:auto!important;min-height:0!important}
html[data-theme="light"] .clean-auth-modal .auth-fields>*{min-width:0!important}
html[data-theme="light"] .clean-auth-modal .auth-fields label>span{display:block!important;margin:0!important}
html[data-theme="light"] .destructive-confirmation{
  width:min(430px,calc(100vw - 28px))!important;max-width:430px!important;min-width:0!important;height:auto!important;min-height:0!important;max-height:calc(100dvh - 28px)!important;padding:18px!important;border-radius:16px!important;background:#fff!important;border:1px solid var(--approved-border)!important;box-shadow:0 20px 55px rgba(39,73,100,.20)!important;overflow:auto!important;
}
html[data-theme="light"] .destructive-modal-head{display:flex!important;align-items:flex-start!important;justify-content:space-between!important;gap:10px!important;margin:0 0 8px!important}
html[data-theme="light"] .destructive-modal-head .eyebrow{font-size:7px!important;letter-spacing:.08em!important}
html[data-theme="light"] .destructive-confirmation h2{font-size:18px!important;line-height:1.15!important;margin:5px 0 0!important}
html[data-theme="light"] .destructive-confirmation>p{font-size:9px!important;line-height:1.4!important;margin:0 0 11px!important;color:var(--approved-muted)!important}
html[data-theme="light"] .destructive-confirm-field{display:grid!important;grid-template-columns:1fr!important;gap:5px!important;font-size:9px!important}
html[data-theme="light"] .destructive-confirm-field input{width:100%!important;height:36px!important;min-height:36px!important;padding:7px 10px!important;border-radius:8px!important}
html[data-theme="light"] .destructive-modal-actions{display:flex!important;justify-content:flex-end!important;gap:7px!important;margin-top:12px!important}
html[data-theme="light"] .destructive-modal-actions .touch-button{min-height:34px!important;height:34px!important;border-radius:8px!important;padding:0 11px!important;font-size:9px!important}
html[data-theme="light"] .modal-icon-close{width:30px!important;height:30px!important;min-width:30px!important;min-height:30px!important;padding:0!important;border-radius:8px!important}

/* Configuration brand hierarchy on original one-line brand markup. */
html[data-theme="light"] .configuration-app .suite-brand-copy strong{
  font-size:8px!important;line-height:10px!important;font-weight:700!important;color:var(--approved-text)!important;display:block!important;white-space:nowrap!important;
}
html[data-theme="light"] .configuration-app .suite-brand-copy strong:before{
  content:"AESST DAS"!important;display:block!important;font-size:14px!important;line-height:15px!important;font-weight:800!important;letter-spacing:-.01em!important;
}
html[data-theme="light"] .configuration-app .suite-brand-copy strong:after{
  content:"v4.20.62"!important;display:block!important;font-size:7px!important;line-height:9px!important;font-weight:750!important;color:var(--approved-primary)!important;
}

/* Dashboard brand hierarchy on original tested markup. */
html[data-theme="light"] .dashboard-shell .suite-brand-copy strong{
  font-size:8px!important;line-height:10px!important;font-weight:700!important;color:var(--approved-text)!important;display:block!important;white-space:nowrap!important;
}
html[data-theme="light"] .dashboard-shell .suite-brand-copy strong:before{
  content:"AESST DAS"!important;display:block!important;font-size:13px!important;line-height:14px!important;font-weight:800!important;letter-spacing:-.01em!important;
}
html[data-theme="light"] .dashboard-shell .dashboard-build{font-size:0!important;line-height:9px!important}
html[data-theme="light"] .dashboard-shell .dashboard-build:before{content:"v4.20.62"!important;font-size:7px!important;font-weight:750!important;color:var(--approved-primary)!important}
html[data-theme="light"] .dashboard-live-toolbar .icon-button{width:28px!important;height:28px!important;min-width:28px!important;min-height:28px!important;padding:0!important;border-radius:7px!important;background:#fff!important;color:var(--approved-primary)!important;border:1px solid var(--approved-border)!important;box-shadow:none!important;font-size:12px!important}

/* Dashboard tile contract: full approved information density without overflow. */
html[data-theme="light"] .station-live-grid .tile-status-actions{min-width:0!important}
html[data-theme="light"] .station-live-grid .tile-hidden-specs[aria-hidden="true"]{display:none!important}

/* Keep the approved composition compact on common 1366/1440/1536 station displays. */
@media(min-width:761px){
  html[data-theme="light"] .service-manager-shell .app-content{overflow:hidden!important}
  html[data-theme="light"] .service-manager-shell .service-workbench{max-height:290px!important}
  html[data-theme="light"] .service-manager-shell .service-operations-pane{max-height:290px!important}
  html[data-theme="light"] .dashboard-shell #overview{align-content:start!important}
}
/* Final geometry corrections from the approved Service Manager reference. */
html[data-theme="light"] .service-manager-shell .service-primary-console{height:auto!important;min-height:205px!important}
html[data-theme="light"] .service-manager-shell #service-state{left:auto!important;right:12px!important;top:12px!important}
@media(min-width:761px){html[data-theme="light"] .service-manager-shell .service-workbench,html[data-theme="light"] .service-manager-shell .service-operations-pane{max-height:310px!important}}
html[data-theme="light"] .service-manager-shell .service-control-rail{grid-template-columns:minmax(0,1fr)!important}
html[data-theme="light"] .service-manager-shell .orb-core:before{display:block!important;position:absolute!important;left:50%!important;top:50%!important;transform:translate(-38%,-50%)!important;margin:0!important}
/* Dashboard header and desktop tile density exactly follow the approved operator view. */
html[data-theme="light"] .dashboard-shell .suite-brand-copy .dashboard-build{font-size:0!important;line-height:9px!important}
html[data-theme="light"] .dashboard-shell .top-actions #updated{order:1!important}
html[data-theme="light"] .dashboard-shell .top-actions #clock{order:2!important}
html[data-theme="light"] .dashboard-shell .top-actions .dashboard-account{order:3!important;display:flex!important;align-items:center!important;gap:0!important;min-height:30px!important;padding:2px 6px 2px 3px!important;border:1px solid var(--approved-border)!important;border-radius:9px!important;background:#fff!important}
html[data-theme="light"] .dashboard-shell .dashboard-account .account-icon-action{order:1!important;width:24px!important;height:24px!important;min-width:24px!important;min-height:24px!important;border:0!important;background:transparent!important;padding:3px!important}
html[data-theme="light"] .dashboard-shell .dashboard-account .account-identity{order:2!important;min-height:24px!important;padding:2px 5px!important;border:0!important;background:transparent!important;min-width:0!important;text-align:left!important}
html[data-theme="light"] .dashboard-shell .dashboard-account .account-identity .session-label:empty{display:none!important}
@media (min-width:681px){html[data-theme="light"] .station-live-grid{grid-template-columns:repeat(var(--tile-columns,4),minmax(0,1fr))!important}}
@media (max-width:680px) and (min-width:521px){html[data-theme="light"] .station-live-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
/* Approved dock dimensions are intentionally compact (reference: ~46–48 px). */
html[data-theme="light"] .service-manager-shell #service-dock,
html[data-theme="light"] .configuration-app #config-dock,
html[data-theme="light"] #sidebar.dock-wrap{margin-top:5px!important;margin-bottom:6px!important}
html[data-theme="light"] .service-manager-shell #service-dock .dock,
html[data-theme="light"] .configuration-app #config-dock .dock,
html[data-theme="light"] #sidebar .dock{height:48px!important;min-height:48px!important;padding:3px!important}
html[data-theme="light"] .service-manager-shell #service-dock .dock-item,
html[data-theme="light"] .configuration-app #config-dock .dock-item,
html[data-theme="light"] #sidebar .dock-item{height:40px!important;min-height:40px!important;grid-template-rows:18px 10px!important;padding:2px 4px!important}
html[data-theme="light"] .service-manager-shell #service-dock .dock-item .icon,
html[data-theme="light"] .service-manager-shell #service-dock .dock-item .icon svg,
html[data-theme="light"] .configuration-app #config-dock .dock-item .icon,
html[data-theme="light"] .configuration-app #config-dock .dock-item .icon svg,
html[data-theme="light"] #sidebar .dock-item .nav-svg{width:16px!important;height:16px!important}
html[data-theme="light"] .dashboard-content{padding-top:5px!important}
html[data-theme="light"] #live-tiles-section>.section-head{min-height:25px!important;margin-bottom:4px!important}
html[data-theme="light"] .station-live-grid .tile-reading-row{grid-template-columns:minmax(0,1fr) clamp(52px,6vw,76px)!important}

/* ==========================================================================\n   UI6.3 FINAL PARITY PASS — approved 2026-09-21 montage is the visual authority.\n   These rules deliberately override the accumulated legacy CSS without\n   changing acquisition, database, security, protocol, regulatory or DAQ logic.\n   ========================================================================== */

/* Shared compact shell proportions. */
html[data-theme="light"] .service-manager-shell .service-commandbar,
html[data-theme="light"] .configuration-app .config-topbar,
html[data-theme="light"] .dashboard-shell .top-glass{
  min-height:62px!important;height:62px!important;border-radius:13px!important;
}
html[data-theme="light"] .service-manager-shell .service-commandbar{padding:8px 12px!important}
html[data-theme="light"] .configuration-app .topbar-inner,
html[data-theme="light"] .dashboard-shell .top-inner{min-height:60px!important;height:60px!important;padding:7px 12px!important}
html[data-theme="light"] .service-manager-shell .suite-brand-mark,
html[data-theme="light"] .configuration-app .suite-brand-mark,
html[data-theme="light"] .dashboard-shell .suite-brand-mark{width:36px!important;height:36px!important}

/* Service Manager — approved two-column control surface. */
html[data-theme="light"] .service-manager-shell .app-content{padding:7px 8px 0!important}
html[data-theme="light"] .service-manager-shell .app-content-inner{width:min(1480px,100%)!important}
html[data-theme="light"] .service-manager-shell .service-page{gap:8px!important}
html[data-theme="light"] .service-manager-shell .service-workbench{
  grid-template-columns:clamp(196px,24vw,280px) minmax(0,1fr)!important;gap:10px!important;
}
html[data-theme="light"] .service-manager-shell .service-primary-console{min-height:168px!important;height:168px!important;padding:11px!important}
html[data-theme="light"] .service-manager-shell .console-head{margin-bottom:4px!important}
html[data-theme="light"] .service-manager-shell #service-state{left:82px!important;top:41px!important}
html[data-theme="light"] .service-manager-shell .runtime-console{grid-template-columns:58px minmax(0,1fr)!important;gap:8px!important;margin-bottom:3px!important;padding:2px 0 3px!important}
html[data-theme="light"] .service-manager-shell .service-actions{margin-top:3px!important}
html[data-theme="light"] .service-manager-shell .service-operations-pane{grid-template-rows:70px 126px!important;gap:9px!important}
html[data-theme="light"] .service-manager-shell .operation-summary{min-height:70px!important;height:70px!important;padding:9px 9px 8px 52px!important}
html[data-theme="light"] .service-manager-shell .service-activity-panel{height:126px!important;min-height:126px!important;padding:9px 10px!important}
html[data-theme="light"] .service-manager-shell .activity-list{min-height:82px!important;max-height:82px!important}
html[data-theme="light"] .service-manager-shell #service-dock{width:min(514px,calc(100vw - 32px))!important;margin:7px auto 7px!important}
html[data-theme="light"] .service-manager-shell .brand-product{font-size:13px!important;font-weight:800!important}
html[data-theme="light"] .service-manager-shell .brand-company{font-size:8px!important}
html[data-theme="light"] .service-manager-shell .brand-version{font-size:7px!important}

/* Configuration header/session composition. */
html[data-theme="light"] .configuration-app .config-topbar{margin:7px 8px 0!important}
html[data-theme="light"] .configuration-app .suite-brand-copy strong{font-size:13px!important;font-weight:800!important}
html[data-theme="light"] .configuration-app .suite-brand-copy .company-name{display:block!important;font-size:7.5px!important;line-height:1.15!important}
html[data-theme="light"] .configuration-app .suite-brand-copy .config-version{display:block!important;font-size:7px!important;line-height:1.15!important}
html[data-theme="light"] .configuration-app .topbar-actions{display:flex!important;align-items:center!important;flex-wrap:nowrap!important;position:static!important;transform:none!important}
html[data-theme="light"] .configuration-app .account-control{display:flex!important;align-items:center!important;gap:6px!important;position:static!important;transform:none!important}
html[data-theme="light"] .configuration-app .account-identity{min-width:112px!important;min-height:36px!important;height:36px!important;padding:4px 9px 4px 34px!important;text-align:left!important;position:relative!important;align-content:center!important}
html[data-theme="light"] .configuration-app .account-identity:before{content:""!important;position:absolute!important;left:7px!important;top:50%!important;transform:translateY(-50%)!important;width:22px!important;height:22px!important;border-radius:50%!important;background:#e8f3ff!important;border:1px solid #cfe4fb!important}
html[data-theme="light"] .configuration-app .account-identity:after{content:"●"!important;position:absolute!important;left:14px!important;top:50%!important;transform:translateY(-54%)!important;color:#1677f2!important;font-size:8px!important}
html[data-theme="light"] .configuration-app .account-icon-action{width:34px!important;height:34px!important;min-width:34px!important;min-height:34px!important}

/* Station screen: exactly three approved launchers, icon-first, compact panel. */
html[data-theme="light"] .configuration-app .config-content{padding:7px 8px 0!important}
html[data-theme="light"] .configuration-app .station-config-launchers{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:8px!important;margin-bottom:8px!important}
html[data-theme="light"] .configuration-app .station-config-launcher{height:58px!important;min-height:58px!important;padding:7px 9px!important;gap:8px!important;position:relative!important;overflow:hidden!important}
html[data-theme="light"] .configuration-app .station-config-launcher-icon{width:36px!important;height:36px!important;min-width:36px!important;border-radius:10px!important;display:grid!important;place-items:center!important;position:relative!important}
html[data-theme="light"] .configuration-app .station-config-launcher-icon:before{font-size:18px!important;line-height:1!important;font-weight:800!important}
html[data-theme="light"] .configuration-app .icon-station{background:#dff2ff!important;color:#1599e6!important}.configuration-app .icon-station:before{content:"⌗"!important}
html[data-theme="light"] .configuration-app .icon-central{background:#e5f9ef!important;color:#13a866!important}.configuration-app .icon-central:before{content:"⌘"!important}
html[data-theme="light"] .configuration-app .icon-time_bases{background:#f0e8ff!important;color:#8055ef!important}.configuration-app .icon-time_bases:before{content:"◷"!important}
html[data-theme="light"] .configuration-app .station-config-status{display:none!important}
html[data-theme="light"] .configuration-app .station-config-launcher-copy{min-width:0!important}
html[data-theme="light"] .configuration-app .station-config-launcher-copy strong{font-size:9.5px!important;white-space:nowrap!important}
html[data-theme="light"] .configuration-app .station-config-launcher-copy small{font-size:6.8px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
html[data-theme="light"] .configuration-app .station-config-panel{padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important}
html[data-theme="light"] .configuration-app .station-config-panel>.settings-card{border-radius:10px!important;padding:9px 10px!important;margin:0!important;background:#fff!important;border:1px solid var(--approved-border)!important;box-shadow:none!important}
html[data-theme="light"] .configuration-app .station-identity-card{position:relative!important;min-height:151px!important;padding-bottom:46px!important}
html[data-theme="light"] .configuration-app .station-identity-card>h2{font-size:12px!important;margin:0 0 2px!important}
html[data-theme="light"] .configuration-app .station-identity-card>p{font-size:7px!important;margin:0 0 7px!important}
html[data-theme="light"] .configuration-app .station-identity-card .form-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:6px 12px!important;padding:0!important}
html[data-theme="light"] .configuration-app .station-identity-card .field{font-size:7px!important;gap:2px!important}
html[data-theme="light"] .configuration-app .station-identity-card input,
html[data-theme="light"] .configuration-app .station-identity-card select,
html[data-theme="light"] .configuration-app .station-identity-card .touch-field{height:29px!important;min-height:29px!important;border-radius:6px!important;padding:4px 7px!important;font-size:8px!important}
html[data-theme="light"] .configuration-app .station-identity-card .inline-container-save-row{position:absolute!important;right:10px!important;bottom:9px!important;margin:0!important;padding:0!important;border:0!important}
html[data-theme="light"] .configuration-app .station-identity-card .inline-container-save-row .local-save{height:30px!important;min-height:30px!important;min-width:165px!important;border-radius:7px!important;font-size:8px!important}
html[data-theme="light"] .configuration-app .alert-notification-card{margin-top:8px!important}

/* Configuration instruments screen: 4 + 2 navigation-card layout from the approval. */
html[data-theme="light"] .configuration-app .instrument-approved-heading{display:flex!important;align-items:baseline!important;gap:10px!important;margin:0 4px 8px!important}
html[data-theme="light"] .configuration-app .instrument-approved-heading h1{font-size:13px!important;margin:0!important}
html[data-theme="light"] .configuration-app .instrument-approved-heading p{font-size:7px!important;margin:0!important;color:var(--approved-muted)!important}
html[data-theme="light"] .configuration-app .instrument-workspace-v2{padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important}
html[data-theme="light"] .configuration-app .instrument-page-toolbar-v2{display:none!important}
html[data-theme="light"] .configuration-app .instrument-launcher-row{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:8px!important;margin-bottom:8px!important}
html[data-theme="light"] .configuration-app .instrument-launcher-row>.instrument-launcher{height:52px!important;min-height:52px!important;padding:7px 8px 7px 50px!important;position:relative!important;display:grid!important;align-content:center!important}
html[data-theme="light"] .configuration-app .instrument-launcher-row>.instrument-launcher:before{position:absolute!important;left:9px!important;top:8px!important;width:34px!important;height:34px!important;border-radius:9px!important;display:grid!important;place-items:center!important;font-size:17px!important;font-weight:800!important}
html[data-theme="light"] .configuration-app .instrument-launcher.instrument:before{content:"▣"!important;background:#e5f3ff!important;color:#1677f2!important}
html[data-theme="light"] .configuration-app .instrument-launcher.group:before{content:"♙"!important;background:#e7f9ef!important;color:#18a957!important}
html[data-theme="light"] .configuration-app .instrument-launcher.alarm:nth-of-type(3):before{content:"♢"!important;background:#fff0e7!important;color:#f46a23!important}
html[data-theme="light"] .configuration-app .instrument-launcher.alarm:nth-of-type(4):before{content:"◈"!important;background:#ffe9f3!important;color:#ef3c8c!important}
html[data-theme="light"] .configuration-app .instrument-launcher.relay:before{content:"⬡"!important;background:#f0e8ff!important;color:#8055ef!important}
html[data-theme="light"] .configuration-app .instrument-launcher.diagnostic:before{content:"◉"!important;background:#e5fbfd!important;color:#09aeca!important}
html[data-theme="light"] .configuration-app .instrument-launcher strong{font-size:8.5px!important;white-space:nowrap!important}
html[data-theme="light"] .configuration-app .instrument-launcher small{font-size:6.7px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
html[data-theme="light"] .configuration-app .regulatory-profile-entry{margin-left:6px!important}
html[data-theme="light"] .configuration-app #config-dock{margin:7px auto 7px!important}

/* Dashboard: header actions stay inside the header; approved 4-card live row. */
html[data-theme="light"] .dashboard-shell .top-glass{margin:7px 8px 0!important}
html[data-theme="light"] .dashboard-shell .suite-brand-copy strong{font-size:13px!important;font-weight:800!important}
html[data-theme="light"] .dashboard-shell .suite-brand-copy .dashboard-company{display:block!important;font-size:7.5px!important;font-weight:650!important;line-height:1.15!important}
html[data-theme="light"] .dashboard-shell .suite-brand-copy .dashboard-build{display:block!important;font-size:7px!important;color:var(--approved-primary)!important;line-height:1.15!important}
html[data-theme="light"] .dashboard-shell .top-actions{margin-left:auto!important;display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:6px!important;flex-wrap:nowrap!important;position:static!important;transform:none!important;min-width:0!important}
html[data-theme="light"] .dashboard-shell #updated{height:28px!important;min-height:28px!important;padding:0 10px!important;flex:0 0 auto!important}
html[data-theme="light"] .dashboard-shell #clock{height:28px!important;min-height:28px!important;min-width:108px!important;padding:0 8px!important;flex:0 0 auto!important;white-space:nowrap!important}
html[data-theme="light"] .dashboard-shell .dashboard-account{display:flex!important;align-items:center!important;gap:0!important;flex:0 0 auto!important}
html[data-theme="light"] .dashboard-shell .dashboard-account .account-identity{height:30px!important;min-height:30px!important;min-width:76px!important;padding:4px 7px 4px 28px!important;text-align:left!important;position:relative!important;border-radius:8px!important}
html[data-theme="light"] .dashboard-shell .dashboard-account .account-identity:before{content:""!important;position:absolute!important;left:6px!important;top:50%!important;transform:translateY(-50%)!important;width:17px!important;height:17px!important;border-radius:50%!important;background:#e8f3ff!important;border:1px solid #cfe4fb!important}
html[data-theme="light"] .dashboard-shell .dashboard-account .account-identity:after{content:"●"!important;position:absolute!important;left:11px!important;top:50%!important;transform:translateY(-54%)!important;color:#1677f2!important;font-size:6px!important}
html[data-theme="light"] .dashboard-shell .dashboard-account .session-label{display:none!important}
html[data-theme="light"] .dashboard-shell .dashboard-account .account-icon-action{display:none!important}
html[data-theme="light"] .dashboard-content{padding:7px 12px 0!important}
html[data-theme="light"] #live-tiles-section>.section-head{height:28px!important;min-height:28px!important;margin-bottom:5px!important}
html[data-theme="light"] #live-tiles-section>.section-head #live-count{display:none!important}
html[data-theme="light"] .station-live-grid{grid-template-columns:repeat(var(--tile-columns,4),minmax(0,1fr))!important;gap:8px!important}
html[data-theme="light"] .station-live-grid .premium-live-tile{height:140px!important;min-height:140px!important;max-height:140px!important;padding:9px!important}
html[data-theme="light"] .station-live-grid .tile-reading-row{grid-template-columns:minmax(0,1fr) 52px!important;gap:4px!important;min-height:45px!important}
html[data-theme="light"] .station-live-grid .reading{font-size:24px!important;overflow:visible!important}
html[data-theme="light"] .station-live-grid .tile-sparkline-wrap{height:34px!important;min-height:34px!important;max-height:34px!important}
html[data-theme="light"] .station-live-grid .tile-sparkline{height:32px!important;max-height:32px!important}
html[data-theme="light"] #sidebar.dock-wrap{width:min(492px,calc(100vw - 32px))!important;margin:6px auto 7px!important}

/* Approved login card is deliberately compact, not a desktop-sized dialog. */
html[data-theme="light"] .service-manager-shell .clean-auth-modal,
html[data-theme="light"] .configuration-app .clean-auth-modal,
html[data-theme="light"] .dashboard-shell .clean-auth-modal{width:min(300px,calc(100vw - 28px))!important;max-width:300px!important;padding:16px!important;border-radius:13px!important}
html[data-theme="light"] .clean-auth-modal .auth-brand{margin-bottom:9px!important}
html[data-theme="light"] .clean-auth-modal .auth-brand img{width:32px!important;height:32px!important}
html[data-theme="light"] .clean-auth-modal h2{font-size:18px!important;margin-bottom:4px!important;text-align:center!important}
html[data-theme="light"] .clean-auth-modal>p{text-align:center!important;font-size:8.5px!important;margin-bottom:9px!important}
html[data-theme="light"] .clean-auth-modal .auth-fields{gap:7px!important}
html[data-theme="light"] .clean-auth-modal .auth-fields input{height:34px!important;min-height:34px!important;border-radius:7px!important}
html[data-theme="light"] .clean-auth-modal .auth-submit{height:34px!important;min-height:34px!important}
html[data-theme="light"] .clean-auth-modal .auth-cancel{display:none!important}
html[data-theme="light"] .clean-auth-modal .auth-meta-row{margin-top:7px!important}

/* Desktop/tablet parity: the approved 768px montage still uses multi-column layouts. */
@media (min-width:700px) and (max-width:1100px){
  html[data-theme="light"] .service-manager-shell .service-workbench{grid-template-columns:196px minmax(0,1fr)!important}
  html[data-theme="light"] .configuration-app .station-config-launchers{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  html[data-theme="light"] .configuration-app .station-identity-card .form-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  html[data-theme="light"] .configuration-app .instrument-launcher-row{grid-template-columns:repeat(4,minmax(0,1fr))!important}
  html[data-theme="light"] .station-live-grid{grid-template-columns:repeat(var(--tile-columns,4),minmax(0,1fr))!important}
}
@media (max-width:699px){
  html[data-theme="light"] .service-manager-shell .service-workbench{grid-template-columns:1fr!important}
  html[data-theme="light"] .configuration-app .station-config-launchers{grid-template-columns:1fr!important}
  html[data-theme="light"] .configuration-app .station-identity-card .form-grid{grid-template-columns:1fr!important}
  html[data-theme="light"] .configuration-app .instrument-launcher-row{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  html[data-theme="light"] .station-live-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  html[data-theme="light"] .dashboard-shell .top-actions{gap:3px!important}
  html[data-theme="light"] .dashboard-shell #clock{display:none!important}
}
@media (max-width:460px){
  html[data-theme="light"] .configuration-app .instrument-launcher-row,
  html[data-theme="light"] .station-live-grid{grid-template-columns:1fr!important}
}

/* UI6.3 parity correction: remove legacy generated brand lines after real markup was restored. */
html[data-theme="light"] .configuration-app .suite-brand-copy strong:before,
html[data-theme="light"] .configuration-app .suite-brand-copy strong:after,
html[data-theme="light"] .dashboard-shell .suite-brand-copy strong:before,
html[data-theme="light"] .dashboard-shell .dashboard-build:before{content:none!important;display:none!important}
html[data-theme="light"] .configuration-app .topbar-inner,
html[data-theme="light"] .dashboard-shell .top-inner{flex-wrap:nowrap!important}
html[data-theme="light"] .configuration-app .suite-brand,
html[data-theme="light"] .dashboard-shell .suite-brand{flex:0 0 auto!important}
html[data-theme="light"] .configuration-app .suite-brand-copy,
html[data-theme="light"] .dashboard-shell .suite-brand-copy{align-content:center!important}
html[data-theme="light"] .configuration-app .station-identity-card .field{display:grid!important;grid-template-columns:1fr!important;align-content:start!important}
html[data-theme="light"] .configuration-app .station-identity-card .field>span{display:block!important;margin:0!important;white-space:nowrap!important}

/* Service runtime copy — one status, one runtime label/value, one health sentence. */
html[data-theme="light"] .service-manager-shell .runtime-label{display:none!important}
html[data-theme="light"] .service-manager-shell .runtime-copy{display:grid!important;grid-template-rows:auto auto!important;align-content:center!important;gap:2px!important;position:static!important}
html[data-theme="light"] .service-manager-shell .runtime-copy>#metric-runtime-caption{font-size:7.5px!important;color:var(--approved-muted)!important;font-weight:500!important;order:1!important}
html[data-theme="light"] .service-manager-shell .runtime-detail-title{font-size:10px!important;line-height:1.15!important;margin:0!important;color:var(--approved-text)!important;order:2!important}
html[data-theme="light"] .service-manager-shell .runtime-detail{position:absolute!important;left:12px!important;right:12px!important;bottom:47px!important;font-size:7.5px!important;line-height:1.25!important;color:var(--approved-muted)!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
html[data-theme="light"] .service-manager-shell #service-state{left:82px!important;right:auto!important;top:42px!important;font-size:9px!important}
html[data-theme="light"] .service-manager-shell .service-activity-panel .section-head{min-width:0!important}
html[data-theme="light"] .service-manager-shell .service-activity-panel .section-head>.status-chip{margin-left:auto!important;flex:0 0 auto!important}

/* Header action clusters must never fall onto a second row. */
html[data-theme="light"] .configuration-app .topbar-actions,
html[data-theme="light"] .dashboard-shell .top-actions{align-self:center!important;white-space:nowrap!important}

/* Service description belongs below the orb/text row, not inside it. */
html[data-theme="light"] .service-manager-shell .runtime-console{position:static!important}
html[data-theme="light"] .service-manager-shell .runtime-detail{bottom:61px!important}

/* Analysis follows the approved compact header-context composition. */
html[data-theme="light"] .dashboard-shell .dashboard-page-context{display:none!important;min-width:0!important;margin-left:14px!important;padding-left:14px!important;border-left:1px solid var(--approved-border)!important}
html[data-theme="light"] .dashboard-shell[data-page="data-analysis"] .dashboard-page-context{display:grid!important;gap:1px!important;align-content:center!important}
html[data-theme="light"] .dashboard-shell .dashboard-page-context strong{font-size:11px!important;line-height:1.15!important;color:var(--approved-text)!important}
html[data-theme="light"] .dashboard-shell .dashboard-page-context small{font-size:6.8px!important;line-height:1.2!important;color:var(--approved-muted)!important;white-space:nowrap!important}
html[data-theme="light"] .dashboard-shell[data-page="data-analysis"] #data-analysis>.page-heading{display:none!important}
@media(min-width:700px) and (max-width:1100px){html[data-theme="light"] .analysis-studio-grid{grid-template-columns:255px minmax(0,1fr)!important}}

/* UI6.3 final service runtime alignment: mirror approved left status card. */
html[data-theme="light"] .service-manager-shell .service-primary-console .runtime-copy{
  display:block!important;
  position:static!important;
}
html[data-theme="light"] .service-manager-shell #service-state{
  left:82px!important;
  right:auto!important;
  top:55px!important;
  font-size:9px!important;
  line-height:1!important;
}
html[data-theme="light"] .service-manager-shell .runtime-copy>#metric-runtime-caption{
  display:block!important;
  position:absolute!important;
  left:82px!important;
  top:77px!important;
  margin:0!important;
  font-size:7.5px!important;
  line-height:1!important;
  color:var(--approved-muted)!important;
  font-weight:500!important;
}
html[data-theme="light"] .service-manager-shell .runtime-detail-title{
  display:block!important;
  position:absolute!important;
  left:82px!important;
  top:89px!important;
  margin:0!important;
  font-size:10px!important;
  line-height:1!important;
  color:var(--approved-text)!important;
}
html[data-theme="light"] .service-manager-shell .runtime-detail{
  left:12px!important;
  right:12px!important;
  bottom:38px!important;
  font-size:7.5px!important;
  line-height:1.2!important;
}
html[data-theme="light"] .service-manager-shell .service-actions{
  position:absolute!important;
  left:11px!important;
  right:11px!important;
  bottom:10px!important;
  margin:0!important;
}
html[data-theme="light"] .service-manager-shell .runtime-detail{bottom:45px!important}


/* ======================================================================
   LEGACY MIGRATION SOURCE: src/daq/webui/shared/approved_ui64.css
   Consolidated into the single universal Project 00 stylesheet.
   ====================================================================== */
/* AESST DAS 4.20.62 UI6.4 — approved-reference rebuild.
   This file is intentionally loaded last. It corrects UI6.3 scale, stage geometry,
   configuration first-open behavior support, and desktop responsiveness. */
:root,html[data-theme="light"]{
  --u64-bg:#f2f8fd;
  --u64-stage:#eef7fd;
  --u64-card:#ffffff;
  --u64-line:#d7e7f3;
  --u64-line-strong:#c8ddeb;
  --u64-text:#0a3151;
  --u64-muted:#547592;
  --u64-primary:#1677f2;
  --u64-success:#13b769;
  --u64-danger:#ef4c57;
  --u64-violet:#8055ef;
  --u64-shadow:0 8px 26px rgba(42,82,113,.08);
  --u64-shadow-soft:0 3px 12px rgba(42,82,113,.055);
}
html[data-theme="light"],html[data-theme="light"] body{background:var(--u64-bg)!important;color:var(--u64-text)!important}
html[data-theme="light"] body{font-family:"Segoe UI Variable Text","Segoe UI",Inter,system-ui,sans-serif!important}
html[data-theme="light"] [hidden]{display:none!important}

/* ---------- Shared approved header ---------- */
html[data-theme="light"] .service-manager-shell .service-commandbar,
html[data-theme="light"] .configuration-app .config-topbar,
html[data-theme="light"] .dashboard-shell .top-glass{
  background:#fff!important;border:1px solid var(--u64-line)!important;
  box-shadow:var(--u64-shadow-soft)!important;border-radius:18px!important;
}
html[data-theme="light"] .service-manager-shell .service-commandbar,
html[data-theme="light"] .configuration-app .topbar-inner,
html[data-theme="light"] .dashboard-shell .top-inner{
  min-height:96px!important;height:96px!important;
}
html[data-theme="light"] .service-manager-shell .suite-brand-mark,
html[data-theme="light"] .configuration-app .suite-brand-mark,
html[data-theme="light"] .dashboard-shell .suite-brand-mark{
  width:58px!important;height:58px!important;flex:0 0 58px!important;filter:none!important;
}
html[data-theme="light"] .service-manager-shell .brand-product,
html[data-theme="light"] .configuration-app .suite-brand-copy strong,
html[data-theme="light"] .dashboard-shell .suite-brand-copy strong{
  font-size:20px!important;line-height:1.05!important;font-weight:780!important;letter-spacing:-.02em!important;color:var(--u64-text)!important;
}
html[data-theme="light"] .service-manager-shell .brand-company,
html[data-theme="light"] .configuration-app .company-name,
html[data-theme="light"] .dashboard-shell .dashboard-company{
  font-size:11px!important;line-height:1.25!important;font-weight:650!important;color:var(--u64-text)!important;
}
html[data-theme="light"] .service-manager-shell .brand-version,
html[data-theme="light"] .configuration-app .config-version,
html[data-theme="light"] .dashboard-shell .dashboard-build{
  font-size:10px!important;line-height:1.25!important;font-weight:750!important;color:var(--u64-primary)!important;
}
html[data-theme="light"] .service-manager-shell .account-identity,
html[data-theme="light"] .configuration-app .account-identity,
html[data-theme="light"] .dashboard-shell .dashboard-account .account-identity{
  min-height:56px!important;height:56px!important;min-width:150px!important;
  border-radius:14px!important;border:1px solid var(--u64-line)!important;background:#f8fbff!important;
}
html[data-theme="light"] .service-manager-shell .account-identity{padding:8px 14px 8px 52px!important;text-align:left!important}
html[data-theme="light"] .configuration-app .account-identity{padding:8px 14px 8px 52px!important;text-align:left!important;position:relative!important}
html[data-theme="light"] .service-manager-shell .account-identity:before,
html[data-theme="light"] .configuration-app .account-identity:before{
  width:34px!important;height:34px!important;left:10px!important;background:#eaf4ff!important;border:1px solid #cde4fb!important;
}
html[data-theme="light"] .service-manager-shell .account-identity:after,
html[data-theme="light"] .configuration-app .account-identity:after{left:20px!important;font-size:12px!important;color:var(--u64-primary)!important}
html[data-theme="light"] .service-manager-shell .session-user-chip strong,
html[data-theme="light"] .configuration-app .session-user-chip strong{font-size:14px!important;line-height:1.1!important}
html[data-theme="light"] .service-manager-shell .session-user-chip .session-label,
html[data-theme="light"] .configuration-app .session-user-chip .session-label{font-size:10px!important;line-height:1.1!important;color:var(--u64-muted)!important}
html[data-theme="light"] .service-manager-shell .account-icon-action,
html[data-theme="light"] .configuration-app .account-icon-action{
  width:54px!important;height:54px!important;min-width:54px!important;min-height:54px!important;border-radius:14px!important;
  border:1px solid var(--u64-line)!important;background:#fff!important;
}
html[data-theme="light"] .service-manager-shell .account-icon-action svg,
html[data-theme="light"] .configuration-app .account-icon-action svg{width:24px!important;height:24px!important}

/* ---------- Service Manager: match approved composition ---------- */
html[data-theme="light"] body.service-manager-shell{overflow:hidden!important;background:
  radial-gradient(circle at 16% 20%,rgba(51,153,255,.07),transparent 27%),
  radial-gradient(circle at 88% 22%,rgba(53,210,190,.055),transparent 27%),var(--u64-bg)!important}
html[data-theme="light"] .service-manager-shell .app-shell{height:100dvh!important;overflow:hidden!important}
html[data-theme="light"] .service-manager-shell .app-content{height:100%!important;padding:14px 18px 16px!important;overflow:hidden!important}
html[data-theme="light"] .service-manager-shell .app-content-inner.service-page{
  width:100%!important;max-width:none!important;height:100%!important;margin:0!important;display:flex!important;flex-direction:column!important;gap:14px!important;
}
html[data-theme="light"] .service-manager-shell .service-commandbar{
  flex:0 0 96px!important;padding:14px 18px!important;margin:0!important;
}
html[data-theme="light"] .service-manager-shell #hero-status{
  min-height:38px!important;height:38px!important;padding:0 18px!important;font-size:12px!important;font-weight:700!important;
  border-radius:999px!important;left:50%!important;top:50%!important;
}
html[data-theme="light"] .service-manager-shell .service-stage{
  flex:1 1 auto!important;min-height:0!important;display:flex!important;flex-direction:column!important;
  padding:16px 16px 12px!important;border:1px solid var(--u64-line)!important;border-radius:18px!important;
  background:linear-gradient(135deg,#f4fbff 0%,#eef7fd 52%,#f5fbff 100%)!important;box-shadow:var(--u64-shadow-soft)!important;
}
html[data-theme="light"] .service-manager-shell .service-workbench{
  width:100%!important;height:clamp(390px,52vh,600px)!important;min-height:390px!important;
  grid-template-columns:clamp(300px,22vw,390px) minmax(0,1fr)!important;gap:14px!important;align-items:stretch!important;
}
html[data-theme="light"] .service-manager-shell .service-control-rail{display:block!important;height:100%!important}
html[data-theme="light"] .service-manager-shell .service-primary-console{
  height:100%!important;min-height:0!important;padding:18px!important;border-radius:16px!important;border:1px solid var(--u64-line)!important;
  background:#fff!important;box-shadow:var(--u64-shadow-soft)!important;position:relative!important;
}
html[data-theme="light"] .service-manager-shell .console-head .panel-kicker{font-size:15px!important;line-height:1.15!important;font-weight:760!important;text-transform:none!important}
html[data-theme="light"] .service-manager-shell .runtime-console{
  display:grid!important;grid-template-columns:94px minmax(0,1fr)!important;gap:16px!important;align-items:center!important;
  margin-top:18px!important;padding:0!important;min-height:130px!important;
}
html[data-theme="light"] .service-manager-shell .orb-ring{width:88px!important;height:88px!important;border-radius:24px!important}
html[data-theme="light"] .service-manager-shell .orb-core{width:64px!important;height:64px!important}
html[data-theme="light"] .service-manager-shell .orb-core:before{border-top-width:11px!important;border-bottom-width:11px!important;border-left-width:18px!important}
html[data-theme="light"] .service-manager-shell #service-state{
  position:static!important;display:block!important;margin:0 0 8px!important;font-size:15px!important;line-height:1.1!important;font-weight:780!important;
  color:var(--u64-success)!important;background:transparent!important;border:0!important;padding:0!important;
}
html[data-theme="light"] .service-manager-shell .runtime-copy{display:flex!important;flex-direction:column!important;gap:5px!important;position:static!important}
html[data-theme="light"] .service-manager-shell #metric-runtime{display:none!important}
html[data-theme="light"] .service-manager-shell .runtime-copy>#metric-runtime-caption{position:static!important;display:block!important;font-size:11px!important;line-height:1.2!important;color:var(--u64-muted)!important;order:1!important}
html[data-theme="light"] .service-manager-shell .runtime-detail-title{position:static!important;display:block!important;font-size:16px!important;line-height:1.2!important;order:2!important}
html[data-theme="light"] .service-manager-shell .runtime-detail{
  position:absolute!important;left:18px!important;right:18px!important;bottom:82px!important;font-size:11px!important;line-height:1.35!important;
  color:var(--u64-muted)!important;white-space:normal!important;overflow:visible!important;
}
html[data-theme="light"] .service-manager-shell .service-actions{
  position:absolute!important;left:18px!important;right:18px!important;bottom:18px!important;display:grid!important;grid-template-columns:minmax(0,1fr) 92px!important;gap:10px!important;margin:0!important;
}
html[data-theme="light"] .service-manager-shell .service-actions .touch-button{
  min-height:48px!important;height:48px!important;border-radius:11px!important;font-size:13px!important;font-weight:720!important;
}
html[data-theme="light"] .service-manager-shell .service-database-panel:has(#service-db-state.good){display:none!important}
html[data-theme="light"] .service-manager-shell .service-database-panel:not(:has(#service-db-state.good)){
  margin-top:10px!important;padding:14px!important;border-radius:14px!important;background:#fff!important;
}
html[data-theme="light"] .service-manager-shell .service-operations-pane{display:flex!important;flex-direction:column!important;gap:14px!important;height:100%!important;min-width:0!important}
html[data-theme="light"] .service-manager-shell .operations-strip{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:14px!important;flex:0 0 auto!important}
html[data-theme="light"] .service-manager-shell .operation-summary{
  height:112px!important;min-height:112px!important;padding:18px 16px 14px 76px!important;border-radius:15px!important;background:#fff!important;border:1px solid var(--u64-line)!important;
  box-shadow:var(--u64-shadow-soft)!important;position:relative!important;display:flex!important;flex-direction:column!important;justify-content:center!important;align-items:flex-start!important;
}
html[data-theme="light"] .service-manager-shell .operation-summary:before{width:48px!important;height:48px!important;left:16px!important;top:20px!important;border-radius:13px!important}
html[data-theme="light"] .service-manager-shell .operation-summary:after{left:31px!important;top:33px!important;font-size:19px!important}
html[data-theme="light"] .service-manager-shell .operation-summary .summary-label{font-size:11px!important;line-height:1.2!important;font-weight:650!important;color:var(--u64-muted)!important}
html[data-theme="light"] .service-manager-shell .operation-summary strong{font-size:18px!important;line-height:1.15!important;margin:3px 0!important;color:var(--u64-text)!important}
html[data-theme="light"] .service-manager-shell .operation-summary>span:last-child{font-size:10px!important;line-height:1.2!important;color:var(--u64-muted)!important;max-width:100%!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
html[data-theme="light"] .service-manager-shell .service-activity-panel{
  flex:1 1 auto!important;min-height:0!important;padding:16px!important;border-radius:16px!important;background:#fff!important;border:1px solid var(--u64-line)!important;box-shadow:var(--u64-shadow-soft)!important;
}
html[data-theme="light"] .service-manager-shell .service-activity-panel .section-head{margin:0 0 12px!important;min-height:42px!important}
html[data-theme="light"] .service-manager-shell .service-activity-panel .panel-kicker{display:none!important}
html[data-theme="light"] .service-manager-shell .service-activity-panel h2{font-size:18px!important;line-height:1.15!important;margin:0!important}
html[data-theme="light"] .service-manager-shell .service-activity-panel .section-head p{display:none!important}
html[data-theme="light"] .service-manager-shell .service-activity-panel .status-chip{height:32px!important;min-height:32px!important;padding:0 12px!important;font-size:10px!important;border-radius:10px!important}
html[data-theme="light"] .service-manager-shell .activity-list{height:calc(100% - 54px)!important;min-height:150px!important;border-radius:12px!important;background:#f3f9fd!important;border:1px solid #d4e5f1!important;padding:0!important;overflow:auto!important}
html[data-theme="light"] .service-manager-shell .activity-row{min-height:40px!important;padding:7px 12px!important;font-size:11px!important;border-bottom:1px solid #dbeaf4!important}
html[data-theme="light"] .service-manager-shell #startup-reliability{display:none!important}
html[data-theme="light"] .service-manager-shell #startup-reliability:not([hidden]){display:grid!important}

/* Service dock lives inside the pale approved stage. */
html[data-theme="light"] .service-manager-shell #service-dock{
  position:static!important;transform:none!important;left:auto!important;right:auto!important;bottom:auto!important;
  width:min(1040px,76vw)!important;margin:auto auto 0!important;flex:0 0 auto!important;pointer-events:auto!important;
}
html[data-theme="light"] .service-manager-shell #service-dock .dock{
  width:100%!important;height:86px!important;min-height:86px!important;padding:7px 10px!important;display:grid!important;
  grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:6px!important;border-radius:17px!important;background:#fff!important;
  border:1px solid var(--u64-line)!important;box-shadow:0 10px 30px rgba(44,86,121,.10)!important;
}
html[data-theme="light"] .service-manager-shell #service-dock .dock-item{
  height:70px!important;min-height:70px!important;border-radius:14px!important;padding:7px 8px!important;gap:5px!important;font-size:11px!important;
}
html[data-theme="light"] .service-manager-shell #service-dock .dock-item.active{background:#e8f3ff!important;color:var(--u64-primary)!important}
html[data-theme="light"] .service-manager-shell #service-dock .dock-item .icon{width:28px!important;height:28px!important}
html[data-theme="light"] .service-manager-shell #service-dock .dock-item .icon svg{width:26px!important;height:26px!important}
html[data-theme="light"] .service-manager-shell #service-dock .dock-item .label{font-size:11px!important;line-height:1.1!important;font-weight:650!important}

/* ---------- Configuration: approved stage + visible default Station form ---------- */
html[data-theme="light"] body.configuration-app{overflow:hidden!important;background:
  radial-gradient(circle at 18% 22%,rgba(47,145,245,.08),transparent 28%),
  radial-gradient(circle at 85% 23%,rgba(70,210,192,.055),transparent 28%),var(--u64-bg)!important}
html[data-theme="light"] .configuration-app .app-shell{height:100dvh!important;display:flex!important;flex-direction:column!important;overflow:hidden!important;padding:14px 16px 14px!important;gap:14px!important}
html[data-theme="light"] .configuration-app .config-topbar{margin:0!important;flex:0 0 96px!important}
html[data-theme="light"] .configuration-app .topbar-inner{padding:14px 18px!important;gap:16px!important}
html[data-theme="light"] .configuration-app .config-stage{
  flex:1 1 auto!important;min-height:0!important;display:flex!important;flex-direction:column!important;
  border-radius:18px!important;border:1px solid var(--u64-line)!important;background:linear-gradient(135deg,#f4fbff 0%,#eef7fd 55%,#f5fbff 100%)!important;
  box-shadow:var(--u64-shadow-soft)!important;padding:14px 14px 10px!important;overflow:hidden!important;
}
html[data-theme="light"] .configuration-app .config-content{flex:1 1 auto!important;min-height:0!important;padding:0!important;overflow:auto!important}
html[data-theme="light"] .configuration-app #config-content{width:100%!important;max-width:none!important;padding:0!important;margin:0!important}
html[data-theme="light"] .configuration-app .station-config-launchers{
  display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:14px!important;margin:0 0 14px!important;
}
html[data-theme="light"] .configuration-app .station-config-launcher{
  height:104px!important;min-height:104px!important;padding:14px 18px!important;gap:15px!important;border-radius:15px!important;
  background:#fff!important;border:1px solid var(--u64-line)!important;box-shadow:var(--u64-shadow-soft)!important;
}
html[data-theme="light"] .configuration-app .station-config-launcher.active{background:#f3f9ff!important;border:2px solid #2a8cf2!important;box-shadow:0 0 0 2px rgba(42,140,242,.07)!important}
html[data-theme="light"] .configuration-app .station-config-launcher-icon{width:58px!important;height:58px!important;min-width:58px!important;border-radius:14px!important}
html[data-theme="light"] .configuration-app .station-config-launcher-icon:before{font-size:27px!important}
html[data-theme="light"] .configuration-app .station-config-launcher-copy strong{font-size:16px!important;line-height:1.15!important;font-weight:740!important}
html[data-theme="light"] .configuration-app .station-config-launcher-copy small{font-size:10px!important;line-height:1.3!important;color:var(--u64-muted)!important;white-space:normal!important}
html[data-theme="light"] .configuration-app .station-config-status{display:none!important}
html[data-theme="light"] .configuration-app .station-config-panel{width:100%!important;padding:0!important;margin:0!important;border:0!important;background:transparent!important;box-shadow:none!important}
html[data-theme="light"] .configuration-app .station-config-panel>.settings-card{
  margin:0!important;padding:17px 18px!important;border-radius:15px!important;background:#fff!important;border:1px solid var(--u64-line)!important;box-shadow:var(--u64-shadow-soft)!important;
}
html[data-theme="light"] .configuration-app .station-identity-card{min-height:292px!important;padding-bottom:72px!important;position:relative!important}
html[data-theme="light"] .configuration-app .station-identity-card>h2{font-size:19px!important;line-height:1.15!important;margin:0 0 4px!important}
html[data-theme="light"] .configuration-app .station-identity-card>p{font-size:11px!important;line-height:1.35!important;margin:0 0 15px!important;color:var(--u64-muted)!important}
html[data-theme="light"] .configuration-app .station-identity-card .form-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:13px 18px!important;padding:0!important}
html[data-theme="light"] .configuration-app .station-identity-card .field{font-size:11px!important;line-height:1.2!important;gap:6px!important;color:var(--u64-text)!important}
html[data-theme="light"] .configuration-app .station-identity-card input,
html[data-theme="light"] .configuration-app .station-identity-card select,
html[data-theme="light"] .configuration-app .station-identity-card textarea,
html[data-theme="light"] .configuration-app .station-identity-card .touch-field{
  height:45px!important;min-height:45px!important;border-radius:9px!important;padding:8px 12px!important;font-size:12px!important;background:#fbfdff!important;border:1px solid #cbdfea!important;
}
html[data-theme="light"] .configuration-app .station-identity-card .inline-container-save-row{position:absolute!important;right:18px!important;bottom:17px!important;margin:0!important;padding:0!important;border:0!important}
html[data-theme="light"] .configuration-app .station-identity-card .local-save{height:46px!important;min-height:46px!important;min-width:210px!important;border-radius:9px!important;font-size:12px!important;font-weight:700!important}
/* Notification setup is a secondary station workspace; keep it below the approved first-screen card. */
html[data-theme="light"] .configuration-app .alert-notification-card{margin-top:14px!important}

/* Instruments navigation cards — approved 4 + 2 layout, readable at desktop scale. */
html[data-theme="light"] .configuration-app .instrument-approved-heading{gap:14px!important;margin:0 6px 14px!important}
html[data-theme="light"] .configuration-app .instrument-approved-heading h1{font-size:19px!important}
html[data-theme="light"] .configuration-app .instrument-approved-heading p{font-size:10px!important}
html[data-theme="light"] .configuration-app .instrument-launcher-row{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:14px!important;margin-bottom:14px!important}
html[data-theme="light"] .configuration-app .instrument-launcher-row>.instrument-launcher{
  height:94px!important;min-height:94px!important;padding:14px 15px 14px 76px!important;border-radius:14px!important;
}
html[data-theme="light"] .configuration-app .instrument-launcher-row>.instrument-launcher:before{left:15px!important;top:17px!important;width:54px!important;height:54px!important;border-radius:13px!important;font-size:25px!important}
html[data-theme="light"] .configuration-app .instrument-launcher strong{font-size:14px!important;line-height:1.15!important}
html[data-theme="light"] .configuration-app .instrument-launcher small{font-size:10px!important;line-height:1.25!important;margin-top:4px!important}

/* Configuration dock sits inside the approved pale stage. */
html[data-theme="light"] .configuration-app #config-dock{
  position:static!important;transform:none!important;left:auto!important;right:auto!important;bottom:auto!important;
  width:min(1040px,76vw)!important;margin:12px auto 0!important;flex:0 0 auto!important;pointer-events:auto!important;
}
html[data-theme="light"] .configuration-app #config-dock .dock{
  width:100%!important;height:86px!important;min-height:86px!important;padding:7px 10px!important;display:grid!important;grid-template-columns:repeat(6,minmax(0,1fr))!important;
  gap:5px!important;border-radius:17px!important;background:#fff!important;border:1px solid var(--u64-line)!important;box-shadow:0 10px 30px rgba(44,86,121,.10)!important;
}
html[data-theme="light"] .configuration-app #config-dock .dock-item{height:70px!important;min-height:70px!important;border-radius:14px!important;padding:7px 8px!important;gap:5px!important}
html[data-theme="light"] .configuration-app #config-dock .dock-item.active{background:#e8f3ff!important;color:var(--u64-primary)!important}
html[data-theme="light"] .configuration-app #config-dock .dock-item .icon{width:28px!important;height:28px!important}
html[data-theme="light"] .configuration-app #config-dock .dock-item .icon svg{width:26px!important;height:26px!important}
html[data-theme="light"] .configuration-app #config-dock .dock-item .label{font-size:11px!important;line-height:1.1!important;font-weight:650!important}

/* ---------- Dashboard / Analysis approved scale ---------- */
html[data-theme="light"] .dashboard-shell{height:100dvh!important;padding:14px 16px 14px!important;display:flex!important;flex-direction:column!important;gap:14px!important;overflow:hidden!important}
html[data-theme="light"] .dashboard-shell .top-glass{margin:0!important;flex:0 0 96px!important}
html[data-theme="light"] .dashboard-shell .top-inner{padding:14px 18px!important}
html[data-theme="light"] .dashboard-shell .station-copy{display:none!important}
html[data-theme="light"] .dashboard-shell .dashboard-content{
  flex:1 1 auto!important;min-height:0!important;margin:0!important;padding:15px 16px 110px!important;overflow:auto!important;border-radius:18px!important;
  border:1px solid var(--u64-line)!important;background:linear-gradient(135deg,#f4fbff 0%,#eef7fd 55%,#f5fbff 100%)!important;box-shadow:var(--u64-shadow-soft)!important;
}
html[data-theme="light"] .dashboard-shell .dashboard-inner{width:100%!important;max-width:none!important;margin:0!important}
html[data-theme="light"] .dashboard-shell #updated{height:38px!important;min-height:38px!important;padding:0 16px!important;font-size:11px!important;border-radius:12px!important}
html[data-theme="light"] .dashboard-shell #connection{display:none!important}
html[data-theme="light"] .dashboard-shell #clock{height:38px!important;min-height:38px!important;min-width:178px!important;font-size:11px!important;border-radius:10px!important}
html[data-theme="light"] .dashboard-shell .dashboard-account .account-identity{height:40px!important;min-height:40px!important;min-width:110px!important;padding:7px 12px 7px 36px!important;border-radius:10px!important}
html[data-theme="light"] .dashboard-shell .dashboard-account .account-identity:before{width:22px!important;height:22px!important;left:8px!important}
html[data-theme="light"] .dashboard-shell .dashboard-account .account-identity:after{left:15px!important;font-size:8px!important}
html[data-theme="light"] .dashboard-shell .dashboard-account strong{font-size:12px!important}
html[data-theme="light"] #live-tiles-section>.section-head{height:48px!important;min-height:48px!important;margin-bottom:10px!important}
html[data-theme="light"] #live-tiles-section>.section-head h2{font-size:18px!important}
html[data-theme="light"] .station-live-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:14px!important}
html[data-theme="light"] .station-live-grid .premium-live-tile{height:222px!important;min-height:222px!important;max-height:222px!important;padding:15px!important;border-radius:14px!important}
html[data-theme="light"] .station-live-grid .tile-title-row strong{font-size:16px!important}
html[data-theme="light"] .station-live-grid .reading{font-size:36px!important;line-height:1!important}
html[data-theme="light"] .station-live-grid .tile-unit{font-size:11px!important}
html[data-theme="light"] .station-live-grid .tile-meta{font-size:10px!important;line-height:1.35!important}
html[data-theme="light"] .station-live-grid .tile-sparkline-wrap{height:54px!important;min-height:54px!important;max-height:54px!important}
html[data-theme="light"] .station-live-grid .tile-sparkline{height:52px!important;max-height:52px!important}
html[data-theme="light"] .dashboard-shell #sidebar.dock-wrap{
  position:absolute!important;left:50%!important;bottom:24px!important;transform:translateX(-50%)!important;width:min(980px,72vw)!important;margin:0!important;z-index:30!important;
}
html[data-theme="light"] .dashboard-shell #sidebar .dock{height:82px!important;min-height:82px!important;padding:7px 9px!important;border-radius:17px!important}
html[data-theme="light"] .dashboard-shell #sidebar .dock-item{height:66px!important;min-height:66px!important;border-radius:13px!important;font-size:10px!important}
html[data-theme="light"] .dashboard-shell #sidebar .nav-svg{width:24px!important;height:24px!important}

/* Analysis approved proportions. */
html[data-theme="light"] .analysis-mode-tabs{min-height:50px!important;height:50px!important;border-radius:12px!important}
html[data-theme="light"] .analysis-mode-tabs button{font-size:11px!important}
html[data-theme="light"] .analysis-studio-grid{grid-template-columns:360px minmax(0,1fr)!important;gap:16px!important}
html[data-theme="light"] .analysis-control-panel{padding:15px!important}
html[data-theme="light"] .analysis-plot-card{min-height:470px!important;padding:16px!important}

/* ---------- Dialogs: reference-sized, no horizontal overflow ---------- */
html[data-theme="light"] .service-manager-shell .clean-auth-modal,
html[data-theme="light"] .configuration-app .clean-auth-modal,
html[data-theme="light"] .dashboard-shell .clean-auth-modal{
  width:min(480px,calc(100vw - 36px))!important;max-width:480px!important;padding:26px!important;border-radius:18px!important;overflow:hidden!important;
}
html[data-theme="light"] .clean-auth-modal .auth-brand img{width:50px!important;height:50px!important}
html[data-theme="light"] .clean-auth-modal .auth-brand span{font-size:15px!important}
html[data-theme="light"] .clean-auth-modal .auth-brand small{font-size:10px!important}
html[data-theme="light"] .clean-auth-modal h2{font-size:28px!important;margin:14px 0 7px!important}
html[data-theme="light"] .clean-auth-modal>p{font-size:12px!important;line-height:1.45!important;margin-bottom:16px!important}
html[data-theme="light"] .clean-auth-modal .auth-fields{gap:12px!important}
html[data-theme="light"] .clean-auth-modal .auth-fields label>span{font-size:11px!important;margin-bottom:5px!important}
html[data-theme="light"] .clean-auth-modal .auth-fields input{height:46px!important;min-height:46px!important;border-radius:9px!important;font-size:12px!important;padding:9px 12px!important}
html[data-theme="light"] .clean-auth-modal .auth-meta-row{font-size:10px!important;margin-top:11px!important}
html[data-theme="light"] .clean-auth-modal .auth-submit{height:46px!important;min-height:46px!important;border-radius:9px!important;font-size:13px!important}
html[data-theme="light"] .destructive-confirmation{width:min(560px,calc(100vw - 36px))!important;max-width:560px!important;padding:26px!important;border-radius:18px!important}
html[data-theme="light"] .destructive-confirmation h2{font-size:26px!important}
html[data-theme="light"] .destructive-confirmation>p{font-size:12px!important}
html[data-theme="light"] .destructive-confirm-field{font-size:11px!important;gap:7px!important}
html[data-theme="light"] .destructive-confirm-field input{height:46px!important;min-height:46px!important;font-size:12px!important}
html[data-theme="light"] .destructive-modal-actions .touch-button{height:43px!important;min-height:43px!important;font-size:11px!important}

/* ---------- Laptop / compact desktop ---------- */
@media (max-width:1450px){
  html[data-theme="light"] .service-manager-shell .service-workbench{grid-template-columns:280px minmax(0,1fr)!important;height:clamp(360px,50vh,520px)!important;min-height:360px!important}
  html[data-theme="light"] .service-manager-shell .operation-summary{height:96px!important;min-height:96px!important;padding-left:66px!important}
  html[data-theme="light"] .service-manager-shell .operation-summary:before{width:42px!important;height:42px!important}
  html[data-theme="light"] .configuration-app .station-config-launcher{height:90px!important;min-height:90px!important}
  html[data-theme="light"] .configuration-app .station-config-launcher-icon{width:50px!important;height:50px!important;min-width:50px!important}
  html[data-theme="light"] .configuration-app .station-identity-card{min-height:260px!important}
  html[data-theme="light"] .station-live-grid .premium-live-tile{height:196px!important;min-height:196px!important;max-height:196px!important}
}
@media (max-width:1100px){
  html[data-theme="light"] .service-manager-shell .service-commandbar,
  html[data-theme="light"] .configuration-app .topbar-inner,
  html[data-theme="light"] .dashboard-shell .top-inner{min-height:78px!important;height:78px!important}
  html[data-theme="light"] .service-manager-shell .service-commandbar,
  html[data-theme="light"] .configuration-app .config-topbar,
  html[data-theme="light"] .dashboard-shell .top-glass{flex-basis:78px!important}
  html[data-theme="light"] .service-manager-shell .suite-brand-mark,
  html[data-theme="light"] .configuration-app .suite-brand-mark,
  html[data-theme="light"] .dashboard-shell .suite-brand-mark{width:46px!important;height:46px!important;flex-basis:46px!important}
  html[data-theme="light"] .service-manager-shell .brand-product,
  html[data-theme="light"] .configuration-app .suite-brand-copy strong,
  html[data-theme="light"] .dashboard-shell .suite-brand-copy strong{font-size:16px!important}
  html[data-theme="light"] .service-manager-shell .service-workbench{grid-template-columns:230px minmax(0,1fr)!important;min-height:340px!important;height:48vh!important}
  html[data-theme="light"] .service-manager-shell .runtime-console{grid-template-columns:72px minmax(0,1fr)!important}
  html[data-theme="light"] .service-manager-shell .orb-ring{width:68px!important;height:68px!important}
  html[data-theme="light"] .service-manager-shell .orb-core{width:50px!important;height:50px!important}
  html[data-theme="light"] .configuration-app .station-config-launcher{height:78px!important;min-height:78px!important;padding:10px 12px!important;gap:10px!important}
  html[data-theme="light"] .configuration-app .station-config-launcher-icon{width:44px!important;height:44px!important;min-width:44px!important}
  html[data-theme="light"] .configuration-app .station-config-launcher-copy strong{font-size:13px!important}
  html[data-theme="light"] .configuration-app .station-config-launcher-copy small{font-size:9px!important}
  html[data-theme="light"] .configuration-app .station-identity-card{min-height:235px!important}
  html[data-theme="light"] .configuration-app .station-identity-card .form-grid{gap:10px 12px!important}
  html[data-theme="light"] .configuration-app #config-dock,
  html[data-theme="light"] .service-manager-shell #service-dock{width:min(760px,92vw)!important}
  html[data-theme="light"] .station-live-grid .premium-live-tile{height:180px!important;min-height:180px!important;max-height:180px!important}
}
@media (max-width:760px){
  html[data-theme="light"] .service-manager-shell .app-content,
  html[data-theme="light"] .configuration-app .app-shell,
  html[data-theme="light"] .dashboard-shell{padding:8px!important;gap:8px!important}
  html[data-theme="light"] .service-manager-shell .service-workbench{grid-template-columns:1fr!important;height:auto!important;min-height:0!important}
  html[data-theme="light"] .service-manager-shell .service-primary-console{min-height:320px!important}
  html[data-theme="light"] .service-manager-shell .service-operations-pane{min-height:360px!important}
  html[data-theme="light"] .configuration-app .station-config-launchers{grid-template-columns:1fr!important}
  html[data-theme="light"] .configuration-app .station-identity-card .form-grid{grid-template-columns:1fr!important}
  html[data-theme="light"] .configuration-app .station-identity-card{min-height:0!important;padding-bottom:74px!important}
  html[data-theme="light"] .station-live-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}

/* Full-HD / maximized Windows parity. The approved montage was produced from
   full desktop captures, so do not leave the interface at laptop-scale when
   the Edge WebView is maximized. */
@media (min-width:1600px) and (min-height:900px){
  html[data-theme="light"] .service-manager-shell .service-commandbar,
  html[data-theme="light"] .configuration-app .topbar-inner,
  html[data-theme="light"] .dashboard-shell .top-inner{min-height:116px!important;height:116px!important}
  html[data-theme="light"] .service-manager-shell .service-commandbar,
  html[data-theme="light"] .configuration-app .config-topbar,
  html[data-theme="light"] .dashboard-shell .top-glass{flex-basis:116px!important}
  html[data-theme="light"] .service-manager-shell .suite-brand-mark,
  html[data-theme="light"] .configuration-app .suite-brand-mark,
  html[data-theme="light"] .dashboard-shell .suite-brand-mark{width:66px!important;height:66px!important;flex-basis:66px!important}
  html[data-theme="light"] .service-manager-shell .brand-product,
  html[data-theme="light"] .configuration-app .suite-brand-copy strong,
  html[data-theme="light"] .dashboard-shell .suite-brand-copy strong{font-size:22px!important}
  html[data-theme="light"] .service-manager-shell .brand-company,
  html[data-theme="light"] .configuration-app .company-name,
  html[data-theme="light"] .dashboard-shell .dashboard-company{font-size:12px!important}
  html[data-theme="light"] .service-manager-shell .service-workbench{height:clamp(520px,55vh,650px)!important;grid-template-columns:390px minmax(0,1fr)!important}
  html[data-theme="light"] .service-manager-shell .service-primary-console{padding:22px!important}
  html[data-theme="light"] .service-manager-shell .operation-summary{height:124px!important;min-height:124px!important}
  html[data-theme="light"] .configuration-app .station-config-launcher{height:116px!important;min-height:116px!important;padding:16px 20px!important}
  html[data-theme="light"] .configuration-app .station-config-launcher-icon{width:64px!important;height:64px!important;min-width:64px!important}
  html[data-theme="light"] .configuration-app .station-config-launcher-copy strong{font-size:17px!important}
  html[data-theme="light"] .configuration-app .station-config-launcher-copy small{font-size:11px!important}
  html[data-theme="light"] .configuration-app .station-identity-card{min-height:320px!important;padding:20px 21px 78px!important}
  html[data-theme="light"] .configuration-app .station-identity-card>h2{font-size:21px!important}
  html[data-theme="light"] .configuration-app .station-identity-card>p{font-size:12px!important}
  html[data-theme="light"] .configuration-app .station-identity-card input,
  html[data-theme="light"] .configuration-app .station-identity-card select,
  html[data-theme="light"] .configuration-app .station-identity-card textarea,
  html[data-theme="light"] .configuration-app .station-identity-card .touch-field{height:50px!important;min-height:50px!important;font-size:13px!important}
  html[data-theme="light"] .configuration-app #config-dock .dock,
  html[data-theme="light"] .service-manager-shell #service-dock .dock{height:94px!important;min-height:94px!important}
  html[data-theme="light"] .configuration-app #config-dock .dock-item,
  html[data-theme="light"] .service-manager-shell #service-dock .dock-item{height:78px!important;min-height:78px!important}
  html[data-theme="light"] .station-live-grid .premium-live-tile{height:240px!important;min-height:240px!important;max-height:240px!important}
}


/* ======================================================================
   LEGACY MIGRATION SOURCE: src/daq/webui/shared/frontend_ui9.css
   Consolidated into the single universal Project 00 stylesheet.
   ====================================================================== */
/* AESST DAS UI8 — verified website-style frontend layer
   Presentation only. Acquisition, storage, protocols and controls remain in Python backend. */
:root{
  --ui7-bg:#f4f8fc;--ui7-bg-2:#edf5fb;--ui7-surface:#ffffff;--ui7-surface-2:#f8fbfe;
  --ui7-line:#d9e6f0;--ui7-line-strong:#c9dae7;--ui7-text:#102a43;--ui7-muted:#617a90;
  --ui7-primary:#1677ff;--ui7-primary-2:#0ea5e9;--ui7-success:#13a66b;--ui7-warning:#e99a05;--ui7-danger:#e54b4b;
  --ui7-violet:#8257e6;--ui7-pink:#ed3f91;--ui7-cyan:#08a9d8;--ui7-radius:18px;--ui7-radius-sm:13px;
  --ui7-shadow:0 10px 28px rgba(40,74,105,.08);--ui7-shadow-soft:0 4px 14px rgba(40,74,105,.055);
  --ui7-ease:cubic-bezier(.2,.8,.2,1);--ui7-font:"Segoe UI Variable","Segoe UI",Inter,system-ui,-apple-system,sans-serif;
  --adq-page:var(--ui7-bg);--adq-surface:var(--ui7-surface);--adq-surface-strong:var(--ui7-surface);--adq-surface-soft:var(--ui7-surface-2);
  --adq-edge:var(--ui7-line);--adq-divider:#e8f0f6;--adq-border-bright:#fff;--adq-text-primary:var(--ui7-text);--adq-text-secondary:var(--ui7-muted);--adq-text-tertiary:#7d93a6;
  --adq-accent:var(--ui7-primary);--adq-accent-2:var(--ui7-primary-2);--adq-accent-soft:#e8f3ff;--adq-accent-strong:#075cc7;
  --adq-success:var(--ui7-success);--adq-warning:var(--ui7-warning);--adq-danger:var(--ui7-danger);--adq-error:var(--ui7-danger);
  --adq-danger-soft:#fff0f1;--adq-technical-bg:#fbfdff;--adq-shadow-md:var(--ui7-shadow-soft);--adq-font:var(--ui7-font);--adq-motion:var(--ui7-ease);
}
html[data-theme="dark"]{
  --ui7-bg:#0b1420;--ui7-bg-2:#101c2a;--ui7-surface:#142131;--ui7-surface-2:#18283a;--ui7-line:#263a4d;--ui7-line-strong:#355069;
  --ui7-text:#edf6ff;--ui7-muted:#9fb2c4;--ui7-shadow:0 12px 30px rgba(0,0,0,.22);--ui7-shadow-soft:0 5px 16px rgba(0,0,0,.18);
  --adq-accent-soft:#153a64;--adq-accent-strong:#7fc0ff;--adq-divider:#223547;--adq-border-bright:#203246;--adq-technical-bg:#0f1c29;--adq-danger-soft:#3a1d25;
}
*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;font-family:var(--ui7-font);background:var(--ui7-bg);color:var(--ui7-text);text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}
body{background:radial-gradient(circle at 8% 0%,rgba(22,119,255,.07),transparent 28%),radial-gradient(circle at 96% 8%,rgba(14,165,233,.055),transparent 24%),linear-gradient(180deg,var(--ui7-bg),var(--ui7-bg-2));}
button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed}.svg-defs{position:absolute}
[hidden]{display:none!important}.glass-card{background:var(--ui7-surface)!important;border:1px solid var(--ui7-line)!important;border-radius:var(--ui7-radius)!important;box-shadow:var(--ui7-shadow-soft)!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
.touch-button,.touch-select,.touch-input,.touch-field{min-height:40px;border:1px solid var(--ui7-line-strong);border-radius:11px;background:var(--ui7-surface);color:var(--ui7-text);outline:0;transition:border-color .14s var(--ui7-ease),box-shadow .14s var(--ui7-ease),background .14s var(--ui7-ease),transform .14s var(--ui7-ease)}
.touch-button{padding:0 14px;font-weight:650;box-shadow:none}.touch-button:hover:not(:disabled){border-color:#9fc9ef;background:#f8fbff}.touch-button:active:not(:disabled){transform:translateY(1px)}.touch-button.primary{color:#fff;background:linear-gradient(135deg,var(--ui7-primary),#2467e8);border-color:transparent;box-shadow:0 6px 14px rgba(22,119,255,.18)}.touch-button.danger{color:#ac2f3c;background:#fff3f4;border-color:#f2c5ca}
.touch-input,.touch-field,.touch-select{padding:0 12px}.touch-input:focus,.touch-field:focus,.touch-select:focus{border-color:var(--ui7-primary);box-shadow:0 0 0 3px rgba(22,119,255,.11)}
.status-chip{display:inline-flex;align-items:center;justify-content:center;min-height:28px;padding:0 10px;border:1px solid var(--ui7-line);border-radius:999px;background:#f4f8fb;color:var(--ui7-muted);font-size:11px;font-weight:700;white-space:nowrap}.status-chip.good{color:#08794c;background:#eafaf3;border-color:#c7eadb}.status-chip.warn{color:#9c6300;background:#fff7df;border-color:#f1dfad}.status-chip.bad{color:#a4303c;background:#fff0f1;border-color:#f0c5ca}.status-chip.neutral{color:#5f7181;background:#f4f7fa}
.eyebrow,.panel-kicker{font-size:10px!important;font-weight:800!important;letter-spacing:.095em!important;text-transform:uppercase;color:#4d78a0!important}.section-head h2,.page-heading h1{color:var(--ui7-text)}
.suite-brand{display:flex;align-items:center;gap:11px;min-width:0}.suite-brand-mark,.brand-mark{width:44px;height:44px;object-fit:contain;flex:0 0 auto;filter:drop-shadow(0 5px 9px rgba(22,119,255,.12))}.suite-brand-copy{display:grid;line-height:1.08}.suite-brand-copy strong,.brand-product{font-size:15px;font-weight:760;letter-spacing:-.02em}.suite-brand-copy span,.brand-company,.brand-version{font-size:9px;color:var(--ui7-muted)}
.account-control{display:flex;align-items:center;gap:8px}.session-user-chip{min-height:42px;padding:6px 11px;border:1px solid var(--ui7-line);border-radius:13px;background:var(--ui7-surface-2)}.account-icon-action{width:42px!important;min-width:42px!important;height:42px!important;padding:0!important;display:grid!important;place-items:center}.account-icon-action svg{fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.modal-backdrop{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;padding:24px;background:rgba(15,37,56,.34);backdrop-filter:blur(5px)}.modal{width:min(560px,calc(100vw - 36px));max-height:calc(100dvh - 48px);overflow:auto;padding:24px!important;border-radius:22px!important}.auth-modal{width:min(520px,calc(100vw - 36px))!important}.auth-brand{display:flex;align-items:center;gap:12px}.auth-brand img{width:48px;height:48px}.auth-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}.auth-fields label{display:grid;gap:6px;color:var(--ui7-muted);font-size:12px}.auth-actions{display:flex;gap:9px}.auth-actions .primary{flex:1}.auth-error{color:var(--ui7-danger);font-size:12px}
/* Web-like dock: always in document flow. Never overlays the content. */
.dock-wrap{position:relative!important;inset:auto!important;transform:none!important;z-index:30;display:flex;justify-content:center;pointer-events:none}.dock{pointer-events:auto;display:flex;align-items:center;gap:4px;padding:6px;border:1px solid var(--ui7-line);border-radius:18px;background:var(--ui7-surface);box-shadow:var(--ui7-shadow);max-width:min(820px,calc(100vw - 28px));overflow-x:auto;scrollbar-width:none}.dock::-webkit-scrollbar{display:none}.dock-item{appearance:none;border:0;background:transparent;color:#39556e;min-width:92px;height:54px;padding:6px 10px;border-radius:13px;display:grid;place-items:center;align-content:center;gap:3px;font-size:10px;font-weight:650;white-space:nowrap;transition:background .14s var(--ui7-ease),color .14s var(--ui7-ease),transform .14s var(--ui7-ease)}.dock-item:hover{background:#f1f7fc}.dock-item.active{background:#e8f3ff;color:#0866da}.dock-item .icon,.dock-item svg.nav-svg,.dock-item>svg{width:18px;height:18px}.dock-item svg{fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.dock-item b{position:absolute;margin:-30px 0 0 35px;min-width:18px;height:18px;padding:0 4px;border-radius:999px;background:var(--ui7-danger);color:white;display:grid;place-items:center;font-size:9px}
/* Service Manager */
body.service-manager-shell{overflow:hidden!important}.service-manager-shell .app-shell{height:100dvh!important;min-height:0}.service-manager-shell .app-content{height:100%;min-height:0;overflow:hidden!important;padding:14px 16px!important}.service-manager-shell .app-content-inner{width:min(1480px,100%)!important;height:100%;margin:auto;display:grid!important;grid-template-rows:auto minmax(0,1fr)!important;gap:12px!important}
.service-commandbar{min-height:76px!important;padding:12px 14px!important;border-radius:18px!important;background:var(--ui7-surface)!important;border:1px solid var(--ui7-line)!important;box-shadow:var(--ui7-shadow-soft)!important}.service-commandbar:after{display:none!important}.service-title-stack{display:grid;gap:1px}.service-title-stack .brand-product{font-size:18px}.hero-session{margin-left:auto}
.service-stage{min-height:0;display:grid!important;grid-template-rows:minmax(0,1fr) 66px!important;gap:12px!important;overflow:hidden!important}.service-workbench{min-height:0!important;display:grid!important;grid-template-columns:minmax(270px,315px) minmax(0,1fr)!important;gap:12px!important;overflow:hidden}.service-control-rail{min-height:0;display:grid!important;grid-template-rows:minmax(0,1.28fr) minmax(0,.72fr)!important;gap:12px!important}.service-operations-pane{min-height:0!important;display:grid!important;grid-template-rows:auto minmax(0,1fr) auto!important;gap:12px!important}.service-primary-console,.service-database-panel,.service-activity-panel,.operations-strip,.reliability-strip{background:var(--ui7-surface)!important;border:1px solid var(--ui7-line)!important;border-radius:18px!important;box-shadow:var(--ui7-shadow-soft)!important;color:var(--ui7-text)!important}
.service-primary-console{padding:17px!important;background:linear-gradient(145deg,#f7fbff,#eef7ff)!important;overflow:hidden}.service-primary-console:after{display:none!important}.service-primary-console .panel-kicker,.service-primary-console .runtime-label{color:#4d78a0!important}.service-primary-console h2,.service-primary-console strong{color:var(--ui7-text)!important}.service-primary-console .status-chip{background:var(--ui7-surface)!important;color:var(--ui7-muted)!important;border-color:var(--ui7-line)!important}.runtime-console{grid-template-columns:66px minmax(0,1fr)!important;margin:14px 0!important;padding:14px 0!important;border-color:var(--ui7-line)!important}.orb-ring{width:58px!important;height:58px!important;border-color:#cfe2f1!important;background:#edf6fd!important;box-shadow:none!important}.orb-core{width:38px!important;height:38px!important;background:#deebf5!important;border-color:#c4d8e8!important}.runtime-copy>#metric-runtime{font-size:26px!important}.runtime-copy>#metric-runtime-caption,.runtime-detail{color:var(--ui7-muted)!important}.service-primary-console .touch-button:not(.primary){background:var(--ui7-surface)!important;color:var(--ui7-text)!important;border-color:var(--ui7-line)!important}.service-database-panel{padding:15px!important;overflow:auto}.operations-strip{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;overflow:hidden!important}.operation-summary{padding:14px!important;min-height:76px}.service-activity-panel{padding:15px!important;min-height:0!important;overflow:hidden}.activity-list{min-height:0!important;max-height:none!important;overflow:auto!important;background:#f7fbfe!important;border-color:var(--ui7-line)!important}.activity-row{font-size:11px!important;min-height:36px!important}.service-stage>.dock-wrap{align-self:end;height:66px;display:flex!important;align-items:flex-end}.service-stage>.dock-wrap .dock{height:62px}
.reliability-strip{grid-template-columns:minmax(140px,.65fr) minmax(190px,1fr) minmax(190px,1fr) auto!important;padding:9px!important}.service-manager-shell .empty-state{min-height:120px}
/* Configuration */
body.configuration-app{overflow:hidden!important}.configuration-app .app-shell{height:100dvh!important;display:grid!important;grid-template-rows:82px minmax(0,1fr)!important;overflow:hidden}.config-topbar{padding:10px 14px!important;background:transparent!important;border:0!important}.config-topbar .topbar-inner{height:62px;max-width:1480px;margin:auto;padding:9px 12px!important;border:1px solid var(--ui7-line)!important;border-radius:18px!important;background:var(--ui7-surface)!important;box-shadow:var(--ui7-shadow-soft)!important}.topbar-context{margin-left:20px;padding-left:20px;border-left:1px solid var(--ui7-line)}.topbar-context strong{font-size:15px}.topbar-context small{display:block;color:var(--ui7-muted);font-size:10px;margin-top:2px}.config-stage{min-height:0!important;max-width:1480px;width:calc(100% - 28px);margin:0 auto 12px;display:grid!important;grid-template-rows:minmax(0,1fr) 66px!important;gap:12px!important;overflow:hidden!important}.configuration-app .app-content{min-height:0!important;overflow:auto!important;padding:0!important}.configuration-app .app-content-inner{width:100%!important;max-width:none!important;margin:0!important;padding:0 2px 4px!important}.configuration-app .page-view{min-height:100%;content-visibility:auto;contain-intrinsic-size:900px 700px}.config-stage>.dock-wrap{height:66px;display:flex!important;align-items:flex-end}.config-stage>.dock-wrap .dock{height:62px}.configuration-app .nav-card,.configuration-app .glass-card,.configuration-app .config-card,.configuration-app .panel-card{border-color:var(--ui7-line)!important;box-shadow:var(--ui7-shadow-soft)!important;backdrop-filter:none!important}.configuration-app .nav-card:hover{transform:translateY(-1px)}
/* Dashboard */
body:has(.dashboard-shell){overflow:hidden!important}.dashboard-shell{height:100dvh!important;min-height:0!important;display:grid!important;grid-template-rows:auto minmax(0,1fr) 70px!important;background:transparent!important;overflow:hidden!important}.dashboard-shell:before{display:none!important}.top-glass{position:relative!important;top:auto!important;margin:12px 14px 10px!important;padding:0!important;background:transparent!important;border:0!important;box-shadow:none!important;z-index:20}.top-inner{min-height:64px!important;max-width:1480px;margin:auto;padding:10px 12px!important;border:1px solid var(--ui7-line)!important;border-radius:18px!important;background:var(--ui7-surface)!important;box-shadow:var(--ui7-shadow-soft)!important}.station-copy{padding-left:18px;margin-left:8px;border-left:1px solid var(--ui7-line)}.station-meta-inline{display:flex;gap:8px;flex-wrap:wrap;color:var(--ui7-muted);font-size:10px}.station-meta-inline span+span:before{content:"•";margin-right:8px;color:#afbdc9}.top-actions{margin-left:auto}.dashboard-content{min-height:0!important;overflow:auto!important;padding:0 14px 12px!important}.dashboard-inner{width:min(1480px,100%)!important;max-width:none!important;margin:auto!important;display:grid!important;gap:12px!important;padding:0!important}.page{gap:12px!important;content-visibility:auto;contain-intrinsic-size:1200px 800px}.metric-grid{gap:10px!important}.metric-card{min-height:82px!important;padding:12px 13px!important}.metric-card>strong{font-size:22px!important}.panel-pad{padding:14px!important}.value-grid,.station-live-grid{grid-template-columns:repeat(var(--tile-columns,4),minmax(0,1fr))!important;gap:10px!important}.value-tile,.premium-live-tile,.metro-value-tile{min-height:148px!important;border-radius:16px!important;box-shadow:var(--ui7-shadow-soft)!important}.premium-live-tile{border-top-width:3px!important}.dashboard-shell>#sidebar{position:relative!important;left:auto!important;right:auto!important;bottom:auto!important;transform:none!important;height:70px!important;display:flex!important;align-items:flex-start!important;justify-content:center!important;padding-top:2px!important;pointer-events:none}.dashboard-shell>#sidebar .dock{pointer-events:auto;height:62px!important}.dashboard-shell .dock-item{min-width:82px}.chart-wrap,.interactive-chart,.station-trend-surface{background:var(--ui7-surface)!important;border-color:var(--ui7-line)!important;box-shadow:none!important}.overview-mode-tabs{border-color:var(--ui7-line)!important;box-shadow:var(--ui7-shadow-soft)!important}.error-banner{top:90px!important}.premium-enter{animation:ui7Enter .22s var(--ui7-ease) both}@keyframes ui7Enter{from{opacity:.25;transform:translateY(5px)}to{opacity:1;transform:none}}
/* Prefer compositing only for interactive elements, not whole pages. */
.touch-button,.dock-item,.value-tile{will-change:auto}.activity-list,.dashboard-content,.configuration-app .app-content{overscroll-behavior:contain;scrollbar-gutter:stable}.activity-list>*{contain:layout paint}.value-tile{contain:layout paint style}
@media(max-width:1180px){.service-workbench{grid-template-columns:280px minmax(0,1fr)!important}.value-grid,.station-live-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.metric-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}.topbar-context,.station-copy{display:none!important}.dock-item{min-width:78px}}
@media(max-width:850px){body.service-manager-shell,body.configuration-app,body:has(.dashboard-shell){overflow:auto!important}.service-manager-shell .app-shell,.configuration-app .app-shell,.dashboard-shell{height:auto!important;min-height:100dvh!important;display:block!important;overflow:visible!important}.service-manager-shell .app-content,.configuration-app .app-content,.dashboard-content{overflow:visible!important}.service-manager-shell .app-content-inner{height:auto}.service-stage,.config-stage{display:block!important;overflow:visible!important;width:calc(100% - 20px)!important}.service-workbench{grid-template-columns:1fr!important;overflow:visible!important}.service-control-rail,.service-operations-pane{display:grid!important;grid-template-rows:auto!important}.service-stage>.dock-wrap,.config-stage>.dock-wrap,.dashboard-shell>#sidebar{position:sticky!important;bottom:8px!important;margin:12px 0 8px!important;z-index:80}.operations-strip{grid-template-columns:1fr!important}.operation-summary{border-right:0!important;border-bottom:1px solid var(--ui7-line)}.reliability-strip{grid-template-columns:1fr!important}.auth-fields{grid-template-columns:1fr}.value-grid,.station-live-grid,.metric-grid{grid-template-columns:1fr!important}.top-actions{gap:5px}.top-actions time{display:none}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation-duration:.001ms!important;transition-duration:.001ms!important}}


/* UI7.1 — unified account control / simulator identity */
.account-control{display:inline-flex!important;align-items:center!important;gap:7px!important;padding:4px!important;min-height:46px!important;border:1px solid var(--ui7-line)!important;border-radius:16px!important;background:var(--ui7-surface)!important;box-shadow:0 4px 14px rgba(40,74,105,.055)!important;overflow:hidden!important}
.account-control .session-user-chip{display:flex!important;align-items:center!important;gap:8px!important;min-height:36px!important;padding:4px 8px!important;border:0!important;border-radius:12px!important;background:var(--ui7-surface-2)!important;box-shadow:none!important;text-align:left!important}
.account-control .session-user-chip .user-avatar{display:grid!important;place-items:center!important;width:28px!important;height:28px!important;flex:0 0 28px!important;border-radius:10px!important;background:#e8f3ff!important;color:#0b6bdd!important;border:1px solid #cfe3f7!important}
.account-control .session-user-chip .user-avatar svg{display:block!important;width:16px!important;height:16px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.9!important;stroke-linecap:round!important;stroke-linejoin:round!important}
.account-control .session-user-chip .session-copy{display:grid!important;gap:1px!important;min-width:0!important}
.account-control .session-user-chip .session-label{font-size:8px!important;line-height:1!important;letter-spacing:.07em!important;text-transform:uppercase!important;color:var(--ui7-muted)!important;font-weight:750!important}
.account-control .session-user-chip strong{font-size:11px!important;line-height:1.15!important;color:var(--ui7-text)!important;font-weight:760!important;max-width:112px!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}
.account-icon-action{display:grid!important;place-items:center!important;width:36px!important;min-width:36px!important;height:36px!important;min-height:36px!important;padding:0!important;border:1px solid var(--ui7-line)!important;border-radius:11px!important;background:var(--ui7-surface)!important;color:#0b6bdd!important;box-shadow:none!important;overflow:hidden!important}
.account-icon-action svg{display:block!important;width:18px!important;height:18px!important;max-width:18px!important;max-height:18px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.9!important;stroke-linecap:round!important;stroke-linejoin:round!important;transform:none!important}
.account-icon-action:hover:not(:disabled){background:#eef6ff!important;border-color:#bcdaf5!important}
.account-icon-action .login-icon{display:block!important}.account-icon-action .logout-icon{display:none!important}.account-icon-action.is-authenticated .login-icon{display:none!important}.account-icon-action.is-authenticated .logout-icon{display:block!important}
.dashboard-account{white-space:nowrap!important}

/* UI7.1 — Protocol Studio joins the same fast frontend design system */
body.protocol-studio-shell{min-height:100dvh!important;overflow:auto!important;padding:14px!important;background:radial-gradient(circle at 8% 0%,rgba(22,119,255,.07),transparent 28%),radial-gradient(circle at 96% 8%,rgba(14,165,233,.055),transparent 24%),linear-gradient(180deg,var(--ui7-bg),var(--ui7-bg-2))!important;color:var(--ui7-text)!important}
.protocol-studio-shell .protocol-header{max-width:1480px!important;margin:0 auto 12px!important;padding:14px 16px!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:18px!important;border-radius:18px!important;background:var(--ui7-surface)!important;border:1px solid var(--ui7-line)!important;box-shadow:var(--ui7-shadow-soft)!important}
.protocol-studio-shell .protocol-header h1{margin:2px 0 4px!important;font-size:21px!important;letter-spacing:-.025em!important;color:var(--ui7-text)!important}.protocol-studio-shell .protocol-header p{margin:0!important;max-width:920px!important;font-size:11px!important;line-height:1.45!important;color:var(--ui7-muted)!important}
.protocol-studio-shell .protocol-grid{max-width:1480px!important;margin:auto!important;display:grid!important;gap:12px!important}
.protocol-studio-shell .easy-mode-shell{display:grid!important;gap:12px!important}.protocol-studio-shell .easy-mode-head,.protocol-studio-shell .easy-step,.protocol-studio-shell .advanced-lab,.protocol-studio-shell .profile-panel{border:1px solid var(--ui7-line)!important;border-radius:18px!important;background:var(--ui7-surface)!important;box-shadow:var(--ui7-shadow-soft)!important;backdrop-filter:none!important}
.protocol-studio-shell .easy-mode-head{padding:16px!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:16px!important}.protocol-studio-shell .easy-mode-head h2{font-size:18px!important;margin:2px 0 4px!important;color:var(--ui7-text)!important}.protocol-studio-shell .easy-mode-head p{margin:0!important;font-size:11px!important;color:var(--ui7-muted)!important}
.protocol-studio-shell .easy-mode-badge,.protocol-studio-shell .easy-step-state{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-height:28px!important;padding:0 10px!important;border:1px solid var(--ui7-line)!important;border-radius:999px!important;background:#f4f8fb!important;color:#58748e!important;font-size:9px!important;font-weight:800!important;letter-spacing:.05em!important}
.protocol-studio-shell .easy-step{padding:15px!important}.protocol-studio-shell .easy-step-head{display:grid!important;grid-template-columns:auto minmax(0,1fr) auto!important;align-items:start!important;gap:12px!important;margin-bottom:12px!important}.protocol-studio-shell .easy-step-number{width:32px!important;height:32px!important;display:grid!important;place-items:center!important;border-radius:10px!important;background:#e8f3ff!important;color:#0b6bdd!important;border:1px solid #cfe3f7!important;font-weight:800!important}.protocol-studio-shell .easy-step-head h3{margin:0 0 3px!important;font-size:15px!important;color:var(--ui7-text)!important}.protocol-studio-shell .easy-step-head p{margin:0!important;font-size:10px!important;line-height:1.4!important;color:var(--ui7-muted)!important}.protocol-studio-shell .easy-grid,.protocol-studio-shell .form-grid{gap:10px!important}.protocol-studio-shell label{color:var(--ui7-muted)!important;font-size:10px!important;font-weight:700!important}.protocol-studio-shell .touch-field,.protocol-studio-shell .touch-select,.protocol-studio-shell .touch-input{min-height:38px!important;background:var(--ui7-surface)!important;border-color:var(--ui7-line-strong)!important;border-radius:10px!important;color:var(--ui7-text)!important}.protocol-studio-shell .touch-button{min-height:38px!important;border-radius:10px!important}.protocol-studio-shell .raw-console,.protocol-studio-shell textarea,.protocol-studio-shell pre{border-color:var(--ui7-line)!important;background:#f8fbfe!important;color:var(--ui7-text)!important}
@media(max-width:850px){body.protocol-studio-shell{padding:9px!important}.protocol-studio-shell .protocol-header{align-items:flex-start!important}.protocol-studio-shell .easy-step-head{grid-template-columns:auto minmax(0,1fr)!important}.protocol-studio-shell .easy-step-state{grid-column:2!important;justify-self:start!important}.protocol-studio-shell .easy-grid,.protocol-studio-shell .form-grid{grid-template-columns:1fr!important}}

/* ========================================================================== */
/* AESST DAS UI8 — verified website-style application shell                     */
/* ========================================================================== */
:root{
  --ui8-max:1480px;
  --ui8-gap:12px;
  --ui8-header-h:74px;
  --ui8-dock-h:68px;
  --ui8-radius:16px;
  --ui8-radius-sm:11px;
  --ui8-card-shadow:0 5px 18px rgba(38,73,105,.055);
  --ui8-float-shadow:0 14px 34px rgba(38,73,105,.11);
}
html.ui9-frontend{color-scheme:light dark}
html.ui9-frontend body{font-size:12px;line-height:1.4;overflow-x:hidden}
html.ui9-frontend button,html.ui9-frontend input,html.ui9-frontend select,html.ui9-frontend textarea{font-family:var(--ui7-font)}
html.ui9-frontend :focus-visible{outline:2px solid color-mix(in srgb,var(--ui7-primary) 70%,white);outline-offset:2px}

/* Shared brand/header language */
html.ui9-frontend .suite-brand{gap:10px!important}
html.ui9-frontend .suite-brand-mark,html.ui9-frontend .brand-mark{width:42px!important;height:42px!important;border-radius:11px;object-fit:contain;filter:drop-shadow(0 5px 10px rgba(22,119,255,.12))}
html.ui9-frontend .suite-brand-copy strong,html.ui9-frontend .brand-product{font-size:14px!important;font-weight:780!important;color:var(--ui7-text)!important;letter-spacing:-.02em!important}
html.ui9-frontend .suite-brand-copy span,html.ui9-frontend .brand-company,html.ui9-frontend .brand-version{font-size:8.5px!important;line-height:1.25!important;color:var(--ui7-muted)!important}
html.ui9-frontend .glass-card{border-radius:var(--ui8-radius)!important;box-shadow:var(--ui8-card-shadow)!important;background:var(--ui7-surface)!important;border:1px solid var(--ui7-line)!important}
html.ui9-frontend .section-head{gap:12px!important}
html.ui9-frontend .section-head h2{font-size:15px!important;line-height:1.2!important;letter-spacing:-.02em!important;margin:2px 0 3px!important}
html.ui9-frontend .section-head p{font-size:9.5px!important;line-height:1.45!important;color:var(--ui7-muted)!important;margin:0!important}
html.ui9-frontend .eyebrow,html.ui9-frontend .panel-kicker{font-size:8.5px!important;letter-spacing:.085em!important;color:#47789f!important}

/* Buttons and fields are compact web controls, not native desktop blocks. */
html.ui9-frontend .touch-button{min-height:36px!important;height:auto!important;padding:0 12px!important;border-radius:10px!important;font-size:10px!important;font-weight:720!important}
html.ui9-frontend .touch-input,html.ui9-frontend .touch-field,html.ui9-frontend .touch-select{min-height:38px!important;height:38px!important;padding:0 11px!important;border-radius:10px!important;font-size:10px!important;background:var(--ui7-surface)!important}
html.ui9-frontend textarea.touch-field,html.ui9-frontend textarea.touch-input{height:auto!important;min-height:74px!important;padding:9px 11px!important}
html.ui9-frontend .status-chip{min-height:26px!important;padding:0 9px!important;font-size:9px!important;border-radius:999px!important}

/* One account component across Service Manager, Configuration and Dashboard. */
html.ui9-frontend .account-control{
  display:grid!important;grid-template-columns:minmax(0,auto) 36px!important;align-items:center!important;gap:4px!important;
  min-height:44px!important;padding:3px!important;border:1px solid var(--ui7-line)!important;border-radius:14px!important;
  background:var(--ui7-surface)!important;box-shadow:0 3px 12px rgba(38,73,105,.045)!important;overflow:hidden!important;
}
html.ui9-frontend .account-control .session-user-chip{
  display:grid!important;grid-template-columns:28px minmax(0,1fr)!important;grid-template-rows:auto!important;align-items:center!important;gap:7px!important;
  min-width:0!important;min-height:36px!important;padding:3px 7px 3px 4px!important;margin:0!important;border:0!important;border-radius:11px!important;
  background:var(--ui7-surface-2)!important;box-shadow:none!important;text-align:left!important;
}
html.ui9-frontend .account-control .user-avatar{
  display:grid!important;place-items:center!important;width:28px!important;height:28px!important;min-width:28px!important;min-height:28px!important;
  border-radius:9px!important;border:1px solid #cfe3f7!important;background:#eaf4ff!important;color:#0a6bdc!important;overflow:hidden!important;
}
html.ui9-frontend .account-control .user-avatar svg{
  display:block!important;width:16px!important;height:16px!important;min-width:16px!important;min-height:16px!important;max-width:16px!important;max-height:16px!important;
  fill:none!important;stroke:currentColor!important;stroke-width:1.8!important;stroke-linecap:round!important;stroke-linejoin:round!important;transform:none!important;
}
html.ui9-frontend .account-control .session-copy{display:grid!important;gap:1px!important;min-width:0!important;line-height:1.05!important}
html.ui9-frontend .account-control .session-label{order:2;font-size:7.5px!important;line-height:1!important;letter-spacing:.035em!important;text-transform:none!important;color:var(--ui7-muted)!important;font-weight:650!important}
html.ui9-frontend .account-control .session-copy strong{order:1;font-size:10.5px!important;line-height:1.15!important;color:var(--ui7-text)!important;font-weight:770!important;max-width:112px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
html.ui9-frontend .account-icon-action{
  display:grid!important;place-items:center!important;width:36px!important;height:36px!important;min-width:36px!important;min-height:36px!important;max-width:36px!important;max-height:36px!important;
  margin:0!important;padding:0!important;border:0!important;border-radius:10px!important;background:transparent!important;color:#0a6bdc!important;box-shadow:none!important;overflow:hidden!important;
}
html.ui9-frontend .account-icon-action:hover{background:#eaf4ff!important}
html.ui9-frontend .account-icon-action>svg{
  display:block!important;width:17px!important;height:17px!important;min-width:17px!important;min-height:17px!important;max-width:17px!important;max-height:17px!important;
  margin:0!important;padding:0!important;fill:none!important;stroke:currentColor!important;stroke-width:1.8!important;stroke-linecap:round!important;stroke-linejoin:round!important;transform:none!important;
}
html.ui9-frontend .account-icon-action .login-icon{display:block!important}
html.ui9-frontend .account-icon-action .logout-icon{display:none!important}
html.ui9-frontend .account-icon-action.is-authenticated .login-icon{display:none!important}
html.ui9-frontend .account-icon-action.is-authenticated .logout-icon{display:block!important}
html.ui9-frontend .account-control.is-authenticated .user-avatar{background:#eafaf3!important;border-color:#caeadb!important;color:#0b8a58!important}

/* Modal design. Keep content centered and never allow a modal to distort page layout. */
html.ui9-frontend .modal-backdrop{position:fixed!important;inset:0!important;z-index:5000!important;display:grid!important;place-items:center!important;padding:18px!important;background:rgba(19,38,55,.28)!important;backdrop-filter:blur(7px)!important}
html.ui9-frontend .modal-backdrop[hidden]{display:none!important}
html.ui9-frontend .modal{width:min(520px,calc(100vw - 28px))!important;max-height:calc(100dvh - 28px)!important;overflow:auto!important;padding:22px!important;border-radius:20px!important}
html.ui9-frontend .auth-modal{width:min(480px,calc(100vw - 28px))!important}
html.ui9-frontend .auth-brand img{width:42px!important;height:42px!important}
html.ui9-frontend .auth-modal h2{font-size:23px!important;margin:18px 0 5px!important;letter-spacing:-.035em!important}
html.ui9-frontend .auth-modal>p{margin:0 0 15px!important;color:var(--ui7-muted)!important;font-size:11px!important}
html.ui9-frontend .auth-fields{grid-template-columns:1fr 1fr!important;gap:10px!important}
html.ui9-frontend .auth-fields label{font-size:9px!important;gap:5px!important}
html.ui9-frontend .auth-actions{margin-top:14px!important;gap:8px!important}

/* Shared dock: document/grid row only. Never fixed over the content. */
html.ui9-frontend .dock-wrap{position:relative!important;inset:auto!important;left:auto!important;right:auto!important;bottom:auto!important;top:auto!important;transform:none!important;z-index:50!important;display:flex!important;justify-content:center!important;align-items:center!important;margin:0!important;padding:0!important;pointer-events:none!important}
html.ui9-frontend .dock{pointer-events:auto!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:3px!important;min-height:58px!important;padding:5px!important;border:1px solid var(--ui7-line)!important;border-radius:16px!important;background:var(--ui7-surface)!important;box-shadow:var(--ui8-float-shadow)!important;max-width:min(860px,calc(100vw - 24px))!important;overflow-x:auto!important;overflow-y:hidden!important;scrollbar-width:none!important}
html.ui9-frontend .dock-item{position:relative!important;display:grid!important;grid-template-rows:19px 13px!important;align-content:center!important;justify-items:center!important;gap:2px!important;min-width:86px!important;height:48px!important;padding:4px 9px!important;border:0!important;border-radius:11px!important;background:transparent!important;color:#35536d!important;font-size:8.5px!important;font-weight:690!important;white-space:nowrap!important}
html.ui9-frontend .dock-item:hover{background:#f0f6fb!important}
html.ui9-frontend .dock-item.active{background:#e8f3ff!important;color:#0867d8!important}
html.ui9-frontend .dock-item .icon,html.ui9-frontend .dock-item>svg,html.ui9-frontend .dock-item .nav-svg{display:block!important;width:18px!important;height:18px!important;max-width:18px!important;max-height:18px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.8!important;stroke-linecap:round!important;stroke-linejoin:round!important}
html.ui9-frontend .dock-item .label,html.ui9-frontend .dock-item>span:not(.icon){font-size:8.5px!important;line-height:1!important}
html.ui9-frontend .dock-item b{position:absolute!important;top:4px!important;right:9px!important;margin:0!important;min-width:16px!important;height:16px!important;padding:0 4px!important;font-size:8px!important}

/* ------------------------------ Service Manager --------------------------- */
html.ui9-frontend body.service-manager-shell{overflow:hidden!important;padding:0!important}
html.ui9-frontend .service-manager-shell .app-shell{height:100dvh!important;min-height:0!important;display:block!important;overflow:hidden!important}
html.ui9-frontend .service-manager-shell .app-content{height:100%!important;min-height:0!important;padding:12px!important;overflow:hidden!important}
html.ui9-frontend .service-manager-shell .app-content-inner{width:min(var(--ui8-max),100%)!important;height:100%!important;margin:0 auto!important;display:grid!important;grid-template-rows:auto minmax(0,1fr)!important;gap:10px!important;overflow:hidden!important}
html.ui9-frontend .service-commandbar{min-height:70px!important;padding:10px 12px!important;border-radius:16px!important;background:var(--ui7-surface)!important;border:1px solid var(--ui7-line)!important;box-shadow:var(--ui8-card-shadow)!important}
html.ui9-frontend .service-title-stack{display:grid!important;gap:0!important}
html.ui9-frontend .service-title-stack .brand-product{font-size:16px!important}
html.ui9-frontend .hero-session{display:flex!important;align-items:center!important;gap:7px!important;margin-left:auto!important}
html.ui9-frontend .service-stage{min-height:0!important;display:grid!important;grid-template-rows:minmax(0,1fr) 60px!important;gap:10px!important;overflow:hidden!important}
html.ui9-frontend .service-workbench{min-height:0!important;display:grid!important;grid-template-columns:minmax(285px,310px) minmax(0,1fr)!important;gap:10px!important;overflow:hidden!important}
html.ui9-frontend .service-control-rail{min-height:0!important;display:grid!important;grid-template-rows:minmax(0,1.25fr) minmax(0,.75fr)!important;gap:10px!important;overflow:hidden!important}
html.ui9-frontend .service-operations-pane{min-height:0!important;display:grid!important;grid-template-rows:78px minmax(0,1fr) auto!important;gap:10px!important;overflow:hidden!important}
html.ui9-frontend .service-primary-console,html.ui9-frontend .service-database-panel,html.ui9-frontend .service-activity-panel,html.ui9-frontend .operations-strip,html.ui9-frontend .reliability-strip{border-radius:16px!important;background:var(--ui7-surface)!important;border:1px solid var(--ui7-line)!important;box-shadow:var(--ui8-card-shadow)!important}
html.ui9-frontend .service-primary-console{padding:14px!important;background:linear-gradient(150deg,#f7fbff,#edf6ff)!important;color:var(--ui7-text)!important}
html.ui9-frontend .service-primary-console:after{display:none!important}
html.ui9-frontend .service-primary-console h2,html.ui9-frontend .service-primary-console strong{color:var(--ui7-text)!important}
html.ui9-frontend .runtime-console{display:grid!important;grid-template-columns:60px minmax(0,1fr)!important;gap:12px!important;margin:11px 0!important;padding:11px 0!important;border-color:var(--ui7-line)!important}
html.ui9-frontend .orb-ring{width:54px!important;height:54px!important;background:#edf6fd!important;border-color:#cfe1ef!important;box-shadow:none!important}
html.ui9-frontend .orb-core{width:34px!important;height:34px!important;background:#e3eef7!important;border-color:#cbdde9!important;box-shadow:none!important}
html.ui9-frontend .service-orb.running .orb-core{background:#ddf5eb!important}
html.ui9-frontend .runtime-copy>#metric-runtime{font-size:23px!important;color:var(--ui7-text)!important}
html.ui9-frontend .runtime-copy>#metric-runtime-caption,html.ui9-frontend .runtime-detail{color:var(--ui7-muted)!important;font-size:8.5px!important}
html.ui9-frontend .service-actions{grid-template-columns:1fr 86px!important;gap:7px!important}
html.ui9-frontend .service-primary-console .touch-button:not(.primary){background:var(--ui7-surface)!important;color:var(--ui7-text)!important;border-color:var(--ui7-line-strong)!important}
html.ui9-frontend .service-database-panel{padding:13px!important;overflow:auto!important}
html.ui9-frontend .service-db-actions{gap:7px!important}
html.ui9-frontend .operations-strip{grid-template-columns:repeat(3,minmax(0,1fr))!important;overflow:hidden!important}
html.ui9-frontend .operation-summary{padding:12px 13px!important;gap:2px!important}
html.ui9-frontend .operation-summary strong{font-size:14px!important}
html.ui9-frontend .operation-summary>span:last-child{font-size:8px!important}
html.ui9-frontend .service-activity-panel{padding:13px!important;min-height:0!important;overflow:hidden!important}
html.ui9-frontend .service-activity-panel .section-head{margin-bottom:8px!important}
html.ui9-frontend .activity-list{min-height:0!important;max-height:none!important;height:100%!important;overflow:auto!important;border-radius:11px!important;background:#f8fbfe!important;border:1px solid var(--ui7-line)!important}
html.ui9-frontend .activity-row{min-height:30px!important;padding:6px 9px!important;font-size:8.5px!important}
html.ui9-frontend .reliability-strip{grid-template-columns:minmax(125px,.65fr) minmax(180px,1fr) minmax(180px,1fr) auto!important;padding:8px!important;gap:7px!important}
html.ui9-frontend .startup-option{padding:8px 9px!important;border-radius:11px!important}
html.ui9-frontend .startup-option strong{font-size:9px!important}.startup-option small{font-size:7.5px!important}
html.ui9-frontend #service-dock{min-height:60px!important;align-self:end!important}

/* ------------------------------ Configuration ---------------------------- */
html.ui9-frontend body.configuration-app{height:100dvh!important;overflow:hidden!important;padding:0!important}
html.ui9-frontend .configuration-app .app-shell{height:100dvh!important;min-height:0!important;display:grid!important;grid-template-rows:auto minmax(0,1fr)!important;overflow:hidden!important}
html.ui9-frontend .configuration-app .config-topbar{margin:10px 12px 0!important;border-radius:16px!important;background:var(--ui7-surface)!important;border:1px solid var(--ui7-line)!important;box-shadow:var(--ui8-card-shadow)!important}
html.ui9-frontend .configuration-app .topbar-inner{width:min(var(--ui8-max),100%)!important;min-height:68px!important;margin:auto!important;padding:9px 12px!important;display:grid!important;grid-template-columns:auto minmax(0,1fr) auto!important;align-items:center!important;gap:16px!important}
html.ui9-frontend .configuration-app .topbar-context{min-width:0!important;padding-left:12px!important;border-left:1px solid var(--ui7-line)!important}
html.ui9-frontend .configuration-app .topbar-context strong{font-size:12px!important;color:var(--ui7-text)!important}
html.ui9-frontend .configuration-app .topbar-context small{display:block!important;margin-top:2px!important;font-size:8.5px!important;color:var(--ui7-muted)!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
html.ui9-frontend .configuration-app .config-stage{min-height:0!important;display:grid!important;grid-template-rows:minmax(0,1fr) 60px!important;gap:10px!important;padding:10px 12px 12px!important;overflow:hidden!important}
html.ui9-frontend .configuration-app .config-content{min-height:0!important;height:100%!important;padding:0!important;overflow:auto!important;overscroll-behavior:contain!important}
html.ui9-frontend .configuration-app .app-content-inner{width:min(var(--ui8-max),100%)!important;min-height:100%!important;margin:auto!important;overflow:visible!important;padding:0!important}
html.ui9-frontend .configuration-app .page-view{min-height:100%!important;padding:0 0 4px!important;overflow:visible!important}
html.ui9-frontend .configuration-app .station-config-launchers{width:100%!important;max-width:none!important;margin:0 0 10px!important;display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:10px!important}
html.ui9-frontend .configuration-app .station-config-launcher{position:relative!important;min-height:72px!important;padding:11px 12px!important;border-radius:14px!important;border:1px solid var(--ui7-line)!important;background:var(--ui7-surface)!important;box-shadow:var(--ui8-card-shadow)!important;display:grid!important;grid-template-columns:34px minmax(0,1fr) auto!important;align-items:center!important;gap:10px!important;text-align:left!important}
html.ui9-frontend .configuration-app .station-config-launcher:hover{transform:none!important;border-color:#bdd9ef!important;box-shadow:0 6px 18px rgba(38,73,105,.075)!important}
html.ui9-frontend .configuration-app .station-config-launcher.active{background:#edf6ff!important;border-color:#7db6eb!important;box-shadow:0 0 0 2px rgba(22,119,255,.06)!important}
html.ui9-frontend .configuration-app .station-config-launcher-icon{width:34px!important;height:34px!important;border-radius:10px!important}
html.ui9-frontend .configuration-app .station-config-launcher-copy strong{font-size:11px!important;color:var(--ui7-text)!important}.configuration-app .station-config-launcher-copy small{font-size:8px!important;line-height:1.35!important;color:var(--ui7-muted)!important}
html.ui9-frontend .configuration-app .station-config-status{font-size:7.5px!important;white-space:nowrap!important}
html.ui9-frontend .configuration-app .station-config-panel{width:100%!important;max-width:none!important;margin:0!important;display:grid!important;gap:10px!important}
html.ui9-frontend .configuration-app .settings-card,html.ui9-frontend .configuration-app .workspace-step,html.ui9-frontend .configuration-app .configuration-shell,html.ui9-frontend .configuration-app .sub-card{padding:14px!important;border-radius:14px!important;background:var(--ui7-surface)!important;border:1px solid var(--ui7-line)!important;box-shadow:var(--ui8-card-shadow)!important}
html.ui9-frontend .configuration-app .station-identity-card .settings-grid,html.ui9-frontend .configuration-app .station-identity-card .form-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:9px 10px!important}
html.ui9-frontend .configuration-app .field>span,html.ui9-frontend .configuration-app label>span{font-size:8px!important;font-weight:720!important;color:#526d83!important}
html.ui9-frontend .configuration-app .page-local-save-row,html.ui9-frontend .configuration-app .inline-save-row{margin-top:10px!important;padding-top:10px!important;border-top:1px solid var(--ui7-line)!important}
html.ui9-frontend .configuration-app .instrument-launcher-row{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:10px!important;margin:0 0 10px!important}
html.ui9-frontend .configuration-app .instrument-launcher{min-height:74px!important;padding:11px!important;border-radius:14px!important;border:1px solid var(--ui7-line)!important;background:var(--ui7-surface)!important;box-shadow:var(--ui8-card-shadow)!important}
html.ui9-frontend .configuration-app .instrument-workspace-v2{gap:10px!important;padding:0!important}
html.ui9-frontend .configuration-app .instrument-workspace-editor{padding:14px!important;border-radius:14px!important;background:var(--ui7-surface)!important;border:1px solid var(--ui7-line)!important;box-shadow:var(--ui8-card-shadow)!important}
html.ui9-frontend .configuration-app .workspace-step{margin-top:10px!important;padding:12px!important}
html.ui9-frontend .configuration-app .workspace-form-grid,html.ui9-frontend .configuration-app .identity-workspace-grid,html.ui9-frontend .configuration-app .parameter-primary-grid{gap:9px 10px!important}
html.ui9-frontend #config-dock{min-height:60px!important;align-self:end!important}

/* ------------------------------ Dashboard -------------------------------- */
html.ui9-frontend body:has(.dashboard-shell){height:100dvh!important;overflow:hidden!important;padding:0!important}
html.ui9-frontend .dashboard-shell{height:100dvh!important;min-height:0!important;display:grid!important;grid-template-rows:auto auto minmax(0,1fr) 62px!important;gap:0!important;overflow:hidden!important}
html.ui9-frontend .dashboard-shell .top-glass{position:relative!important;top:auto!important;z-index:80!important;margin:10px 12px 0!important;border-radius:16px!important;background:var(--ui7-surface)!important;border:1px solid var(--ui7-line)!important;box-shadow:var(--ui8-card-shadow)!important}
html.ui9-frontend .dashboard-shell .top-inner{width:min(var(--ui8-max),100%)!important;min-height:68px!important;margin:auto!important;padding:9px 11px!important;display:grid!important;grid-template-columns:auto minmax(210px,1fr) auto!important;align-items:center!important;gap:14px!important}
html.ui9-frontend .dashboard-shell .station-copy{min-width:0!important;padding-left:12px!important;border-left:1px solid var(--ui7-line)!important}
html.ui9-frontend .dashboard-shell .station-copy strong{font-size:12px!important;color:var(--ui7-text)!important}.dashboard-shell .station-meta-inline{display:flex!important;gap:7px!important;min-width:0!important}.dashboard-shell .station-meta-inline span{font-size:8px!important;color:var(--ui7-muted)!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
html.ui9-frontend .dashboard-shell .top-actions{display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:6px!important;min-width:0!important}
html.ui9-frontend .dashboard-shell .top-actions time{font-size:8.5px!important;padding:0 8px!important;min-height:28px!important;display:inline-flex!important;align-items:center!important;border:1px solid var(--ui7-line)!important;border-radius:9px!important;background:var(--ui7-surface-2)!important;color:var(--ui7-muted)!important}
html.ui9-frontend .dashboard-shell .dashboard-account{padding:3px!important;background:var(--ui7-surface)!important;border:1px solid var(--ui7-line)!important;box-shadow:0 3px 12px rgba(38,73,105,.045)!important;min-height:44px!important}
html.ui9-frontend .dashboard-shell #error{margin:8px 12px 0!important}
html.ui9-frontend .dashboard-content{min-height:0!important;height:100%!important;padding:10px 12px 4px!important;overflow:auto!important;overscroll-behavior:contain!important;scrollbar-gutter:stable!important}
html.ui9-frontend .dashboard-inner{width:min(var(--ui8-max),100%)!important;max-width:none!important;margin:auto!important;display:grid!important;gap:10px!important;padding-bottom:4px!important}
html.ui9-frontend .dashboard-shell .page{gap:10px!important}
html.ui9-frontend .dashboard-shell .metric-grid{grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:9px!important}
html.ui9-frontend .dashboard-shell .metric-card{min-height:78px!important;padding:10px 12px!important;border-radius:14px!important;box-shadow:var(--ui8-card-shadow)!important}
html.ui9-frontend .dashboard-shell .metric-card>span{font-size:7.5px!important;letter-spacing:.04em!important;font-weight:780!important}.dashboard-shell .metric-card>strong{font-size:21px!important}.dashboard-shell .metric-card>small{font-size:7.5px!important}
html.ui9-frontend .dashboard-shell .panel-pad{padding:12px!important;border-radius:14px!important}
html.ui9-frontend .dashboard-shell .overview-mode-tabs{padding:4px!important;gap:4px!important;border-radius:13px!important}
html.ui9-frontend .dashboard-shell .overview-mode-tab{min-height:34px!important;border-radius:9px!important;font-size:9px!important}
html.ui9-frontend .dashboard-shell .station-live-grid,html.ui9-frontend .dashboard-shell .value-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:9px!important}
html.ui9-frontend .dashboard-shell .value-tile{min-width:0!important;border-radius:14px!important;padding:11px!important;box-shadow:var(--ui8-card-shadow)!important}
html.ui9-frontend .dashboard-shell .value-tile .parameter{font-size:11px!important;font-weight:800!important}.dashboard-shell .tile-live-badge{font-size:7.5px!important}
html.ui9-frontend .dashboard-shell .value-tile .reading{font-size:25px!important;line-height:1!important;letter-spacing:-.03em!important}.dashboard-shell .value-tile .reading small{font-size:8px!important}
html.ui9-frontend .dashboard-shell .tile-meta{font-size:7.5px!important}.dashboard-shell .tile-footer{font-size:7.5px!important}
html.ui9-frontend .dashboard-shell .tile-autocheck-indicator{width:auto!important;min-width:76px!important;height:28px!important;padding:0 8px!important;border-radius:8px!important}
html.ui9-frontend .dashboard-shell .tile-autocheck-glyph{font-size:7px!important;white-space:nowrap!important}
html.ui9-frontend .dashboard-shell .tile-window-select[data-native-select="true"]{width:94px!important;min-width:94px!important;height:28px!important;min-height:28px!important;font-size:8px!important}
html.ui9-frontend .dashboard-shell>#sidebar{min-height:62px!important;display:flex!important;align-items:center!important;justify-content:center!important;padding:2px 12px 8px!important;position:relative!important;bottom:auto!important;z-index:90!important;pointer-events:none!important;background:linear-gradient(180deg,transparent,rgba(244,248,252,.82) 36%)!important}
html.ui9-frontend .dashboard-shell>#sidebar .dock{pointer-events:auto!important;min-height:54px!important;max-width:min(900px,calc(100vw - 24px))!important}

/* ------------------------------ Protocol Studio -------------------------- */
html.ui9-frontend body.protocol-studio-shell{min-height:100dvh!important;height:auto!important;overflow:auto!important;padding:10px 12px 18px!important;background:radial-gradient(circle at 8% 0%,rgba(22,119,255,.065),transparent 28%),radial-gradient(circle at 96% 8%,rgba(14,165,233,.05),transparent 24%),linear-gradient(180deg,var(--ui7-bg),var(--ui7-bg-2))!important}
html.ui9-frontend .protocol-studio-shell .protocol-header{position:relative!important;top:auto!important;width:min(var(--ui8-max),100%)!important;max-width:none!important;margin:0 auto 10px!important;padding:10px 12px!important;display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;align-items:center!important;gap:14px!important;border-radius:16px!important;background:var(--ui7-surface)!important;border:1px solid var(--ui7-line)!important;box-shadow:var(--ui8-card-shadow)!important}
html.ui9-frontend .protocol-studio-shell .protocol-header-main{display:flex!important;align-items:center!important;gap:14px!important;min-width:0!important}
html.ui9-frontend .protocol-studio-shell .protocol-title-copy{min-width:0!important;padding-left:12px!important;border-left:1px solid var(--ui7-line)!important}
html.ui9-frontend .protocol-studio-shell .protocol-header h1{font-size:17px!important;margin:1px 0 2px!important}.protocol-studio-shell .protocol-header p{font-size:8.5px!important;line-height:1.35!important;max-width:900px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
html.ui9-frontend .protocol-studio-shell .protocol-grid{width:min(var(--ui8-max),100%)!important;max-width:none!important;margin:auto!important;padding:0!important;gap:10px!important}
html.ui9-frontend .protocol-studio-shell .easy-mode-shell{gap:10px!important}.protocol-studio-shell .easy-mode-head,html.ui9-frontend .protocol-studio-shell .easy-step,html.ui9-frontend .protocol-studio-shell .advanced-lab,html.ui9-frontend .protocol-studio-shell .profile-panel{border-radius:14px!important;border:1px solid var(--ui7-line)!important;background:var(--ui7-surface)!important;box-shadow:var(--ui8-card-shadow)!important}
html.ui9-frontend .protocol-studio-shell .easy-mode-head{padding:13px!important}.protocol-studio-shell .easy-mode-head h2{font-size:15px!important}.protocol-studio-shell .easy-mode-head p{font-size:9px!important}
html.ui9-frontend .protocol-studio-shell .easy-step{padding:12px!important}.protocol-studio-shell .easy-step-number{width:30px!important;height:30px!important}.protocol-studio-shell .easy-step-head h3{font-size:13px!important}.protocol-studio-shell .easy-step-head p{font-size:8.5px!important}
html.ui9-frontend .protocol-studio-shell .easy-grid,html.ui9-frontend .protocol-studio-shell .form-grid{gap:8px 9px!important}

/* Responsive / high DPI. All docks remain in reserved grid rows. */
@media (max-width:1280px){
  html.ui9-frontend .service-workbench{grid-template-columns:270px minmax(0,1fr)!important}
  html.ui9-frontend .configuration-app .instrument-launcher-row{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  html.ui9-frontend .dashboard-shell .station-live-grid,html.ui9-frontend .dashboard-shell .value-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  html.ui9-frontend .dashboard-shell .metric-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}
@media (max-width:980px){
  html.ui9-frontend .configuration-app .topbar-context,html.ui9-frontend .dashboard-shell .station-copy{display:none!important}
  html.ui9-frontend .configuration-app .topbar-inner,html.ui9-frontend .dashboard-shell .top-inner{grid-template-columns:auto 1fr auto!important}
  html.ui9-frontend .configuration-app .station-config-launchers{grid-template-columns:1fr!important}
  html.ui9-frontend .configuration-app .station-identity-card .settings-grid,html.ui9-frontend .configuration-app .station-identity-card .form-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  html.ui9-frontend .configuration-app .instrument-launcher-row{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media (max-width:820px){
  html.ui9-frontend body.service-manager-shell,html.ui9-frontend body.configuration-app,html.ui9-frontend body:has(.dashboard-shell){height:auto!important;min-height:100dvh!important;overflow:auto!important}
  html.ui9-frontend .service-manager-shell .app-shell,html.ui9-frontend .configuration-app .app-shell,html.ui9-frontend .dashboard-shell{height:auto!important;min-height:100dvh!important;display:block!important;overflow:visible!important}
  html.ui9-frontend .service-manager-shell .app-content,html.ui9-frontend .configuration-app .config-stage,html.ui9-frontend .dashboard-content{height:auto!important;overflow:visible!important}
  html.ui9-frontend .service-manager-shell .app-content-inner{height:auto!important;overflow:visible!important}
  html.ui9-frontend .service-stage,html.ui9-frontend .service-workbench,html.ui9-frontend .service-control-rail,html.ui9-frontend .service-operations-pane{display:grid!important;grid-template-columns:1fr!important;grid-template-rows:auto!important;overflow:visible!important}
  html.ui9-frontend .service-manager-shell .dock-wrap,html.ui9-frontend .configuration-app .dock-wrap,html.ui9-frontend .dashboard-shell>#sidebar{position:relative!important;bottom:auto!important;margin:10px 0 0!important;padding:0 8px 8px!important;background:transparent!important}
  html.ui9-frontend .configuration-app .config-stage{display:flex!important;flex-direction:column!important;padding:9px!important}
  html.ui9-frontend .configuration-app .config-content{overflow:visible!important}
  html.ui9-frontend .dashboard-shell .metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  html.ui9-frontend .dashboard-shell .station-live-grid,html.ui9-frontend .dashboard-shell .value-grid{grid-template-columns:1fr!important}
  html.ui9-frontend .dashboard-shell .top-inner{display:flex!important;flex-wrap:wrap!important}
  html.ui9-frontend .dashboard-shell .top-actions{margin-left:auto!important}
  html.ui9-frontend .auth-fields{grid-template-columns:1fr!important}
  html.ui9-frontend .protocol-studio-shell .protocol-header{grid-template-columns:1fr!important}.protocol-studio-shell .protocol-header p{white-space:normal!important}
}
@media (max-width:560px){
  html.ui9-frontend .account-control .session-user-chip{grid-template-columns:26px minmax(0,1fr)!important}.account-control .user-avatar{width:26px!important;height:26px!important;min-width:26px!important;min-height:26px!important}
  html.ui9-frontend .configuration-app .station-identity-card .settings-grid,html.ui9-frontend .configuration-app .station-identity-card .form-grid,html.ui9-frontend .configuration-app .instrument-launcher-row,html.ui9-frontend .dashboard-shell .metric-grid{grid-template-columns:1fr!important}
  html.ui9-frontend .dock{justify-content:flex-start!important}.dock-item{min-width:74px!important}
}


/* UI8 LANDING PARITY / VERIFIED ACCOUNT SAFETY */
html.ui9-frontend .dashboard-shell #updated{display:none!important}
html.ui9-frontend .dashboard-shell #overview>.metric-grid,
html.ui9-frontend .dashboard-shell #dashboard-live-data-card,
html.ui9-frontend .dashboard-shell #regulatory-summary{display:none!important}
html.ui9-frontend .dashboard-shell #overview{gap:10px!important}
html.ui9-frontend .account-control .account-icon-action svg,
html.ui9-frontend .account-control .login-icon,
html.ui9-frontend .account-control .logout-icon{width:17px!important;height:17px!important;min-width:17px!important;min-height:17px!important;max-width:17px!important;max-height:17px!important;transform:none!important;overflow:visible!important}
html.ui9-frontend .account-control .account-icon-action .login-icon{display:block!important}
html.ui9-frontend .account-control .account-icon-action .logout-icon{display:none!important}
html.ui9-frontend .account-control .account-icon-action.is-authenticated .login-icon{display:none!important}
html.ui9-frontend .account-control .account-icon-action.is-authenticated .logout-icon{display:block!important}
html.ui9-frontend .account-control .user-avatar svg{width:16px!important;height:16px!important;min-width:16px!important;min-height:16px!important;max-width:16px!important;max-height:16px!important;transform:none!important;display:block!important}


/* UI8 VERIFIED DOCK GEOMETRY */
html.ui9-frontend .dock-wrap,html.ui9-frontend .dock,html.ui9-frontend .dock-item{box-sizing:border-box!important}
html.ui9-frontend .dock{height:58px!important;min-height:58px!important;max-height:58px!important}
html.ui9-frontend .service-stage{grid-template-rows:minmax(0,1fr) 62px!important;gap:10px!important}
html.ui9-frontend #service-dock{height:62px!important;min-height:62px!important;padding:2px 0!important}
html.ui9-frontend .configuration-app .config-stage{grid-template-rows:minmax(0,1fr) 62px!important;gap:10px!important}
html.ui9-frontend #config-dock{height:62px!important;min-height:62px!important;padding:2px 0!important}
html.ui9-frontend .dashboard-shell{grid-template-rows:auto auto minmax(0,1fr) 66px!important}
html.ui9-frontend .dashboard-shell>#sidebar{height:66px!important;min-height:66px!important;padding:4px 12px!important;box-sizing:border-box!important}
html.ui9-frontend .dashboard-shell>#sidebar .dock{height:58px!important;min-height:58px!important;max-height:58px!important}
html.ui9-frontend .configuration-app .station-advanced-details{border:1px solid var(--ui7-line)!important;border-radius:12px!important;background:rgba(255,255,255,.72)!important;box-shadow:none!important;overflow:hidden!important}
html.ui9-frontend .configuration-app .station-advanced-details>summary{list-style:none!important;cursor:pointer!important;min-height:38px!important;padding:9px 12px!important;display:flex!important;align-items:center!important;justify-content:space-between!important;color:#385a74!important;font-size:9px!important;font-weight:760!important}
html.ui9-frontend .configuration-app .station-advanced-details>summary::-webkit-details-marker{display:none!important}
html.ui9-frontend .configuration-app .station-advanced-details>summary:after{content:'›';font-size:17px!important;transform:rotate(90deg);transition:transform .16s ease}
html.ui9-frontend .configuration-app .station-advanced-details[open]>summary:after{transform:rotate(-90deg)}
html.ui9-frontend .configuration-app .station-advanced-details>.alert-notification-card{margin:0 10px 10px!important;box-shadow:none!important}


/* UI8 VERIFIED COMPACT DASHBOARD TILES + CONFIG ICONS */
html.ui9-frontend .configuration-app .instrument-launcher{display:grid!important;grid-template-columns:38px minmax(0,1fr)!important;grid-template-rows:auto!important;align-items:center!important;gap:10px!important;text-align:left!important}
html.ui9-frontend .configuration-app .instrument-launcher-icon{width:36px!important;height:36px!important;border-radius:11px!important;display:grid!important;place-items:center!important;background:#e9f4ff!important;color:#1178dc!important;border:1px solid rgba(17,120,220,.10)!important}
html.ui9-frontend .configuration-app .instrument-launcher-icon svg{width:20px!important;height:20px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.8!important;stroke-linecap:round!important;stroke-linejoin:round!important}
html.ui9-frontend .configuration-app .instrument-launcher.group .instrument-launcher-icon{background:#e9f9f2!important;color:#16a36a!important}
html.ui9-frontend .configuration-app .instrument-launcher.alarm .instrument-launcher-icon{background:#fff1ea!important;color:#ef6c2c!important}
html.ui9-frontend .configuration-app .instrument-launcher.relay .instrument-launcher-icon{background:#f2edff!important;color:#7c4de8!important}
html.ui9-frontend .configuration-app .instrument-launcher.diagnostic .instrument-launcher-icon{background:#e8fafb!important;color:#0aa7b3!important}
html.ui9-frontend .configuration-app .instrument-launcher-copy{min-width:0!important;display:grid!important;gap:3px!important}
html.ui9-frontend .configuration-app .instrument-launcher-copy strong{font-size:10.5px!important;color:var(--ui7-text)!important;line-height:1.1!important}
html.ui9-frontend .configuration-app .instrument-launcher-copy small{font-size:8px!important;color:var(--ui7-muted)!important;line-height:1.25!important}

html.ui9-frontend .dashboard-shell .live-tiles-card{padding:12px!important;overflow:hidden!important}
html.ui9-frontend .dashboard-shell .station-live-grid{align-items:start!important}
html.ui9-frontend .dashboard-shell .station-live-grid .premium-live-tile,
html.ui9-frontend .dashboard-shell .station-live-grid .value-tile-premium{height:178px!important;min-height:178px!important;max-height:178px!important;padding:10px!important;display:grid!important;grid-template-rows:22px 72px 26px 30px!important;gap:4px!important;overflow:hidden!important}
html.ui9-frontend .dashboard-shell .station-live-grid .tile-top{min-height:22px!important;align-items:center!important}
html.ui9-frontend .dashboard-shell .station-live-grid .tile-live-badge{display:inline-flex!important;align-items:center!important;min-height:20px!important;padding:0 7px!important;border-radius:999px!important;background:#e8f8f0!important;color:#0a8a55!important;font-size:7.5px!important;font-weight:800!important}
html.ui9-frontend .dashboard-shell .station-live-grid .tile-reading-row{min-height:0!important;display:grid!important;grid-template-columns:minmax(86px,.8fr) minmax(120px,1.2fr)!important;align-items:center!important;gap:8px!important}
html.ui9-frontend .dashboard-shell .station-live-grid .reading{margin:0!important;font-size:26px!important;line-height:1!important;align-self:center!important}
html.ui9-frontend .dashboard-shell .station-live-grid .tile-sparkline-wrap{height:64px!important;min-height:64px!important;max-height:64px!important;padding:3px!important;border:0!important;border-radius:9px!important;background:transparent!important;box-shadow:none!important;overflow:hidden!important}
html.ui9-frontend .dashboard-shell .station-live-grid .tile-sparkline{height:58px!important;max-height:58px!important;width:100%!important}
html.ui9-frontend .dashboard-shell .station-live-grid .tile-chart-overlay{display:none!important}
html.ui9-frontend .dashboard-shell .station-live-grid .tile-meta{min-height:0!important;display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:7px!important;align-items:center!important;color:#5d758a!important;font-size:7.5px!important}
html.ui9-frontend .dashboard-shell .station-live-grid .tile-meta>span{white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
html.ui9-frontend .dashboard-shell .station-live-grid .tile-footer{min-height:30px!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:7px!important;padding-top:4px!important;border-top:1px solid rgba(79,111,137,.09)!important}
html.ui9-frontend .dashboard-shell .station-live-grid .comm-state{min-height:24px!important;padding:0 7px!important;border-radius:8px!important;font-size:7.5px!important}
html.ui9-frontend .dashboard-shell .station-live-grid .tile-autocheck-indicator{position:static!important;top:auto!important;right:auto!important;min-width:74px!important;height:24px!important;min-height:24px!important;padding:0 7px!important}
html.ui9-frontend .dashboard-shell .station-live-grid .tile-hidden-specs{display:none!important}
@media(max-width:1280px){html.ui9-frontend .dashboard-shell .station-live-grid .premium-live-tile,html.ui9-frontend .dashboard-shell .station-live-grid .value-tile-premium{height:178px!important;min-height:178px!important;max-height:178px!important}}
@media(max-width:820px){html.ui9-frontend .dashboard-shell .station-live-grid .premium-live-tile,html.ui9-frontend .dashboard-shell .station-live-grid .value-tile-premium{height:190px!important;min-height:190px!important;max-height:190px!important}}


/* UI8 VERIFIED STATION NAV ICONS */
html.ui9-frontend .configuration-app .station-config-launcher-icon{display:grid!important;place-items:center!important;background:#e7f4ff!important;color:#1686df!important;border:1px solid rgba(22,134,223,.10)!important}
html.ui9-frontend .configuration-app .station-config-launcher-icon svg{width:19px!important;height:19px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.8!important;stroke-linecap:round!important;stroke-linejoin:round!important}
html.ui9-frontend .configuration-app .station-section-central .station-config-launcher-icon{background:#e9f9f1!important;color:#16a36a!important}
html.ui9-frontend .configuration-app .station-section-time_bases .station-config-launcher-icon{background:#f1ebff!important;color:#7c4de8!important}


/* UI8 verification corrections ------------------------------------------------ */
/* Hidden must always win over component display rules. Conditional pages/dock items
   are controlled by the application state, never by CSS specificity. */
html.ui9-frontend [hidden]{display:none!important}

/* Data Analysis adds a fourth header cell. Keep identity and account controls on one row. */
html.ui9-frontend .dashboard-shell[data-page="data-analysis"] .top-inner{
  grid-template-columns:auto minmax(220px,.85fr) minmax(260px,1fr) auto!important;
}
html.ui9-frontend .dashboard-shell[data-page="data-analysis"] .dashboard-page-context{min-width:0!important}
html.ui9-frontend .dashboard-shell[data-page="data-analysis"] .dashboard-page-context strong{display:block!important;font-size:11px!important;color:var(--ui7-text)!important}
html.ui9-frontend .dashboard-shell[data-page="data-analysis"] .dashboard-page-context small{display:block!important;font-size:8px!important;color:var(--ui7-muted)!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}

/* Configuration launchers use crisp vector icon wells, matching the approved navigation language. */
html.ui9-frontend .configuration-app .station-config-launcher-icon,
html.ui9-frontend .configuration-app .instrument-launcher-icon{
  display:grid!important;place-items:center!important;width:34px!important;height:34px!important;min-width:34px!important;border-radius:10px!important;
  background:#eaf4ff!important;color:#0870df!important;border:1px solid #d4e8fa!important;
}
html.ui9-frontend .configuration-app .station-config-launcher-icon svg,
html.ui9-frontend .configuration-app .instrument-launcher-icon svg{width:18px!important;height:18px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.8!important;stroke-linecap:round!important;stroke-linejoin:round!important}
html.ui9-frontend .configuration-app .station-section-central .station-config-launcher-icon{background:#eafaf3!important;color:#0b9f65!important;border-color:#d2eedf!important}
html.ui9-frontend .configuration-app .station-section-time_bases .station-config-launcher-icon{background:#f2ecff!important;color:#7a4ce0!important;border-color:#e3d8ff!important}
html.ui9-frontend .configuration-app .instrument-launcher{display:grid!important;grid-template-columns:34px minmax(0,1fr)!important;align-items:center!important;gap:10px!important;text-align:left!important}
html.ui9-frontend .configuration-app .instrument-launcher-copy{display:grid!important;gap:3px!important;min-width:0!important}
html.ui9-frontend .configuration-app .instrument-launcher-copy strong{font-size:11px!important;color:var(--ui7-text)!important}
html.ui9-frontend .configuration-app .instrument-launcher-copy small{margin:0!important;font-size:8px!important;color:var(--ui7-muted)!important}
html.ui9-frontend .configuration-app .instrument-launcher.mode-group .instrument-launcher-icon{background:#eafaf3!important;color:#0b9f65!important;border-color:#d2eedf!important}
html.ui9-frontend .configuration-app .instrument-launcher.mode-alarm .instrument-launcher-icon{background:#fff2e9!important;color:#ec6a22!important;border-color:#f8ddcc!important}
html.ui9-frontend .configuration-app .instrument-launcher.mode-regulatory .instrument-launcher-icon{background:#fff0f6!important;color:#e73788!important;border-color:#f6d3e3!important}
html.ui9-frontend .configuration-app .instrument-launcher.mode-relay .instrument-launcher-icon{background:#f2ecff!important;color:#7a4ce0!important;border-color:#e3d8ff!important}
html.ui9-frontend .configuration-app .instrument-launcher.mode-diagnostic .instrument-launcher-icon{background:#e8fbfb!important;color:#08a6ae!important;border-color:#cdeeee!important}

@media(max-width:1180px){
  html.ui9-frontend .dashboard-shell[data-page="data-analysis"] .top-inner{grid-template-columns:auto minmax(190px,1fr) auto!important}
  html.ui9-frontend .dashboard-shell[data-page="data-analysis"] .station-copy{display:none!important}
}


/* UI8 FINAL VISUAL VERIFICATION FIXES */
html.ui9-frontend .dashboard-shell .overview-mode-tabs{display:none!important}
html.ui9-frontend .dashboard-shell .station-live-grid .tile-sparkline{height:58px!important;min-height:0!important;max-height:58px!important;width:100%!important}
html.ui9-frontend .dashboard-shell .dock-item[data-page="connections"],
html.ui9-frontend .dashboard-shell .dock-item[data-page="alarms"],
html.ui9-frontend .dashboard-shell .dock-item[data-page="auto-check"]{display:none!important}
html.ui9-frontend .dashboard-shell .diagnostic-page-actions{display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:7px!important;flex-wrap:wrap!important}
html.ui9-frontend .configuration-app .station-config-launcher{grid-template-columns:34px minmax(0,1fr)!important}
html.ui9-frontend .configuration-app .station-config-status{display:none!important}
@media(max-width:820px){html.ui9-frontend .dashboard-shell .diagnostic-page-actions{justify-content:flex-start!important;width:100%!important}}

/* UI8 dashboard toolbar icons: vector-only, no font-glyph variance in WebView2. */
html.ui9-frontend .dashboard-live-toolbar .icon-button{display:inline-grid!important;place-items:center!important;width:34px!important;height:34px!important;min-width:34px!important;padding:0!important}
html.ui9-frontend .dashboard-live-toolbar .toolbar-svg{display:block!important;width:16px!important;height:16px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.8!important;stroke-linecap:round!important;stroke-linejoin:round!important}

/* UI8 VERIFIED AUTH / LOGIN COMPOSITION */
html.ui9-frontend .clean-auth-modal .auth-brand{display:flex!important;align-items:center!important;gap:10px!important;margin:0 0 14px!important}
html.ui9-frontend .clean-auth-modal .auth-brand>div{display:grid!important;grid-template-columns:1fr!important;gap:1px!important;min-width:0!important}
html.ui9-frontend .clean-auth-modal .auth-brand span{display:block!important;font-size:13px!important;line-height:1.15!important;font-weight:800!important;color:var(--ui7-text)!important}
html.ui9-frontend .clean-auth-modal .auth-brand small{display:block!important;margin:0!important;font-size:9px!important;line-height:1.2!important;color:var(--ui7-muted)!important}
html.ui9-frontend .clean-auth-modal .auth-meta-row{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;margin:10px 0 0!important;color:var(--ui7-muted)!important;font-size:10px!important}
html.ui9-frontend .clean-auth-modal .auth-meta-row label{display:flex!important;align-items:center!important;gap:7px!important;min-width:0!important;white-space:nowrap!important}
html.ui9-frontend .clean-auth-modal .auth-meta-row input[type="checkbox"]{appearance:auto!important;-webkit-appearance:checkbox!important;width:14px!important;height:14px!important;min-width:14px!important;min-height:14px!important;max-width:14px!important;max-height:14px!important;padding:0!important;margin:0!important;border:0!important;box-shadow:none!important;flex:0 0 14px!important}
html.ui9-frontend .clean-auth-modal .auth-help{appearance:none!important;border:0!important;background:transparent!important;box-shadow:none!important;border-radius:0!important;color:var(--ui7-accent)!important;padding:2px 0!important;margin:0!important;min-width:0!important;min-height:0!important;height:auto!important;font:inherit!important;font-weight:700!important;line-height:1.2!important;text-decoration:none!important;cursor:pointer!important;white-space:nowrap!important}
html.ui9-frontend .clean-auth-modal .auth-help:hover{text-decoration:underline!important}

/* ============================================================================
   AESST DAS UI9 — Studio Web Interface
   Inspired by the fast workspace ergonomics of AESST/ASSET Document Studio:
   dark navigation rail, light canvas, elevated bento surfaces, fast micro-motion.
   Rendering-only layer. Backend/acquisition contracts are unchanged.
   ============================================================================ */
:root{
  --ui9-rail:#0b1220;
  --ui9-rail-2:#111b2d;
  --ui9-rail-line:rgba(255,255,255,.08);
  --ui9-rail-text:#dfeaff;
  --ui9-rail-muted:#8192ad;
  --ui9-canvas:#f5f7fb;
  --ui9-card:rgba(255,255,255,.97);
  --ui9-card-soft:#f8faff;
  --ui9-line:#dfe6f0;
  --ui9-line-soft:#eaf0f6;
  --ui9-text:#12223a;
  --ui9-muted:#66788f;
  --ui9-blue:#3867ff;
  --ui9-blue-2:#52a8ff;
  --ui9-cyan:#22c7d9;
  --ui9-mint:#35c889;
  --ui9-purple:#8b63ff;
  --ui9-orange:#ff9a43;
  --ui9-pink:#f45d9c;
  --ui9-danger:#ef5c67;
  --ui9-shadow:0 14px 36px rgba(39,57,89,.08),0 2px 8px rgba(39,57,89,.035);
  --ui9-shadow-hover:0 18px 42px rgba(39,57,89,.12),0 5px 16px rgba(39,57,89,.06);
  --ui9-radius:20px;
  --ui9-radius-sm:14px;
  --ui9-rail-w:238px;
  --ui9-top-gap:18px;
  --ui9-ease:cubic-bezier(.22,1,.36,1);
  --ui9-fast:160ms;
  --ui9-med:260ms;
}
html[data-theme="dark"]{
  --ui9-canvas:#0e1522;--ui9-card:#141f30;--ui9-card-soft:#172438;--ui9-line:#26364a;--ui9-line-soft:#213044;
  --ui9-text:#eef5ff;--ui9-muted:#9fb0c6;--ui9-shadow:0 16px 42px rgba(0,0,0,.24),0 2px 10px rgba(0,0,0,.18);
  --ui9-shadow-hover:0 18px 48px rgba(0,0,0,.3),0 5px 18px rgba(0,0,0,.22);
}
html.ui9-frontend,html.ui9-frontend body{background:var(--ui9-canvas)!important;color:var(--ui9-text)!important}
html.ui9-frontend body{background-image:radial-gradient(circle at 20% -10%,rgba(56,103,255,.11),transparent 32%),radial-gradient(circle at 92% 5%,rgba(34,199,217,.07),transparent 24%)!important}
html.ui9-frontend *{scrollbar-color:#cdd7e5 transparent;scrollbar-width:thin}
html.ui9-frontend ::selection{background:rgba(56,103,255,.18)}

/* ---- Shared top-level shell ------------------------------------------------ */
.ui9-frontend .app-shell,.ui9-frontend .dashboard-shell{background:transparent!important}
.ui9-frontend .glass-card,
.ui9-frontend .service-primary-console,
.ui9-frontend .service-database-panel,
.ui9-frontend .service-activity-panel,
.ui9-frontend .operations-strip,
.ui9-frontend .reliability-strip,
.ui9-frontend .config-editor,
.ui9-frontend .station-identity-card,
.ui9-frontend .top-glass,
.ui9-frontend .config-topbar,
.ui9-frontend .service-commandbar,
.ui9-frontend .protocol-header{
  background:var(--ui9-card)!important;
  border:1px solid var(--ui9-line)!important;
  border-radius:var(--ui9-radius)!important;
  box-shadow:var(--ui9-shadow)!important;
}
.ui9-frontend .service-commandbar,
.ui9-frontend .config-topbar,
.ui9-frontend .top-glass,
.ui9-frontend .protocol-header{overflow:hidden;position:relative}
.ui9-frontend .service-commandbar::before,
.ui9-frontend .config-topbar::before,
.ui9-frontend .top-glass::before,
.ui9-frontend .protocol-header::before{
  content:"";position:absolute;left:0;top:0;right:0;height:3px;
  background:linear-gradient(90deg,var(--ui9-blue),var(--ui9-cyan) 44%,var(--ui9-purple) 72%,var(--ui9-pink));
  opacity:.92
}
.ui9-frontend .suite-brand-mark,.ui9-frontend .brand-mark{border-radius:13px;filter:drop-shadow(0 7px 16px rgba(56,103,255,.18))}
.ui9-frontend .suite-brand-copy strong,.ui9-frontend .brand-product{color:var(--ui9-text)!important;font-weight:760!important;letter-spacing:-.025em}
.ui9-frontend .suite-brand-copy span,.ui9-frontend .brand-company,.ui9-frontend .brand-version{color:var(--ui9-muted)!important}
.ui9-frontend .eyebrow,.ui9-frontend .panel-kicker{color:#6680a5!important;letter-spacing:.12em!important}

/* ---- Studio-style left navigation rail ------------------------------------ */
@media (min-width:1101px){
  .ui9-frontend body:not(.protocol-studio-shell){padding-left:var(--ui9-rail-w)!important}
  .ui9-frontend .dock-wrap{
    position:fixed!important;z-index:900!important;left:0!important;top:0!important;bottom:0!important;width:var(--ui9-rail-w)!important;
    display:flex!important;flex-direction:column!important;justify-content:flex-start!important;align-items:stretch!important;
    padding:18px 14px!important;pointer-events:auto!important;background:linear-gradient(180deg,var(--ui9-rail),var(--ui9-rail-2))!important;
    border-right:1px solid var(--ui9-rail-line)!important;box-shadow:12px 0 34px rgba(15,25,44,.08)!important;transform:none!important
  }
  .ui9-frontend .dock-wrap .ui9-rail-brand{display:flex!important}
  .ui9-frontend .dock-wrap .ui9-rail-caption{display:block!important}
  .ui9-frontend .dock-wrap .ui9-rail-footer{display:block!important}
  .ui9-frontend .dock{
    width:100%!important;max-width:none!important;display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:5px!important;
    padding:0!important;margin:10px 0 0!important;background:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important;overflow:visible!important
  }
  .ui9-frontend .dock-item{
    position:relative!important;width:100%!important;min-width:0!important;height:48px!important;display:flex!important;align-items:center!important;justify-content:flex-start!important;
    gap:12px!important;padding:0 13px!important;border-radius:12px!important;color:var(--ui9-rail-muted)!important;background:transparent!important;font-size:12px!important;font-weight:640!important;
    transition:color var(--ui9-fast) var(--ui9-ease),background var(--ui9-fast) var(--ui9-ease),transform var(--ui9-fast) var(--ui9-ease)!important
  }
  .ui9-frontend .dock-item:hover{color:#fff!important;background:rgba(255,255,255,.07)!important;transform:translateX(2px)!important}
  .ui9-frontend .dock-item.active{color:#fff!important;background:linear-gradient(90deg,rgba(67,105,255,.28),rgba(67,105,255,.09))!important;box-shadow:inset 3px 0 0 #6d91ff!important}
  .ui9-frontend .dock-item.active::after{content:"";position:absolute;right:10px;width:5px;height:5px;border-radius:50%;background:#77a0ff;box-shadow:0 0 0 4px rgba(119,160,255,.12)}
  .ui9-frontend .dock-item .icon,.ui9-frontend .dock-item svg.nav-svg,.ui9-frontend .dock-item>svg{width:19px!important;height:19px!important;flex:0 0 auto!important;color:currentColor!important}
  .ui9-frontend .dock-item b{right:8px!important;top:7px!important;margin:0!important}
  .ui9-frontend .service-stage{grid-template-rows:minmax(0,1fr)!important}
  .ui9-frontend .service-stage>.dock-wrap{display:flex!important}
  .ui9-frontend .configuration-app .config-stage{display:block!important}
  .ui9-frontend .configuration-app .config-stage>.dock-wrap{display:flex!important}
  .ui9-frontend #sidebar.dock-wrap{display:flex!important}
}
.ui9-rail-brand{display:none;align-items:center;gap:10px;padding:7px 8px 18px;border-bottom:1px solid var(--ui9-rail-line);margin-bottom:15px}
.ui9-rail-brand img{width:38px;height:38px;object-fit:contain;border-radius:11px;filter:drop-shadow(0 7px 18px rgba(56,103,255,.28))}
.ui9-rail-brand strong{display:block;color:#fff;font-size:14px;line-height:1.1}.ui9-rail-brand span{display:block;color:var(--ui9-rail-muted);font-size:9px;margin-top:3px;letter-spacing:.04em}
.ui9-rail-caption{display:none;color:#667894;font-size:9px;font-weight:800;letter-spacing:.13em;padding:0 12px 8px;text-transform:uppercase}
.ui9-rail-footer{display:none;margin-top:auto;border-top:1px solid var(--ui9-rail-line);padding:14px 10px 4px;color:#697c9b;font-size:9px;line-height:1.5}
.ui9-rail-footer strong{color:#b9c8de;font-weight:650}

/* Keep desktop content comfortably inset from the rail. */
@media (min-width:1101px){
  .ui9-frontend .service-manager-shell .app-content{padding:18px 22px!important}
  .ui9-frontend .configuration-app>.app-shell>.config-topbar{margin:18px 22px 0!important}
  .ui9-frontend .configuration-app .config-content{padding:16px 22px 26px!important}
  .ui9-frontend #workspace.dashboard-shell{padding:18px 22px 24px!important}
  .ui9-frontend #workspace .top-glass{margin:0 0 16px!important}
}

/* ---- Topbars and accounts -------------------------------------------------- */
.ui9-frontend .service-commandbar,.ui9-frontend .config-topbar,.ui9-frontend .top-glass{min-height:74px!important;padding:13px 16px!important}
.ui9-frontend .top-inner,.ui9-frontend .topbar-inner{min-height:46px!important}
.ui9-frontend .topbar-context,.ui9-frontend .dashboard-page-context{padding-left:16px!important;border-left:1px solid var(--ui9-line-soft)!important}
.ui9-frontend .topbar-context strong,.ui9-frontend .dashboard-page-context strong,.ui9-frontend .topbar-context h1,.ui9-frontend .dashboard-page-context h1{font-size:20px!important;letter-spacing:-.03em!important;color:var(--ui9-text)!important}
.ui9-frontend .account-control{gap:7px!important}
.ui9-frontend .session-user-chip{min-height:44px!important;border-radius:14px!important;background:var(--ui9-card-soft)!important;border-color:var(--ui9-line)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.75)!important}
.ui9-frontend .user-avatar{width:30px!important;height:30px!important;border-radius:10px!important;background:linear-gradient(145deg,#e8fff6,#dff7ee)!important;color:#0d9b64!important;display:grid!important;place-items:center!important}
.ui9-frontend .account-icon-action{border-radius:12px!important;background:var(--ui9-card-soft)!important;border:1px solid var(--ui9-line)!important;color:var(--ui9-blue)!important;transition:transform var(--ui9-fast) var(--ui9-ease),background var(--ui9-fast) var(--ui9-ease),box-shadow var(--ui9-fast) var(--ui9-ease)!important}
.ui9-frontend .account-icon-action:hover{transform:translateY(-1px)!important;background:var(--ui9-card)!important;box-shadow:0 8px 18px rgba(46,78,125,.09)!important}

/* ---- Cards, forms and modern bento workspaces ----------------------------- */
.ui9-frontend .glass-card,.ui9-frontend .workspace-card,.ui9-frontend .station-nav-card,.ui9-frontend .instrument-nav-card,.ui9-frontend .nav-card{
  transition:transform var(--ui9-med) var(--ui9-ease),box-shadow var(--ui9-med) var(--ui9-ease),border-color var(--ui9-med) var(--ui9-ease),background var(--ui9-med) var(--ui9-ease)!important
}
.ui9-frontend .station-nav-card:hover,.ui9-frontend .instrument-nav-card:hover,.ui9-frontend .nav-card:hover,.ui9-frontend .workspace-card:hover{transform:translateY(-3px)!important;box-shadow:var(--ui9-shadow-hover)!important;border-color:#c8d6eb!important}
.ui9-frontend .station-nav-card.active,.ui9-frontend .instrument-nav-card.active,.ui9-frontend .nav-card.active{border-color:#9ab5ff!important;background:linear-gradient(145deg,#f7faff,#eef4ff)!important;box-shadow:0 12px 28px rgba(56,103,255,.10)!important}
.ui9-frontend .touch-input,.ui9-frontend .touch-field,.ui9-frontend .touch-select{
  min-height:43px!important;border-radius:12px!important;background:var(--ui9-card-soft)!important;border-color:var(--ui9-line)!important;color:var(--ui9-text)!important;transition:border-color var(--ui9-fast),box-shadow var(--ui9-fast),background var(--ui9-fast)!important
}
.ui9-frontend .touch-input:hover,.ui9-frontend .touch-field:hover,.ui9-frontend .touch-select:hover{background:var(--ui9-card)!important;border-color:#ccd8e8!important}
.ui9-frontend .touch-input:focus,.ui9-frontend .touch-field:focus,.ui9-frontend .touch-select:focus{background:var(--ui9-card)!important;border-color:#7798ff!important;box-shadow:0 0 0 4px rgba(56,103,255,.10)!important}
.ui9-frontend .touch-button{min-height:40px!important;border-radius:12px!important;border-color:var(--ui9-line)!important;background:var(--ui9-card)!important;color:var(--ui9-text)!important;font-weight:670!important;transition:transform var(--ui9-fast) var(--ui9-ease),box-shadow var(--ui9-fast) var(--ui9-ease),background var(--ui9-fast),border-color var(--ui9-fast)!important}
.ui9-frontend .touch-button:hover:not(:disabled){transform:translateY(-1px)!important;box-shadow:0 9px 18px rgba(42,67,105,.08)!important;border-color:#c8d5e8!important}
.ui9-frontend .touch-button.primary{background:linear-gradient(135deg,var(--ui9-blue),#5c7dff)!important;border-color:transparent!important;color:#fff!important;box-shadow:0 9px 20px rgba(56,103,255,.22)!important}
.ui9-frontend .touch-button.primary:hover:not(:disabled){box-shadow:0 12px 26px rgba(56,103,255,.30)!important}
.ui9-frontend .status-chip{border-radius:999px!important;font-weight:730!important;letter-spacing:.01em!important}

/* ---- Configuration --------------------------------------------------------- */
.ui9-frontend .configuration-app .config-content .app-content-inner{max-width:1600px!important;margin:0 auto!important}
.ui9-frontend .configuration-app .workspace-nav,.ui9-frontend .configuration-app .station-nav,.ui9-frontend .configuration-app .config-mode-cards{gap:14px!important}
.ui9-frontend .configuration-app .station-nav-card,.ui9-frontend .configuration-app .instrument-nav-card,.ui9-frontend .configuration-app .nav-card{min-height:94px!important;border-radius:18px!important;background:var(--ui9-card)!important;border:1px solid var(--ui9-line)!important;box-shadow:var(--ui9-shadow)!important;padding:15px 16px!important}
.ui9-frontend .configuration-app .station-nav-card .icon-box,.ui9-frontend .configuration-app .instrument-nav-card .icon-box,.ui9-frontend .configuration-app .nav-card .icon-box{border-radius:13px!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.75)!important}
.ui9-frontend .configuration-app .config-editor{padding:18px!important}
.ui9-frontend .configuration-app .config-editor h2{font-size:17px!important;letter-spacing:-.02em!important}
.ui9-frontend .configuration-app .config-editor h3{font-size:14px!important}
.ui9-frontend .configuration-app .section-card,.ui9-frontend .configuration-app .config-section{border:1px solid var(--ui9-line-soft)!important;background:var(--ui9-card-soft)!important;border-radius:16px!important;padding:15px!important}
.ui9-frontend .configuration-app .instrument-hub{padding-top:8px!important}

/* ---- Service Manager ------------------------------------------------------- */
@media (min-width:1101px){
 .ui9-frontend .service-manager-shell .app-content-inner{width:min(1520px,100%)!important;gap:14px!important}
 .ui9-frontend .service-workbench{grid-template-columns:minmax(300px,340px) minmax(0,1fr)!important;gap:14px!important}
}
.ui9-frontend .service-primary-console{background:linear-gradient(145deg,#f7fbff,#edf4ff)!important;position:relative!important}
.ui9-frontend .service-primary-console::before{content:"";position:absolute;width:140px;height:140px;border-radius:50%;right:-50px;bottom:-60px;background:radial-gradient(circle,rgba(56,103,255,.15),transparent 68%);pointer-events:none}
.ui9-frontend .service-database-panel,.ui9-frontend .service-activity-panel,.ui9-frontend .operations-strip,.ui9-frontend .reliability-strip{padding:16px!important}
.ui9-frontend .service-activity-list,.ui9-frontend .activity-log{border-radius:14px!important;background:var(--ui9-card-soft)!important;border:1px solid var(--ui9-line-soft)!important}
.ui9-frontend .service-commandbar .status-chip.good{background:#eafbf4!important;color:#0c8b5b!important}

/* ---- Dashboard ------------------------------------------------------------- */
.ui9-frontend #workspace .dashboard-content{padding:0!important}
.ui9-frontend #workspace .dashboard-inner{max-width:1600px!important;margin:0 auto!important}
.ui9-frontend #overview .section-heading,.ui9-frontend #overview .live-heading{display:flex!important;align-items:end!important;justify-content:space-between!important;gap:14px!important}
.ui9-frontend #overview .tile-grid,.ui9-frontend #overview .values-grid{gap:14px!important}
.ui9-frontend .value-tile{border-radius:19px!important;border:1px solid var(--ui9-line)!important;background:var(--ui9-card)!important;box-shadow:var(--ui9-shadow)!important;overflow:hidden!important;position:relative!important;transition:transform var(--ui9-med) var(--ui9-ease),box-shadow var(--ui9-med) var(--ui9-ease),border-color var(--ui9-med)!important}
.ui9-frontend .value-tile::before{content:"";position:absolute;left:0;top:0;width:100%;height:3px;background:var(--tile-color,var(--ui9-blue));opacity:.85}
.ui9-frontend .value-tile:hover{transform:translateY(-4px)!important;box-shadow:var(--ui9-shadow-hover)!important;border-color:#c7d4e8!important}
.ui9-frontend .value-tile .reading,.ui9-frontend .value-tile .value{letter-spacing:-.045em!important;font-weight:760!important}
.ui9-frontend .value-tile canvas{filter:saturate(.92)}
.ui9-frontend .dashboard-panel,.ui9-frontend .trend-workspace,.ui9-frontend .analysis-workspace,.ui9-frontend .table-workspace,.ui9-frontend .report-workspace{border-radius:20px!important;background:var(--ui9-card)!important;border:1px solid var(--ui9-line)!important;box-shadow:var(--ui9-shadow)!important}
.ui9-frontend .segmented,.ui9-frontend .overview-mode-tabs{background:var(--ui9-card-soft)!important;border:1px solid var(--ui9-line)!important;border-radius:13px!important;padding:3px!important;box-shadow:none!important}
.ui9-frontend .segmented button,.ui9-frontend .overview-mode-tabs button{border-radius:10px!important;transition:background var(--ui9-fast),color var(--ui9-fast),transform var(--ui9-fast)!important}

/* ---- Protocol Studio ------------------------------------------------------- */
.ui9-frontend.protocol-studio-shell{padding:18px 22px 26px!important;overflow:auto!important}
.ui9-frontend .protocol-header{max-width:1600px!important;margin:0 auto 16px!important;min-height:82px!important;padding:14px 17px!important}
.ui9-frontend .protocol-grid{max-width:1600px!important;margin:0 auto!important;gap:15px!important}
.ui9-frontend .easy-mode-head{background:linear-gradient(135deg,#10192a,#182640)!important;color:#fff!important;border-color:#243759!important;position:relative!important;overflow:hidden!important}
.ui9-frontend .easy-mode-head::after{content:"";position:absolute;right:-70px;top:-90px;width:230px;height:230px;border-radius:50%;background:radial-gradient(circle,rgba(82,168,255,.27),transparent 68%)}
.ui9-frontend .easy-mode-head h2,.ui9-frontend .easy-mode-head h1,.ui9-frontend .easy-mode-head strong{color:#fff!important}.ui9-frontend .easy-mode-head p,.ui9-frontend .easy-mode-head span{color:#aabbd3!important}
.ui9-frontend .easy-step,.ui9-frontend .studio-panel{padding:18px!important;border-radius:20px!important}
.ui9-frontend .easy-step-head{gap:12px!important}.ui9-frontend .easy-step-number{width:34px!important;height:34px!important;border-radius:11px!important;background:linear-gradient(145deg,#e9efff,#dfe8ff)!important;color:var(--ui9-blue)!important;font-weight:800!important;box-shadow:inset 0 0 0 1px rgba(56,103,255,.12)!important}
.ui9-frontend .advanced-engineering{border-radius:20px!important}.ui9-frontend .advanced-engineering>summary{padding:15px 18px!important;border-radius:19px!important;background:var(--ui9-card)!important}
.ui9-frontend .protocol-analysis-tabs{background:var(--ui9-card-soft)!important;border:1px solid var(--ui9-line)!important;border-radius:13px!important;padding:3px!important}
.ui9-frontend .protocol-analysis-tabs button{border-radius:10px!important}

/* ---- Modals --------------------------------------------------------------- */
.ui9-frontend .modal-backdrop{background:rgba(7,16,29,.46)!important;backdrop-filter:blur(7px)!important;-webkit-backdrop-filter:blur(7px)!important}
.ui9-frontend .modal{border-radius:24px!important;border:1px solid rgba(255,255,255,.75)!important;box-shadow:0 28px 80px rgba(11,23,42,.22)!important;animation:ui9ModalIn 220ms var(--ui9-ease) both}
@keyframes ui9ModalIn{from{opacity:0;transform:translateY(10px) scale(.985)}to{opacity:1;transform:none}}

/* ---- Motion --------------------------------------------------------------- */
.ui9-frontend body.ui-painted .ui9-enter{animation:ui9Enter 330ms var(--ui9-ease) both}
@keyframes ui9Enter{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
.ui9-frontend .ui9-stagger>*{animation:ui9Enter 340ms var(--ui9-ease) both}
.ui9-frontend .ui9-stagger>*:nth-child(2){animation-delay:35ms}.ui9-frontend .ui9-stagger>*:nth-child(3){animation-delay:70ms}.ui9-frontend .ui9-stagger>*:nth-child(4){animation-delay:105ms}.ui9-frontend .ui9-stagger>*:nth-child(5){animation-delay:140ms}.ui9-frontend .ui9-stagger>*:nth-child(6){animation-delay:175ms}
@media (prefers-reduced-motion:reduce){.ui9-frontend *{animation-duration:.001ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.001ms!important}}

/* ---- Responsive: compact web app, bottom dock below 1100 ------------------ */
@media (max-width:1100px){
  .ui9-frontend body{padding-left:0!important}
  .ui9-frontend .dock-wrap{position:relative!important;inset:auto!important;width:auto!important;background:transparent!important;border:0!important;box-shadow:none!important;padding:0!important;display:flex!important;justify-content:center!important}
  .ui9-frontend .dock{flex-direction:row!important;background:var(--ui9-card)!important;border:1px solid var(--ui9-line)!important;border-radius:18px!important;box-shadow:var(--ui9-shadow)!important;padding:6px!important}
  .ui9-frontend .dock-item{min-width:88px!important;justify-content:center!important;height:54px!important;color:#51647d!important;background:transparent!important}
  .ui9-frontend .dock-item.active{background:#edf3ff!important;color:var(--ui9-blue)!important;box-shadow:none!important}
  .ui9-frontend .dock-item.active::after{display:none!important}
  .ui9-frontend .dock-wrap .ui9-rail-brand,.ui9-frontend .dock-wrap .ui9-rail-caption,.ui9-frontend .dock-wrap .ui9-rail-footer{display:none!important}
  .ui9-frontend .service-stage{grid-template-rows:minmax(0,1fr) 66px!important}
}
@media (max-width:760px){
  .ui9-frontend .auth-fields{grid-template-columns:1fr!important}
  .ui9-frontend .service-workbench{grid-template-columns:1fr!important;overflow:auto!important}
  .ui9-frontend .dock-item{min-width:72px!important;font-size:9px!important}
}

/* UI9 desktop rail hard override: neutralize legacy fixed-bottom dock rules. */
@media (min-width:1101px){
  html.ui9-frontend body.service-manager-shell #service-dock,
  html.ui9-frontend body.configuration-app #config-dock,
  html.ui9-frontend body:has(.dashboard-shell) #sidebar{
    position:fixed!important;left:0!important;right:auto!important;top:0!important;bottom:0!important;transform:none!important;
    width:var(--ui9-rail-w)!important;height:100dvh!important;max-width:none!important;margin:0!important;padding:18px 14px!important;
    display:flex!important;flex-direction:column!important;align-items:stretch!important;justify-content:flex-start!important;
    background:linear-gradient(180deg,var(--ui9-rail),var(--ui9-rail-2))!important;border:0!important;border-right:1px solid var(--ui9-rail-line)!important;
    border-radius:0!important;box-shadow:12px 0 34px rgba(15,25,44,.08)!important;pointer-events:auto!important;overflow:hidden!important;z-index:1200!important
  }
  html.ui9-frontend body.service-manager-shell #service-dock>.dock,
  html.ui9-frontend body.configuration-app #config-dock>.dock,
  html.ui9-frontend body:has(.dashboard-shell) #sidebar>.dock{
    position:relative!important;left:auto!important;right:auto!important;top:auto!important;bottom:auto!important;transform:none!important;
    width:100%!important;height:auto!important;min-height:0!important;max-height:none!important;max-width:none!important;margin:10px 0 0!important;padding:0!important;
    display:flex!important;flex-direction:column!important;align-items:stretch!important;justify-content:flex-start!important;gap:5px!important;
    background:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important;overflow:visible!important;pointer-events:auto!important
  }
  html.ui9-frontend body.service-manager-shell #service-dock .dock-item,
  html.ui9-frontend body.configuration-app #config-dock .dock-item,
  html.ui9-frontend body:has(.dashboard-shell) #sidebar .dock-item{
    position:relative!important;left:auto!important;right:auto!important;top:auto!important;bottom:auto!important;transform:none!important;
    width:100%!important;height:48px!important;min-height:48px!important;min-width:0!important;max-width:none!important;margin:0!important;padding:0 13px!important;
    display:flex!important;grid-template-rows:none!important;align-items:center!important;justify-content:flex-start!important;gap:12px!important;border:0!important;border-radius:12px!important;
    color:var(--ui9-rail-muted)!important;background:transparent!important;box-shadow:none!important;text-align:left!important;font-size:12px!important;font-weight:640!important;opacity:1!important
  }
  html.ui9-frontend body.service-manager-shell #service-dock .dock-item:hover,
  html.ui9-frontend body.configuration-app #config-dock .dock-item:hover,
  html.ui9-frontend body:has(.dashboard-shell) #sidebar .dock-item:hover{color:#fff!important;background:rgba(255,255,255,.07)!important;transform:translateX(2px)!important}
  html.ui9-frontend body.service-manager-shell #service-dock .dock-item.active,
  html.ui9-frontend body.configuration-app #config-dock .dock-item.active,
  html.ui9-frontend body:has(.dashboard-shell) #sidebar .dock-item.active{color:#fff!important;background:linear-gradient(90deg,rgba(67,105,255,.28),rgba(67,105,255,.09))!important;box-shadow:inset 3px 0 0 #6d91ff!important}
  html.ui9-frontend body.service-manager-shell #service-dock .dock-item .icon,
  html.ui9-frontend body.service-manager-shell #service-dock .dock-item .icon svg,
  html.ui9-frontend body.configuration-app #config-dock .dock-item .icon,
  html.ui9-frontend body.configuration-app #config-dock .dock-item svg,
  html.ui9-frontend body:has(.dashboard-shell) #sidebar .dock-item svg{width:19px!important;height:19px!important;min-width:19px!important;color:currentColor!important}
  html.ui9-frontend body.service-manager-shell #service-dock .dock-item .label{font-size:12px!important;color:currentColor!important}
  html.ui9-frontend .service-stage{grid-template-rows:minmax(0,1fr)!important}
  html.ui9-frontend .config-stage{grid-template-rows:minmax(0,1fr)!important;width:auto!important;max-width:none!important;margin:0!important}
  html.ui9-frontend .dashboard-shell{grid-template-rows:auto minmax(0,1fr)!important}
}
html.ui9-frontend .ui9-rail-brand{color:#fff!important}
html.ui9-frontend .ui9-rail-brand strong{color:#f6f9ff!important;font-size:14px!important;font-weight:760!important}
html.ui9-frontend .ui9-rail-brand span:not(.ui9-rail-logo){color:#8ea0bd!important}
html.ui9-frontend .ui9-rail-footer{color:#7184a3!important}
html.ui9-frontend .ui9-rail-footer strong{color:#aebdd4!important}
.ui9-rail-logo{width:38px;height:38px;flex:0 0 38px;border-radius:11px;display:grid;place-items:center;color:#fff!important;font-size:24px!important;font-weight:800!important;font-style:italic;letter-spacing:-.08em;background:linear-gradient(145deg,#5a6cff 0%,#1688e5 48%,#1ac4be 100%);box-shadow:0 8px 22px rgba(48,108,255,.30),inset 0 1px 0 rgba(255,255,255,.35)}
@media (min-width:1101px){
  html.ui9-frontend #service-dock .dock-item .icon,
  html.ui9-frontend #config-dock .dock-item .icon,
  html.ui9-frontend #sidebar .dock-item .icon{
    width:20px!important;height:20px!important;min-width:20px!important;display:grid!important;place-items:center!important;padding:0!important;margin:0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;color:currentColor!important
  }
  html.ui9-frontend #service-dock .dock-item .icon svg,
  html.ui9-frontend #config-dock .dock-item .icon svg,
  html.ui9-frontend #sidebar .dock-item .icon svg{
    width:18px!important;height:18px!important;min-width:18px!important;max-width:18px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.8!important;background:transparent!important;border:0!important;box-shadow:none!important
  }
}
@media (min-width:851px) and (max-width:1100px){
  html.ui9-frontend .config-stage{display:grid!important;grid-template-rows:minmax(0,1fr) 78px!important;gap:12px!important;overflow:hidden!important}
  html.ui9-frontend .dashboard-shell{display:grid!important;grid-template-rows:auto minmax(0,1fr) 78px!important;gap:0!important;overflow:hidden!important}
  html.ui9-frontend .config-stage>#config-dock,
  html.ui9-frontend .dashboard-shell>#sidebar{height:78px!important;align-items:flex-start!important;padding-top:10px!important}
}
/* Desktop rail owns its own column; application canvases must never sit beneath it. */
@media (min-width:1101px){
  html.ui9-frontend body:not(.protocol-studio-shell){padding-left:0!important}
  html.ui9-frontend body.service-manager-shell>.app-shell,
  html.ui9-frontend body.configuration-app>.app-shell,
  html.ui9-frontend body:has(.dashboard-shell)>.dashboard-shell{
    margin-left:var(--ui9-rail-w)!important;
    width:calc(100vw - var(--ui9-rail-w))!important;
    max-width:calc(100vw - var(--ui9-rail-w))!important
  }
}
@media (min-width:1101px){
  html.ui9-frontend #workspace.dashboard-shell{
    margin:0 0 0 var(--ui9-rail-w)!important;
    width:calc(100vw - var(--ui9-rail-w))!important;
    max-width:calc(100vw - var(--ui9-rail-w))!important
  }
  html.ui9-frontend body.configuration-app .config-topbar{width:auto!important;max-width:none!important;margin:18px 22px 0!important}
  html.ui9-frontend #sidebar .dock-item[data-page]::before{display:none!important;content:none!important}
  html.ui9-frontend #sidebar .dock-item .nav-svg,
  html.ui9-frontend #sidebar .dock-item[data-page="alarms"] .nav-svg{
    width:18px!important;height:18px!important;min-width:18px!important;max-width:18px!important;
    color:currentColor!important;filter:none!important;position:relative!important;z-index:1!important
  }
  html.ui9-frontend #sidebar .dock-item span{font-size:12px!important;line-height:1!important;font-weight:640!important;color:currentColor!important;text-align:left!important}
  html.ui9-frontend #sidebar .dock-item b{top:7px!important;right:8px!important;margin:0!important}
}

/* UI10 embedded mode: the unified Document-Studio-style shell owns chrome/navigation. */
html.ui10-embedded,html.ui10-embedded body{background:var(--ui9-canvas)!important;min-height:100%;}
html.ui10-embedded body{overflow:auto!important;}
html.ui10-embedded .config-topbar,
html.ui10-embedded .service-commandbar,
html.ui10-embedded #service-dock,
html.ui10-embedded .dock-wrap,
html.ui10-embedded .protocol-header{display:none!important;}
html.ui10-embedded .app-shell{min-height:0!important;background:var(--ui9-canvas)!important;}
html.ui10-embedded .app-content,
html.ui10-embedded .config-content{padding:0!important;margin:0!important;min-height:0!important;background:var(--ui9-canvas)!important;}
html.ui10-embedded .app-content-inner,
html.ui10-embedded .service-page,
html.ui10-embedded .config-main,
html.ui10-embedded .protocol-grid{max-width:none!important;margin:0!important;padding:18px!important;}
html.ui10-embedded .service-stage{padding:0!important;min-height:0!important;}
html.ui10-embedded .service-workbench{min-height:0!important;}
html.ui10-embedded .page-view{padding-bottom:24px!important;}
html.ui10-embedded .service-primary-console,
html.ui10-embedded .service-database-panel,
html.ui10-embedded .service-activity-panel,
html.ui10-embedded .operation-summary,
html.ui10-embedded .settings-card,
html.ui10-embedded .glass-card,
html.ui10-embedded .easy-step,
html.ui10-embedded .easy-mode-head{box-shadow:0 6px 20px rgba(27,44,70,.045)!important;border-color:#e2e9f1!important;}
html.ui10-embedded .reliability-strip{margin-bottom:8px!important;}
html.ui10-embedded .protocol-grid{display:block!important;}
html.ui10-embedded .easy-mode-shell{max-width:1500px!important;margin:0 auto!important;}
html.ui10-embedded .protocol-advanced-shell{max-width:1500px!important;margin:18px auto 0!important;}
@media(max-width:900px){html.ui10-embedded .app-content-inner,html.ui10-embedded .service-page,html.ui10-embedded .config-main,html.ui10-embedded .protocol-grid{padding:12px!important;}}


/* ======================================================================
   LEGACY MIGRATION SOURCE: src/daq/webui/shared/studio_ui12.css
   Consolidated into the single universal Project 00 stylesheet.
   ====================================================================== */
/* AESST DAS UI11 — Document Studio visual system
   Shared presentation contract for the unified workspace and embedded operational surfaces. */
:root{
  --ds-canvas:#e9eff5;
  --ds-canvas-2:#eef3f8;
  --ds-surface:#f8fafc;
  --ds-surface-strong:#ffffff;
  --ds-surface-soft:#f1f5f9;
  --ds-surface-tint:#edf4fb;
  --ds-line:#cad6e2;
  --ds-line-soft:#dce5ed;
  --ds-ink:#10263d;
  --ds-muted:#597086;
  --ds-muted-2:#7f91a2;
  --ds-blue:#2f6bff;
  --ds-blue-2:#1f56db;
  --ds-cyan:#0aa9d3;
  --ds-green:#159f68;
  --ds-amber:#d88a14;
  --ds-red:#d74c55;
  --ds-violet:#7759e8;
  --ds-radius:16px;
  --ds-shadow:0 10px 28px rgba(24,43,68,.075);
  --ds-shadow-sm:0 5px 16px rgba(24,43,68,.06);
  --ds-ease:cubic-bezier(.2,.8,.2,1);
}

html,body{background:var(--ds-canvas)!important;color:var(--ds-ink)!important}
body{overflow-x:hidden!important}

/* Unified shell: closer to Document Studio's dark workspace rail + calm gray canvas. */
.studio-shell{background:linear-gradient(180deg,var(--ds-canvas-2),var(--ds-canvas))!important}
.studio-sidebar{background:linear-gradient(180deg,#0a1422 0%,#0d1b2c 64%,#102238 100%)!important;box-shadow:10px 0 30px rgba(9,24,41,.10)!important}
.studio-brand{padding-bottom:15px!important}.studio-brand img{box-shadow:0 8px 18px rgba(18,105,210,.16)!important}
.studio-nav-item{color:#9aafc2!important;border:1px solid transparent!important;transition:transform .16s var(--ds-ease),background .16s var(--ds-ease),color .16s var(--ds-ease),border-color .16s var(--ds-ease)!important}
.studio-nav-item:hover{background:rgba(255,255,255,.065)!important;color:#f4f8fc!important;transform:translateX(3px)!important}
.studio-nav-item.active{background:linear-gradient(90deg,rgba(56,104,255,.25),rgba(44,86,215,.11))!important;border-color:rgba(102,145,255,.18)!important;box-shadow:none!important}
.studio-nav-item.active:before{background:#6f98ff!important;box-shadow:0 0 14px rgba(111,152,255,.52)!important}
.workspace-account-card{background:rgba(255,255,255,.055)!important;border-color:rgba(255,255,255,.09)!important}
.studio-topbar{background:rgba(248,250,252,.97)!important;border-color:var(--ds-line)!important;box-shadow:0 1px 0 rgba(25,49,76,.03)!important}
.global-search{background:#eef3f7!important;border-color:var(--ds-line)!important}.global-search:focus-within{background:#fff!important}
.icon-button,.account-button{background:#f8fafc!important;border-color:var(--ds-line)!important}.icon-button:hover,.account-button:hover{background:#fff!important}
.studio-content{background:radial-gradient(circle at 8% 0%,rgba(47,107,255,.055),transparent 28%),radial-gradient(circle at 98% 5%,rgba(10,169,211,.045),transparent 24%),linear-gradient(180deg,var(--ds-canvas-2),var(--ds-canvas))!important;scroll-behavior:auto!important;scrollbar-gutter:stable}
.workspace-hero h1,.frame-toolbar h1{color:#102942!important}.workspace-hero p,.frame-toolbar p{color:var(--ds-muted)!important}
.metric-card,.workspace-panel,.capability-grid button{background:linear-gradient(180deg,var(--ds-surface-strong),var(--ds-surface))!important;border-color:var(--ds-line)!important;box-shadow:var(--ds-shadow-sm)!important}
.metric-card:hover,.capability-grid button:hover,.quick-actions button:hover{border-color:#b9c9d8!important;box-shadow:var(--ds-shadow)!important}
.quick-actions button{background:var(--ds-surface-soft)!important;border-color:var(--ds-line)!important}.quick-actions button:hover{background:#fff!important}
.activity-feed{border-color:var(--ds-line-soft)!important}.activity-item{border-color:var(--ds-line-soft)!important}
.frame-shell{background:var(--ds-surface-soft)!important;border-color:var(--ds-line)!important;box-shadow:var(--ds-shadow)!important}
.frame-shell iframe{background:var(--ds-canvas)!important}
.auth-dialog{max-width:440px!important;width:min(440px,calc(100vw - 32px))!important;max-height:calc(100dvh - 40px)!important;overflow-y:auto!important;overflow-x:hidden!important;background:linear-gradient(180deg,#fff,#f7fafc)!important;border:1px solid var(--ds-line)!important;box-shadow:0 28px 76px rgba(8,25,44,.25)!important}
.auth-dialog *{min-width:0}.auth-dialog input{width:100%!important;max-width:100%!important;background:#eef3f7!important;border-color:var(--ds-line)!important}.auth-dialog input:focus{background:#fff!important}
.modal-backdrop{overflow:hidden!important}

/* Shared embedded canvas. The outer unified workspace owns navigation and title chrome. */
html.ui10-embedded,html.ui10-embedded body{width:100%!important;min-width:0!important;height:auto!important;min-height:100%!important;background:var(--ds-canvas)!important;overflow-x:hidden!important;overflow-y:auto!important;scrollbar-gutter:stable!important}
html.ui10-embedded body{padding:0!important}
html.ui10-embedded .app-shell,
html.ui10-embedded .config-stage,
html.ui10-embedded .service-stage,
html.ui10-embedded .app-content,
html.ui10-embedded .config-content,
html.ui10-embedded .app-content-inner,
html.ui10-embedded .service-page,
html.ui10-embedded .page-view,
html.ui10-embedded .config-main,
html.ui10-embedded .protocol-grid{height:auto!important;min-height:0!important;max-height:none!important;overflow:visible!important;min-width:0!important}
html.ui10-embedded .config-topbar,
html.ui10-embedded .service-commandbar,
html.ui10-embedded #service-dock,
html.ui10-embedded #config-dock,
html.ui10-embedded .dock-wrap,
html.ui10-embedded .protocol-header,
html.ui10-embedded .top-glass,
html.ui10-embedded #sidebar{display:none!important}
html.ui10-embedded .app-content,
html.ui10-embedded .config-content,
html.ui10-embedded .dashboard-content{padding:0!important;margin:0!important;background:transparent!important}
html.ui10-embedded .app-content-inner,
html.ui10-embedded .service-page,
html.ui10-embedded .config-main,
html.ui10-embedded .dashboard-inner,
html.ui10-embedded .protocol-grid{width:100%!important;max-width:none!important;margin:0!important;padding:16px 18px 28px!important;background:transparent!important}
html.ui10-embedded .page-view{padding-bottom:24px!important;overflow:visible!important}
html.ui10-embedded .glass-card,
html.ui10-embedded .settings-card,
html.ui10-embedded .service-primary-console,
html.ui10-embedded .service-database-panel,
html.ui10-embedded .service-activity-panel,
html.ui10-embedded .operations-strip,
html.ui10-embedded .reliability-strip,
html.ui10-embedded .sub-card,
html.ui10-embedded .instrument-card,
html.ui10-embedded .parameter-card,
html.ui10-embedded .group-editor-card,
html.ui10-embedded .easy-step,
html.ui10-embedded .easy-mode-head{
  background:linear-gradient(180deg,var(--ds-surface-strong),var(--ds-surface))!important;
  border-color:var(--ds-line)!important;
  box-shadow:var(--ds-shadow-sm)!important;
}

/* Form controls: visible on light canvas, no white-on-white fields. */
html.ui10-embedded .touch-input,
html.ui10-embedded .touch-field,
html.ui10-embedded .touch-select,
html.ui10-embedded .choice-trigger,
html.ui10-embedded input:not([type="checkbox"]):not([type="radio"]),
html.ui10-embedded select,
html.ui10-embedded textarea{
  background:#eef3f7!important;color:var(--ds-ink)!important;border-color:#c6d3df!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.78)!important;
}
html.ui10-embedded .touch-input:focus,
html.ui10-embedded .touch-field:focus,
html.ui10-embedded .touch-select:focus,
html.ui10-embedded .choice-trigger:focus-visible,
html.ui10-embedded input:focus,
html.ui10-embedded select:focus,
html.ui10-embedded textarea:focus{background:#fff!important;border-color:#6ea2ef!important;box-shadow:0 0 0 3px rgba(47,107,255,.10)!important}
html.ui10-embedded .choice-menu{background:#fbfdff!important;border-color:var(--ds-line)!important;box-shadow:0 18px 42px rgba(20,45,71,.17)!important}
html.ui10-embedded .choice-option:hover{background:#edf4ff!important}
html.ui10-embedded .touch-button:not(.primary):not(.danger){background:#f6f9fb!important;border-color:#cbd7e2!important;color:#213a52!important}
html.ui10-embedded .touch-button:not(.primary):not(.danger):hover{background:#fff!important;border-color:#b8c9d8!important;box-shadow:var(--ds-shadow-sm)!important;transform:translateY(-1px)!important}
html.ui10-embedded .touch-button.primary{background:linear-gradient(135deg,var(--ds-blue),var(--ds-blue-2))!important;border-color:transparent!important;box-shadow:0 8px 18px rgba(47,107,255,.18)!important}

/* Configuration: Dynamic pages scroll naturally and time-base controls stay readable. */
html.ui10-embedded body.configuration-app .config-content{overflow:visible!important}
html.ui10-embedded body.configuration-app #config-content{display:block!important;overflow:visible!important}
html.ui10-embedded body.configuration-app .page-view:not([hidden]){display:block!important;overflow:visible!important;min-height:0!important}
html.ui10-embedded body.configuration-app .station-vertical-stack,
html.ui10-embedded body.configuration-app .station-config-panel,
html.ui10-embedded body.configuration-app .instrument-editor-shell,
html.ui10-embedded body.configuration-app .instrument-list,
html.ui10-embedded body.configuration-app .configured-workspace-overview,
html.ui10-embedded body.configuration-app .configured-item-grid{max-height:none!important;overflow:visible!important}
html.ui10-embedded body.configuration-app .config-section,
html.ui10-embedded body.configuration-app .instrument-card,
html.ui10-embedded body.configuration-app .parameter-card,
html.ui10-embedded body.configuration-app .group-editor-card{overflow:visible!important}
html.ui10-embedded body.configuration-app .instrument-advanced-settings,
html.ui10-embedded body.configuration-app .parameter-advanced-settings,
html.ui10-embedded body.configuration-app .workspace-advanced-settings{overflow:visible!important}
html.ui10-embedded body.configuration-app .timebase-card{background:linear-gradient(180deg,#f9fbfd,#eef4f8)!important;border-color:#c7d5e1!important}
html.ui10-embedded body.configuration-app .timebase-toggle-grid{display:grid!important;grid-template-columns:repeat(3,minmax(180px,1fr))!important;gap:10px!important;margin-top:10px!important}
html.ui10-embedded body.configuration-app .standard-timebase-tile{min-height:62px!important;padding:10px 12px!important;border:1px solid #c8d6e2!important;border-radius:13px!important;background:#f2f6fa!important;box-shadow:inset 0 1px 0 #fff!important;transition:transform .16s var(--ds-ease),background .16s var(--ds-ease),border-color .16s var(--ds-ease),box-shadow .16s var(--ds-ease)!important}
html.ui10-embedded body.configuration-app .standard-timebase-tile:hover{transform:translateY(-2px)!important;background:#f8fbfd!important;border-color:#9fb7cb!important;box-shadow:var(--ds-shadow-sm)!important}
html.ui10-embedded body.configuration-app .standard-timebase-tile.active{background:#e7f0ff!important;border-color:#7ea7e8!important;box-shadow:inset 3px 0 0 var(--ds-blue),0 5px 16px rgba(47,107,255,.08)!important}
html.ui10-embedded body.configuration-app .timebase-toggle-copy strong{font-size:12px!important;color:#14304a!important;line-height:1.2!important}
html.ui10-embedded body.configuration-app .timebase-toggle-copy small{font-size:9px!important;color:#637d92!important;margin-top:4px!important}
html.ui10-embedded body.configuration-app .toggle-switch{appearance:none!important;width:48px!important;height:28px!important;min-width:48px!important;min-height:28px!important;padding:0!important;margin:0!important;border:0!important;border-radius:999px!important;background:transparent!important;box-shadow:none!important;display:grid!important;place-items:center!important;overflow:visible!important;transform:none!important}
html.ui10-embedded body.configuration-app .toggle-switch-track{position:relative!important;display:block!important;width:46px!important;height:26px!important;border-radius:999px!important;background:#b9c8d5!important;border:1px solid #9fb2c2!important;box-shadow:inset 0 1px 2px rgba(24,43,68,.10)!important;transition:background .18s var(--ds-ease),border-color .18s var(--ds-ease)!important}
html.ui10-embedded body.configuration-app .toggle-switch-thumb{position:absolute!important;left:3px!important;top:3px!important;width:18px!important;height:18px!important;border-radius:50%!important;background:#fff!important;border:1px solid rgba(30,57,82,.12)!important;box-shadow:0 2px 6px rgba(24,43,68,.22)!important;transform:translateX(0)!important;transition:transform .18s var(--ds-ease)!important}
html.ui10-embedded body.configuration-app .toggle-switch.is-on .toggle-switch-track{background:linear-gradient(135deg,#3678ff,#235fde)!important;border-color:#235fde!important}
html.ui10-embedded body.configuration-app .toggle-switch.is-on .toggle-switch-thumb{transform:translateX(20px)!important}
html.ui10-embedded body.configuration-app .custom-timebase-head{border-color:#cbd8e3!important;color:#415d74!important}

/* Instruments/Groups/Relay pages: content grows with the number of cards, then the iframe scrolls. */
html.ui10-embedded body.configuration-app #view-instruments,
html.ui10-embedded body.configuration-app #view-controls,
html.ui10-embedded body.configuration-app #view-network,
html.ui10-embedded body.configuration-app #view-export,
html.ui10-embedded body.configuration-app #view-security{height:auto!important;max-height:none!important;overflow:visible!important}
html.ui10-embedded body.configuration-app .instrument-editor-shell{padding-bottom:36px!important}
html.ui10-embedded body.configuration-app .instrument-card[open],
html.ui10-embedded body.configuration-app .parameter-card[open],
html.ui10-embedded body.configuration-app .group-editor-card[open]{border-color:#a9bfd2!important;box-shadow:0 8px 24px rgba(24,43,68,.07)!important}

/* Service Manager summary: never crop Dashboard API / Configuration metadata. */
html.ui10-embedded body.service-manager-shell .service-workbench{grid-template-columns:minmax(300px,350px) minmax(0,1fr)!important;overflow:visible!important;align-items:start!important}
html.ui10-embedded body.service-manager-shell .service-control-rail,
html.ui10-embedded body.service-manager-shell .service-operations-pane{height:auto!important;max-height:none!important;overflow:visible!important;grid-template-rows:auto!important}
html.ui10-embedded body.service-manager-shell .operations-strip{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;min-height:100px!important;height:auto!important;overflow:visible!important;border-radius:15px!important}
html.ui10-embedded body.service-manager-shell .operation-summary{min-height:100px!important;height:auto!important;padding:17px 16px!important;overflow:visible!important;align-content:center!important}
html.ui10-embedded body.service-manager-shell .operation-summary strong{font-size:17px!important;line-height:1.2!important;overflow:visible!important;text-overflow:clip!important;white-space:normal!important}
html.ui10-embedded body.service-manager-shell .operation-summary>span:last-child{font-size:9.5px!important;line-height:1.35!important;white-space:normal!important;overflow-wrap:anywhere!important;overflow:visible!important;text-overflow:clip!important}
html.ui10-embedded body.service-manager-shell .service-activity-panel{min-height:360px!important;overflow:visible!important}
html.ui10-embedded body.service-manager-shell .activity-list{min-height:250px!important;max-height:none!important;overflow:auto!important;background:#eef4f8!important;border-color:#cbd8e3!important}

/* Login dialogs: single-column, centered, no horizontal scrolling. */
html.ui10-embedded .modal-backdrop{overflow:hidden!important;padding:18px!important}
html.ui10-embedded .modal,
html.ui10-embedded .auth-modal,
html.ui10-embedded .clean-auth-modal{width:min(460px,calc(100vw - 36px))!important;max-width:460px!important;max-height:calc(100dvh - 36px)!important;overflow-y:auto!important;overflow-x:hidden!important;padding:24px!important;background:linear-gradient(180deg,#fff,#f6f9fb)!important;border:1px solid #c8d5e1!important;border-radius:20px!important;box-shadow:0 30px 80px rgba(8,25,44,.24)!important}
html.ui10-embedded .modal *,html.ui10-embedded .auth-modal *{min-width:0!important;max-width:100%}
html.ui10-embedded .auth-fields{display:grid!important;grid-template-columns:1fr!important;gap:11px!important}
html.ui10-embedded .auth-fields label{width:100%!important}.auth-fields input{width:100%!important;min-width:0!important}
html.ui10-embedded .auth-actions{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:9px!important}.auth-actions .auth-submit{width:100%!important}

/* Dashboard/Protocol surfaces use the same calm contrast and scroll contract. */
html.ui10-embedded .dashboard-shell,html.ui10-embedded .dashboard-content,html.ui10-embedded .dashboard-inner{height:auto!important;min-height:0!important;max-height:none!important;overflow:visible!important;background:transparent!important}
html.ui10-embedded .value-tile,html.ui10-embedded .station-live-grid .value-tile{background:linear-gradient(180deg,#fff,#f5f8fb)!important;border-color:#cbd7e2!important;box-shadow:var(--ds-shadow-sm)!important}
html.ui10-embedded .analysis-chart-stage,html.ui10-embedded .station-trend-surface{background:#f9fbfd!important;border-color:#c8d6e1!important}
html.ui10-embedded .protocol-grid{overflow:visible!important}.ui10-embedded .easy-mode-shell,.ui10-embedded .protocol-advanced-shell{max-height:none!important;overflow:visible!important}

/* Scrollbars intentionally visible only when content actually exceeds its viewport. */
html.ui10-embedded *{scrollbar-color:#a9bac9 transparent;scrollbar-width:thin}
html.ui10-embedded *::-webkit-scrollbar{width:10px;height:10px}
html.ui10-embedded *::-webkit-scrollbar-thumb{background:#afbfcc;border:2px solid transparent;background-clip:padding-box;border-radius:99px}
html.ui10-embedded *::-webkit-scrollbar-track{background:transparent}

@media(max-width:1160px){
  html.ui10-embedded body.configuration-app .timebase-toggle-grid{grid-template-columns:repeat(2,minmax(160px,1fr))!important}
  html.ui10-embedded body.service-manager-shell .service-workbench{grid-template-columns:1fr!important}
}
@media(max-width:720px){
  html.ui10-embedded .app-content-inner,html.ui10-embedded .service-page,html.ui10-embedded .config-main,html.ui10-embedded .dashboard-inner,html.ui10-embedded .protocol-grid{padding:12px 10px 24px!important}
  html.ui10-embedded body.configuration-app .timebase-toggle-grid{grid-template-columns:1fr!important}
  html.ui10-embedded body.service-manager-shell .operations-strip{grid-template-columns:1fr!important}
  html.ui10-embedded .auth-actions{grid-template-columns:1fr!important}
}
@media(prefers-reduced-motion:reduce){.studio-shell *,html.ui10-embedded *{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}

/* High-specificity embedded reset: legacy UI9 fixed-height rules must not win. */
html.ui9-frontend.ui10-embedded body.configuration-app,
html.ui9-frontend.ui10-embedded body.service-manager-shell,
html.ui9-frontend.ui10-embedded body:has(.dashboard-shell),
html.ui9-frontend.ui10-embedded body:has(.protocol-grid){
  width:100%!important;height:auto!important;min-height:100%!important;max-height:none!important;
  overflow-x:hidden!important;overflow-y:auto!important;padding:0!important;background:var(--ds-canvas)!important;
}
html.ui9-frontend.ui10-embedded body.configuration-app .app-shell,
html.ui9-frontend.ui10-embedded body.service-manager-shell .app-shell,
html.ui9-frontend.ui10-embedded body:has(.dashboard-shell) .dashboard-shell{
  width:100%!important;height:auto!important;min-height:100%!important;max-height:none!important;
  display:block!important;overflow:visible!important;background:transparent!important;
}
html.ui9-frontend.ui10-embedded body.configuration-app .config-stage,
html.ui9-frontend.ui10-embedded body.configuration-app .config-content,
html.ui9-frontend.ui10-embedded body.configuration-app .app-content-inner,
html.ui9-frontend.ui10-embedded body.service-manager-shell .app-content,
html.ui9-frontend.ui10-embedded body.service-manager-shell .app-content-inner,
html.ui9-frontend.ui10-embedded body.service-manager-shell .service-stage,
html.ui9-frontend.ui10-embedded body.service-manager-shell .service-workbench,
html.ui9-frontend.ui10-embedded body:has(.dashboard-shell) .dashboard-content,
html.ui9-frontend.ui10-embedded body:has(.dashboard-shell) .dashboard-inner{
  width:100%!important;height:auto!important;min-height:0!important;max-height:none!important;overflow:visible!important;
}
html.ui9-frontend.ui10-embedded body.configuration-app .standard-timebase-tile .toggle-switch>.toggle-switch-track{
  display:block!important;width:46px!important;height:26px!important;min-width:46px!important;min-height:26px!important;
  border-radius:999px!important;background-color:#b9c8d5!important;background-image:none!important;
  border:1px solid #9fb2c2!important;box-shadow:inset 0 1px 2px rgba(24,43,68,.10)!important;opacity:1!important;
}
html.ui9-frontend.ui10-embedded body.configuration-app .standard-timebase-tile .toggle-switch.is-on>.toggle-switch-track{
  background-color:#2f6bff!important;background-image:linear-gradient(135deg,#3678ff,#235fde)!important;border-color:#235fde!important;
}
html.ui9-frontend.ui10-embedded body.configuration-app .standard-timebase-tile .toggle-switch>.toggle-switch-track>.toggle-switch-thumb{
  display:block!important;opacity:1!important;background:#fff!important;
}

/* UI11 motion contract: Document-Studio-like micro-motion without layout thrash. */
html.ui10-embedded .page-view:not([hidden]),
html.ui10-embedded .service-workbench,
html.ui10-embedded .protocol-grid,
html.ui10-embedded #workspace:not([hidden]){
  animation:dsPageIn .24s var(--ds-ease) both!important;
}
html.ui10-embedded .glass-card,
html.ui10-embedded .settings-card,
html.ui10-embedded .operation-summary,
html.ui10-embedded .instrument-card,
html.ui10-embedded .parameter-card,
html.ui10-embedded .group-editor-card,
html.ui10-embedded .easy-step{
  transition:transform .16s var(--ds-ease),box-shadow .16s var(--ds-ease),border-color .16s var(--ds-ease),background .16s var(--ds-ease)!important;
}
html.ui10-embedded .choice-menu:not([hidden]){animation:dsMenuIn .14s var(--ds-ease) both!important;transform-origin:top center!important}
@keyframes dsPageIn{from{opacity:.35;transform:translateY(5px)}to{opacity:1;transform:none}}
@keyframes dsMenuIn{from{opacity:0;transform:translateY(-4px) scale(.995)}to{opacity:1;transform:none}}

/* --------------------------------------------------------------------------
   AESST DAS UI12 — feedback + balanced workspace geometry
   One authoritative extension of the Document Studio surface contract.
   -------------------------------------------------------------------------- */
:root{
  --ds-balanced-min:clamp(520px,66dvh,650px);
}

/* Short operational pages sit in the visual center of the available canvas.
   When content grows beyond the viewport, min-height expands naturally and the
   document returns to top-origin scrolling without clipping. */
html.ui10-embedded body.configuration-app .page-view:not([hidden]){
  min-height:calc(100dvh - 32px)!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  padding-top:18px!important;
  padding-bottom:28px!important;
}
html.ui10-embedded body.configuration-app #view-instruments:not([hidden]),
html.ui10-embedded body.configuration-app #view-controls:not([hidden]),
html.ui10-embedded body.configuration-app #view-network:not([hidden]),
html.ui10-embedded body.configuration-app #view-export:not([hidden]),
html.ui10-embedded body.configuration-app #view-security:not([hidden]){
  min-height:calc(100dvh - 32px)!important;
}
html.ui10-embedded body.configuration-app .station-vertical-stack,
html.ui10-embedded body.configuration-app .instrument-workspace-v2,
html.ui10-embedded body.configuration-app .control-workspace,
html.ui10-embedded body.configuration-app .network-workspace,
html.ui10-embedded body.configuration-app .export-workspace,
html.ui10-embedded body.configuration-app .security-workspace{
  width:100%!important;
}

/* Service Manager: balance both columns and center the complete workbench in
   the available frame. The database card bottom aligns with Service Activity. */
html.ui10-embedded body.service-manager-shell .service-stage{
  min-height:calc(100dvh - 32px)!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  padding:16px 18px 28px!important;
}
html.ui10-embedded body.service-manager-shell .service-workbench{
  width:100%!important;
  min-height:var(--ds-balanced-min)!important;
  grid-template-columns:minmax(300px,350px) minmax(0,1fr)!important;
  align-items:stretch!important;
  overflow:visible!important;
}
html.ui10-embedded body.service-manager-shell .service-control-rail{
  height:100%!important;
  display:grid!important;
  grid-template-rows:minmax(0,1.18fr) minmax(220px,.82fr)!important;
  gap:12px!important;
  align-content:stretch!important;
}
html.ui10-embedded body.service-manager-shell .service-operations-pane{
  height:100%!important;
  display:grid!important;
  grid-template-rows:auto minmax(0,1fr) auto!important;
  gap:12px!important;
  align-content:stretch!important;
}
html.ui10-embedded body.service-manager-shell .service-primary-console,
html.ui10-embedded body.service-manager-shell .service-database-panel,
html.ui10-embedded body.service-manager-shell .service-activity-panel{
  height:100%!important;
  min-height:0!important;
  box-sizing:border-box!important;
}
html.ui10-embedded body.service-manager-shell .service-activity-panel{
  display:flex!important;
  flex-direction:column!important;
}
html.ui10-embedded body.service-manager-shell .activity-list{
  flex:1 1 auto!important;
  min-height:0!important;
  max-height:none!important;
}

/* Dashboard and Protocol Studio follow the same rule: short content centers;
   long content grows and scrolls naturally. */
html.ui10-embedded body:has(.dashboard-shell) .dashboard-inner,
html.ui10-embedded body:has(.protocol-grid) .protocol-grid{
  min-height:calc(100dvh - 32px)!important;
}

/* Parent notifications are the single visible feedback surface in unified mode. */
html.ui10-embedded .toast-host{display:none!important}

@media(max-width:1160px){
  html.ui10-embedded body.service-manager-shell .service-workbench{grid-template-columns:1fr!important;min-height:0!important}
  html.ui10-embedded body.service-manager-shell .service-control-rail,
  html.ui10-embedded body.service-manager-shell .service-operations-pane{height:auto!important;grid-template-rows:auto!important}
  html.ui10-embedded body.service-manager-shell .service-primary-console,
  html.ui10-embedded body.service-manager-shell .service-database-panel,
  html.ui10-embedded body.service-manager-shell .service-activity-panel{height:auto!important}
}
@media(max-height:720px){
  html.ui10-embedded body.configuration-app .page-view:not([hidden]),
  html.ui10-embedded body.service-manager-shell .service-stage{justify-content:flex-start!important;min-height:0!important}
  :root{--ds-balanced-min:500px}
}

/* Natural unified document scrolling: the child reports its content height and
   the outer workspace owns the scrollbar instead of trapping the user in a
   fixed-height embedded pane. */
html.ui10-embedded body.configuration-app .page-view:not([hidden]),
html.ui10-embedded body.service-manager-shell .service-stage{
  box-sizing:border-box!important;
}
.frame-shell iframe{height:auto;min-height:calc(100vh - var(--topbar) - 150px)}

/* UI12 specificity guard: supersede legacy UI9 fixed-height service rules. */
html.ui9-frontend.ui10-embedded body.service-manager-shell .service-stage{
  min-height:calc(100dvh - 32px)!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  padding:16px 18px 28px!important;
  box-sizing:border-box!important;
}
html.ui9-frontend.ui10-embedded body.service-manager-shell .service-workbench{
  min-height:var(--ds-balanced-min)!important;
  align-items:stretch!important;
}
html.ui9-frontend.ui10-embedded body.service-manager-shell .service-control-rail,
html.ui9-frontend.ui10-embedded body.service-manager-shell .service-operations-pane{
  height:100%!important;
  max-height:none!important;
  align-content:stretch!important;
}
html.ui9-frontend.ui10-embedded body.service-manager-shell .service-control-rail{
  grid-template-rows:minmax(0,1.18fr) minmax(220px,.82fr)!important;
}
html.ui9-frontend.ui10-embedded body.service-manager-shell .service-operations-pane:has(#startup-reliability[hidden]){
  grid-template-rows:auto minmax(0,1fr)!important;
}
html.ui9-frontend.ui10-embedded body.service-manager-shell .service-operations-pane:not(:has(#startup-reliability[hidden])){
  grid-template-rows:auto minmax(0,1fr) auto!important;
}
@media(max-width:1160px){
  html.ui9-frontend.ui10-embedded body.service-manager-shell .service-stage{justify-content:flex-start!important;min-height:0!important}
  html.ui9-frontend.ui10-embedded body.service-manager-shell .service-workbench{min-height:0!important}
  html.ui9-frontend.ui10-embedded body.service-manager-shell .service-control-rail,
  html.ui9-frontend.ui10-embedded body.service-manager-shell .service-operations-pane{height:auto!important;grid-template-rows:auto!important}
}
@media(max-height:720px){
  html.ui9-frontend.ui10-embedded body.service-manager-shell .service-stage{justify-content:flex-start!important;min-height:0!important}
}

/* Unified means one navigation rail only. Remove the legacy UI9 rail/chrome from
   every embedded child, including high-specificity desktop rail rules. */
html.ui9-frontend.ui10-embedded body.service-manager-shell #service-dock,
html.ui9-frontend.ui10-embedded body.configuration-app #config-dock,
html.ui9-frontend.ui10-embedded body:has(.dashboard-shell) #sidebar,
html.ui9-frontend.ui10-embedded body.service-manager-shell .service-commandbar,
html.ui9-frontend.ui10-embedded body.configuration-app .config-topbar,
html.ui9-frontend.ui10-embedded body:has(.dashboard-shell) .top-glass,
html.ui9-frontend.ui10-embedded body:has(.protocol-grid) .protocol-header{
  display:none!important;
}
@media(min-width:1101px){
  html.ui9-frontend.ui10-embedded body.service-manager-shell>.app-shell,
  html.ui9-frontend.ui10-embedded body.configuration-app>.app-shell,
  html.ui9-frontend.ui10-embedded body:has(.dashboard-shell)>.dashboard-shell,
  html.ui9-frontend.ui10-embedded #workspace.dashboard-shell{
    margin-left:0!important;
    margin-right:0!important;
    width:100%!important;
    max-width:100%!important;
  }
  html.ui9-frontend.ui10-embedded body.service-manager-shell .app-content,
  html.ui9-frontend.ui10-embedded body.configuration-app .config-content,
  html.ui9-frontend.ui10-embedded #workspace.dashboard-shell{
    padding-left:0!important;
    padding-right:0!important;
  }
}

/* Monitoring pages follow the same balanced-canvas rule as Configuration. */
html.ui9-frontend.ui10-embedded body:has(.dashboard-shell) .dashboard-shell{
  display:block!important;
  height:auto!important;
  min-height:100%!important;
  overflow:visible!important;
  background:transparent!important;
}
html.ui9-frontend.ui10-embedded body:has(.dashboard-shell) .dashboard-content{
  min-height:100dvh!important;
  height:auto!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  overflow:visible!important;
  box-sizing:border-box!important;
  padding:18px!important;
}
html.ui9-frontend.ui10-embedded body:has(.dashboard-shell) .dashboard-inner{
  width:100%!important;
  max-width:1600px!important;
  margin:0 auto!important;
}
html.ui9-frontend.ui10-embedded body:has(.protocol-grid) .protocol-grid{
  align-content:center!important;
  box-sizing:border-box!important;
}
@media(max-height:720px){
  html.ui9-frontend.ui10-embedded body:has(.dashboard-shell) .dashboard-content{justify-content:flex-start!important;min-height:0!important}
}


/* Protocol Studio inherits a historical dark hero rule from UI9. The embedded
   Document Studio surface is light, so reset its foreground explicitly. */
html.ui9-frontend.ui10-embedded body.protocol-studio-shell .easy-mode-head{
  color:var(--ds-ink)!important;
}
html.ui9-frontend.ui10-embedded body.protocol-studio-shell .easy-mode-head h1,
html.ui9-frontend.ui10-embedded body.protocol-studio-shell .easy-mode-head h2,
html.ui9-frontend.ui10-embedded body.protocol-studio-shell .easy-mode-head strong{
  color:var(--ds-ink)!important;-webkit-text-fill-color:var(--ds-ink)!important;
}
html.ui9-frontend.ui10-embedded body.protocol-studio-shell .easy-mode-head p,
html.ui9-frontend.ui10-embedded body.protocol-studio-shell .easy-mode-head span{
  color:var(--ds-muted)!important;-webkit-text-fill-color:var(--ds-muted)!important;
}
html.ui9-frontend.ui10-embedded body.protocol-studio-shell .easy-mode-head .eyebrow{
  color:var(--ds-accent)!important;-webkit-text-fill-color:var(--ds-accent)!important;
}


/* ======================================================================
   LEGACY MIGRATION SOURCE: src/daq/webui/shared/pro_max_ui1333.css
   Consolidated into the single universal Project 00 stylesheet.
   ====================================================================== */
/* AESST DAS UI13.33 · UI/UX Pro Max resilience layer
   Shared by legacy/companion surfaces so controls keep the same geometry,
   text containment and responsive behavior as the unified workspace. */
:root{
  --adq-pro-control-h:42px;
  --adq-pro-control-font:11px;
  --adq-pro-label-line:1.3;
  --adq-pro-grid-gap:12px;
}
*,*::before,*::after{box-sizing:border-box}
:where(.field,.form-field,.form-grid>label,.settings-grid>label){min-width:0;max-width:100%}
:where(.field>label,.form-field>label,.form-grid>label>span:first-child){line-height:var(--adq-pro-label-line);overflow-wrap:anywhere}
:where(input:not([type="checkbox"]):not([type="radio"]),select,textarea,.touch-field,.touch-input,.touch-select,.choice-trigger,.onboarding-select){min-width:0;max-width:100%;box-sizing:border-box;font-size:var(--adq-pro-control-font)}
:where(input:not([type="checkbox"]):not([type="radio"]),select,.touch-field,.touch-input,.touch-select,.choice-trigger,.onboarding-select){min-height:var(--adq-pro-control-h)}
:where(select,.touch-select,.onboarding-select,.choice-value){text-overflow:ellipsis}
:where(select,.touch-select,.onboarding-select){white-space:nowrap}
:where(textarea){line-height:1.45;overflow:auto}
:where(.form-grid,.settings-grid,.onboarding-grid,.parser-toolbar){align-items:start}
:where(.touch-button,.button,.choice-trigger):not(.compact-add):not(.compact-danger):not(.icon-button-small){min-height:40px;line-height:1.2}
:where(.touch-button,.button){max-width:100%}
:where(.choice-value,.subtle-copy,.field-note,.help,.field-help){overflow-wrap:anywhere}
@media(max-width:700px){
  :where(input:not([type="checkbox"]):not([type="radio"]),select,textarea,.touch-field,.touch-input,.touch-select,.onboarding-select){font-size:16px}
  :where(.form-grid,.settings-grid,.onboarding-grid){grid-template-columns:1fr!important}
}


/* UI13.34 — Pro Max resilient controls + rounded custom select system */
.adq-native-select{position:absolute!important;opacity:0!important;pointer-events:none!important;width:1px!important;height:1px!important;margin:0!important;padding:0!important}
.adq-select{position:relative!important;display:block!important;width:100%!important;min-width:0!important;max-width:100%!important;overflow:visible!important}
.adq-select-trigger{box-sizing:border-box!important;width:100%!important;min-width:0!important;min-height:40px!important;height:40px!important;padding:0 11px 0 12px!important;border:1px solid rgba(109,132,155,.36)!important;border-radius:12px!important;background:rgba(255,255,255,.94)!important;color:#173451!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:8px!important;font-family:inherit!important;font-size:12px!important;font-weight:600!important;line-height:1.2!important;cursor:pointer!important;text-align:left!important;box-shadow:0 1px 2px rgba(21,45,72,.03)!important;transition:border-color .16s ease,box-shadow .16s ease,background .16s ease!important}
.adq-select-trigger:hover{border-color:rgba(23,103,242,.48)!important;background:#fff!important}
.adq-select-trigger:focus-visible{outline:none!important;border-color:#1767f2!important;box-shadow:0 0 0 3px rgba(23,103,242,.12)!important}
.adq-select-value{display:block!important;min-width:0!important;max-width:100%!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}
.adq-select-chevron{display:grid!important;place-items:center!important;flex:0 0 16px!important;color:#617b96!important}.adq-select-chevron svg{width:15px!important;height:15px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.8!important}
.adq-select-popover{position:absolute!important;z-index:10000!important;top:calc(100% + 6px)!important;left:0!important;right:auto!important;width:max(100%,min(360px,calc(calc(100vw / var(--nb-zoom,1)) - 48px)))!important;max-width:min(520px,calc(calc(100vw / var(--nb-zoom,1)) - 48px))!important;max-height:280px!important;overflow:auto!important;padding:6px!important;border:1px solid rgba(109,132,155,.26)!important;border-radius:14px!important;background:rgba(255,255,255,.985)!important;box-shadow:0 18px 48px rgba(21,45,72,.16),0 3px 10px rgba(21,45,72,.08)!important;backdrop-filter:blur(16px)!important}
.adq-select-option{box-sizing:border-box!important;width:100%!important;min-height:36px!important;height:auto!important;padding:8px 10px!important;border:0!important;border-radius:9px!important;background:transparent!important;color:#173451!important;font-family:inherit!important;font-size:12px!important;font-weight:550!important;line-height:1.3!important;text-align:left!important;white-space:normal!important;overflow-wrap:anywhere!important;cursor:pointer!important}
.adq-select-option:hover,.adq-select-option:focus-visible{outline:none!important;background:#eef5ff!important;color:#1458c4!important}.adq-select-option.selected,.adq-select-option[aria-selected="true"]{background:#e7f1ff!important;color:#1458c4!important;font-weight:700!important}.adq-select-option:disabled{opacity:.45!important;cursor:not-allowed!important}
:is(.field,.form-grid,.config-editor-row,.network-map-table,.report-scheduler-card,.analysis-config-card,.modal,.card,.panel):has(.adq-select){overflow:visible!important}
html[data-theme="dark"] .adq-select-trigger{background:rgba(23,35,49,.96)!important;border-color:rgba(164,183,204,.27)!important;color:#eef5fb!important}html[data-theme="dark"] .adq-select-popover{background:rgba(19,30,43,.985)!important;border-color:rgba(164,183,204,.23)!important}html[data-theme="dark"] .adq-select-option{color:#eef5fb!important}html[data-theme="dark"] .adq-select-option:hover,html[data-theme="dark"] .adq-select-option.selected{background:rgba(64,133,235,.18)!important;color:#b9d6ff!important}
/* resilient form/control alignment */
.form-grid,.config-form-grid,.network-endpoint-grid,.analysis-map-grid{align-items:start!important}.field,.form-grid>.field,.config-editor-row>.field{min-width:0!important}.field>label,.field>span:first-child{overflow-wrap:anywhere!important}.input,.select,.touch-field,.touch-input,.touch-select,input:not([type="checkbox"]):not([type="radio"]),select,textarea{box-sizing:border-box;max-width:100%;min-width:0;font-family:inherit}.input,.select,.touch-field,.touch-input,.touch-select,input:not([type="checkbox"]):not([type="radio"]),select{min-height:40px;font-size:12px!important}.button,.touch-button{max-width:100%;min-height:40px;line-height:1.15;white-space:normal}.dock-item .label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10px!important}.config-seven-dock{gap:5px!important}.config-seven-dock .dock-item{min-width:72px!important;max-width:126px!important;padding-inline:8px!important}
@media(max-width:900px){.adq-select-popover{max-width:min(420px,calc(calc(100vw / var(--nb-zoom,1)) - 28px))!important}.config-seven-dock{overflow-x:auto!important;justify-content:flex-start!important}.config-seven-dock .dock-item{flex:0 0 auto!important}}
/* UI13.34 production Network/API and resilient dropdown polish */
.network-token-panel{display:grid;grid-template-columns:minmax(180px,1fr) minmax(300px,1.5fr);align-items:end;gap:16px;padding:14px 16px;margin-top:14px;border:1px solid rgba(109,132,155,.24);border-radius:16px;background:rgba(247,250,253,.82)}
.network-token-copy{display:flex;flex-direction:column;gap:4px;min-width:0}.network-token-copy strong{font-size:12px;color:#173451}.network-token-copy small{font-size:10px;line-height:1.45;color:#5b718a;overflow-wrap:anywhere}.network-token-actions{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:8px;align-items:center;min-width:0}.network-token-input{font-family:ui-monospace,SFMono-Regular,Consolas,monospace!important;min-width:0!important}.adq-select-trigger:disabled{opacity:.55!important;cursor:not-allowed!important;background:rgba(236,241,246,.88)!important}.adq-select.open .adq-select-trigger{border-color:#1767f2!important;box-shadow:0 0 0 3px rgba(23,103,242,.10)!important}.adq-select-popover{scrollbar-width:thin!important;overscroll-behavior:contain!important}.adq-select-option{transition:background .12s ease,color .12s ease!important}
html[data-theme="dark"] .network-token-panel{background:rgba(20,31,43,.72);border-color:rgba(164,183,204,.22)}html[data-theme="dark"] .network-token-copy strong{color:#eef5fb}html[data-theme="dark"] .network-token-copy small{color:#b2c4d7}
@media(max-width:760px){.network-token-panel{grid-template-columns:1fr}.network-token-actions{grid-template-columns:1fr 1fr}.network-token-input{grid-column:1/-1}}


/* ======================================================================
   LEGACY MIGRATION SOURCE: src/daq/webui/unified/styles.css
   Consolidated into the single universal Project 00 stylesheet.
   ====================================================================== */
/* UI13.38 compatibility tokens: top-nav-group-trigger | top-nav-menu */
/* AESST DAS UI13.36 — high-contrast reference dashboard system.
   This layer intentionally sits after the existing UI13.35 styles so the
   application keeps its production behavior while adopting the new visual
   hierarchy. Dark theme remains supported by the earlier stylesheet. */

:root{
  --ref-canvas:#F1F5F9;
  --ref-canvas-soft:#F8FAFC;
  --ref-surface:#FFFFFF;
  --ref-border:#E2E8F0;
  --ref-border-strong:#CBD5E1;
  --ref-text:#0F172A;
  --ref-muted:#64748B;
  --ref-header:#334155;
  --ref-header-2:#475569;
  --ref-good-bg:#D1FAE5;
  --ref-good:#065F46;
  --ref-warn-bg:#FEF3C7;
  --ref-warn:#92400E;
  --ref-high-bg:#FCE7F3;
  --ref-high:#9D174D;
  --ref-emerald:#10B981;
  --ref-cyan:#0891B2;
  --ref-purple:#7C3AED;
  --ref-magenta:#C026D3;
  --ref-orange:#F97316;
  --ref-teal:#0D9488;
  --ref-shadow:0 1px 2px rgba(15,23,42,.05),0 8px 24px rgba(15,23,42,.045);
}

html[data-theme="light"],html:not([data-theme="dark"]){color-scheme:light}
html[data-theme="light"] body,html:not([data-theme="dark"]) body{background:var(--ref-canvas)!important;color:var(--ref-text)!important;font-family:Inter,"Segoe UI",Roboto,Arial,sans-serif!important}

/* Global enterprise surface language. */
html[data-theme="light"] .panel,
html[data-theme="light"] .card,
html[data-theme="light"] .modal,
html[data-theme="light"] .glass-card,
html[data-theme="light"] .workspace-card,
html[data-theme="light"] .config-entity-panel{
  background:var(--ref-surface)!important;
  border:1px solid var(--ref-border)!important;
  border-radius:8px!important;
  box-shadow:var(--ref-shadow)!important;
}
html[data-theme="light"] .input,
html[data-theme="light"] .select,
html[data-theme="light"] input,
html[data-theme="light"] select,
html[data-theme="light"] textarea{
  border-radius:7px!important;
  border-color:var(--ref-border-strong)!important;
}
html[data-theme="light"] select,
html[data-theme="light"] .aesst-select-popover,
html[data-theme="light"] .glass-select-menu,
html[data-theme="light"] .select-menu,
html[data-theme="light"] .dropdown-menu,
html[data-theme="light"] [role="listbox"],
html[data-theme="light"] .popover,
html[data-theme="light"] .menu-popover,
html[data-theme="light"] .modal-root,
html[data-theme="light"] #modal-root{z-index:99999!important}
html[data-theme="light"] td,
html[data-theme="light"] th,
html[data-theme="light"] button,
html[data-theme="light"] .field label,
html[data-theme="light"] .configured-entity-row *{text-overflow:ellipsis;overflow:hidden}
html[data-theme="light"] td,
html[data-theme="light"] th{padding:6px 10px;white-space:nowrap}

/* Reference header. */
.ref-topbar{
  min-height:64px!important;
  height:64px!important;
  padding:0!important;
  border:1px solid var(--ref-border)!important;
  border-radius:0!important;
  background:var(--ref-surface)!important;
  box-shadow:0 1px 0 rgba(15,23,42,.05)!important;
  display:grid!important;
  grid-template-columns:minmax(235px,1fr) auto minmax(250px,1fr)!important;
  align-items:stretch!important;
  gap:0!important;
  position:sticky!important;
  top:0!important;
  z-index:300!important;
}
.ref-topbar-brand{
  display:flex;align-items:center;gap:10px;min-width:0;padding:0 16px;
  color:#fff;background:linear-gradient(90deg,var(--ref-header),var(--ref-header-2));
}
.ref-menu-button{display:grid!important;color:#fff!important;background:transparent!important;border:0!important;width:32px!important;height:32px!important}
.ref-menu-button svg{width:19px!important;height:19px!important}
.ref-brand-lockup{display:flex;align-items:baseline;gap:12px;min-width:0}
.ref-brand-lockup strong{font-size:20px;line-height:1;font-weight:650;letter-spacing:-.02em;white-space:nowrap}
.ref-brand-lockup span{font-size:10px;color:#CBD5E1;text-transform:uppercase;letter-spacing:.08em;white-space:nowrap}
.ref-topbar-center{display:flex;align-items:center;justify-content:center;gap:12px;padding:0 18px;min-width:420px;background:#F8FAFC;border-right:1px solid var(--ref-border)}
.ref-control-pill{height:30px;padding:0 13px;border:1px solid #CBD5E1;border-radius:999px;background:#E2E8F0;color:#334155;font-size:11px;font-weight:700;cursor:pointer}
.ref-clock-block{height:64px;min-width:132px;padding:8px 18px;display:grid;place-content:center;text-align:center;background:#fff;border-left:1px solid var(--ref-border);border-right:1px solid var(--ref-border)}
.ref-clock-block strong{font-size:20px;line-height:1;font-weight:760;letter-spacing:-.025em;color:var(--ref-text)}
.ref-clock-block span{margin-top:4px;font-size:9px;color:#475569}
.ref-system-status{height:28px!important;padding:0 10px!important;border:1px solid #CBD5E1!important;border-radius:999px!important;background:#fff!important;color:#334155!important;font-size:10px!important}
.ref-system-status.good i{background:#10B981!important;box-shadow:0 0 0 3px #D1FAE5!important}
.ref-topbar-right{display:flex!important;justify-content:flex-end!important;gap:6px!important;padding:0 14px!important;background:#fff!important}
.ref-icon-control,.ref-topbar #refresh-button{width:34px!important;height:34px!important;min-width:34px!important;border-radius:7px!important;border:0!important;background:transparent!important;color:#475569!important}
.ref-icon-control:hover,.ref-topbar #refresh-button:hover{background:#F1F5F9!important;color:#0F172A!important}
.ref-notification{position:relative!important;overflow:visible!important}
.ref-notification b{position:absolute;right:1px;top:1px;min-width:15px;height:15px;padding:0 4px;border-radius:999px;background:#BE185D;color:#fff;font:700 9px/15px Inter,"Segoe UI",sans-serif;text-align:center}
.ref-topbar #account-button{height:40px!important;border:0!important;background:transparent!important;padding:4px 5px!important}
.ref-topbar #account-button .account-text{display:none!important}
.ref-topbar #account-button .avatar{width:30px!important;height:30px!important;border:1px solid var(--ref-border-strong)!important;background:#fff!important;color:#334155!important}

/* Work area. */
.app-main,.page-root{background:var(--ref-canvas)!important}
.page-root{padding:10px 12px 18px!important}
.ref-dashboard{gap:8px!important;max-width:1900px;margin:0 auto;width:100%}
.ref-dashboard-meta{min-height:38px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 2px}
.ref-dashboard-meta>div:first-child{display:flex;align-items:baseline;gap:10px;min-width:0}
.ref-dashboard-meta strong{font-size:14px;color:var(--ref-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ref-eyebrow{font-size:9px;letter-spacing:.1em;font-weight:800;color:#64748B}
.ref-meta-actions{display:flex;align-items:center;gap:7px}
.ref-summary-pill{display:inline-flex;align-items:center;gap:6px;height:24px;padding:0 9px;border:1px solid var(--ref-border);border-radius:999px;background:#fff;color:#475569;font-size:9px;font-weight:700;white-space:nowrap}
.ref-summary-pill i{width:7px;height:7px;border-radius:50%;background:#10B981}
.ref-summary-pill.warn i{background:#F59E0B}
.ref-refresh{width:28px;height:28px;display:grid;place-items:center;border:1px solid var(--ref-border);border-radius:7px;background:#fff;color:#475569;cursor:pointer}
.ref-refresh svg{width:14px;height:14px}

/* 6-column reference composition: first 12 tiles across two rows, remaining
   tiles flow into the open two-column rail beside the trend panel. */
.ref-dashboard-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));grid-auto-rows:74px;gap:8px;align-items:stretch}
.ref-metric-tile{position:relative;min-width:0;padding:8px 10px;background:#fff;border:1px solid var(--ref-border);border-radius:8px;box-shadow:0 1px 2px rgba(15,23,42,.045);overflow:hidden;transform:translateZ(0);transition:transform .14s ease,border-color .14s ease,box-shadow .14s ease}
.ref-metric-tile:hover{transform:translate3d(0,-1px,0);border-color:#CBD5E1;box-shadow:0 7px 18px rgba(15,23,42,.08)}
.ref-metric-head{display:flex;align-items:center;justify-content:space-between;gap:7px;min-width:0;height:16px}
.ref-metric-head strong{font-size:11px;line-height:1.05;color:var(--ref-text);font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ref-status{display:inline-flex;align-items:center;justify-content:center;min-width:42px;height:16px;padding:0 6px;border-radius:999px;font-size:7px;font-weight:850;letter-spacing:.025em;white-space:nowrap;flex:0 0 auto}
.ref-status.good{background:var(--ref-good-bg);color:var(--ref-good)}
.ref-status.warn{background:var(--ref-warn-bg);color:var(--ref-warn)}
.ref-status.high{background:var(--ref-high-bg);color:var(--ref-high)}
.ref-metric-body{height:37px;display:grid;grid-template-columns:minmax(0,.95fr) minmax(55px,1.05fr);align-items:end;gap:4px}
.ref-reading{display:flex;align-items:baseline;gap:3px;min-width:0;white-space:nowrap}
.ref-reading b{font-size:22px;line-height:1;font-weight:720;letter-spacing:-.045em;color:var(--series,var(--ref-text));font-variant-numeric:tabular-nums;overflow:hidden;text-overflow:ellipsis}
.ref-reading span{font-size:8px;font-weight:700;color:#475569;overflow:hidden;text-overflow:ellipsis}
.ref-mini-trend{height:33px;min-width:0;align-self:end;overflow:hidden}
.ref-mini-trend .axis-spark{width:100%;height:33px!important;display:block}
.ref-mini-trend .axis-line,.ref-mini-trend .axis-grid,.ref-mini-trend .axis-label{display:none}
.ref-mini-trend .axis-series{stroke:var(--series)!important;stroke-width:2!important;filter:drop-shadow(0 1px 1px color-mix(in srgb,var(--series) 30%,transparent))}
.ref-metric-foot{height:12px;display:flex;align-items:center;justify-content:flex-end;gap:6px;color:#64748B;font-size:7px;line-height:1}
.ref-comm{width:6px;height:6px;border-radius:50%;background:#94A3B8}
.ref-comm.connected{background:#10B981}.ref-comm.disconnected{background:#E11D48}

.ref-trend-panel{grid-column:3/7;grid-row-start:var(--ref-trend-row,3);grid-row-end:span var(--ref-trend-rows,4);min-width:0;min-height:320px;padding:10px 12px!important;display:grid;grid-template-rows:auto auto minmax(0,1fr);gap:7px;border-radius:8px!important}
.ref-trend-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;min-width:0}
.ref-trend-head>div:first-child{display:grid;gap:2px}.ref-trend-head strong{font-size:12px;color:var(--ref-text)}.ref-trend-head span{font-size:8px;color:#64748B}
.ref-trend-controls{display:flex;align-items:end;gap:6px}.ref-trend-controls label{display:grid;gap:3px;font-size:7px;color:#64748B;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.ref-trend-controls .select{height:28px!important;min-height:28px!important;padding:0 24px 0 8px!important;font-size:9px!important;background:#fff!important}
.ref-trend-legend{display:flex;align-items:center;gap:7px;overflow-x:auto;overflow-y:hidden;scrollbar-width:thin;padding:1px 0 2px}
.ref-trend-legend .combined-chip{height:21px!important;min-height:21px!important;padding:0 6px!important;border-radius:5px!important;font-size:8px!important;background:#fff!important;border:1px solid var(--ref-border)!important;box-shadow:none!important;white-space:nowrap}
.ref-trend-legend .combined-check{width:8px!important;height:8px!important;color:transparent!important;background:var(--series)!important;border-radius:50%!important;border:0!important}
.ref-trend-canvas{min-height:0;height:100%;border-top:1px solid #EEF2F7;padding-top:5px;transform:translateZ(0)}
.ref-trend-canvas canvas{width:100%!important;height:100%!important;min-height:220px;display:block}

.ref-table-panel{grid-column:1/-1;grid-row-start:var(--ref-table-row,7);min-width:0;min-height:180px;padding:0!important;overflow:hidden!important;border-radius:8px!important}
.ref-table-head{height:38px;padding:0 10px;display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid var(--ref-border)}
.ref-table-head>div{display:flex;align-items:baseline;gap:8px;min-width:0}.ref-table-head strong{font-size:11px}.ref-table-head span{font-size:8px;color:#64748B;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ref-table-wrap{max-height:240px;overflow:auto;background:#fff}
.ref-live-table{width:100%;min-width:900px;border-collapse:separate;border-spacing:0;font-size:9px;color:#0F172A}
.ref-live-table thead th{position:sticky;top:0;z-index:4;height:28px;background:#F8FAFC;color:#334155;font-size:8px;font-weight:850;letter-spacing:.035em;border-bottom:1px solid var(--ref-border);text-align:left}
.ref-live-table tbody td{height:26px;border-bottom:1px solid #EEF2F7;background:#fff}
.ref-live-table tbody tr:nth-child(even) td{background:#FBFDFF}
.ref-live-table tbody tr:hover td{background:#F1F5F9}
.ref-live-table td:nth-child(4),.ref-live-table td:nth-child(6){font-variant-numeric:tabular-nums}
.ref-live-table td strong{font-weight:800}

/* Existing view surfaces adopt the same typography/contrast without losing
   their production workflows. */
html[data-theme="light"] .page h1,html[data-theme="light"] .page h2,html[data-theme="light"] .page h3{color:var(--ref-text)!important}
html[data-theme="light"] .page p,html[data-theme="light"] .page small,html[data-theme="light"] .copy p{color:#64748B!important}
html[data-theme="light"] .data-table thead th,html[data-theme="light"] .recent-events-table thead th{background:#F8FAFC!important;color:#334155!important;border-color:var(--ref-border)!important}
html[data-theme="light"] .data-table td,html[data-theme="light"] .recent-events-table td{border-color:#EEF2F7!important}
html[data-theme="light"] .button.primary,html[data-theme="light"] button.primary{background:#334155!important;color:#fff!important;border-color:#334155!important}

/* Preserve usable dark mode. Reference layout keeps geometry but lets the
   existing dark tokens own the colors. */
html[data-theme="dark"] .ref-dashboard-grid{grid-auto-rows:78px}
html[data-theme="dark"] .ref-metric-tile,html[data-theme="dark"] .ref-trend-panel,html[data-theme="dark"] .ref-table-panel{border-radius:8px!important}

@media(max-width:1450px){
  .ref-dashboard-grid{grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:78px}
  .ref-trend-panel{grid-column:1/-1;grid-row:auto;min-height:330px}.ref-table-panel{grid-row:auto}
  .ref-table-panel{grid-column:1/-1}
  .ref-topbar{grid-template-columns:minmax(220px,.8fr) auto minmax(220px,.8fr)!important}.ref-topbar-center{min-width:360px}
}
@media(max-width:980px){
  .ref-topbar{grid-template-columns:minmax(180px,1fr) auto!important}.ref-topbar-center{justify-content:flex-end;min-width:0}.ref-topbar-right{display:none!important}.ref-control-pill{display:none}
  .ref-dashboard-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:82px}.ref-trend-panel{grid-column:1/-1}.ref-dashboard-meta{align-items:flex-start;flex-direction:column}.ref-meta-actions{width:100%;flex-wrap:wrap}
}
@media(max-width:620px){
  .page-root{padding:8px!important}.ref-topbar{grid-template-columns:1fr auto!important}.ref-brand-lockup span{display:none}.ref-clock-block{min-width:104px;padding-inline:10px}.ref-clock-block strong{font-size:16px}.ref-system-status{display:none!important}
  .ref-dashboard-grid{grid-template-columns:1fr;grid-auto-rows:88px}.ref-metric-body{grid-template-columns:minmax(0,1fr) minmax(90px,1fr)}.ref-trend-panel{grid-column:1;min-height:350px}.ref-trend-head{display:grid}.ref-trend-controls{width:100%}.ref-trend-controls label{flex:1}.ref-trend-controls .select{width:100%}.ref-table-panel{grid-column:1}
}
@media(prefers-reduced-motion:reduce){.ref-metric-tile{transition:none!important}.ref-metric-tile:hover{transform:none!important}}
.ref-hidden-search{position:fixed!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important;clip-path:inset(50%)!important}

/* ========================================================================
   UI13.38 — Unified top navigation + deterministic dashboard geometry
   Removes the persistent left rail on desktop and promotes its navigation
   into the dark command bar. The dashboard uses one placement model only:
   metrics -> combined trend -> live table. This prevents legacy card minimum
   heights from overflowing grid tracks and eliminates visual collisions.
   ======================================================================== */

/* Shell: one workspace column. Keep the old shell nodes only for JS/RBAC
   compatibility; they are never rendered as a second navigation surface. */
.app-shell{grid-template-columns:minmax(0,1fr)!important}
.legacy-sidebar-shell{display:none!important}
.sidebar-backdrop{z-index:89999!important}

/* Use the former sidebar navy for the integrated command/navigation area. */
.ref-topbar{
  grid-template-columns:minmax(620px,1fr) auto minmax(210px,auto)!important;
  overflow:visible!important;
  background:#fff!important;
}
.ref-topbar-brand{
  position:relative!important;
  overflow:visible!important;
  gap:14px!important;
  padding:0 14px!important;
  background:linear-gradient(180deg,var(--sidebar,#0a1625),var(--sidebar-2,#0d1e31))!important;
  border-right:1px solid rgba(255,255,255,.06)!important;
}
.ref-brand-lockup{flex:0 0 auto;padding-right:4px}
.ref-brand-lockup strong{font-size:19px!important;color:#fff!important}
.ref-brand-lockup span{color:#9fb5c9!important}
.ref-menu-button{flex:0 0 32px!important;border-radius:7px!important}
.ref-menu-button:hover{background:rgba(255,255,255,.08)!important}

/* Hamburger navigation sheet: all former sidebar groups now live here. */
.top-primary-nav{
  position:absolute!important;
  left:14px!important;
  top:calc(100% + 10px)!important;
  width:min(360px,calc(calc(100vw / var(--nb-zoom,1)) - 28px))!important;
  max-height:min(calc(78vh / var(--nb-zoom,1)),760px)!important;
  overflow:auto!important;
  padding:12px!important;
  display:none!important;
  background:linear-gradient(180deg,#091523,#0d1e31)!important;
  border:1px solid rgba(255,255,255,.08)!important;
  border-radius:14px!important;
  box-shadow:0 26px 60px rgba(2,12,25,.34)!important;
  z-index:99999!important;
}
body.sidebar-open .top-primary-nav{display:block!important}
.top-nav-sheet{display:grid;gap:12px}
.top-nav-section{margin:0;padding:0}
.top-nav-section h3{margin:0 0 7px;color:#91a8be;font:800 10px/1.2 Inter,"Segoe UI",sans-serif;letter-spacing:.13em}
.top-nav-section-items{display:grid;gap:4px}
.top-primary-nav .nav-item{width:100%!important;min-height:40px!important;padding:0 10px!important;border-radius:10px!important;grid-template-columns:22px minmax(0,1fr)!important;color:#c8d8e7!important;border:1px solid rgba(255,255,255,.04)!important;background:rgba(255,255,255,.03)!important;transform:none!important}
.top-primary-nav .nav-item svg{width:15px!important;height:15px!important}
.top-primary-nav .nav-item .nav-item-copy{display:flex;align-items:center;justify-content:space-between;gap:7px;min-width:0}
.top-primary-nav .nav-item .nav-item-copy>span{font-size:10px!important;color:inherit!important}
.top-primary-nav .nav-item:hover{background:rgba(255,255,255,.07)!important;color:#fff!important}
.top-primary-nav .nav-item.active{background:#153b6b!important;color:#fff!important;border-color:rgba(93,142,255,.20)!important;box-shadow:inset 3px 0 0 #5f8cff!important}
.top-primary-nav .nav-badge{justify-self:end}
body.sidebar-open .sidebar-backdrop{display:block!important;position:fixed!important;inset:0!important;background:rgba(5,18,31,.36)!important;opacity:1!important;pointer-events:auto!important;z-index:89999!important}

/* Dashboard structure: no implicit row spans and no side-rail placement. */
.ref-dashboard{display:block!important}
.ref-dashboard-meta{margin-bottom:8px}
.ref-dashboard-grid{
  display:grid!important;
  grid-template-columns:repeat(6,minmax(0,1fr))!important;
  grid-auto-flow:row!important;
  grid-auto-rows:auto!important;
  gap:8px!important;
  align-items:stretch!important;
}
.ref-metric-tile,
.live-card-reference.ref-metric-tile{
  grid-column:auto!important;
  grid-row:auto!important;
  width:auto!important;
  height:84px!important;
  min-height:84px!important;
  max-height:84px!important;
  padding:8px 10px!important;
  border-radius:8px!important;
  overflow:hidden!important;
  contain:layout paint!important;
}
.live-card-reference.ref-metric-tile:before{display:none!important}
.ref-metric-tile .ref-metric-head{height:16px!important}
.ref-metric-tile .ref-metric-body{height:40px!important;margin:0!important}
.ref-metric-tile .ref-metric-foot{height:12px!important}
.ref-metric-tile .ref-mini-trend,
.ref-metric-tile .ref-mini-trend .axis-spark{height:34px!important;min-height:34px!important;max-height:34px!important}
.ref-metric-tile .ref-reading b{font-size:22px!important;line-height:1!important}

.ref-trend-panel{
  grid-column:1/-1!important;
  grid-row:auto!important;
  min-height:360px!important;
  height:360px!important;
  max-height:none!important;
  overflow:hidden!important;
}
.ref-trend-canvas{min-height:0!important;overflow:hidden!important}
.ref-trend-canvas canvas{min-height:0!important;height:100%!important;max-height:100%!important}
.ref-table-panel{
  grid-column:1/-1!important;
  grid-row:auto!important;
  min-height:190px!important;
  height:auto!important;
  overflow:hidden!important;
}
.ref-table-wrap{max-height:260px!important}

/* At common industrial workstation widths maintain symmetry rather than
   squeezing six cards below their readable width. */

.parameter-zoom-trigger{cursor:pointer;transition:transform .14s ease,box-shadow .14s ease,border-color .14s ease!important}
.parameter-zoom-trigger:hover,.parameter-zoom-trigger:focus-visible{transform:translateY(-2px)!important;box-shadow:0 12px 28px rgba(15,23,42,.10)!important;border-color:color-mix(in srgb,var(--series) 35%,#cbd5e1)!important;outline:none}
.parameter-zoom-trigger:focus-visible{box-shadow:0 0 0 3px color-mix(in srgb,var(--series) 22%,transparent),0 12px 28px rgba(15,23,42,.10)!important}
.parameter-zoom-modal{width:min(980px,calc(calc(100vw / var(--nb-zoom,1)) - 36px))!important}
.parameter-zoom-summary{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 16px;border:1px solid #d9e3ed;border-left:4px solid var(--series);border-radius:12px;background:#f8fbff;margin-bottom:12px}
.parameter-zoom-summary small{display:block;color:#64748b;font-size:9px;font-weight:800;letter-spacing:.09em}
.parameter-zoom-summary strong{display:block;margin-top:4px;color:var(--series);font-size:30px;line-height:1;font-variant-numeric:tabular-nums}
.parameter-zoom-summary strong span{font-size:11px;color:#475569;font-weight:700}
.parameter-zoom-controls{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap;margin-bottom:10px}
.parameter-zoom-controls label{display:grid;gap:4px;min-width:170px;color:#64748b;font-size:9px;font-weight:800;letter-spacing:.05em;text-transform:uppercase}
.parameter-zoom-chart-wrap{height:430px;border:1px solid #dbe4ed;border-radius:12px;background:#fff;padding:12px}
.parameter-zoom-chart-wrap canvas{width:100%!important;height:100%!important}
.parameter-zoom-status{margin-top:8px;color:#64748b;font-size:9px;text-align:right}
body[data-density="compact"] .ref-dashboard-grid{gap:6px!important}
body[data-density="compact"] .ref-metric-tile,body[data-density="compact"] .live-card-reference.ref-metric-tile{height:76px!important;min-height:76px!important;max-height:76px!important;padding:7px 9px!important}
body[data-density="compact"] .ref-trend-panel{height:320px!important;min-height:320px!important}
body[data-density="compact"] .ref-table-wrap{max-height:220px!important}

@media(max-width:1380px){
  .ref-topbar{grid-template-columns:minmax(520px,1fr) auto minmax(185px,auto)!important}
  .ref-topbar-center{min-width:340px!important;padding-inline:10px!important;gap:8px!important}
  .ref-dashboard-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important}
}
@media(max-width:1120px){
  .ref-topbar{grid-template-columns:minmax(0,1fr) auto!important}
  .ref-topbar-center{display:none!important}
  .ref-topbar-right{display:flex!important}
  .top-primary-nav{left:10px!important;right:10px!important;width:auto!important;max-height:min(calc(76vh / var(--nb-zoom,1)),680px)!important}
  .ref-dashboard-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}
@media(max-width:760px){
  .ref-topbar-right{gap:2px!important;padding-inline:6px!important}
  .ref-topbar-right .ref-icon-control:nth-of-type(1),
  .ref-topbar-right #browser-qa-button{display:none!important}
  .ref-dashboard-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .ref-trend-panel{height:330px!important;min-height:330px!important}
}
@media(max-width:520px){
  .ref-dashboard-grid{grid-template-columns:1fr!important}
  .ref-metric-tile,.live-card-reference.ref-metric-tile{height:88px!important;min-height:88px!important;max-height:88px!important}
}

/* ========================================================================
   UI13.40 — Glass tiles, regulatory/range badges, vibrant tabular matrix,
   and row context actions.
   ======================================================================== */
.ref-metric-tile,
.live-card-reference.ref-metric-tile{
  background:linear-gradient(180deg,rgba(255,255,255,.92),rgba(255,255,255,.82)) !important;
  border:1px solid rgba(148,163,184,.24) !important;
  backdrop-filter:blur(16px);
  -webkit-backdrop-filter:blur(16px);
  box-shadow:0 10px 28px rgba(15,23,42,.07), inset 0 1px 0 rgba(255,255,255,.62) !important;
  transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease,background .16s ease !important;
}
.ref-metric-tile:hover,
.live-card-reference.ref-metric-tile:hover{
  transform:translate3d(0,-3px,0) scale(1.035) !important;
  box-shadow:0 16px 38px rgba(15,23,42,.14), inset 0 1px 0 rgba(255,255,255,.72) !important;
  border-color:rgba(59,130,246,.28) !important;
}
.ref-metric-tags{display:flex;align-items:center;justify-content:flex-end;gap:4px;flex-wrap:wrap;max-width:64%}
.param-meta-chip{display:inline-flex;align-items:center;justify-content:center;min-height:16px;padding:0 6px;border-radius:999px;background:rgba(59,130,246,.09);border:1px solid rgba(59,130,246,.14);color:#1D4ED8;font-size:7px;font-weight:800;white-space:nowrap;letter-spacing:.01em}
.param-meta-chip.regulatory{background:rgba(124,58,237,.10);border-color:rgba(124,58,237,.14);color:#6D28D9}
.param-meta-chip.alert{background:rgba(239,68,68,.14);border-color:rgba(239,68,68,.16);color:#B91C1C}
.ref-foot-status{display:inline-flex;align-items:center;gap:5px}
.tile-state-valid{background:linear-gradient(180deg,rgba(255,255,255,.94),rgba(255,255,255,.84)) !important}
.tile-state-review{background:linear-gradient(180deg,rgba(255,251,235,.98),rgba(255,247,237,.92)) !important;border-color:rgba(245,158,11,.25)!important}
.tile-state-maintenance{background:linear-gradient(180deg,rgba(245,243,255,.98),rgba(237,233,254,.92)) !important;border-color:rgba(124,58,237,.22)!important}
.tile-state-invalid,.tile-state-fault,.tile-state-alert{background:linear-gradient(180deg,rgba(254,242,242,.98),rgba(254,226,226,.94)) !important;border-color:rgba(239,68,68,.22)!important}
.tile-state-alert .ref-reading b,
.tile-state-invalid .ref-reading b,
.tile-state-fault .ref-reading b{color:#B91C1C !important}
.tile-state-maintenance .ref-reading b{color:#6D28D9 !important}
.tile-state-review .ref-reading b{color:#B45309 !important}

.dashboard-live-table-panel.vibrant-table-panel{
  background:linear-gradient(180deg,rgba(255,255,255,.95),rgba(248,250,252,.88));
  border:1px solid rgba(148,163,184,.22);
  border-radius:18px;
  box-shadow:0 16px 44px rgba(15,23,42,.08), inset 0 1px 0 rgba(255,255,255,.68);
  overflow:hidden;
}
.dashboard-live-table-note{padding:0 18px 14px;color:#64748B;font-size:12px;line-height:1.45}
.dashboard-matrix-wrap-fluid{overflow:visible!important;background:transparent!important;padding:0 14px 16px}
.dashboard-live-matrix.glass-matrix{width:100%;min-width:0;border-collapse:separate;border-spacing:0;table-layout:fixed;background:rgba(255,255,255,.58);border:1px solid rgba(226,232,240,.92);border-radius:16px;overflow:hidden;box-shadow:inset 0 1px 0 rgba(255,255,255,.75)}
.dashboard-live-matrix.glass-matrix thead th{position:sticky;top:0;z-index:2;background:linear-gradient(180deg,#F8FBFF,#EEF6FF)!important;color:#0F172A!important;font-size:11px!important;font-weight:800!important;padding:10px 8px!important;border-bottom:1px solid rgba(203,213,225,.9)!important;text-transform:none!important}
.dashboard-live-matrix.glass-matrix tbody td{padding:8px 8px!important;font-size:11px!important;background:rgba(255,255,255,.68);border-bottom:1px solid rgba(226,232,240,.8)!important;vertical-align:middle}
.dashboard-live-matrix.glass-matrix tbody tr:last-child td{border-bottom:0!important}
.dashboard-live-matrix .date-col{width:112px;min-width:112px;max-width:112px}
.dashboard-live-matrix .time-col{width:102px;min-width:102px;max-width:102px}
.dashboard-live-matrix .sticky-param-col{width:240px;min-width:220px;background:rgba(255,255,255,.84)!important}
.dashboard-live-matrix .sticky-col,.dashboard-live-matrix .sticky-param-col{position:sticky;z-index:1}
.dashboard-live-matrix .date-col{left:0}
.dashboard-live-matrix .time-col{left:112px}
.dashboard-live-matrix .sticky-param-col{left:214px}
.dashboard-live-matrix .param-cell{display:grid;gap:2px}
.dashboard-live-matrix .param-cell strong{font-size:12px;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.dashboard-live-matrix .param-cell small{font-size:10px;color:#475569;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.dashboard-live-matrix .param-support-meta{display:flex;flex-wrap:wrap;gap:4px;margin-top:2px}
.dashboard-live-matrix .param-support-meta .param-meta-chip{font-size:8px;min-height:18px;padding:0 7px}
.dashboard-live-matrix .matrix-value{display:inline-flex;align-items:center;justify-content:center;width:100%;min-height:34px;border-radius:12px;background:rgba(59,130,246,.06);color:#0F172A;font-weight:700;box-shadow:inset 0 0 0 1px rgba(191,219,254,.55)}
.dashboard-live-matrix tbody tr.dashboard-param-row:hover td{background:rgba(239,246,255,.85)!important}
.dashboard-live-matrix tbody tr.state-valid td{background:rgba(240,253,244,.72)!important}
.dashboard-live-matrix tbody tr.state-valid .matrix-value{background:rgba(34,197,94,.10);box-shadow:inset 0 0 0 1px rgba(134,239,172,.65)}
.dashboard-live-matrix tbody tr.state-review td{background:rgba(255,247,237,.84)!important}
.dashboard-live-matrix tbody tr.state-review .matrix-value{background:rgba(245,158,11,.11);box-shadow:inset 0 0 0 1px rgba(253,186,116,.75)}
.dashboard-live-matrix tbody tr.state-maintenance td{background:rgba(245,243,255,.84)!important}
.dashboard-live-matrix tbody tr.state-maintenance .matrix-value{background:rgba(124,58,237,.09);box-shadow:inset 0 0 0 1px rgba(196,181,253,.72)}
.dashboard-live-matrix tbody tr.state-invalid td,
.dashboard-live-matrix tbody tr.state-fault td,
.dashboard-live-matrix tbody tr.state-alert td{background:rgba(254,242,242,.88)!important}
.dashboard-live-matrix tbody tr.state-invalid .matrix-value,
.dashboard-live-matrix tbody tr.state-fault .matrix-value,
.dashboard-live-matrix tbody tr.state-alert .matrix-value{background:rgba(239,68,68,.10);box-shadow:inset 0 0 0 1px rgba(252,165,165,.75)}
.dashboard-live-matrix tbody tr[data-table-context]{cursor:context-menu}

.dashboard-context-menu{position:fixed;z-index:9999;min-width:260px;padding:8px;background:rgba(255,255,255,.92);border:1px solid rgba(203,213,225,.95);border-radius:16px;box-shadow:0 20px 48px rgba(15,23,42,.20);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);display:grid;gap:4px}
.dashboard-context-menu button{display:flex;align-items:center;gap:10px;padding:10px 12px;border:0;background:transparent;border-radius:12px;color:#0F172A;font-size:13px;font-weight:700;cursor:pointer;text-align:left}
.dashboard-context-menu button svg{width:16px;height:16px;color:#475569}
.dashboard-context-menu button:hover{background:rgba(59,130,246,.08);color:#1D4ED8}
.dashboard-context-menu button:hover svg{color:#1D4ED8}

@media(max-width:1100px){
  .dashboard-live-matrix .sticky-param-col{width:190px;min-width:190px;left:214px}
  .dashboard-live-matrix.glass-matrix tbody td,.dashboard-live-matrix.glass-matrix thead th{padding:7px 6px!important}
}
@media(max-width:860px){
  .dashboard-matrix-wrap-fluid{overflow:auto!important}
  .dashboard-live-matrix.glass-matrix{min-width:860px}
}
@media(prefers-reduced-motion:reduce){
  .ref-metric-tile:hover,.live-card-reference.ref-metric-tile:hover{transform:none!important}
}

/* ========================================================================
   UI13.41 — startup recovery + compact brand header + full glass workspace
   ======================================================================== */
.ref-topbar{
  display:flex!important;
  align-items:stretch!important;
  min-height:64px!important;
  height:64px!important;
  background:rgba(255,255,255,.64)!important;
  backdrop-filter:blur(22px) saturate(155%)!important;
  -webkit-backdrop-filter:blur(22px) saturate(155%)!important;
  border:0!important;
  border-bottom:1px solid rgba(148,163,184,.22)!important;
  box-shadow:0 8px 30px rgba(15,23,42,.06)!important;
}
.ref-topbar-brand{
  flex:0 0 auto!important;
  width:auto!important;
  min-width:0!important;
  padding:0 22px!important;
  gap:13px!important;
  background:linear-gradient(180deg,#071728,#0B1E33)!important;
  border-right:1px solid rgba(255,255,255,.05)!important;
  border-radius:0 14px 14px 0!important;
}
.ref-brand-lockup{padding-right:0!important}
.ref-brand-lockup strong{font-size:20px!important;font-weight:760!important;letter-spacing:-.025em!important;color:#fff!important}
.ref-brand-lockup span,#route-title{display:none!important}
.ref-topbar-center{
  flex:1 1 auto!important;
  min-width:0!important;
  justify-content:center!important;
  background:rgba(255,255,255,.42)!important;
  border-right:0!important;
  backdrop-filter:blur(18px) saturate(150%)!important;
  -webkit-backdrop-filter:blur(18px) saturate(150%)!important;
}
.ref-clock-block{
  background:rgba(255,255,255,.60)!important;
  border-left:1px solid rgba(148,163,184,.18)!important;
  border-right:1px solid rgba(148,163,184,.18)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.72)!important;
}
.ref-control-pill,.ref-system-status{
  background:rgba(255,255,255,.52)!important;
  border-color:rgba(148,163,184,.24)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.62)!important;
}
.ref-topbar-right{
  flex:0 0 auto!important;
  background:rgba(255,255,255,.48)!important;
  backdrop-filter:blur(18px) saturate(150%)!important;
  -webkit-backdrop-filter:blur(18px) saturate(150%)!important;
}
.ref-icon-control,.ref-topbar #refresh-button,.ref-topbar #account-button{
  background:rgba(255,255,255,.26)!important;
}
.ref-icon-control:hover,.ref-topbar #refresh-button:hover,.ref-topbar #account-button:hover{
  background:rgba(255,255,255,.72)!important;
}

html[data-theme="light"] body,
html[data-theme="light"] .app-main,
html[data-theme="light"] .page-root{
  background:
    radial-gradient(circle at 14% 8%,rgba(59,130,246,.07),transparent 26%),
    radial-gradient(circle at 86% 12%,rgba(14,165,233,.06),transparent 24%),
    linear-gradient(180deg,#F5F9FD,#EEF4F9)!important;
}
html[data-theme="light"] .panel,
html[data-theme="light"] .card,
html[data-theme="light"] .workspace-card,
html[data-theme="light"] .configured-entity-row,
html[data-theme="light"] .parameter-editor,
html[data-theme="light"] .config-editor-row,
html[data-theme="light"] .met-feature-panel,
html[data-theme="light"] .met-trend-panel,
html[data-theme="light"] .combined-panel,
html[data-theme="light"] .analysis-query-panel,
html[data-theme="light"] .analysis-canvas-panel{
  background:linear-gradient(180deg,rgba(255,255,255,.78),rgba(255,255,255,.62))!important;
  border:1px solid rgba(148,163,184,.18)!important;
  backdrop-filter:blur(18px) saturate(145%)!important;
  -webkit-backdrop-filter:blur(18px) saturate(145%)!important;
  box-shadow:0 14px 34px rgba(15,23,42,.065),inset 0 1px 0 rgba(255,255,255,.70)!important;
}
html[data-theme="light"] .input,
html[data-theme="light"] .select,
html[data-theme="light"] textarea,
html[data-theme="light"] .button:not(.primary):not(.danger){
  background:rgba(255,255,255,.64)!important;
  border-color:rgba(148,163,184,.26)!important;
  backdrop-filter:blur(10px)!important;
  -webkit-backdrop-filter:blur(10px)!important;
}

@media(max-width:900px){
  .ref-topbar{display:flex!important}
  .ref-topbar-brand{padding:0 14px!important;border-radius:0 12px 12px 0!important}
  .ref-topbar-center{display:flex!important;justify-content:flex-end!important}
}
@media(max-width:620px){
  .ref-topbar-center{display:none!important}
}

/* ========================================================================
   UI13.43 — Header-connected navigation sheet + reliable hit-testing
   ======================================================================== */
:root{--aesstdas-brand-closed:211px;--aesstdas-nav-open:min(450px,calc(calc(100vw / var(--nb-zoom,1)) - 20px))}
.ref-topbar{z-index:90000!important;overflow:visible!important}
.ref-topbar-brand{
  width:var(--aesstdas-brand-closed)!important;
  flex:0 0 var(--aesstdas-brand-closed)!important;
  min-width:var(--aesstdas-brand-closed)!important;
  max-width:var(--aesstdas-nav-open)!important;
  border-radius:0!important;
  transition:width .18s ease,flex-basis .18s ease!important;
  z-index:90002!important;
}
body.sidebar-open .ref-topbar-brand{
  width:var(--aesstdas-nav-open)!important;
  flex-basis:var(--aesstdas-nav-open)!important;
}
.top-primary-nav{
  left:0!important;
  top:100%!important;
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:12px 14px 14px!important;
  border-top:0!important;
  border-radius:0 0 14px 14px!important;
  background:linear-gradient(180deg,#071728 0%,#0B1E33 100%)!important;
  box-shadow:0 24px 50px rgba(2,12,25,.30)!important;
  z-index:90005!important;
  pointer-events:auto!important;
  transform-origin:top left;
}
body.sidebar-open .top-primary-nav{animation:aesstdasMenuDrop .16s ease-out both!important}
@keyframes aesstdasMenuDrop{from{opacity:0;transform:translateY(-5px) scaleY(.985)}to{opacity:1;transform:none}}
body.sidebar-open .sidebar-backdrop{
  z-index:89990!important;
  pointer-events:auto!important;
}
.top-primary-nav,.top-primary-nav *{pointer-events:auto!important}
.top-primary-nav .nav-item{cursor:pointer!important;position:relative!important;z-index:1!important}
.top-primary-nav .nav-item:hover{transform:translateX(2px)!important;background:rgba(255,255,255,.075)!important}
.ref-menu-button{position:relative!important;z-index:90006!important}

/* Both sides of the brand header stay square as requested. */
.ref-topbar-brand{border-radius:0!important}
@media(max-width:900px){.ref-topbar-brand{border-radius:0!important}}

/* Configuration guidance surfaces: informative, not error-styled. */
.configured-empty-state{
  min-height:320px!important;
  border:1px dashed rgba(59,130,246,.24)!important;
  border-radius:18px!important;
  background:linear-gradient(180deg,rgba(255,255,255,.72),rgba(239,246,255,.66))!important;
  backdrop-filter:blur(16px)!important;
  -webkit-backdrop-filter:blur(16px)!important;
}
.configured-empty-state .empty-icon{
  background:rgba(59,130,246,.10)!important;
  color:#2563EB!important;
}
.configured-empty-state strong{color:#0F172A!important}
.configured-empty-state p{max-width:620px!important;color:#64748B!important}

@media(max-width:620px){
  :root{--aesstdas-brand-closed:188px;--aesstdas-nav-open:calc(calc(100vw / var(--nb-zoom,1)) - 12px)}
  body.sidebar-open .ref-topbar-brand{width:var(--aesstdas-nav-open)!important;flex-basis:var(--aesstdas-nav-open)!important}
  .top-primary-nav{padding:10px 10px 12px!important}
}

/* UI13.43 — acquisition / historian separation */
.historian-independence-note{display:flex;align-items:flex-start;gap:11px;margin:0 0 12px;padding:12px 14px;border:1px solid rgba(14,165,233,.18);border-radius:13px;background:linear-gradient(135deg,rgba(239,246,255,.88),rgba(240,253,250,.72));backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);color:#0f172a;box-shadow:0 8px 24px rgba(15,23,42,.04)}
.historian-independence-note svg{width:18px;height:18px;flex:0 0 auto;color:#0284c7;margin-top:1px}.historian-independence-note div{display:grid;gap:2px}.historian-independence-note strong{font-size:11px}.historian-independence-note span{font-size:9px;line-height:1.45;color:#64748b}
#service-toggle.starting-action{background:linear-gradient(90deg,#2563eb,#0891b2)!important;border-color:transparent!important;color:#fff!important;opacity:1!important;cursor:progress!important;box-shadow:0 8px 22px rgba(37,99,235,.18)!important}
#service-toggle.starting-action svg{animation:serviceStartSpin .8s linear infinite}
@keyframes serviceStartSpin{to{transform:rotate(360deg)}}

/* UI13.44 — fixed-width attached navigation + glass metric cards */
:root{--aesstdas-brand-closed:232px;--aesstdas-nav-open:232px}
.ref-topbar-brand,
body.sidebar-open .ref-topbar-brand{
  width:var(--aesstdas-brand-closed)!important;
  min-width:var(--aesstdas-brand-closed)!important;
  max-width:var(--aesstdas-brand-closed)!important;
  flex:0 0 var(--aesstdas-brand-closed)!important;
  border-radius:0!important;
}
.top-primary-nav{
  left:0!important;
  top:100%!important;
  width:var(--aesstdas-brand-closed)!important;
  max-width:var(--aesstdas-brand-closed)!important;
  border-radius:0 0 14px 0!important;
  transform-origin:top left!important;
}
body.sidebar-open .top-primary-nav{animation:aesstdasMenuDrop .16s ease-out both!important}

/* Two-column metric composition: four compact information rows + full graph. */
.ref-dashboard-grid{grid-auto-rows:108px!important}
.ref-metric-tile,.live-card-reference.ref-metric-tile{
  height:108px!important;min-height:108px!important;max-height:108px!important;
  padding:10px 11px!important;
  display:grid!important;
  grid-template-columns:minmax(0,.94fr) minmax(95px,1.06fr)!important;
  gap:9px!important;
  align-items:stretch!important;
  overflow:visible!important;
  background:linear-gradient(135deg,var(--series-soft,rgba(255,255,255,.72)),rgba(255,255,255,.72) 58%,rgba(255,255,255,.86))!important;
  backdrop-filter:blur(18px) saturate(130%)!important;
  -webkit-backdrop-filter:blur(18px) saturate(130%)!important;
  border:1px solid color-mix(in srgb,var(--series) 20%,rgba(203,213,225,.75))!important;
}
.ref-tile-info{min-width:0;display:grid;grid-template-rows:18px 32px 18px 18px;align-content:center;gap:2px}
.ref-param-name{font-size:11px;line-height:18px;color:#0F172A;font-weight:850;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ref-metric-tile .ref-reading{height:32px!important;display:flex!important;align-items:baseline!important;gap:3px!important;min-width:0}
.ref-metric-tile .ref-reading b{font-size:23px!important;line-height:1!important;color:var(--series)!important}
.ref-config-line{display:flex;align-items:center;gap:5px;min-width:0;font-size:7px;line-height:18px;white-space:nowrap;overflow:hidden}
.ref-config-line>span{flex:0 0 25px;color:#64748B;font-weight:850;letter-spacing:.04em}
.ref-config-line>b{min-width:0;color:#334155;font-size:8px;font-weight:750;overflow:hidden;text-overflow:ellipsis}
.ref-tile-chart{min-width:0;display:grid;grid-template-rows:minmax(0,1fr) 15px;gap:2px}
.ref-tile-chart .ref-mini-trend,.ref-tile-chart .ref-mini-trend .axis-spark{height:79px!important;min-height:79px!important;max-height:79px!important;width:100%!important}
.ref-tile-chart .ref-metric-foot{height:15px!important;display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:6px!important;font-size:7px!important}
/* Issue state only changes glass surround; identity color remains parameter color. */
.ref-metric-tile.tile-state-alert,
.ref-metric-tile.tile-state-invalid,
.ref-metric-tile.tile-state-fault{
  background:linear-gradient(135deg,rgba(254,226,226,.76),rgba(255,255,255,.72) 62%,rgba(254,242,242,.84))!important;
  border-color:rgba(239,68,68,.26)!important;
}
.ref-metric-tile.tile-state-review{background:linear-gradient(135deg,rgba(254,243,199,.68),rgba(255,255,255,.74) 62%,rgba(255,251,235,.86))!important}
.ref-metric-tile.tile-state-maintenance{background:linear-gradient(135deg,rgba(237,233,254,.72),rgba(255,255,255,.74) 62%,rgba(245,243,255,.88))!important}
.ref-metric-tile.tile-state-alert .ref-reading b,
.ref-metric-tile.tile-state-invalid .ref-reading b,
.ref-metric-tile.tile-state-fault .ref-reading b,
.ref-metric-tile.tile-state-review .ref-reading b,
.ref-metric-tile.tile-state-maintenance .ref-reading b{color:var(--series)!important}
.ref-metric-tile .axis-series{stroke:var(--series)!important}
.ref-metric-tile:hover{z-index:10!important;transform:translate3d(0,-3px,0) scale(1.025)!important}

/* Context-menu discoverability on both dashboard table surfaces. */
.ref-live-table tbody tr[data-table-context],.dashboard-live-matrix tbody tr[data-table-context]{cursor:context-menu!important}
.ref-live-table tbody tr[data-table-context]:hover td{box-shadow:inset 3px 0 0 rgba(59,130,246,.42)}

@media(max-width:900px){
  :root{--aesstdas-brand-closed:210px;--aesstdas-nav-open:210px}
  .ref-metric-tile,.live-card-reference.ref-metric-tile{height:112px!important;min-height:112px!important;max-height:112px!important}
}

/* ========================================================================
   UI13.45 — sequential dashboard flow, visible tile trends, explicit checkboxes,
   stronger glassmorphism, and shadow-free slide menu.
   ======================================================================== */
.ref-dashboard-flow{display:flex!important;flex-direction:column!important;gap:12px!important;min-width:0}
.ref-dashboard-tiles{display:grid!important;grid-template-columns:repeat(6,minmax(0,1fr))!important;gap:10px!important;align-items:stretch!important}
.ref-trend-panel,.ref-table-panel{grid-column:auto!important;grid-row:auto!important;position:relative!important;z-index:1!important;margin:0!important}
.ref-trend-panel{min-height:360px!important}
.ref-trend-canvas{height:260px!important;min-height:260px!important;padding-top:8px!important}
.ref-trend-canvas canvas{height:260px!important;min-height:260px!important}
.ref-table-panel{min-height:260px!important}
.ref-table-wrap{max-height:none!important;overflow:auto!important}
.ref-live-table{min-width:100%!important}
.ref-dashboard-tiles .ref-metric-tile{height:118px!important;min-height:118px!important;max-height:118px!important;border-radius:14px!important;box-shadow:0 12px 30px rgba(15,23,42,.08),inset 0 1px 0 rgba(255,255,255,.62)!important;background:linear-gradient(135deg,color-mix(in srgb,var(--series) 10%,rgba(255,255,255,.84)),rgba(255,255,255,.72) 58%,rgba(255,255,255,.88))!important;backdrop-filter:blur(18px) saturate(140%)!important;-webkit-backdrop-filter:blur(18px) saturate(140%)!important;overflow:hidden!important}
.ref-dashboard-tiles .ref-metric-tile::before{content:'';position:absolute;inset:0;border-radius:inherit;background:linear-gradient(135deg,rgba(255,255,255,.34),transparent 45%,rgba(255,255,255,.18));pointer-events:none}
.ref-dashboard-tiles .ref-metric-tile{grid-template-columns:minmax(0,.95fr) minmax(100px,1.05fr)!important;padding:11px 12px!important;gap:10px!important}
.ref-dashboard-tiles .ref-tile-info{grid-template-rows:20px 38px 18px 18px!important;gap:3px!important}
.ref-dashboard-tiles .ref-param-name{font-size:12px!important}
.ref-dashboard-tiles .ref-reading b{font-size:22px!important}
.ref-dashboard-tiles .ref-config-line{font-size:8px!important}
.ref-dashboard-tiles .ref-config-line>span{flex:0 0 36px!important;color:#475569!important}
.ref-dashboard-tiles .ref-config-line>b{font-size:8px!important;color:#334155!important}
.ref-dashboard-tiles .ref-tile-chart{grid-template-rows:minmax(0,1fr) 16px!important;align-self:stretch!important}
.ref-dashboard-tiles .ref-mini-trend,.ref-dashboard-tiles .ref-mini-trend .axis-spark{display:block!important;height:86px!important;min-height:86px!important;max-height:86px!important;width:100%!important;visibility:visible!important;opacity:1!important}
.ref-dashboard-tiles .axis-spark .axis-series{stroke:var(--series)!important;stroke-width:2.4!important}
.ref-dashboard-tiles .ref-metric-foot{justify-content:space-between!important;font-size:8px!important}
.ref-dashboard-tiles .tile-state-alert,.ref-dashboard-tiles .tile-state-invalid,.ref-dashboard-tiles .tile-state-fault{background:linear-gradient(135deg,rgba(254,226,226,.84),rgba(255,255,255,.76) 58%,rgba(255,242,242,.9))!important}
.ref-dashboard-tiles .tile-state-review{background:linear-gradient(135deg,rgba(254,243,199,.76),rgba(255,255,255,.76) 58%,rgba(255,251,235,.88))!important}
.ref-dashboard-tiles .tile-state-maintenance{background:linear-gradient(135deg,rgba(237,233,254,.78),rgba(255,255,255,.76) 58%,rgba(245,243,255,.90))!important}
.ref-trend-legend{gap:8px!important;flex-wrap:wrap!important;overflow:visible!important}
.ref-trend-legend .combined-chip{display:inline-flex!important;align-items:center!important;gap:8px!important;height:28px!important;min-height:28px!important;padding:0 10px!important;border-radius:10px!important;background:rgba(255,255,255,.8)!important;border:1px solid color-mix(in srgb,var(--series) 22%,#E2E8F0)!important}
.ref-trend-legend .combined-chip input{position:static!important;opacity:1!important;pointer-events:auto!important;width:14px!important;height:14px!important;margin:0!important;accent-color:var(--series)!important}
.ref-trend-legend .combined-check{display:none!important}
.ref-trend-legend .combined-chip b{font-size:11px!important;color:#334155!important}
.top-primary-nav{box-shadow:none!important;filter:none!important;transition:transform .22s ease,opacity .22s ease!important;transform:translate3d(0,-8px,0)!important;opacity:0!important}
body.sidebar-open .top-primary-nav{transform:translate3d(0,0,0)!important;opacity:1!important;animation:none!important}
.sidebar-backdrop,body.sidebar-open .sidebar-backdrop{background:transparent!important;opacity:0!important;box-shadow:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
@media(max-width:1500px){.ref-dashboard-tiles{grid-template-columns:repeat(4,minmax(0,1fr))!important}}
@media(max-width:980px){.ref-dashboard-tiles{grid-template-columns:repeat(2,minmax(0,1fr))!important}.ref-trend-panel{min-height:340px!important}}
@media(max-width:620px){.ref-dashboard-tiles{grid-template-columns:1fr!important}.ref-dashboard-tiles .ref-metric-tile{height:126px!important;min-height:126px!important;max-height:126px!important}.ref-dashboard-tiles .ref-mini-trend,.ref-dashboard-tiles .ref-mini-trend .axis-spark{height:90px!important;min-height:90px!important;max-height:90px!important}}

/* ========================================================================
   UI13.46 — contained combined trend, visible tile sparkline, stronger glass,
   and parameter-scoped maintenance highlighting.
   ======================================================================== */
.ref-trend-panel{
  display:flex!important;
  flex-direction:column!important;
  gap:9px!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  overflow:hidden!important;
}
.ref-trend-head,.ref-trend-legend{flex:0 0 auto!important}
.ref-trend-canvas{
  flex:0 0 300px!important;
  width:100%!important;
  height:300px!important;
  min-height:300px!important;
  max-height:300px!important;
  overflow:hidden!important;
  position:relative!important;
  box-sizing:border-box!important;
}
.ref-trend-canvas canvas{
  display:block!important;
  width:100%!important;
  height:300px!important;
  min-height:300px!important;
  max-height:300px!important;
  overflow:hidden!important;
}
.ref-table-panel{position:relative!important;z-index:1!important;margin-top:0!important}

/* More opaque liquid-glass treatment while retaining the parameter tint. */
.ref-dashboard-tiles .ref-metric-tile{
  background:
    linear-gradient(145deg,rgba(255,255,255,.94),rgba(255,255,255,.84) 52%,color-mix(in srgb,var(--series) 10%,rgba(255,255,255,.88)))!important;
  border:1px solid color-mix(in srgb,var(--series) 24%,rgba(203,213,225,.94))!important;
  box-shadow:0 12px 28px rgba(15,23,42,.075),inset 0 1px 0 rgba(255,255,255,.96),inset 0 -1px 0 rgba(255,255,255,.44)!important;
  backdrop-filter:blur(22px) saturate(150%)!important;
  -webkit-backdrop-filter:blur(22px) saturate(150%)!important;
}
.ref-dashboard-tiles .ref-metric-tile::before{
  background:linear-gradient(135deg,rgba(255,255,255,.74),rgba(255,255,255,.18) 42%,transparent 70%)!important;
}
.ref-dashboard-tiles .ref-tile-chart{position:relative!important;z-index:2!important;min-width:0!important;overflow:hidden!important}
.ref-dashboard-tiles .ref-mini-trend{display:block!important;overflow:hidden!important;min-width:0!important;background:linear-gradient(180deg,color-mix(in srgb,var(--series) 5%,transparent),transparent)!important;border-radius:10px!important}
.ref-dashboard-tiles .ref-mini-trend svg{display:block!important;width:100%!important;height:100%!important;overflow:visible!important}
.ref-dashboard-tiles .ref-mini-trend path,
.ref-dashboard-tiles .ref-mini-trend polyline,
.ref-dashboard-tiles .ref-mini-trend circle{visibility:visible!important;opacity:1!important}

/* Maintenance belongs to one selected parameter only. */
.dashboard-live-matrix tbody tr.state-maintenance td,
.ref-live-table tbody tr.state-maintenance td{
  background:rgba(255,237,213,.92)!important;
  border-bottom-color:rgba(251,146,60,.28)!important;
}
.dashboard-live-matrix tbody tr.state-maintenance .matrix-value{
  background:rgba(249,115,22,.12)!important;
  box-shadow:inset 0 0 0 1px rgba(251,146,60,.58)!important;
}
.ref-live-table tbody tr.state-maintenance td:first-child,
.dashboard-live-matrix tbody tr.state-maintenance td:first-child{
  box-shadow:inset 4px 0 0 #F97316!important;
}
.ref-live-table tbody tr.state-maintenance:hover td,
.dashboard-live-matrix tbody tr.state-maintenance:hover td{background:rgba(255,228,196,.96)!important}
.ref-live-table tbody tr.state-maintenance .ref-status{background:#FFEDD5!important;color:#9A3412!important}

@media(max-width:980px){
  .ref-trend-canvas,.ref-trend-canvas canvas{height:280px!important;min-height:280px!important;max-height:280px!important;flex-basis:280px!important}
}

/* ========================================================================
   UI13.47 — Analysis Live / Custom workspace + Analysis Report
   ======================================================================== */
.analysis-vibrant-page{--ana-blue:#2563eb;--ana-cyan:#06b6d4;--ana-violet:#7c3aed;--ana-pink:#db2777;--ana-green:#10b981;--ana-orange:#f59e0b;display:grid;gap:14px}
.analysis-mode-tabs{display:inline-flex;align-items:center;gap:5px;padding:5px;border:1px solid rgba(148,163,184,.28);border-radius:15px;background:rgba(255,255,255,.68);backdrop-filter:blur(18px) saturate(145%);-webkit-backdrop-filter:blur(18px) saturate(145%);box-shadow:0 10px 28px rgba(15,23,42,.06);width:max-content}
.analysis-mode-tabs button{height:38px;min-width:120px;padding:0 18px;border:0;border-radius:11px;background:transparent;color:#475569;font-weight:800;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:8px;transition:.18s ease}
.analysis-mode-tabs button:hover{background:rgba(37,99,235,.07);color:#1d4ed8;transform:translateY(-1px)}
.analysis-mode-tabs button.active{background:linear-gradient(135deg,#2563eb,#4f46e5);color:#fff;box-shadow:0 10px 22px rgba(37,99,235,.22)}
.analysis-live-dot{width:8px;height:8px;border-radius:50%;background:#34d399;box-shadow:0 0 0 4px rgba(52,211,153,.16)}
.analysis-glass-ribbon,.analysis-glass-panel{background:linear-gradient(135deg,rgba(255,255,255,.86),rgba(248,250,252,.72))!important;border:1px solid rgba(148,163,184,.24)!important;backdrop-filter:blur(20px) saturate(150%)!important;-webkit-backdrop-filter:blur(20px) saturate(150%)!important;box-shadow:0 16px 42px rgba(15,23,42,.07),inset 0 1px 0 rgba(255,255,255,.76)!important}
.analysis-glass-ribbon{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 14px;border-radius:16px}
.analysis-engine-runtime{display:grid;gap:3px;min-width:190px}
.analysis-engine-runtime strong{font-size:10px;color:#0f172a;letter-spacing:.08em}
.analysis-engine-runtime span{font-size:9px;color:#64748b}
.analysis-type-tabs{display:flex;flex-wrap:wrap;gap:7px;justify-content:flex-end}
.analysis-type-tabs button{height:32px;padding:0 11px;border-radius:10px;border:1px solid rgba(148,163,184,.28);background:rgba(255,255,255,.74);color:#475569;font-size:9px;font-weight:800;cursor:pointer;transition:.18s ease}
.analysis-type-tabs button:nth-child(7n+1){--tab-color:#2563eb}.analysis-type-tabs button:nth-child(7n+2){--tab-color:#7c3aed}.analysis-type-tabs button:nth-child(7n+3){--tab-color:#0891b2}.analysis-type-tabs button:nth-child(7n+4){--tab-color:#ea580c}.analysis-type-tabs button:nth-child(7n+5){--tab-color:#db2777}.analysis-type-tabs button:nth-child(7n+6){--tab-color:#059669}.analysis-type-tabs button:nth-child(7n){--tab-color:#ca8a04}
.analysis-type-tabs button:hover{border-color:color-mix(in srgb,var(--tab-color) 38%,#cbd5e1);color:var(--tab-color);transform:translateY(-1px)}
.analysis-type-tabs button.active{background:color-mix(in srgb,var(--tab-color) 11%,white);border-color:color-mix(in srgb,var(--tab-color) 38%,#cbd5e1);color:var(--tab-color);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--tab-color) 7%,transparent)}
.analysis-query-panel{padding:15px 16px!important;border-radius:18px!important}
.analysis-query-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}
.analysis-query-heading small{font-size:8px;color:#64748b;font-weight:850;letter-spacing:.11em}.analysis-query-heading h2{margin:2px 0 0;font-size:18px}
.analysis-auto-badge{display:inline-flex;align-items:center;gap:7px;height:28px;padding:0 10px;border-radius:999px;background:#ecfdf5;border:1px solid #a7f3d0;color:#047857;font-size:8px;font-weight:900;letter-spacing:.05em}.analysis-auto-badge i{width:7px;height:7px;border-radius:50%;background:#10b981;box-shadow:0 0 0 4px rgba(16,185,129,.12)}
.analysis-query-grid{grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:10px!important;align-items:end}
.analysis-query-grid .field label{font-size:9px!important;color:#475569!important;font-weight:800!important}.analysis-query-grid .input,.analysis-query-grid .select{height:42px!important;background:rgba(255,255,255,.82)!important;border:1px solid rgba(148,163,184,.34)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.65)}
.analysis-query-grid .analysis-source-readonly,.analysis-query-grid .analysis-inline-kpi{min-height:68px;padding:10px 12px;border-radius:12px;background:linear-gradient(135deg,rgba(239,246,255,.86),rgba(245,243,255,.82));border:1px solid rgba(147,197,253,.42);display:grid;align-content:center;gap:2px}.analysis-query-grid .analysis-source-readonly small,.analysis-query-grid .analysis-inline-kpi small{font-size:7px;color:#64748b;letter-spacing:.08em;font-weight:850}.analysis-query-grid .analysis-source-readonly strong,.analysis-query-grid .analysis-inline-kpi strong{font-size:11px;color:#1e3a8a}.analysis-query-grid .analysis-source-readonly span,.analysis-query-grid .analysis-inline-kpi span{font-size:8px;color:#64748b}
.analysis-run-cell{display:flex;align-items:end}.analysis-run-cell .button{width:100%;height:42px!important;border-radius:12px!important;background:linear-gradient(135deg,#2563eb,#4f46e5)!important;box-shadow:0 10px 22px rgba(37,99,235,.20)!important}
.analysis-multi-select{height:auto!important;min-height:118px!important;padding:6px!important}.analysis-multi-select option{padding:6px 8px;border-radius:7px;margin:1px 0}
.analysis-workspace-grid{display:grid;grid-template-columns:minmax(0,1fr) 350px;gap:14px;align-items:start}
.analysis-canvas-panel{min-width:0;border-radius:18px!important;overflow:hidden}.analysis-canvas{min-height:520px;padding-top:4px}.analysis-pro-canvas .analysis-kpi-grid{grid-template-columns:repeat(7,minmax(0,1fr))!important;gap:8px!important}.analysis-pro-canvas .analysis-kpi{border-radius:13px!important;background:linear-gradient(135deg,rgba(239,246,255,.88),rgba(255,255,255,.82))!important;border:1px solid rgba(191,219,254,.68)!important;box-shadow:0 8px 22px rgba(37,99,235,.05)}
.analysis-pro-canvas .analysis-svg,.analysis-pro-canvas svg{filter:saturate(1.08)}
.analysis-report-panel{position:sticky;top:78px;border-radius:18px!important;min-height:520px;padding:16px!important;background:linear-gradient(160deg,rgba(248,250,252,.88),rgba(239,246,255,.78) 45%,rgba(245,243,255,.82))!important;overflow:hidden}
.analysis-report-panel::before{content:'';position:absolute;right:-70px;top:-60px;width:180px;height:180px;border-radius:50%;background:radial-gradient(circle,rgba(59,130,246,.18),rgba(124,58,237,.02) 70%);pointer-events:none}
.analysis-report-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;padding-bottom:12px;border-bottom:1px solid rgba(148,163,184,.22)}.analysis-report-head small{font-size:8px;color:#64748b;font-weight:900;letter-spacing:.1em}.analysis-report-head h2{margin:2px 0 0;font-size:17px}.analysis-report-status{height:24px;padding:0 8px;border-radius:999px;display:inline-flex;align-items:center;background:#eff6ff;color:#1d4ed8;border:1px solid #bfdbfe;font-size:7px;font-weight:900;letter-spacing:.06em}
.analysis-report-empty{min-height:390px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:20px;color:#64748b}.analysis-report-empty strong{font-size:16px;color:#0f172a;margin-top:14px}.analysis-report-empty p{font-size:11px;line-height:1.6;max-width:270px}.analysis-report-empty small{font-size:9px;line-height:1.55;max-width:270px;color:#94a3b8}.analysis-report-orb{width:54px;height:54px;border-radius:18px;background:linear-gradient(135deg,#22d3ee,#4f46e5 60%,#a855f7);box-shadow:0 14px 32px rgba(79,70,229,.22);position:relative}.analysis-report-orb::after{content:'';position:absolute;inset:14px;border-radius:50%;border:2px solid rgba(255,255,255,.9)}
.analysis-report-body{display:grid;gap:12px;padding-top:14px}.analysis-report-context{display:flex;align-items:center;justify-content:space-between;gap:8px}.analysis-report-context span{font-size:8px;font-weight:900;letter-spacing:.08em;color:#2563eb}.analysis-report-context small{font-size:8px;color:#94a3b8}.analysis-report-body p{font-size:11px;line-height:1.65;color:#475569;margin:0}
.analysis-report-highlight,.analysis-report-alert,.analysis-report-good,.analysis-report-note{padding:12px;border-radius:13px;display:grid;gap:4px}.analysis-report-highlight{background:linear-gradient(135deg,#eff6ff,#f5f3ff);border:1px solid #dbeafe}.analysis-report-highlight strong{font-size:14px;color:#1e3a8a}.analysis-report-highlight span{font-size:9px;color:#64748b}.analysis-report-alert{background:#fff7ed;border:1px solid #fed7aa}.analysis-report-alert b{color:#c2410c;font-size:11px}.analysis-report-alert span{color:#7c2d12;font-size:9px;line-height:1.5}.analysis-report-good{background:#ecfdf5;border:1px solid #a7f3d0}.analysis-report-good b{color:#047857;font-size:11px}.analysis-report-good span{color:#065f46;font-size:9px;line-height:1.5}.analysis-report-note{background:rgba(255,255,255,.62);border:1px solid rgba(148,163,184,.24)}.analysis-report-note b{font-size:9px;color:#334155}.analysis-report-note span{font-size:8px;color:#64748b;line-height:1.5}
.analysis-running{min-height:360px!important}.analysis-running-orbit{border-color:#bfdbfe!important;border-top-color:#2563eb!important}
@media(max-width:1250px){.analysis-query-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}.analysis-workspace-grid{grid-template-columns:1fr}.analysis-report-panel{position:relative;top:auto;min-height:300px}.analysis-pro-canvas .analysis-kpi-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important}}
@media(max-width:760px){.analysis-mode-tabs{width:100%}.analysis-mode-tabs button{flex:1}.analysis-glass-ribbon{align-items:flex-start;flex-direction:column}.analysis-type-tabs{justify-content:flex-start}.analysis-query-grid{grid-template-columns:1fr!important}.analysis-pro-canvas .analysis-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.analysis-canvas{min-height:400px}}


/* UI13.48 — split live dashboard, met side panel, compact real-time table */
.ref-live-window{min-width:0}
.ref-live-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(340px,.96fr);gap:14px;align-items:start}
.ref-live-single{grid-template-columns:1fr}
.ref-live-primary-zone,.ref-live-met-zone,.dashboard-mini-windrose,.ref-trend-panel,.ref-table-panel{background:linear-gradient(135deg,rgba(255,255,255,.52),rgba(255,255,255,.34))!important;border:1px solid rgba(255,255,255,.42)!important;box-shadow:0 10px 34px rgba(15,23,42,.06),inset 0 1px 0 rgba(255,255,255,.64)!important;backdrop-filter:blur(20px) saturate(135%)!important;-webkit-backdrop-filter:blur(20px) saturate(135%)!important}
.ref-live-primary-zone,.ref-live-met-zone{border-radius:18px;padding:12px;min-width:0}
.ref-split-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:2px 2px 10px}
.ref-split-head strong{font-size:13px;color:#0f172a}.ref-split-head span{font-size:11px;color:#64748b}
.ref-gasdust-scroller{overflow:hidden;max-height:414px;border-radius:16px}
.ref-gasdust-scroller.auto-scroll .ref-gasdust-grid{animation:refTileScroll 28s linear infinite}
.ref-gasdust-scroller:hover .ref-gasdust-grid{animation-play-state:paused}
.ref-gasdust-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;align-items:start}
.ref-met-grid{display:grid;grid-template-columns:1fr;gap:10px;margin-top:10px}
.ref-live-met-zone .ref-metric-tile,.ref-live-primary-zone .ref-metric-tile{height:120px!important;max-height:none!important}
.dashboard-mini-windrose{border-radius:16px;padding:10px 12px;min-width:0}
.dashboard-mini-rose-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:6px}.dashboard-mini-rose-head strong{font-size:13px}.dashboard-mini-rose-head span{display:block;font-size:10px;color:#64748b}.dashboard-mini-range{font-size:10px;color:#475569;background:rgba(255,255,255,.44);padding:4px 8px;border-radius:999px;border:1px solid rgba(148,163,184,.22)}
.dashboard-mini-rose-body{display:grid;grid-template-columns:minmax(0,1fr) 122px;gap:10px;align-items:center}
#dashboard-mini-wind-rose{width:100%;height:180px;display:block}
.dashboard-mini-rose-meta{display:grid;gap:10px}.dashboard-mini-rose-meta div{padding:8px 10px;border-radius:12px;background:rgba(255,255,255,.36);border:1px solid rgba(148,163,184,.18)}.dashboard-mini-rose-meta small{display:block;font-size:10px;color:#64748b}.dashboard-mini-rose-meta strong{font-size:13px;color:#0f172a}
.ref-bottom-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px;align-items:start}
.ref-bottom-split .ref-trend-panel,.ref-bottom-split .ref-table-panel{min-width:0;margin:0!important;min-height:380px!important;height:380px!important}
.ref-bottom-split .ref-trend-panel{display:grid;grid-template-rows:auto auto minmax(0,1fr)}
.ref-bottom-split .ref-trend-canvas{min-height:0;overflow:hidden}.ref-bottom-split .ref-trend-canvas canvas{max-width:100%!important}
.ref-live-table-compact{width:100%;border-collapse:separate;border-spacing:0;table-layout:fixed}.ref-live-table-compact th,.ref-live-table-compact td{border-bottom:1px solid rgba(203,213,225,.72);border-right:1px solid rgba(226,232,240,.72)}.ref-live-table-compact th:last-child,.ref-live-table-compact td:last-child{border-right:0}
.ref-live-table-compact thead th{background:rgba(248,250,252,.75);font-size:11px;font-weight:800;color:#334155;padding:10px 10px}.ref-live-table-compact tbody td{padding:9px 10px;font-size:12px;color:#0f172a}.ref-live-table-compact tbody tr.row-valid td{background:rgba(220,252,231,.52)}.ref-live-table-compact tbody tr.row-maintenance td{background:rgba(255,237,213,.72)}.ref-live-table-compact tbody tr.row-invalid td{background:rgba(254,226,226,.70)}
.ref-table-param{display:flex;align-items:center;gap:8px;min-width:0}.ref-table-param strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ref-table-param small,.ref-inline-unit{font-size:11px;color:#64748b}
.ref-dashboard-tiles .ref-metric-tile,.ref-met-grid .ref-metric-tile,.ref-gasdust-grid .ref-metric-tile{background:linear-gradient(135deg,color-mix(in srgb,var(--series) 7%,rgba(255,255,255,.42)),rgba(255,255,255,.22) 58%,rgba(255,255,255,.32))!important;backdrop-filter:blur(24px) saturate(145%)!important;-webkit-backdrop-filter:blur(24px) saturate(145%)!important;box-shadow:0 8px 28px rgba(15,23,42,.05),inset 0 1px 0 rgba(255,255,255,.54)!important;border:1px solid color-mix(in srgb,var(--series) 22%,rgba(203,213,225,.72))!important}
.ref-dashboard-tiles .ref-mini-trend,.ref-met-grid .ref-mini-trend,.ref-gasdust-grid .ref-mini-trend{background:linear-gradient(180deg,color-mix(in srgb,var(--series) 8%,rgba(255,255,255,.06)),transparent)!important}
@keyframes refTileScroll{0%{transform:translateY(0)}100%{transform:translateY(-50%)}}
@media(max-width:1280px){.ref-live-split,.ref-bottom-split{grid-template-columns:1fr}.dashboard-mini-rose-body{grid-template-columns:1fr}.ref-gasdust-grid{grid-template-columns:1fr 1fr}.ref-bottom-split .ref-trend-panel,.ref-bottom-split .ref-table-panel{height:auto!important;min-height:340px!important}}
@media(max-width:760px){.ref-gasdust-grid{grid-template-columns:1fr}.ref-live-primary-zone,.ref-live-met-zone{padding:10px}.ref-gasdust-scroller{max-height:none}.ref-gasdust-scroller.auto-scroll .ref-gasdust-grid{animation:none}}


/* UI13.49 — denser live glass, four visible gas/dust rows, synchronized dynamic bottom panels */
.ref-gasdust-scroller{max-height:510px!important}
.ref-bottom-split{align-items:stretch!important}
.ref-bottom-split .ref-trend-panel,
.ref-bottom-split .ref-table-panel{
  height:var(--live-panel-height,380px)!important;
  min-height:var(--live-panel-height,380px)!important;
  max-height:var(--live-panel-height,380px)!important;
  overflow:hidden!important;
}
.ref-bottom-split .ref-table-panel{display:grid!important;grid-template-rows:auto minmax(0,1fr)!important}
.ref-bottom-split .ref-table-wrap{height:100%!important;max-height:none!important;overflow:auto!important}
.ref-bottom-split .ref-trend-canvas{height:100%!important;min-height:0!important;max-height:none!important;overflow:hidden!important}
.ref-bottom-split .ref-trend-canvas canvas{height:100%!important;max-height:100%!important}

/* Slightly reduce transparency: keep the liquid-glass look while increasing legibility. */
.ref-live-primary-zone,.ref-live-met-zone,.dashboard-mini-windrose,.ref-trend-panel,.ref-table-panel{
  background:linear-gradient(135deg,rgba(255,255,255,.70),rgba(248,250,252,.56))!important;
  border-color:rgba(203,213,225,.52)!important;
  box-shadow:0 10px 32px rgba(15,23,42,.065),inset 0 1px 0 rgba(255,255,255,.78)!important;
}
.ref-dashboard-tiles .ref-metric-tile,.ref-met-grid .ref-metric-tile,.ref-gasdust-grid .ref-metric-tile{
  background:linear-gradient(135deg,color-mix(in srgb,var(--series) 9%,rgba(255,255,255,.68)),rgba(255,255,255,.50) 58%,rgba(255,255,255,.62))!important;
  border-color:color-mix(in srgb,var(--series) 24%,rgba(203,213,225,.82))!important;
  box-shadow:0 8px 26px rgba(15,23,42,.055),inset 0 1px 0 rgba(255,255,255,.76)!important;
}
@media(max-width:1280px){
  .ref-bottom-split .ref-trend-panel,.ref-bottom-split .ref-table-panel{
    height:var(--live-panel-height,380px)!important;
    min-height:var(--live-panel-height,380px)!important;
    max-height:var(--live-panel-height,380px)!important;
  }
}
@media(max-width:760px){
  .ref-gasdust-scroller{max-height:none!important}
}

/* UI13.50 — tile Auto Check controls + render containment/performance */
.ref-tile-info{position:relative}
.tile-autocheck{display:inline-flex;align-items:center;gap:4px;width:max-content;max-width:100%;height:20px;padding:0 7px;border-radius:999px;border:1px solid color-mix(in srgb,var(--series) 28%,#dbe5ef);background:rgba(255,255,255,.62);color:color-mix(in srgb,var(--series) 78%,#0f172a);font-size:7px;font-weight:800;letter-spacing:.035em;box-shadow:0 3px 10px rgba(15,23,42,.05);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);cursor:pointer;position:absolute;right:0;bottom:-1px;z-index:5}
.tile-autocheck svg{width:10px;height:10px}.tile-autocheck:hover{background:rgba(255,255,255,.84);box-shadow:0 5px 14px rgba(15,23,42,.10)}.tile-autocheck.running{color:#b45309;border-color:rgba(245,158,11,.38);background:rgba(255,247,237,.78)}
.ref-metric-tile,.ref-trend-panel,.ref-table-panel,.analysis-glass-panel,.met-feature-panel,.combined-panel{contain:layout paint style}
.ref-mini-trend svg,.ref-trend-canvas canvas{will-change:auto}
.page>*,.configuration-page>*,.analysis-page>*{content-visibility:auto;contain-intrinsic-size:1px 360px}
.topbar,.ref-dashboard-meta,.ref-dashboard-tiles{content-visibility:visible}


/* UI13.51 — dynamic live layout + 360° MET + Time Base table */
.ref-live-split{align-items:stretch!important}
.ref-live-primary-zone.dynamic-zone,.ref-live-met-zone.dynamic-zone{height:calc(54px + min(var(--visible-rows,4),4) * 130px)!important;min-height:314px;overflow:hidden!important}
.ref-live-single .ref-live-primary-zone.dynamic-zone{height:auto!important;min-height:calc(54px + min(var(--visible-rows,4),4) * 130px)!important}
.ref-gasdust-scroller{height:calc(min(var(--visible-rows,4),4) * 130px - 4px)!important;max-height:none!important;overflow:hidden!important}
.ref-gasdust-cycle{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;align-items:stretch}
.ref-gasdust-cycle>.ref-metric-tile:nth-last-child(1):nth-child(odd){grid-column:1/-1}
.ref-gasdust-scroller.auto-scroll .ref-gasdust-cycle{animation:refTileScroll 30s linear infinite}
.ref-gasdust-scroller:hover .ref-gasdust-cycle{animation-play-state:paused}
.ref-met-scroll{height:calc(100% - 34px);overflow:auto;scrollbar-width:thin;padding-right:2px}
.ref-met-first-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;align-items:stretch;margin-bottom:10px}
.ref-met-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important;margin-top:0!important}
.ref-met-grid>.ref-metric-tile:nth-last-child(1):nth-child(odd){grid-column:1/-1}
.dashboard-mini-windrose,.dashboard-direction-card{height:190px!important;min-height:190px!important;box-sizing:border-box}
.dashboard-mini-rose-body{grid-template-columns:minmax(0,1fr) 96px!important;gap:8px!important}
#dashboard-mini-wind-rose{height:135px!important}
.dashboard-direction-card{position:relative;display:grid;grid-template-columns:minmax(0,.8fr) minmax(150px,1.2fr);gap:10px;align-items:center;border-radius:16px;padding:12px;background:linear-gradient(135deg,color-mix(in srgb,var(--series) 9%,rgba(255,255,255,.46)),rgba(255,255,255,.30));border:1px solid color-mix(in srgb,var(--series) 25%,rgba(203,213,225,.74));backdrop-filter:blur(22px) saturate(140%);-webkit-backdrop-filter:blur(22px) saturate(140%);cursor:pointer;overflow:hidden}
.dashboard-direction-card.empty{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;background:rgba(255,255,255,.42);border:1px dashed rgba(148,163,184,.35)}
.direction-card-copy{display:grid;gap:5px}.direction-card-copy>strong{font-size:13px;color:#0f172a}.direction-card-copy>span{font-size:22px;font-weight:800;color:var(--series);letter-spacing:-.03em}.direction-card-copy>small{font-size:10px;color:#64748b}
.direction-dial{display:grid;place-items:center}.direction-ring{position:relative;width:138px;height:138px;border-radius:50%;background:radial-gradient(circle at center,rgba(255,255,255,.86) 0 40%,transparent 41%),repeating-conic-gradient(from -2deg,rgba(100,116,139,.34) 0 1deg,transparent 1deg 14deg),conic-gradient(from 0deg,color-mix(in srgb,var(--series) 11%,white),rgba(255,255,255,.48));border:1px solid color-mix(in srgb,var(--series) 25%,#cbd5e1);box-shadow:inset 0 0 0 10px rgba(255,255,255,.36),0 8px 22px rgba(15,23,42,.06)}
.direction-ring span{position:absolute;font-size:9px;font-weight:800;color:#64748b}.direction-ring .n{top:6px;left:50%;transform:translateX(-50%)}.direction-ring .s{bottom:6px;left:50%;transform:translateX(-50%)}.direction-ring .e{right:7px;top:50%;transform:translateY(-50%)}.direction-ring .w{left:7px;top:50%;transform:translateY(-50%)}.direction-ring b{position:absolute;inset:0;display:grid;place-items:center;font-size:18px;color:#0f172a}.direction-needle{position:absolute;left:50%;top:14px;width:3px;height:54px;background:var(--series);border-radius:999px;transform-origin:50% 55px;transform:translateX(-50%) rotate(var(--wind-angle));box-shadow:0 0 10px color-mix(in srgb,var(--series) 35%,transparent)}
.ref-trend-panel{grid-template-rows:auto minmax(0,1fr) auto!important;overflow:hidden!important}
.ref-trend-legend.legend-bottom{margin-top:8px;padding-top:8px;border-top:1px solid rgba(203,213,225,.58);max-height:88px;overflow:auto!important;align-content:flex-start}
.ref-trend-canvas{padding:18px 14px 8px 28px!important;overflow:hidden!important;box-sizing:border-box!important}
.ref-trend-canvas canvas{max-width:100%!important;max-height:100%!important}
.ref-live-table-compact{table-layout:fixed!important}.ref-live-table-compact th:nth-child(1){width:17%}.ref-live-table-compact th:nth-child(2){width:15%}.ref-live-table-compact th:nth-child(3){width:28%}.ref-live-table-compact th:nth-child(4){width:22%}.ref-live-table-compact th:nth-child(5){width:18%}
.ref-live-table-compact thead th{font-size:10px!important;letter-spacing:.055em;color:#475569!important}.ref-live-table-compact tbody td{font-size:11px!important;color:#1e293b!important}.ref-table-param strong{font-size:12px!important;font-weight:800!important;letter-spacing:-.01em}.ref-table-param small{font-size:9px!important}.timebase-pill{display:inline-flex;align-items:center;justify-content:center;min-height:22px;padding:0 8px;border-radius:999px;background:rgba(59,130,246,.08);border:1px solid rgba(59,130,246,.14);color:#1d4ed8;font-size:9px;font-weight:800;white-space:nowrap}
@media(max-width:1280px){.ref-live-primary-zone.dynamic-zone,.ref-live-met-zone.dynamic-zone{height:auto!important;min-height:0!important}.ref-gasdust-scroller,.ref-met-scroll{height:auto!important;max-height:none!important;overflow:visible!important}}
@media(max-width:760px){.ref-gasdust-cycle,.ref-met-first-row,.ref-met-grid{grid-template-columns:1fr!important}.ref-gasdust-cycle>.ref-metric-tile:nth-last-child(1):nth-child(odd),.ref-met-grid>.ref-metric-tile:nth-last-child(1):nth-child(odd){grid-column:auto}.dashboard-direction-card{grid-template-columns:1fr}.ref-live-table-compact{min-width:760px}.ref-table-wrap{overflow:auto!important}}

/* ========================================================================
   UI13.55 FINAL — unified workspace stability / wizard / toast / dropdown fixes
   ======================================================================== */
#toast-root{position:fixed!important;right:18px!important;bottom:18px!important;top:auto!important;z-index:1000000!important;display:grid!important;gap:10px!important;pointer-events:none!important;max-width:min(420px,calc(calc(100vw / var(--nb-zoom,1)) - 28px))!important}
#toast-root .toast{pointer-events:auto!important;will-change:transform,opacity;transform:translate3d(115%,24px,0);opacity:0;transition:transform .26s cubic-bezier(.2,.8,.2,1),opacity .22s ease!important}
#toast-root .toast.toast-visible{transform:translate3d(0,0,0);opacity:1}
#toast-root .toast.toast-exit{transform:translate3d(115%,20px,0);opacity:0}

/* Device wizard is one bounded layout: stable header/progress/footer, scrollable stage. */
.staged-device-modal{
  width:min(1040px,calc(calc(100vw / var(--nb-zoom,1)) - 32px))!important;
  height:min(820px,calc(calc(100dvh / var(--nb-zoom,1)) - 32px))!important;
  max-height:calc(calc(100dvh / var(--nb-zoom,1)) - 32px)!important;
  display:flex!important;
  flex-direction:column!important;
  overflow:hidden!important;
  padding:0!important;
}
.staged-device-modal>.modal-head{flex:0 0 auto;margin:0!important;padding:14px 16px 10px!important;position:relative!important;z-index:4;background:rgba(255,255,255,.94)}
.staged-device-modal>.wizard-progress{flex:0 0 auto;margin:0 16px 10px!important}
.staged-device-modal>.wizard-step{flex:0 0 auto;margin:0 16px 10px!important;min-width:0!important;max-width:calc(100% - 32px)!important;overflow:visible!important}
.staged-device-modal>#wizard-parameters{flex:1 1 auto!important;min-height:160px!important;max-height:none!important;overflow:auto!important;overscroll-behavior:contain;scrollbar-gutter:stable;padding-bottom:10px!important}
.staged-device-modal>#wizard-visualization:not([hidden]){flex:0 1 220px;overflow:auto!important}
.staged-device-modal>.modal-actions{flex:0 0 auto!important;position:relative!important;bottom:auto!important;margin:0!important;padding:10px 16px!important;border-top:1px solid rgba(203,213,225,.68)!important;background:rgba(255,255,255,.94)!important;backdrop-filter:blur(16px)!important;z-index:5!important;display:flex!important;justify-content:flex-end!important;gap:10px!important}
.staged-device-modal .parameter-editor{max-width:100%!important;overflow:visible!important}
.staged-device-modal .parameter-editor-list{display:grid!important;gap:10px!important;max-width:100%!important}
.staged-device-modal .form-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:10px!important}
.staged-device-modal .input,.staged-device-modal .select{min-height:36px!important;padding:7px 10px!important}
.staged-device-modal .wizard-step-actions{position:sticky!important;bottom:0!important;z-index:3!important;background:linear-gradient(180deg,rgba(255,255,255,.80),rgba(255,255,255,.97) 38%)!important;padding:10px 0 4px!important;margin-top:8px!important}
@media(max-width:840px){.staged-device-modal .form-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:620px){.staged-device-modal{width:calc(100vw / var(--nb-zoom,1))!important;height:calc(100dvh / var(--nb-zoom,1))!important;max-height:calc(100dvh / var(--nb-zoom,1))!important}.staged-device-modal .form-grid{grid-template-columns:1fr!important}.staged-device-modal>.wizard-step{margin-left:10px!important;margin-right:10px!important;max-width:calc(100% - 20px)!important}}

/* Protocol Studio selector / dropdown containment. */
.ps-device-selector{position:relative!important;z-index:40!important;overflow:visible!important}
.ps-progress-strip{position:relative!important;z-index:1!important}
.ps-selector-grid .field{overflow:visible!important}
.ps-selector-grid select{position:relative!important;z-index:41!important}

/* Avoid text cutting and accidental overlap throughout the unified workspace. */
.page,.configuration-page,.analysis-page{overflow:visible!important}
.panel:not(.ref-trend-panel):not(.ref-table-panel),.card{overflow:visible}
.page-head h1,.section-title h2,.section-title strong{line-height:1.15!important;margin-block:0!important}
.field-help{display:block!important;margin-top:2px!important;white-space:normal!important}
.mapping-row-actions,.page-actions,.wizard-saved-actions{display:flex!important;flex-wrap:wrap!important;gap:8px!important}
.compact-global-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;margin-bottom:12px!important}
.timebase-grid{margin-top:6px!important;gap:10px!important}

/* Global compact page sizing for configuration/network/analysis screens. */
.configuration-page .panel,.analysis-page .panel,.network-page .panel{padding:14px!important}
.config-entity-panel,.analysis-config-card,.network-section,.control-pane{min-height:0!important}
.analysis-config-grid{align-items:start!important}
.analysis-config-card{height:auto!important;min-height:190px!important}
.network-bind-help{padding:10px 12px!important}

/* Charts and tables are the explicit overflow exceptions. */
.ref-trend-canvas,.parameter-zoom-chart-wrap,.chart-wrap,.ref-table-wrap,.table-wrap,.dashboard-matrix-wrap{overflow:auto!important}
.ref-trend-canvas canvas,.parameter-zoom-chart-wrap canvas{max-width:100%!important}


/* UI13.64 — live dashboard stability, non-flicker table updates, visible trend legend */
.ref-bottom-split .ref-trend-panel{display:grid!important;grid-template-rows:auto minmax(220px,1fr) auto!important;overflow:hidden!important}
.ref-bottom-split .ref-trend-canvas{min-height:220px!important;height:auto!important;padding:14px 14px 10px 30px!important}
.ref-bottom-split .ref-trend-legend.legend-bottom{min-height:48px!important;max-height:calc(var(--trend-legend-rows,1) * 34px + 18px)!important;overflow:auto!important;margin-top:0!important;padding:9px 12px 12px!important;background:linear-gradient(180deg,rgba(255,255,255,.32),rgba(248,250,252,.64))!important;border-top:1px solid rgba(203,213,225,.58)!important;z-index:3!important}
.ref-bottom-split .ref-table-panel{overflow:hidden!important}.ref-table-wrap{overscroll-behavior:contain}.ref-tb-value{font-variant-numeric:tabular-nums}
@media(max-width:1280px){.ref-bottom-split .ref-trend-panel{grid-template-rows:auto minmax(240px,1fr) auto!important}}


/* UI13.66 — stable unconfigured dashboard; no chart/canvas flicker */
.ref-live-empty,.ref-trend-empty{min-height:220px!important;display:flex!important;align-items:center!important;justify-content:center!important}
.ref-trend-empty-state{min-height:260px!important;width:100%}
.ref-live-empty .configured-empty-state{min-height:180px!important}


/* ========================================================================
   UI13.68 — exact 50/50 MET split, pivot time-base table, rolling trend axes
   ======================================================================== */
.ref-live-split.has-met{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:14px!important;align-items:stretch!important}
.ref-live-split.has-met>.ref-live-primary-zone,.ref-live-split.has-met>.ref-live-met-zone{width:auto!important;min-width:0!important;height:520px!important;min-height:520px!important;max-height:520px!important;overflow:hidden!important}
.ref-live-split.has-met .ref-gasdust-scroller{height:calc(100% - 36px)!important;max-height:none!important;overflow:hidden!important}
.ref-live-split.has-met .ref-gasdust-cycle{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;grid-auto-rows:210px!important;gap:10px!important;align-content:start!important}
.ref-live-split.has-met .ref-gasdust-cycle>.ref-metric-tile{height:210px!important;min-height:210px!important;max-height:210px!important}
.ref-live-split.has-met .ref-gasdust-cycle>.ref-metric-tile:nth-last-child(1):nth-child(odd){grid-column:auto!important}
.ref-live-split.has-met .ref-gasdust-scroller.auto-scroll .ref-gasdust-cycle{animation:refGasDustFourScroll 34s linear infinite!important;will-change:transform}
.ref-live-split.has-met .ref-gasdust-scroller:hover .ref-gasdust-cycle{animation-play-state:paused!important}
@keyframes refGasDustFourScroll{0%{transform:translate3d(0,0,0)}100%{transform:translate3d(0,-50%,0)}}
.ref-live-split.has-met .ref-met-scroll{height:calc(100% - 36px)!important;max-height:none!important;overflow:auto!important;overscroll-behavior:contain!important;padding-right:4px!important}
.ref-live-split.has-met .ref-met-first-row{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important;align-items:stretch!important;margin-bottom:10px!important}
.ref-live-split.has-met .dashboard-mini-windrose,.ref-live-split.has-met .dashboard-direction-card{min-height:220px!important;height:220px!important;max-height:220px!important;overflow:hidden!important}
.ref-live-split.has-met .ref-met-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important;margin:0!important}
.ref-live-split.has-met .ref-met-grid>.ref-metric-tile{height:150px!important;min-height:150px!important;max-height:150px!important}
.ref-live-split.has-met .ref-met-grid>.ref-metric-tile:nth-last-child(1):nth-child(odd){grid-column:1/-1!important}
.ref-live-single .full-width-cycle{grid-template-columns:repeat(4,minmax(0,1fr))!important}
.ref-live-single .full-width-cycle>.ref-metric-tile:nth-last-child(1):nth-child(odd){grid-column:auto!important}

/* Dashboard live table: one parameter per row, configured time bases as columns. */
.pivot-timebase-table{width:100%!important;min-width:760px!important;table-layout:auto!important;border-collapse:separate!important;border-spacing:0!important}
.pivot-timebase-table th,.pivot-timebase-table td{white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
.pivot-timebase-table th:nth-child(1){width:112px!important;min-width:112px!important}.pivot-timebase-table th:nth-child(2){width:104px!important;min-width:104px!important}.pivot-timebase-table th:nth-child(3){min-width:150px!important;width:auto!important}
.pivot-timebase-table th:nth-child(n+4){min-width:118px!important;width:118px!important;text-align:center!important}.pivot-timebase-table td:nth-child(n+4){text-align:center!important}
.pivot-timebase-table .ref-table-param{justify-content:flex-start!important}.pivot-timebase-table .ref-tb-value{font-weight:800!important;color:#0f172a!important}

/* Equal dynamic bottom panels and unclipped chart/legend. */
.ref-bottom-split{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;align-items:stretch!important}
.ref-bottom-split .ref-trend-panel,.ref-bottom-split .ref-table-panel{height:var(--live-panel-height)!important;min-height:360px!important;max-height:680px!important}
.ref-bottom-split .ref-trend-panel{grid-template-rows:auto minmax(0,1fr) auto!important}
.ref-bottom-split .ref-trend-canvas{min-height:0!important;height:auto!important;overflow:hidden!important;padding:16px 16px 10px 38px!important}
.ref-bottom-split .ref-trend-canvas canvas{width:100%!important;height:100%!important;max-width:100%!important;max-height:100%!important}
.ref-bottom-split .ref-trend-legend.legend-bottom{display:flex!important;flex-wrap:wrap!important;gap:8px!important;min-height:48px!important;max-height:calc(var(--trend-legend-rows,1) * 36px + 18px)!important;overflow:auto!important;padding:9px 12px 12px!important}
.ref-bottom-split .ref-table-wrap{height:100%!important;max-height:none!important;overflow:auto!important}

@media(max-width:900px){.ref-live-split.has-met,.ref-bottom-split{grid-template-columns:1fr!important}.ref-live-split.has-met>.ref-live-primary-zone,.ref-live-split.has-met>.ref-live-met-zone{height:auto!important;min-height:0!important;max-height:none!important}.ref-live-split.has-met .ref-gasdust-scroller,.ref-live-split.has-met .ref-met-scroll{height:auto!important;max-height:none!important;overflow:visible!important}.ref-live-split.has-met .ref-gasdust-scroller.auto-scroll .ref-gasdust-cycle{animation:none!important}.ref-live-single .full-width-cycle{grid-template-columns:repeat(2,minmax(0,1fr))!important}.ref-bottom-split .ref-trend-panel,.ref-bottom-split .ref-table-panel{height:auto!important;max-height:none!important;min-height:360px!important}}
@media(max-width:620px){.ref-live-split.has-met .ref-gasdust-cycle,.ref-live-split.has-met .ref-met-first-row,.ref-live-split.has-met .ref-met-grid,.ref-live-single .full-width-cycle{grid-template-columns:1fr!important}.pivot-timebase-table{min-width:720px!important}}

/* UI13.69 — Real-time pivot table: keep the parameter column visible while scrolling across time-base columns. */
.ref-table-wrap .pivot-timebase-table thead th{position:sticky;top:0;z-index:2}
.ref-table-wrap .pivot-timebase-table th:nth-child(3),.ref-table-wrap .pivot-timebase-table td:nth-child(3){position:sticky;left:0;z-index:1;background:var(--surface,#fff);box-shadow:6px 0 10px -8px rgba(15,35,60,.35)}
.ref-table-wrap .pivot-timebase-table thead th:nth-child(3){z-index:3}

/* UI16.0 production: always-visible running software identification in the top bar. */
.ref-brand-lockup .running-version-badge{display:inline-flex!important;align-items:center!important;height:22px!important;padding:0 8px!important;border:1px solid rgba(139,123,255,.28)!important;border-radius:999px!important;background:rgba(101,82,196,.12)!important;color:#c9c2ff!important;font:700 10px/1 system-ui,sans-serif!important;letter-spacing:.03em!important;text-transform:none!important;white-space:nowrap!important}
@media(max-width:1050px){.ref-brand-lockup .running-version-badge{display:none!important}}
/* Device commissioning layout: readable tabs and controls at every zoom level. */
.modal.staged-device-modal{width:min(1200px,calc(calc(100vw / var(--nb-zoom,1)) - 28px))!important}
.staged-device-modal .instrument-tabs button[role="tab"]{color:#42536a!important;background:#f3f6fa!important;border-color:#cbd5e1!important;white-space:nowrap;min-height:38px!important}
.staged-device-modal .instrument-tabs button[role="tab"][aria-selected="true"]{color:#fff!important;background:#2463d3!important;border-color:#2463d3!important}
.staged-device-modal #device-schedule-panel{display:block!important;min-width:0;padding:16px!important;border:1px solid var(--line,#dbe3ec);border-radius:16px;background:var(--surface,#fff);color:var(--text,var(--ink,#102a43))}
.staged-device-modal #device-schedule-panel>.form-grid{display:grid!important;grid-template-columns:repeat(3,minmax(170px,1fr))!important;gap:12px!important;margin:12px 0!important}
.staged-device-modal #device-schedule-panel>.field,.staged-device-modal #device-schedule-panel .field{min-width:0}
.staged-device-modal #device-schedule-panel .select,.staged-device-modal #device-schedule-panel .input{width:100%;min-width:0}
.staged-device-modal #device-sequences{display:block!important;min-width:0;padding:16px!important;border:1px solid var(--line,#dbe3ec);border-radius:16px;background:var(--surface,#fff);color:var(--text,var(--ink,#102a43))}
.staged-device-modal #device-sequences>.form-grid{display:grid!important;grid-template-columns:repeat(3,minmax(170px,1fr))!important;gap:12px!important;margin:12px 0!important}
.staged-device-modal #device-sequences .field{min-width:0}
.staged-device-modal #device-sequences .input,.staged-device-modal #device-sequences .select{width:100%;min-width:0}
@media(max-width:760px){.modal.staged-device-modal{width:calc(100vw / var(--nb-zoom,1))!important}.staged-device-modal #device-schedule-panel>.form-grid,.staged-device-modal #device-sequences>.form-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:520px){.staged-device-modal #device-schedule-panel>.form-grid,.staged-device-modal #device-sequences>.form-grid{grid-template-columns:minmax(0,1fr)!important}}

/* UI16 remote configuration feedback + Digital I/O automation row fixes */
.remote-config-overlay{position:fixed;inset:0;z-index:10050;display:grid;place-items:center;background:rgba(5,6,20,.48);backdrop-filter:blur(6px);opacity:0;pointer-events:none;transition:opacity .22s ease}.remote-config-overlay.visible{opacity:1;pointer-events:auto}.remote-config-overlay.done{opacity:0;pointer-events:none}.remote-config-overlay-card{width:min(560px,calc(100vw - 40px));display:grid;grid-template-columns:52px 1fr;gap:16px;align-items:center;padding:22px 24px;border:1px solid rgba(151,129,255,.4);border-radius:20px;background:linear-gradient(145deg,rgba(42,32,85,.98),rgba(17,15,42,.98));box-shadow:0 24px 70px rgba(0,0,0,.42)}.remote-config-overlay-spinner{width:42px;height:42px;border-radius:50%;border:4px solid rgba(255,255,255,.16);border-top-color:#ffb33f;animation:remote-config-spin .8s linear infinite}.remote-config-overlay.success .remote-config-overlay-spinner{border:0;background:#27c990;animation:none}.remote-config-overlay.failed .remote-config-overlay-spinner{border:0;background:#ff5872;animation:none}.remote-config-overlay-copywrap{min-width:0;display:grid;gap:7px}.remote-config-overlay-copywrap strong{font-size:16px;color:#fff}.remote-config-overlay-copywrap span{font-size:12px;color:#c9c5dc}.remote-config-stagebar{height:6px;border-radius:999px;overflow:hidden;background:rgba(255,255,255,.1)}.remote-config-stagebar i{display:block;width:18%;height:100%;border-radius:inherit;background:linear-gradient(90deg,#ffb33f,#ff7c59);transition:width .35s ease}@keyframes remote-config-spin{to{transform:rotate(360deg)}}
.dio-automation-row{grid-template-columns:34px minmax(0,1fr) auto auto!important}.dio-automation-row .wizard-saved-copy{min-width:0}.dio-automation-row .wizard-saved-copy strong,.dio-automation-row .wizard-saved-copy small{display:block;white-space:normal;overflow-wrap:anywhere}.dio-automation-row .wizard-saved-actions{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.dio-automation-row .saved-config-state{white-space:nowrap}
@media(max-width:820px){.dio-automation-row{grid-template-columns:32px minmax(0,1fr) auto!important}.dio-automation-row .wizard-saved-actions{grid-column:2/-1;justify-content:flex-start}}


/* UI16.8 interaction stability: no whole-page motion on in-place changes */
/*
   The workspace intentionally re-renders some same-route views after a select,
   save, delete or view-mode change. The old .page/pageIn rules replayed a
   translate animation every time a new page node was inserted, which looked
   like the whole application jumping even when scrollTop was restored.
*/
.page-root > .page{animation:none!important;transform:none!important;transition:none!important}
.page-root > .page .ps-progress-panel{animation:none!important;transform:none!important}
.page-root{scroll-behavior:auto!important;overflow-anchor:none!important}
.page-root select,.page-root input,.page-root textarea{scroll-margin:0!important}
/* Keep interaction feedback local to the control; never animate layout position. */
.page-root .button,.page-root button,.page-root .tab,.page-root [role="tab"],.page-root [role="switch"]{transition-property:background-color,border-color,color,box-shadow,opacity!important}


/* ======================================================================
   LEGACY MIGRATION SOURCE: src/daq/webui/unified/client_trace.css
   Consolidated into the single universal Project 00 stylesheet.
   ====================================================================== */
.client-trace-page .page-head{margin-bottom:10px}.ct-toolbar{display:flex;align-items:center;justify-content:flex-end;gap:12px;margin-bottom:10px}.ct-toolbar label{display:flex;gap:7px;align-items:center;font-size:.75rem}.ct-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px;min-height:0}.ct-stream{padding:0;overflow:hidden;min-width:0}.ct-stream-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;padding:12px 14px;border-bottom:1px solid rgba(127,153,210,.16)}.ct-stream-head strong{font-size:.92rem}.ct-stream-head p{margin:3px 0 0;opacity:.66;font-size:.7rem;line-height:1.35}.ct-table-wrap{overflow:auto;max-height:calc(100vh - 245px)}.ct-table{width:100%;min-width:1180px;border-collapse:collapse}.ct-table th,.ct-table td{padding:7px 8px;border-bottom:1px solid rgba(127,153,210,.12);font-size:.67rem;text-align:left;vertical-align:top}.ct-table th{position:sticky;top:0;z-index:2;background:var(--nb-card,#131a33);font-size:.59rem;text-transform:uppercase;letter-spacing:.045em}.ct-table code{white-space:pre-wrap;word-break:break-word;font-size:.63rem}.ct-table small{display:block;margin-top:3px;opacity:.64}.ct-stage{display:inline-flex;border-radius:999px;padding:3px 7px;border:1px solid currentColor;font-size:.58rem;font-weight:750;white-space:nowrap}.ct-stage.good{color:#62e3a9;background:rgba(42,190,126,.1)}.ct-stage.warn{color:#ffd06c;background:rgba(238,174,44,.1)}.ct-stage.bad{color:#ff7c8d;background:rgba(236,67,92,.12)}tr.ct-good td:first-child{box-shadow:inset 3px 0 #32c98a}tr.ct-warn td:first-child{box-shadow:inset 3px 0 #efb548}tr.ct-bad td:first-child{box-shadow:inset 3px 0 #ef526a}.ct-bad{background:rgba(195,43,68,.055)}.ct-good{background:rgba(28,147,105,.035)}.ct-detail{max-width:260px;word-break:break-word}.ct-empty{text-align:center;padding:28px!important;opacity:.65}@media(max-width:1100px){.ct-split{grid-template-columns:1fr}.ct-table-wrap{max-height:45vh}}@media(max-width:760px){.ct-table-wrap{max-height:42vh}}

/* Equal full-width streams, stacked Analyzer above Central. */
#nb#nb#nb .client-trace-page .ct-split{grid-template-columns:minmax(0,1fr)!important;grid-template-rows:repeat(2,minmax(0,1fr));height:max(560px,calc(100vh - 250px));gap:14px}
#nb#nb#nb .client-trace-page .ct-stream{display:flex;flex-direction:column;min-height:0}
#nb#nb#nb .client-trace-page .ct-stream-head{flex:0 0 auto}
#nb#nb#nb .client-trace-page .ct-table-wrap{flex:1;min-height:0;max-height:none!important;overflow:auto}


/* ======================================================================
   LEGACY MIGRATION SOURCE: src/daq/webui/shared/global_premium_glass.css
   Consolidated into the single universal Project 00 stylesheet.
   ====================================================================== */
/* AESST DAS UI13.50 global visual system.
   Shared tokens and primitive components live here so page CSS inherits them
   instead of repeatedly force-patching each screen. */
:root{
  --glass-bg:rgba(255,255,255,.72);
  --glass-bg-strong:rgba(255,255,255,.84);
  --glass-bg-soft:rgba(248,250,252,.62);
  --glass-edge:rgba(148,163,184,.26);
  --glass-edge-soft:rgba(203,213,225,.52);
  --glass-shadow:0 12px 34px rgba(15,23,42,.075),inset 0 1px 0 rgba(255,255,255,.78);
  --glass-shadow-hover:0 18px 44px rgba(15,23,42,.12),inset 0 1px 0 rgba(255,255,255,.88);
  --glass-blur:18px;
  --glass-radius:16px;
  --ui-text:#0f172a;
  --ui-muted:#64748b;
  --ui-primary:#2563eb;
  --ui-success:#10b981;
  --ui-warn:#f59e0b;
  --ui-danger:#ef4444;
  --ui-canvas:#eef4fa;
  --ui-fast:140ms cubic-bezier(.2,.8,.2,1);
}
html[data-theme="dark"]{
  --glass-bg:rgba(15,23,42,.72);
  --glass-bg-strong:rgba(15,23,42,.84);
  --glass-bg-soft:rgba(30,41,59,.64);
  --glass-edge:rgba(148,163,184,.20);
  --glass-edge-soft:rgba(71,85,105,.55);
  --glass-shadow:0 14px 36px rgba(0,0,0,.24),inset 0 1px 0 rgba(255,255,255,.05);
  --glass-shadow-hover:0 18px 48px rgba(0,0,0,.31),inset 0 1px 0 rgba(255,255,255,.08);
  --ui-text:#f8fafc;
  --ui-muted:#94a3b8;
  --ui-canvas:#0b1220;
}
html,body{background:var(--ui-canvas);color:var(--ui-text);font-family:Inter,"Segoe UI Variable","Segoe UI",system-ui,-apple-system,sans-serif;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}
body{overscroll-behavior:none}
.panel,.card,.glass-card,.modal,.config-editor-row,.analysis-glass-panel,.analysis-glass-ribbon,.met-feature-panel,.met-trend-panel,.combined-panel,.dashboard-live-table-panel{
  background:linear-gradient(135deg,var(--glass-bg-strong),var(--glass-bg-soft));
  border:1px solid var(--glass-edge);
  box-shadow:var(--glass-shadow);
  backdrop-filter:blur(var(--glass-blur)) saturate(145%);
  -webkit-backdrop-filter:blur(var(--glass-blur)) saturate(145%);
  border-radius:var(--glass-radius);
}
.button,.touch-button,button,.input,.select,.touch-input,.touch-select,input,select,textarea{
  font:inherit;
  transition:background var(--ui-fast),border-color var(--ui-fast),box-shadow var(--ui-fast),transform var(--ui-fast),color var(--ui-fast),opacity var(--ui-fast);
}
.input,.select,.touch-input,.touch-select,input:not([type="checkbox"]):not([type="radio"]),select,textarea{
  border:1px solid var(--glass-edge-soft);
  background:rgba(255,255,255,.68);
  color:var(--ui-text);
  border-radius:12px;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.58);
  outline:none;
}
html[data-theme="dark"] .input,html[data-theme="dark"] .select,html[data-theme="dark"] input:not([type="checkbox"]):not([type="radio"]),html[data-theme="dark"] select,html[data-theme="dark"] textarea{background:rgba(15,23,42,.62)}
.input:focus,.select:focus,.touch-input:focus,.touch-select:focus,input:focus,select:focus,textarea:focus{border-color:rgba(37,99,235,.52);box-shadow:0 0 0 3px rgba(37,99,235,.10),inset 0 1px 0 rgba(255,255,255,.55)}
.button,.touch-button,button{border-radius:12px}
.button:hover,.touch-button:hover,button:hover{transform:translate3d(0,-1px,0)}
.button:active,.touch-button:active,button:active{transform:translate3d(0,0,0) scale(.985)}
table{border-color:var(--glass-edge-soft)}
thead th{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.status-chip,.ref-summary-pill,.nav-badge{border-radius:999px}
.modal-backdrop{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
*{scrollbar-width:thin;scrollbar-color:rgba(100,116,139,.42) transparent}
*::-webkit-scrollbar{width:9px;height:9px}*::-webkit-scrollbar-track{background:transparent}*::-webkit-scrollbar-thumb{background:rgba(100,116,139,.36);border-radius:999px;border:2px solid transparent;background-clip:padding-box}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}

/* ========================================================================
   UI13.55 FINAL — global compact geometry, overflow safety and spacing system
   ======================================================================== */
:root{
  --ui-space-1:4px;
  --ui-space-2:8px;
  --ui-space-3:12px;
  --ui-space-4:16px;
  --ui-space-5:20px;
  --ui-space-6:24px;
  --ui-control-h:38px;
  --ui-control-h-sm:32px;
  --ui-button-h:38px;
  --ui-card-pad:16px;
  --ui-section-gap:14px;
  --ui-modal-gap:14px;
  --ui-radius-sm:10px;
  --ui-radius-md:14px;
  --ui-radius-lg:18px;
  --ui-line-height:1.35;
}
*,*::before,*::after{box-sizing:border-box}
html,body{min-width:0;max-width:100%;overflow-x:hidden}
body{line-height:var(--ui-line-height)}
:where(.page,.panel,.card,.modal,.wizard-step,.field,.form-grid,.section-title,.copy,.table-wrap,.analysis-glass-panel,.control-pane,.config-entity-panel,.network-card,.ps-device-selector){min-width:0}
:where(.page,.stack,.configuration-page,.analysis-page){gap:var(--ui-section-gap)}
:where(.panel,.card,.config-entity-panel,.analysis-glass-panel,.control-pane,.network-card){padding:var(--ui-card-pad)}
:where(.section-title,.modal-head,.page-head,.wizard-step-actions,.modal-actions,.mapping-row-actions,.page-actions){gap:var(--ui-space-3)}
:where(.form-grid,.settings-grid,.pro-grid-4,.analysis-query-grid,.ps-selector-grid){gap:var(--ui-space-3)}
:where(.field){gap:6px}
:where(.field label,.field>span,label){line-height:1.25;overflow-wrap:anywhere}
:where(.field-help,small,p,.copy p){line-height:1.35;overflow-wrap:anywhere}
:where(.input,.select,.touch-field,.touch-input,.touch-select,input:not([type="checkbox"]):not([type="radio"]),select,textarea){
  min-width:0;
  max-width:100%;
  min-height:var(--ui-control-h);
  height:auto;
  padding:8px 11px;
  line-height:1.25;
}
:where(textarea){min-height:84px;resize:vertical}
:where(.button,.touch-button,button:not(.switch):not(.modal-close):not(.icon-button-small)){
  min-height:var(--ui-button-h);
  padding:8px 13px;
  line-height:1.15;
  white-space:normal;
}
:where(h1,h2,h3,h4,strong,span,p,small,td,th,label){max-width:100%}
:where(h1,h2,h3,h4,.section-title strong,.copy strong){overflow-wrap:anywhere}
:where(.wizard-saved-copy,.workspace-card-main,.param-cell,.toast-copy,.network-bind-help>div){min-width:0}
:where(.wizard-saved-copy strong,.wizard-saved-copy small,.workspace-card-main h3,.workspace-card-main p){white-space:normal!important;overflow:visible!important;text-overflow:clip!important}
:where(.data-table,.ref-live-table,.tabular-matrix){border-collapse:separate;border-spacing:0}
:where(th,td){vertical-align:middle;line-height:1.3}
:where(.table-wrap){max-width:100%;overflow:auto}
:where(.modal){max-width:calc(calc(100vw / var(--nb-zoom,1)) - 28px);max-height:calc(calc(100dvh / var(--nb-zoom,1)) - 28px)}
:where(.modal-backdrop,#modal-root){overflow:hidden}

/* Dropdown/popover layers must never disappear behind chart or card containers. */
:where(.aesst-select-popover,.glass-select-menu,.select-menu,.dropdown-menu,.menu-popover,.popover,.context-menu,.dashboard-context-menu){
  z-index:999999!important;
  max-height:min(calc(52dvh / var(--nb-zoom,1)),420px)!important;
  overflow:auto!important;
}
:where(.field,.select-wrap,.dropdown-wrap){position:relative}
:where(.field:focus-within,.select-wrap:focus-within,.dropdown-wrap:focus-within){z-index:999998}
:where(.ps-device-selector,.protocol-selector-ordered,.ps-selector-grid){overflow:visible!important}

/* Keep ordinary text readable instead of cutting it at inherited fixed heights. */
:where(.panel,.card,.config-entity-panel,.analysis-glass-panel,.control-pane,.network-card){height:auto;min-height:0}
:where(.section-title,.copy,.field-help,.network-bind-help,.empty-state){overflow:visible}

/* Shared responsive grid normalization. */
@media(max-width:1100px){
  :where(.form-grid,.settings-grid,.pro-grid-4,.analysis-query-grid,.ps-selector-grid){grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:680px){
  :root{--ui-card-pad:12px;--ui-section-gap:10px;--ui-control-h:36px;--ui-button-h:36px}
  :where(.form-grid,.settings-grid,.pro-grid-4,.analysis-query-grid,.ps-selector-grid){grid-template-columns:1fr!important}
  :where(.page-head,.section-title,.modal-head){align-items:flex-start;flex-wrap:wrap}
}


/* ======================================================================
   LEGACY MIGRATION SOURCE: src/daq/webui/shared/nebula-auto.css
   Consolidated into the single universal Project 00 stylesheet.
   ====================================================================== */
/* GENERATED by tools/build_nebula_auto.py - do not edit by hand. */
/* Base: text inherits the Nebula ink unless an inline colour is set. */
#nb *:not([style*="color"]){color:inherit!important}
#nb body{color:#f4f1ff!important}
/* ---- from src/daq/webui/unified/unified.css ---- */
#nb .app-shell{background:rgba(255,255,255,.06)!important;background-image:none!important}
#nb .avatar.compact{background:rgba(255,255,255,.06)!important;color:hsl(217,72%,80%)!important;border-color:hsla(210,72%,70%,.34)!important}
#nb .sidebar-account-copy small{color:hsl(207,60%,80%)!important}
#nb .topbar{background:rgba(255,255,255,.06)!important}
#nb .search-box{background:rgba(255,255,255,.06)!important}
#nb .search-box:focus-within{background:rgba(255,255,255,.06)!important;border-color:hsla(218,80%,70%,.34)!important}
#nb .search-box kbd{background:rgba(255,255,255,.06)!important;border-color:rgba(255,255,255,.12)!important}
#nb .toolbar-icon{background:rgba(255,255,255,.06)!important}
#nb .toolbar-icon:hover{color:hsl(218,75%,80%)!important;border-color:hsla(211,55%,70%,.34)!important;background:rgba(255,255,255,.06)!important}
#nb .runtime-pill{background:rgba(255,255,255,.06)!important}
#nb .runtime-pill.good{color:hsl(158,76%,80%)!important;background:rgba(255,255,255,.06)!important;border-color:hsla(156,55%,70%,.34)!important}
#nb .runtime-pill.warn{color:hsl(38,80%,80%)!important;background:rgba(255,255,255,.06)!important;border-color:hsla(41,61%,70%,.34)!important}
#nb .runtime-pill.bad{color:hsl(353,60%,80%)!important;background:rgba(255,255,255,.06)!important;border-color:hsla(352,55%,70%,.34)!important}
#nb .account-control{background:rgba(255,255,255,.06)!important}
#nb .account-control:hover{border-color:hsla(211,55%,70%,.34)!important}
#nb .account-control>svg{color:hsl(217,72%,80%)!important}
#nb .page-head .eyebrow{color:hsl(210,60%,80%)!important}
#nb .page-head h1{color:hsl(209,60%,80%)!important}
#nb .card, #nb .panel{background-color:rgba(255,255,255,.06)!important;background:rgba(255,255,255,.06)!important;background-image:none!important}
#nb .card.hover:hover{border-color:hsla(208,55%,70%,.34)!important}
#nb .hero{background-color:rgba(255,255,255,.06)!important;background:rgba(255,255,255,.06)!important;background-image:none!important;border-color:hsla(209,55%,70%,.34)!important}
#nb .hero h1{color:hsl(209,64%,80%)!important}
#nb .hero p{color:hsl(209,60%,80%)!important}
#nb .hero .eyebrow{color:hsl(209,60%,80%)!important}
#nb .metric-icon{background:rgba(255,255,255,.06)!important;color:hsl(217,72%,80%)!important}
#nb .metric-icon.green{background:rgba(255,255,255,.06)!important;color:hsl(157,75%,80%)!important}
#nb .metric-icon.orange{background:hsla(37,80%,62%,.15)!important;color:hsl(35,90%,80%)!important}
#nb .metric-icon.purple{background:rgba(255,255,255,.06)!important;color:hsl(256,67%,80%)!important}
#nb .button{background:rgba(255,255,255,.06)!important;color:hsl(210,60%,80%)!important}
#nb .button:hover{border-color:hsla(210,55%,70%,.34)!important;background:rgba(255,255,255,.06)!important}
#nb .button.success{background:rgba(255,255,255,.06)!important;border-color:hsla(154,55%,70%,.34)!important;color:hsl(158,75%,80%)!important}
#nb .button.danger{background:rgba(255,255,255,.06)!important;border-color:hsla(352,55%,70%,.34)!important;color:hsl(354,60%,80%)!important}
#nb .status-chip{background:rgba(255,255,255,.06)!important}
#nb .status-chip.good{color:hsl(158,74%,80%)!important;background:rgba(255,255,255,.06)!important;border-color:hsla(156,55%,70%,.34)!important}
#nb .status-chip.bad{color:hsl(354,60%,80%)!important;background:rgba(255,255,255,.06)!important;border-color:hsla(352,55%,70%,.34)!important}
#nb .status-chip.warn{color:hsl(38,81%,80%)!important;background:rgba(255,255,255,.06)!important;border-color:hsla(40,63%,70%,.34)!important}
#nb .status-chip.info{color:hsl(218,68%,80%)!important;background:rgba(255,255,255,.06)!important;border-color:hsla(220,80%,70%,.34)!important}
#nb .field label{color:hsl(209,60%,80%)!important}
#nb .input, #nb .select, #nb .textarea{border-color:hsla(209,55%,70%,.34)!important;background:rgba(255,255,255,.06)!important;color:hsl(209,60%,80%)!important}
#nb .input:focus, #nb .select:focus, #nb .textarea:focus{background:rgba(255,255,255,.06)!important}
#nb .toggle-row{border-color:rgba(255,255,255,.12)!important;background:rgba(255,255,255,.06)!important}
#nb .switch span{background:hsla(208,55%,62%,.15)!important;border-color:hsla(207,55%,70%,.34)!important}
#nb .switch span:after{background:rgba(255,255,255,.06)!important}
#nb .table-wrap{background:rgba(255,255,255,.06)!important}
#nb .data-table th, #nb .data-table td{border-bottom-color:rgba(255,255,255,.12)!important}
#nb .data-table th{background:rgba(255,255,255,.06)!important}
#nb .data-table tbody tr:hover td{background:rgba(255,255,255,.06)!important}
#nb .empty-state .empty-icon{background:rgba(255,255,255,.06)!important;color:hsl(209,60%,80%)!important}
#nb .empty-state strong{color:hsl(209,60%,80%)!important}
#nb .live-card{background:rgba(255,255,255,.06)!important;background-image:none!important;border-color:hsla(207,55%,70%,.34)!important}
#nb .live-card:hover{border-color:hsla(207,55%,70%,.34)!important}
#nb .live-name{color:hsl(209,60%,80%)!important}
#nb .live-value strong{color:hsl(217,72%,80%)!important}
#nb .quality-good{color:hsl(158,74%,80%)!important}
#nb .quality-bad{color:hsl(354,60%,80%)!important}
#nb .quality-warn{color:hsl(37,81%,80%)!important}
#nb .spark svg{stroke:hsl(223,90%,80%)!important}
#nb .activity-list{border-color:rgba(255,255,255,.12)!important;background:rgba(255,255,255,.06)!important}
#nb .activity-row{border-bottom-color:rgba(255,255,255,.12)!important}
#nb .activity-message{color:hsl(209,60%,80%)!important}
#nb .runtime-card{background-color:rgba(255,255,255,.06)!important;background:rgba(255,255,255,.06)!important;background-image:none!important;border-color:hsla(209,55%,70%,.34)!important}
#nb .runtime-glyph{background:rgba(255,255,255,.06)!important;border-color:hsla(209,55%,70%,.34)!important;color:hsl(208,60%,80%)!important}
#nb .runtime-title small{color:hsl(209,60%,80%)!important}
#nb .summary-card{border-color:rgba(255,255,255,.12)!important;background:rgba(255,255,255,.06)!important}
#nb .summary-card .kicker{color:hsl(209,60%,80%)!important}
#nb .workspace-card .number{color:hsl(209,60%,80%)!important}
#nb .mini-chip{border-color:rgba(255,255,255,.12)!important;background:rgba(255,255,255,.06)!important}
#nb .instrument-card .device-icon{background:rgba(255,255,255,.06)!important;color:hsl(217,73%,80%)!important}
#nb .timebase-card{border-color:rgba(255,255,255,.12)!important;background:rgba(255,255,255,.06)!important}
#nb .segmented{background:rgba(255,255,255,.06)!important;border-color:rgba(255,255,255,.12)!important}
#nb .segmented button.active{background:rgba(255,255,255,.06)!important;color:hsl(217,75%,80%)!important}
#nb .modal{background:rgba(255,255,255,.06)!important;background-image:none!important;border-color:rgba(255,255,255,.12)!important}
#nb .modal-close{background:rgba(255,255,255,.06)!important}
#nb .modal-actions{border-top-color:rgba(255,255,255,.12)!important}
#nb .toast{background:rgba(255,255,255,.06)!important;border-color:rgba(255,255,255,.12)!important}
#nb .toast-mark{background:rgba(255,255,255,.06)!important;color:hsl(218,72%,80%)!important}
#nb .toast.success .toast-mark{background:rgba(255,255,255,.06)!important;color:hsl(158,76%,80%)!important}
#nb .toast.error .toast-mark{background:rgba(255,255,255,.06)!important;color:hsl(354,60%,80%)!important}
#nb .toast.warning .toast-mark{background:hsla(38,80%,62%,.15)!important;color:hsl(36,89%,80%)!important}
#nb .loading-skeleton{background:rgba(255,255,255,.06)!important;background-image:none!important}
#nb .db-state>svg{color:hsl(208,60%,80%)!important}
#nb .runtime-pill.good{color:hsl(159,82%,80%)!important}
#nb .account-summary{background:rgba(255,255,255,.06)!important}
#nb .saved-config-row{border-color:rgba(255,255,255,.12)!important;background:rgba(255,255,255,.06)!important}
#nb .saved-config-icon{background:hsla(145,55%,62%,.15)!important;color:hsl(158,70%,80%)!important}
#nb .saved-config-state{color:hsl(159,65%,80%)!important;background:rgba(255,255,255,.06)!important;border-color:hsla(147,55%,70%,.34)!important}
#nb .instrument-modal .modal-actions{background:rgba(255,255,255,.06)!important}
#nb .db-readonly-note{background:rgba(255,255,255,.06)!important}
#nb .instrument-modal input[readonly]{background:rgba(255,255,255,.06)!important}
#nb .wizard-progress span{background:rgba(255,255,255,.06)!important}
#nb .wizard-step{background:rgba(255,255,255,.06)!important}
#nb .wizard-step.active{border-color:hsla(216,66%,70%,.34)!important}
#nb .parameter-editor{background:rgba(255,255,255,.06)!important}
#nb .config-empty-entity{background:rgba(255,255,255,.06)!important}
#nb .config-entity-row{border-color:rgba(255,255,255,.12)!important;background:rgba(255,255,255,.06)!important}
#nb .wizard-step:not(.active){background:rgba(255,255,255,.06)!important}
#nb .wizard-progress{background:rgba(255,255,255,.06)!important;background-image:none!important}
#nb .wizard-modal .modal-actions{background:rgba(255,255,255,.06)!important}
@media (max-width:700px){#nb .modal-head{background:rgba(255,255,255,.06)!important}}
@media (max-width:700px){#nb .wizard-step-actions{background:rgba(255,255,255,.06)!important;background-image:none!important}}
#nb .wizard-saved-row{border-color:rgba(255,255,255,.12)!important;background:rgba(255,255,255,.06)!important}
#nb .parameter-id-badge{background:rgba(255,255,255,.06)!important;color:hsl(220,90%,80%)!important}
#nb .parameter-saved-row{border-color:hsla(210,55%,70%,.34)!important;background:rgba(255,255,255,.06)!important}
#nb .parameter-editor-active{border-color:hsla(218,80%,70%,.34)!important}
#nb .staged-device-modal .modal-actions{background:rgba(255,255,255,.06)!important}
#nb .met-window{background:rgba(255,255,255,.06)!important}
#nb .met-kpi{background:rgba(255,255,255,.06)!important;background-image:none!important}
#nb .met-kpi>small, #nb .met-panel header small{color:hsl(209,60%,80%)!important}
#nb .met-panel{background:rgba(255,255,255,.06)!important;background-image:none!important}
#nb .configuration-nav-stack{background:rgba(255,255,255,.06)!important;background-image:none!important}
#nb .configuration-tabs{background:rgba(255,255,255,.06)!important}
#nb .station-entity-tabs{background:rgba(255,255,255,.06)!important}
#nb .ps-progress-strip span{background:rgba(255,255,255,.06)!important;color:hsl(210,60%,80%)!important}
#nb .ps-progress-strip span.done, #nb .ps-progress-strip span.active{border-color:hsla(218,80%,70%,.34)!important;background:rgba(255,255,255,.06)!important;color:hsl(215,79%,80%)!important}
#nb .ps-parse-result{border-color:hsla(150,55%,70%,.34)!important;background:rgba(255,255,255,.06)!important}
#nb .live-page-head h1{color:hsl(213,71%,80%)!important}
#nb .station-pill{border-color:hsla(211,55%,70%,.34)!important;background:rgba(255,255,255,.06)!important;color:hsl(210,60%,80%)!important}
#nb .live-updated small{color:hsl(211,60%,80%)!important}
#nb .live-updated strong{color:hsl(210,60%,80%)!important}
#nb .auto-refresh-pill{color:hsl(210,60%,80%)!important}
#nb .auto-refresh-pill b{color:hsl(209,60%,80%)!important;border-color:rgba(255,255,255,.12)!important;background:rgba(255,255,255,.06)!important}
#nb .live-tabs{border-color:hsla(211,55%,70%,.34)!important;background:rgba(255,255,255,.06)!important}
#nb .live-tabs button{border-right-color:rgba(255,255,255,.12)!important;color:hsl(210,60%,80%)!important}
#nb .live-tabs button:hover{background:rgba(255,255,255,.06)!important;color:hsl(217,75%,80%)!important}
#nb .live-tabs button.active{background:rgba(255,255,255,.06)!important;color:hsl(218,87%,80%)!important}
#nb .live-card-reference{border-color:hsla(210,55%,70%,.34)!important;background:rgba(255,255,255,.06)!important;background-image:none!important}
#nb .live-card-reference .status-chip{background:rgba(255,255,255,.06)!important;border-color:hsla(155,55%,70%,.34)!important;color:hsl(159,77%,80%)!important}
#nb .live-card-reference .live-value span{color:hsl(211,60%,80%)!important}
#nb .combined-note{background:rgba(255,255,255,.06)!important;color:hsl(212,60%,80%)!important}
#nb .combined-note svg{color:hsl(218,89%,80%)!important}
#nb .combined-panel{border-color:hsla(210,55%,70%,.34)!important;background:rgba(255,255,255,.06)!important;background-image:none!important}
#nb .combined-title-row{border-bottom-color:rgba(255,255,255,.12)!important}
#nb .combined-chip{border-color:rgba(255,255,255,.12)!important;background:rgba(255,255,255,.06)!important;color:hsl(211,60%,80%)!important}
#nb .combined-check{background:rgba(255,255,255,.06)!important}
#nb .combined-canvas-wrap{border-color:rgba(255,255,255,.12)!important;background:rgba(255,255,255,.06)!important}
#nb .combined-empty{color:hsl(211,60%,80%)!important}
#nb .combined-empty strong{color:hsl(209,60%,80%)!important}
#nb .met-summary-card{border-color:hsla(210,55%,70%,.34)!important;background:rgba(255,255,255,.06)!important;background-image:none!important}
#nb .met-summary-value span{color:hsl(212,60%,80%)!important}
#nb .met-summary-card p{color:hsl(212,60%,80%)!important}
#nb .met-feature-panel, #nb .met-guidance-panel, #nb .met-trend-panel{border-color:hsla(210,55%,70%,.34)!important;background:rgba(255,255,255,.06)!important;background-image:none!important}
#nb .met-panel-heading h2{color:hsl(210,60%,80%)!important}
#nb .met-panel-heading p{color:hsl(209,60%,80%)!important}
#nb .met-panel-heading>svg{color:hsl(210,60%,80%)!important}
#nb .rose-summary small{color:hsl(211,60%,80%)!important}
#nb .rose-summary>strong{color:hsl(218,86%,80%)!important}
#nb .wind-speed-legend span{color:hsl(210,60%,80%)!important}
#nb .wind-speed-legend .s5{background:hsla(51,80%,62%,.15)!important}
#nb .pollution-legend{color:hsl(211,60%,80%)!important}
#nb .pollution-legend strong{color:hsl(209,60%,80%)!important}
#nb .compass-values strong:first-child{color:hsl(214,78%,80%)!important}
#nb .compass-values b{color:hsl(214,78%,80%)!important}
#nb .compass-values strong:nth-of-type(2){color:hsl(214,78%,80%)!important}
#nb .compass-values small{color:hsl(210,60%,80%)!important}
#nb .met-guide-table{border-color:rgba(255,255,255,.12)!important}
#nb .met-guide-table>div{border-bottom-color:rgba(255,255,255,.12)!important}
#nb .met-guide-table b{background:rgba(255,255,255,.06)!important;color:hsl(208,60%,80%)!important}
#nb .met-guide-table span:first-child{border-right-color:rgba(255,255,255,.12)!important;color:hsl(209,60%,80%)!important}
#nb .met-guide-table span:last-child{color:hsl(210,60%,80%)!important}
@media (max-width:1450px){#nb .met-guide-table>div{border-color:rgba(255,255,255,.12)!important}}
@media (max-width:1450px){#nb .met-guide-table span:first-child{border-bottom-color:rgba(255,255,255,.12)!important}}
#nb .parameter-chart-guidance{border-color:hsla(210,55%,70%,.34)!important;background:rgba(255,255,255,.06)!important;background-image:none!important}
#nb .parameter-chart-guidance>strong{color:hsl(211,63%,80%)!important}
#nb .parameter-chart-guidance>div{border-color:rgba(255,255,255,.12)!important;background:rgba(255,255,255,.06)!important}
#nb .parameter-chart-guidance span, #nb .parameter-chart-guidance b{border-bottom-color:rgba(255,255,255,.12)!important}
#nb .parameter-chart-guidance span{color:hsl(208,60%,80%)!important;background:rgba(255,255,255,.06)!important;border-right-color:rgba(255,255,255,.12)!important}
#nb .parameter-chart-guidance b{color:hsl(212,63%,80%)!important}
@media (max-width:700px){#nb .parameter-chart-guidance span, #nb .parameter-chart-guidance b{border-bottom-color:rgba(255,255,255,.12)!important}}
#nb .met-subtabs{border-color:hsla(211,55%,70%,.34)!important;background:rgba(255,255,255,.06)!important}
#nb .met-subtabs button{color:hsl(212,60%,80%)!important}
#nb .directional-map-card{border-color:hsla(209,55%,70%,.34)!important;background:rgba(255,255,255,.06)!important;background-image:none!important}
#nb .check-chip{border-color:rgba(255,255,255,.12)!important;background:rgba(255,255,255,.06)!important;color:hsl(209,60%,80%)!important}
#nb .tabular-mode-tabs{border-color:hsla(211,55%,70%,.34)!important;background:rgba(255,255,255,.06)!important}
#nb .tabular-mode-tabs button.active{background:rgba(255,255,255,.06)!important;color:hsl(218,89%,80%)!important}
#nb .timebase-tab-strip button{border-color:hsla(210,55%,70%,.34)!important;background:rgba(255,255,255,.06)!important;color:hsl(210,60%,80%)!important}
#nb .timebase-tab-strip button.active{border-color:hsla(218,80%,70%,.34)!important;background:rgba(255,255,255,.06)!important;color:hsl(218,89%,80%)!important}
#nb .tabular-range-note{border-color:hsla(211,57%,70%,.34)!important;background:rgba(255,255,255,.06)!important;color:hsl(211,60%,80%)!important}
#nb .tabular-stat{border-color:rgba(255,255,255,.12)!important;background:rgba(255,255,255,.06)!important}
#nb .tabular-stat strong{color:hsl(209,60%,80%)!important}
#nb .tabular-stat span, #nb .tabular-stat b{color:hsl(211,60%,80%)!important}
#nb .tabular-stat b{color:hsl(209,60%,80%)!important}
#nb .tabular-table-wrap{border-color:rgba(255,255,255,.12)!important}
#nb .tabular-matrix .sticky-col{background:rgba(255,255,255,.06)!important}
#nb .tabular-matrix thead .sticky-col{background:rgba(255,255,255,.06)!important}
#nb .tabular-matrix .invalid-cell{background:rgba(255,255,255,.06)!important;color:hsl(352,60%,80%)!important}
#nb .cell-quality{color:hsl(351,60%,80%)!important}
#nb .met-preset-library{border-color:hsla(209,55%,70%,.34)!important;background:rgba(255,255,255,.06)!important;background-image:none!important}
#nb .met-preset-title strong{color:hsl(210,63%,80%)!important}
#nb .met-preset-chip{border-color:hsla(208,55%,70%,.34)!important;background:rgba(255,255,255,.06)!important;color:hsl(209,60%,80%)!important}
#nb .met-preset-chip:hover{border-color:hsla(218,80%,70%,.34)!important;background:rgba(255,255,255,.06)!important;color:hsl(218,89%,80%)!important}
#nb .met-preset-chip.is-added{border-color:hsla(152,55%,70%,.34)!important;background:rgba(255,255,255,.06)!important;color:hsl(153,60%,80%)!important}
#nb .met-preset-chip.is-custom{color:hsl(218,89%,80%)!important}
#nb .pollutant-parameter-row .check-chip:has(input:checked){border-color:hsla(219,80%,70%,.34)!important;background:rgba(255,255,255,.06)!important;color:hsl(218,89%,80%)!important}
#nb .pollutant-parameter-row .check-chip:has(input:checked) small{color:hsl(214,60%,80%)!important}
#nb .toolbar-icon:hover, #nb .account-control:hover{border-color:hsla(211,55%,70%,.34)!important;background:rgba(255,255,255,.06)!important}
#nb .metric-icon.neutral{background:rgba(255,255,255,.06)!important}
#nb .dashboard-station-card{background:rgba(255,255,255,.06)!important;background-image:none!important}
#nb .dashboard-station-icon{color:hsl(218,89%,80%)!important}
#nb .dashboard-station-main small{color:hsl(212,60%,80%)!important}
#nb .dashboard-station-main h1{color:hsl(210,60%,80%)!important}
#nb .dashboard-kpi-card{border-color:hsla(210,55%,70%,.34)!important;background:rgba(255,255,255,.06)!important;color:hsl(210,60%,80%)!important}
#nb .dashboard-kpi-card:hover{border-color:hsla(212,63%,70%,.34)!important}
#nb .dashboard-kpi-card>svg{color:hsl(209,60%,80%)!important}
#nb .dashboard-kpi-icon{background:rgba(255,255,255,.06)!important;color:hsl(218,89%,80%)!important}
#nb .dashboard-kpi-card strong{color:hsl(210,60%,80%)!important}
#nb .dashboard-tab-head h2{color:hsl(210,60%,80%)!important}
#nb .dashboard-matrix-wrap{border-color:rgba(255,255,255,.12)!important}
#nb .dashboard-live-matrix thead .sticky-param-col{background:rgba(255,255,255,.06)!important}
#nb .dashboard-live-matrix .sticky-param-col strong{color:hsl(210,60%,80%)!important}
#nb .dashboard-live-matrix .sticky-param-col small{color:hsl(212,60%,80%)!important}
#nb .control-center-icon{background:rgba(255,255,255,.06)!important;color:hsl(218,89%,80%)!important;border-color:hsla(212,60%,70%,.34)!important}
#nb .control-center-head h1{color:hsl(210,60%,80%)!important}
#nb .acquisition-title-icon, #nb .acquisition-status-icon{border-color:hsla(210,55%,70%,.34)!important;background:rgba(255,255,255,.06)!important;color:hsl(218,89%,80%)!important}
#nb .acquisition-card-title h2{color:hsl(210,60%,80%)!important}
#nb .acquisition-status-icon{color:hsl(208,60%,80%)!important}
#nb .acquisition-status-item small{color:hsl(209,60%,80%)!important}
#nb .acquisition-status-item strong{color:hsl(210,60%,80%)!important}
#nb .recent-events-icon{background:rgba(255,255,255,.06)!important;color:hsl(218,89%,80%)!important;border-color:hsla(212,60%,70%,.34)!important}
#nb .recent-events-title h2{color:hsl(210,60%,80%)!important}
#nb .recent-events-table-wrap{border-color:rgba(255,255,255,.12)!important;background:rgba(255,255,255,.06)!important}
#nb .recent-events-table th, #nb .recent-events-table td{border-bottom-color:rgba(255,255,255,.12)!important;color:hsl(211,60%,80%)!important}
#nb .recent-events-table th{background:rgba(255,255,255,.06)!important}
#nb .recent-events-table tbody tr:hover td{background:rgba(255,255,255,.06)!important}
#nb .event-level.warn{color:hsl(37,81%,80%)!important}
#nb .event-level.bad{color:hsl(354,60%,80%)!important}
#nb .event-level.info{color:hsl(218,68%,80%)!important}
#nb .live-chart-zone{border-top-color:rgba(255,255,255,.12)!important}
#nb .database-config-summary>div{background:rgba(255,255,255,.06)!important}
#nb .database-config-note{border-color:hsla(210,55%,70%,.34)!important;background:rgba(255,255,255,.06)!important}
#nb .config-editor-row{border-bottom-color:rgba(255,255,255,.12)!important}
#nb .network-map-row{border-color:rgba(255,255,255,.12)!important;background:rgba(255,255,255,.06)!important}
#nb .analysis-svg circle{fill:hsl(218,89%,80%)!important}
#nb .analysis-stat-strip span{border-color:rgba(255,255,255,.12)!important;background:rgba(255,255,255,.06)!important}
#nb .analysis-stat-strip b{color:hsl(210,60%,80%)!important}
#nb .rose-sector{border-color:rgba(255,255,255,.12)!important}
#nb .rose-sector>span{color:hsl(210,60%,80%)!important}
#nb .autocheck-schedule-row{border-color:rgba(255,255,255,.12)!important}
#nb .mapping-builder-head{border-top-color:rgba(255,255,255,.12)!important}
#nb .mapping-builder-head strong{color:hsl(210,60%,80%)!important}
#nb .network-bind-help svg, #nb .analysis-config-note svg{color:hsl(218,89%,80%)!important}
#nb .network-bind-help strong{color:hsl(210,60%,80%)!important}
#nb .network-bind-help b{color:hsl(210,60%,80%)!important}
#nb .network-card-save{border-top-color:rgba(255,255,255,.12)!important}
#nb .network-mapping-modal .network-mapping-note{background:rgba(255,255,255,.06)!important;border-color:rgba(255,255,255,.12)!important}
#nb .network-api-access-choice{border-color:rgba(255,255,255,.12)!important;background:rgba(255,255,255,.06)!important}
#nb .network-api-access-choice strong{color:hsl(210,60%,80%)!important}
#nb .report-columns-panel{border-color:rgba(255,255,255,.12)!important;background:rgba(255,255,255,.06)!important}
#nb .report-columns-head strong{color:hsl(210,60%,80%)!important}
#nb .report-fixed-columns>span{background:rgba(255,255,255,.06)!important;border-color:hsla(210,58%,70%,.34)!important;color:hsl(210,60%,80%)!important}
#nb .report-fixed-columns b, #nb .report-column-index{background:rgba(255,255,255,.06)!important;color:hsl(218,89%,80%)!important;border-color:hsla(210,55%,70%,.34)!important}
#nb .report-selected-row{border-color:rgba(255,255,255,.12)!important;background:rgba(255,255,255,.06)!important}
#nb .report-selected-copy strong{color:hsl(210,60%,80%)!important}
#nb .report-card-actions{border-top-color:rgba(255,255,255,.12)!important}
#nb .analysis-saved-row{border-color:rgba(255,255,255,.12)!important;background:rgba(255,255,255,.06)!important}
#nb .analysis-saved-row strong{color:hsl(210,60%,80%)!important}
#nb .analysis-saved-index{background:rgba(255,255,255,.06)!important;color:hsl(218,89%,80%)!important}
#nb .analysis-builder-footer{border-top-color:rgba(255,255,255,.12)!important}
#nb .analysis-group-builder{border-color:rgba(255,255,255,.12)!important;background:rgba(255,255,255,.06)!important}
#nb .analysis-group-builder-head strong{color:hsl(210,60%,80%)!important}
#nb .analysis-inline-picker{border-color:hsla(211,57%,70%,.34)!important;background:rgba(255,255,255,.06)!important}
#nb .dashboard-last-update{border-color:rgba(255,255,255,.12)!important;background:rgba(255,255,255,.06)!important}
#nb .dashboard-last-update small{color:hsl(210,60%,80%)!important}
#nb .dashboard-last-update strong, #nb .dashboard-last-update span{color:hsl(210,60%,80%)!important}
#nb .dashboard-visual-controls{border-color:hsla(209,55%,70%,.34)!important;background:rgba(255,255,255,.06)!important}
#nb .dashboard-range-copy small{color:hsl(209,60%,80%)!important}
#nb .dashboard-range-copy strong{color:hsl(210,60%,80%)!important}
#nb .dashboard-visual-controls label{color:hsl(211,60%,80%)!important}
#nb .live-comm-dot{border-color:rgba(255,255,255,.12)!important}
#nb .axis-label{fill:hsl(210,60%,80%)!important}
#nb .combined-axis-note{border-color:rgba(255,255,255,.12)!important;background:rgba(255,255,255,.06)!important}
#nb .combined-axis-note strong{color:hsl(209,60%,80%)!important}
#nb .analysis-pro-canvas .status-chip.info{border-color:hsla(188,80%,70%,.34)!important}
#nb .analysis-source-readonly{border-color:rgba(255,255,255,.12)!important;background:rgba(255,255,255,.06)!important;color:hsl(210,60%,80%)!important}
#nb .analysis-inline-kpi{border-color:rgba(255,255,255,.12)!important;background:rgba(255,255,255,.06)!important}
#nb .analysis-inline-kpi small{color:hsl(210,60%,80%)!important}
#nb .analysis-inline-kpi strong{color:hsl(210,60%,80%)!important}
#nb .analysis-running{border-color:hsla(188,80%,70%,.34)!important}
#nb .legend-line.total{background:rgba(255,255,255,.06)!important}
#nb .analysis-pca-bar{fill:hsl(215,60%,80%)!important}
#nb .analysis-voc-config>div>small{color:hsl(210,60%,80%)!important}
#nb .analysis-config-note-hero strong{color:hsl(210,60%,80%)!important}
#nb .analysis-config-note-hero span{color:hsl(210,60%,80%)!important}
#nb .legend-box.unc{border-color:hsla(188,80%,70%,.34)!important}
#nb .staged-device-modal .modal-actions{background:rgba(255,255,255,.06)!important}
#nb .staged-device-modal #wizard-parameters .wizard-step-actions{background:rgba(255,255,255,.06)!important;background-image:none!important}
#nb .staged-device-modal>.modal-actions{background:rgba(255,255,255,.06)!important;border-top-color:hsla(213,55%,70%,.34)!important}
/* ---- from src/daq/webui/shared/pro_max_ui1333.css ---- */
#nb .adq-select-trigger{background:rgba(255,255,255,.06)!important;color:hsl(210,60%,80%)!important}
#nb .adq-select-trigger:hover{background:rgba(255,255,255,.06)!important}
#nb .adq-select-chevron{color:hsl(211,60%,80%)!important}
#nb .adq-select-popover{background:rgba(255,255,255,.06)!important}
#nb .adq-select-option{color:hsl(210,60%,80%)!important}
#nb .adq-select-option:hover, #nb .adq-select-option:focus-visible{background:rgba(255,255,255,.06)!important;color:hsl(217,81%,80%)!important}
#nb .adq-select-option.selected, #nb .adq-select-option[aria-selected="true"]{background:hsla(215,80%,62%,.15)!important;color:hsl(217,81%,80%)!important}
#nb .network-token-panel{background:rgba(255,255,255,.06)!important}
#nb .network-token-copy strong{color:hsl(210,60%,80%)!important}
#nb .network-token-copy small{color:hsl(212,60%,80%)!important}
#nb .adq-select-trigger:disabled{background:rgba(255,255,255,.06)!important}
/* ---- from src/daq/webui/unified/styles.css ---- */
#nb .ref-control-pill{border-color:hsla(213,55%,70%,.34)!important;background:rgba(255,255,255,.06)!important}
#nb .ref-system-status{border-color:hsla(213,55%,70%,.34)!important;background:rgba(255,255,255,.06)!important}
#nb .ref-icon-control:hover, #nb .ref-topbar #refresh-button:hover{background:rgba(255,255,255,.06)!important}
#nb .ref-topbar #account-button .avatar{background:rgba(255,255,255,.06)!important}
#nb .ref-summary-pill{background:rgba(255,255,255,.06)!important}
#nb .ref-refresh{background:rgba(255,255,255,.06)!important}
#nb .ref-metric-tile{background:rgba(255,255,255,.06)!important}
#nb .ref-metric-tile:hover{border-color:hsla(213,55%,70%,.34)!important}
#nb .ref-trend-controls .select{background:rgba(255,255,255,.06)!important}
#nb .ref-trend-legend .combined-chip{background:rgba(255,255,255,.06)!important}
#nb .ref-trend-canvas{border-top-color:rgba(255,255,255,.12)!important}
#nb .ref-table-wrap{background:rgba(255,255,255,.06)!important}
#nb .ref-live-table thead th{background:rgba(255,255,255,.06)!important}
#nb .ref-live-table tbody td{border-bottom-color:rgba(255,255,255,.12)!important;background:rgba(255,255,255,.06)!important}
#nb .ref-live-table tbody tr:nth-child(even) td{background:rgba(255,255,255,.06)!important}
#nb .ref-live-table tbody tr:hover td{background:rgba(255,255,255,.06)!important}
#nb .data-table thead th, #nb .recent-events-table thead th{background:rgba(255,255,255,.06)!important}
#nb .data-table td, #nb .recent-events-table td{border-color:rgba(255,255,255,.12)!important}
#nb .ref-topbar{background:rgba(255,255,255,.06)!important}
#nb .parameter-zoom-trigger:hover, #nb .parameter-zoom-trigger:focus-visible{border-color:hsla(213,55%,70%,.34)!important}
#nb .parameter-zoom-summary{border-color:rgba(255,255,255,.12)!important;background:rgba(255,255,255,.06)!important}
#nb .parameter-zoom-chart-wrap{border-color:rgba(255,255,255,.12)!important;background:rgba(255,255,255,.06)!important}
#nb .ref-metric-tile, #nb .live-card-reference.ref-metric-tile{background:rgba(255,255,255,.06)!important;background-image:none!important}
#nb .param-meta-chip{color:hsl(224,76%,80%)!important}
#nb .param-meta-chip.regulatory{color:hsl(263,70%,80%)!important}
#nb .param-meta-chip.alert{color:hsl(0,74%,80%)!important}
#nb .tile-state-valid{background:rgba(255,255,255,.06)!important;background-image:none!important}
#nb .tile-state-review{background:rgba(255,255,255,.06)!important;background-image:none!important}
#nb .tile-state-maintenance{background:rgba(255,255,255,.06)!important;background-image:none!important}
#nb .tile-state-invalid, #nb .tile-state-fault, #nb .tile-state-alert{background:hsla(0,80%,62%,.15)!important;background-image:none!important}
#nb .tile-state-alert .ref-reading b, #nb .tile-state-invalid .ref-reading b, #nb .tile-state-fault .ref-reading b{color:hsl(0,74%,80%)!important}
#nb .tile-state-maintenance .ref-reading b{color:hsl(263,70%,80%)!important}
#nb .tile-state-review .ref-reading b{color:hsl(26,90%,80%)!important}
#nb .dashboard-live-table-panel.vibrant-table-panel{background:rgba(255,255,255,.06)!important;background-image:none!important}
#nb .dashboard-live-matrix.glass-matrix{background:rgba(255,255,255,.06)!important;border-color:rgba(255,255,255,.12)!important}
#nb .dashboard-live-matrix.glass-matrix thead th{background:rgba(255,255,255,.06)!important;background-image:none!important;border-bottom-color:hsla(213,55%,70%,.34)!important}
#nb .dashboard-live-matrix.glass-matrix tbody td{background:rgba(255,255,255,.06)!important;border-bottom-color:rgba(255,255,255,.12)!important}
#nb .dashboard-live-matrix .sticky-param-col{background:rgba(255,255,255,.06)!important}
#nb .dashboard-live-matrix tbody tr.dashboard-param-row:hover td{background:rgba(255,255,255,.06)!important}
#nb .dashboard-live-matrix tbody tr.state-valid td{background:rgba(255,255,255,.06)!important}
#nb .dashboard-live-matrix tbody tr.state-review td{background:rgba(255,255,255,.06)!important}
#nb .dashboard-live-matrix tbody tr.state-maintenance td{background:rgba(255,255,255,.06)!important}
#nb .dashboard-live-matrix tbody tr.state-invalid td, #nb .dashboard-live-matrix tbody tr.state-fault td, #nb .dashboard-live-matrix tbody tr.state-alert td{background:rgba(255,255,255,.06)!important}
#nb .dashboard-context-menu{background:rgba(255,255,255,.06)!important;border-color:hsla(213,55%,70%,.34)!important}
#nb .dashboard-context-menu button:hover{color:hsl(224,76%,80%)!important}
#nb .dashboard-context-menu button:hover svg{color:hsl(224,76%,80%)!important}
#nb .ref-topbar{background:rgba(255,255,255,.06)!important}
#nb .ref-control-pill, #nb .ref-system-status{background:rgba(255,255,255,.06)!important}
#nb .ref-icon-control:hover, #nb .ref-topbar #refresh-button:hover, #nb .ref-topbar #account-button:hover{background:rgba(255,255,255,.06)!important}
#nb body, #nb .app-main, #nb .page-root{background:rgba(255,255,255,.06)!important;background-image:none!important}
#nb .panel, #nb .card, #nb .workspace-card, #nb .configured-entity-row, #nb .parameter-editor, #nb .config-editor-row, #nb .met-feature-panel, #nb .met-trend-panel, #nb .combined-panel, #nb .analysis-query-panel, #nb .analysis-canvas-panel{background:rgba(255,255,255,.06)!important;background-image:none!important}
#nb .input, #nb .select, #nb textarea, #nb .button:not(.primary):not(.danger){background:rgba(255,255,255,.06)!important}
#nb .configured-empty-state{background:rgba(255,255,255,.06)!important;background-image:none!important}
#nb .configured-empty-state .empty-icon{color:hsl(221,83%,80%)!important}
#nb .historian-independence-note{background:rgba(255,255,255,.06)!important;background-image:none!important}
#nb .historian-independence-note svg{color:hsl(200,90%,80%)!important}
#nb .ref-metric-tile, #nb .live-card-reference.ref-metric-tile{background:rgba(255,255,255,.06)!important;background-image:none!important;border-color:hsla(213,55%,70%,.34)!important}
#nb .ref-metric-tile.tile-state-alert, #nb .ref-metric-tile.tile-state-invalid, #nb .ref-metric-tile.tile-state-fault{background:hsla(0,80%,62%,.15)!important;background-image:none!important}
#nb .ref-metric-tile.tile-state-review{background:hsla(48,80%,62%,.15)!important;background-image:none!important}
#nb .ref-metric-tile.tile-state-maintenance{background:rgba(255,255,255,.06)!important;background-image:none!important}
#nb .ref-dashboard-tiles .ref-metric-tile{background:rgba(255,255,255,.06)!important;background-image:none!important}
#nb .ref-dashboard-tiles .ref-metric-tile::before{background:rgba(255,255,255,.06)!important;background-image:none!important}
#nb .ref-dashboard-tiles .tile-state-alert, #nb .ref-dashboard-tiles .tile-state-invalid, #nb .ref-dashboard-tiles .tile-state-fault{background:hsla(0,80%,62%,.15)!important;background-image:none!important}
#nb .ref-dashboard-tiles .tile-state-review{background:hsla(48,80%,62%,.15)!important;background-image:none!important}
#nb .ref-dashboard-tiles .tile-state-maintenance{background:rgba(255,255,255,.06)!important;background-image:none!important}
#nb .ref-trend-legend .combined-chip{background:rgba(255,255,255,.06)!important;border-color:rgba(255,255,255,.12)!important}
#nb .ref-dashboard-tiles .ref-metric-tile{background:rgba(255,255,255,.06)!important;background-image:none!important;border-color:hsla(213,55%,70%,.34)!important}
#nb .ref-dashboard-tiles .ref-metric-tile::before{background:rgba(255,255,255,.06)!important;background-image:none!important}
#nb .dashboard-live-matrix tbody tr.state-maintenance td, #nb .ref-live-table tbody tr.state-maintenance td{background:hsla(34,80%,62%,.15)!important}
#nb .ref-live-table tbody tr.state-maintenance:hover td, #nb .dashboard-live-matrix tbody tr.state-maintenance:hover td{background:hsla(33,80%,62%,.15)!important}
#nb .ref-live-table tbody tr.state-maintenance .ref-status{background:hsla(34,80%,62%,.15)!important;color:hsl(15,79%,80%)!important}
#nb .analysis-mode-tabs{background:rgba(255,255,255,.06)!important}
#nb .analysis-mode-tabs button:hover{color:hsl(224,76%,80%)!important}
#nb .analysis-glass-ribbon, #nb .analysis-glass-panel{background:rgba(255,255,255,.06)!important;background-image:none!important}
#nb .analysis-type-tabs button{background:rgba(255,255,255,.06)!important}
#nb .analysis-type-tabs button:hover{border-color:hsla(213,55%,70%,.34)!important}
#nb .analysis-type-tabs button.active{background:rgba(255,255,255,.06)!important;border-color:hsla(213,55%,70%,.34)!important}
#nb .analysis-auto-badge{background:rgba(255,255,255,.06)!important;border-color:hsla(152,76%,70%,.34)!important;color:hsl(163,90%,80%)!important}
#nb .analysis-query-grid .input, #nb .analysis-query-grid .select{background:rgba(255,255,255,.06)!important}
#nb .analysis-query-grid .analysis-source-readonly, #nb .analysis-query-grid .analysis-inline-kpi{background:rgba(255,255,255,.06)!important;background-image:none!important;border-color:hsla(212,80%,70%,.34)!important}
#nb .analysis-query-grid .analysis-source-readonly strong, #nb .analysis-query-grid .analysis-inline-kpi strong{color:hsl(224,64%,80%)!important}
#nb .analysis-pro-canvas .analysis-kpi{background:rgba(255,255,255,.06)!important;background-image:none!important;border-color:hsla(213,80%,70%,.34)!important}
#nb .analysis-report-panel{background:rgba(255,255,255,.06)!important;background-image:none!important}
#nb .analysis-report-status{background:rgba(255,255,255,.06)!important;color:hsl(224,76%,80%)!important;border-color:hsla(213,80%,70%,.34)!important}
#nb .analysis-report-orb::after{border-color:rgba(255,255,255,.12)!important}
#nb .analysis-report-context span{color:hsl(221,83%,80%)!important}
#nb .analysis-report-highlight{background:rgba(255,255,255,.06)!important;background-image:none!important;border-color:hsla(214,80%,70%,.34)!important}
#nb .analysis-report-highlight strong{color:hsl(224,64%,80%)!important}
#nb .analysis-report-alert{background:rgba(255,255,255,.06)!important;border-color:hsla(32,80%,70%,.34)!important}
#nb .analysis-report-alert b{color:hsl(17,88%,80%)!important}
#nb .analysis-report-alert span{color:hsl(15,75%,80%)!important}
#nb .analysis-report-good{background:rgba(255,255,255,.06)!important;border-color:hsla(152,76%,70%,.34)!important}
#nb .analysis-report-good b{color:hsl(163,90%,80%)!important}
#nb .analysis-report-good span{color:hsl(163,88%,80%)!important}
#nb .analysis-report-note{background:rgba(255,255,255,.06)!important}
#nb .analysis-running-orbit{border-color:hsla(213,80%,70%,.34)!important}
#nb .ref-live-primary-zone, #nb .ref-live-met-zone, #nb .dashboard-mini-windrose, #nb .ref-trend-panel, #nb .ref-table-panel{background:rgba(255,255,255,.06)!important;background-image:none!important;border-color:rgba(255,255,255,.12)!important}
#nb .dashboard-mini-range{background:rgba(255,255,255,.06)!important}
#nb .dashboard-mini-rose-meta div{background:rgba(255,255,255,.06)!important}
#nb .ref-live-table-compact th, #nb .ref-live-table-compact td{border-bottom-color:hsla(213,55%,70%,.34)!important;border-right-color:rgba(255,255,255,.12)!important}
#nb .ref-live-table-compact thead th{background:rgba(255,255,255,.06)!important}
#nb .ref-live-table-compact tbody tr.row-valid td{background:hsla(141,80%,62%,.15)!important}
#nb .ref-live-table-compact tbody tr.row-maintenance td{background:hsla(34,80%,62%,.15)!important}
#nb .ref-live-table-compact tbody tr.row-invalid td{background:hsla(0,80%,62%,.15)!important}
#nb .ref-dashboard-tiles .ref-metric-tile, #nb .ref-met-grid .ref-metric-tile, #nb .ref-gasdust-grid .ref-metric-tile{background:rgba(255,255,255,.06)!important;background-image:none!important;border-color:hsla(213,55%,70%,.34)!important}
#nb .ref-live-primary-zone, #nb .ref-live-met-zone, #nb .dashboard-mini-windrose, #nb .ref-trend-panel, #nb .ref-table-panel{background:rgba(255,255,255,.06)!important;background-image:none!important;border-color:hsla(213,55%,70%,.34)!important}
#nb .ref-dashboard-tiles .ref-metric-tile, #nb .ref-met-grid .ref-metric-tile, #nb .ref-gasdust-grid .ref-metric-tile{background:rgba(255,255,255,.06)!important;background-image:none!important;border-color:hsla(213,55%,70%,.34)!important}
#nb .tile-autocheck{border-color:rgba(255,255,255,.12)!important;background:rgba(255,255,255,.06)!important}
#nb .tile-autocheck:hover{background:rgba(255,255,255,.06)!important}
#nb .tile-autocheck.running{color:hsl(26,90%,80%)!important;background:rgba(255,255,255,.06)!important}
#nb .dashboard-direction-card{background:rgba(255,255,255,.06)!important;background-image:none!important;border-color:hsla(213,55%,70%,.34)!important}
#nb .dashboard-direction-card.empty{background:rgba(255,255,255,.06)!important}
#nb .direction-ring{background:rgba(255,255,255,.06)!important;background-image:none!important;border-color:hsla(213,55%,70%,.34)!important}
#nb .ref-trend-legend.legend-bottom{border-top-color:hsla(213,55%,70%,.34)!important}
#nb .timebase-pill{color:hsl(224,76%,80%)!important}
#nb .staged-device-modal>.modal-head{background:rgba(255,255,255,.06)!important}
#nb .staged-device-modal>.modal-actions{border-top-color:hsla(213,55%,70%,.34)!important;background:rgba(255,255,255,.06)!important}
#nb .staged-device-modal .wizard-step-actions{background:rgba(255,255,255,.06)!important;background-image:none!important}
#nb .ref-bottom-split .ref-trend-legend.legend-bottom{background:rgba(255,255,255,.06)!important;background-image:none!important;border-top-color:hsla(213,55%,70%,.34)!important}
#nb .ref-table-wrap .pivot-timebase-table th:nth-child(3), #nb .ref-table-wrap .pivot-timebase-table td:nth-child(3){background:rgba(255,255,255,.06)!important}
/* ---- from src/daq/webui/shared/global_premium_glass.css ---- */
#nb .input, #nb .select, #nb .touch-input, #nb .touch-select, #nb input:not([type="checkbox"]):not([type="radio"]), #nb select, #nb textarea{background:rgba(255,255,255,.06)!important}


/* ======================================================================
   LEGACY MIGRATION SOURCE: src/daq/webui/shared/nebula.css
   Consolidated into the single universal Project 00 stylesheet.
   ====================================================================== */
/* ==========================================================================
   AESST DAS UI14 · Nebula dark glass design system
   --------------------------------------------------------------------------
   Loaded last on every workspace page (html#nb). Restyles surfaces only:
   colour, translucency, blur, radius, shadow, type. Layout geometry and the
   tested DOM contracts stay as they are.

   Shape rule   : interactive controls are pills (999px); cards 24px;
                  inner cards 16px; inputs 14px; chips 999px.
   Accent rule  : one UI accent (amber). Parameter colours are data colours.
   Performance  : backdrop-filter only on a few large shells (top bar, panels,
                  modals, menus, toasts). Repeated items (tiles, rows, chips)
                  use translucent fills without blur, so 50 live parameters
                  stay smooth in WebView2 / WebKit.
   ========================================================================== */

@font-face{font-family:"Sora";src:url("fonts/sora-latin-wght-normal.woff2") format("woff2-variations"),url("fonts/sora-latin-wght-normal.woff2") format("woff2");font-weight:100 800;font-style:normal;font-display:swap}
@font-face{font-family:"JetBrains Mono";src:url("fonts/jetbrains-mono-latin-400-normal.woff2") format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"JetBrains Mono";src:url("fonts/jetbrains-mono-latin-500-normal.woff2") format("woff2");font-weight:500;font-display:swap}
@font-face{font-family:"JetBrains Mono";src:url("fonts/jetbrains-mono-latin-600-normal.woff2") format("woff2");font-weight:600 800;font-display:swap}

:root#nb{
  color-scheme:dark;
  --nb-bg:var(--adq-ui-canvas,#0d0a1f);
  --nb-ink:var(--adq-ui-text,#f4f1ff);
  --nb-ink-2:#dcd6f5;
  --nb-muted:var(--adq-ui-text-muted,#c1b9e6);
  --nb-faint:#9d95c4;
  --nb-accent:var(--adq-ui-accent,#ffb547);
  --nb-accent-ink:#2a1600;
  --nb-accent-hover:#ffc56e;
  --nb-pink:#ff6b9e;--nb-aqua:#3ddbd9;--nb-lilac:#b98cff;--nb-peri:#7c9cff;--nb-green:#5be38a;--nb-orange:#ff8a3d;--nb-red:#ff5c7a;--nb-cyan:#19c3e6;

  --nb-glass:linear-gradient(155deg,rgba(255,255,255,.105),rgba(255,255,255,.045) 60%,rgba(255,255,255,.065));
  --nb-glass-inner:linear-gradient(160deg,rgba(255,255,255,.075),rgba(255,255,255,.03));
  --nb-fill:rgba(255,255,255,.06);
  --nb-fill-2:rgba(255,255,255,.1);
  --nb-fill-3:rgba(255,255,255,.16);
  --nb-edge:rgba(255,255,255,.14);
  --nb-edge-2:rgba(255,255,255,.09);
  --nb-edge-strong:rgba(255,255,255,.22);
  --nb-blur:blur(26px) saturate(165%);
  --nb-blur-sm:blur(14px) saturate(150%);
  --nb-shadow:inset 0 1px 0 rgba(255,255,255,.14),inset 0 -1px 0 rgba(255,255,255,.03),0 24px 48px -28px rgba(8,2,30,.95);
  --nb-shadow-lift:inset 0 1px 0 rgba(255,255,255,.18),0 30px 60px -26px rgba(8,2,30,1);
  --nb-r-card:var(--adq-ui-radius-card,24px);--nb-r-inner:16px;--nb-r-input:var(--adq-ui-radius-control,14px);--nb-r-pill:999px;
  --nb-ease:cubic-bezier(.2,.8,.2,1);
  --nb-fast:160ms var(--nb-ease);
  --nb-sans:"Sora","Segoe UI Variable Text","Segoe UI",system-ui,-apple-system,Roboto,sans-serif;
  --nb-mono:"JetBrains Mono",ui-monospace,"Cascadia Mono",Consolas,monospace;

  /* Legacy token sets re-pointed so older rules follow the new palette */
  --glass-bg:rgba(255,255,255,.08);--glass-bg-strong:rgba(255,255,255,.1);--glass-bg-soft:rgba(255,255,255,.05);
  --glass-edge:var(--nb-edge);--glass-edge-soft:var(--nb-edge-2);--glass-shadow:var(--nb-shadow);--glass-shadow-hover:var(--nb-shadow-lift);
  --glass-radius:var(--nb-r-card);--ui-text:var(--nb-ink);--ui-muted:var(--nb-muted);--ui-primary:var(--nb-accent);--ui-canvas:var(--nb-bg);
  --text:var(--nb-ink);--muted:var(--nb-muted);--line:var(--nb-edge-2);--line-2:var(--nb-edge-2);--surface:#1a1433;--primary:var(--nb-accent);--primary-2:var(--nb-accent);
}

/* ---------------------------------------------------------------- 1. canvas */
#nb#nb{background:var(--nb-bg)!important}
/* body stays transparent so the colour mesh (body::before, z-index -2) shows through */
#nb#nb body{background:transparent!important;color:var(--nb-ink)!important;font-family:var(--nb-sans)!important;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
#nb#nb body::before{
  content:"";position:fixed;inset:-8vmax;z-index:-2;pointer-events:none;
  background:
    radial-gradient(44vmax 38vmax at 4% 6%,rgba(224,64,155,.40),transparent 66%),
    radial-gradient(46vmax 40vmax at 58% -12%,rgba(124,77,255,.38),transparent 66%),
    radial-gradient(40vmax 38vmax at 104% 38%,rgba(25,195,230,.26),transparent 66%),
    radial-gradient(50vmax 42vmax at 28% 110%,rgba(255,138,61,.26),transparent 66%),
    radial-gradient(40vmax 36vmax at 94% 106%,rgba(124,77,255,.30),transparent 66%),
    var(--nb-bg);
  /* Static on purpose: a moving backdrop forces every blurred panel to re-blur each frame. */
}
#nb#nb body::after{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;opacity:.06;mix-blend-mode:overlay;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='160' height='160'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2' stitchTiles='stitch'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>")}
@keyframes nb-drift{0%{transform:translate3d(0,0,0) scale(1)}50%{transform:translate3d(-2vmax,1.4vmax,0) scale(1.04)}100%{transform:translate3d(1.6vmax,-1.2vmax,0) scale(1.02)}}
#nb#nb .app-shell,#nb#nb .app-main,#nb#nb #page-root,#nb#nb .page-root,#nb#nb .page,#nb#nb .live-monitor-page,#nb#nb .dashboard-page,#nb#nb .ref-dashboard,#nb#nb .ref-dashboard-flow,#nb#nb .ref-bottom-split,#nb#nb .ref-live-split,#nb#nb .ref-live-window{background:transparent!important;background-image:none!important;box-shadow:none!important}

/* ------------------------------------------------------------ 2. text base */
#nb#nb :is(p,small,.muted,.hint,.help,.description,figcaption,caption):not([style*="color"]){color:var(--nb-muted)!important}
#nb#nb :is(h1,h2,h3,h4):not([style*="color"]){color:var(--nb-ink)!important;letter-spacing:-.02em}
#nb#nb .page-head h1{font-weight:700!important;letter-spacing:-.03em!important}
#nb#nb .page-head p:not([style*="color"]){color:var(--nb-muted)!important}
#nb#nb .eyebrow:not([style*="color"]){color:var(--nb-accent)!important;letter-spacing:.12em!important;font-weight:700!important}
#nb#nb :is(.live-number,.ref-tb-value,.metric-value,.kpi-value,.value,.num,.mono,code,pre,kbd,.cr-num,.tabular-nums,td,.ref-live-date,.ref-live-time,#ref-clock-time){font-variant-numeric:tabular-nums}
#nb#nb :is(.live-number,.ref-tb-value,.live-value strong,.met-summary-value b,#ref-clock-time,.compass-values strong,code,pre,kbd){font-family:var(--nb-mono)!important}
#nb#nb a:not([style*="color"]){color:var(--nb-accent)!important}
#nb#nb ::selection{background:rgba(255,181,71,.32);color:#fff}

/* ------------------------------------------------------ 3. floating top bar */
#nb#nb header.topbar,#nb#nb .ref-topbar{
  margin:14px 18px 6px!important;border-radius:var(--nb-r-pill)!important;
  background:var(--nb-glass)!important;border:1px solid var(--nb-edge)!important;box-shadow:var(--nb-shadow)!important;
  backdrop-filter:var(--nb-blur)!important;-webkit-backdrop-filter:var(--nb-blur)!important;overflow:visible!important;
}
#nb#nb .ref-topbar-brand,#nb#nb .ref-topbar-center,#nb#nb .ref-topbar-right,#nb#nb .topbar-right{background:transparent!important;background-image:none!important;border:0!important;box-shadow:none!important}
#nb#nb .ref-topbar-brand{border-radius:var(--nb-r-pill) 0 0 var(--nb-r-pill)!important}
#nb#nb .ref-brand-lockup strong{color:var(--nb-ink)!important;letter-spacing:-.02em;font-weight:700!important}
#nb#nb .ref-brand-lockup strong::before{content:"";display:inline-block;width:22px;height:22px;margin-right:10px;vertical-align:-5px;border-radius:50%;
  background:radial-gradient(circle at 50% 50%,rgba(255,181,71,.18) 0 58%,transparent 60%),conic-gradient(from 200deg,#ff6b9e,#b98cff,#3ddbd9,#ffb547,#ff6b9e);
  -webkit-mask:radial-gradient(circle,transparent 0 5px,#000 5.5px);mask:radial-gradient(circle,transparent 0 5px,#000 5.5px)}
#nb#nb .ref-clock-block{background:transparent!important;border:0!important;box-shadow:none!important}
#nb#nb .ref-clock-block strong{color:var(--nb-ink)!important;font-weight:600!important}
#nb#nb .ref-clock-block span{color:var(--nb-muted)!important}
#nb#nb :is(.toolbar-icon,.ref-icon-control,.account-control,.ref-control-pill){
  background:var(--nb-fill)!important;border:1px solid var(--nb-edge-2)!important;border-radius:var(--nb-r-pill)!important;color:var(--nb-ink-2)!important;box-shadow:none!important;
  transition:background var(--nb-fast),border-color var(--nb-fast),transform var(--nb-fast)!important}
#nb#nb :is(.toolbar-icon,.ref-icon-control,.account-control,.ref-control-pill):hover:not(:disabled){background:var(--nb-fill-2)!important;border-color:var(--nb-edge-strong)!important}
#nb#nb :is(.toolbar-icon,.account-control) svg{color:var(--nb-ink-2)!important}
#nb#nb .ref-menu-button{background:var(--nb-fill)!important}
#nb#nb .ref-notification b{background:var(--nb-pink)!important;color:#2b0512!important;font-family:var(--nb-mono)!important}
#nb#nb .account-text small{color:var(--nb-muted)!important}
#nb#nb .avatar{background:linear-gradient(135deg,var(--nb-pink),var(--nb-lilac))!important;color:#fff!important;border:0!important}
#nb#nb .runtime-pill{border-radius:var(--nb-r-pill)!important;border:1px solid var(--nb-edge-2)!important;background:var(--nb-fill)!important;font-weight:600!important;letter-spacing:.04em!important}
#nb#nb .runtime-pill.good{background:rgba(91,227,138,.12)!important;border-color:rgba(91,227,138,.35)!important;color:#b7f7d0!important}
#nb#nb .runtime-pill.good i{background:var(--nb-green)!important;box-shadow:0 0 0 4px rgba(91,227,138,.16)!important}
#nb#nb :is(.runtime-pill.warn,.runtime-pill.neutral){background:rgba(255,181,71,.12)!important;border-color:rgba(255,181,71,.35)!important;color:#ffd9a0!important}
#nb#nb .runtime-pill.bad{background:rgba(255,92,122,.14)!important;border-color:rgba(255,92,122,.4)!important;color:#ffc2cf!important}

/* ------------------------------------------------------ 4. pill navigation */
#nb#nb .nb-tabs{display:flex;align-items:center;gap:2px;padding:4px;margin-left:10px;border-radius:var(--nb-r-pill);background:rgba(255,255,255,.045);border:1px solid var(--nb-edge-2);overflow-x:auto;scrollbar-width:none;max-width:min(calc(60vw / var(--nb-zoom,1)),780px)}
#nb#nb .nb-tabs::-webkit-scrollbar{display:none}
#nb#nb .nb-tab{flex:0 0 auto;height:36px;padding:0 15px;border:0;border-radius:var(--nb-r-pill);background:transparent;color:var(--nb-ink-2)!important;font:500 13px/1 var(--nb-sans);cursor:pointer;white-space:nowrap;transition:background var(--nb-fast),color var(--nb-fast)}
#nb#nb .nb-tab:hover{background:var(--nb-fill-2)}
#nb#nb .nb-tab:focus-visible{outline:2px solid var(--adq-ui-focus);outline-offset:2px}
#nb#nb .nb-tab[aria-current="page"]{background:var(--nb-accent);color:var(--nb-accent-ink)!important;font-weight:600}
@media (max-width:1180px){#nb#nb .nb-tabs{max-width:calc(44vw / var(--nb-zoom,1))}}

/* The full grouped menu (hamburger) stays available as a glass sheet */
#nb#nb :is(nav.primary-nav,.top-primary-nav,.top-nav-sheet){
  background:linear-gradient(165deg,rgba(40,24,86,.92),rgba(24,14,56,.94))!important;border:1px solid var(--nb-edge)!important;
  border-radius:var(--nb-r-card)!important;box-shadow:0 40px 80px -30px rgba(0,0,0,.9)!important;
  backdrop-filter:var(--nb-blur)!important;-webkit-backdrop-filter:var(--nb-blur)!important}
#nb#nb .top-nav-section h3{color:var(--nb-faint)!important;letter-spacing:.14em!important}
#nb#nb .nav-item{background:transparent!important;border:1px solid transparent!important;border-radius:var(--nb-r-pill)!important;color:var(--nb-ink-2)!important}
#nb#nb .nav-item svg{color:currentColor!important}
#nb#nb .nav-item:hover{background:var(--nb-fill-2)!important}
#nb#nb .nav-item.active{background:var(--nb-accent)!important;color:var(--nb-accent-ink)!important;box-shadow:none!important}
#nb#nb .nav-item.active *{color:var(--nb-accent-ink)!important}
#nb#nb .sidebar-backdrop{background:rgba(6,3,20,.45)!important;backdrop-filter:blur(4px)!important}

/* ---------------------------------------------------------- 5. containers */
#nb#nb :is(.panel,.card,.glass-card,.combined-panel,.ref-trend-panel,.ref-table-panel,.met-feature-panel,.met-trend-panel,.dashboard-live-table-panel,.ref-live-primary-zone,.ref-live-met-zone,.config-editor-row,.analysis-glass-panel,.analysis-glass-ribbon,.acquisition-runtime-card,.recent-events-card,.database-configuration-card,.config-entity-panel,.report-scheduler-intro,.analysis-config-card,.network-service-panel,.autocheck-schedule-panel,.tabular-data-panel,.analysis-empty-config){
  background:var(--nb-glass)!important;border:1px solid var(--nb-edge)!important;border-radius:var(--nb-r-card)!important;box-shadow:var(--nb-shadow)!important;
  backdrop-filter:var(--nb-blur)!important;-webkit-backdrop-filter:var(--nb-blur)!important}
/* nested cards: tint only, no second blur */
#nb#nb :is(.panel,.card,.ref-live-primary-zone,.ref-live-met-zone,.modal) :is(.panel,.card,.workspace-card,.instrument-card,.config-entity-row,.analysis-config-card,.network-token-panel,.database-config-summary > div){
  background:var(--nb-glass-inner)!important;border:1px solid var(--nb-edge-2)!important;border-radius:var(--nb-r-inner)!important;box-shadow:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
#nb#nb :is(.card.hover,.workspace-card,.instrument-card){transition:transform var(--nb-fast),border-color var(--nb-fast),background var(--nb-fast)!important}
#nb#nb :is(.card.hover,.workspace-card,.instrument-card):hover{transform:translateY(-2px);border-color:var(--nb-edge-strong)!important}
#nb#nb :is(.ref-split-head,.ref-trend-head,.ref-table-head,.section-title,.modal-head) :is(strong,h2,h3){color:var(--nb-ink)!important;font-weight:600!important}
#nb#nb :is(.ref-split-head,.ref-trend-head,.ref-table-head) span:not([style*="color"]){color:var(--nb-muted)!important}
#nb#nb :is(.historian-independence-note,.database-config-note,.tabular-range-note,.network-bind-help,.network-security-note,.analysis-config-note,.db-readonly-note,.notice,.info-note,.hint-box){
  background:rgba(255,181,71,.07)!important;border:1px solid rgba(255,181,71,.22)!important;border-radius:var(--nb-r-inner)!important;box-shadow:none!important}
#nb#nb :is(.empty-icon,.metric-icon,.device-icon,.control-center-icon,.acquisition-title-icon,.acquisition-status-icon){
  background:linear-gradient(140deg,rgba(255,107,158,.28),rgba(185,140,255,.24))!important;border:1px solid var(--nb-edge)!important;color:#fff!important;border-radius:var(--nb-r-inner)!important;box-shadow:none!important}
#nb#nb :is(.empty-icon,.metric-icon,.device-icon,.control-center-icon,.acquisition-title-icon,.acquisition-status-icon) svg{color:#fff!important}
#nb#nb .metric-icon.green{background:linear-gradient(140deg,rgba(91,227,138,.3),rgba(61,219,217,.22))!important}
#nb#nb .empty-state{background:transparent!important;border-color:var(--nb-edge-2)!important;border-radius:var(--nb-r-card)!important}
#nb#nb .empty-state strong{color:var(--nb-ink)!important}

/* ------------------------------------------------ 6. live parameter tiles */
#nb#nb :is(.ref-metric-tile,.live-card-reference,.live-card,.dashboard-direction-card,.dashboard-mini-windrose,.met-summary-card){
  background:
    radial-gradient(120% 90% at 110% 118%,color-mix(in srgb,var(--series,var(--accent,#b98cff)) 34%,transparent) 0%,transparent 58%),
    var(--nb-glass-inner)!important;
  border:1px solid var(--nb-edge)!important;border-radius:22px!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.12),0 18px 34px -26px rgba(8,2,30,1)!important;
  backdrop-filter:none!important;-webkit-backdrop-filter:none!important;overflow:hidden;
  transition:transform var(--nb-fast),border-color var(--nb-fast)!important;contain:layout paint}
#nb#nb :is(.ref-metric-tile,.live-card-reference,.dashboard-direction-card):hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--series,#b98cff) 55%,white 10%)!important}
#nb#nb :is(.ref-metric-tile,.live-card-reference)::before{content:none!important}
#nb#nb :is(.ref-param-name,.live-name){color:var(--nb-ink)!important;font-weight:600!important}
#nb#nb :is(.ref-metric-tile,.live-card-reference) .live-number{letter-spacing:-.03em;font-weight:600!important}
#nb#nb :is(.ref-metric-tile,.live-card-reference) :is(.live-unit,.ref-tile-info small,.ref-tile-info span:not([style*="color"])){color:var(--nb-muted)!important}
#nb#nb :is(.ref-mini-trend,.tile-axis-chart,.spark){background:transparent!important;border-radius:12px!important}
#nb#nb .ref-mini-trend{background:linear-gradient(180deg,color-mix(in srgb,var(--series,#b98cff) 16%,transparent),transparent)!important}
#nb#nb :is(.dashboard-direction-card) :is(strong,span,small){color:inherit}
#nb#nb .direction-ring{background:radial-gradient(circle,rgba(255,255,255,.08) 0 58%,color-mix(in srgb,var(--series,#ffb547) 22%,transparent) 100%)!important;border-color:var(--nb-edge)!important;box-shadow:inset 0 0 0 1px var(--nb-edge-2)!important}
#nb#nb .direction-ring :is(span,b){color:var(--nb-ink-2)!important}
#nb#nb .direction-needle{background:var(--nb-accent)!important;box-shadow:0 0 12px rgba(255,181,71,.55)!important}
#nb#nb .met-summary-card::before{content:none!important}
#nb#nb .met-summary-value b{color:color-mix(in srgb,var(--accent,#fff) 70%,white)!important}
#nb#nb :is(.live-comm-dot.connected){background:var(--nb-green)!important;box-shadow:0 0 0 3px rgba(91,227,138,.18)!important}
#nb#nb :is(.live-comm-dot.disconnected){background:var(--nb-red)!important;box-shadow:0 0 0 3px rgba(255,92,122,.18)!important}
#nb#nb :is(.ref-status,.status-dot){border-radius:var(--nb-r-pill)!important}
#nb#nb .combined-chip{background:var(--nb-fill)!important;border:1px solid color-mix(in srgb,var(--series,#fff) 45%,transparent)!important;border-radius:var(--nb-r-pill)!important;color:var(--nb-ink)!important}
#nb#nb .ref-trend-legend{background:transparent!important;border-top:1px solid var(--nb-edge-2)!important}
#nb#nb canvas{background:transparent!important}

/* ----------------------------------------------------------------- 7. buttons */
#nb#nb :is(.button,.touch-button,.btn,button.BUTTON){
  border-radius:var(--nb-r-pill)!important;background:var(--nb-fill)!important;border:1px solid var(--nb-edge)!important;color:var(--nb-ink)!important;font-weight:500!important;box-shadow:none!important;
  transition:background var(--nb-fast),border-color var(--nb-fast),transform var(--nb-fast)!important}
#nb#nb :is(.button,.touch-button,.btn):hover:not(:disabled){background:var(--nb-fill-2)!important;border-color:var(--nb-edge-strong)!important}
#nb#nb :is(.button,.touch-button,.btn):active:not(:disabled){transform:scale(.98)}
#nb#nb :is(.button,.touch-button,.btn) svg{color:currentColor!important}
#nb#nb :is(.button.primary,.touch-button.primary,.btn.primary,button.primary){background:var(--nb-accent)!important;border-color:transparent!important;color:var(--nb-accent-ink)!important;font-weight:600!important}
#nb#nb :is(.button.primary,.touch-button.primary,button.primary) *{color:var(--nb-accent-ink)!important}
#nb#nb :is(.button.primary,.touch-button.primary,button.primary):hover:not(:disabled){background:var(--nb-accent-hover)!important}
#nb#nb :is(.button.danger,.touch-button.danger,button.danger){background:rgba(255,92,122,.12)!important;border-color:rgba(255,92,122,.42)!important;color:#ffc2cf!important}
#nb#nb :is(.button.danger,.touch-button.danger) *{color:#ffc2cf!important}
#nb#nb :is(.button.danger,.touch-button.danger):hover:not(:disabled){background:rgba(255,92,122,.24)!important}
#nb#nb :is(.button.ghost){background:transparent!important}
#nb#nb :is(.button,.touch-button,button):disabled{opacity:.42!important;cursor:not-allowed!important}
#nb#nb :is(button,a,[role="button"],input,select,textarea):focus-visible{outline:2px solid var(--adq-ui-focus)!important;outline-offset:2px!important}

/* segmented controls, tab strips */
#nb#nb :is(.segmented,.configuration-tabs,.station-entity-tabs,.tabular-mode-tabs,.analysis-mode-tabs,.live-tabs,.met-subtabs,.dashboard-tabs){
  background:rgba(255,255,255,.05)!important;border:1px solid var(--nb-edge-2)!important;border-radius:var(--nb-r-pill)!important;box-shadow:none!important;padding:4px!important;backdrop-filter:none!important}
#nb#nb .configuration-nav-stack{background:transparent!important;border:0!important;box-shadow:none!important}
#nb#nb :is(.segmented,.configuration-tabs,.station-entity-tabs,.tabular-mode-tabs,.analysis-mode-tabs,.live-tabs,.met-subtabs,.dashboard-tabs) button{
  border-radius:var(--nb-r-pill)!important;background:transparent!important;border:0!important;box-shadow:none!important;color:var(--nb-ink-2)!important}
#nb#nb :is(.segmented,.configuration-tabs,.station-entity-tabs,.tabular-mode-tabs,.analysis-mode-tabs,.live-tabs,.met-subtabs,.dashboard-tabs) button:hover{background:var(--nb-fill)!important}
#nb#nb :is(.segmented,.configuration-tabs,.station-entity-tabs,.tabular-mode-tabs,.analysis-mode-tabs,.live-tabs,.met-subtabs,.dashboard-tabs) button:is(.active,[aria-selected="true"]){background:var(--nb-fill-3)!important;color:#fff!important;font-weight:600!important}
#nb#nb button.BUTTON{border-radius:var(--nb-r-pill)!important}
#nb#nb button.BUTTON.active,#nb#nb :is(.tb-chip,.timebase-chip).active{background:var(--nb-accent)!important;color:var(--nb-accent-ink)!important;border-color:transparent!important}

/* ------------------------------------------------------ 8. inputs & menus */
#nb#nb :is(.input,.select,.touch-input,.touch-select,input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="color"]):not(.ref-hidden-search),select,textarea,.adq-select-trigger){
  background:rgba(255,255,255,.06)!important;border:1px solid var(--nb-edge)!important;border-radius:var(--nb-r-input)!important;color:var(--nb-ink)!important;box-shadow:none!important}
#nb#nb :is(input,textarea)::placeholder{color:var(--nb-faint)!important;opacity:1}
#nb#nb :is(.input,.select,input,select,textarea,.adq-select-trigger):hover:not(:disabled){border-color:var(--nb-edge-strong)!important}
#nb#nb :is(.input,.select,input,select,textarea):focus,#nb#nb .adq-select-trigger:focus-visible{border-color:rgba(255,181,71,.7)!important;background:rgba(255,255,255,.09)!important;box-shadow:0 0 0 3px rgba(255,181,71,.18)!important;outline:none!important}
#nb#nb :is(input,select,textarea):disabled{opacity:.55!important}
#nb#nb option{background:#1d1640;color:var(--nb-ink)}
#nb#nb input[type="checkbox"],#nb#nb input[type="radio"],#nb#nb input[type="range"]{accent-color:var(--nb-accent)}
#nb#nb :is(label,.field label,.form-label):not([style*="color"]){color:var(--nb-ink-2)!important}
#nb#nb :is(.adq-select-popover,.adq-select-menu,.adq-select-panel,.adq-select-list,.dropdown-menu,.popover,.menu,[role="listbox"],[role="menu"]){
  background:rgba(29,22,64,.96)!important;border:1px solid var(--nb-edge)!important;border-radius:var(--nb-r-inner)!important;box-shadow:0 30px 60px -20px rgba(0,0,0,.85)!important;
  backdrop-filter:var(--nb-blur)!important;-webkit-backdrop-filter:var(--nb-blur)!important;color:var(--nb-ink)!important}
#nb#nb :is(.adq-select-option,[role="option"],[role="menuitem"]){color:var(--nb-ink-2)!important;border-radius:10px!important;background:transparent!important}
#nb#nb :is(.adq-select-option,[role="option"],[role="menuitem"]):is(:hover,.active,.highlighted,[aria-selected="true"]){background:var(--nb-fill-2)!important;color:#fff!important}

/* ----------------------------------------------------------------- 9. tables */
#nb#nb :is(.table-wrap,.ref-table-wrap,.recent-events-table-wrap,.data-table-wrap){background:transparent!important;border:1px solid var(--nb-edge-2)!important;border-radius:var(--nb-r-inner)!important;box-shadow:none!important}
#nb#nb table{border-color:var(--nb-edge-2)!important;background:transparent!important}
#nb#nb table th{background:rgba(22,16,48,.92)!important;color:var(--nb-muted)!important;font-weight:600!important;letter-spacing:.05em!important;border-color:var(--nb-edge-2)!important}
#nb#nb table td{background:transparent!important;border-color:rgba(255,255,255,.055)!important;color:var(--nb-ink)}
#nb#nb table tbody tr:nth-child(even) td{background:rgba(255,255,255,.028)!important}
#nb#nb table tbody tr:hover td{background:rgba(255,255,255,.07)!important}
#nb#nb .ref-live-table tr.row-valid :is(td.ref-live-date,td.ref-live-time){background:rgba(91,227,138,.06)!important}
#nb#nb .ref-live-table tr.row-invalid td{background:rgba(255,92,122,.10)!important}
#nb#nb .ref-live-table tr.row-maintenance td{background:rgba(255,181,71,.10)!important}
#nb#nb .ref-table-wrap .pivot-timebase-table :is(th,td):nth-child(3){background:rgba(24,17,52,.97)!important}
#nb#nb .tb-pending{color:var(--nb-faint)!important}

/* ------------------------------------------------------- 10. chips & status */
#nb#nb :is(.status-chip,.ref-summary-pill,.ref-range-badge,.met-range-badge,.badge,.tag,.pill){
  border-radius:var(--nb-r-pill)!important;border:1px solid var(--nb-edge-2)!important;background:var(--nb-fill)!important;color:var(--nb-ink-2)!important;box-shadow:none!important;font-weight:600!important}
#nb#nb :is(.status-chip,.ref-status,.badge,.pill):is(.good,.valid,.success,.online){background:rgba(91,227,138,.12)!important;border-color:rgba(91,227,138,.35)!important;color:#b7f7d0!important}
#nb#nb :is(.status-chip,.ref-status,.badge,.pill):is(.warn,.warning,.maintenance,.pending){background:rgba(255,181,71,.13)!important;border-color:rgba(255,181,71,.38)!important;color:#ffd9a0!important}
#nb#nb :is(.status-chip,.ref-status,.badge,.pill):is(.bad,.error,.danger,.invalid,.offline,.fault){background:rgba(255,92,122,.13)!important;border-color:rgba(255,92,122,.4)!important;color:#ffc2cf!important}
#nb#nb :is(.status-chip,.ref-status,.badge,.pill).info{background:rgba(124,156,255,.14)!important;border-color:rgba(124,156,255,.4)!important;color:#d2dcff!important}

/* ------------------------------------------------------- 11. modals & toasts */
#nb#nb .modal-backdrop{background:radial-gradient(70% 60% at 50% 40%,rgba(124,77,255,.20),rgba(6,3,20,.7))!important;backdrop-filter:blur(10px) saturate(130%)!important;-webkit-backdrop-filter:blur(10px) saturate(130%)!important}
#nb#nb .modal{background:linear-gradient(155deg,rgba(44,32,92,.94),rgba(22,15,50,.96))!important;border:1px solid var(--nb-edge)!important;border-radius:28px!important;
  box-shadow:0 50px 100px -30px rgba(0,0,0,.95),inset 0 1px 0 rgba(255,255,255,.14)!important;color:var(--nb-ink)!important;animation:nb-pop .22s var(--nb-ease) both}
@keyframes nb-pop{from{opacity:0;transform:translateY(10px) scale(.98)}to{opacity:1;transform:none}}
#nb#nb .modal-head{border-bottom:1px solid var(--nb-edge-2)!important;background:transparent!important}
#nb#nb :is(.modal-foot,.modal-actions,.modal-footer){border-top:1px solid var(--nb-edge-2)!important;background:transparent!important}
#nb#nb .toast{background:linear-gradient(150deg,rgba(44,32,92,.95),rgba(24,17,54,.96))!important;border:1px solid var(--nb-edge)!important;border-radius:20px!important;color:var(--nb-ink)!important;box-shadow:0 30px 60px -24px rgba(0,0,0,.9)!important;backdrop-filter:var(--nb-blur-sm)!important}
#nb#nb .toast .toast-mark{background:var(--nb-fill-3)!important;color:#fff!important;border-radius:50%!important}
#nb#nb .toast.success .toast-mark{background:var(--nb-green)!important;color:#062411!important}
#nb#nb .toast.error .toast-mark{background:var(--nb-red)!important;color:#2b0512!important}
#nb#nb .toast.warning .toast-mark{background:var(--nb-accent)!important;color:var(--nb-accent-ink)!important}

/* ---------------------------------------------------- 12. scrollbars & misc */
#nb#nb *{scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.22) transparent}
#nb#nb ::-webkit-scrollbar{width:10px;height:10px}
#nb#nb ::-webkit-scrollbar-thumb{background:rgba(255,255,255,.18);border-radius:999px;border:3px solid transparent;background-clip:padding-box}
#nb#nb ::-webkit-scrollbar-thumb:hover{background:rgba(255,255,255,.3);background-clip:padding-box}
#nb#nb ::-webkit-scrollbar-track{background:transparent}
#nb#nb hr{border-color:var(--nb-edge-2)!important}
#nb#nb .skeleton,#nb#nb [class*="skeleton"]{background:linear-gradient(90deg,rgba(255,255,255,.05),rgba(255,255,255,.1),rgba(255,255,255,.05))!important;background-size:200% 100%!important}

/* ---------------------------------------------------- 13. motion & a11y */
@media (prefers-reduced-motion:reduce){
  #nb#nb body::before{animation:none!important}
  #nb#nb .modal{animation:none!important}
  #nb#nb :is(.ref-metric-tile,.live-card-reference,.card.hover,.workspace-card,.instrument-card,.button):hover{transform:none!important}
}
@media (prefers-reduced-transparency:reduce){
  #nb#nb :is(.panel,.card,header.topbar,.modal,.toast,nav.primary-nav,.top-nav-sheet,.ref-live-primary-zone,.ref-live-met-zone){backdrop-filter:none!important;-webkit-backdrop-filter:none!important;background:#1d1640!important}
}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){
  #nb#nb :is(.panel,.card,header.topbar,.modal,.toast,.ref-live-primary-zone,.ref-live-met-zone){background:rgba(29,22,64,.94)!important}
}
/* Performance mode: no backdrop blur anywhere (auto for >32 tiles, software GPU or slow frames) */
#nb#nb.nb-lite *,#nb#nb.nb-lite *::before,#nb#nb.nb-lite *::after{backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
#nb#nb.nb-lite header.topbar{background:linear-gradient(155deg,rgba(46,34,96,.92),rgba(26,19,60,.94))!important}
/* Overlays sit on busy content: without blur they must be opaque to stay readable */
#nb#nb.nb-lite :is(.modal,.toast,.adq-select-popover,.adq-select-menu,.adq-select-panel,.adq-select-list,.top-nav-sheet,nav.primary-nav,[role="listbox"],[role="menu"]){background:linear-gradient(155deg,#2c2160,#1a1440)!important}
#nb#nb.nb-lite .modal-backdrop{background:rgba(8,5,24,.78)!important}

/* ---------------------------------------------------- 14. small controls */
#nb#nb .switch span{background:rgba(255,255,255,.14)!important;border:1px solid var(--nb-edge)!important}
#nb#nb .switch span:after{background:#f4f1ff!important;box-shadow:0 2px 6px rgba(0,0,0,.45)!important}
#nb#nb .switch.on span{background:var(--nb-accent)!important;border-color:transparent!important}
#nb#nb .switch.on span:after{background:#2a1600!important}
#nb#nb :is(.mini-chip,.saved-config-state,.dashboard-mini-range,.recent-events-icon,.saved-config-icon){border-radius:var(--nb-r-pill)!important}
#nb#nb .timebase-tab-strip button{border-radius:var(--nb-r-pill)!important;background:var(--nb-fill)!important;border:1px solid var(--nb-edge-2)!important;color:var(--nb-ink-2)!important}
#nb#nb .timebase-tab-strip button:hover{background:var(--nb-fill-2)!important}
#nb#nb .timebase-tab-strip button.active{background:var(--nb-accent)!important;border-color:transparent!important;color:var(--nb-accent-ink)!important;font-weight:600!important}
#nb#nb :is(.dashboard-mini-rose-meta > div){background:var(--nb-fill)!important;border:1px solid var(--nb-edge-2)!important;border-radius:var(--nb-r-inner)!important}
#nb#nb .dashboard-mini-rose-meta small{color:var(--nb-muted)!important}
#nb#nb .ref-refresh{background:var(--nb-fill)!important;border:1px solid var(--nb-edge-2)!important;border-radius:var(--nb-r-pill)!important;color:var(--nb-ink-2)!important}
#nb#nb .modal-close{background:var(--nb-fill)!important;border:1px solid var(--nb-edge-2)!important;border-radius:50%!important;color:var(--nb-ink)!important}
#nb#nb .account-summary{background:var(--nb-glass-inner)!important;border:1px solid var(--nb-edge-2)!important;border-radius:var(--nb-r-inner)!important}

/* ---------------------------------------------------- 15. top bar fitting */
#nb#nb .app-main{grid-template-columns:minmax(0,1fr)!important;min-width:0!important}
#nb#nb header.topbar{box-sizing:border-box!important;width:auto!important;max-width:calc(calc(100vw / var(--nb-zoom,1)) - 36px)!important;min-width:0!important}
#nb#nb .ref-topbar-center{min-width:0!important;flex:1 1 auto!important;justify-content:flex-start!important;gap:10px!important}
#nb#nb .nb-tabs{min-width:0;flex:1 1 auto;max-width:none}
#nb#nb .ref-topbar-brand{flex:0 0 auto!important;width:auto!important;padding-right:6px!important}
#nb#nb .ref-control-pill,#nb#nb .ref-clock-block,#nb#nb .runtime-pill{flex:0 0 auto!important}
@media (max-width:1280px){#nb#nb .ref-clock-block span{display:none!important}}
@media (max-width:1100px){#nb#nb .ref-control-pill span{display:none!important}}
/* Control pill duplicates the Service Manager tab: the pill bar replaces it */
#nb#nb .nb-tabs ~ .ref-control-pill{display:none!important}
#nb#nb .ref-topbar-brand{min-width:0!important;max-width:none!important;gap:8px!important}
#nb#nb .ref-topbar-brand > .ref-brand-lockup{flex:0 0 auto!important}
#nb#nb .nb-tab{padding:0 13px}
#nb#nb .nb-tabs{-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 28px),transparent);mask-image:linear-gradient(90deg,#000 calc(100% - 28px),transparent)}
#nb#nb .nb-tabs.nb-fits{-webkit-mask-image:none;mask-image:none}
#nb#nb .ref-topbar-center{display:flex!important}
@media (max-width:1560px){#nb#nb .ref-clock-block span{display:none!important}}
#nb#nb .ref-hidden-search{position:absolute!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important;padding:0!important;border:0!important}
/* Popovers are always opaque enough to read over forms, blur or not */
#nb#nb .adq-select-popover{background:linear-gradient(160deg,rgba(46,34,98,.98),rgba(28,20,64,.98))!important;padding:6px!important;z-index:1000}
#nb#nb .adq-select-option{min-height:36px;display:flex;align-items:center;padding:0 12px!important}

/* ---------------------------------------------- 16. two-row parameter tiles
   Row 1: name + reading (left), range + limit (right).
   Row 2: the trend spans the full tile width, timestamp/status underneath. */
#nb#nb .ref-metric-tile{display:grid!important;grid-template-columns:minmax(0,1fr)!important;grid-template-rows:auto minmax(0,1fr)!important;gap:8px!important;padding:12px 14px 10px!important;align-items:stretch!important}
#nb#nb .ref-metric-tile .ref-tile-info{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;grid-template-rows:auto auto!important;column-gap:12px!important;row-gap:2px!important;align-items:end!important;min-width:0!important;height:auto!important;padding:0!important}
#nb#nb .ref-metric-tile .ref-param-name{grid-column:1!important;grid-row:1!important;margin:0!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#nb#nb .ref-metric-tile .ref-reading{grid-column:1!important;grid-row:2!important;height:auto!important;margin:0!important}
#nb#nb .ref-metric-tile .ref-config-line{grid-column:2!important;justify-self:end!important;display:flex!important;gap:6px!important;align-items:baseline!important;margin:0!important;white-space:nowrap}
#nb#nb .ref-metric-tile .ref-reading + .ref-config-line{grid-row:1!important}
#nb#nb .ref-metric-tile .ref-config-line + .ref-config-line{grid-row:2!important;align-self:center!important}
#nb#nb .ref-metric-tile .ref-config-line span{color:var(--nb-faint)!important;font-size:10px!important;letter-spacing:.08em!important}
#nb#nb .ref-metric-tile .ref-config-line b{color:var(--nb-ink-2)!important;font-size:11px!important;font-weight:500!important}
#nb#nb .ref-metric-tile .ref-tile-info > :not(.ref-param-name):not(.ref-reading):not(.ref-config-line){grid-column:1/-1!important}
#nb#nb .ref-metric-tile .ref-tile-chart{display:flex!important;flex-direction:column!important;gap:4px!important;min-width:0!important;min-height:0!important;width:100%!important;height:100%!important;margin:0!important;padding:0!important}
#nb#nb .ref-metric-tile .ref-mini-trend{flex:1 1 auto!important;width:100%!important;height:auto!important;max-height:none!important;min-height:48px!important;border-radius:12px!important;overflow:hidden!important}
#nb#nb .ref-metric-tile .ref-mini-trend{position:relative!important}
#nb#nb .ref-metric-tile .ref-mini-trend svg{display:block;position:absolute!important;inset:0!important;width:100%!important;height:100%!important;min-height:0!important;max-height:none!important;margin:0!important}
#nb#nb .ref-metric-tile .ref-metric-foot{display:flex!important;justify-content:space-between!important;align-items:center!important;font-size:10px!important;color:var(--nb-muted)!important;margin:0!important;padding:0 2px!important}


/* ------------------------------------------------ 17. dashboard: Design C
   Three bands, as in the approved Nebula concept, each a 12-column grid:
     trend  : hero trend (8) + Air Quality Index (4)
     params : live parameter cards (2 each) + wind rose (3) + meteorology (3)
     table  : tabular (7) + analysis (5)
   Band order comes from --nb-ord-* (Layout button in the top bar).
   Dashboard cards use a translucent fill without backdrop blur: the mesh
   behind them is smooth, so the look is the same and 50 live parameters stay
   at full frame rate. */
#nb#nb .ref-dashboard.page,#nb#nb .page.live-monitor-page.ref-dashboard{max-width:none!important;width:auto!important;margin:0!important;padding:16px 28px 32px!important}
#nb#nb.nb-on-dash .ref-dashboard-meta,#nb#nb .ref-dashboard:has(.nb-c-flow) > .ref-dashboard-meta{display:none!important}
#nb#nb .nb-station{margin-left:10px;font:400 12px/1 var(--nb-sans);color:var(--nb-muted)!important;white-space:nowrap}
#nb#nb .ref-dashboard-flow.nb-c-flow{display:flex!important;flex-direction:column!important;gap:20px!important;grid-template-columns:none!important}
#nb#nb .nb-band{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:20px;min-width:0}
#nb#nb .nb-band-trend{order:var(--nb-ord-trend,0)}
#nb#nb .nb-band-params{order:var(--nb-ord-params,1)}
#nb#nb .nb-band-insight{order:var(--nb-ord-insight,2)}
#nb#nb .nb-band-table{order:var(--nb-ord-table,3)}
#nb#nb .nb-c-flow .panel{border-radius:var(--nb-r-card)!important;padding:20px 22px!important;margin:0!important;min-width:0!important;
  backdrop-filter:none!important;-webkit-backdrop-filter:none!important;
  background:linear-gradient(155deg,rgba(255,255,255,.11),rgba(255,255,255,.045) 60%,rgba(255,255,255,.07))!important;
  border:1px solid rgba(255,255,255,.14)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.16),inset 0 -1px 0 rgba(255,255,255,.03),0 24px 48px -28px rgba(8,2,30,.95)!important}
#nb#nb .nb-card-head{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;margin:0!important;padding:0!important;border:0!important;background:none!important;min-width:0}
#nb#nb .nb-card-title{margin:0!important;font:600 16px/1.25 var(--nb-sans)!important;letter-spacing:-.01em!important;color:var(--nb-ink)!important;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
#nb#nb .nb-card-note{font-size:12px!important;color:var(--nb-muted)!important;white-space:nowrap}
#nb#nb .nb-seg{display:flex;gap:2px;padding:3px;border-radius:999px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);flex:0 0 auto}
#nb#nb .nb-seg button{height:30px;padding:0 12px;border:0;border-radius:999px;background:transparent;color:var(--nb-ink-2)!important;font:500 12px/1 var(--nb-sans);cursor:pointer}
#nb#nb .nb-seg button:hover{background:rgba(255,255,255,.08)}
#nb#nb .nb-seg button[aria-pressed="true"]{background:rgba(255,255,255,.16);color:#fff!important;font-weight:600}
#nb#nb .nb-accent-btn{height:34px;padding:0 14px;border-radius:999px;border:0;background:var(--nb-accent)!important;color:var(--nb-accent-ink)!important;font:600 12px/1 var(--nb-sans);cursor:pointer;flex:0 0 auto}
#nb#nb .nb-accent-btn:hover{background:var(--nb-accent-hover)!important}
#nb#nb .nb-c-flow :is(button,[role="button"]):focus-visible{outline:2px solid var(--adq-ui-focus)!important;outline-offset:2px}

/* trend band */
#nb#nb .nb-band-trend > *{height:auto!important;min-height:0!important;max-height:none!important}
#nb#nb .nb-band-trend .nb-hero{grid-column:1 / -1!important;display:flex!important;flex-direction:column!important;gap:12px!important;position:relative!important;overflow:visible!important}
#nb#nb .nb-hero .ref-trend-canvas{position:relative!important;flex:1 1 auto!important;min-height:0!important;height:auto!important;margin:0!important;padding:0!important;border:0!important;background:none!important}
#nb#nb .nb-hero .ref-trend-canvas canvas{position:absolute!important;inset:0!important;width:100%!important;height:100%!important}
#nb#nb .nb-hero-foot{display:flex;align-items:center;gap:10px;min-width:0}
#nb#nb .nb-hero-chips{display:flex;flex-wrap:wrap;gap:8px;min-width:0;flex:0 1 auto}
#nb#nb .nb-hero-chip{display:inline-flex;align-items:center;gap:7px;height:32px;padding:0 14px;border-radius:999px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.12);font-size:12px;white-space:nowrap;flex:0 0 auto}
#nb#nb .nb-hero-chip i{width:10px;height:10px;border-radius:50%;background:var(--series)}
#nb#nb .nb-hero-chip b{color:#fff!important;font-weight:600;font-family:var(--nb-mono)!important}
#nb#nb .nb-hero-chip small{color:var(--nb-muted)!important;font-size:11px}
#nb#nb .nb-pick-btn{height:32px;padding:0 12px;border-radius:999px;border:1px dashed rgba(255,255,255,.22);background:transparent;color:var(--nb-ink-2)!important;font:500 12px/1 var(--nb-sans);cursor:pointer;flex:0 0 auto;white-space:nowrap}
#nb#nb .nb-pick-btn b{font-family:var(--nb-mono)!important;color:#fff!important;margin-left:4px}
#nb#nb .nb-pick-btn:hover,#nb#nb .nb-pick-btn[aria-expanded="true"]{background:rgba(255,255,255,.08);border-style:solid}
#nb#nb .nb-hero-range{margin-left:auto;font-size:11px;color:var(--nb-muted)!important;white-space:nowrap}
#nb#nb .nb-trend-picker{position:absolute;left:22px;right:22px;bottom:62px;z-index:30;max-height:240px;display:flex;flex-direction:column;gap:10px;padding:14px 16px;border-radius:20px;background:linear-gradient(160deg,#2e2262,#1b1442)!important;border:1px solid var(--nb-edge);box-shadow:0 30px 60px -24px rgba(0,0,0,.9)}
#nb#nb .nb-trend-picker[hidden]{display:none!important}
#nb#nb .nb-trend-picker-head{display:flex;justify-content:space-between;align-items:center;gap:10px}
#nb#nb .nb-trend-picker-head strong{font:600 13px var(--nb-sans)}
#nb#nb .nb-trend-picker-head button{height:28px;padding:0 12px;margin-left:6px;border-radius:999px;border:1px solid var(--nb-edge-2);background:var(--nb-fill);color:var(--nb-ink-2)!important;font:500 12px var(--nb-sans);cursor:pointer}
#nb#nb .nb-trend-picker .ref-trend-legend{display:flex!important;flex-wrap:wrap!important;gap:6px!important;overflow:auto!important;max-height:none!important;border:0!important;padding:0!important;margin:0!important}
/* AQI */

/* params band: KPI cards + wind rose + meteorology */
#nb#nb .nb-band-params{grid-auto-rows:216px;grid-auto-flow:row dense}
#nb#nb .nb-band-params > .ref-metric-tile{grid-column:span 2!important;height:auto!important;min-height:0!important;max-height:none!important;margin:0!important;
  display:flex!important;flex-direction:column!important;gap:4px!important;padding:16px!important;border-radius:24px!important;position:relative!important}
#nb#nb .nb-band-params > .ref-metric-tile .ref-tile-info{display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:2px!important;height:auto!important;min-width:0!important;width:100%!important}
#nb#nb .nb-band-params > .ref-metric-tile .ref-param-name{font:600 13px/1.3 var(--nb-sans)!important;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin:0!important}
#nb#nb .nb-band-params > .ref-metric-tile .nb-inst{font-size:11px!important;color:var(--nb-muted)!important;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
#nb#nb .nb-band-params > .ref-metric-tile .ref-reading{display:flex!important;align-items:baseline!important;gap:5px!important;margin:6px 0 0!important;height:auto!important}
#nb#nb .nb-band-params > .ref-metric-tile .live-number{font-size:30px!important;line-height:1.05!important;font-weight:600!important;letter-spacing:-.03em!important;color:#fff!important}
#nb#nb .nb-band-params > .ref-metric-tile .live-unit{font-size:11px!important;color:var(--nb-muted)!important}
#nb#nb .nb-band-params > .ref-metric-tile .ref-config-line{display:flex!important;gap:5px!important;font-size:10px!important;margin:0!important;justify-self:auto!important}
#nb#nb .nb-band-params > .ref-metric-tile .ref-config-line.is-unset{display:none!important}
#nb#nb .nb-band-params > .ref-metric-tile .ref-tile-chart{flex:1 1 auto!important;min-height:0!important;display:flex!important;flex-direction:column!important;gap:2px!important;margin:0!important}
#nb#nb .nb-band-params > .ref-metric-tile .ref-mini-trend{flex:1 1 auto!important;min-height:30px!important;background:none!important;border-radius:0!important;margin:0 -4px!important}
#nb#nb .nb-band-params > .ref-metric-tile .ref-metric-foot{font-size:10px!important;padding:0!important}
#nb#nb .nb-delta{align-self:flex-start;margin-top:4px;font-size:11px;padding:3px 9px;border-radius:999px;font-family:var(--nb-mono)!important;white-space:nowrap}
#nb#nb .nb-delta[hidden]{display:none!important}
#nb#nb .nb-delta.up{background:rgba(255,107,158,.16);color:#ffc2d6!important}
#nb#nb .nb-delta.down{background:rgba(91,227,138,.14);color:#b7f7d0!important}
#nb#nb .nb-delta.flat{background:rgba(255,255,255,.08);color:var(--nb-ink-2)!important}
#nb#nb .nb-band-params > .split-empty{grid-column:span 6;align-self:center;color:var(--nb-muted)}
/* wind rose */
#nb#nb .nb-band-params > .dashboard-mini-windrose{grid-column:7 / span 3!important;grid-row:1 / span 2!important;height:auto!important;min-height:0!important;max-height:none!important;
  display:flex!important;flex-direction:column!important;gap:8px!important;padding:16px 18px!important;border-radius:24px!important;overflow:hidden!important;
  background:linear-gradient(155deg,rgba(255,255,255,.11),rgba(255,255,255,.045) 60%,rgba(255,255,255,.07))!important;border:1px solid rgba(255,255,255,.14)!important}
#nb#nb .nb-band-params .dashboard-mini-rose-head{margin:0!important}
#nb#nb .nb-band-params .dashboard-mini-rose-head strong{font:600 16px/1.25 var(--nb-sans)!important}
#nb#nb .nb-band-params .dashboard-mini-rose-head div > span{display:none!important}
#nb#nb .nb-band-params .dashboard-mini-rose-body{flex:1 1 auto!important;min-height:0!important;display:block!important;position:relative!important}
#nb#nb .nb-band-params #dashboard-mini-wind-rose{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;max-height:none!important;min-height:0!important}
#nb#nb .nb-band-params .dashboard-mini-rose-meta{display:none!important}
/* meteorology card */
#nb#nb .nb-band-params > .nb-met-card{grid-column:10 / span 3!important;grid-row:1 / span 2!important;display:flex!important;flex-direction:column!important;gap:10px!important;padding:16px 18px!important;border-radius:24px!important;overflow:hidden!important}
#nb#nb .nb-band-params .dashboard-mini-range{background:none!important;border:0!important;padding:0!important;font-size:12px!important;color:var(--nb-muted)!important;box-shadow:none!important}
#nb#nb .nb-met-card .dashboard-direction-card{height:auto!important;min-height:0!important;max-height:none!important;display:flex!important;align-items:center!important;gap:14px!important;padding:0!important;background:none!important;border:0!important;box-shadow:none!important;border-radius:0!important;overflow:visible!important;transform:none!important}
#nb#nb .nb-met-card .dashboard-direction-card .direction-dial{order:-1;flex:0 0 96px;width:96px;height:96px;margin:0!important}
#nb#nb .nb-met-card .dashboard-direction-card .direction-ring{width:96px!important;height:96px!important}
#nb#nb .nb-met-card .direction-card-copy{display:flex!important;flex-direction:column!important;gap:2px!important;min-width:0}
#nb#nb .nb-met-card .direction-card-copy > strong{font-size:11px!important;font-weight:500!important;color:var(--nb-muted)!important}
#nb#nb .nb-met-card .direction-card-copy > span{font:600 24px/1.1 var(--nb-mono)!important;color:#fff!important;letter-spacing:-.02em}
#nb#nb .nb-met-card .direction-card-copy > small{display:none!important}
#nb#nb .nb-met-minis{flex:1 1 auto;min-height:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(88px,1fr));grid-auto-rows:min-content;gap:8px;overflow:auto;align-content:start;scrollbar-width:thin}
#nb#nb .nb-met-minis > .ref-metric-tile{height:auto!important;min-height:0!important;max-height:none!important;padding:8px 10px!important;border-radius:16px!important;display:flex!important;flex-direction:column!important;gap:2px!important;
  background:rgba(255,255,255,.06)!important;border:1px solid rgba(255,255,255,.1)!important;box-shadow:none!important;grid-column:auto!important}
#nb#nb .nb-met-minis > .ref-metric-tile:hover{transform:none!important;background:rgba(255,255,255,.1)!important}
#nb#nb .nb-met-minis .ref-tile-info{display:flex!important;flex-direction:column!important;gap:2px!important;height:auto!important}
#nb#nb .nb-met-minis .ref-param-name{font:500 11px/1.25 var(--nb-sans)!important;color:var(--nb-muted)!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
#nb#nb .nb-met-minis .ref-reading{display:flex!important;align-items:baseline!important;gap:4px!important;margin:0!important;height:auto!important}
#nb#nb .nb-met-minis .live-number{font-size:18px!important;line-height:1.15!important;color:#fff!important}
#nb#nb .nb-met-minis .live-unit{font-size:11px!important;color:var(--nb-muted)!important}
#nb#nb .nb-met-minis :is(.nb-inst,.nb-delta,.ref-config-line,.ref-tile-chart,.tile-autocheck,[data-tile-autocheck]){display:none!important}

/* table band */
#nb#nb .nb-band-table > *{height:auto!important;min-height:0!important;max-height:none!important}
#nb#nb .nb-band-table > .ref-table-panel{grid-column:1 / -1!important;display:flex!important;flex-direction:column!important;gap:12px!important;overflow:hidden!important}
#nb#nb .nb-band-insight > *{height:500px!important;min-height:0!important;max-height:none!important}
#nb#nb .nb-band-insight > .nb-aqi-card{grid-column:span 5!important;display:flex!important;flex-direction:column!important;gap:14px!important;overflow:hidden!important}
#nb#nb .nb-band-insight > .nb-analysis-card{grid-column:span 7!important;display:flex!important;flex-direction:column!important;gap:14px!important;overflow:hidden!important}
/* AQI card */
#nb#nb .nb-aqi-main{display:grid;grid-template-columns:188px minmax(0,1fr);gap:20px;flex:1 1 auto;min-height:0}
#nb#nb .nb-aqi-dial{display:flex;flex-direction:column;align-items:center;gap:12px;min-height:0}
#nb#nb .nb-aqi-dial .nb-aqi-text{text-align:center;font-size:12px!important;overflow:auto}
#nb#nb .nb-aqi-gauge{width:160px;height:160px}
#nb#nb .nb-aqi-gauge text{font-family:var(--nb-sans)}
#nb#nb #nb-aqi-value{fill:var(--nb-ink)}
#nb#nb #nb-aqi-cat{fill:var(--nb-muted)}
#nb#nb .nb-aqi-track{stroke:rgba(255,255,255,.09)}
#nb#nb #nb-aqi-arc{transition:stroke-dasharray .6s var(--nb-ease),stroke .3s}
#nb#nb .nb-aqi-scale{position:relative;display:flex;gap:2px;width:150px;height:8px}
#nb#nb .nb-aqi-scale i{flex:1 1 0;border-radius:4px}
#nb#nb .nb-aqi-scale b{position:absolute;top:-4px;width:4px;height:16px;border-radius:2px;background:var(--nb-ink);transform:translateX(-50%);box-shadow:0 0 0 2px rgba(0,0,0,.25)}
#nb#nb .nb-aqi-scale b[hidden]{display:none}
#nb#nb .nb-aqi-side{display:flex;flex-direction:column;gap:10px;min-width:0;min-height:0}
#nb#nb .nb-aqi-text{margin:0!important;font-size:12.5px!important;line-height:1.5!important;color:var(--nb-ink-2)!important}
#nb#nb .nb-aqi-rows{display:flex;flex-direction:column;gap:6px;overflow:auto;min-height:0;scrollbar-width:thin}
#nb#nb .nb-aqi-row{display:grid;grid-template-columns:58px minmax(0,1fr) 84px 44px;align-items:center;gap:10px;padding:5px 10px;border-radius:12px;background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.06)}
#nb#nb .nb-aqi-row.is-off{opacity:.62}
#nb#nb .nb-aqi-name{display:flex;flex-direction:column;gap:1px;font:600 12px/1.2 var(--nb-sans);color:var(--nb-ink)!important}
#nb#nb .nb-aqi-name small{font:400 10px/1.2 var(--nb-sans);color:var(--nb-muted)!important}
#nb#nb .nb-aqi-conc{font-size:13px;color:var(--nb-ink)!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#nb#nb .nb-aqi-conc small{font:400 10px var(--nb-sans);color:var(--nb-muted)!important}
#nb#nb .nb-aqi-hours{display:flex;flex-direction:column;gap:3px}
#nb#nb .nb-aqi-hours i{display:block;height:5px;border-radius:5px;background:rgba(255,255,255,.08);overflow:hidden}
#nb#nb .nb-aqi-hours em{display:block;height:100%;border-radius:5px;background:#5be38a}
#nb#nb .nb-aqi-hours small{font-size:10px;color:var(--nb-muted)!important}
#nb#nb .nb-aqi-idx{justify-self:end;min-width:40px;text-align:center;padding:4px 0;border-radius:999px;font-size:12px;font-weight:700;background:var(--c,rgba(255,255,255,.08));color:#1a1436!important}
#nb#nb .nb-aqi-row.is-off .nb-aqi-idx{color:var(--nb-muted)!important}
#nb#nb .nb-aqi-empty{margin:0;font-size:12px;color:var(--nb-muted)!important}
#nb#nb .nb-aqi-trend{display:flex;flex-direction:column;gap:6px;flex:0 0 auto}
#nb#nb .nb-aqi-trend-head{display:flex;justify-content:space-between;gap:10px}
#nb#nb .nb-aqi-bars{display:flex;align-items:flex-end;gap:3px;height:56px;padding-bottom:2px;border-bottom:1px solid rgba(255,255,255,.1)}
#nb#nb .nb-aqi-bars span{flex:1 1 0;min-width:0;border-radius:3px 3px 1px 1px;transition:height .4s var(--nb-ease)}
@media (max-width:1500px){#nb#nb .nb-aqi-main{grid-template-columns:150px minmax(0,1fr);gap:16px}#nb#nb .nb-aqi-gauge{width:140px;height:140px}#nb#nb .nb-aqi-scale{width:136px}#nb#nb .nb-aqi-row{grid-template-columns:50px minmax(0,1fr) 64px 40px;gap:8px}}
#nb#nb .nb-band-table .ref-table-head{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px;margin:0!important;padding:0!important;border:0!important;background:none!important}
#nb#nb .nb-band-table .ref-table-head strong{font:600 16px/1.25 var(--nb-sans)!important}
#nb#nb .nb-band-table .ref-table-head span:not(.status-chip){font-size:12px!important;margin-left:10px}
#nb#nb .nb-band-table .ref-table-head > div{display:flex;align-items:baseline;flex-wrap:wrap}
#nb#nb .nb-band-table .ref-table-wrap{flex:1 1 auto!important;min-height:0!important;height:auto!important;max-height:none!important;overflow:auto!important;border:0!important;background:none!important;border-radius:0!important;scrollbar-width:thin}
#nb#nb .nb-band-table .pivot-timebase-table{table-layout:fixed!important;width:100%!important;min-width:560px;border-collapse:separate!important;border-spacing:0!important;font-size:13px}
#nb#nb .nb-band-table .pivot-timebase-table th:nth-child(2){width:112px!important}
#nb#nb .nb-band-table .pivot-timebase-table th:nth-child(3){width:30%!important}
#nb#nb .nb-band-table .pivot-timebase-table thead th{position:sticky;top:0;z-index:1;background:#221a4a!important;color:var(--nb-muted)!important;font:500 11px/1.2 var(--nb-sans)!important;letter-spacing:.02em!important;text-transform:none!important;padding:0 10px 10px!important;border:0!important;text-align:right}
#nb#nb .nb-band-table .pivot-timebase-table thead th:nth-child(-n+3){text-align:left}
#nb#nb .nb-band-table .pivot-timebase-table td{padding:9px 10px!important;border:0!important;text-align:right;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
#nb#nb .nb-band-table .pivot-timebase-table td:nth-child(-n+3){text-align:left}
#nb#nb .nb-band-table .pivot-timebase-table tbody tr:nth-child(odd) td{background:rgba(255,255,255,.045)!important}
#nb#nb .nb-band-table .pivot-timebase-table tbody tr:nth-child(even) td{background:transparent!important}
#nb#nb .nb-band-table .pivot-timebase-table tbody tr td:nth-child(2){border-radius:12px 0 0 12px}
#nb#nb .nb-band-table .pivot-timebase-table tbody tr td:last-child{border-radius:0 12px 12px 0}
#nb#nb .nb-band-table .pivot-timebase-table tbody tr:hover td{background:rgba(255,255,255,.09)!important}
#nb#nb .nb-band-table .ref-table-param{display:flex!important;align-items:baseline!important;gap:8px!important;min-width:0}
#nb#nb .nb-band-table .ref-table-param strong{font-weight:500!important;overflow:hidden;text-overflow:ellipsis}
#nb#nb .nb-band-table .ref-table-param small{font-size:11px!important;color:var(--nb-muted)!important}
#nb#nb .nb-band-table .ref-inline-unit{display:none!important}
#nb#nb .nb-band-table .ref-live-time{color:var(--nb-muted)!important;font-family:var(--nb-mono)!important;font-size:12px}
/* analysis */
#nb#nb .nb-analysis-body{display:flex;gap:18px;flex:1 1 auto;min-height:0}
#nb#nb .nb-corr{display:flex;flex-direction:column;gap:8px;flex:0 0 auto}
#nb#nb .nb-corr-grid{display:grid;grid-template-columns:48px repeat(var(--nb-corr-n,6),38px);grid-auto-rows:38px;gap:4px;font-size:10px}
#nb#nb .nb-corr-lab{display:flex;align-items:center;justify-content:center;color:var(--nb-muted)!important;overflow:hidden;white-space:nowrap}
#nb#nb .nb-corr-lab.row{justify-content:flex-start}
#nb#nb .nb-corr-cell{display:flex;align-items:center;justify-content:center;border-radius:6px;color:#fff!important;font-size:9px!important}
#nb#nb .nb-corr-cell.self{background:rgba(255,255,255,.035)}
#nb#nb .nb-diurnal{display:flex;flex-direction:column;gap:8px;flex:1 1 auto;min-width:0;min-height:0}
#nb#nb .nb-diurnal-bars{display:flex;align-items:flex-end;gap:3px;flex:1 1 auto;min-height:150px;padding-bottom:4px;border-bottom:1px solid rgba(255,255,255,.1)}
#nb#nb .nb-diurnal-bars span{flex:1 1 0;min-width:0;border-radius:4px 4px 2px 2px;background:linear-gradient(180deg,#ff6b9e,rgba(185,140,255,.55));transition:height .4s var(--nb-ease)}
#nb#nb .nb-diurnal-axis{display:flex;justify-content:space-between;font-size:10px;color:var(--nb-muted)!important}
#nb#nb .nb-analysis-text{margin:0!important;font-size:12px!important;line-height:1.5!important;color:var(--nb-ink-2)!important}

/* responsive */
@media (max-width:1180px){
  #nb#nb .nb-band-insight > .nb-aqi-card,#nb#nb .nb-band-insight > .nb-analysis-card{grid-column:1 / -1!important;height:auto!important}
  #nb#nb .nb-band-params > .ref-metric-tile{grid-column:span 3!important}
  #nb#nb .nb-band-params > .dashboard-mini-windrose{grid-column:1 / span 6!important}
  #nb#nb .nb-band-params > .nb-met-card{grid-column:7 / span 6!important}
}
@media (max-width:760px){
  #nb#nb .ref-dashboard.page,#nb#nb .page.live-monitor-page.ref-dashboard{padding:8px 14px 20px!important}
  #nb#nb .nb-band{gap:14px}
  #nb#nb .nb-band-params > .ref-metric-tile{grid-column:span 6!important}
  #nb#nb .nb-band-params > .dashboard-mini-windrose,#nb#nb .nb-band-params > .nb-met-card{grid-column:1 / -1!important;grid-row:auto / span 2!important}
  #nb#nb .nb-hero-chips{display:none}
  #nb#nb .nb-analysis-body{flex-direction:column}
}

/* layout popover */
#nb#nb .nb-layout-pop{position:fixed;z-index:2500;width:440px;padding:16px;border-radius:22px;background:linear-gradient(160deg,#2e2262,#1b1442)!important;border:1px solid var(--nb-edge);box-shadow:0 40px 80px -30px rgba(0,0,0,.95);display:flex;flex-direction:column;gap:12px;color:var(--nb-ink);animation:nb-pop .18s var(--nb-ease) both}
#nb#nb .nb-layout-pop > strong{font:600 14px/1.2 var(--nb-sans)}
#nb#nb .nb-layout-pop p{margin:0;font-size:11px;color:var(--nb-muted)!important}
#nb#nb .nb-layout-presets{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}
#nb#nb .nb-layout-presets button,#nb#nb .nb-layout-fit button,#nb#nb .nb-layout-reset{height:34px;border-radius:var(--nb-r-pill);border:1px solid var(--nb-edge-2);background:var(--nb-fill);color:var(--nb-ink-2)!important;font:500 12px/1 var(--nb-sans);cursor:pointer}
#nb#nb .nb-layout-presets button:hover,#nb#nb .nb-layout-fit button:hover,#nb#nb .nb-layout-reset:hover{background:var(--nb-fill-2)}
#nb#nb .nb-layout-presets button[aria-pressed="true"],#nb#nb .nb-layout-fit button[aria-pressed="true"]{background:var(--nb-accent);color:var(--nb-accent-ink)!important;border-color:transparent;font-weight:600}
#nb#nb .nb-layout-slots{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
#nb#nb .nb-layout-slots label{display:flex;flex-direction:column;gap:4px;font-size:11px;color:var(--nb-muted)!important}
#nb#nb .nb-layout-slots select{height:34px;padding:0 10px;font:500 12px var(--nb-sans)}
#nb#nb .nb-met-minis > .ref-metric-tile,#nb#nb .nb-met-minis .ref-tile-info{text-align:left!important;align-items:flex-start!important}
#nb#nb .nb-met-minis .ref-reading{justify-content:flex-start!important}
#nb#nb .nb-met-card .direction-ring b{display:none!important}
#nb#nb .browser-qa-control:disabled{display:none!important}
#nb#nb .ref-brand-lockup .nb-station{display:inline!important;text-transform:none!important;letter-spacing:0!important;font-weight:400!important}
#nb#nb .ref-brand-lockup .nb-station[hidden]{display:none!important}
@media (max-width:1599px){#nb#nb .ref-brand-lockup .nb-station{display:none!important}}
#nb#nb .nb-band-table .pivot-timebase-table thead th:nth-child(n){background:#231b4c!important;box-shadow:none!important;border:0!important}
#nb#nb .nb-band-table .pivot-timebase-table thead th:nth-child(n+4){text-align:right!important}
#nb#nb .nb-band-table .pivot-timebase-table td:nth-child(n+4){text-align:right!important}

/* ------------------------------------------------ 20. one layout system
   Every page uses the same gutters, page heading, card padding, card title and
   segmented-control style as the dashboard, in both themes. */
#nb#nb #page-root > .page{max-width:none!important;width:auto!important;margin:0!important;padding:16px 28px 32px!important;box-sizing:border-box}
#nb#nb #page-root > .page:not(.ref-dashboard){display:flex!important;flex-direction:column!important;gap:18px!important}
#nb#nb #page-root > .page:not(.ref-dashboard) > *{margin-top:0!important;margin-bottom:0!important;min-width:0}
/* page heading: eyebrow, title, one-line description */
#nb#nb .page-head{margin:0!important;padding:0!important;display:flex!important;align-items:flex-end!important;justify-content:space-between!important;gap:16px!important}
#nb#nb .page-head .eyebrow{font:700 11px/1.2 var(--nb-sans)!important;letter-spacing:.14em!important;margin:0 0 6px!important}
#nb#nb .page-head h1,#nb#nb .control-center-head h1{font:700 28px/1.15 var(--nb-sans)!important;letter-spacing:-.03em!important;margin:0!important;color:var(--nb-ink)!important}
#nb#nb .page-head p,#nb#nb .control-center-head p{font-size:13px!important;line-height:1.45!important;margin:6px 0 0!important;color:var(--nb-muted)!important}
#nb#nb .control-center-head{padding:0!important;margin:0!important;display:flex!important;align-items:center!important;gap:14px!important;background:none!important;border:0!important;box-shadow:none!important}
#nb#nb .control-center-head .control-center-icon{width:44px!important;height:44px!important;flex:0 0 44px}
/* cards: same padding and title everywhere */
#nb#nb #page-root > .page:not(.ref-dashboard) > :is(.panel,article.panel),#nb#nb #page-root > .page > .grid > :is(.card,.panel){padding:20px 22px!important;border-radius:var(--nb-r-card)!important}
#nb#nb #page-root .page :is(.section-title h2,.section-title strong,.acquisition-card-title strong,.recent-events-title strong,.config-entity-panel h2,.panel > h2,.card > h2){font:600 16px/1.25 var(--nb-sans)!important;letter-spacing:-.01em!important;color:var(--nb-ink)!important}
#nb#nb #page-root .page :is(.section-title p,.acquisition-card-title span,.recent-events-title span){font-size:12px!important;color:var(--nb-muted)!important}
/* report cards: icon tile instead of a poster-size glyph */
#nb#nb #page-root .grid > .card > .section-title{display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:flex-start!important;gap:14px!important;height:auto!important;min-height:0!important}
#nb#nb #page-root .grid > .card > .section-title > svg{order:-1;flex:0 0 44px!important;width:44px!important;height:44px!important;padding:11px!important;box-sizing:border-box;border-radius:16px!important;
  background:linear-gradient(140deg,rgba(255,107,158,.28),rgba(185,140,255,.24))!important;border:1px solid var(--nb-edge)!important;color:var(--nb-ink)!important}
#nb#nb #page-root .grid > .card{display:flex!important;flex-direction:column!important;gap:14px!important}
/* segmented controls: one look, sized to content */
#nb#nb :is(.segmented,.tabular-mode-tabs,.analysis-mode-tabs,.configuration-tabs,.station-entity-tabs,.live-tabs,.met-subtabs,.dashboard-tabs,.timebase-tab-strip){
  display:inline-flex!important;flex-wrap:wrap!important;align-self:flex-start!important;width:auto!important;max-width:100%!important;gap:2px!important;padding:4px!important;margin:0!important;
  border-radius:var(--nb-r-pill)!important;background:rgba(255,255,255,.05)!important;border:1px solid var(--nb-edge-2)!important;box-shadow:none!important}
#nb#nb :is(.segmented,.tabular-mode-tabs,.analysis-mode-tabs,.configuration-tabs,.station-entity-tabs,.live-tabs,.met-subtabs,.dashboard-tabs,.timebase-tab-strip) > button{
  flex:0 0 auto!important;width:auto!important;min-width:0!important;height:36px!important;padding:0 16px!important;border:0!important;border-radius:var(--nb-r-pill)!important;
  background:transparent!important;color:var(--nb-ink-2)!important;font:500 13px/1 var(--nb-sans)!important;white-space:nowrap!important;box-shadow:none!important}
#nb#nb :is(.segmented,.tabular-mode-tabs,.analysis-mode-tabs,.configuration-tabs,.station-entity-tabs,.live-tabs,.met-subtabs,.dashboard-tabs,.timebase-tab-strip) > button:hover{background:var(--nb-fill-2)!important}
#nb#nb :is(.segmented,.tabular-mode-tabs,.analysis-mode-tabs,.configuration-tabs,.station-entity-tabs,.live-tabs,.met-subtabs,.dashboard-tabs,.timebase-tab-strip) > button:is(.active,[aria-selected="true"],[aria-pressed="true"]){
  background:var(--nb-fill-3)!important;color:var(--nb-ink)!important;font-weight:600!important}
#nb#nb .configuration-nav-stack{padding:0!important;margin:0!important;background:none!important;border:0!important}
/* notes: one style */
#nb#nb #page-root .page :is(.tabular-range-note,.historian-independence-note,.database-config-note){padding:10px 14px!important;border-radius:var(--nb-r-inner)!important;font-size:12px!important}
@media (max-width:760px){#nb#nb #page-root > .page{padding:12px 14px 24px!important}#nb#nb .page-head h1,#nb#nb .control-center-head h1{font-size:22px!important}}
#nb#nb :is(.segmented,.configuration-tabs,.tabular-mode-tabs,.analysis-mode-tabs,.timebase-tab-strip) > button{max-width:none!important;overflow:visible!important;text-overflow:clip!important;line-height:1!important}
#nb#nb #page-root .grid > .card > :is(button,.button){align-self:flex-start!important;width:auto!important}

/* ------------------------------------------------ 21. top bar (menu only)
   One row: menu, brand, current section and station | clock and status |
   uniform round icon buttons. Navigation is in the menu button. */
#nb#nb header.topbar,#nb#nb .ref-topbar{display:flex!important;align-items:center!important;gap:16px!important;height:64px!important;min-height:64px!important;padding:0 10px 0 12px!important;box-sizing:border-box}
#nb#nb .nb-tabs{display:none!important}
#nb#nb .ref-topbar-brand{flex:1 1 auto!important;min-width:0!important;display:flex!important;align-items:center!important;gap:12px!important;padding:0!important;height:auto!important;width:auto!important;border-radius:0!important}
#nb#nb .ref-brand-lockup{display:flex!important;align-items:center!important;gap:14px!important;min-width:0!important;white-space:nowrap}
#nb#nb .ref-brand-lockup > strong{font:700 20px/1 var(--nb-sans)!important;letter-spacing:-.02em!important;flex:0 0 auto}
#nb#nb .ref-brand-lockup .nb-crumb{display:flex!important;align-items:baseline;gap:10px;min-width:0;padding-left:14px;border-left:1px solid var(--nb-edge)}
#nb#nb .ref-brand-lockup .nb-crumb[hidden]{display:none!important}
#nb#nb .ref-brand-lockup .nb-crumb :is(b,small){display:inline!important}
#nb#nb .nb-crumb b{text-transform:none!important;letter-spacing:-.01em!important;font:600 15px/1.2 var(--nb-sans);color:var(--nb-ink)!important;white-space:nowrap}
#nb#nb .nb-crumb small{text-transform:none!important;letter-spacing:0!important;font:400 12px/1.2 var(--nb-sans);color:var(--nb-muted)!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}
#nb#nb .ref-topbar-center{flex:0 0 auto!important;display:flex!important;align-items:center!important;gap:14px!important;padding:0!important;margin:0!important;width:auto!important}
#nb#nb .ref-control-pill{display:none!important}
#nb#nb .ref-clock-block{display:flex!important;flex-direction:column!important;align-items:flex-end!important;gap:2px!important;padding:0!important;min-width:0!important}
#nb#nb .ref-clock-block strong{font:600 20px/1 var(--nb-mono)!important;letter-spacing:-.02em}
#nb#nb .ref-clock-block span{font-size:11px!important;line-height:1!important}
#nb#nb .runtime-pill{height:30px!important;padding:0 12px!important;display:inline-flex!important;align-items:center!important;gap:7px!important;font-size:11px!important}
#nb#nb .ref-topbar-right,#nb#nb .topbar-right{flex:0 0 auto!important;display:flex!important;align-items:center!important;gap:6px!important;padding:0 0 0 12px!important;margin:0!important;border-left:1px solid var(--nb-edge-2)!important;border-radius:0!important;height:40px}
#nb#nb .ref-topbar-right > :is(.toolbar-icon,.ref-icon-control){width:40px!important;height:40px!important;min-width:40px!important;padding:0!important;display:inline-grid!important;place-items:center!important;border-radius:50%!important;font-size:0!important;line-height:0!important;position:relative}
#nb#nb .ref-topbar-right > :is(.toolbar-icon,.ref-icon-control) svg{width:18px!important;height:18px!important;stroke-width:1.8}
#nb#nb .ref-topbar-right .ref-notification b{position:absolute!important;top:2px!important;right:0!important;min-width:16px!important;height:16px!important;padding:0 4px!important;border-radius:999px!important;font:700 9px/16px var(--nb-mono)!important;box-sizing:border-box}
#nb#nb .ref-topbar-right .ref-notification b:is(:empty){display:none}
#nb#nb .account-control{height:40px!important;padding:0 10px 0 4px!important;display:inline-flex!important;align-items:center!important;gap:8px!important;border-radius:999px!important}
#nb#nb .account-control .avatar{width:32px!important;height:32px!important;min-width:32px!important;border-radius:50%!important;display:grid!important;place-items:center!important}
#nb#nb .account-control .avatar svg{width:16px!important;height:16px!important}
#nb#nb .account-control > svg{width:16px!important;height:16px!important}
#nb#nb .account-control .account-text{display:none!important}
@media (max-width:1100px){#nb#nb .ref-brand-lockup .nb-crumb small{display:none!important}#nb#nb .ref-clock-block span{display:none}}
@media (max-width:820px){#nb#nb .ref-brand-lockup .nb-crumb{display:none!important}#nb#nb #browser-qa-button,#nb#nb #ref-layout-button{display:none!important}}

/* ------------------------------------------- 22. meteorology card (list)
   Compass on top, then every meteorological parameter as one readable row:
   full name on the left, live value and unit on the right. */
#nb#nb .nb-band-params{grid-auto-rows:232px}
#nb#nb .nb-met-card{gap:12px!important}
#nb#nb .nb-met-card .dashboard-direction-card{flex:0 0 auto!important;contain:none!important;display:grid!important;grid-template-columns:88px minmax(0,1fr)!important;align-items:center!important;gap:16px!important;padding:0 0 12px!important;border-bottom:1px solid var(--nb-edge-2)!important}
#nb#nb .nb-met-card .dashboard-direction-card .direction-dial{order:-1!important;width:88px!important;height:88px!important;flex:none!important;display:block!important;margin:0!important}
#nb#nb .nb-met-card .direction-ring{position:relative!important;width:88px!important;height:88px!important;box-sizing:border-box!important;border-radius:50%!important;overflow:hidden!important;
  background:radial-gradient(circle,rgba(255,255,255,.05) 0 62%,color-mix(in srgb,var(--series,#ffb547) 18%,transparent) 100%)!important;border:1px solid var(--nb-edge)!important;box-shadow:inset 0 0 0 6px rgba(255,255,255,.03)!important}
#nb#nb .nb-met-card .direction-ring span{position:absolute!important;font:700 9px/1 var(--nb-sans)!important;color:var(--nb-muted)!important}
#nb#nb .nb-met-card .direction-ring .n{top:6px!important;left:50%!important;right:auto!important;bottom:auto!important;transform:translateX(-50%)!important}
#nb#nb .nb-met-card .direction-ring .s{bottom:6px!important;top:auto!important;left:50%!important;right:auto!important;transform:translateX(-50%)!important}
#nb#nb .nb-met-card .direction-ring .e{right:7px!important;left:auto!important;top:50%!important;bottom:auto!important;transform:translateY(-50%)!important}
#nb#nb .nb-met-card .direction-ring .w{left:7px!important;right:auto!important;top:50%!important;bottom:auto!important;transform:translateY(-50%)!important}
#nb#nb .nb-met-card .direction-needle{position:absolute!important;left:50%!important;top:12px!important;width:3px!important;height:32px!important;border-radius:3px!important;transform-origin:50% 32px!important;transform:translateX(-50%) rotate(var(--wind-angle,0deg))!important;background:var(--nb-accent)!important}
#nb#nb .nb-met-card .direction-ring::after{content:"";position:absolute;left:50%;top:50%;width:8px;height:8px;margin:-4px 0 0 -4px;border-radius:50%;background:var(--nb-ink)}
#nb#nb .nb-met-card .direction-card-copy{gap:4px!important}
#nb#nb .nb-met-card .direction-card-copy > strong{font-size:12px!important;white-space:nowrap}
#nb#nb .nb-met-card .direction-card-copy > span{font-size:26px!important}
#nb#nb .nb-met-minis{display:flex!important;flex-direction:column!important;gap:2px!important;overflow:auto!important;padding-right:2px}
#nb#nb .nb-met-minis > .ref-metric-tile{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;grid-template-rows:auto!important;align-items:center!important;gap:0 12px!important;height:auto!important;min-height:28px!important;padding:4px 10px!important;border-radius:10px!important;background:transparent!important;border:0!important;box-shadow:none!important;flex:0 0 auto}
#nb#nb .nb-met-minis > .ref-metric-tile:nth-child(odd){background:rgba(255,255,255,.04)!important}
#nb#nb .nb-met-minis > .ref-metric-tile:hover{background:rgba(255,255,255,.08)!important}
#nb#nb .nb-met-minis .ref-tile-info{display:contents!important}
#nb#nb .nb-met-minis .ref-param-name{grid-column:1!important;grid-row:1!important;display:flex!important;align-items:center;gap:8px;font:500 13px/1.3 var(--nb-sans)!important;color:var(--nb-ink-2)!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
#nb#nb .nb-met-minis .ref-param-name::before{content:"";flex:0 0 8px;width:8px;height:8px;border-radius:50%;background:var(--series,#b98cff)}
#nb#nb .nb-met-minis .ref-reading{grid-column:2!important;grid-row:1!important;display:flex!important;align-items:baseline!important;justify-content:flex-end!important;gap:4px!important;margin:0!important;white-space:nowrap}
#nb#nb .nb-met-minis .live-number{font-size:15px!important;font-weight:600!important;line-height:1.2!important;color:var(--nb-ink)!important}
#nb#nb .nb-met-minis .live-unit{font-size:11px!important;color:var(--nb-muted)!important;min-width:0}
/* no gas/dust cards: wind rose and meteorology share the band evenly */
#nb#nb .nb-band-params.has-met:not(:has(> .ref-metric-tile)) > .dashboard-mini-windrose{grid-column:1 / span 6!important}
#nb#nb .nb-band-params.has-met:not(:has(> .ref-metric-tile)) > .nb-met-card{grid-column:7 / span 6!important}
@media (max-width:1180px){#nb#nb .nb-band-params.has-met:not(:has(> .ref-metric-tile)) > .dashboard-mini-windrose{grid-column:1 / span 6!important}}
#nb#nb .nb-band-params.has-met:not(:has(> .ref-metric-tile)) .nb-met-minis{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;column-gap:18px!important;row-gap:2px!important;align-content:start}
#nb#nb .nb-band-params.has-met:not(:has(> .ref-metric-tile)) .nb-met-minis > .ref-metric-tile:nth-child(odd){background:transparent!important}
#nb#nb .nb-band-params.has-met:not(:has(> .ref-metric-tile)) .nb-met-minis > .ref-metric-tile:nth-child(4n+1),#nb#nb .nb-band-params.has-met:not(:has(> .ref-metric-tile)) .nb-met-minis > .ref-metric-tile:nth-child(4n+2){background:rgba(255,255,255,.04)!important}
#nb#nb .nb-band-params.has-met:not(:has(> .ref-metric-tile)) .nb-met-minis > .ref-metric-tile{min-height:40px!important;padding:6px 12px!important}
#nb#nb .nb-band-params.has-met:not(:has(> .ref-metric-tile)) .nb-met-minis .ref-param-name{font-size:14px!important}
#nb#nb .nb-band-params.has-met:not(:has(> .ref-metric-tile)) .nb-met-minis .live-number{font-size:18px!important}

/* ------------------------------------------ 23. no inner vertical scrolling
   The trend and the table grow with their content: the trend chart height
   follows the number of plotted parameters, the table shows every row. */
#nb#nb .nb-hero .ref-trend-canvas{flex:0 0 auto!important;height:var(--nb-hero-chart-h,340px)!important;min-height:0!important;max-height:none!important;overflow:hidden!important}
#nb#nb .nb-hero-foot{align-items:flex-start!important}
#nb#nb .nb-hero-range{align-self:center}
#nb#nb .nb-band-table > .ref-table-panel{overflow:visible!important}
#nb#nb .nb-band-table .ref-table-wrap{flex:0 0 auto!important;height:auto!important;max-height:none!important;overflow-x:auto!important;overflow-y:hidden!important}
#nb#nb .nb-band-table .pivot-timebase-table thead th{position:static!important}
/* range / limit lines on parameter cards: one aligned block */
#nb#nb .nb-band-params > .ref-metric-tile .ref-config-line{align-self:stretch!important;justify-content:flex-start!important;grid-column:auto!important;grid-row:auto!important}
#nb#nb .nb-band-params > .ref-metric-tile .ref-config-line span{min-width:40px;display:inline-block}

/* ---------------------------------------- 24. UI14.8 dashboard additions */
/* band header with a time-range selector */
#nb#nb .nb-band-head{grid-column:1 / -1;display:flex;align-items:center;gap:12px;min-width:0;margin:0 0 -4px;padding:0 4px}
#nb#nb .nb-band-head .nb-seg{margin-left:auto}
#nb#nb .nb-seg-sm button{height:28px!important;padding:0 11px!important;font-size:12px!important}
#nb#nb .nb-band-met{order:var(--nb-ord-met,2)}
#nb#nb .nb-band-params{order:var(--nb-ord-params,1)}
#nb#nb .nb-band-insight{order:var(--nb-ord-insight,3)}
#nb#nb .nb-band-table{order:var(--nb-ord-table,4)}
/* meteorology band: wind rose 50 % | meteorology 50 % */
#nb#nb .nb-band-met > .panel{grid-column:span 6!important;min-height:460px!important;height:auto!important;display:flex!important;flex-direction:column!important;gap:14px!important;overflow:hidden!important}
#nb#nb .nb-rose-body{flex:1 1 auto;display:grid;grid-template-columns:minmax(0,1fr) 210px;gap:18px;min-height:360px}
#nb#nb .nb-rose-plot{position:relative;min-height:340px}
#nb#nb .nb-rose-plot #dashboard-mini-wind-rose{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;max-height:none!important;min-height:0!important}
#nb#nb .nb-rose-side{display:flex;flex-direction:column;justify-content:space-between;gap:14px;min-width:0}
#nb#nb .nb-rose-stats{margin:0;display:flex;flex-direction:column;gap:2px}
#nb#nb .nb-rose-stats > div{display:flex;justify-content:space-between;align-items:baseline;gap:10px;padding:7px 10px;border-radius:10px}
#nb#nb .nb-rose-stats > div:nth-child(odd){background:rgba(255,255,255,.045)}
#nb#nb .nb-rose-stats dt{font-size:12px;color:var(--nb-muted)!important;white-space:nowrap}
#nb#nb .nb-rose-stats dd{margin:0;font-size:13px;font-weight:600;color:var(--nb-ink)!important;text-align:right}
#nb#nb .nb-rose-legend{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 10px;font-size:11px;color:var(--nb-ink-2)!important}
#nb#nb .nb-rose-legend > .nb-card-note{grid-column:1 / -1}
#nb#nb .nb-rose-legend span{display:flex;align-items:center;gap:6px;white-space:nowrap}
#nb#nb .nb-rose-legend i{width:12px;height:12px;border-radius:4px;flex:0 0 12px}
/* meteorology card: compass + parameter rows with sparklines */
#nb#nb .nb-met-top{display:grid;grid-template-columns:120px minmax(0,1fr);align-items:center;gap:18px;padding-bottom:14px;border-bottom:1px solid var(--nb-edge-2)}
#nb#nb .nb-compass{width:120px;height:120px}
#nb#nb .nb-compass .ring{fill:rgba(255,255,255,.04);stroke:var(--nb-edge)}
#nb#nb .nb-compass .ticks line{stroke:var(--nb-faint);stroke-width:.8}
#nb#nb .nb-compass .ticks line.maj{stroke:var(--nb-ink-2);stroke-width:1.4}
#nb#nb .nb-compass text{font:700 8px var(--nb-sans);fill:var(--nb-muted);text-anchor:middle}
#nb#nb .nb-compass text.n{fill:var(--nb-accent)}
#nb#nb .nb-compass .arrow path{fill:var(--nb-accent)}
#nb#nb .nb-compass .arrow path.tail{fill:var(--nb-muted)}
#nb#nb .nb-compass .arrow line{stroke:var(--nb-accent);stroke-width:2}
#nb#nb .nb-compass .arrow{transition:transform .6s var(--nb-ease)}
#nb#nb .nb-compass .hub{fill:var(--nb-ink)}
#nb#nb .nb-met-wind{display:flex;flex-direction:column;gap:4px;min-width:0}
#nb#nb .nb-met-wind strong{font:600 30px/1.1 var(--nb-mono)!important;color:var(--nb-ink)!important;letter-spacing:-.02em}
#nb#nb .nb-met-wind-sub{font-size:13px;color:var(--nb-ink-2)!important}
#nb#nb .nb-met-list{display:flex;flex-direction:column;gap:2px}
#nb#nb .nb-met-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(90px,170px) minmax(96px,auto);align-items:center;gap:14px;min-height:40px;padding:4px 12px;border-radius:12px;cursor:pointer}
#nb#nb .nb-met-row:nth-child(odd){background:rgba(255,255,255,.045)}
#nb#nb .nb-met-row:hover{background:rgba(255,255,255,.09)}
#nb#nb .nb-met-row > .ref-metric-tile,#nb#nb .nb-met-row .ref-tile-info{display:contents!important}
#nb#nb .nb-met-row :is(.nb-inst,.nb-delta,.ref-config-line,.ref-tile-chart,.tile-autocheck,[data-tile-autocheck],.ref-metric-foot){display:none!important}
#nb#nb .nb-met-row .ref-param-name{order:1;grid-column:1;grid-row:1;display:flex!important;align-items:center;gap:9px;margin:0!important;font:500 14px/1.3 var(--nb-sans)!important;color:var(--nb-ink-2)!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}
#nb#nb .nb-met-row .ref-param-name::before{content:"";flex:0 0 8px;width:8px;height:8px;border-radius:50%;background:var(--series,#b98cff)}
#nb#nb .nb-met-row .nb-met-spark{order:2;grid-column:2;grid-row:1;height:30px;display:block}
#nb#nb .nb-met-row .nb-met-spark svg{display:block;width:100%;height:30px}
#nb#nb .nb-met-row .ref-reading{order:3;grid-column:3;grid-row:1;display:flex!important;align-items:baseline!important;justify-content:flex-end!important;gap:4px!important;margin:0!important;white-space:nowrap}
#nb#nb .nb-met-row .live-number{font-size:17px!important;font-weight:600!important;color:var(--nb-ink)!important;line-height:1.2!important}
#nb#nb .nb-met-row .live-unit{font-size:11px!important;color:var(--nb-muted)!important}
@media (max-width:1180px){#nb#nb .nb-band-met > .panel{grid-column:1 / -1!important}}
@media (max-width:620px){#nb#nb .nb-rose-body{grid-template-columns:1fr}#nb#nb .nb-met-row{grid-template-columns:minmax(0,1fr) auto}#nb#nb .nb-met-row .nb-met-spark{display:none}}
/* parameter cards: the trend blends into the card, edge to edge */
#nb#nb .nb-band-params > .ref-metric-tile .ref-mini-trend{margin:2px -16px 0!important;background:none!important;border-radius:0!important;min-height:48px!important}
#nb#nb .nb-band-params > .ref-metric-tile .ref-mini-trend svg circle{r:2.6}
#nb#nb .nb-band-params > .ref-metric-tile .ref-metric-foot{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:8px!important;white-space:nowrap!important;min-width:0}
#nb#nb .nb-band-params > .ref-metric-tile .ref-metric-foot > *{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
#nb#nb .nb-band-params > .ref-metric-tile .ref-foot-status{display:flex!important;align-items:center;gap:5px;flex:0 1 auto}
/* table: Date, Time, Parameter, Range, Wind direction, time bases */
#nb#nb .nb-band-table .pivot-timebase-table :is(th,td):nth-child(1){display:table-cell!important}
#nb#nb .nb-band-table .pivot-timebase-table th:nth-child(1){width:104px!important}
#nb#nb .nb-band-table .pivot-timebase-table th:nth-child(2){width:104px!important}
#nb#nb .nb-band-table .pivot-timebase-table th:nth-child(3){width:20%!important}
#nb#nb .nb-band-table .pivot-timebase-table th:nth-child(4){width:150px!important}
#nb#nb .nb-band-table .pivot-timebase-table th:nth-child(5){width:112px!important}
#nb#nb .nb-band-table .pivot-timebase-table :is(th,td):nth-child(-n+5){text-align:left!important}
#nb#nb .nb-band-table .pivot-timebase-table :is(th,td):nth-child(n+6){text-align:right!important}
#nb#nb .nb-band-table .pivot-timebase-table tbody tr td:nth-child(2){border-radius:0!important}
#nb#nb .nb-band-table .pivot-timebase-table tbody tr td:nth-child(1){border-radius:12px 0 0 12px}
#nb#nb .nb-band-table .ref-live-date{color:var(--nb-muted)!important;font-family:var(--nb-mono)!important;font-size:12px}
#nb#nb .nb-band-table .nb-range-cell{color:var(--nb-ink-2)!important;font-size:12px}
#nb#nb .nb-band-table .nb-wd-cell{color:var(--nb-ink)!important;font-size:12px}
/* top bar: date with the time; acquisition start / stop */
#nb#nb .ref-clock-block{flex-direction:row-reverse!important;align-items:baseline!important;gap:10px!important}
#nb#nb .ref-clock-block #ref-clock-date,#nb#nb .ref-clock-block span{display:inline!important;font-size:13px!important;color:var(--nb-ink-2)!important;white-space:nowrap}
#nb#nb .nb-acq-btn{color:#7ff0b0!important;border-color:rgba(91,227,138,.35)!important;background:rgba(91,227,138,.1)!important}
#nb#nb .nb-acq-btn.is-running{color:#ffb3c2!important;border-color:rgba(255,92,122,.35)!important;background:rgba(255,92,122,.1)!important}
#nb#nb .nb-acq-btn[aria-busy="true"]{opacity:.6;cursor:progress}
@media (max-width:1100px){#nb#nb .ref-clock-block #ref-clock-date{display:none!important}}
#nb#nb .nb-compass :is(text,.arrow path,.hub,.ring){stroke-width:0!important}
#nb#nb .nb-compass .ring{stroke-width:1!important;stroke:var(--nb-edge)!important}
#nb#nb .nb-met-spark svg path{stroke:none!important}
#nb#nb .nb-met-spark svg polyline{fill:none!important}
#nb#nb .nb-met-row .ref-param-name{grid-column:1!important;grid-row:1!important}
#nb#nb .nb-met-row .nb-met-spark{grid-column:2!important;grid-row:1!important}
#nb#nb .nb-met-row .ref-reading{grid-column:3!important;grid-row:1!important;height:auto!important}
#nb#nb .ref-topbar-center .ref-clock-block{align-self:center!important;align-items:baseline!important;justify-content:flex-end!important;height:auto!important}
#nb#nb .nb-band-params{grid-auto-rows:auto!important}
#nb#nb .nb-band-params > .ref-metric-tile{height:232px!important}
#nb#nb .nb-band-table table.pivot-timebase-table thead th:nth-child(-n+5),#nb#nb .nb-band-table table.pivot-timebase-table tbody td:nth-child(-n+5){text-align:left!important}
#nb#nb .nb-band-table table.pivot-timebase-table thead th:nth-child(n+6),#nb#nb .nb-band-table table.pivot-timebase-table tbody td:nth-child(n+6){text-align:right!important}
#nb#nb .nb-band-table table.pivot-timebase-table :is(th,td){position:static!important;box-shadow:none!important;border-left:0!important;border-right:0!important}
#nb#nb .nb-band-table table.pivot-timebase-table :is(th,td)::before,#nb#nb .nb-band-table table.pivot-timebase-table :is(th,td)::after{display:none!important}

/* ---------------------------------------- 25. UI14.9 cards 3 per row, table
   Gas & dust cards: at most three per row, 10 % taller. The last row shares
   the full width: one card takes 100 %, two cards 50 / 50. */
#nb#nb .nb-band-params > .ref-metric-tile{grid-column:span 4!important;height:255px!important}
#nb#nb .nb-band-params > .ref-metric-tile:nth-last-child(1):nth-child(3n+2){grid-column:span 12!important}
#nb#nb .nb-band-params > .ref-metric-tile:nth-last-child(2):nth-child(3n+2),#nb#nb .nb-band-params > .ref-metric-tile:nth-last-child(1):nth-child(3n+3){grid-column:span 6!important}
@media (max-width:760px){#nb#nb .nb-band-params > .ref-metric-tile,#nb#nb .nb-band-params > .ref-metric-tile:nth-last-child(n){grid-column:1 / -1!important}}
/* table: no row shadows, rounded soft header instead of a square violet bar */
#nb#nb .nb-band-table table.pivot-timebase-table :is(tr,td,th){box-shadow:none!important;filter:none!important;outline:0!important}
#nb#nb .nb-band-table table.pivot-timebase-table tbody tr{background:none!important;border:0!important}
#nb#nb .nb-band-table table.pivot-timebase-table thead tr{background:none!important;box-shadow:none!important}
#nb#nb .nb-band-table table.pivot-timebase-table thead th:nth-child(n){background:rgba(255,255,255,.055)!important;padding:11px 10px!important;border:0!important}
#nb#nb .nb-band-table table.pivot-timebase-table thead th:first-child{border-radius:12px 0 0 12px!important}
#nb#nb .nb-band-table table.pivot-timebase-table thead th:last-child{border-radius:0 12px 12px 0!important}
#nb#nb .nb-band-table table.pivot-timebase-table{border-spacing:0 2px!important}
#nb#nb .nb-band-table table.pivot-timebase-table tbody tr:nth-child(n) td{background:transparent!important;border-radius:0!important;border-bottom:1px solid var(--nb-edge-2)!important}
#nb#nb .nb-band-table table.pivot-timebase-table tbody tr:last-child td{border-bottom:0!important}
#nb#nb .nb-band-table table.pivot-timebase-table tbody tr:hover td{background:rgba(255,255,255,.05)!important}
#nb#nb .nb-band-table table.pivot-timebase-table{border-spacing:0!important}
#nb#nb .nb-band-table table.pivot-timebase-table thead th:nth-child(n){box-shadow:none!important}

/* ---------------------------- 26. UI15.0 top bar, AQI period, heatmap, met charts
   Top bar: the clock group and the icon row sit directly on the floating glass
   bar (no tinted boxes), date and time share one type style.
   Dashboard: the Air Quality Index and the directional heatmap each use the full
   width; the heatmap replaces the Analysis card. Meteorology rows draw a chart
   type per quantity and are 50 % taller. */
#nb#nb#nb header.ref-topbar :is(.ref-topbar-brand,.ref-topbar-center,.ref-topbar-right,.topbar-right,.ref-clock-block,.ref-brand-lockup){background:none!important;background-color:transparent!important;box-shadow:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;outline:0!important}
#nb#nb#nb header.ref-topbar{-webkit-user-select:none;user-select:none}
#nb#nb#nb header.ref-topbar :is(.ref-topbar-right,.topbar-right){border-left:0!important;padding-left:4px!important}
#nb#nb#nb .ref-clock-block{align-items:center!important;gap:8px!important}
#nb#nb#nb .ref-clock-block :is(#ref-clock-time,#ref-clock-date){font:600 15px/1 var(--nb-sans)!important;font-variant-numeric:tabular-nums;letter-spacing:0!important}
#nb#nb#nb #ref-clock-time{color:var(--nb-ink)!important}
#nb#nb#nb #ref-clock-date{color:var(--nb-ink-2)!important}
#nb#nb#nb #ref-clock-date::after{content:"·";margin-left:8px;color:var(--nb-muted)}

/* band order: trend, params, met, insight (AQI), heat, table */
#nb#nb .nb-band-heat{order:var(--nb-ord-heat,4)}
#nb#nb .nb-band-table{order:var(--nb-ord-table,5)}
#nb#nb .nb-card-titles{display:flex;align-items:baseline;gap:6px 12px;flex-wrap:wrap;min-width:0}

/* Air Quality Index, full width */
#nb#nb#nb .nb-band-insight > .nb-aqi-card{grid-column:1 / -1!important;height:auto!important;min-height:0!important;display:flex!important;flex-direction:column!important;gap:18px!important;overflow:visible!important}
#nb#nb .nb-aqi-pick{display:flex;align-items:center;gap:10px;margin:0;flex:0 0 auto}
#nb#nb .nb-aqi-pick .adq-select{min-width:176px}
#nb#nb .nb-aqi-grid{display:grid;grid-template-columns:220px minmax(0,1fr) 320px;gap:24px;align-items:start;transition:opacity .25s}
#nb#nb .nb-aqi-card.is-loading :is(.nb-aqi-grid,.nb-aqi-trend){opacity:.5}
#nb#nb#nb .nb-aqi-dial{display:flex;flex-direction:column;align-items:center;gap:12px}
#nb#nb#nb .nb-aqi-gauge{width:176px;height:176px}
#nb#nb#nb .nb-aqi-gauge text{stroke:none!important;stroke-width:0!important;paint-order:normal}
#nb#nb#nb .nb-aqi-dial .nb-aqi-text{text-align:center;font-size:12.5px!important;overflow:visible}
#nb#nb .nb-aqi-scale{width:168px}
#nb#nb .nb-aqi-pols{display:flex;flex-direction:column;gap:6px;min-width:0}
#nb#nb .nb-aqi-rows-head,#nb#nb#nb .nb-aqi-row{display:grid;grid-template-columns:116px minmax(0,1fr) minmax(130px,190px) 64px;align-items:center;gap:14px}
#nb#nb .nb-aqi-rows-head{white-space:nowrap;padding:10px 14px;border-radius:12px;background:rgba(255,255,255,.055);font:600 10.5px/1.2 var(--nb-sans);letter-spacing:.06em;text-transform:uppercase;color:var(--nb-muted)!important}
#nb#nb .nb-aqi-rows-head span:last-child{text-align:right}
#nb#nb#nb .nb-aqi-rows{display:flex;flex-direction:column;gap:0;overflow:visible}
#nb#nb#nb .nb-aqi-row{min-height:46px;padding:6px 14px;border-radius:0;background:transparent;border:0;border-bottom:1px solid var(--nb-edge-2)}
#nb#nb#nb .nb-aqi-row:last-child{border-bottom:0}
#nb#nb#nb .nb-aqi-row:hover{background:rgba(255,255,255,.04)}
#nb#nb#nb .nb-aqi-name{font:600 13.5px/1.2 var(--nb-sans)}
#nb#nb#nb .nb-aqi-conc{font-size:14px}
#nb#nb#nb .nb-aqi-hours small{font-size:10.5px}
#nb#nb#nb .nb-aqi-idx{min-width:52px;padding:5px 0;font-size:13px}
#nb#nb .nb-aqi-summary{display:flex;flex-direction:column;gap:12px;padding:16px 18px;border-radius:18px;background:rgba(255,255,255,.045);border:1px solid var(--nb-edge-2);min-width:0}
#nb#nb .nb-aqi-sub{margin:0!important;font:600 13px/1.3 var(--nb-sans)!important;color:var(--nb-ink)!important}
#nb#nb .nb-aqi-note2{margin:0!important;font-size:12px!important;line-height:1.55!important;color:var(--nb-ink-2)!important}
#nb#nb .nb-aqi-facts{display:flex;flex-direction:column;gap:8px;margin:0}
#nb#nb .nb-aqi-facts > div{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:26px}
#nb#nb .nb-aqi-facts dt{font-size:12px;color:var(--nb-muted)!important}
#nb#nb .nb-aqi-facts dd{margin:0;display:flex;align-items:center;gap:8px;font-size:13px;color:var(--nb-ink)!important;text-align:right}
#nb#nb .nb-aqi-facts dd small{font-size:11px;color:var(--nb-muted)!important}
#nb#nb .nb-aqi-chip{display:inline-flex;align-items:center;gap:6px;padding:3px 10px 3px 4px;border-radius:999px;background:rgba(255,255,255,.07);font-size:11.5px;color:var(--nb-ink)!important;white-space:nowrap}
#nb#nb .nb-aqi-chip b{display:inline-grid;place-items:center;min-width:34px;height:20px;padding:0 6px;border-radius:999px;background:var(--c,#888);color:#1a1436!important;font-size:12px;font-weight:700}
#nb#nb .nb-aqi-chip.is-off{padding:3px 10px;color:var(--nb-muted)!important}
#nb#nb .nb-aqi-dist{display:flex;gap:2px;height:10px;border-radius:6px;overflow:hidden;background:rgba(255,255,255,.06)}
#nb#nb .nb-aqi-dist i{display:block;min-width:3px}
#nb#nb .nb-aqi-dist i.is-empty{flex:1}
#nb#nb .nb-aqi-dist-legend{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px 14px;margin:0;padding:0;list-style:none}
#nb#nb .nb-aqi-dist-legend li{display:flex;align-items:center;gap:7px;font-size:11.5px;color:var(--nb-ink-2)!important;margin:0}
#nb#nb .nb-aqi-dist-legend li i{width:8px;height:8px;border-radius:50%;flex:0 0 8px}
#nb#nb .nb-aqi-dist-legend li b{margin-left:auto;font-size:11.5px;color:var(--nb-ink)!important}
#nb#nb .nb-aqi-dist-legend li.is-zero{opacity:.5}
#nb#nb#nb .nb-aqi-bars{height:92px;gap:2px}
#nb#nb .nb-aqi-axis{display:flex;justify-content:space-between;font-size:10.5px;color:var(--nb-muted)!important}
@media (max-width:1280px){#nb#nb .nb-aqi-grid{grid-template-columns:200px minmax(0,1fr)}#nb#nb .nb-aqi-summary{grid-column:1 / -1}#nb#nb .nb-aqi-dist-legend{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:760px){#nb#nb .nb-aqi-grid{grid-template-columns:1fr}#nb#nb .nb-aqi-rows-head,#nb#nb#nb .nb-aqi-row{grid-template-columns:80px minmax(0,1fr) 56px}#nb#nb#nb :is(.nb-aqi-rows-head span:nth-child(3),.nb-aqi-hours){display:none}#nb#nb .nb-card-head{flex-wrap:wrap}}

/* Directional heatmap, full width */
#nb#nb .nb-band-heat > .nb-heat-card{grid-column:1 / -1;display:flex;flex-direction:column;gap:16px;min-width:0}
#nb#nb .nb-heat-tools{display:flex;align-items:center;gap:12px;flex:0 0 auto}
#nb#nb .nb-heat-cover{font-size:11.5px;color:var(--nb-ink-2)!important;padding:5px 11px;border-radius:999px;background:rgba(255,255,255,.06);border:1px solid var(--nb-edge-2);white-space:nowrap}
#nb#nb .nb-heat-cover:empty{display:none}
#nb#nb .nb-heat-wrap{overflow-x:auto;overflow-y:visible;min-width:0;scrollbar-width:thin}
#nb#nb .nb-heat-empty{margin:0;padding:18px 4px;font-size:13px;color:var(--nb-muted)!important}
#nb#nb table.nb-heat-table{width:100%;border-collapse:separate;border-spacing:4px;table-layout:fixed;margin:-4px}
#nb#nb table.nb-heat-table.is-params{min-width:980px}
#nb#nb .nb-heat-table :is(th,td){border:0;box-shadow:none}
#nb#nb#nb .nb-heat-table thead th{padding:10px 8px;border-radius:12px;background:rgba(255,255,255,.055)!important;font:600 12px/1.25 var(--nb-sans);color:var(--nb-ink)!important;text-align:center;vertical-align:middle}
#nb#nb .nb-heat-table thead th small{display:block;margin-top:3px;font:400 10.5px/1.2 var(--nb-sans);color:var(--nb-muted)!important}
#nb#nb .nb-heat-table.is-sectors thead th:first-child,#nb#nb .nb-heat-table.is-sectors tbody th{width:118px}
#nb#nb .nb-heat-table.is-sectors thead th:last-child{width:150px}
#nb#nb .nb-heat-table.is-params thead th:first-child{width:210px}
#nb#nb .nb-heat-table.is-params thead th:last-child{width:104px}
#nb#nb .nb-heat-name{display:inline-flex;align-items:center;gap:7px;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--nb-ink)!important}
#nb#nb .nb-heat-name::before{content:"";flex:0 0 8px;width:8px;height:8px;border-radius:50%;background:var(--series,#b98cff)}
#nb#nb#nb .nb-heat-table tbody th{padding:0 12px;border-radius:10px;background:rgba(255,255,255,.035)!important;font:600 13px/1.2 var(--nb-sans);color:var(--nb-ink)!important;text-align:left;white-space:nowrap}
#nb#nb .nb-heat-table.is-params tbody th small{margin-left:6px;font:400 10.5px var(--nb-sans);color:var(--nb-muted)!important}
#nb#nb#nb .nb-heat-table td.nb-heat-cell{background:var(--h,rgba(255,255,255,.035))!important;height:40px;padding:0 6px;border-radius:10px;text-align:center;font:600 13.5px/1 var(--nb-mono);color:#1a1436!important;transition:transform .15s var(--nb-ease)}
#nb#nb .nb-heat-table td.nb-heat-cell:hover{transform:scale(1.04);box-shadow:0 0 0 2px rgba(255,255,255,.7)}
#nb#nb#nb .nb-heat-table td.nb-heat-cell.is-empty{background:rgba(255,255,255,.035)!important;color:var(--nb-muted)!important;font-weight:400}
#nb#nb#nb .nb-heat-table td.nb-heat-share{padding:0 10px;border-radius:10px;background:rgba(255,255,255,.035)!important}
#nb#nb .nb-heat-share span{display:block;font-size:12px;color:var(--nb-ink)!important;margin-bottom:5px}
#nb#nb .nb-heat-share i{display:block;height:5px;border-radius:5px;background:rgba(255,255,255,.08);overflow:hidden}
#nb#nb .nb-heat-share em{display:block;height:100%;border-radius:5px;background:linear-gradient(90deg,#b98cff,#3ddbd9)}
#nb#nb#nb .nb-heat-table td.nb-heat-top{border-radius:10px;background:rgba(255,255,255,.035)!important;text-align:center;font:600 12.5px var(--nb-sans);color:var(--nb-ink)!important}
#nb#nb#nb .nb-heat-table tfoot :is(th,td){background:transparent!important;padding:9px 8px;font-size:12px;color:var(--nb-ink-2)!important;text-align:center;border-top:1px solid var(--nb-edge-2)}
#nb#nb .nb-heat-table tfoot th{text-align:left;padding-left:12px;font-weight:600}
#nb#nb .nb-heat-foot{display:flex;align-items:flex-start;gap:14px 24px;flex-wrap:wrap}
#nb#nb .nb-heat-legend{display:flex;align-items:center;gap:8px;flex:0 0 auto;font-size:11px;color:var(--nb-muted)!important}
#nb#nb .nb-heat-legend i{display:block;width:160px;height:8px;border-radius:4px;background:linear-gradient(90deg,#3ddc84,#a3e36b,#ffd76a,#ffa24c,#ff5c7a)}
#nb#nb .nb-heat-text{flex:1 1 360px;margin:0!important;font-size:12.5px!important;line-height:1.55!important;color:var(--nb-ink-2)!important}

/* Meteorology rows: one chart type per quantity, 50 % taller charts */
#nb#nb#nb .nb-met-row{grid-template-columns:minmax(0,1fr) minmax(120px,260px) minmax(96px,auto)!important;min-height:56px}
#nb#nb#nb .nb-met-row .nb-met-spark,#nb#nb#nb .nb-met-row .nb-met-spark svg{height:45px!important}
#nb#nb#nb .nb-met-spark svg .ar{stroke:none!important}
#nb#nb#nb .nb-met-spark svg .ln{fill:none!important;stroke:var(--k)!important}


/* ---------------------------- 27. UI15.1 containers, tile header, status colours
   Every dashboard container has an order and a width (25 / 50 / 100 %) from the
   Layout button (nebula.js sets --nb-ord-* and data-nbw-* on <html>). Each band is
   a size container, so its inside (cards per row, rose, AQI grid, charts) follows
   the width it is given. */
#nb#nb#nb .ref-dashboard-flow.nb-c-flow{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:20px!important;align-items:start!important;flex-direction:initial!important}
#nb#nb#nb .nb-c-flow > .nb-band{grid-column:span 4;container-type:inline-size;align-content:start;min-width:0}
#nb#nb#nb .nb-c-flow > .nb-band-trend{order:var(--nb-ord-trend,0)!important}
#nb#nb#nb[data-nbw-trend="25"] .nb-c-flow > .nb-band-trend{grid-column:span 1!important}
#nb#nb#nb[data-nbw-trend="50"] .nb-c-flow > .nb-band-trend{grid-column:span 2!important}
#nb#nb#nb[data-nbw-trend="100"] .nb-c-flow > .nb-band-trend{grid-column:span 4!important}
#nb#nb#nb .nb-c-flow > .nb-band-params{order:var(--nb-ord-params,1)!important}
#nb#nb#nb[data-nbw-params="25"] .nb-c-flow > .nb-band-params{grid-column:span 1!important}
#nb#nb#nb[data-nbw-params="50"] .nb-c-flow > .nb-band-params{grid-column:span 2!important}
#nb#nb#nb[data-nbw-params="100"] .nb-c-flow > .nb-band-params{grid-column:span 4!important}
#nb#nb#nb .nb-c-flow > .nb-band-rose{order:var(--nb-ord-rose,2)!important}
#nb#nb#nb[data-nbw-rose="25"] .nb-c-flow > .nb-band-rose{grid-column:span 1!important}
#nb#nb#nb[data-nbw-rose="50"] .nb-c-flow > .nb-band-rose{grid-column:span 2!important}
#nb#nb#nb[data-nbw-rose="100"] .nb-c-flow > .nb-band-rose{grid-column:span 4!important}
#nb#nb#nb .nb-c-flow > .nb-band-met{order:var(--nb-ord-met,3)!important}
#nb#nb#nb[data-nbw-met="25"] .nb-c-flow > .nb-band-met{grid-column:span 1!important}
#nb#nb#nb[data-nbw-met="50"] .nb-c-flow > .nb-band-met{grid-column:span 2!important}
#nb#nb#nb[data-nbw-met="100"] .nb-c-flow > .nb-band-met{grid-column:span 4!important}
#nb#nb#nb .nb-c-flow > .nb-band-insight{order:var(--nb-ord-insight,4)!important}
#nb#nb#nb[data-nbw-insight="25"] .nb-c-flow > .nb-band-insight{grid-column:span 1!important}
#nb#nb#nb[data-nbw-insight="50"] .nb-c-flow > .nb-band-insight{grid-column:span 2!important}
#nb#nb#nb[data-nbw-insight="100"] .nb-c-flow > .nb-band-insight{grid-column:span 4!important}
#nb#nb#nb .nb-c-flow > .nb-band-heat{order:var(--nb-ord-heat,5)!important}
#nb#nb#nb[data-nbw-heat="25"] .nb-c-flow > .nb-band-heat{grid-column:span 1!important}
#nb#nb#nb[data-nbw-heat="50"] .nb-c-flow > .nb-band-heat{grid-column:span 2!important}
#nb#nb#nb[data-nbw-heat="100"] .nb-c-flow > .nb-band-heat{grid-column:span 4!important}
#nb#nb#nb .nb-c-flow > .nb-band-table{order:var(--nb-ord-table,6)!important}
#nb#nb#nb[data-nbw-table="25"] .nb-c-flow > .nb-band-table{grid-column:span 1!important}
#nb#nb#nb[data-nbw-table="50"] .nb-c-flow > .nb-band-table{grid-column:span 2!important}
#nb#nb#nb[data-nbw-table="100"] .nb-c-flow > .nb-band-table{grid-column:span 4!important}
#nb#nb#nb .nb-c-flow > :is(.nb-band-rose,.nb-band-met,.nb-band-insight,.nb-band-heat) > .panel{grid-column:1 / -1!important;height:auto!important}
#nb#nb#nb .nb-c-flow > .nb-band-rose > .panel{min-height:460px!important;display:flex!important;flex-direction:column!important;gap:14px!important;overflow:hidden!important}
@media (max-width:1200px){
  #nb#nb#nb[data-nbw-trend="25"] .nb-c-flow > .nb-band-trend{grid-column:span 2!important}
  #nb#nb#nb[data-nbw-params="25"] .nb-c-flow > .nb-band-params{grid-column:span 2!important}
  #nb#nb#nb[data-nbw-rose="25"] .nb-c-flow > .nb-band-rose{grid-column:span 2!important}
  #nb#nb#nb[data-nbw-met="25"] .nb-c-flow > .nb-band-met{grid-column:span 2!important}
  #nb#nb#nb[data-nbw-insight="25"] .nb-c-flow > .nb-band-insight{grid-column:span 2!important}
  #nb#nb#nb[data-nbw-heat="25"] .nb-c-flow > .nb-band-heat{grid-column:span 2!important}
  #nb#nb#nb[data-nbw-table="25"] .nb-c-flow > .nb-band-table{grid-column:span 2!important}
}
@media (max-width:760px){#nb#nb#nb .nb-c-flow > .nb-band{grid-column:1 / -1!important}}
#nb#nb .nb-band-head{flex-wrap:wrap}

/* gas and dust cards per row follow the container width: 3, 2 or 1; the last row fills the width */
@container (min-width:620px) and (max-width:1099px){
  #nb#nb#nb .nb-band-params > .ref-metric-tile:nth-child(n){grid-column:span 6!important}
  #nb#nb#nb .nb-band-params > .ref-metric-tile:nth-last-child(1):nth-child(2n+2){grid-column:span 12!important}
}
@container (max-width:619px){#nb#nb#nb .nb-band-params > .ref-metric-tile:nth-child(n){grid-column:1 / -1!important}}
@container (max-width:640px){#nb#nb#nb .nb-rose-body{grid-template-columns:1fr!important;min-height:0!important}#nb#nb#nb .nb-rose-plot{min-height:300px}}
@container (max-width:520px){#nb#nb#nb .nb-met-row{grid-template-columns:minmax(0,1fr) minmax(70px,110px) auto!important;gap:10px!important}#nb#nb#nb .nb-met-top{flex-wrap:wrap}}
@container (max-width:360px){#nb#nb#nb .nb-met-row{grid-template-columns:minmax(0,1fr) auto!important}#nb#nb#nb .nb-met-row .nb-met-spark{display:none!important}}
@container (max-width:1150px){#nb#nb#nb .nb-aqi-grid{grid-template-columns:200px minmax(0,1fr)}#nb#nb#nb .nb-aqi-summary{grid-column:1 / -1}}
@container (max-width:700px){#nb#nb#nb .nb-aqi-grid{grid-template-columns:1fr}#nb#nb#nb :is(.nb-aqi-rows-head,.nb-aqi-row){grid-template-columns:78px minmax(0,1fr) 56px!important}#nb#nb#nb :is(.nb-aqi-rows-head span:nth-child(3),.nb-aqi-hours){display:none!important}#nb#nb#nb .nb-aqi-card .nb-card-head{flex-wrap:wrap}#nb#nb#nb .nb-aqi-dist-legend{grid-template-columns:repeat(2,minmax(0,1fr))}}
@container (max-width:560px){#nb#nb#nb .nb-card-head{flex-wrap:wrap}#nb#nb#nb .nb-heat-tools{flex-wrap:wrap}}

/* empty dashboard (no parameter configured) */
#nb#nb .nb-empty-dash{max-width:560px;margin:calc(12vh / var(--nb-zoom,1)) auto 0;padding:32px;border-radius:var(--nb-r-card);background:var(--nb-glass);border:1px solid var(--nb-edge);text-align:center;display:flex;flex-direction:column;align-items:center;gap:12px}
#nb#nb .nb-empty-dash strong{font:600 18px/1.3 var(--nb-sans);color:var(--nb-ink)!important}
#nb#nb .nb-empty-dash p{margin:0;font-size:13px;line-height:1.55;color:var(--nb-ink-2)!important}

/* parameter card: name, reading and change on one line; maker, range and limit below; the chart takes the rest */
#nb#nb#nb .nb-band-params > .ref-metric-tile .ref-tile-info{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:6px!important}
#nb#nb .nb-tile-top{display:flex;align-items:baseline;gap:10px;min-width:0;width:100%}
#nb#nb#nb .nb-band-params > .ref-metric-tile .nb-tile-top .ref-param-name{flex:0 1 auto;min-width:0;font:600 15px/1.2 var(--nb-sans)!important;color:var(--nb-ink)!important}
#nb#nb#nb .nb-band-params > .ref-metric-tile .nb-tile-top .ref-reading{flex:0 0 auto;margin:0!important;gap:4px!important}
#nb#nb#nb .nb-band-params > .ref-metric-tile .nb-tile-top .live-number{font-size:28px!important}
#nb#nb#nb .nb-band-params > .ref-metric-tile .nb-tile-top .nb-delta{margin-left:auto!important;align-self:center!important;flex:0 0 auto;white-space:nowrap}
#nb#nb .nb-tile-meta{display:flex;flex-wrap:wrap;align-items:baseline;gap:2px 14px;min-width:0;width:100%}
#nb#nb#nb .nb-band-params > .ref-metric-tile .nb-tile-meta .nb-inst{flex:0 1 auto;max-width:100%;font-size:11.5px!important;color:var(--nb-ink-2)!important}
#nb#nb#nb .nb-band-params > .ref-metric-tile .nb-tile-meta .ref-config-line{flex:0 0 auto;align-self:baseline!important}
#nb#nb#nb .nb-band-params > .ref-metric-tile .nb-tile-meta .ref-config-line{display:inline-flex!important;align-items:baseline!important;gap:6px!important;width:auto!important;min-width:0!important}
#nb#nb#nb .nb-band-params > .ref-metric-tile .nb-tile-meta .ref-config-line.is-unset{display:none!important}
#nb#nb#nb .nb-band-params > .ref-metric-tile .nb-tile-meta .ref-config-line :is(span,b){display:inline!important;flex:0 0 auto!important;width:auto!important;min-width:0!important;max-width:none!important;margin:0!important;position:static!important;overflow:visible!important}
#nb#nb#nb .nb-band-params > .ref-metric-tile .ref-mini-trend{min-height:80px!important}
#nb#nb#nb .nb-met-row :is(.nb-tile-top,.nb-tile-meta){display:contents!important}

/* status colours: green = valid data within limits; red = above the limit
   (the card blinks), bad or stale data, maintenance, invalidated, no data */
@keyframes nb-alert-blink{0%,100%{box-shadow:inset 0 0 0 999px rgba(255,92,122,.10),0 0 0 1px rgba(255,92,122,.75),0 0 0 0 rgba(255,92,122,0)}50%{box-shadow:inset 0 0 0 999px rgba(255,92,122,.24),0 0 0 2px rgba(255,92,122,1),0 0 26px 4px rgba(255,92,122,.5)}}
#nb#nb#nb .nb-band-params > .ref-metric-tile.nb-st-ok{border-color:rgba(91,227,138,.32)!important}
#nb#nb#nb .nb-band-params > .ref-metric-tile.nb-st-bad{border-color:rgba(255,92,122,.6)!important;box-shadow:inset 0 0 0 999px rgba(255,92,122,.10),0 0 0 1px rgba(255,92,122,.45)!important}
#nb#nb#nb .nb-band-params > .ref-metric-tile.nb-st-alert{border-color:rgba(255,92,122,.9)!important;animation:nb-alert-blink 1.1s ease-in-out infinite!important}
#nb#nb#nb .nb-band-params > .ref-metric-tile.nb-st-alert .live-number{color:#ff6b86!important}
#nb#nb#nb .nb-band-params > .ref-metric-tile .nb-tile-top .ref-param-name::before{content:"";display:inline-block;width:8px;height:8px;margin-right:8px;border-radius:50%;vertical-align:1px;background:#5be38a;box-shadow:0 0 0 3px rgba(91,227,138,.18)}
#nb#nb#nb .nb-band-params > .ref-metric-tile:is(.nb-st-bad,.nb-st-alert) .nb-tile-top .ref-param-name::before{background:#ff5c7a;box-shadow:0 0 0 3px rgba(255,92,122,.22)}
#nb#nb#nb .ref-metric-tile [data-nb-st-label]{font-style:normal;font-weight:600;color:#5be38a!important}
#nb#nb#nb .ref-metric-tile:is(.nb-st-bad,.nb-st-alert) [data-nb-st-label]{color:#ff7a93!important}
@media (prefers-reduced-motion:reduce){#nb#nb#nb .nb-band-params > .ref-metric-tile.nb-st-alert{animation:none!important;box-shadow:inset 0 0 0 999px rgba(255,92,122,.2),0 0 0 2px rgba(255,92,122,1)!important}}
#nb#nb#nb .nb-band-table table.pivot-timebase-table tbody tr.nb-row-ok td{background:rgba(91,227,138,.06)!important}
#nb#nb#nb .nb-band-table table.pivot-timebase-table tbody tr.nb-row-bad td{background:rgba(255,92,122,.12)!important}
#nb#nb#nb .nb-band-table table.pivot-timebase-table tbody tr.nb-row-alert td{background:rgba(255,92,122,.22)!important}
#nb#nb#nb .nb-band-table table.pivot-timebase-table tbody tr.nb-row-ok td:first-child{box-shadow:inset 3px 0 0 #5be38a!important}
#nb#nb#nb .nb-band-table table.pivot-timebase-table tbody tr:is(.nb-row-bad,.nb-row-alert) td:first-child{box-shadow:inset 3px 0 0 #ff5c7a!important}
#nb#nb#nb .nb-band-table table.pivot-timebase-table tbody tr.nb-row-ok:hover td{background:rgba(91,227,138,.11)!important}
#nb#nb#nb .nb-band-table table.pivot-timebase-table tbody tr:is(.nb-row-bad,.nb-row-alert):hover td{background:rgba(255,92,122,.28)!important}
#nb#nb#nb .nb-band-table td.nb-cell-over .ref-tb-value{color:#ff7a93!important;font-weight:700!important}
#nb#nb .nb-row-dot{display:inline-block;flex:0 0 8px;width:8px;height:8px;border-radius:50%;align-self:center;background:#5be38a}
#nb#nb tr:is(.nb-row-bad,.nb-row-alert) .nb-row-dot{background:#ff5c7a}

/* heatmap: period, data, averaging, update time */
#nb#nb .nb-heat-meta{display:flex;flex-wrap:wrap;gap:8px;margin-top:-4px}
#nb#nb .nb-heat-meta:empty{display:none}
#nb#nb .nb-heat-meta span{display:inline-flex;align-items:baseline;gap:7px;padding:5px 11px;border-radius:999px;background:rgba(255,255,255,.05);border:1px solid var(--nb-edge-2);font-size:11.5px;color:var(--nb-ink-2)!important}
#nb#nb .nb-heat-meta b{font:600 10px/1 var(--nb-sans);letter-spacing:.06em;text-transform:uppercase;color:var(--nb-muted)!important}

/* layout editor */
#nb#nb#nb .nb-layout-pop{width:min(560px,calc(calc(100vw / var(--nb-zoom,1)) - 24px));gap:12px}
#nb#nb .nb-layout-head{display:flex;flex-direction:column;gap:3px}
#nb#nb .nb-layout-head strong{font:600 15px/1.2 var(--nb-sans);color:var(--nb-ink)!important}
#nb#nb .nb-layout-head small{font-size:11.5px;color:var(--nb-muted)!important}
#nb#nb .nb-layout-list{display:flex;flex-direction:column;gap:6px;max-height:min(calc(60vh / var(--nb-zoom,1)),520px);overflow:auto}
#nb#nb .nb-layout-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:10px;padding:7px 8px 7px 14px;border-radius:14px;background:rgba(255,255,255,.045);border:1px solid var(--nb-edge-2)}
#nb#nb .nb-layout-name{font:500 13px/1.2 var(--nb-sans);color:var(--nb-ink)!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#nb#nb .nb-layout-move{display:flex;gap:4px}
#nb#nb .nb-layout-move button{display:inline-grid;place-items:center;width:30px;height:30px;padding:0;border-radius:50%;border:1px solid var(--nb-edge-2);background:var(--nb-fill);color:var(--nb-ink-2)!important;cursor:pointer}
#nb#nb .nb-layout-move button:hover:not(:disabled){background:var(--nb-fill-2)}
#nb#nb .nb-layout-move button:disabled{opacity:.35;cursor:default}
#nb#nb .nb-layout-width button{min-width:48px}
#nb#nb .nb-layout-foot{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
#nb#nb .nb-layout-note{order:-1;flex:1 1 100%;font-size:11px;color:var(--nb-muted)!important;text-align:left}
#nb#nb .nb-layout-foot .nb-layout-reset{margin-right:auto}
#nb#nb#nb .nb-layout-foot .nb-layout-reset{padding:0 14px}
#nb#nb .nb-layout-cancel,#nb#nb .nb-layout-apply{height:34px;padding:0 16px;border-radius:var(--nb-r-pill);border:1px solid var(--nb-edge-2);background:var(--nb-fill);color:var(--nb-ink)!important;font:600 12px/1 var(--nb-sans);cursor:pointer}
#nb#nb .nb-layout-apply{background:var(--nb-accent);color:var(--nb-accent-ink)!important;border-color:transparent}
#nb#nb .nb-layout-apply:disabled{opacity:.45;cursor:default}

/* Configuration > Station > Dashboard */
#nb#nb .nb-dash-widgets{display:flex;flex-direction:column;gap:8px}
#nb#nb .nb-dash-widget{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 16px;border-radius:16px;background:rgba(255,255,255,.045);border:1px solid var(--nb-edge-2)}
#nb#nb .nb-dash-widget-copy{display:flex;flex-direction:column;gap:3px;min-width:0}
#nb#nb .nb-dash-widget-copy strong{font:600 14px/1.3 var(--nb-sans);color:var(--nb-ink)!important}
#nb#nb .nb-dash-widget-copy small{font-size:12px;line-height:1.45;color:var(--nb-ink-2)!important}
#nb#nb .nb-dash-widget .switch{flex:0 0 auto}
#nb#nb .nb-dash-widget-actions{display:flex;justify-content:flex-end;margin-top:14px}

/* ---------------------------- 28. UI15.2 summary strip, alarms, heatmap by day, custom report
   Parameter cards lift on hover instead of growing, so the right-most card is
   never clipped by the page edge. */
#nb#nb#nb .ref-metric-tile:hover,#nb#nb#nb .live-card-reference.ref-metric-tile:hover{transform:translate3d(0,-4px,0)!important;box-shadow:0 22px 44px -22px rgba(0,0,0,.75),0 0 0 1px rgba(185,140,255,.35)!important}
@media (prefers-reduced-motion:reduce){#nb#nb#nb .ref-metric-tile:hover{transform:none!important}}

/* summary strip: first container under the top bar */
#nb#nb .nb-kpi-strip{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px;margin:0 0 20px}
#nb#nb#nb .nb-kpi{display:flex;align-items:center;gap:14px;min-width:0;padding:16px 18px;border-radius:20px;background:var(--nb-glass)!important;border:1px solid var(--nb-edge)!important;box-shadow:var(--nb-shadow)!important;color:var(--nb-ink)!important;text-align:left;cursor:pointer;font:inherit;transition:transform .16s var(--nb-ease),border-color .16s}
#nb#nb#nb .nb-kpi:hover{transform:translate3d(0,-2px,0)}
#nb#nb .nb-kpi:focus-visible{outline:2px solid var(--adq-ui-focus);outline-offset:2px}
#nb#nb .nb-kpi-ico{flex:0 0 44px;width:44px;height:44px;border-radius:14px;display:grid;place-items:center;background:rgba(185,140,255,.14);color:#cdb4ff}
#nb#nb .nb-kpi-ico svg{width:22px;height:22px;fill:none!important;stroke:currentColor!important;stroke-width:1.8!important;stroke-linecap:round;stroke-linejoin:round}
#nb#nb .nb-kpi-copy{display:flex;flex-direction:column;gap:3px;min-width:0}
#nb#nb .nb-kpi-label{font:600 11px/1.2 var(--nb-sans);letter-spacing:.06em;text-transform:uppercase;color:var(--nb-muted)!important}
#nb#nb .nb-kpi-value{font:600 28px/1.05 var(--nb-mono);color:var(--nb-ink)!important}
#nb#nb .nb-kpi-sub{font-size:12px!important;color:var(--nb-ink-2)!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#nb#nb#nb .nb-kpi.is-ok .nb-kpi-ico{background:rgba(91,227,138,.14);color:#5be38a}
#nb#nb#nb .nb-kpi.is-warn .nb-kpi-ico{background:rgba(255,181,71,.16);color:#ffb547}
#nb#nb#nb .nb-kpi.is-bad{border-color:rgba(255,92,122,.55)!important}
#nb#nb#nb .nb-kpi:is(.is-bad,.is-alert) .nb-kpi-ico{background:rgba(255,92,122,.18);color:#ff7a93}
#nb#nb#nb .nb-kpi:is(.is-bad,.is-alert) .nb-kpi-value{color:#ff7a93!important}
#nb#nb#nb .nb-kpi.is-alert{border-color:rgba(255,92,122,.9)!important;animation:nb-alert-blink 1.1s ease-in-out infinite!important}
@media (prefers-reduced-motion:reduce){#nb#nb#nb .nb-kpi.is-alert{animation:none!important;box-shadow:inset 0 0 0 999px rgba(255,92,122,.18),0 0 0 2px rgba(255,92,122,1)!important}}
#nb#nb#nb .nb-kpi[data-nb-kpi="exc"].is-ok,#nb#nb#nb .nb-kpi[data-nb-kpi="alm"].is-ok{cursor:default}
@media (max-width:1280px){#nb#nb .nb-kpi-strip{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:760px){#nb#nb .nb-kpi-strip{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}#nb#nb .nb-kpi-value{font-size:22px}}

/* directional heatmap, one row per day */
#nb#nb .nb-heat-table.is-days thead th.nb-heat-date,#nb#nb .nb-heat-table.is-days th.nb-heat-date{width:132px;text-align:left}
#nb#nb .nb-heat-table.is-days .nb-heat-wind{width:150px}
#nb#nb#nb .nb-heat-table.is-days tbody th.nb-heat-date{padding:6px 12px}
#nb#nb .nb-heat-table.is-days th.nb-heat-date b,#nb#nb .nb-heat-table.is-days td.nb-heat-wind b{display:block;font:600 13px/1.25 var(--nb-sans);color:var(--nb-ink)!important}
#nb#nb .nb-heat-table.is-days th.nb-heat-date small,#nb#nb .nb-heat-table.is-days td.nb-heat-wind small{display:block;margin-top:2px;font:400 10.5px/1.25 var(--nb-sans);color:var(--nb-muted)!important;white-space:nowrap}
#nb#nb#nb .nb-heat-table.is-days tbody td.nb-heat-wind{padding:6px 12px;border-radius:10px;background:rgba(255,255,255,.035)!important;text-align:left}
#nb#nb .nb-heat-table.is-days tbody td.nb-heat-wind b{font-size:15px}
#nb#nb .nb-heat-table.is-days thead th.nb-heat-wind{text-align:left}
#nb#nb#nb .nb-heat-table.is-days tfoot td.nb-heat-wind{text-align:left;padding-left:12px}

/* configuration: AQI pollutants and heatmap parameters */
#nb#nb .nb-dash-params{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);gap:16px;margin-top:14px}
#nb#nb .nb-dash-block{display:flex;flex-direction:column;gap:12px;padding:16px;border-radius:16px;background:rgba(255,255,255,.045);border:1px solid var(--nb-edge-2);min-width:0}
#nb#nb .nb-dash-block-head{display:flex;flex-direction:column;gap:4px}
#nb#nb .nb-dash-block-head strong{font:600 14px/1.3 var(--nb-sans);color:var(--nb-ink)!important}
#nb#nb .nb-dash-block-head small{font-size:12px;line-height:1.5;color:var(--nb-muted)!important}
#nb#nb .nb-dash-aqi{display:flex;flex-direction:column;gap:8px}
#nb#nb .nb-dash-aqi-row{display:grid;grid-template-columns:64px minmax(0,1fr);align-items:center;gap:12px;margin:0}
#nb#nb .nb-dash-aqi-code{font:600 13px/1 var(--nb-sans);color:var(--nb-ink)!important}
#nb#nb .nb-dash-heat-mode{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin-top:6px;font-size:12.5px;color:var(--nb-ink-2)!important}
#nb#nb .nb-dash-heat-bulk{display:inline-flex;gap:6px;margin-left:auto}
#nb#nb .nb-dash-heat-bulk[hidden]{display:none}
#nb#nb .nb-dash-picks{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:6px}
#nb#nb .nb-dash-pick{display:grid;grid-template-columns:auto minmax(0,1fr);grid-template-rows:auto auto;column-gap:9px;align-items:center;margin:0;padding:8px 10px;border-radius:12px;background:rgba(255,255,255,.035);border:1px solid var(--nb-edge-2);cursor:pointer}
#nb#nb .nb-dash-pick input{grid-row:1 / span 2;width:16px;height:16px;accent-color:#ffb547}
#nb#nb .nb-dash-pick span{font:600 12.5px/1.25 var(--nb-sans);color:var(--nb-ink)!important;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
#nb#nb .nb-dash-pick small{font-size:10.5px;color:var(--nb-muted)!important;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
#nb#nb .nb-dash-pick.is-on{border-color:rgba(255,181,71,.45);background:rgba(255,181,71,.08)}
#nb#nb .nb-dash-pick:has(input:disabled){cursor:default;opacity:.75}
@media (max-width:1100px){#nb#nb .nb-dash-params{grid-template-columns:1fr}}

/* custom report */
#nb#nb .rep-page{display:flex;flex-direction:column;gap:20px}
#nb#nb#nb .rep-builder,#nb#nb#nb .rep-result{display:flex;flex-direction:column;gap:18px;padding:22px 24px}
#nb#nb .rep-grid{display:grid;grid-template-columns:repeat(3,minmax(0,220px)) minmax(0,1fr);gap:14px;align-items:end}
#nb#nb .rep-grid .field{margin:0}
#nb#nb .rep-quick .nb-seg{width:max-content}
#nb#nb .rep-params{display:flex;flex-direction:column;gap:12px;padding:16px;border-radius:16px;background:rgba(255,255,255,.035);border:1px solid var(--nb-edge-2)}
#nb#nb .rep-params-head{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
#nb#nb .rep-params-head strong{font:600 14px var(--nb-sans);color:var(--nb-ink)!important}
#nb#nb .rep-count{font-size:12px;color:var(--nb-muted)!important}
#nb#nb#nb .rep-search{margin-left:auto;width:240px;max-width:100%}
#nb#nb .rep-order{display:flex;flex-wrap:wrap;gap:8px;min-height:32px;align-items:center}
#nb#nb .rep-chip{display:inline-flex;align-items:center;gap:6px;padding:4px 6px 4px 5px;border-radius:999px;background:rgba(255,255,255,.07);border:1px solid color-mix(in srgb,var(--c) 55%,transparent);font:600 12.5px var(--nb-sans);color:var(--nb-ink)!important}
#nb#nb .rep-chip > b{display:inline-grid;place-items:center;min-width:20px;height:20px;border-radius:50%;background:var(--c);color:#1a1436!important;font-size:11px}
#nb#nb#nb .rep-chip button{width:22px;height:22px;padding:0;border-radius:50%;border:0;background:transparent;color:var(--nb-ink-2)!important;font:600 14px/1 var(--nb-sans);cursor:pointer}
#nb#nb#nb .rep-chip button:hover:not(:disabled){background:rgba(255,255,255,.1)}
#nb#nb#nb .rep-chip button:disabled{opacity:.3;cursor:default}
#nb#nb .rep-picker{display:flex;flex-direction:column;gap:12px}
#nb#nb .rep-dev{display:grid;grid-template-columns:150px minmax(0,1fr);gap:12px;align-items:start}
#nb#nb .rep-dev-name{padding-top:8px;font:600 12px/1.3 var(--nb-sans);color:var(--nb-muted)!important}
#nb#nb .rep-dev-list{display:flex;flex-wrap:wrap;gap:6px}
#nb#nb#nb .rep-pick{display:inline-flex;align-items:center;gap:7px;padding:6px 12px 6px 7px;border-radius:999px;border:1px solid var(--nb-edge-2);background:rgba(255,255,255,.04);color:var(--nb-ink-2)!important;font:500 12.5px var(--nb-sans);cursor:pointer}
#nb#nb .rep-pick i{width:18px;height:18px;border-radius:50%;border:1.5px solid rgba(255,255,255,.3)}
#nb#nb .rep-pick b{display:inline-grid;place-items:center;width:18px;height:18px;border-radius:50%;background:var(--nb-accent);color:#1a1436!important;font-size:10.5px}
#nb#nb .rep-pick small{font-size:10.5px;color:var(--nb-muted)!important}
#nb#nb#nb .rep-pick.is-on{border-color:rgba(255,181,71,.55);background:rgba(255,181,71,.1);color:var(--nb-ink)!important}
#nb#nb .rep-actions{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap}
#nb#nb .rep-check{display:inline-flex;align-items:center;gap:10px;margin:0;font-size:13px;color:var(--nb-ink-2)!important;cursor:pointer}
#nb#nb .rep-check input{width:17px;height:17px;accent-color:#ffb547}
#nb#nb .rep-buttons{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
#nb#nb .rep-export-label{margin-left:10px;font:600 11px var(--nb-sans);letter-spacing:.06em;text-transform:uppercase;color:var(--nb-muted)!important}
#nb#nb .rep-error{margin:0;font-size:13.5px;color:#ff9aa9!important}
#nb#nb .rep-avail{padding:6px 12px;border-radius:999px;background:rgba(91,227,138,.12);border:1px solid rgba(91,227,138,.35);font-size:12px;color:#b7f7d0!important;white-space:nowrap}
#nb#nb .rep-chart-wrap{position:relative;height:300px}
#nb#nb .rep-table-wrap{overflow-x:auto;scrollbar-width:thin}
#nb#nb table.rep-table{width:100%;border-collapse:separate;border-spacing:0;font-size:12.5px}
#nb#nb#nb .rep-table thead th{position:sticky;top:0;padding:10px 12px;background:rgba(255,255,255,.055)!important;border:0!important;text-align:right;font:600 12px/1.25 var(--nb-sans);color:var(--nb-ink)!important;white-space:nowrap}
#nb#nb .rep-table thead th:first-child{border-radius:12px 0 0 12px}
#nb#nb .rep-table thead th:last-child{border-radius:0 12px 12px 0}
#nb#nb .rep-table thead th small{display:block;margin-top:2px;font:400 10.5px var(--nb-sans);color:var(--nb-muted)!important}
#nb#nb .rep-col{display:inline-flex;align-items:center;gap:7px}
#nb#nb .rep-col::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--c)}
#nb#nb#nb .rep-table :is(thead th.rep-dt,td.rep-dt){text-align:left}
#nb#nb#nb .rep-table tbody td{padding:7px 12px;border:0!important;border-bottom:1px solid var(--nb-edge-2)!important;background:transparent!important;text-align:right;color:var(--nb-ink)!important;white-space:nowrap}
#nb#nb .rep-table tbody tr:hover td{background:rgba(255,255,255,.04)!important}
#nb#nb .rep-table td.rep-dt{color:var(--nb-ink-2)!important}
#nb#nb .rep-table td.is-empty{color:var(--nb-muted)!important}
#nb#nb .rep-table td.is-bad{color:#ff8fa0!important}
#nb#nb .rep-table sup{margin-left:3px;font-size:9px;color:var(--nb-muted)!important}
#nb#nb#nb .rep-table tfoot :is(th,td){padding:8px 12px;border:0!important;background:rgba(255,255,255,.03)!important;text-align:right;font-weight:600;color:var(--nb-ink)!important;white-space:nowrap}
#nb#nb .rep-table tfoot tr:first-child :is(th,td){border-top:2px solid var(--nb-edge)!important}
#nb#nb#nb .rep-table tfoot th{text-align:left;color:var(--nb-ink-2)!important}
@media (max-width:1100px){#nb#nb .rep-grid{grid-template-columns:repeat(2,minmax(0,1fr))}#nb#nb .rep-dev{grid-template-columns:1fr}#nb#nb .rep-dev-name{padding:0}}

/* ---------------------------- 29. UI15.3 diagnostic parameters and alarms, AQI in narrow containers */
#nb#nb .wizard-diagnostics .instrument-form-title span{max-width:760px}
#nb#nb .diag-badge{background:rgba(185,140,255,.18)!important;color:#d9c6ff!important;font-size:10.5px!important}
#nb#nb .diag-alarm{display:flex;flex-direction:column;gap:12px;margin-top:14px;padding:14px 16px;border-radius:14px;background:rgba(255,92,122,.06);border:1px solid rgba(255,92,122,.28)}
#nb#nb .diag-alarm-toggle{display:flex;align-items:flex-start;gap:10px;margin:0;cursor:pointer}
#nb#nb .diag-alarm-toggle input{width:17px;height:17px;margin-top:2px;accent-color:#ff5c7a}
#nb#nb .diag-alarm-toggle b{display:block;font:600 13px/1.3 var(--nb-sans);color:var(--nb-ink)!important}
#nb#nb .diag-alarm-toggle small{display:block;margin-top:2px;font-size:12px;line-height:1.45;color:var(--nb-muted)!important}
#nb#nb .diag-alarm:has(input[data-g="alarm"]:not(:checked)) .diag-alarm-grid{opacity:.45}
/* the AQI card adapts to the width chosen in the Layout editor */
#nb#nb .nb-aqi-card{container-type:inline-size}
@container (max-width:1150px){#nb#nb .nb-aqi-grid{grid-template-columns:200px minmax(0,1fr)!important}#nb#nb .nb-aqi-summary{grid-column:1 / -1}}
@container (max-width:860px){#nb#nb .nb-aqi-grid{grid-template-columns:1fr!important}#nb#nb .nb-aqi-rows-head,#nb#nb#nb .nb-aqi-row{grid-template-columns:78px minmax(0,1fr) minmax(96px,130px) 56px!important;gap:10px!important}#nb#nb#nb .nb-aqi-conc{white-space:nowrap;overflow:visible}}
@container (max-width:520px){#nb#nb .nb-aqi-rows-head,#nb#nb#nb .nb-aqi-row{grid-template-columns:70px minmax(0,1fr) 52px!important}#nb#nb#nb :is(.nb-aqi-rows-head span:nth-child(3),.nb-aqi-hours){display:none!important}}
#nb#nb .diag-editor > .form-grid,#nb#nb .diag-alarm-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important}
@media (max-width:900px){#nb#nb .diag-editor > .form-grid,#nb#nb .diag-alarm-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}

/* ---------------------------- 30. UI15.4 analysis parameter classes, group analysis, roses, dashboard configuration, downloads, Protocol Studio terminal */
#nb#nb .an-info{margin:2px 0 12px;display:flex;flex-direction:column;gap:8px}
#nb#nb .an-use{margin:0;font-size:12.5px;line-height:1.5;color:var(--nb-ink-2)!important}
#nb#nb .an-valid{display:flex;flex-wrap:wrap;gap:6px}
#nb#nb .an-valid-chip{display:inline-flex;gap:6px;align-items:baseline;padding:4px 10px;border-radius:var(--nb-r-pill);background:var(--nb-fill);border:1px solid var(--nb-edge-2);font-size:11.5px;color:var(--nb-ink-2)!important}
#nb#nb .an-valid-chip b{font-weight:600;white-space:nowrap;color:var(--nb-ink)!important}
#nb#nb :is(.an-group-chart-head,.an-group-table-head){display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:16px 0 8px}
#nb#nb :is(.an-group-chart-head,.an-group-table-head) strong{font:600 14px var(--nb-sans);color:var(--nb-ink)!important;margin-right:auto}
#nb#nb .an-group-chart{position:relative;height:340px;padding:10px;border-radius:14px;background:var(--nb-fill);border:1px solid var(--nb-edge-2)}
#nb#nb .an-group-table-wrap{max-height:420px;overflow:auto;border-radius:14px;border:1px solid var(--nb-edge-2)}
#nb#nb .an-group-table{width:100%;border-collapse:separate;border-spacing:0;font:500 12.5px var(--nb-sans)}
#nb#nb#nb .an-group-table :is(th,td){padding:7px 12px;border:0!important;border-bottom:1px solid var(--nb-edge-2)!important;background:transparent!important;color:var(--nb-ink)!important;text-align:right;white-space:nowrap}
#nb#nb#nb .an-group-table :is(th,td):is(:first-child,:nth-child(2)){text-align:left}
#nb#nb#nb .an-group-table thead th{position:sticky;top:0;z-index:1;background:var(--nb-glass-inner,rgba(40,30,86,.96))!important;font-weight:600;color:var(--nb-ink-2)!important}
#nb#nb .an-group-table thead th small{display:block;font-weight:400;font-size:10.5px;color:var(--nb-muted)!important}
#nb#nb#nb .an-group-table tfoot :is(th,td){background:rgba(36,26,80,.6)!important;font-weight:600}
#nb#nb#nb .an-group-table tfoot tr:first-child :is(th,td){border-top:2px solid var(--nb-edge)!important}
#nb#nb .an-rose{display:grid;grid-template-columns:minmax(260px,380px) minmax(0,1fr);gap:18px;align-items:start}
#nb#nb .an-rose-svg{width:100%;height:auto;max-height:380px}
#nb#nb .an-rose-side{display:flex;flex-direction:column;gap:10px;min-width:0}
#nb#nb .an-rose-legend{display:flex;flex-wrap:wrap;gap:6px 12px;align-items:center;font-size:11.5px;color:var(--nb-ink-2)!important}
#nb#nb .an-rose-legend i{display:inline-block;width:12px;height:9px;border-radius:3px;margin-right:5px;vertical-align:middle}
#nb#nb .an-rose-table-wrap{max-height:300px;overflow:auto;border-radius:12px;border:1px solid var(--nb-edge-2)}
@media (max-width:900px){#nb#nb .an-rose{grid-template-columns:1fr}}
#nb#nb .nb-card-tools{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-left:auto}
#nb#nb .nb-dl{position:relative}
#nb#nb .nb-dl-btn{display:inline-flex;align-items:center;gap:6px;height:34px;padding:0 12px;border-radius:var(--nb-r-pill);border:1px solid var(--nb-edge-2);background:var(--nb-fill);color:var(--nb-ink)!important;font:600 12.5px var(--nb-sans);cursor:pointer}
#nb#nb .nb-dl-btn:hover,#nb#nb .nb-dl-btn[aria-expanded="true"]{background:var(--nb-fill-2);border-color:var(--nb-edge)}
#nb#nb .nb-dl-btn svg{width:15px;height:15px}
#nb#nb .nb-dl-menu{position:absolute;right:0;top:calc(100% + 6px);z-index:50;min-width:230px;padding:6px;border-radius:14px;background:linear-gradient(160deg,rgba(46,34,98,.98),rgba(28,20,64,.98));border:1px solid var(--nb-edge);box-shadow:0 24px 50px -18px rgba(0,0,0,.6)}
#nb#nb .nb-dl-menu button{display:flex;align-items:center;gap:10px;width:100%;padding:9px 10px;border:0;border-radius:10px;background:transparent;color:var(--nb-ink)!important;font:600 13px var(--nb-sans);text-align:left;cursor:pointer}
#nb#nb .nb-dl-menu button:hover,#nb#nb .nb-dl-menu button:focus-visible{background:var(--nb-fill-2)}
#nb#nb .nb-dl-menu button svg{width:16px;height:16px;flex:none}
#nb#nb .nb-dl-menu small{display:block;font-weight:400;font-size:11.5px;color:var(--nb-muted)!important}
#nb#nb .nb-dcfg-modal{max-width:1000px!important;width:min(1000px,calc(calc(100vw / var(--nb-zoom,1)) - 40px))!important}
#nb#nb .nb-dcfg{display:flex;flex-direction:column;gap:10px;max-height:min(calc(64vh / var(--nb-zoom,1)),720px);overflow:auto;padding-right:4px}
#nb#nb .nb-dcfg-item{border-radius:16px;border:1px solid var(--nb-edge-2);background:var(--nb-fill);transition:border-color var(--nb-fast)}
#nb#nb .nb-dcfg-item.is-open{border-color:var(--nb-edge);background:var(--nb-fill-2)}
#nb#nb .nb-dcfg-head{display:flex;align-items:center;gap:12px;padding:12px 16px}
#nb#nb .nb-dcfg-toggle{flex:1;display:flex;align-items:flex-start;gap:12px;min-width:0;padding:0;border:0;background:transparent;color:inherit;text-align:left;cursor:pointer}
#nb#nb .nb-dcfg-chev svg{width:18px;height:18px;margin-top:2px;fill:none;stroke:var(--nb-ink-2);stroke-width:2.2;transition:transform var(--nb-fast)}
#nb#nb .nb-dcfg-item.is-open .nb-dcfg-chev svg{transform:rotate(90deg)}
#nb#nb .nb-dcfg-copy{display:flex;flex-direction:column;gap:2px;min-width:0}
#nb#nb .nb-dcfg-copy strong{font:600 15px var(--nb-sans);color:var(--nb-ink)!important}
#nb#nb .nb-dcfg-copy small{font-size:12.5px;color:var(--nb-muted)!important}
#nb#nb .nb-dcfg-summary{font-style:normal;font-size:12px;color:#c9b8ff!important}
#nb#nb .nb-dcfg-state{font:600 12px var(--nb-sans);color:var(--nb-ink-2)!important}
#nb#nb .nb-dcfg-body{padding:4px 16px 16px 46px}
#nb#nb .nb-dcfg-help{margin:0 0 12px;font-size:12.5px;line-height:1.5;color:var(--nb-ink-2)!important}
#nb#nb .ps-v2 .ps-iface{display:grid;grid-template-columns:repeat(2,minmax(0,260px));gap:10px;margin:4px 0 14px}
#nb#nb .ps-iface-btn{display:flex;flex-direction:column;gap:2px;padding:12px 14px;border-radius:14px;border:1px solid var(--nb-edge-2);background:var(--nb-fill);color:var(--nb-ink)!important;text-align:left;cursor:pointer}
#nb#nb .ps-iface-btn.is-on{border-color:var(--nb-accent);background:rgba(155,120,255,.16);box-shadow:inset 0 0 0 1px var(--nb-accent)}
#nb#nb .ps-iface-btn:disabled{cursor:default;opacity:.7}
#nb#nb .ps-iface-btn strong{font:600 14px var(--nb-sans)}
#nb#nb .ps-iface-btn small{font-size:12px;color:var(--nb-muted)!important}
#nb#nb .ps-term{max-height:340px;min-height:120px;overflow:auto;display:flex;flex-direction:column;gap:8px;padding:12px;border-radius:14px;background:rgba(8,6,22,.55);border:1px solid var(--nb-edge-2);font:500 13px/1.5 var(--nb-mono)}
#nb#nb .ps-term-empty{color:var(--nb-muted)!important;font-family:var(--nb-sans)}
#nb#nb .ps-ex{display:flex;flex-direction:column;gap:3px}
#nb#nb :is(.ps-ex-tx,.ps-ex-rx,.ps-ex-err){display:flex;gap:10px;align-items:baseline}
#nb#nb :is(.ps-ex-tx,.ps-ex-rx,.ps-ex-err) > b{flex:none;width:24px;font-size:11px;color:var(--nb-muted)!important}
#nb#nb .ps-ex-tx code{color:#9fd8ff!important;background:transparent!important}
#nb#nb .ps-ex-tx small{margin-left:auto;font:400 11px var(--nb-sans);color:var(--nb-muted)!important}
#nb#nb .ps-ex-rx code{white-space:pre-wrap;word-break:break-all;color:var(--nb-ink)!important;background:transparent!important}
#nb#nb .ps-ex-err span{color:#ff8fa0!important;font-family:var(--nb-sans)}
#nb#nb .ps-tok{display:inline;padding:0 3px;margin:0 1px;border:1px dashed rgba(155,200,255,.55);border-radius:5px;background:rgba(120,170,255,.12);color:#cfe3ff!important;font:inherit;cursor:pointer}
#nb#nb .ps-tok:hover{background:rgba(120,170,255,.28)}
#nb#nb .ps-tok.is-picked{border-style:solid;border-color:#5be38a;background:rgba(91,227,138,.25);color:#e9ffef!important}
#nb#nb .ps-term-input{display:flex;align-items:center;gap:10px;margin-top:10px}
#nb#nb .ps-term-input .input{flex:1;font-family:var(--nb-mono)!important}
#nb#nb .ps-term-prompt{font:700 16px var(--nb-mono);color:var(--nb-accent)!important}
#nb#nb .ps-pick-bar{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-top:12px;padding:12px 16px;border-radius:14px;background:rgba(91,227,138,.08);border:1px solid rgba(91,227,138,.35)}
#nb#nb .ps-pick-bar > div{display:flex;flex-direction:column;gap:2px;margin-right:auto;min-width:0}
#nb#nb .ps-pick-bar small{font:600 10.5px var(--nb-sans);letter-spacing:.08em;color:var(--nb-muted)!important}
#nb#nb .ps-pick-bar strong{font:700 22px var(--nb-sans);color:var(--nb-ink)!important}
#nb#nb .ps-pick-bar span{font-size:12px;color:var(--nb-ink-2)!important;overflow-wrap:anywhere}
#nb#nb .ps-pick-bar code{font-size:11.5px}
#nb#nb .ps-mb-read{display:flex;align-items:flex-end;gap:12px;flex-wrap:wrap}
#nb#nb .ps-mb-read .field{min-width:200px;margin:0}
/* Register type, address and Read share one height and surface so the row reads as one control group
   (earlier theme layers force control sizes with !important, hence the !important here, scoped to this row). */
#nb#nb .ps-mb-read .field.ps-mb-area{flex:0 1 280px}
#nb#nb .ps-mb-read .field.ps-mb-address{flex:0 1 240px;min-width:180px}
#nb#nb .ps-mb-read .adq-select-trigger,#nb#nb .ps-mb-read #psm-address,#nb#nb .ps-mb-read #psm-read{height:46px!important;min-height:46px!important;box-sizing:border-box}
#nb#nb .ps-mb-read .adq-select-trigger{width:100%!important;font-size:13px!important;padding:0 14px 0 16px!important}
#nb#nb .ps-mb-read #psm-address{width:100%!important;padding:0 16px!important;font-size:15px!important;font-weight:600;font-variant-numeric:tabular-nums;letter-spacing:.02em;appearance:textfield;-moz-appearance:textfield}
#nb#nb .ps-mb-read #psm-address::-webkit-inner-spin-button,#nb#nb .ps-mb-read #psm-address::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
#nb#nb .ps-mb-read #psm-read{padding:0 28px!important;font-size:13px!important}
#nb#nb .ps-mb-raw{margin-top:14px}
#nb#nb .ps-mb-raw small{font:600 10.5px var(--nb-sans);letter-spacing:.08em;color:var(--nb-muted)!important}
#nb#nb .ps-mb-raw div{display:flex;gap:8px;flex-wrap:wrap;margin-top:6px}
#nb#nb .ps-mb-cands{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px;margin-top:12px}
#nb#nb .ps-mb-cand{display:flex;flex-direction:column;gap:2px;padding:10px 12px;border-radius:12px;border:1px solid var(--nb-edge-2);background:var(--nb-fill);color:var(--nb-ink)!important;text-align:left;cursor:pointer}
#nb#nb .ps-mb-cand b{font:700 16px var(--nb-sans)}
#nb#nb .ps-mb-cand span{font-size:12px;color:var(--nb-ink-2)!important}
#nb#nb .ps-mb-cand small{font-size:11px;color:var(--nb-muted)!important}
#nb#nb .ps-mb-cand.is-on{border-color:#5be38a;background:rgba(91,227,138,.14)}
#nb#nb .ps-reading{display:flex;align-items:center;min-height:42px;padding:0 14px;border-radius:12px;background:var(--nb-fill);border:1px solid var(--nb-edge-2);font:600 15px var(--nb-sans);color:var(--nb-ink)!important}
#nb#nb .ps-adv summary{cursor:pointer;font:600 13px var(--nb-sans);color:var(--nb-ink-2)!important;margin-bottom:10px}
#nb#nb .ps-role{margin-left:6px;padding:1px 8px;border-radius:var(--nb-r-pill);font:600 10.5px var(--nb-sans);font-style:normal;background:rgba(120,170,255,.16);color:#bcd6ff!important}
#nb#nb .ps-role.is-diag{background:rgba(185,140,255,.18);color:#d9c6ff!important}
#nb#nb .ps-open-params{display:flex;flex-direction:column;gap:8px;margin-top:14px}
#nb#nb .ps-open-params > small{font:600 10.5px var(--nb-sans);letter-spacing:.08em;color:var(--nb-muted)!important}
#nb#nb .wizard-saved-row.is-open{opacity:.9;border-style:dashed!important}
#nb#nb .adq-select-popover.adq-select-up{box-shadow:0 -24px 50px -18px rgba(0,0,0,.55)!important}
#nb#nb .ps-v2 .ps-selector-grid{align-items:start}
#nb#nb#nb .ps-v2 .ps-selector-grid .field{display:flex;flex-direction:column;justify-content:flex-start;gap:8px;min-height:0}
#nb#nb#nb .ps-v2 .ps-selector-grid .field > label{margin:0!important;min-height:0!important}
#nb#nb .analysis-builder-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}

/* ---------------------------- 31. UI15.5 report events, 3D roses, Protocol Studio library */
#nb#nb .rep-checks{display:flex;flex-direction:column;gap:8px}
#nb#nb .rep-events{margin-top:18px;display:flex;flex-direction:column;gap:14px}
#nb#nb .rep-ev h3{display:flex;align-items:center;gap:10px;margin:0 0 8px;font:600 14px var(--nb-sans);color:var(--nb-ink)!important}
#nb#nb .rep-ev h3 i{width:10px;height:10px;border-radius:50%;background:#ffb547}
#nb#nb .rep-ev.is-exc h3 i{background:#ff5c7a}
#nb#nb .rep-ev.is-alarm h3 i{background:#b98cff}
#nb#nb .rep-ev h3 span{padding:1px 9px;border-radius:var(--nb-r-pill);background:var(--nb-fill-2);font-size:12px}
#nb#nb .rep-ev h3 small{font:400 12px var(--nb-sans);color:var(--nb-muted)!important}
#nb#nb .rep-ev-wrap{max-height:320px}
#nb#nb#nb .rep-ev-table :is(th,td){text-align:left!important}
#nb#nb .rep-ev-table td small{display:block;font-size:10.5px;color:var(--nb-muted)!important}
#nb#nb .ps-save-panel .section-title{align-items:center}
#nb#nb .ps-files{display:flex;flex-direction:column;gap:10px;margin-bottom:14px}
#nb#nb .ps-file{display:flex;gap:12px;align-items:flex-start;padding:12px 14px;border-radius:14px;background:var(--nb-fill);border:1px solid var(--nb-edge-2)}
#nb#nb .ps-file > div{display:flex;flex-direction:column;gap:3px;min-width:0}
#nb#nb .ps-file strong{font:600 14px var(--nb-sans);color:var(--nb-ink)!important}
#nb#nb .ps-file small{font-size:12px;color:var(--nb-muted)!important}
#nb#nb :is(.ps-file,.ps-folders,.ps-init-list) code{font-size:11.5px;overflow-wrap:anywhere;white-space:normal;color:var(--nb-ink-2)!important;background:transparent!important}
#nb#nb .ps-folders{display:flex;flex-direction:column;gap:8px;margin:0 0 10px}
#nb#nb .ps-folders > div{display:grid;grid-template-columns:190px minmax(0,1fr);gap:10px}
#nb#nb .ps-folders dt{font:600 12.5px var(--nb-sans);color:var(--nb-ink-2)!important}
#nb#nb .ps-folders dd{margin:0;display:flex;flex-direction:column;gap:2px}
#nb#nb .ps-folders dd small{font-size:11.5px;color:var(--nb-muted)!important}
#nb#nb .ps-init-list ul{margin:6px 0 10px;padding-left:18px;max-height:180px;overflow:auto}
#nb#nb .ps-add-params{margin-top:14px;display:flex;flex-direction:column;gap:8px}
#nb#nb .ps-add-params-head{display:flex;flex-direction:column;gap:2px}
#nb#nb .ps-add-params-head strong{font:600 14px var(--nb-sans);color:var(--nb-ink)!important}
#nb#nb .ps-add-params-head small{font-size:12px;color:var(--nb-muted)!important}
#nb#nb .ps-add-row{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr) 160px 40px;gap:8px;align-items:center}
#nb#nb .ps-add-params > .button{align-self:flex-start}
#nb#nb .nb-rose-body.is-3d .nb-rose-plot{min-height:360px}
#nb#nb :is(.nb-rose3d,.an-rose3d){position:relative;width:100%;height:100%;min-height:360px;border-radius:16px;overflow:hidden;background:radial-gradient(ellipse at 50% 60%,rgba(120,100,255,.14),transparent 70%)}
#nb#nb .an-rose3d{height:460px}
#nb#nb .an-rose3d-wrap{display:grid;grid-template-columns:minmax(0,1fr) 220px;gap:14px;align-items:start;margin-top:12px}
@media (max-width:900px){#nb#nb .an-rose3d-wrap{grid-template-columns:1fr}}
#nb#nb .rose3d-canvas{display:block;cursor:grab;touch-action:none}
#nb#nb .rose3d-canvas:active{cursor:grabbing}
#nb#nb .rose3d-ctl{position:absolute;top:10px;right:10px;display:flex;gap:4px;padding:3px;border-radius:var(--nb-r-pill);background:rgba(20,14,48,.6);border:1px solid var(--nb-edge-2);backdrop-filter:blur(8px)}
#nb#nb .rose3d-ctl button{height:26px;min-width:34px;padding:0 10px;border:0;border-radius:var(--nb-r-pill);background:transparent;color:var(--nb-ink-2)!important;font:600 11.5px var(--nb-sans);cursor:pointer}
#nb#nb .rose3d-ctl button[aria-pressed="true"]{background:var(--nb-accent);color:#1b1433!important}
#nb#nb .rose3d-hint{position:absolute;left:12px;bottom:8px;font-size:11px;color:var(--nb-muted)!important;pointer-events:none}
#nb#nb .rose3d-tip{position:absolute;z-index:5;display:flex;flex-direction:column;gap:2px;min-width:170px;padding:8px 10px;border-radius:10px;background:rgba(20,14,48,.92);border:1px solid var(--nb-edge);font-size:11.5px;color:#ece8ff!important;pointer-events:none;box-shadow:0 14px 30px -12px rgba(0,0,0,.6)}
#nb#nb .rose3d-tip b{font-size:12.5px}
#nb#nb .rose3d-tip span{display:flex;align-items:center;gap:6px;color:#d8d2f5!important}
#nb#nb .rose3d-tip i{width:9px;height:9px;border-radius:3px;display:inline-block}
#nb#nb .rose3d-msg{margin:auto;padding:30px;text-align:center;color:var(--nb-muted)!important}
#nb#nb .nb-rose-legend i.is-ring{background:#7b86c9;border-radius:2px}
#nb#nb .nb-rose-legend small{color:var(--nb-muted)!important}
#nb#nb .nb-rose-card .nb-card-head{flex-wrap:wrap;row-gap:8px}
#nb#nb .nb-rose-card .nb-card-tools{flex-wrap:wrap;justify-content:flex-end}

.ps-selector-grid select.adq-native-select{position:absolute!important;z-index:auto!important}

/* #nb#nb 32 - UI15.6 3D analytics (image-1 look) */
#nb#nb .c3d-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
@media (max-width:1100px){#nb#nb .c3d-grid{grid-template-columns:1fr}}
#nb#nb .c3d-panel{position:relative;display:flex;flex-direction:column;min-width:0;border-radius:14px;padding:16px 18px 12px;background:radial-gradient(120% 90% at 50% 0%,rgba(38,70,150,.28),rgba(8,17,40,0) 60%),linear-gradient(180deg,#0b1834,#07102a);border:1px solid rgba(96,146,255,.30);box-shadow:inset 0 0 0 1px rgba(255,255,255,.03),0 18px 40px -24px rgba(0,0,0,.8);overflow:hidden}
#nb#nb .c3d-panel.is-zoom{position:fixed;inset:24px;z-index:900}
#nb#nb .c3d-head{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:10px 16px}
#nb#nb .c3d-title h3{margin:0;font:700 20px/1.2 var(--nb-sans);color:#f2f6ff!important;letter-spacing:-.01em}
#nb#nb .c3d-title p{margin:4px 0 0;font:500 12.5px/1.35 var(--nb-sans);color:#a9b6d8!important}
#nb#nb .c3d-ctls{display:flex;flex-wrap:wrap;align-items:flex-end;gap:10px}
#nb#nb .c3d-ctl{display:flex;flex-direction:column;gap:5px;min-width:0}
#nb#nb .c3d-ctl>span{font:600 11px var(--nb-sans);color:#b8c4e4!important}
#nb#nb .c3d-ctl select,#nb#nb .c3d-ctl .adq-select-trigger,#nb#nb .c3d-range{height:34px;min-width:96px;padding:0 10px;border-radius:8px;background:#0c1a38!important;border:1px solid rgba(110,150,240,.38)!important;color:#e9efff!important;font:600 12px var(--nb-sans)}
#nb#nb .c3d-range{display:inline-flex;align-items:center;gap:8px;white-space:nowrap;font:500 11.5px var(--nb-mono,monospace)}
#nb#nb .c3d-range svg{width:14px;height:14px;opacity:.75}
#nb#nb .c3d-seg{display:inline-flex;height:34px;border-radius:8px;border:1px solid rgba(110,150,240,.38);overflow:hidden;background:#0c1a38}
#nb#nb .c3d-seg button{min-width:52px;padding:0 14px;border:0;background:transparent;color:#cdd8f5!important;font:600 12px var(--nb-sans);cursor:pointer}
#nb#nb .c3d-seg button+button{border-left:1px solid rgba(110,150,240,.25)}
#nb#nb .c3d-seg button[aria-pressed="true"]{background:linear-gradient(180deg,#2f6dff,#1f52e0);color:#fff!important;box-shadow:inset 0 0 0 1px rgba(160,195,255,.45)}
#nb#nb .c3d-chips{display:flex;flex-wrap:wrap;gap:6px;align-items:center;min-height:34px;padding:3px;border-radius:8px;border:1px solid rgba(110,150,240,.38);background:#0c1a38}
#nb#nb .c3d-chip{display:inline-flex;align-items:center;gap:6px;height:26px;padding:0 8px 0 10px;border-radius:6px;background:#132650;border:1px solid rgba(110,150,240,.3);color:#e6edff!important;font:600 11.5px var(--nb-sans)}
#nb#nb .c3d-chip button{border:0;background:none;color:#9fb0d9!important;cursor:pointer;padding:0;font-size:13px;line-height:1}
#nb#nb .c3d-chip-more{height:26px;padding:0 9px;border-radius:6px;border:1px dashed rgba(110,150,240,.45);background:transparent;color:#cfe0ff!important;font:600 11.5px var(--nb-sans);cursor:pointer}
#nb#nb .c3d-tools{display:flex;gap:6px}
#nb#nb .c3d-tools button{height:34px;width:34px;border-radius:8px;border:1px solid rgba(110,150,240,.38);background:#0c1a38;color:#dbe5ff!important;cursor:pointer;display:grid;place-items:center}
#nb#nb .c3d-tools button svg{width:16px;height:16px}
#nb#nb .c3d-body{position:relative;flex:1;min-height:360px;margin-top:10px}
#nb#nb .c3d-panel.is-zoom .c3d-body{min-height:0}
#nb#nb .c3d-host{position:relative;width:100%;height:100%;min-height:inherit}
#nb#nb .c3d-body>.c3d-host{position:absolute;inset:0}
#nb#nb .c3d-canvas{display:block;cursor:grab;touch-action:pan-y}
#nb#nb .c3d-canvas:active{cursor:grabbing}
#nb#nb .c3d-overlay{position:absolute;inset:0;pointer-events:none}
#nb#nb .c3d-legend,#nb#nb .c3d-summary,#nb#nb .c3d-layers{position:absolute;top:8px;pointer-events:auto;padding:10px 12px;border-radius:8px;background:rgba(9,20,46,.78);border:1px solid rgba(110,150,240,.30);backdrop-filter:blur(6px);color:#e9efff}
#nb#nb .c3d-left{left:6px}
#nb#nb .c3d-right{right:6px}
#nb#nb .c3d-legend h6,#nb#nb .c3d-summary h6,#nb#nb .c3d-layers h6{margin:0 0 8px;font:600 11.5px var(--nb-sans);color:#eef3ff!important;letter-spacing:0;text-transform:none}
#nb#nb .c3d-classes,#nb#nb .c3d-gradv{display:flex;gap:10px}
#nb#nb .c3d-gbar{width:12px;border-radius:3px;box-shadow:0 0 12px rgba(80,140,255,.35)}
#nb#nb .c3d-cl,#nb#nb .c3d-gticks{display:flex;flex-direction:column;justify-content:space-between;gap:9px}
#nb#nb .c3d-cl span,#nb#nb .c3d-gticks span{font:600 11.5px var(--nb-sans);color:#dce5ff!important;white-space:nowrap}
#nb#nb .c3d-gticks{gap:14px}
#nb#nb .c3d-summary{min-width:160px}
#nb#nb .c3d-summary div{display:flex;justify-content:space-between;gap:16px;padding:4px 0}
#nb#nb .c3d-summary span{font:500 11px var(--nb-sans);color:#aebbe0!important}
#nb#nb .c3d-summary b{font:700 11.5px var(--nb-sans);color:#f2f6ff!important}
#nb#nb .c3d-layers.c3d-below{top:auto;bottom:8px}
#nb#nb .c3d-layers label{display:flex;align-items:center;gap:8px;padding:3px 0;font:600 11.5px var(--nb-sans);color:#dfe7ff!important;cursor:pointer}
#nb#nb .c3d-layers input{accent-color:#2f6dff;margin:0}
#nb#nb .c3d-lines{display:flex;flex-direction:column;gap:12px;top:50%;transform:translateY(-50%);background:transparent;border:0;backdrop-filter:none}
#nb#nb .c3d-li{display:flex;align-items:center;gap:10px;font:600 12px var(--nb-sans);color:#e8eeff!important}
#nb#nb .c3d-li i{width:22px;height:3px;border-radius:2px;background:var(--c);box-shadow:0 0 8px var(--c)}
#nb#nb .c3d-tip{position:absolute;z-index:5;pointer-events:none;display:flex;flex-direction:column;gap:3px;min-width:150px;padding:8px 10px;border-radius:8px;background:rgba(6,14,34,.94);border:1px solid rgba(110,150,240,.4);color:#e9efff;font:500 11.5px var(--nb-sans)}
#nb#nb .c3d-tip b{font-weight:700;color:#fff}
#nb#nb .c3d-hint{position:absolute;left:10px;bottom:6px;font:500 11px var(--nb-sans);color:#8f9dc4!important;pointer-events:none}
#nb#nb .c3d-msg{display:grid;place-items:center;height:100%;min-height:200px;margin:0;color:#aeb9d8!important;font:500 13px var(--nb-sans);text-align:center;padding:20px}
#nb#nb .c3d-empty{position:absolute;inset:0;display:grid;place-items:center;color:#aeb9d8!important;font:500 13px var(--nb-sans);pointer-events:none}
#nb#nb .c3d-backdrop{position:fixed;inset:0;z-index:899;background:rgba(3,8,22,.66);backdrop-filter:blur(3px)}
#nb#nb .c3d-tip[hidden]{display:none!important}
#nb#nb .c3d-head{display:grid;grid-template-columns:minmax(220px,1fr) auto;align-items:start}
@media (max-width:1400px){#nb#nb .c3d-head{grid-template-columns:1fr}#nb#nb .c3d-ctls{justify-content:flex-start}}
#nb#nb .c3d-ctls{justify-content:flex-end}
#nb#nb .c3d-range{font-size:10.5px;padding:0 9px;gap:6px}
#nb#nb .a3-period{display:flex;flex-wrap:wrap;align-items:flex-end;gap:10px}
#nb#nb .a3-period .field{margin:0;min-width:190px}
#nb#nb .a3-period .field label{font-size:11px}
#nb#nb .a3-page .nb-callout{margin:0 0 14px}
#nb#nb .a3-pick{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:6px 14px;max-height:calc(52vh / var(--nb-zoom,1));overflow:auto;padding:4px 2px}
#nb#nb .an-rose3d{position:relative;height:520px;border-radius:12px;background:linear-gradient(180deg,#0b1834,#07102a);border:1px solid rgba(96,146,255,.3)}
#nb#nb .nb-rose3d .c3d-legend,#nb#nb .nb-rose3d .c3d-layers{transform:scale(.86);transform-origin:top left}
#nb#nb .nb-rose3d .c3d-right{transform-origin:top right}
#nb#nb .c3d-body .rose3d-ctl,#nb#nb .an-rose3d .rose3d-ctl,#nb#nb .nb-rose3d .rose3d-ctl{top:auto;bottom:8px;right:8px}
#nb#nb .c3d-head{display:flex;flex-wrap:wrap}
#nb#nb .c3d-title{flex:1 1 280px;min-width:0}
#nb#nb .c3d-ctls{flex:0 1 auto}
#nb#nb .c3d-fab{position:absolute;right:6px;bottom:4px;z-index:3}
#nb#nb .c3d-fab .c3d-tools button{width:30px;height:30px;background:rgba(12,26,56,.85)}
#nb#nb .nb-rose3d .rose3d-ctl{top:8px;bottom:auto}
#nb#nb .c3d-fab{left:6px;right:auto}
#nb#nb .c3d-body .c3d-hint{left:50%;transform:translateX(-50%);white-space:nowrap}

/* #nb#nb 33 - UI15.6 Reports workspace + exceedance report */
#nb#nb .rep-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0 0 16px}
@media (max-width:900px){#nb#nb .rep-tabs{grid-template-columns:1fr}}
#nb#nb .rep-tab{display:flex;align-items:center;gap:12px;padding:14px 16px;border-radius:var(--nb-r-card);border:1px solid var(--nb-edge);background:var(--nb-fill);color:var(--nb-ink)!important;text-align:left;cursor:pointer;transition:border-color .15s,background .15s}
#nb#nb .rep-tab:hover{border-color:var(--nb-edge-strong)}
#nb#nb .rep-tab[aria-selected="true"]{border-color:var(--nb-accent);background:linear-gradient(135deg,rgba(255,181,71,.14),rgba(255,181,71,.03));box-shadow:0 0 0 1px var(--nb-accent) inset}
#nb#nb .rep-tab-ico{flex:0 0 38px;height:38px;border-radius:10px;display:grid;place-items:center;background:var(--nb-fill-2);color:var(--nb-accent)}
#nb#nb .rep-tab-ico svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2}
#nb#nb .rep-tab b{display:block;font:700 14px var(--nb-sans);color:var(--nb-ink)!important}
#nb#nb .rep-tab small{display:block;margin-top:2px;font:500 11.5px/1.35 var(--nb-sans);color:var(--nb-muted)!important}
#nb#nb .rep-layout{display:grid;grid-template-columns:320px minmax(0,1fr);gap:16px;align-items:start;margin-bottom:16px}
@media (max-width:1050px){#nb#nb .rep-layout{grid-template-columns:1fr}}
#nb#nb .rep-setup{position:sticky;top:12px;display:flex;flex-direction:column;gap:0;padding:6px 18px!important}
#nb#nb .rep-block{padding:14px 0;border-bottom:1px solid var(--nb-edge)}
#nb#nb .rep-block:last-child{border-bottom:0}
#nb#nb .rep-block-title{margin:0 0 10px;font:700 11px var(--nb-sans);letter-spacing:.08em;text-transform:uppercase;color:var(--nb-muted)!important}
#nb#nb .rep-period{display:grid;gap:10px}
#nb#nb .rep-period .field{margin:0}
#nb#nb .rep-period .field label{font-size:11px}
#nb#nb .rep-quick-row{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}
#nb#nb .rep-qbtn{height:28px;padding:0 10px;border-radius:var(--nb-r-pill);border:1px solid var(--nb-edge);background:var(--nb-fill);color:var(--nb-ink-2)!important;font:600 11.5px var(--nb-sans);cursor:pointer}
#nb#nb .rep-qbtn:hover,#nb#nb .rep-qbtn.is-on{border-color:var(--nb-accent);color:var(--nb-ink)!important}
#nb#nb .rep-switch{display:flex;gap:10px;align-items:flex-start;padding:7px 0;cursor:pointer}
#nb#nb .rep-switch input{margin:3px 0 0;accent-color:var(--nb-accent);width:16px;height:16px;flex:0 0 16px}
#nb#nb .rep-switch b{display:block;font:600 13px var(--nb-sans);color:var(--nb-ink)!important}
#nb#nb .rep-switch small{display:block;font:500 11.5px/1.35 var(--nb-sans);color:var(--nb-muted)!important}
#nb#nb .rep-setup .help{margin:6px 0 0;font-size:11.5px}
#nb#nb .rep-run{display:flex;flex-direction:column;gap:10px}
#nb#nb .rep-go{width:100%;justify-content:center}
#nb#nb .rep-export{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
#nb#nb .rep-export span{font:700 11px var(--nb-sans);letter-spacing:.08em;text-transform:uppercase;color:var(--nb-muted)!important;margin-right:4px}
#nb#nb .rep-export .button{flex:1}
#nb#nb .rep-param-panel{padding:18px!important;min-width:0}
#nb#nb .rep-param-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 16px;margin-bottom:12px}
#nb#nb .rep-param-head>div:first-child{display:flex;align-items:center;gap:10px}
#nb#nb .rep-param-head .rep-block-title{margin:0}
#nb#nb .rep-count{padding:2px 9px;border-radius:var(--nb-r-pill);background:var(--nb-fill-2);font:600 11.5px var(--nb-mono)}
#nb#nb .rep-param-tools{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
#nb#nb .rep-param-tools .rep-search{width:260px;max-width:100%;height:36px}
#nb#nb .rep-order-wrap{display:flex;align-items:flex-start;gap:10px;padding:10px 12px;margin-bottom:14px;border-radius:var(--nb-r-inner);background:var(--nb-fill);border:1px dashed var(--nb-edge-2)}
#nb#nb .rep-order-label{flex:0 0 auto;padding-top:5px;font:700 11px var(--nb-sans);letter-spacing:.06em;text-transform:uppercase;color:var(--nb-muted)!important}
#nb#nb .rep-order{display:flex;flex-wrap:wrap;gap:6px;min-height:28px;align-items:center}
#nb#nb .rep-devgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:12px}
#nb#nb .rep-devcard{border-radius:var(--nb-r-inner);border:1px solid var(--nb-edge);background:var(--nb-fill);overflow:hidden}
#nb#nb .rep-devcard.has-sel{border-color:var(--nb-edge-strong)}
#nb#nb .rep-devhead{display:flex;align-items:center;gap:10px;padding:10px 12px;border-bottom:1px solid var(--nb-edge);background:var(--nb-fill-2)}
#nb#nb .rep-devall input{width:16px;height:16px;margin:0;accent-color:var(--nb-accent);cursor:pointer}
#nb#nb .rep-devname b{display:block;font:700 13px var(--nb-sans);color:var(--nb-ink)!important}
#nb#nb .rep-devname small{display:block;font:500 11px var(--nb-sans);color:var(--nb-muted)!important}
#nb#nb .rep-devparams{display:flex;flex-wrap:wrap;gap:6px;padding:10px 12px}
#nb#nb .rep-main{min-width:0}
#nb#nb .rep-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:8px;min-height:280px;padding:28px!important}
#nb#nb .rep-empty .empty-icon{width:48px;height:48px;border-radius:14px;display:grid;place-items:center;background:var(--nb-fill-2);color:var(--nb-accent)}
#nb#nb .rep-empty .empty-icon svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:2}
#nb#nb .rep-empty strong{font:700 15px var(--nb-sans);color:var(--nb-ink)!important}
#nb#nb .rep-empty p{max-width:620px;margin:0;font:500 12.5px/1.5 var(--nb-sans);color:var(--nb-muted)!important}
#nb#nb .nb-spinner{width:28px;height:28px;border-radius:50%;border:3px solid var(--nb-edge-2);border-top-color:var(--nb-accent);animation:nbspin 0.9s linear infinite}
@keyframes nbspin{to{transform:rotate(360deg)}}
#nb#nb .exc-keys{display:flex;flex-direction:column;gap:2px;max-height:260px;overflow:auto;margin-top:6px;padding-left:4px}
#nb#nb .exc-keys.is-off{opacity:.45;pointer-events:none}
#nb#nb .exc-kpis{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin:12px 0 14px}
@media (max-width:1200px){#nb#nb .exc-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}}
#nb#nb .exc-kpi{padding:12px 14px;border-radius:var(--nb-r-inner);background:var(--nb-fill);border:1px solid var(--nb-edge)}
#nb#nb .exc-kpi b{display:block;font:700 22px var(--nb-sans);color:var(--nb-ink)!important}
#nb#nb .exc-kpi span{display:block;margin-top:2px;font:500 11.5px var(--nb-sans);color:var(--nb-muted)!important}
#nb#nb .exc-kpi.is-bad{border-color:rgba(255,92,108,.45);background:linear-gradient(135deg,rgba(255,92,108,.14),rgba(255,92,108,.03))}
#nb#nb .exc-kpi.is-bad b{color:var(--nb-red)!important}
#nb#nb .exc-table tbody tr.exc-row{cursor:pointer}
#nb#nb .exc-table tbody tr.exc-row:hover td,#nb#nb .exc-table tbody tr.exc-row:focus td{background:var(--nb-fill-2)!important}
#nb#nb .exc-table td small{display:block;font:500 11px var(--nb-sans);color:var(--nb-muted)!important}
#nb#nb .exc-bar{display:inline-flex;align-items:center;gap:8px;min-width:120px}
#nb#nb .exc-bar i{display:block;height:6px;min-width:4px;border-radius:3px;background:linear-gradient(90deg,#ff8a1a,#ff2b2b)}
#nb#nb .exc-bar b{font:600 12px var(--nb-mono)}
#nb#nb .exc-none{padding:20px 0}
#nb#nb .exc-alarms{margin-top:14px}
#nb#nb .exc-alarms summary{cursor:pointer;font:600 13px var(--nb-sans);color:var(--nb-ink)!important;padding:8px 0}
#nb#nb .modal.modal-xl{width:min(1320px,calc(96vw / var(--nb-zoom,1)))!important;max-width:calc(96vw / var(--nb-zoom,1))!important}
#nb#nb .exc-modal .modal-actions .spacer{flex:1}
#nb#nb .exc-detail{display:flex;flex-direction:column;gap:14px;max-height:calc(calc(100vh / var(--nb-zoom,1)) - 230px);overflow:auto;padding-right:4px}
#nb#nb .exc-stats{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px}
@media (max-width:1100px){#nb#nb .exc-stats{grid-template-columns:repeat(4,minmax(0,1fr))}}
#nb#nb .exc-stats div{padding:10px 12px;border-radius:var(--nb-r-inner);background:var(--nb-fill);border:1px solid var(--nb-edge)}
#nb#nb .exc-stats span{display:block;font:500 11px var(--nb-sans);color:var(--nb-muted)!important}
#nb#nb .exc-stats b{display:block;margin-top:2px;font:700 14px var(--nb-sans);color:var(--nb-ink)!important}
#nb#nb .exc-trend h3{margin:0 0 8px;font:700 14px var(--nb-sans);color:var(--nb-ink)!important}
#nb#nb .exc-trend h3 small{font:500 11.5px var(--nb-sans);color:var(--nb-muted)!important;margin-left:6px}
#nb#nb .exc-trend-box{position:relative;height:260px;padding:8px;border-radius:var(--nb-r-inner);background:var(--nb-fill);border:1px solid var(--nb-edge)}
#nb#nb .exc-roses{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
@media (max-width:1000px){#nb#nb .exc-roses{grid-template-columns:1fr}}
#nb#nb .exc-rose .c3d-body{min-height:400px}
#nb#nb .exc-rose .c3d-title h3{font-size:16px}
.exc-stage{position:fixed;left:-12000px;top:0;width:1000px;pointer-events:none}
.exc-stage .exc-stage-rose{position:relative;width:1000px;height:640px}
#nb#nb .exc-table th,#nb#nb .exc-table td{text-align:left!important}
#nb#nb .exc-table td.nb-num,#nb#nb .exc-table th:nth-child(n+5){text-align:right!important}
#nb#nb .exc-table th:nth-child(8),#nb#nb .exc-table td:nth-child(8),#nb#nb .exc-table th:last-child{text-align:left!important}
#nb#nb .exc-stage .exc-stage-rose{width:1000px;height:640px;min-height:640px}
#nb#nb .rep-devgrid{align-items:start}

/* #nb#nb 34 - UI15.6 licence activation screen */
body.lic-locked>*:not(#lic-screen):not(#toast-root){visibility:hidden}
#lic-screen{position:fixed;inset:0;z-index:30000;display:grid;place-items:center;padding:24px;background:radial-gradient(80% 70% at 30% 20%,rgba(47,109,255,.28),transparent 60%),radial-gradient(60% 60% at 80% 90%,rgba(255,92,138,.18),transparent 60%),#070d22;overflow:auto}
#nb#nb #lic-screen .lic-card{display:grid;grid-template-columns:minmax(0,0.9fr) minmax(0,1.1fr);width:min(1040px,100%);min-height:560px;border-radius:22px;overflow:hidden;background:rgba(12,22,48,.82);border:1px solid rgba(110,150,255,.3);box-shadow:0 40px 90px -30px rgba(0,0,0,.8);backdrop-filter:blur(14px)}
@media (max-width:820px){#nb#nb #lic-screen .lic-card{grid-template-columns:1fr}#nb#nb #lic-screen .lic-visual{min-height:260px}}
#nb#nb #lic-screen .lic-visual{position:relative;background:linear-gradient(160deg,#0d1d45,#081130);border-right:1px solid rgba(110,150,255,.2)}
#nb#nb #lic-screen .lic-3d{position:absolute;inset:0}
#nb#nb #lic-screen .lic-brand{position:absolute;left:28px;bottom:26px;display:flex;flex-direction:column;gap:2px}
#nb#nb #lic-screen .lic-brand b{font:800 26px var(--nb-sans);color:#f2f6ff!important;letter-spacing:-.02em}
#nb#nb #lic-screen .lic-brand span{font:500 12.5px var(--nb-sans);color:#a9b6d8!important}
#nb#nb #lic-screen .lic-body{padding:40px 40px 28px;display:flex;flex-direction:column;gap:14px;color:#e9efff}
#nb#nb #lic-screen .lic-eyebrow{display:inline-flex;align-items:center;gap:8px;font:700 11px var(--nb-sans);letter-spacing:.12em;text-transform:uppercase;color:#ffb547!important}
#nb#nb #lic-screen .lic-eyebrow svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:2}
#nb#nb #lic-screen h1{margin:0;font:800 32px/1.1 var(--nb-sans);color:#f4f7ff!important;letter-spacing:-.02em}
#nb#nb #lic-screen .lic-reason{margin:0;font:500 14px/1.5 var(--nb-sans);color:#c3cdea!important}
#nb#nb #lic-screen .lic-reason.is-bad{color:#ff8a9a!important}
#nb#nb #lic-screen .lic-mid{padding:14px 16px;border-radius:14px;background:rgba(8,16,38,.8);border:1px solid rgba(110,150,255,.3)}
#nb#nb #lic-screen .lic-mid>span{display:block;font:600 11.5px var(--nb-sans);color:#9fb0d9!important;margin-bottom:6px}
#nb#nb #lic-screen .lic-mid-row{display:flex;align-items:center;justify-content:space-between;gap:12px}
#nb#nb #lic-screen .lic-mid code{font:700 19px var(--nb-mono,monospace);letter-spacing:.06em;color:#9fd0ff!important;user-select:all;word-break:break-all}
#nb#nb #lic-screen .lic-steps{margin:0;padding-left:20px;display:flex;flex-direction:column;gap:5px;font:500 13px/1.45 var(--nb-sans);color:#c3cdea!important}
#nb#nb #lic-screen .lic-steps code{font-size:12px;color:#ffd08a!important}
#nb#nb #lic-screen .lic-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:4px}
#nb#nb #lic-screen .lic-file{cursor:pointer;display:inline-flex;align-items:center;gap:8px}
#nb#nb #lic-screen .lic-file svg,#nb#nb #lic-screen .button svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:2}
#nb#nb #lic-screen .lic-paste{display:flex;flex-direction:column;gap:8px}
#nb#nb #lic-screen .lic-paste[hidden]{display:none}
#nb#nb #lic-screen .lic-paste textarea{font:500 11.5px var(--nb-mono,monospace);min-height:110px;resize:vertical;background:rgba(8,16,38,.8)!important;color:#dfe8ff!important}
#nb#nb #lic-screen .lic-msg{margin:0;min-height:20px;font:600 13px var(--nb-sans);color:#c3cdea!important}
#nb#nb #lic-screen .lic-msg.is-bad{color:#ff8a9a!important}
#nb#nb #lic-screen .lic-msg.is-ok{color:#5be38a!important}
#nb#nb #lic-screen .lic-foot{margin:auto 0 0;font:500 11px/1.4 var(--nb-sans);color:#7f8db3!important}
#nb#nb .an-rose3d-wrap{display:block!important}
#nb#nb .an-rose3d .rose3d-ctl{top:10px;bottom:auto;left:50%;right:auto;transform:translateX(-50%)}

/* #nb#nb 35 - UI15.7 licence KPI and licence dialog */
#nb#nb .nb-kpi-strip.nb-kpi-6{grid-template-columns:repeat(6,minmax(0,1fr))}
@media (max-width:1400px){#nb#nb .nb-kpi-strip.nb-kpi-6{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:760px){#nb#nb .nb-kpi-strip.nb-kpi-6{grid-template-columns:repeat(2,minmax(0,1fr))}}
#nb#nb .lic-modal{width:min(620px,calc(94vw / var(--nb-zoom,1)))}
#nb#nb .lic-rows{display:flex;flex-direction:column;margin:6px 0 14px;border:1px solid var(--nb-edge);border-radius:var(--nb-r-inner);overflow:hidden}
#nb#nb .lic-row{display:flex;justify-content:space-between;gap:16px;padding:9px 14px;border-bottom:1px solid var(--nb-edge)}
#nb#nb .lic-row:last-child{border-bottom:0}
#nb#nb .lic-row span{font:500 12.5px var(--nb-sans);color:var(--nb-muted)!important}
#nb#nb .lic-row b{font:600 12.5px var(--nb-sans);color:var(--nb-ink)!important;text-align:right;word-break:break-all}
#nb#nb .lic-renew{display:flex;flex-wrap:wrap;align-items:center;gap:10px}
#nb#nb .lic-renew .help{flex:1 1 100%;margin:0}
#nb#nb .lic-renew .lic-file{cursor:pointer;display:inline-flex;align-items:center;gap:8px}
#nb#nb .lic-renew .lic-file svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:2}
#nb#nb .lic-renew .lic-msg{font:600 12.5px var(--nb-sans);color:var(--nb-ink-2)!important}
#nb#nb .bg-svc-card{margin-top:16px}
#nb#nb .bg-svc-body{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin-top:12px}
#nb#nb .bg-svc-state{display:flex;flex-direction:column;gap:6px;min-width:0}

/* ===== 36. UI15.7 live chromatograms ===== */
.chr-page .chr-head-ctl{display:flex;flex-wrap:wrap;align-items:center;gap:8px;justify-content:flex-end}
.chr-page .chr-head-ctl .nb-seg small{opacity:.6;font-weight:500}
.chr-grid{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:14px;align-items:start}
.chr-wide{grid-column:1/-1}
.chr-side{display:flex;flex-direction:column;gap:14px;min-width:0}
.chr-card{position:relative;min-width:0;border-radius:14px;padding:14px 16px;background:radial-gradient(120% 90% at 50% 0%,rgba(38,70,150,.24),rgba(8,17,40,0) 60%),linear-gradient(180deg,#0b1834,#07102a);border:1px solid rgba(96,146,255,.28);box-shadow:inset 0 0 0 1px rgba(255,255,255,.03),0 18px 40px -24px rgba(0,0,0,.8);animation:chr-in .45s cubic-bezier(.2,.8,.2,1) both}
.chr-card h3{margin:0 0 4px;font-size:14px;letter-spacing:.02em;color:#e8f0ff}
.chr-card p{margin:0;color:rgba(200,215,255,.7);font-size:12px}
.chr-card-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:8px 14px;margin-bottom:10px}
.chr-tools{display:flex;align-items:center;gap:10px}
.chr-tog{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:rgba(210,225,255,.85);cursor:pointer}
.chr-progress{height:3px;border-radius:3px;background:rgba(120,160,255,.14);overflow:hidden;margin-bottom:8px}
.chr-progress i{display:block;height:100%;width:0;background:linear-gradient(90deg,#38bdf8,#818cf8);transition:width .9s linear}
.chr-progress.live i{box-shadow:0 0 10px #38bdf8}
.chr-canvas{--chr-ink:#b9ccf5;--chr-grid:rgba(140,170,255,.13);--chr-line:#4cc9ff;--chr-over:rgba(200,210,255,.38);position:relative;height:clamp(300px,calc(46vh / var(--nb-zoom,1)),560px);border-radius:10px;background:rgba(3,9,26,.55);overflow:hidden;touch-action:none}
.chr-canvas canvas{position:absolute;inset:0;width:100%;height:100%;cursor:crosshair}
.chr-empty{position:absolute;inset:0;display:grid;place-items:center;text-align:center;padding:24px;color:rgba(200,215,255,.75);font-size:13px;line-height:1.6}
.chr-empty[hidden],.chr-tip[hidden]{display:none}
.chr-empty svg{width:16px;height:16px;vertical-align:-3px}
.chr-tip{position:absolute;pointer-events:none;padding:6px 9px;border-radius:8px;background:rgba(6,14,36,.92);border:1px solid rgba(120,170,255,.35);color:#e6efff;font-size:12px;line-height:1.45;white-space:nowrap;box-shadow:0 8px 20px -8px rgba(0,0,0,.7)}
.chr-hint{margin-top:8px!important;font-size:11px!important;opacity:.75}
.chr-kpis{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:8px}
.chr-kpi{padding:8px 10px;border-radius:10px;background:rgba(120,160,255,.08);border:1px solid rgba(120,160,255,.14);min-width:0}
.chr-kpi span{display:block;font-size:11px;color:rgba(190,205,245,.7)}
.chr-kpi b{display:block;font-size:13px;color:#eaf2ff;font-variant-numeric:tabular-nums;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.chr-kpi.ok b{color:#34d399}.chr-kpi.bad b{color:#f87171}.chr-kpi.warn b{color:#fbbf24}
.chr-table-wrap{overflow:auto;max-height:360px;margin-top:6px}
.chr-table{width:100%;border-collapse:collapse;font-size:12px;font-variant-numeric:tabular-nums}
.chr-table th{position:sticky;top:0;text-align:left;font-weight:600;padding:6px 8px;color:rgba(190,205,245,.8);background:#0a1631;border-bottom:1px solid rgba(120,160,255,.2)}
.chr-table td{padding:6px 8px;border-bottom:1px solid rgba(120,160,255,.08);color:#dbe6ff}
.chr-table tr.miss td{color:rgba(200,210,240,.5)}
.chr-table .muted,.chr-card .muted{color:rgba(190,205,245,.55)}
.chr-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--c);margin-right:7px;box-shadow:0 0 6px var(--c)}
.chr-pad{padding:10px 2px}
.chr-runs{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:8px;max-height:260px;overflow:auto}
.chr-run{display:flex;flex-direction:column;gap:2px;text-align:left;padding:9px 11px;border-radius:10px;border:1px solid rgba(120,160,255,.16);background:rgba(120,160,255,.06);color:#dbe6ff;cursor:pointer;transition:transform .18s ease,border-color .18s ease,background .18s ease}
.chr-run:hover{transform:translateY(-1px);border-color:rgba(120,170,255,.45)}
.chr-run.active{border-color:#38bdf8;background:rgba(56,189,248,.12)}
.chr-run b{font-size:12px}.chr-run span,.chr-run small{font-size:11px;color:rgba(190,205,245,.7)}
.chr-run small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.icon-button-small.on{border-color:#38bdf8;color:#38bdf8}
.chr-modal .chr-form{display:flex;flex-direction:column;gap:10px;max-height:min(calc(70vh / var(--nb-zoom,1)),760px);overflow:auto;padding-right:4px}
.chr-modal .chr-src[hidden]{display:none}
.chr-modal .span-2{grid-column:span 2}
.chr-modal .grid-4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px 14px}
.chr-modal .chr-h{margin:8px 0 0;font-size:13px}
.chr-modal .chr-h-row{display:flex;justify-content:space-between;align-items:center;gap:8px;flex-wrap:wrap}
.chr-modal .chr-h-row>div{display:flex;gap:6px}
.chr-modal .chr-switch{display:flex;align-items:center;gap:8px;margin-top:22px;cursor:pointer}
.chr-modal .chr-note{display:flex;gap:8px;align-items:flex-start;font-size:12px;opacity:.8;margin:2px 0}
.chr-modal .chr-note svg{flex:none;width:15px;height:15px;margin-top:1px}
.chr-modal .chr-edit input.input{min-width:70px;padding:5px 8px;height:30px}
.chr-modal .chr-test{font-size:12px;line-height:1.7}
.chr-modal .chr-test .ok{color:#34d399}.chr-modal .chr-test .miss{color:#f87171}
@keyframes chr-in{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
@media (max-width:1100px){.chr-grid{grid-template-columns:1fr}.chr-modal .grid-4{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:640px){.chr-modal .span-2{grid-column:auto}.chr-kpis{grid-template-columns:1fr}}
@media (prefers-reduced-motion:reduce){.chr-card{animation:none}.chr-progress i{transition:none}}

/* ===== 37. UI15.8 not-communicating flag ===== */
.nb-nc{display:inline-block;padding:1px 7px;border-radius:6px;font-size:.78em;font-weight:700;letter-spacing:.06em;color:#fca5a5;background:rgba(248,113,113,.14);border:1px solid rgba(248,113,113,.35)}
.ref-metric-tile.nb-st-bad .live-number,.ref-metric-tile.tile-state-fault .live-number{letter-spacing:.04em}
#nb#nb .nb-hero-ctls{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}
#nb#nb .ref-trend-canvas{position:relative}
#nb#nb .nb-hero-3d{position:absolute;inset:0;border-radius:12px;overflow:hidden;animation:chr-in .4s ease both}
#nb#nb .nb-hero-3d .c3d-msg{position:absolute;inset:0;display:grid;place-items:center;color:var(--nb-muted)}
#nb#nb .nb-hero.nb-trend-3d .ref-trend-canvas{height:max(var(--nb-hero-chart-h,300px),440px)!important;transition:height .35s cubic-bezier(.2,.8,.2,1)}

/* ===== 38. UI15.8 analysis type cards (touch friendly, standard names) ===== */
#nb#nb .analysis-glass-ribbon{flex-direction:column;align-items:stretch;gap:12px}
#nb#nb .analysis-type-tabs{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:10px;justify-content:stretch;width:100%}
#nb#nb .analysis-type-tabs .an-type-btn{height:auto;min-height:62px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:4px;padding:10px 14px;border-radius:14px;text-align:left;font-size:13px;line-height:1.25;font-weight:600;color:var(--nb-ink);background:rgba(255,255,255,.05);border:1px solid var(--nb-edge-2);cursor:pointer;touch-action:manipulation;transition:transform .18s var(--nb-ease,ease),background .18s ease,border-color .18s ease,box-shadow .18s ease}
#nb#nb .analysis-type-tabs .an-type-btn b{font-weight:650;letter-spacing:.005em;white-space:normal}
#nb#nb .analysis-type-tabs .an-type-btn small{font-size:11px;font-weight:500;color:var(--nb-muted);letter-spacing:.02em}
#nb#nb .analysis-type-tabs .an-type-btn:hover:not(:disabled){transform:translateY(-1px);border-color:var(--nb-edge-strong);background:rgba(255,255,255,.08)}
#nb#nb .analysis-type-tabs .an-type-btn:active:not(:disabled){transform:scale(.98)}
#nb#nb .analysis-type-tabs .an-type-btn.active{background:linear-gradient(135deg,rgba(255,181,71,.22),rgba(255,181,71,.08));border-color:rgba(255,181,71,.65);box-shadow:0 0 0 1px rgba(255,181,71,.25),0 12px 26px -16px rgba(255,181,71,.7)}
#nb#nb .analysis-type-tabs .an-type-btn.active small{color:var(--nb-accent)}
#nb#nb .analysis-type-tabs .an-type-btn.is-unavailable{opacity:.45;cursor:not-allowed;filter:saturate(.3)}
#nb#nb .analysis-type-tabs .an-type-btn:focus-visible{outline:2px solid var(--adq-ui-focus);outline-offset:2px}
@media (max-width:640px){#nb#nb .analysis-type-tabs{grid-template-columns:1fr 1fr}}

/* ===== 39. UI15.8 X–Y correlation chart ===== */
.xy-chart{margin-top:14px}
.xy-svg{display:block;width:100%;height:auto;max-height:620px;font-family:inherit}
.xy-plot{fill:rgba(255,255,255,.02);stroke:none}
.xy-grid{stroke:rgba(200,210,255,.10);stroke-width:1}
.xy-axis{stroke:rgba(200,210,255,.35);stroke-width:1.2}
.xy-tick{fill:rgba(215,222,245,.78);font-size:13px;font-variant-numeric:tabular-nums}
.xy-title{fill:#e6ecff;font-size:14px;font-weight:600;letter-spacing:.01em}
.xy-pt{fill:#8ab4ff}
.xy-pt-anom{fill:#ff6b9e;stroke:#fff;stroke-width:1.2;filter:drop-shadow(0 0 4px rgba(255,107,158,.8))}
.xy-curve{fill:none;stroke:url(#xy-curve-g);stroke-width:3.4;stroke-linecap:round;stroke-linejoin:round}
.xy-curve-glow{fill:none;stroke:#ffb547;stroke-width:10;stroke-opacity:.16;stroke-linecap:round}
.xy-linear{stroke:rgba(230,236,255,.55);stroke-width:1.6}
.xy-legend{display:flex;flex-wrap:wrap;gap:8px 22px;margin-top:10px;font-size:13px;color:var(--nb-ink-2,#cfd6f2)}
.xy-legend span{display:inline-flex;align-items:center;gap:8px}
.xy-lg-dot,.xy-lg-anom{width:10px;height:10px;border-radius:50%;background:#8ab4ff;display:inline-block}
.xy-lg-anom{background:#ff6b9e;box-shadow:0 0 6px #ff6b9e}
.xy-lg-curve{width:26px;height:4px;border-radius:3px;background:linear-gradient(90deg,#ffb547,#ff6b9e);display:inline-block}
.xy-lg-lin{width:26px;height:2px;background:rgba(230,236,255,.55);display:inline-block}
html.nb-light .xy-grid{stroke:rgba(60,45,130,.12)}html.nb-light .xy-axis{stroke:rgba(60,45,130,.4)}html.nb-light .xy-tick{fill:#443e70}html.nb-light .xy-title{fill:#1c1640}html.nb-light .xy-pt{fill:#3b5bdb}html.nb-light .xy-linear{stroke:rgba(40,30,90,.5)}html.nb-light .xy-legend{color:#3a3466}

/* ===== 40. UI15.8 station header + KPI typography ===== */
#nb#nb .nb-station{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:16px 20px;margin:0 0 16px;padding:16px 20px;border-radius:20px;background:var(--nb-glass);border:1px solid var(--nb-edge);box-shadow:var(--nb-shadow);animation:chr-in .45s cubic-bezier(.2,.8,.2,1) both}
#nb#nb .nb-station-mark{width:48px;height:48px;border-radius:15px;display:grid;place-items:center;background:linear-gradient(140deg,rgba(255,181,71,.28),rgba(255,107,158,.18));color:#ffcf85}
#nb#nb .nb-station-mark svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
#nb#nb .nb-station-copy{min-width:0}
#nb#nb .nb-station-copy small{display:block;font:600 11px/1.2 var(--nb-sans);letter-spacing:.08em;text-transform:uppercase;color:var(--nb-muted)}
#nb#nb .nb-station-copy h2{margin:3px 0 0;font:650 22px/1.2 var(--nb-sans);letter-spacing:-.01em;color:var(--nb-ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#nb#nb .nb-station-copy p{margin:3px 0 0;font-size:13px;color:var(--nb-ink-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#nb#nb .nb-station-ids{display:flex;flex-wrap:wrap;gap:8px;margin:0;justify-content:flex-end}
#nb#nb .nb-station-ids div{padding:7px 12px;border-radius:12px;background:rgba(255,255,255,.05);border:1px solid var(--nb-edge-2);min-width:0}
#nb#nb .nb-station-ids dt{font:600 10px/1.2 var(--nb-sans);letter-spacing:.07em;text-transform:uppercase;color:var(--nb-muted)}
#nb#nb .nb-station-ids dd{margin:3px 0 0;font:600 14px/1.2 var(--nb-sans);color:var(--nb-ink);white-space:nowrap}
#nb#nb .nb-station-ids dd.nb-num{font-family:var(--nb-mono)}
@media (max-width:900px){#nb#nb .nb-station{grid-template-columns:auto minmax(0,1fr)}#nb#nb .nb-station-ids{grid-column:1/-1;justify-content:flex-start}}
/* licence box: words, not digits - proportional font, never cut */
#nb#nb #nb-kpi-lic .nb-kpi-value{font:650 20px/1.15 var(--nb-sans)!important;letter-spacing:-.005em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
#nb#nb .nb-kpi-copy{flex:1 1 auto}
#nb#nb .nb-kpi-label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
@media (max-width:1500px){#nb#nb .nb-kpi{padding:14px 14px;gap:12px}#nb#nb .nb-kpi-ico{flex-basis:38px;width:38px;height:38px}}
/* UI15.8: empty sparkline (no data / analyzer not communicating) */
.nb-spark-empty{display:flex;align-items:center;justify-content:center;min-height:84px;border:1px dashed rgba(200,210,255,.18);border-radius:12px;color:var(--nb-muted);font-size:12px;letter-spacing:.02em}
.nb-st-bad .nb-spark-empty{color:#fca5a5;border-color:rgba(248,113,113,.3)}
.xy-eq{font-family:var(--nb-mono);font-weight:600;color:var(--nb-ink)}

/* ===== 41. UI15.8 exceedance evaluation (Configuration › Report) ===== */
.exc-cfg{margin-bottom:16px}
.exc-cfg-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:12px 0 6px}
.exc-opt{min-height:44px;min-width:88px;padding:0 16px;border-radius:12px;border:1px solid var(--nb-edge);background:rgba(255,255,255,.04);color:var(--nb-ink);font:600 14px/1 var(--nb-sans);cursor:pointer;transition:background .18s ease,border-color .18s ease,transform .12s ease}
.exc-opt:hover{border-color:var(--nb-edge-strong)}
.exc-opt:active{transform:scale(.97)}
.exc-opt.active{background:linear-gradient(135deg,rgba(255,181,71,.24),rgba(255,181,71,.08));border-color:rgba(255,181,71,.7);color:var(--nb-ink)}
.exc-opt:focus-visible{outline:2px solid var(--adq-ui-focus);outline-offset:2px}
.exc-custom{display:inline-flex;align-items:center;gap:8px}
.exc-custom[hidden]{display:none}
.exc-custom label{font-size:13px;color:var(--nb-muted)}
.exc-custom .input{width:96px;min-height:44px}
.exc-cfg-note{display:flex;gap:8px;align-items:flex-start;margin:6px 0 12px;font-size:13px;color:var(--nb-ink-2)}
.exc-cfg-note svg{width:16px;height:16px;flex:none;margin-top:1px}
@media (prefers-reduced-motion:reduce){.exc-opt{transition:none}}

/* ===== 42. UI15.8 sign-in screen ===== */
body.lg-locked{overflow:hidden}
#lg-screen{position:fixed;inset:0;z-index:29000;display:grid;place-items:center;padding:24px;overflow:auto;background:rgba(5,9,26,.72);backdrop-filter:blur(18px) saturate(1.2);-webkit-backdrop-filter:blur(18px) saturate(1.2);opacity:0;transition:opacity .35s ease}
#lg-screen.is-in{opacity:1}
#lg-screen.is-out,#lg-screen.is-done{opacity:0;transition:opacity .38s ease}
#lg-screen.is-done .lg-card{transform:translateY(-10px) scale(.985)}
.lg-aurora{position:absolute;inset:0;overflow:hidden;pointer-events:none}
.lg-aurora span{position:absolute;width:52vmax;height:52vmax;border-radius:50%;filter:blur(70px);opacity:.34;animation:lg-drift 26s ease-in-out infinite alternate}
.lg-aurora span:nth-child(1){left:-12vmax;top:-18vmax;background:#2f6dff}
.lg-aurora span:nth-child(2){right:-16vmax;top:8vmax;background:#ff6b9e;opacity:.22;animation-duration:32s;animation-delay:-8s}
.lg-aurora span:nth-child(3){left:18vmax;bottom:-26vmax;background:#ffb547;opacity:.18;animation-duration:38s;animation-delay:-14s}
@keyframes lg-drift{from{transform:translate3d(0,0,0) scale(1)}to{transform:translate3d(6vmax,4vmax,0) scale(1.12)}}
.lg-card{position:relative;display:grid;grid-template-columns:minmax(260px,1fr) minmax(320px,420px);width:min(920px,100%);border-radius:24px;overflow:hidden;background:linear-gradient(160deg,rgba(18,26,56,.92),rgba(10,16,38,.94));border:1px solid rgba(140,170,255,.22);box-shadow:0 40px 90px -40px rgba(0,0,0,.85),inset 0 1px 0 rgba(255,255,255,.06);transform:translateY(14px) scale(.985);transition:transform .45s cubic-bezier(.2,.8,.2,1)}
#lg-screen.is-in .lg-card{transform:none}
.lg-side{position:relative;display:flex;flex-direction:column;gap:22px;padding:34px 32px;background:radial-gradient(120% 90% at 0% 0%,rgba(47,109,255,.28),transparent 60%),radial-gradient(90% 80% at 100% 100%,rgba(255,107,158,.16),transparent 60%);border-right:1px solid rgba(140,170,255,.14)}
.lg-brand{display:flex;align-items:center;gap:14px}
.lg-brand b{display:block;font:700 22px/1.1 var(--nb-sans);color:#f2f5ff;letter-spacing:-.01em}
.lg-brand span{display:block;margin-top:3px;font-size:12px;color:rgba(200,212,255,.72)}
.lg-logo{width:52px;height:52px;flex:none}
.lg-logo circle{fill:rgba(255,255,255,.05);stroke:rgba(140,170,255,.45);stroke-width:1.5}
.lg-wave{fill:none;stroke:#ffb547;stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:90;stroke-dashoffset:90;animation:lg-draw 2.4s cubic-bezier(.4,0,.2,1) .2s forwards}
@keyframes lg-draw{to{stroke-dashoffset:0}}
.lg-station small{display:block;font:600 11px/1.2 var(--nb-sans);letter-spacing:.08em;text-transform:uppercase;color:rgba(200,212,255,.62)}
.lg-station b{display:block;margin-top:5px;font:650 19px/1.3 var(--nb-sans);color:#eef2ff}
.lg-facts{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.lg-facts li{display:flex;align-items:center;gap:10px;font-size:14px;color:rgba(222,230,255,.86)}
.lg-facts i{width:8px;height:8px;border-radius:50%;background:rgba(200,212,255,.45);flex:none}
.lg-facts li.ok i{background:#34d399;box-shadow:0 0 0 0 rgba(52,211,153,.55);animation:lg-pulse 2.4s ease-out infinite}
.lg-facts li.warn i{background:#fbbf24}
@keyframes lg-pulse{0%{box-shadow:0 0 0 0 rgba(52,211,153,.5)}80%,100%{box-shadow:0 0 0 9px rgba(52,211,153,0)}}
.lg-note{margin:auto 0 0;font-size:13px;line-height:1.55;color:rgba(200,212,255,.7)}
.lg-form{display:flex;flex-direction:column;gap:16px;padding:36px 34px}
.lg-form h1{margin:0;font:700 26px/1.2 var(--nb-sans);color:#f4f6ff;letter-spacing:-.015em}
.lg-sub{margin:-8px 0 4px;font-size:14px;color:rgba(200,212,255,.74)}
.lg-field{display:flex;flex-direction:column;gap:7px}
.lg-field label{font:600 13px/1.2 var(--nb-sans);color:rgba(226,232,255,.9)}
.lg-field .input{min-height:48px;font-size:16px;border-radius:12px}
.lg-field .input[aria-invalid="true"]{border-color:#f87171;box-shadow:0 0 0 3px rgba(248,113,113,.18)}
.lg-pass{position:relative}
.lg-pass .input{width:100%;padding-right:52px}
.lg-eye{position:absolute;right:4px;top:50%;transform:translateY(-50%);width:44px;height:40px;display:grid;place-items:center;border:0;border-radius:10px;background:transparent;color:rgba(210,220,255,.75);cursor:pointer}
.lg-eye:hover{background:rgba(255,255,255,.06);color:#fff}
.lg-eye[aria-pressed="true"]{color:#ffb547}
.lg-eye svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.lg-caps{font-size:12px;color:#fbbf24}
.lg-caps[hidden],.lg-error[hidden]{display:none}
.lg-error{margin:0;padding:10px 12px;border-radius:10px;font-size:13px;color:#fecaca;background:rgba(248,113,113,.12);border:1px solid rgba(248,113,113,.3)}
.lg-submit{position:relative;min-height:50px;margin-top:4px;border:0;border-radius:14px;font:700 15px/1 var(--nb-sans);color:var(--nb-accent-ink,#2a1600);background:linear-gradient(135deg,#ffc56e,#ffb547 55%,#ff9f43);box-shadow:0 14px 30px -16px rgba(255,181,71,.8);cursor:pointer;transition:transform .15s ease,box-shadow .2s ease,filter .2s ease}
.lg-submit:hover{filter:brightness(1.05);box-shadow:0 18px 34px -16px rgba(255,181,71,.9)}
.lg-submit:active{transform:scale(.985)}
.lg-submit:disabled{cursor:progress}
.lg-submit:focus-visible,.lg-view:focus-visible,.lg-eye:focus-visible{outline:2px solid #ffb547;outline-offset:3px}
.lg-spin{position:absolute;right:18px;top:50%;width:18px;height:18px;margin-top:-9px;border-radius:50%;border:2px solid rgba(42,22,0,.25);border-top-color:#2a1600;opacity:0;transition:opacity .15s ease}
.lg-submit.is-busy .lg-spin{opacity:1;animation:lg-rot .7s linear infinite}
.lg-submit.is-ok{background:linear-gradient(135deg,#6ee7b7,#34d399);color:#052e1f}
@keyframes lg-rot{to{transform:rotate(360deg)}}
.lg-view{min-height:46px;border-radius:14px;border:1px solid rgba(140,170,255,.26);background:rgba(255,255,255,.03);color:rgba(226,232,255,.88);font:600 14px/1.2 var(--nb-sans);cursor:pointer;transition:background .18s ease,border-color .18s ease}
.lg-view:hover{background:rgba(255,255,255,.07);border-color:rgba(140,170,255,.45)}
.lg-shake{animation:lg-shake .42s cubic-bezier(.36,.07,.19,.97)}
@keyframes lg-shake{10%,90%{transform:translateX(-1px)}20%,80%{transform:translateX(3px)}30%,50%,70%{transform:translateX(-6px)}40%,60%{transform:translateX(6px)}}
@media (max-width:760px){.lg-card{grid-template-columns:1fr}.lg-side{border-right:0;border-bottom:1px solid rgba(140,170,255,.14);padding:24px}.lg-note{display:none}.lg-form{padding:26px 24px}}
@media (prefers-reduced-motion:reduce){#lg-screen,.lg-card,.lg-submit,.lg-view{transition:none}.lg-aurora span,.lg-facts li.ok i,.lg-shake{animation:none}.lg-wave{animation:none;stroke-dashoffset:0}.lg-submit.is-busy .lg-spin{animation-duration:1.6s}}
html.nb-light #lg-screen{background:rgba(236,232,250,.72)}
html.nb-light .lg-card{background:linear-gradient(160deg,rgba(255,255,255,.96),rgba(247,245,255,.94));border-color:rgba(90,70,170,.18)}
html.nb-light .lg-side{border-color:rgba(90,70,170,.12);background:radial-gradient(120% 90% at 0% 0%,rgba(47,109,255,.14),transparent 60%),radial-gradient(90% 80% at 100% 100%,rgba(255,107,158,.1),transparent 60%)}
html.nb-light .lg-brand b,html.nb-light .lg-station b,html.nb-light .lg-form h1{color:#1c1640}
html.nb-light .lg-brand span,html.nb-light .lg-station small,html.nb-light .lg-sub,html.nb-light .lg-note,html.nb-light .lg-facts li{color:#443e70}
html.nb-light .lg-field label{color:#2b2552}
html.nb-light .lg-view{color:#2b2552;border-color:rgba(90,70,170,.26);background:#fff}
html.nb-light .lg-eye{color:#524c7c}
html.nb-light .lg-error{color:#991b1b;background:#fef2f2;border-color:#fecaca}
#nb#nb .nb-st-fields .nb-dash-pick,#nb#nb .nb-st-top{min-height:48px;cursor:pointer}
#nb#nb .nb-st-top{margin-top:8px}
#nb#nb .report-scheduler-intro>div{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
#nb#nb .report-scheduler-intro>div>svg{width:22px;height:22px;flex:none}

/* ===== 43. UI15.8 touch & accessibility pass (UI UX Pro Max: targets >= 24px everywhere, 44px on touch screens) ===== */
#nb#nb .c3d-chip button{min-width:24px;min-height:24px;display:inline-grid;place-items:center;border-radius:8px}
#nb#nb input[type="checkbox"],#nb#nb input[type="radio"]{width:18px;height:18px;accent-color:#ffb547}
#nb#nb :is(button,a,[role="switch"],[role="tab"],summary,select,input):focus-visible{outline:2px solid var(--adq-ui-focus);outline-offset:2px}
@media (any-pointer:coarse){
  #nb#nb .icon-button-small,#nb#nb .toolbar-icon,#nb#nb .ref-menu-button{min-width:44px;min-height:44px}
  #nb#nb .button,#nb#nb .nb-seg button,#nb#nb .c3d-seg button,#nb#nb .segmented button,#nb#nb .configuration-tabs button{min-height:44px}
  #nb#nb .button.sm{min-height:40px}
  #nb#nb .switch{position:relative}
  #nb#nb .switch::after{content:"";position:absolute;inset:-10px -4px}
  #nb#nb input[type="checkbox"],#nb#nb input[type="radio"]{width:22px;height:22px}
  #nb#nb .c3d-chip button{min-width:36px;min-height:36px}
  #nb#nb .input,#nb#nb .select,#nb#nb select{min-height:44px}
  #nb#nb .chr-run,#nb#nb .exc-row td{min-height:44px}
}
@media (prefers-reduced-motion:reduce){#nb#nb *,#nb#nb *::before,#nb#nb *::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}

/* ===== 44. UI15.9 X-Y report + chart ===== */
.xy-band{fill:rgba(255,181,71,.14);stroke:none}
.xy-reg{stroke:#ffb547;stroke-width:3;stroke-linecap:round}
.xy-curve{fill:none;stroke:#7dd3fc;stroke-width:2;stroke-opacity:.85;stroke-linecap:round;stroke-linejoin:round}
.xy-one{stroke:rgba(230,236,255,.5);stroke-width:1.4;stroke-dasharray:6 6}
.xy-lg-reg{width:26px;height:4px;border-radius:3px;background:#ffb547;display:inline-block}
.xy-lg-band{width:26px;height:12px;border-radius:3px;background:rgba(255,181,71,.2);display:inline-block}
.xy-lg-curve{width:26px;height:3px;border-radius:3px;background:#7dd3fc;display:inline-block}
.xy-lg-one{width:26px;height:0;border-top:2px dashed rgba(230,236,255,.6);display:inline-block}
.xy-purpose{font-size:13px;line-height:1.55}
.xy-block{margin:10px 0;padding:10px 12px;border-radius:12px;background:rgba(255,255,255,.035);border:1px solid var(--nb-edge-2)}
.xy-block>b{display:block;margin-bottom:4px;font-size:12px;letter-spacing:.04em;text-transform:uppercase;color:var(--nb-muted)}
.xy-block p{margin:4px 0;font-size:13px;line-height:1.5}
.xy-eq-line{font-family:var(--nb-mono);font-weight:600;color:var(--nb-ink)}
.xy-note{font-size:12px;line-height:1.5;color:var(--nb-muted)}
html.nb-light .xy-reg{stroke:#d97706}html.nb-light .xy-curve{stroke:#0284c7}html.nb-light .xy-one{stroke:rgba(40,30,90,.45)}html.nb-light .xy-band{fill:rgba(217,119,6,.12)}
/* UI15.9 polar charts (CPF / BPP) */
.pp-dual .analysis-subchart{display:flex;flex-direction:column;align-items:stretch}
.pp-svg{display:block;width:100%;max-width:420px;height:auto;margin:6px auto 0;overflow:visible}
.pp-ring{fill:none;stroke:rgba(200,210,255,.16);stroke-width:1}
.pp-spoke{stroke:rgba(200,210,255,.1);stroke-width:1}
.pp-ringlab{fill:rgba(215,222,245,.6);font-size:9px}
.pp-card{fill:#e6ecff;font-size:12px;font-weight:700}
.pp-wedge,.pp-cell{stroke:rgba(10,16,38,.55);stroke-width:.6;transition:opacity .15s ease}
.pp-wedge:hover,.pp-cell:hover{opacity:.8}
.pp-base{fill:none;stroke:#fff;stroke-width:1.4;stroke-dasharray:4 4;opacity:.75}
.pp-legend{display:flex;align-items:center;gap:8px;justify-content:center;margin-top:8px;font-size:12px;color:var(--nb-ink-2)}
.pp-legend i{width:140px;height:8px;border-radius:4px;background:linear-gradient(90deg,#2563eb,#22d3ee 35%,#facc15 60%,#f97316 80%,#dc2626)}
.pp-legend small{color:var(--nb-muted)}
.xy-block p,.xy-purpose{font-size:12.5px!important}
.xy-block>b{font-size:11px!important}
html.nb-light .pp-card{fill:#1c1640}html.nb-light .pp-ringlab{fill:#524c7c}html.nb-light .pp-ring,html.nb-light .pp-spoke{stroke:rgba(60,45,130,.16)}html.nb-light .pp-base{stroke:#1c1640}

/* ===== 45. UI15.9 menu button + menu that grows out of it ===== */
#nb#nb .ref-menu-button{width:40px!important;height:40px!important;min-width:40px!important;flex:0 0 40px!important;padding:0!important;display:grid!important;place-items:center!important;border-radius:50%!important;transition:background .2s ease,box-shadow .2s ease,transform .15s ease!important}
#nb#nb .ref-menu-button svg{width:18px!important;height:18px!important;margin:0!important;display:block!important;transition:transform .3s cubic-bezier(.2,.8,.2,1)}
#nb#nb .ref-menu-button:active{transform:scale(.94)}
#nb#nb body.sidebar-open .ref-menu-button.ref-menu-button.ref-menu-button.ref-menu-button{background:var(--nb-accent)!important;color:var(--nb-accent-ink)!important;box-shadow:0 0 0 4px rgba(255,181,71,.18),0 10px 24px -10px rgba(255,181,71,.8)!important}
#nb#nb body.sidebar-open .ref-menu-button svg{opacity:0;transform:scale(.6)}
#nb#nb .ref-menu-button::before,#nb#nb .ref-menu-button::after{content:"";position:absolute;left:50%;top:50%;width:16px;height:2px;margin:-1px 0 0 -8px;border-radius:2px;background:currentColor;opacity:0;transform:rotate(0) scaleX(.4);transition:transform .3s cubic-bezier(.2,.8,.2,1),opacity .2s ease}
#nb#nb body.sidebar-open .ref-menu-button::before{opacity:1;transform:rotate(45deg)}
#nb#nb body.sidebar-open .ref-menu-button::after{opacity:1;transform:rotate(-45deg)}
#nb#nb .ref-menu-button svg{transition:opacity .2s ease,transform .3s cubic-bezier(.2,.8,.2,1)!important}
#nb#nb .top-primary-nav{margin-top:10px!important;overflow:visible!important}
#nb#nb .top-primary-nav::before{content:"";position:absolute;left:13px;top:-7px;width:14px;height:14px;transform:rotate(45deg);background:inherit;border-left:1px solid var(--nb-edge);border-top:1px solid var(--nb-edge);border-radius:3px 0 0 0;z-index:-1}
#nb#nb body.sidebar-open .top-primary-nav{animation:nbMenuReveal .34s cubic-bezier(.2,.8,.2,1) both!important}
@keyframes nbMenuReveal{from{opacity:0;clip-path:circle(0 at 20px -10px)}35%{opacity:1}to{opacity:1;clip-path:circle(160% at 20px -10px)}}
#nb#nb body.sidebar-open .top-primary-nav .nav-item{animation:nbMenuItem .32s cubic-bezier(.2,.8,.2,1) both}
#nb#nb body.sidebar-open .top-primary-nav .top-nav-section:nth-child(2) .nav-item{animation-delay:.04s}
#nb#nb body.sidebar-open .top-primary-nav .top-nav-section:nth-child(3) .nav-item{animation-delay:.07s}
#nb#nb body.sidebar-open .top-primary-nav .top-nav-section:nth-child(4) .nav-item{animation-delay:.1s}
@keyframes nbMenuItem{from{opacity:0;transform:translateX(-8px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){#nb#nb body.sidebar-open .top-primary-nav,#nb#nb body.sidebar-open .top-primary-nav .nav-item{animation:none!important}#nb#nb .ref-menu-button svg{transition:none}}

/* ===== 46. UI15.9 containers side by side keep the same height ===== */
#nb#nb#nb#nb .ref-dashboard-flow.nb-c-flow{align-items:stretch!important}
#nb#nb#nb .nb-c-flow>.nb-band{align-self:stretch!important;align-content:stretch!important}
#nb#nb#nb .nb-c-flow>.nb-band>.panel{height:100%!important}

/* ===== 47. UI15.9 each parameter tile has its own trend range (15 min / 1 h / 24 h) ===== */
#nb#nb .nb-tile-range{display:inline-flex!important;align-self:flex-end;flex:0 0 auto!important;gap:2px;padding:2px;margin:0 0 2px!important;border-radius:var(--nb-r-pill,999px);background:var(--nb-fill);border:1px solid var(--nb-edge);position:relative;z-index:3}
#nb#nb .nb-tile-range button{appearance:none;border:0;background:transparent;color:var(--nb-muted);font:600 10.5px/1 var(--nb-sans);letter-spacing:.02em;padding:4px 8px;border-radius:var(--nb-r-pill,999px);cursor:pointer;min-height:22px;transition:background .15s,color .15s}
#nb#nb .nb-tile-range button:hover{color:var(--nb-ink)}
#nb#nb .nb-tile-range button[aria-pressed="true"]{background:var(--nb-accent);color:var(--nb-accent-ink)}
#nb#nb .nb-tile-range button:focus-visible{outline:2px solid var(--adq-ui-focus);outline-offset:1px}
#nb#nb [data-live-key].is-loading [data-live-spark]{opacity:.45;transition:opacity .2s}
@media (pointer:coarse){#nb#nb .nb-tile-range button{min-height:32px;padding:6px 11px;font-size:12px}}

/* ===== 48. UI15.9 unattended status: nobody signed in, acquisition keeps running ===== */
#nb#nb #nb-unattended{position:fixed;left:50%;bottom:14px;transform:translateX(-50%);z-index:900;display:flex;align-items:center;gap:12px;max-width:min(680px,calc(calc(100vw / var(--nb-zoom,1)) - 32px));padding:8px 8px 8px 14px;border-radius:var(--nb-r-pill,999px);background:var(--nb-glass);-webkit-backdrop-filter:blur(var(--nb-blur-sm,12px));backdrop-filter:blur(var(--nb-blur-sm,12px));border:1px solid var(--nb-edge-strong);box-shadow:var(--nb-shadow-lift);color:var(--nb-ink);font:500 12.5px/1.3 var(--nb-sans);animation:nbUaIn .4s cubic-bezier(.2,.8,.2,1) both}
#nb#nb #nb-unattended .nb-ua-text{display:flex;flex-wrap:wrap;gap:2px 8px;min-width:0}
#nb#nb #nb-unattended .nb-ua-text b{font-weight:700}
#nb#nb #nb-unattended .nb-ua-text span{color:var(--nb-muted)}
#nb#nb #nb-unattended .nb-ua-dot{flex:0 0 10px;width:10px;height:10px;border-radius:50%;background:var(--nb-green);box-shadow:0 0 0 0 color-mix(in srgb,var(--nb-green) 60%,transparent);animation:nbUaPulse 2s ease-out infinite}
#nb#nb #nb-unattended.is-stopped .nb-ua-dot{background:var(--nb-orange);animation:none}
#nb#nb #nb-unattended .nb-ua-btn{flex:0 0 auto;border:0;border-radius:var(--nb-r-pill,999px);background:var(--nb-accent);color:var(--nb-accent-ink);font:700 12px/1 var(--nb-sans);padding:9px 14px;min-height:32px;cursor:pointer}
#nb#nb #nb-unattended .nb-ua-btn:focus-visible{outline:2px solid var(--nb-ink);outline-offset:2px}
#nb#nb body.lg-locked #nb-unattended{display:none}
@keyframes nbUaIn{from{opacity:0;transform:translate(-50%,12px)}to{opacity:1;transform:translate(-50%,0)}}
@keyframes nbUaPulse{0%{box-shadow:0 0 0 0 color-mix(in srgb,var(--nb-green) 55%,transparent)}100%{box-shadow:0 0 0 10px transparent}}
@media (prefers-reduced-motion:reduce){#nb#nb #nb-unattended,#nb#nb #nb-unattended .nb-ua-dot{animation:none}}

/* ===== 49. UI15.9 CPCB reports and configuration ===== */
#nb#nb .cpcb-kinds{display:grid;gap:6px}
#nb#nb .cpcb-kind{display:flex;gap:10px;align-items:flex-start;text-align:left;width:100%;padding:10px 12px;border-radius:var(--nb-r-inner,12px);border:1px solid var(--nb-edge);background:var(--nb-fill);color:var(--nb-ink);cursor:pointer;transition:border-color .15s,background .15s}
#nb#nb .cpcb-kind b{display:block;font-size:13px}
#nb#nb .cpcb-kind small{display:block;color:var(--nb-muted);font-size:11.5px;line-height:1.35;margin-top:2px}
#nb#nb .cpcb-kind:hover{border-color:var(--nb-edge-strong)}
#nb#nb .cpcb-kind.active{border-color:var(--nb-accent);background:color-mix(in srgb,var(--nb-accent) 12%,var(--nb-fill))}
#nb#nb .cpcb-dl{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px}
#nb#nb .cpcb-dl .button{flex:1 1 0;justify-content:center}
#nb#nb .cpcb-status-panel{margin-bottom:12px}
#nb#nb .cpcb-id{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px;margin:6px 0 12px}
#nb#nb .cpcb-id span{display:flex;flex-direction:column;gap:2px;padding:8px 10px;border-radius:10px;background:var(--nb-fill)}
#nb#nb .cpcb-id small{color:var(--nb-muted);font-size:11px;text-transform:uppercase;letter-spacing:.04em}
#nb#nb .cpcb-id b{font-size:13px}
#nb#nb .cpcb-id b.is-warn{color:var(--nb-orange)}
#nb#nb .cpcb-binds{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:8px}
#nb#nb .cpcb-bind{display:inline-flex;flex-direction:column;padding:5px 10px;border-radius:10px;border:1px solid color-mix(in srgb,var(--nb-green) 45%,transparent);background:color-mix(in srgb,var(--nb-green) 10%,transparent)}
#nb#nb .cpcb-bind b{font-size:12.5px}
#nb#nb .cpcb-bind small{font-size:10.5px;color:var(--nb-muted)}
#nb#nb .cpcb-bind.is-bad{border-color:color-mix(in srgb,var(--nb-orange) 55%,transparent);background:color-mix(in srgb,var(--nb-orange) 10%,transparent)}
#nb#nb .cpcb-bind.is-missing{border-style:dashed;border-color:var(--nb-edge-strong);background:transparent;opacity:.75}
#nb#nb .cpcb-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:8px 0 12px}
#nb#nb .cpcb-kpis span{padding:10px 12px;border-radius:12px;background:var(--nb-fill);border-left:3px solid var(--nb-accent)}
#nb#nb .cpcb-kpis span.is-bad{border-left-color:var(--nb-red)}
#nb#nb .cpcb-kpis b{display:block;font:700 20px/1.1 var(--nb-sans);font-variant-numeric:tabular-nums}
#nb#nb .cpcb-kpis small{color:var(--nb-muted);font-size:11.5px}
#nb#nb .cpcb-table td.num,#nb#nb .cpcb-table th.num{text-align:right;font-variant-numeric:tabular-nums}
#nb#nb .cpcb-table td.is-bad{color:var(--nb-red);font-weight:700}
#nb#nb .cpcb-table td.is-warn{color:var(--nb-orange);font-weight:600}
#nb#nb .cpcb-sub{display:block;color:var(--nb-muted);font-size:11px}
#nb#nb .cpcb-verdict{display:inline-block;padding:3px 9px;border-radius:999px;font-size:11.5px;font-weight:700;white-space:nowrap}
#nb#nb .cpcb-verdict.is-complies{background:color-mix(in srgb,var(--nb-green) 18%,transparent);color:var(--nb-green)}
#nb#nb .cpcb-verdict.is-fails{background:color-mix(in srgb,var(--nb-red) 16%,transparent);color:var(--nb-red)}
#nb#nb .cpcb-verdict:not(.is-complies):not(.is-fails){background:var(--nb-fill-2);color:var(--nb-muted)}
#nb#nb .cpcb-aqi-days{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px;margin:8px 0}
#nb#nb .cpcb-aqi-day{display:flex;flex-direction:column;gap:2px;padding:10px 12px;border-radius:12px;background:var(--nb-fill);border-top:4px solid var(--aqi)}
#nb#nb .cpcb-aqi-day b{font:800 26px/1 var(--nb-sans);font-variant-numeric:tabular-nums}
#nb#nb .cpcb-aqi-day small,#nb#nb .cpcb-aqi-day em{color:var(--nb-muted);font-size:11.5px;font-style:normal}
#nb#nb .cpcb-aqi-day.is-na{border-top-color:var(--nb-edge-strong);opacity:.8}
#nb#nb .cpcb-rules{margin-top:12px;color:var(--nb-muted);font-size:12px}
#nb#nb .cpcb-rules summary{cursor:pointer;font-weight:600;color:var(--nb-ink)}
#nb#nb .cpcb-rules ul{margin:6px 0 0 18px;display:grid;gap:3px}
#nb#nb .cpcb-cfg-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:10px 14px;margin:8px 0 16px}
#nb#nb .cpcb-cfg .rep-block-title{margin:6px 0 8px}
@media (max-width:720px){#nb#nb .cpcb-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}
#nb#nb .cpcb-table{width:100%}
#nb#nb .cpcb-verdict.is-indicative{background:color-mix(in srgb,var(--nb-orange) 14%,transparent);color:var(--nb-orange)}
#nb#nb .rep-tabs{grid-template-columns:repeat(auto-fit,minmax(230px,1fr))!important}

/* ===== 50. UI15.9 date & time picker ===== */
#nb#nb .nb-dtp-trigger{display:flex!important;align-items:center;gap:9px;width:100%;text-align:left;cursor:pointer;font-variant-numeric:tabular-nums;white-space:nowrap;overflow:hidden}
#nb#nb .nb-dtp-trigger .nb-dtp-text{overflow:hidden;text-overflow:ellipsis}
#nb#nb .nb-dtp-trigger.is-empty .nb-dtp-text{color:var(--nb-muted)}
#nb#nb .nb-dtp-ico{flex:0 0 16px;width:16px;height:16px;fill:none;stroke:var(--nb-muted);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
#nb#nb .nb-dtp-trigger[aria-expanded="true"]{border-color:var(--nb-accent)!important;box-shadow:0 0 0 3px color-mix(in srgb,var(--nb-accent) 22%,transparent)!important}
#nb#nb .nb-dtp-trigger[aria-expanded="true"] .nb-dtp-ico{stroke:var(--nb-accent)}
#nb#nb .nb-dtp{position:fixed;z-index:5000;width:332px;max-width:calc(calc(100vw / var(--nb-zoom,1)) - 16px);padding:12px;border-radius:18px;background:var(--nb-glass);-webkit-backdrop-filter:blur(var(--nb-blur,20px)) saturate(1.3);backdrop-filter:blur(var(--nb-blur,20px)) saturate(1.3);border:1px solid var(--nb-edge-strong);box-shadow:var(--nb-shadow-lift);color:var(--nb-ink);font-family:var(--nb-sans);opacity:0;transform:translateY(-4px) scale(.98);transform-origin:top left;transition:opacity .16s ease,transform .2s cubic-bezier(.2,.8,.2,1)}
#nb#nb .nb-dtp.is-in{opacity:1;transform:none}
#nb#nb .nb-dtp.nb-dtp-k-time{width:260px}
#nb#nb .nb-dtp svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
#nb#nb .nb-dtp-head{display:flex;align-items:center;gap:6px;margin-bottom:8px}
#nb#nb .nb-dtp-title{flex:1;display:flex;gap:6px;justify-content:center}
#nb#nb .nb-dtp-month,#nb#nb .nb-dtp-year{appearance:none;border:1px solid transparent;background:transparent;color:var(--nb-ink);font:700 14px var(--nb-sans);padding:5px 6px;border-radius:8px;cursor:pointer;text-align:center}
#nb#nb .nb-dtp-month option{background:var(--nb-bg);color:var(--nb-ink)}
#nb#nb .nb-dtp-year{width:62px;cursor:text;font-variant-numeric:tabular-nums}
#nb#nb .nb-dtp-month:hover,#nb#nb .nb-dtp-year:hover,#nb#nb .nb-dtp-month:focus,#nb#nb .nb-dtp-year:focus{background:var(--nb-fill);border-color:var(--nb-edge);outline:none}
#nb#nb .nb-dtp-nav{display:grid;place-items:center;width:32px;height:32px;border-radius:10px;border:1px solid var(--nb-edge);background:var(--nb-fill);color:var(--nb-ink);cursor:pointer}
#nb#nb .nb-dtp-nav:hover{border-color:var(--nb-edge-strong);background:var(--nb-fill-2)}
#nb#nb .nb-dtp-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}
#nb#nb .nb-dtp-dow{text-align:center;font-size:10.5px;font-weight:700;letter-spacing:.04em;color:var(--nb-muted);padding:4px 0}
#nb#nb .nb-dtp-day{height:36px;border:0;border-radius:10px;background:transparent;color:var(--nb-ink);font:600 13px var(--nb-sans);font-variant-numeric:tabular-nums;cursor:pointer;position:relative;transition:background .12s}
#nb#nb .nb-dtp-day:hover:not(:disabled){background:var(--nb-fill-2)}
#nb#nb .nb-dtp-day.is-out{color:var(--nb-faint,var(--nb-muted));opacity:.55}
#nb#nb .nb-dtp-day.is-today{box-shadow:inset 0 0 0 1.5px color-mix(in srgb,var(--nb-accent) 70%,transparent)}
#nb#nb .nb-dtp-day.is-sel{background:var(--nb-accent)!important;color:var(--nb-accent-ink);box-shadow:0 6px 16px -8px var(--nb-accent)}
#nb#nb .nb-dtp-day:disabled{opacity:.25;cursor:not-allowed}
#nb#nb .nb-dtp-day:focus-visible,#nb#nb .nb-dtp button:focus-visible,#nb#nb .nb-dtp-num:focus-visible{outline:2px solid var(--adq-ui-focus);outline-offset:1px}
#nb#nb .nb-dtp-time{margin-top:10px;padding-top:10px;border-top:1px solid var(--nb-edge)}
#nb#nb .nb-dtp-k-time .nb-dtp-time{margin-top:0;padding-top:0;border-top:0}
#nb#nb .nb-dtp-clock{display:flex;align-items:flex-start;justify-content:center;gap:4px}
#nb#nb .nb-dtp-colon{font:700 22px/40px var(--nb-mono,var(--nb-sans));color:var(--nb-muted);margin-top:26px}
#nb#nb .nb-dtp-spin{display:flex;flex-direction:column;align-items:center;gap:2px}
#nb#nb .nb-dtp-spin small{font-size:10px;color:var(--nb-muted);text-transform:uppercase;letter-spacing:.05em}
#nb#nb .nb-dtp-step{display:grid;place-items:center;width:52px;height:24px;border:0;border-radius:8px;background:transparent;color:var(--nb-muted);cursor:pointer}
#nb#nb .nb-dtp-step:hover{background:var(--nb-fill);color:var(--nb-ink)}
#nb#nb .nb-dtp-num{width:56px;height:44px;text-align:center;border-radius:12px;border:1px solid var(--nb-edge);background:var(--nb-fill);color:var(--nb-ink);font:700 22px var(--nb-mono,var(--nb-sans));font-variant-numeric:tabular-nums}
#nb#nb .nb-dtp-num:focus{border-color:var(--nb-accent);outline:none;box-shadow:0 0 0 3px color-mix(in srgb,var(--nb-accent) 22%,transparent)}
#nb#nb .nb-dtp-presets{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}
#nb#nb .nb-dtp-chip{border:1px solid var(--nb-edge);background:transparent;color:var(--nb-ink);border-radius:999px;padding:5px 10px;font:600 11.5px var(--nb-sans);cursor:pointer}
#nb#nb .nb-dtp-chip:hover{border-color:var(--nb-accent);color:var(--nb-accent)}
#nb#nb .nb-dtp-foot{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:12px;padding-top:10px;border-top:1px solid var(--nb-edge)}
#nb#nb .nb-dtp-preview{font:600 12px var(--nb-sans);color:var(--nb-muted);font-variant-numeric:tabular-nums;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
#nb#nb .nb-dtp-actions{display:flex;gap:6px;flex:0 0 auto}
#nb#nb .nb-dtp-btn{border-radius:10px;padding:8px 12px;min-height:34px;font:700 12.5px var(--nb-sans);cursor:pointer;border:1px solid var(--nb-edge);background:transparent;color:var(--nb-ink)}
#nb#nb .nb-dtp-btn.primary{background:var(--nb-accent);border-color:var(--nb-accent);color:var(--nb-accent-ink);padding:8px 16px}
#nb#nb .nb-dtp-btn.ghost:hover{background:var(--nb-fill)}
#nb#nb .nb-dtp.is-sheet{left:8px!important;right:8px;bottom:8px;top:auto!important;width:auto;max-width:none;transform-origin:bottom center}
@media (pointer:coarse){#nb#nb .nb-dtp-day{height:42px}#nb#nb .nb-dtp-step{height:32px}#nb#nb .nb-dtp-btn{min-height:42px}}
@media (prefers-reduced-motion:reduce){#nb#nb .nb-dtp{transition:none}}
#nb#nb#nb .nb-dtp{background:color-mix(in srgb,var(--nb-bg) 94%,transparent)!important}
#nb#nb#nb .nb-dtp button,#nb#nb#nb .nb-dtp input,#nb#nb#nb .nb-dtp select{min-width:0!important;min-height:0;margin:0!important;box-sizing:border-box;letter-spacing:normal;text-transform:none;line-height:1.1}
#nb#nb#nb .nb-dtp .nb-dtp-day{padding:0!important;width:auto!important;height:36px!important;overflow:visible!important;text-overflow:clip!important}
#nb#nb#nb .nb-dtp .nb-dtp-nav{padding:0!important;width:32px!important;height:32px!important}
#nb#nb#nb .nb-dtp .nb-dtp-step{padding:0!important;width:52px!important;height:24px!important}
#nb#nb#nb .nb-dtp .nb-dtp-chip{padding:5px 10px!important;height:auto!important;width:auto!important}
#nb#nb#nb .nb-dtp .nb-dtp-btn{padding:8px 12px!important;height:auto!important;width:auto!important}
#nb#nb#nb .nb-dtp .nb-dtp-btn.primary{padding:8px 16px!important}
#nb#nb#nb .nb-dtp .nb-dtp-num{padding:0!important;width:56px!important;height:44px!important}
#nb#nb#nb .nb-dtp .nb-dtp-month{padding:5px 6px!important;height:auto!important;width:auto!important;background-image:none!important}
#nb#nb#nb .nb-dtp .nb-dtp-year{padding:5px 6px!important;height:auto!important;width:62px!important}
@media (pointer:coarse){#nb#nb#nb .nb-dtp .nb-dtp-day{height:42px!important}#nb#nb#nb .nb-dtp .nb-dtp-step{height:32px!important}}
#nb#nb#nb .nb-dtp{background:var(--nb-bg)!important;background-image:linear-gradient(180deg,var(--nb-fill),transparent)!important}
#nb#nb .nb-dtp-foot{flex-wrap:wrap}
#nb#nb .nb-dtp-preview{flex:1 1 100%;color:var(--nb-ink)}
#nb#nb .nb-dtp-actions{flex:1 1 100%;justify-content:flex-end}

/* ===== 51. UI15.9 display size menu ===== */
#nb#nb .nb-display-menu{position:fixed;z-index:4000;width:340px;max-width:calc(calc(100vw / var(--nb-zoom,1)) - 16px);padding:14px;border-radius:16px;background:var(--nb-bg);background-image:linear-gradient(180deg,var(--nb-fill),transparent);border:1px solid var(--nb-edge-strong);box-shadow:var(--nb-shadow-lift);color:var(--nb-ink);opacity:0;transform:translateY(-4px);transition:opacity .15s,transform .2s cubic-bezier(.2,.8,.2,1)}
#nb#nb .nb-display-menu.is-in{opacity:1;transform:none}
#nb#nb .nb-display-menu h3{margin:0 0 8px;font:700 11px var(--nb-sans);letter-spacing:.06em;text-transform:uppercase;color:var(--nb-muted)}
#nb#nb .nb-display-menu h3:not(:first-child){margin-top:14px}
#nb#nb .nb-display-menu .nb-seg{display:flex;width:100%}
#nb#nb .nb-display-menu .nb-seg button{flex:1 1 0}
#nb#nb .nb-display-menu .help{margin:8px 0 0;font-size:11.5px}

/* ===== 52. UI15.9 card guides (what it shows / how to read / use it to) ===== */
#nb#nb .nb-guide{margin:4px 0 12px;border:1px solid var(--nb-edge);border-radius:14px;background:color-mix(in srgb,var(--nb-accent) 5%,var(--nb-fill));overflow:hidden}
#nb#nb .nb-guide summary{display:flex;align-items:center;gap:8px;padding:8px 12px;cursor:pointer;list-style:none;font:600 12.5px var(--nb-sans);color:var(--nb-ink)}
#nb#nb .nb-guide summary::-webkit-details-marker{display:none}
#nb#nb .nb-guide summary svg{width:16px;height:16px;fill:none;stroke:var(--nb-accent);stroke-width:2;stroke-linecap:round}
#nb#nb .nb-guide summary em{margin-left:auto;font-style:normal;font-size:11.5px;color:var(--nb-muted)}
#nb#nb .nb-guide summary:focus-visible{outline:2px solid var(--adq-ui-focus);outline-offset:-2px}
#nb#nb .nb-guide-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:2px 12px 12px}
#nb#nb .nb-guide-item b{display:flex;align-items:center;gap:6px;font-size:13px;margin-bottom:4px}
#nb#nb .nb-guide-item b i{display:grid;place-items:center;width:18px;height:18px;border-radius:50%;background:var(--nb-accent);color:var(--nb-accent-ink);font:700 10.5px var(--nb-sans);font-style:normal}
#nb#nb .nb-guide-item p{margin:0;font-size:13px;line-height:1.5;color:var(--nb-muted)}
#nb#nb .nb-heat-legend small{margin-left:6px;color:var(--nb-muted);font-size:11px}
@media (max-width:900px){#nb#nb .nb-guide-grid{grid-template-columns:1fr}}
#nb#nb#nb .nb-tile-range button{color:var(--nb-muted)!important;background:transparent!important}
#nb#nb#nb .nb-tile-range button:hover{color:var(--nb-ink)!important}
#nb#nb#nb .nb-tile-range button[aria-pressed="true"]{background:var(--nb-accent)!important;color:var(--nb-accent-ink)!important}

/* ===== 53. UI16.0 compliance: reasons, password, users, audit trail ===== */
#nb#nb .nb-reason-modal textarea{width:100%;min-height:84px;resize:vertical;font:500 13px/1.45 var(--nb-sans)}
#nb#nb .nb-pw-rules{list-style:none;margin:2px 0 0;padding:0;display:grid;gap:3px;font-size:12px;color:var(--nb-muted)}
#nb#nb .nb-pw-rules li.ok{color:var(--nb-green)}
#nb#nb .nb-kv{display:grid;gap:6px;margin:12px 0}
#nb#nb .nb-kv div{display:grid;grid-template-columns:150px 1fr;gap:10px;padding:6px 10px;border-radius:10px;background:var(--nb-fill)}
#nb#nb .nb-kv dt{color:var(--nb-muted);font-size:12px}
#nb#nb .nb-kv dd{margin:0;font-size:12.5px;word-break:break-all}
#nb#nb .nb-sec-grid{display:grid;grid-template-columns:minmax(220px,1fr) 2fr;gap:18px;margin-top:18px}
#nb#nb .nb-roles td small{color:var(--nb-muted)}
#nb#nb .nb-audit-wrap{max-height:calc(62vh / var(--nb-zoom,1));overflow:auto}
#nb#nb .nb-audit td{vertical-align:top;font-size:12px}
#nb#nb .nb-audit td small{color:var(--nb-muted)}
#nb#nb .nb-verify{display:grid;gap:3px;margin-top:10px;padding:10px 12px;border-radius:12px;border:1px solid var(--nb-edge)}
#nb#nb .nb-verify.ok{border-color:color-mix(in srgb,var(--nb-green) 55%,transparent);background:color-mix(in srgb,var(--nb-green) 10%,transparent)}
#nb#nb .nb-verify.bad{border-color:color-mix(in srgb,var(--nb-red) 55%,transparent);background:color-mix(in srgb,var(--nb-red) 10%,transparent)}
#nb#nb .nb-verify small{color:var(--nb-muted);font-size:11.5px}
#nb#nb .nb-verify code{font-family:var(--nb-mono)}
#nb#nb .lg-ver{margin:10px 0 0;font-size:11px;color:var(--nb-muted);opacity:.8}
@media (max-width:900px){#nb#nb .nb-sec-grid{grid-template-columns:1fr}}
#nb#nb#nb .nb-audit td{white-space:normal!important;word-break:break-word;overflow-wrap:anywhere}
#nb#nb#nb .nb-audit td:nth-child(6){min-width:260px;max-width:460px}
#nb#nb#nb .nb-audit td:nth-child(2){white-space:nowrap!important}

/* 54 · UI16.0 — Dashboard button in the top bar */
#nb#nb#nb .ref-topbar-right > .nb-dash-btn{width:auto!important;min-width:0!important;padding:0 14px 0 11px!important;border-radius:999px!important;display:inline-flex!important;align-items:center!important;gap:7px;font-size:12.5px!important;line-height:1!important;font-weight:600;color:var(--nb-ink-2)!important;white-space:nowrap}
#nb#nb#nb .ref-topbar-right > .nb-dash-btn svg{width:16px!important;height:16px!important}
#nb#nb#nb .ref-topbar-right > .nb-dash-btn.is-active{background:color-mix(in srgb,var(--nb-accent,#ffb347) 16%,transparent)!important;border-color:color-mix(in srgb,var(--nb-accent,#ffb347) 55%,transparent)!important;color:var(--nb-ink)!important}
#nb#nb#nb .ref-topbar-right > .nb-dash-btn.is-active svg{color:var(--nb-accent,#ffb347)!important}
@media (max-width:1100px){#nb#nb#nb .ref-topbar-right > .nb-dash-btn span{display:none}#nb#nb#nb .ref-topbar-right > .nb-dash-btn{width:40px!important;padding:0!important;justify-content:center}}

/* 55 · UI16.0 — 3D charts: summary and layers share one right column (no overlap); richer line legend */
#nb#nb .c3d-rcol{position:absolute;top:8px;right:6px;bottom:44px;display:flex;flex-direction:column;align-items:stretch;gap:8px;pointer-events:none;max-width:210px}
#nb#nb .c3d-rcol > *{position:static!important;pointer-events:auto}
#nb#nb .c3d-rcol .c3d-layers{min-height:0;display:flex;flex-direction:column;flex:0 1 auto}
#nb#nb .c3d-rcol .c3d-layer-list{overflow:auto;min-height:0;scrollbar-width:thin;padding-right:2px}
#nb#nb .nb-rose3d .c3d-rcol{transform:scale(.86);transform-origin:top right}
#nb#nb .c3d-lines{max-height:calc(100% - 60px);overflow:auto;scrollbar-width:thin}
#nb#nb .c3d-lines h6{margin-bottom:6px}
#nb#nb .c3d-lines .c3d-li{display:grid;grid-template-columns:auto 1fr auto;align-items:center;column-gap:8px;padding:3px 0}
#nb#nb .c3d-lines .c3d-li span{display:flex;flex-direction:column;line-height:1.2;min-width:0}
#nb#nb .c3d-lines .c3d-li small{font:500 10px var(--nb-mono,monospace);opacity:.7;white-space:nowrap}
#nb#nb .c3d-lines .c3d-li b{font:700 11px var(--nb-mono,monospace);white-space:nowrap;padding-left:6px}
#nb#nb .c3d-lines{gap:4px}
/* UI16.0: the four 3D panels use the free height of the page (larger charts) */
#nb#nb .a3-page .c3d-body,#nb#nb .a3-page .c3d-body > .c3d-host{min-height:max(420px,calc((100vh / var(--nb-zoom,1) - 380px) / 2))}

/* First-run restore on the sign-in card */
#nb#nb .lg-restore{margin-top:14px;padding-top:12px;border-top:1px solid rgba(255,255,255,.1);display:grid;gap:8px}
#nb#nb .lg-restore p{margin:0;font-size:12px;opacity:.75}

/* Unlicensed development copy */
#dev-banner{position:fixed;left:50%;bottom:10px;transform:translateX(-50%);z-index:30000;padding:5px 14px;border-radius:999px;background:#b3261e;color:#fff;font:600 11px/1.4 system-ui,sans-serif;letter-spacing:.06em;pointer-events:none}
#lic-mid{word-break:break-all;white-space:normal}


/* ======================================================================
   LEGACY MIGRATION SOURCE: src/daq/webui/shared/nebula-light.css
   Consolidated into the single universal Project 00 stylesheet.
   ====================================================================== */
/* GENERATED by tools/build_nebula_light.py - do not edit by hand. */
/* Nebula light glass theme: active only when <html> has the nb-light class. */
:root#nb.nb-light{
  color-scheme:light;
  --nb-bg:#f1eefb;
  --nb-ink:#1c1640;--nb-ink-2:#3a3466;--nb-muted:#524c7c;--nb-faint:#6a6494;
  --nb-accent:#ffb547;--nb-accent-ink:#2a1600;--nb-accent-hover:#ffc56e;
  --nb-glass:linear-gradient(155deg,rgba(255,255,255,.62),rgba(255,255,255,.4) 60%,rgba(255,255,255,.52));
  --nb-glass-inner:linear-gradient(160deg,rgba(255,255,255,.78),rgba(255,255,255,.5));
  --nb-fill:rgba(255,255,255,.58);--nb-fill-2:rgba(255,255,255,.8);--nb-fill-3:rgba(255,255,255,.96);
  --nb-edge:rgba(90,70,170,.18);--nb-edge-2:rgba(90,70,170,.11);--nb-edge-strong:rgba(90,70,170,.32);
  --nb-shadow:inset 0 1px 0 rgba(255,255,255,.95),0 22px 44px -28px rgba(60,40,140,.38);
  --nb-shadow-lift:inset 0 1px 0 rgba(255,255,255,1),0 28px 56px -26px rgba(60,40,140,.45);
  --glass-bg:rgba(255,255,255,.6);--glass-bg-strong:rgba(255,255,255,.75);--glass-bg-soft:rgba(255,255,255,.45);
  --text:var(--nb-ink);--muted:var(--nb-muted);--surface:#ffffff;--ui-canvas:var(--nb-bg);
}
#nb#nb#nb.nb-light ::selection{color:rgba(28,22,64,1)}
#nb#nb#nb.nb-light .avatar{color:rgba(28,22,64,1)!important}
#nb#nb#nb.nb-light .runtime-pill.good{color:rgba(16,147,67,1)!important}
#nb#nb#nb.nb-light :is(.runtime-pill.warn,.runtime-pill.neutral){color:rgba(147,95,16,1)!important}
#nb#nb#nb.nb-light .runtime-pill.bad{color:rgba(147,16,44,1)!important}
#nb#nb#nb.nb-light .nb-tabs{background:rgba(255,255,255,0.48)}
#nb#nb#nb.nb-light :is(nav.primary-nav,.top-primary-nav,.top-nav-sheet){background:linear-gradient(165deg,rgba(252,251,255,0.92),rgba(252,251,255,0.94))!important;box-shadow:0 40px 80px -30px rgba(60,40,140,0.41)!important}
#nb#nb#nb.nb-light .sidebar-backdrop{background:rgba(255,255,255,0.85)!important}
#nb#nb#nb.nb-light :is(.empty-icon,.metric-icon,.device-icon,.control-center-icon,.acquisition-title-icon,.acquisition-status-icon){color:rgba(28,22,64,1)!important}
#nb#nb#nb.nb-light :is(.empty-icon,.metric-icon,.device-icon,.control-center-icon,.acquisition-title-icon,.acquisition-status-icon) svg{color:rgba(28,22,64,1)!important}
#nb#nb#nb.nb-light :is(.ref-metric-tile,.live-card-reference,.live-card,.dashboard-direction-card,.dashboard-mini-windrose,.met-summary-card){box-shadow:inset 0 1px 0 rgba(255,255,255,.12),0 18px 34px -26px rgba(60,40,140,0.45)!important}
#nb#nb#nb.nb-light :is(.ref-metric-tile,.live-card-reference,.dashboard-direction-card):hover{border-color:color-mix(in srgb,var(--series,#b98cff) 55%,rgba(90,70,170,0.30) 10%)!important}
#nb#nb#nb.nb-light .direction-ring{background:radial-gradient(circle,rgba(255,255,255,0.60) 0 58%,color-mix(in srgb,var(--series,#ffb547) 22%,transparent) 100%)!important}
#nb#nb#nb.nb-light .met-summary-value b{color:color-mix(in srgb,var(--accent,rgba(28,22,64,1)) 70%,rgba(28,22,64,1))!important}
#nb#nb#nb.nb-light .combined-chip{border:1px solid color-mix(in srgb,var(--series,rgba(90,70,170,0.30)) 45%,transparent)!important}
#nb#nb#nb.nb-light :is(.button.danger,.touch-button.danger,button.danger){color:rgba(147,16,44,1)!important}
#nb#nb#nb.nb-light :is(.button.danger,.touch-button.danger) *{color:rgba(147,16,44,1)!important}
#nb#nb#nb.nb-light :is(.segmented,.configuration-tabs,.station-entity-tabs,.tabular-mode-tabs,.analysis-mode-tabs,.live-tabs,.met-subtabs,.dashboard-tabs){background:rgba(255,255,255,0.50)!important}
#nb#nb#nb.nb-light :is(.segmented,.configuration-tabs,.station-entity-tabs,.tabular-mode-tabs,.analysis-mode-tabs,.live-tabs,.met-subtabs,.dashboard-tabs) button:is(.active,[aria-selected="true"]){color:rgba(28,22,64,1)!important}
#nb#nb#nb.nb-light :is(.input,.select,.touch-input,.touch-select,input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="color"]):not(.ref-hidden-search),select,textarea,.adq-select-trigger){background:rgba(255,255,255,0.53)!important}
#nb#nb#nb.nb-light :is(.input,.select,input,select,textarea):focus, #nb#nb#nb.nb-light .adq-select-trigger:focus-visible{background:rgba(255,255,255,0.63)!important}
#nb#nb#nb.nb-light option{background:rgba(252,251,255,1)}
#nb#nb#nb.nb-light :is(.adq-select-popover,.adq-select-menu,.adq-select-panel,.adq-select-list,.dropdown-menu,.popover,.menu,[role="listbox"],[role="menu"]){background:rgba(252,251,255,0.96)!important;box-shadow:0 30px 60px -20px rgba(60,40,140,0.38)!important}
#nb#nb#nb.nb-light :is(.adq-select-option,[role="option"],[role="menuitem"]):is(:hover,.active,.highlighted,[aria-selected="true"]){color:rgba(28,22,64,1)!important}
#nb#nb#nb.nb-light table th{background:rgba(252,251,255,0.92)!important}
#nb#nb#nb.nb-light table td{border-color:rgba(90,70,170,0.11)!important}
#nb#nb#nb.nb-light table tbody tr:nth-child(even) td{background:rgba(255,255,255,0.43)!important}
#nb#nb#nb.nb-light table tbody tr:hover td{background:rgba(255,255,255,0.56)!important}
#nb#nb#nb.nb-light .ref-table-wrap .pivot-timebase-table :is(th,td):nth-child(3){background:rgba(252,251,255,0.97)!important}
#nb#nb#nb.nb-light :is(.status-chip,.ref-status,.badge,.pill):is(.good,.valid,.success,.online){color:rgba(16,147,67,1)!important}
#nb#nb#nb.nb-light :is(.status-chip,.ref-status,.badge,.pill):is(.warn,.warning,.maintenance,.pending){color:rgba(147,95,16,1)!important}
#nb#nb#nb.nb-light :is(.status-chip,.ref-status,.badge,.pill):is(.bad,.error,.danger,.invalid,.offline,.fault){color:rgba(147,16,44,1)!important}
#nb#nb#nb.nb-light :is(.status-chip,.ref-status,.badge,.pill).info{color:rgba(16,45,147,1)!important}
#nb#nb#nb.nb-light .modal-backdrop{background:radial-gradient(70% 60% at 50% 40%,rgba(124,77,255,.20),rgba(252,251,255,0.90))!important}
#nb#nb#nb.nb-light .modal{background:linear-gradient(155deg,rgba(252,251,255,0.94),rgba(252,251,255,0.96))!important;box-shadow:0 50px 100px -30px rgba(60,40,140,0.43),inset 0 1px 0 rgba(255,255,255,.14)!important}
#nb#nb#nb.nb-light .toast{background:linear-gradient(150deg,rgba(252,251,255,0.95),rgba(252,251,255,0.96))!important;box-shadow:0 30px 60px -24px rgba(60,40,140,0.41)!important}
#nb#nb#nb.nb-light .toast .toast-mark{color:rgba(28,22,64,1)!important}
#nb#nb#nb.nb-light ::-webkit-scrollbar-thumb{background:rgba(255,255,255,0.90)}
#nb#nb#nb.nb-light ::-webkit-scrollbar-thumb:hover{background:rgba(255,255,255,0.90)}
#nb#nb#nb.nb-light .skeleton, #nb#nb#nb.nb-light [class*="skeleton"]{background:linear-gradient(90deg,rgba(255,255,255,0.50),rgba(255,255,255,0.66),rgba(255,255,255,0.50))!important}
@media (prefers-reduced-transparency:reduce){#nb#nb#nb.nb-light :is(.panel,.card,header.topbar,.modal,.toast,nav.primary-nav,.top-nav-sheet,.ref-live-primary-zone,.ref-live-met-zone){background:rgba(252,251,255,1)!important}}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){
#nb#nb#nb.nb-light :is(.panel,.card,header.topbar,.modal,.toast,.ref-live-primary-zone,.ref-live-met-zone){background:rgba(252,251,255,0.94)!important}
}
#nb#nb#nb.nb-light.nb-lite header.topbar{background:linear-gradient(155deg,rgba(252,251,255,0.92),rgba(252,251,255,0.94))!important}
#nb#nb#nb.nb-light.nb-lite :is(.modal,.toast,.adq-select-popover,.adq-select-menu,.adq-select-panel,.adq-select-list,.top-nav-sheet,nav.primary-nav,[role="listbox"],[role="menu"]){background:linear-gradient(155deg,rgba(252,251,255,1),rgba(252,251,255,1))!important}
#nb#nb#nb.nb-light.nb-lite .modal-backdrop{background:rgba(252,251,255,0.90)!important}
#nb#nb#nb.nb-light .switch span{background:rgba(255,255,255,0.79)!important}
#nb#nb#nb.nb-light .switch span:after{box-shadow:0 2px 6px rgba(60,40,140,0.20)!important}
#nb#nb#nb.nb-light .switch.on span:after{background:rgba(252,251,255,1)!important}
#nb#nb#nb.nb-light .adq-select-popover{background:linear-gradient(160deg,rgba(252,251,255,0.98),rgba(252,251,255,0.98))!important}
#nb#nb#nb.nb-light .nb-c-flow .panel{background:linear-gradient(155deg,rgba(255,255,255,0.69),rgba(255,255,255,0.48) 60%,rgba(255,255,255,0.56))!important;border:1px solid rgba(90,70,170,0.20)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.16),inset 0 -1px 0 rgba(255,255,255,.03),0 24px 48px -28px rgba(60,40,140,0.43)!important}
#nb#nb#nb.nb-light .nb-seg{background:rgba(255,255,255,0.53);border:1px solid rgba(90,70,170,0.16)}
#nb#nb#nb.nb-light .nb-seg button:hover{background:rgba(255,255,255,0.60)}
#nb#nb#nb.nb-light .nb-seg button[aria-pressed="true"]{background:rgba(255,255,255,0.85);color:rgba(28,22,64,1)!important}
#nb#nb#nb.nb-light .nb-hero-chip{background:rgba(255,255,255,0.56);border:1px solid rgba(90,70,170,0.18)}
#nb#nb#nb.nb-light .nb-hero-chip b{color:rgba(28,22,64,1)!important}
#nb#nb#nb.nb-light .nb-pick-btn{border:1px dashed rgba(90,70,170,0.29)}
#nb#nb#nb.nb-light .nb-pick-btn b{color:rgba(28,22,64,1)!important}
#nb#nb#nb.nb-light .nb-pick-btn:hover, #nb#nb#nb.nb-light .nb-pick-btn[aria-expanded="true"]{background:rgba(255,255,255,0.60)}
#nb#nb#nb.nb-light .nb-trend-picker{background:linear-gradient(160deg,rgba(252,251,255,1),rgba(252,251,255,1))!important;box-shadow:0 30px 60px -24px rgba(60,40,140,0.41)}
#nb#nb#nb.nb-light .nb-band-params > .ref-metric-tile .live-number{color:rgba(28,22,64,1)!important}
#nb#nb#nb.nb-light .nb-delta.up{color:rgba(147,16,59,1)!important}
#nb#nb#nb.nb-light .nb-delta.down{color:rgba(16,147,67,1)!important}
#nb#nb#nb.nb-light .nb-delta.flat{background:rgba(255,255,255,0.60)}
#nb#nb#nb.nb-light .nb-band-params > .dashboard-mini-windrose{background:linear-gradient(155deg,rgba(255,255,255,0.69),rgba(255,255,255,0.48) 60%,rgba(255,255,255,0.56))!important;border:1px solid rgba(90,70,170,0.20)!important}
#nb#nb#nb.nb-light .nb-met-card .direction-card-copy > span{color:rgba(28,22,64,1)!important}
#nb#nb#nb.nb-light .nb-met-minis > .ref-metric-tile{background:rgba(255,255,255,0.53)!important;border:1px solid rgba(90,70,170,0.16)!important}
#nb#nb#nb.nb-light .nb-met-minis > .ref-metric-tile:hover{background:rgba(255,255,255,0.66)!important}
#nb#nb#nb.nb-light .nb-met-minis .live-number{color:rgba(28,22,64,1)!important}
#nb#nb#nb.nb-light .nb-aqi-track{stroke:rgba(28,22,64,0.09)}
#nb#nb#nb.nb-light .nb-aqi-scale b{box-shadow:0 0 0 2px rgba(60,40,140,0.11)}
#nb#nb#nb.nb-light .nb-aqi-row{background:rgba(255,255,255,0.48);border:1px solid rgba(90,70,170,0.12)}
#nb#nb#nb.nb-light .nb-aqi-hours i{background:rgba(255,255,255,0.60)}
#nb#nb#nb.nb-light .nb-aqi-idx{background:var(--c,rgba(255,255,255,0.60))}
#nb#nb#nb.nb-light .nb-aqi-bars{border-bottom:1px solid rgba(90,70,170,0.16)}
#nb#nb#nb.nb-light .nb-band-table .pivot-timebase-table thead th{background:rgba(252,251,255,1)!important}
#nb#nb#nb.nb-light .nb-band-table .pivot-timebase-table tbody tr:nth-child(odd) td{background:rgba(255,255,255,0.48)!important}
#nb#nb#nb.nb-light .nb-band-table .pivot-timebase-table tbody tr:hover td{background:rgba(255,255,255,0.63)!important}
#nb#nb#nb.nb-light .nb-corr-cell{color:rgba(28,22,64,1)!important}
#nb#nb#nb.nb-light .nb-corr-cell.self{background:rgba(255,255,255,0.45)}
#nb#nb#nb.nb-light .nb-diurnal-bars{border-bottom:1px solid rgba(90,70,170,0.16)}
#nb#nb#nb.nb-light .nb-layout-pop{background:linear-gradient(160deg,rgba(252,251,255,1),rgba(252,251,255,1))!important;box-shadow:0 40px 80px -30px rgba(60,40,140,0.43)}
#nb#nb#nb.nb-light .nb-band-table .pivot-timebase-table thead th:nth-child(n){background:rgba(252,251,255,1)!important}
#nb#nb#nb.nb-light :is(.segmented,.tabular-mode-tabs,.analysis-mode-tabs,.configuration-tabs,.station-entity-tabs,.live-tabs,.met-subtabs,.dashboard-tabs,.timebase-tab-strip){background:rgba(255,255,255,0.50)!important}
#nb#nb#nb.nb-light .nb-met-card .direction-ring{background:radial-gradient(circle,rgba(255,255,255,0.50) 0 62%,color-mix(in srgb,var(--series,#ffb547) 18%,transparent) 100%)!important}
#nb#nb#nb.nb-light .nb-met-minis > .ref-metric-tile:nth-child(odd){background:rgba(255,255,255,0.47)!important}
#nb#nb#nb.nb-light .nb-met-minis > .ref-metric-tile:hover{background:rgba(255,255,255,0.60)!important}
#nb#nb#nb.nb-light .nb-band-params.has-met:not(:has(> .ref-metric-tile)) .nb-met-minis > .ref-metric-tile:nth-child(4n/**/+1), #nb#nb#nb.nb-light .nb-band-params.has-met:not(:has(> .ref-metric-tile)) .nb-met-minis > .ref-metric-tile:nth-child(4n/**/+2){background:rgba(255,255,255,0.47)!important}
#nb#nb#nb.nb-light .nb-rose-stats > div:nth-child(odd){background:rgba(255,255,255,0.48)}
#nb#nb#nb.nb-light .nb-met-row:nth-child(odd){background:rgba(255,255,255,0.48)}
#nb#nb#nb.nb-light .nb-met-row:hover{background:rgba(255,255,255,0.63)}
#nb#nb#nb.nb-light .nb-acq-btn{color:rgba(17,146,73,1)!important}
#nb#nb#nb.nb-light .nb-acq-btn.is-running{color:rgba(147,16,42,1)!important}
#nb#nb#nb.nb-light .nb-band-table table.pivot-timebase-table thead th:nth-child(n){background:rgba(255,255,255,0.52)!important}
#nb#nb#nb.nb-light .nb-band-table table.pivot-timebase-table tbody tr:hover td{background:rgba(255,255,255,0.50)!important}
#nb#nb#nb.nb-light .nb-aqi-rows-head{background:rgba(255,255,255,0.52)}
#nb#nb#nb.nb-light#nb .nb-aqi-row:hover{background:rgba(255,255,255,0.47)}
#nb#nb#nb.nb-light .nb-aqi-summary{background:rgba(255,255,255,0.48)}
#nb#nb#nb.nb-light .nb-aqi-chip{background:rgba(255,255,255,0.56)}
#nb#nb#nb.nb-light .nb-aqi-chip b{background:var(--c,rgba(255,255,255,0.85))}
#nb#nb#nb.nb-light .nb-aqi-dist{background:rgba(255,255,255,0.53)}
#nb#nb#nb.nb-light .nb-heat-cover{background:rgba(255,255,255,0.53)}
#nb#nb#nb.nb-light#nb .nb-heat-table thead th{background:rgba(255,255,255,0.52)!important}
#nb#nb#nb.nb-light#nb .nb-heat-table tbody th{background:rgba(255,255,255,0.45)!important}
#nb#nb#nb.nb-light#nb .nb-heat-table td.nb-heat-cell{background:var(--h,rgba(255,255,255,0.45))!important}
#nb#nb#nb.nb-light#nb .nb-heat-table td.nb-heat-cell.is-empty{background:rgba(255,255,255,0.45)!important}
#nb#nb#nb.nb-light#nb .nb-heat-table td.nb-heat-share{background:rgba(255,255,255,0.45)!important}
#nb#nb#nb.nb-light .nb-heat-share i{background:rgba(255,255,255,0.60)}
#nb#nb#nb.nb-light#nb .nb-heat-table td.nb-heat-top{background:rgba(255,255,255,0.45)!important}
#nb#nb#nb.nb-light#nb .nb-band-params > .ref-metric-tile.nb-st-alert .live-number{color:rgba(147,16,40,1)!important}
#nb#nb#nb.nb-light#nb .ref-metric-tile [data-nb-st-label]{color:rgba(24,139,64,1)!important}
#nb#nb#nb.nb-light#nb .ref-metric-tile:is(.nb-st-bad,.nb-st-alert) [data-nb-st-label]{color:rgba(147,16,41,1)!important}
#nb#nb#nb.nb-light#nb .nb-band-table td.nb-cell-over .ref-tb-value{color:rgba(147,16,41,1)!important}
#nb#nb#nb.nb-light .nb-heat-meta span{background:rgba(255,255,255,0.50)}
#nb#nb#nb.nb-light .nb-layout-row{background:rgba(255,255,255,0.48)}
#nb#nb#nb.nb-light .nb-dash-widget{background:rgba(255,255,255,0.48)}
#nb#nb#nb.nb-light#nb .ref-metric-tile:hover, #nb#nb#nb.nb-light#nb .live-card-reference.ref-metric-tile:hover{box-shadow:0 22px 44px -22px rgba(60,40,140,0.34),0 0 0 1px rgba(185,140,255,.35)!important}
#nb#nb#nb.nb-light .nb-kpi-ico{color:rgba(60,16,147,1)}
#nb#nb#nb.nb-light#nb .nb-kpi.is-ok .nb-kpi-ico{color:rgba(24,139,64,1)}
#nb#nb#nb.nb-light#nb .nb-kpi.is-warn .nb-kpi-ico{color:rgba(147,94,16,1)}
#nb#nb#nb.nb-light#nb .nb-kpi:is(.is-bad,.is-alert) .nb-kpi-ico{color:rgba(147,16,41,1)}
#nb#nb#nb.nb-light#nb .nb-kpi:is(.is-bad,.is-alert) .nb-kpi-value{color:rgba(147,16,41,1)!important}
#nb#nb#nb.nb-light#nb .nb-heat-table.is-days tbody td.nb-heat-wind{background:rgba(255,255,255,0.45)!important}
#nb#nb#nb.nb-light .nb-dash-block{background:rgba(255,255,255,0.48)}
#nb#nb#nb.nb-light .nb-dash-pick{background:rgba(255,255,255,0.45)}
#nb#nb#nb.nb-light .rep-params{background:rgba(255,255,255,0.45)}
#nb#nb#nb.nb-light .rep-chip{background:rgba(255,255,255,0.56)}
#nb#nb#nb.nb-light#nb .rep-chip button:hover:not(:disabled){background:rgba(255,255,255,0.66)}
#nb#nb#nb.nb-light#nb .rep-pick{background:rgba(255,255,255,0.47)}
#nb#nb#nb.nb-light .rep-pick i{border:1.5px solid rgba(90,70,170,0.30)}
#nb#nb#nb.nb-light .rep-error{color:rgba(147,16,36,1)!important}
#nb#nb#nb.nb-light .rep-avail{color:rgba(16,147,67,1)!important}
#nb#nb#nb.nb-light#nb .rep-table thead th{background:rgba(255,255,255,0.52)!important}
#nb#nb#nb.nb-light .rep-table tbody tr:hover td{background:rgba(255,255,255,0.47)!important}
#nb#nb#nb.nb-light .rep-table td.is-bad{color:rgba(147,16,36,1)!important}
#nb#nb#nb.nb-light#nb .rep-table tfoot :is(th,td){background:rgba(255,255,255,0.44)!important}
#nb#nb#nb.nb-light .diag-badge{color:rgba(60,16,147,1)!important}
#nb#nb#nb.nb-light#nb .an-group-table thead th{background:var(--nb-glass-inner,rgba(252,251,255,0.96))!important}
#nb#nb#nb.nb-light#nb .an-group-table tfoot :is(th,td){background:rgba(252,251,255,0.90)!important}
#nb#nb#nb.nb-light .nb-dl-menu{background:linear-gradient(160deg,rgba(252,251,255,0.98),rgba(252,251,255,0.98));box-shadow:0 24px 50px -18px rgba(60,40,140,0.27)}
#nb#nb#nb.nb-light .nb-dcfg-summary{color:rgba(48,16,147,1)!important}
#nb#nb#nb.nb-light .ps-term{background:rgba(252,251,255,0.90)}
#nb#nb#nb.nb-light .ps-ex-tx code{color:rgba(16,94,147,1)!important}
#nb#nb#nb.nb-light .ps-ex-err span{color:rgba(147,16,36,1)!important}
#nb#nb#nb.nb-light .ps-tok{color:rgba(16,71,147,1)!important}
#nb#nb#nb.nb-light .ps-tok.is-picked{color:rgba(28,22,64,1)!important}
#nb#nb#nb.nb-light .ps-role{color:rgba(16,67,147,1)!important}
#nb#nb#nb.nb-light .ps-role.is-diag{color:rgba(60,16,147,1)!important}
#nb#nb#nb.nb-light .adq-select-popover.adq-select-up{box-shadow:0 -24px 50px -18px rgba(60,40,140,0.25)!important}
#nb#nb#nb.nb-light .rose3d-ctl{background:rgba(252,251,255,0.90)}
#nb#nb#nb.nb-light .rose3d-tip{background:rgba(252,251,255,0.92);color:rgba(28,22,64,1)!important;box-shadow:0 14px 30px -12px rgba(60,40,140,0.27)}
#nb#nb#nb.nb-light .rose3d-tip span{color:rgba(58,52,102,1)!important}
#nb#nb#nb.nb-light .c3d-panel{background:radial-gradient(120% 90% at 50% 0%,rgba(38,70,150,.28),rgba(255,255,255,0.30) 60%),linear-gradient(180deg,rgba(252,251,255,1),rgba(252,251,255,1));box-shadow:inset 0 0 0 1px rgba(255,255,255,.03),0 18px 40px -24px rgba(60,40,140,0.36)}
#nb#nb#nb.nb-light .c3d-title h3{color:rgba(28,22,64,1)!important}
#nb#nb#nb.nb-light .c3d-title p{color:rgba(45,65,118,1)!important}
#nb#nb#nb.nb-light .c3d-ctl>span{color:rgba(45,65,118,1)!important}
#nb#nb#nb.nb-light .c3d-ctl select, #nb#nb#nb.nb-light .c3d-ctl .adq-select-trigger, #nb#nb#nb.nb-light .c3d-range{background:rgba(252,251,255,1)!important;color:rgba(28,22,64,1)!important}
#nb#nb#nb.nb-light .c3d-seg{background:rgba(252,251,255,1)}
#nb#nb#nb.nb-light .c3d-seg button{color:rgba(27,57,136,1)!important}
#nb#nb#nb.nb-light .c3d-seg button[aria-pressed="true"]{color:rgba(28,22,64,1)!important}
#nb#nb#nb.nb-light .c3d-chips{background:rgba(252,251,255,1)}
#nb#nb#nb.nb-light .c3d-chip{background:rgba(252,251,255,1);color:rgba(28,22,64,1)!important}
#nb#nb#nb.nb-light .c3d-chip button{color:rgba(45,66,118,1)!important}
#nb#nb#nb.nb-light .c3d-chip-more{color:rgba(16,63,147,1)!important}
#nb#nb#nb.nb-light .c3d-tools button{background:rgba(252,251,255,1);color:rgba(58,52,102,1)!important}
#nb#nb#nb.nb-light .c3d-legend, #nb#nb#nb.nb-light .c3d-summary, #nb#nb#nb.nb-light .c3d-layers{background:rgba(252,251,255,0.90);color:rgba(28,22,64,1)}
#nb#nb#nb.nb-light .c3d-legend h6, #nb#nb#nb.nb-light .c3d-summary h6, #nb#nb#nb.nb-light .c3d-layers h6{color:rgba(28,22,64,1)!important}
#nb#nb#nb.nb-light .c3d-cl span, #nb#nb#nb.nb-light .c3d-gticks span{color:rgba(58,52,102,1)!important}
#nb#nb#nb.nb-light .c3d-summary span{color:rgba(45,64,118,1)!important}
#nb#nb#nb.nb-light .c3d-summary b{color:rgba(28,22,64,1)!important}
#nb#nb#nb.nb-light .c3d-layers label{color:rgba(28,22,64,1)!important}
#nb#nb#nb.nb-light .c3d-li{color:rgba(28,22,64,1)!important}
#nb#nb#nb.nb-light .c3d-tip{background:rgba(252,251,255,0.94);color:rgba(28,22,64,1)}
#nb#nb#nb.nb-light .c3d-tip b{color:rgba(28,22,64,1)}
#nb#nb#nb.nb-light .c3d-hint{color:rgba(45,64,118,1)!important}
#nb#nb#nb.nb-light .c3d-msg{color:rgba(45,64,118,1)!important}
#nb#nb#nb.nb-light .c3d-empty{color:rgba(45,64,118,1)!important}
#nb#nb#nb.nb-light .c3d-backdrop{background:rgba(252,251,255,0.90)}
#nb#nb#nb.nb-light .an-rose3d{background:linear-gradient(180deg,rgba(252,251,255,1),rgba(252,251,255,1))}
#nb#nb#nb.nb-light .c3d-fab .c3d-tools button{background:rgba(252,251,255,0.90)}
#nb#nb#nb.nb-light #lic-screen{background:radial-gradient(80% 70% at 30% 20%,rgba(47,109,255,.28),transparent 60%),radial-gradient(60% 60% at 80% 90%,rgba(255,92,138,.18),transparent 60%),rgba(252,251,255,1)}
#nb#nb#nb.nb-light #lic-screen .lic-card{background:rgba(252,251,255,0.90);box-shadow:0 40px 90px -30px rgba(60,40,140,0.36)}
#nb#nb#nb.nb-light #lic-screen .lic-visual{background:linear-gradient(160deg,rgba(252,251,255,1),rgba(252,251,255,1))}
#nb#nb#nb.nb-light #lic-screen .lic-brand b{color:rgba(28,22,64,1)!important}
#nb#nb#nb.nb-light #lic-screen .lic-brand span{color:rgba(45,65,118,1)!important}
#nb#nb#nb.nb-light #lic-screen .lic-body{color:rgba(28,22,64,1)}
#nb#nb#nb.nb-light #lic-screen .lic-eyebrow{color:rgba(147,94,16,1)!important}
#nb#nb#nb.nb-light #lic-screen h1{color:rgba(28,22,64,1)!important}
#nb#nb#nb.nb-light #lic-screen .lic-reason{color:rgba(58,52,102,1)!important}
#nb#nb#nb.nb-light #lic-screen .lic-reason.is-bad{color:rgba(147,16,34,1)!important}
#nb#nb#nb.nb-light #lic-screen .lic-mid{background:rgba(252,251,255,0.90)}
#nb#nb#nb.nb-light #lic-screen .lic-mid>span{color:rgba(45,66,118,1)!important}
#nb#nb#nb.nb-light #lic-screen .lic-mid code{color:rgba(16,83,147,1)!important}
#nb#nb#nb.nb-light #lic-screen .lic-steps{color:rgba(58,52,102,1)!important}
#nb#nb#nb.nb-light #lic-screen .lic-steps code{color:rgba(147,94,16,1)!important}
#nb#nb#nb.nb-light #lic-screen .lic-paste textarea{background:rgba(252,251,255,0.90)!important;color:rgba(28,22,64,1)!important}
#nb#nb#nb.nb-light #lic-screen .lic-msg{color:rgba(58,52,102,1)!important}
#nb#nb#nb.nb-light #lic-screen .lic-msg.is-bad{color:rgba(147,16,34,1)!important}
#nb#nb#nb.nb-light #lic-screen .lic-msg.is-ok{color:rgba(24,139,64,1)!important}
#nb#nb#nb.nb-light .chr-card{background:radial-gradient(120% 90% at 50% 0%,rgba(38,70,150,.24),rgba(255,255,255,0.30) 60%),linear-gradient(180deg,rgba(252,251,255,1),rgba(252,251,255,1));box-shadow:inset 0 0 0 1px rgba(255,255,255,.03),0 18px 40px -24px rgba(60,40,140,0.36)}
#nb#nb#nb.nb-light .chr-card h3{color:rgba(28,22,64,1)}
#nb#nb#nb.nb-light .chr-card p{color:rgba(16,52,147,0.70)}
#nb#nb#nb.nb-light .chr-tog{color:rgba(16,60,147,0.85)}
#nb#nb#nb.nb-light .chr-canvas{background:rgba(252,251,255,0.90)}
#nb#nb#nb.nb-light .chr-empty{color:rgba(16,52,147,0.75)}
#nb#nb#nb.nb-light .chr-tip{background:rgba(252,251,255,0.92);color:rgba(28,22,64,1);box-shadow:0 8px 20px -8px rgba(60,40,140,0.32)}
#nb#nb#nb.nb-light .chr-kpi span{color:rgba(22,54,141,0.70)}
#nb#nb#nb.nb-light .chr-kpi b{color:rgba(28,22,64,1)}
#nb#nb#nb.nb-light .chr-kpi.ok b{color:rgba(29,134,96,1)}
#nb#nb#nb.nb-light .chr-kpi.bad b{color:rgba(147,16,16,1)}
#nb#nb#nb.nb-light .chr-kpi.warn b{color:rgba(147,110,16,1)}
#nb#nb#nb.nb-light .chr-table th{color:rgba(22,54,141,0.80);background:rgba(252,251,255,1)}
#nb#nb#nb.nb-light .chr-table td{color:rgba(58,52,102,1)}
#nb#nb#nb.nb-light .chr-table tr.miss td{color:rgba(35,58,128,0.50)}
#nb#nb#nb.nb-light .chr-table .muted, #nb#nb#nb.nb-light .chr-card .muted{color:rgba(22,54,141,0.55)}
#nb#nb#nb.nb-light .chr-run{color:rgba(58,52,102,1)}
#nb#nb#nb.nb-light .chr-run span, #nb#nb#nb.nb-light .chr-run small{color:rgba(22,54,141,0.70)}
#nb#nb#nb.nb-light .icon-button-small.on{color:rgba(16,107,147,1)}
#nb#nb#nb.nb-light .chr-modal .chr-test .ok{color:rgba(29,134,96,1)}
#nb#nb#nb.nb-light .chr-modal .chr-test .miss{color:rgba(147,16,16,1)}
#nb#nb#nb.nb-light .nb-nc{color:rgba(147,16,16,1)}
#nb#nb#nb.nb-light .analysis-type-tabs .an-type-btn{background:rgba(255,255,255,0.50)}
#nb#nb#nb.nb-light .analysis-type-tabs .an-type-btn:hover:not(:disabled){background:rgba(255,255,255,0.60)}
#nb#nb#nb.nb-light .xy-grid{stroke:rgba(16,40,147,0.10)}
#nb#nb#nb.nb-light .xy-axis{stroke:rgba(16,40,147,0.35)}
#nb#nb#nb.nb-light .xy-tick{fill:rgba(58,52,102,0.78)}
#nb#nb#nb.nb-light .xy-title{fill:rgba(28,22,64,1)}
#nb#nb#nb.nb-light .xy-pt{fill:rgba(16,63,147,1)}
#nb#nb#nb.nb-light .xy-pt-anom{fill:rgba(147,16,61,1);stroke:rgba(28,22,64,1)}
#nb#nb#nb.nb-light .xy-curve-glow{stroke:rgba(147,94,16,1)}
#nb#nb#nb.nb-light .xy-linear{stroke:rgba(28,22,64,0.55)}
#nb#nb#nb.nb-light .xy-legend{color:var(--nb-ink-2,rgba(58,52,102,1))}
#nb#nb#nb.nb-light .nb-station-mark{color:rgba(147,96,16,1)}
#nb#nb#nb.nb-light .nb-station-ids div{background:rgba(255,255,255,0.50)}
#nb#nb#nb.nb-light .nb-st-bad .nb-spark-empty{color:rgba(147,16,16,1)}
#nb#nb#nb.nb-light .exc-opt{background:rgba(255,255,255,0.47)}
#nb#nb#nb.nb-light #lg-screen{background:rgba(252,251,255,0.90)}
#nb#nb#nb.nb-light .lg-card{background:linear-gradient(160deg,rgba(252,251,255,0.92),rgba(252,251,255,0.94));box-shadow:0 40px 90px -40px rgba(60,40,140,0.38),inset 0 1px 0 rgba(255,255,255,.06)}
#nb#nb#nb.nb-light .lg-brand b{color:rgba(28,22,64,1)}
#nb#nb#nb.nb-light .lg-brand span{color:rgba(16,45,147,0.72)}
#nb#nb#nb.nb-light .lg-logo circle{stroke:rgba(16,50,147,0.45)}
#nb#nb#nb.nb-light .lg-wave{stroke:rgba(147,94,16,1)}
#nb#nb#nb.nb-light .lg-station small{color:rgba(16,45,147,0.62)}
#nb#nb#nb.nb-light .lg-station b{color:rgba(28,22,64,1)}
#nb#nb#nb.nb-light .lg-facts li{color:rgba(58,52,102,0.86)}
#nb#nb#nb.nb-light .lg-note{color:rgba(16,45,147,0.70)}
#nb#nb#nb.nb-light .lg-form h1{color:rgba(28,22,64,1)}
#nb#nb#nb.nb-light .lg-sub{color:rgba(16,45,147,0.74)}
#nb#nb#nb.nb-light .lg-field label{color:rgba(28,22,64,0.90)}
#nb#nb#nb.nb-light .lg-eye{color:rgba(16,45,147,0.75)}
#nb#nb#nb.nb-light .lg-eye:hover{background:rgba(255,255,255,0.53);color:rgba(28,22,64,1)}
#nb#nb#nb.nb-light .lg-eye[aria-pressed="true"]{color:rgba(147,94,16,1)}
#nb#nb#nb.nb-light .lg-caps{color:rgba(147,110,16,1)}
#nb#nb#nb.nb-light .lg-error{color:rgba(147,16,16,1)}
#nb#nb#nb.nb-light .lg-spin{border:2px solid rgba(90,70,170,0.16);border-top-color:rgba(90,70,170,0.16)}
#nb#nb#nb.nb-light .lg-view{background:rgba(255,255,255,0.44);color:rgba(28,22,64,0.88)}
#nb#nb#nb.nb-light .lg-view:hover{background:rgba(255,255,255,0.56)}
#nb#nb#nb.nb-light .xy-band{fill:rgba(147,94,16,0.14)}
#nb#nb#nb.nb-light .xy-reg{stroke:rgba(147,94,16,1)}
#nb#nb#nb.nb-light .xy-curve{stroke:rgba(16,105,147,1)}
#nb#nb#nb.nb-light .xy-one{stroke:rgba(28,22,64,0.50)}
#nb#nb#nb.nb-light .xy-block{background:rgba(255,255,255,0.45)}
#nb#nb#nb.nb-light .pp-ring{stroke:rgba(16,40,147,0.16)}
#nb#nb#nb.nb-light .pp-spoke{stroke:rgba(16,40,147,0.10)}
#nb#nb#nb.nb-light .pp-ringlab{fill:rgba(58,52,102,0.60)}
#nb#nb#nb.nb-light .pp-card{fill:rgba(28,22,64,1)}
#nb#nb#nb.nb-light .pp-base{stroke:rgba(28,22,64,1)}
#nb#nb#nb.nb-light#nb .ref-topbar-right > .nb-dash-btn.is-active svg{color:var(--nb-accent,rgba(147,93,16,1))!important}
/* ---- hand-tuned light rules ---- */
#nb#nb#nb.nb-light body::before{opacity:1}
#nb#nb#nb.nb-light body::after{opacity:.035;mix-blend-mode:multiply}
#nb#nb#nb.nb-light .nb-c-flow .panel,#nb#nb#nb.nb-light .nb-band-params > .dashboard-mini-windrose{
  background:linear-gradient(155deg,rgba(255,255,255,.62),rgba(255,255,255,.38) 60%,rgba(255,255,255,.5))!important;
  border:1px solid rgba(255,255,255,.9)!important;
  box-shadow:inset 0 1px 0 #fff,0 0 0 1px rgba(90,70,170,.08),0 24px 48px -30px rgba(60,40,140,.45)!important}
#nb#nb#nb.nb-light :is(.ref-metric-tile,.live-card-reference,.live-card,.dashboard-direction-card,.met-summary-card){
  background:radial-gradient(120% 90% at 110% 118%,color-mix(in srgb,var(--series,var(--accent,#7d4ae0)) 22%,transparent) 0%,transparent 58%),linear-gradient(160deg,rgba(255,255,255,.66),rgba(255,255,255,.4))!important;
  border:1px solid rgba(255,255,255,.95)!important;box-shadow:inset 0 1px 0 #fff,0 0 0 1px rgba(90,70,170,.08),0 18px 34px -26px rgba(60,40,140,.5)!important}
#nb#nb#nb.nb-light .nb-met-card .dashboard-direction-card{background:none!important;border:0!important;box-shadow:none!important}
#nb#nb#nb.nb-light .nb-band-params > .ref-metric-tile .live-number,#nb#nb#nb.nb-light .nb-met-minis .live-number,#nb#nb#nb.nb-light .nb-met-card .direction-card-copy > span{color:var(--nb-ink)!important}
#nb#nb#nb.nb-light .nb-met-minis > .ref-metric-tile{background:rgba(255,255,255,.62)!important;border:1px solid rgba(90,70,170,.1)!important;box-shadow:none!important}
#nb#nb#nb.nb-light .nb-delta.up{background:rgba(214,51,111,.12);color:#a3144f!important}
#nb#nb#nb.nb-light .nb-delta.down{background:rgba(24,146,76,.12);color:#11683a!important}
#nb#nb#nb.nb-light .nb-delta.flat{background:rgba(60,45,130,.08);color:var(--nb-ink-2)!important}
#nb#nb#nb.nb-light .nb-hero-chip,#nb#nb#nb.nb-light .nb-seg{background:rgba(255,255,255,.66);border-color:rgba(90,70,170,.14)}
#nb#nb#nb.nb-light .nb-hero-chip b,#nb#nb#nb.nb-light .nb-pick-btn b{color:var(--nb-ink)!important}
#nb#nb#nb.nb-light .nb-seg button[aria-pressed="true"]{background:#fff;color:var(--nb-ink)!important;box-shadow:0 2px 8px -2px rgba(60,40,140,.25)}
#nb#nb#nb.nb-light .nb-pick-btn{border-color:rgba(90,70,170,.3)}
#nb#nb#nb.nb-light :is(.nb-trend-picker,.nb-layout-pop){background:linear-gradient(160deg,#ffffff,#f5f2ff)!important;border-color:rgba(90,70,170,.18)!important;box-shadow:0 30px 60px -24px rgba(60,40,140,.45)!important}
#nb#nb#nb.nb-light #nb-aqi-value{fill:var(--nb-ink)!important}
#nb#nb#nb.nb-light .nb-aqi-gauge circle:first-child{stroke:rgba(60,45,130,.1)}
#nb#nb#nb.nb-light .nb-aqi-sub i{background:rgba(60,45,130,.1)}
#nb#nb#nb.nb-light .nb-aqi-row{background:transparent!important;border:0!important;border-bottom:1px solid rgba(90,70,170,.12)!important;border-radius:0!important}
#nb#nb#nb.nb-light .nb-aqi-row:last-child{border-bottom:0!important}
#nb#nb#nb.nb-light .nb-aqi-row:hover{background:rgba(255,255,255,.6)!important}
#nb#nb#nb.nb-light .nb-aqi-rows-head,#nb#nb#nb.nb-light .nb-heat-table thead th{background:rgba(90,70,170,.07)!important}
#nb#nb#nb.nb-light #nb-aqi-cat{fill:var(--nb-ink-2)!important}
#nb#nb#nb.nb-light .nb-aqi-summary{background:rgba(255,255,255,.55)!important;border-color:rgba(90,70,170,.12)!important}
#nb#nb#nb.nb-light .nb-aqi-chip{background:rgba(90,70,170,.08)!important}
#nb#nb#nb.nb-light .nb-aqi-dist,#nb#nb#nb.nb-light .nb-heat-share i{background:rgba(90,70,170,.1)!important}
#nb#nb#nb.nb-light .nb-heat-table :is(tbody th,td.nb-heat-share,td.nb-heat-top,td.nb-heat-cell.is-empty){background:rgba(255,255,255,.62)!important}
#nb#nb#nb.nb-light .nb-heat-table td.nb-heat-cell:hover{box-shadow:0 0 0 2px rgba(60,45,130,.55)}
#nb#nb#nb.nb-light .nb-heat-cover{background:rgba(255,255,255,.7)!important;border-color:rgba(90,70,170,.14)!important}
#nb#nb#nb.nb-light#nb .nb-band-params > .ref-metric-tile.nb-st-alert .live-number{color:#c8103e!important}
#nb#nb#nb.nb-light#nb .ref-metric-tile [data-nb-st-label]{color:#0f5e33!important}
#nb#nb#nb.nb-light#nb .ref-metric-tile:is(.nb-st-bad,.nb-st-alert) [data-nb-st-label],#nb#nb#nb.nb-light#nb .nb-band-table td.nb-cell-over .ref-tb-value{color:#b0103a!important}
#nb#nb#nb.nb-light .nb-band-params > .ref-metric-tile.nb-st-ok{border-color:rgba(24,146,76,.35)!important}
#nb#nb#nb.nb-light .nb-band-table table.pivot-timebase-table tbody tr.nb-row-ok td{background:rgba(24,146,76,.07)!important}
#nb#nb#nb.nb-light .nb-band-table table.pivot-timebase-table tbody tr.nb-row-bad td{background:rgba(214,40,80,.09)!important}
#nb#nb#nb.nb-light .nb-band-table table.pivot-timebase-table tbody tr.nb-row-alert td{background:rgba(214,40,80,.17)!important}
#nb#nb#nb.nb-light :is(.nb-layout-row,.nb-dash-widget,.nb-heat-meta span){background:rgba(255,255,255,.6)!important;border-color:rgba(90,70,170,.12)!important}
#nb#nb#nb.nb-light .nb-empty-dash{background:rgba(255,255,255,.7)!important;border-color:rgba(255,255,255,.95)!important}
#nb#nb#nb.nb-light .ref-metric-tile:hover{box-shadow:0 22px 44px -24px rgba(60,40,140,.55),0 0 0 1px rgba(125,74,224,.3)!important}
#nb#nb#nb.nb-light .nb-kpi{background:linear-gradient(155deg,rgba(255,255,255,.62),rgba(255,255,255,.38) 60%,rgba(255,255,255,.5))!important;border-color:rgba(255,255,255,.9)!important;box-shadow:inset 0 1px 0 #fff,0 0 0 1px rgba(90,70,170,.08),0 18px 34px -26px rgba(60,40,140,.5)!important}
#nb#nb#nb.nb-light .nb-kpi-ico{background:rgba(125,74,224,.12);color:#5b30b8}
#nb#nb#nb.nb-light .nb-kpi.is-ok .nb-kpi-ico{background:rgba(24,146,76,.12);color:#11683a}
#nb#nb#nb.nb-light .nb-kpi.is-warn .nb-kpi-ico{background:rgba(180,110,0,.14);color:#7a4600}
#nb#nb#nb.nb-light .nb-kpi:is(.is-bad,.is-alert) .nb-kpi-ico{background:rgba(200,30,70,.12);color:#a3123a}
#nb#nb#nb.nb-light .nb-kpi:is(.is-bad,.is-alert) .nb-kpi-value{color:#a3123a!important}
#nb#nb#nb.nb-light :is(.nb-dash-block,.rep-params){background:rgba(255,255,255,.5)!important;border-color:rgba(90,70,170,.12)!important}
#nb#nb#nb.nb-light :is(.nb-dash-pick,.rep-pick){background:rgba(255,255,255,.65)!important;border-color:rgba(90,70,170,.16)!important}
#nb#nb#nb.nb-light :is(.nb-dash-pick.is-on,.rep-pick.is-on){background:rgba(255,181,71,.18)!important;border-color:rgba(180,110,0,.45)!important}
#nb#nb#nb.nb-light .rep-pick i{border-color:rgba(60,45,130,.35)}
#nb#nb#nb.nb-light .rep-chip{background:rgba(255,255,255,.75)}
#nb#nb#nb.nb-light .rep-chip > b{color:#fff!important}
#nb#nb#nb.nb-light .rep-table thead th,#nb#nb#nb.nb-light .rep-table tfoot :is(th,td){background:rgba(90,70,170,.07)!important}
#nb#nb#nb.nb-light .rep-table tbody tr:hover td{background:rgba(255,255,255,.7)!important}
#nb#nb#nb.nb-light .rep-table td.is-bad{color:#a3123a!important}
#nb#nb#nb.nb-light .rep-avail{background:rgba(24,146,76,.12);border-color:rgba(24,146,76,.35);color:#0b5e2e!important}
#nb#nb#nb.nb-light .rep-error{color:#a3123a!important}
#nb#nb#nb.nb-light .nb-heat-table.is-days tbody td.nb-heat-wind{background:rgba(255,255,255,.62)!important}
#nb#nb#nb.nb-light .diag-badge{background:rgba(125,74,224,.14)!important;color:#5b30b8!important}
#nb#nb#nb.nb-light .diag-alarm{background:rgba(200,30,70,.05)!important;border-color:rgba(200,30,70,.25)!important}
#nb#nb#nb.nb-light .an-group-table thead th{background:rgba(246,243,255,.98)!important}
#nb#nb#nb.nb-light .an-group-table tfoot :is(th,td){background:rgba(240,236,252,.98)!important}
#nb#nb#nb.nb-light .nb-dl-menu{background:linear-gradient(160deg,rgba(252,251,255,.99),rgba(246,243,255,.99))!important;border-color:rgba(90,70,170,.2)!important;box-shadow:0 24px 50px -20px rgba(60,40,140,.35)!important}
#nb#nb#nb.nb-light .nb-dcfg-summary{color:#5b30b8!important}
#nb#nb#nb.nb-light .ps-term{background:rgba(255,255,255,.72)!important}
#nb#nb#nb.nb-light .ps-ex-tx code{color:#0b5f9e!important}
#nb#nb#nb.nb-light .ps-ex-err span{color:#a3123a!important}
#nb#nb#nb.nb-light .ps-tok{background:rgba(40,110,220,.1)!important;border-color:rgba(40,110,220,.45)!important;color:#0b4f96!important}
#nb#nb#nb.nb-light .ps-tok.is-picked{background:rgba(24,146,76,.18)!important;border-color:#18924c!important;color:#0b5e2e!important}
#nb#nb#nb.nb-light .ps-pick-bar{background:rgba(24,146,76,.08)!important;border-color:rgba(24,146,76,.35)!important}
#nb#nb#nb.nb-light .ps-mb-cand.is-on{border-color:#18924c!important;background:rgba(24,146,76,.1)!important}
#nb#nb#nb.nb-light .ps-role{background:rgba(40,110,220,.12)!important;color:#0b4f96!important}
#nb#nb#nb.nb-light .ps-role.is-diag{background:rgba(125,74,224,.14)!important;color:#5b30b8!important}
#nb#nb#nb.nb-light .ps-iface-btn.is-on{background:rgba(125,74,224,.1)!important}
#nb#nb#nb.nb-light .switch.on span{background:#f0a020!important;border-color:transparent!important}
#nb#nb#nb.nb-light .switch.on span:after{background:#fff!important}
#nb#nb#nb.nb-light .rose3d-ctl{background:rgba(255,255,255,.75)!important}
#nb#nb#nb.nb-light .rose3d-tip{background:rgba(255,255,255,.96)!important;color:#241c4a!important}
#nb#nb#nb.nb-light .rose3d-tip span{color:#3b3160!important}
#nb#nb#nb.nb-light :is(.nb-rose3d,.an-rose3d){background:radial-gradient(ellipse at 50% 60%,rgba(120,100,255,.1),transparent 70%)!important}
#nb#nb#nb.nb-light .nb-band-table table.pivot-timebase-table thead th:nth-child(n){background:rgba(90,70,170,.07)!important}
#nb#nb#nb.nb-light .nb-band-table table.pivot-timebase-table tbody tr:nth-child(n) td{background:transparent!important}
#nb#nb#nb.nb-light .nb-band-table table.pivot-timebase-table tbody tr:hover td{background:rgba(255,255,255,.7)!important}
#nb#nb#nb.nb-light header.topbar,#nb#nb#nb.nb-light .ref-topbar{background:linear-gradient(155deg,rgba(255,255,255,.8),rgba(255,255,255,.6))!important;border-color:rgba(255,255,255,.95)!important;box-shadow:inset 0 1px 0 #fff,0 0 0 1px rgba(90,70,170,.08),0 18px 40px -26px rgba(60,40,140,.45)!important}
#nb#nb#nb.nb-light .nb-tab[aria-current="page"],#nb#nb#nb.nb-light .nav-item.active{background:var(--nb-accent)!important;color:var(--nb-accent-ink)!important}
#nb#nb#nb.nb-light .direction-ring{background:radial-gradient(circle,rgba(255,255,255,.9) 0 58%,color-mix(in srgb,var(--series,#ffb547) 20%,transparent) 100%)!important;border-color:rgba(90,70,170,.2)!important}
#nb#nb#nb.nb-light .direction-ring :is(span,b){color:var(--nb-ink-2)!important}
#nb#nb#nb.nb-light.nb-lite header.topbar{background:linear-gradient(155deg,rgba(255,255,255,.96),rgba(250,248,255,.96))!important}
#nb#nb#nb.nb-light ::selection{background:rgba(255,181,71,.4);color:var(--nb-ink)}
#nb#nb#nb.nb-light .nb-acq-btn{color:#11683a!important;border-color:rgba(24,146,76,.35)!important;background:rgba(24,146,76,.1)!important}
#nb#nb#nb.nb-light .nb-acq-btn.is-running{color:#a3123a!important;border-color:rgba(200,30,70,.35)!important;background:rgba(200,30,70,.08)!important}
#nb#nb#nb.nb-light .nb-compass .ring{fill:rgba(255,255,255,.7)}
/* contrast (WCAG AA 4.5:1) on light glass */
#nb#nb#nb.nb-light .eyebrow:not([style*="color"]){color:#8a5200!important}
#nb#nb#nb.nb-light :is(.status-chip.good,.runtime-pill.good,.runtime-pill.good span){color:#0b5e2e!important}
#nb#nb#nb.nb-light :is(.status-chip.good,.runtime-pill.good){background:rgba(24,146,76,.14)!important;border-color:rgba(24,146,76,.35)!important}
#nb#nb#nb.nb-light :is(.status-chip.warn,.runtime-pill.warn,.runtime-pill.neutral,.runtime-pill.warn span,.runtime-pill.neutral span){color:#7a4600!important}
#nb#nb#nb.nb-light :is(.status-chip.bad,.runtime-pill.bad,.runtime-pill.bad span){color:#9c1233!important}
#nb#nb#nb.nb-light :is(.tabular-range-note,.tabular-range-note *,.database-config-note,.database-config-note *,.historian-independence-note,.historian-independence-note *,.notice,.notice *,.info-note,.info-note *,.hint-box,.hint-box *):not(.button):not(button){color:var(--nb-ink-2)!important}
#nb#nb#nb.nb-light :is(.mini-chip,.tabular-stat span,.tabular-footer span,.dashboard-mini-range,.ref-metric-foot,.nb-card-note,.nb-hero-range){color:var(--nb-muted)!important}
#nb#nb#nb.nb-light .mini-chip{background:rgba(255,255,255,.7)!important}
#nb#nb#nb.nb-light .chr-canvas{--chr-ink:#3a3466;--chr-grid:rgba(90,70,170,.14);--chr-line:#0284c7;--chr-over:rgba(60,50,120,.35);background:rgba(255,255,255,.7)}
#nb#nb#nb.nb-light .chr-card{background:var(--nb-glass);border-color:var(--nb-edge)}
#nb#nb#nb.nb-light .chr-table th{background:#f4f1fd}
#nb#nb#nb.nb-light .chr-kpi span,#nb#nb#nb.nb-light .chr-run span,#nb#nb#nb.nb-light .chr-run small{color:#443e70}
#nb#nb#nb.nb-light .chr-kpi.ok b{color:#047857}#nb#nb#nb.nb-light .chr-kpi.warn b{color:#92400e}#nb#nb#nb.nb-light .chr-kpi.bad b{color:#b91c1c}


/* ======================================================================
   LEGACY MIGRATION SOURCE: src/daq/webui/shared/clean.css
   Consolidated into the single universal Project 00 stylesheet.
   ====================================================================== */
/* AESST DAS clean-up layer (loaded last).
   Keeps the colours and layout of the workspace but removes decorative effects: the colour-blob
   background and film grain, glowing tiles, tinted modal haze, the animated sign-in aurora and
   the small kicker labels above page titles. IDs are repeated to outrank the theme layers. */

/* canvas: plain gradient instead of colour blobs + noise */
#nb#nb#nb#nb body::before{background:linear-gradient(180deg,#15112b 0%,#0d0a1f 55%,#0b0918 100%)!important;inset:0!important}
#nb#nb#nb#nb body::after{display:none!important}
#nb#nb#nb#nb.nb-light body::before{background:linear-gradient(180deg,#f7f6fb 0%,#efedf6 100%)!important}

/* live tiles: flat surface, thin accent bar in the parameter colour */
#nb#nb#nb#nb :is(.ref-metric-tile,.live-card-reference,.live-card,.dashboard-direction-card,.dashboard-mini-windrose,.met-summary-card){
  background:var(--nb-glass-inner)!important;
  box-shadow:inset 3px 0 0 color-mix(in srgb,var(--series,var(--nb-accent,#b98cff)) 85%,transparent),0 10px 24px -22px rgba(0,0,0,.9)!important}
#nb#nb#nb#nb.nb-light :is(.ref-metric-tile,.live-card-reference,.live-card,.dashboard-direction-card,.dashboard-mini-windrose,.met-summary-card){
  background:#ffffff!important;
  box-shadow:inset 3px 0 0 color-mix(in srgb,var(--series,#7d4ae0) 85%,transparent),0 8px 20px -18px rgba(30,20,60,.35)!important}
#nb#nb#nb#nb :is(.ref-metric-tile,.live-card-reference,.dashboard-direction-card):hover{transform:none!important}

/* dialogs: neutral dim instead of a purple haze */
#nb#nb#nb#nb .modal-backdrop{background:rgba(6,4,16,.66)!important}
#nb#nb#nb#nb.nb-light .modal-backdrop{background:rgba(20,16,40,.32)!important}

/* sign-in and licence screens: no floating colour blobs */
.lg-aurora{display:none!important}
#nb#nb#nb#nb #lic-screen{background:rgba(9,7,20,.94)!important}
#nb#nb#nb#nb.nb-light #lic-screen{background:rgba(247,246,251,.96)!important}

/* page headers: title and one line of context, no kicker label */
#nb#nb#nb#nb .page-head .eyebrow{display:none!important}

/* development copy marker: small, bottom-left, never over content */
#dev-banner{left:12px!important;bottom:10px!important;transform:none!important;opacity:.92}

/* configuration pages: page title first, then the section tabs */
#nb#nb#nb#nb .configuration-page{display:flex!important;flex-direction:column}
#nb#nb#nb#nb .configuration-page>.page-head{order:-2}
#nb#nb#nb#nb .configuration-page>.configuration-nav-stack{order:-1}

/* activation screen: one column, brand as a header line; the activation code wraps, the copy button keeps its size */
#nb#nb#nb#nb #lic-screen .lic-card{grid-template-columns:1fr!important;width:min(640px,100%)!important;min-height:0!important}
#nb#nb#nb#nb #lic-screen .lic-visual{min-height:0!important;border-right:0!important;border-bottom:1px solid rgba(110,150,255,.18);padding:18px 30px}
#nb#nb#nb#nb #lic-screen .lic-brand{position:static!important;flex-direction:row!important;align-items:baseline;gap:12px!important}
#nb#nb#nb#nb #lic-screen .lic-brand b{font-size:19px!important}
#nb#nb#nb#nb #lic-screen .lic-mid-row{align-items:flex-start}
#nb#nb#nb#nb #lic-screen .lic-mid code{flex:1 1 auto;min-width:0;font-size:15px!important;line-height:1.55}
#nb#nb#nb#nb #lic-screen .lic-mid-row .button{flex:0 0 auto;white-space:nowrap}


/* ======================================================================
   LEGACY MIGRATION SOURCE: src/daq/webui/unified/screenshot-fixes.css
   Consolidated into the single universal Project 00 stylesheet.
   ====================================================================== */
/* Screenshot fixes: targeted configuration controls, loaded after shared themes. */

/* Keep database actions compact and aligned within the content card. */
#nb#nb#nb .database-configuration-page .database-config-actions{
  grid-template-columns:repeat(3,minmax(150px,190px))!important;
  justify-content:start!important;
  gap:10px!important;
}
#nb#nb#nb .database-configuration-page .database-config-actions>.button{
  width:100%!important;
  min-width:0!important;
  min-height:40px!important;
  padding:8px 12px!important;
  white-space:nowrap!important;
}
@media(max-width:760px){
  #nb#nb#nb .database-configuration-page .database-config-actions{grid-template-columns:repeat(2,minmax(0,190px))!important}
}
@media(max-width:480px){
  #nb#nb#nb .database-configuration-page .database-config-actions{grid-template-columns:minmax(0,1fr)!important}
}

/* The device editor uses a light surface, so inactive tabs need dark text even
   when the shared dark-theme button rules are present. */
#nb#nb#nb #modal-root .staged-device-modal .instrument-tabs button[role="tab"]{
  color:#42536a!important;
  background:#f3f6fa!important;
  border:1px solid #cbd5e1!important;
  min-height:38px!important;
  opacity:1!important;
}
#nb#nb#nb #modal-root .staged-device-modal .instrument-tabs button[role="tab"][aria-selected="true"]{
  color:#fff!important;
  background:#2463d3!important;
  border-color:#2463d3!important;
}

/* Protocol Studio category tabs sit on the dark workspace surface. */
#nb#nb#nb .ps-v2 .ps-category-tabs button[data-ps-category]{
  color:var(--nb-ink-2,#d8d2f2)!important;
  background:rgba(255,255,255,.07)!important;
  border:1px solid rgba(255,255,255,.16)!important;
  opacity:1!important;
}
#nb#nb#nb .ps-v2 .ps-category-tabs button[data-ps-category][aria-selected="true"]{
  color:var(--nb-accent-ink,#21183d)!important;
  background:var(--nb-accent,#ffbd59)!important;
  border-color:transparent!important;
}

/* Give each Digital I/O output a readable full-width card and a usable
   three-column editor, with controls grouped below the fields. */
#nb#nb#nb #modal-root .staged-device-modal [data-io-index]{
  display:block!important;
  width:100%!important;
  min-width:0!important;
  padding:14px!important;
  margin:10px 0!important;
}
#nb#nb#nb #modal-root .staged-device-modal [data-io-index]>.form-grid{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(145px,1fr))!important;
  gap:10px!important;
}
#nb#nb#nb #modal-root .staged-device-modal [data-io-index] .field,
#nb#nb#nb #modal-root .staged-device-modal [data-io-index] .input,
#nb#nb#nb #modal-root .staged-device-modal [data-io-index] .select{min-width:0!important;width:100%!important}
#nb#nb#nb #modal-root .staged-device-modal [data-io-index]>.config-row-actions{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:8px!important;
  margin-top:12px!important;
}
#nb#nb#nb #modal-root .staged-device-modal [data-io-index]>.config-row-actions>.button{
  flex:0 0 auto!important;
  min-width:74px!important;
}
@media(max-width:760px){
  #nb#nb#nb #modal-root .staged-device-modal [data-io-index]>.form-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:520px){
  #nb#nb#nb #modal-root .staged-device-modal [data-io-index]>.form-grid{grid-template-columns:minmax(0,1fr)!important}
}

#nb#nb#nb .ps-setup-guide{display:flex;flex-direction:column;gap:6px;padding:12px 16px;margin:14px 0;border:1px solid rgba(142,127,215,.3);border-radius:12px;color:var(--text,#ede8ff);background:rgba(113,89,207,.08);font-size:13px;line-height:1.5}
#nb#nb#nb .ps-v2 .ps-active-profile .empty-state{min-height:100px!important;padding:20px!important}

#nb#nb#nb .database-configuration-page>.database-configuration-card{width:100%!important;max-width:1200px!important;box-sizing:border-box;margin-right:auto!important}
#nb#nb#nb .database-configuration-card .database-config-summary{display:grid!important;grid-template-columns:minmax(150px,1fr) minmax(0,2fr) minmax(150px,1fr)!important;gap:12px!important}
#nb#nb#nb .database-configuration-card .database-config-summary>div{min-width:0!important}
#nb#nb#nb .database-configuration-card .database-config-summary strong,#nb#nb#nb .database-configuration-card .database-config-summary span{overflow-wrap:anywhere}
@media(max-width:680px){#nb#nb#nb .database-configuration-card .database-config-summary{grid-template-columns:minmax(0,1fr)!important}}

/* UI16.1 database alignment: page heading and database card share one centered full-width rail. */
#nb#nb#nb .database-configuration-page{max-width:1540px!important;margin-inline:auto!important}
#nb#nb#nb .database-configuration-page>.page-head{width:100%!important;max-width:none!important;margin-left:auto!important;margin-right:auto!important}
#nb#nb#nb .database-configuration-page>.database-configuration-card{width:100%!important;max-width:none!important;margin-left:auto!important;margin-right:auto!important;min-height:360px!important;padding:22px!important}
#nb#nb#nb .database-configuration-card .database-config-summary{min-height:86px!important;align-items:stretch!important}

/* UI16.1 generalized Digital I/O editor. */
#nb#nb#nb .dio-intro-card{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 16px;margin:0 0 14px;border:1px solid rgba(148,163,184,.22);border-radius:14px;background:rgba(255,255,255,.035)}
#nb#nb#nb .dio-intro-card>div{display:flex;flex-direction:column;gap:4px;min-width:0}
#nb#nb#nb .dio-intro-card strong{font-size:12px}#nb#nb#nb .dio-intro-card small{font-size:9px;color:var(--text-muted)}
#nb#nb#nb .dio-channel-list{display:grid;gap:12px}
#nb#nb#nb .dio-channel-card{padding:15px;border:1px solid rgba(148,163,184,.24);border-radius:15px;background:linear-gradient(180deg,rgba(255,255,255,.055),rgba(255,255,255,.025));box-shadow:inset 0 1px 0 rgba(255,255,255,.04)}
#nb#nb#nb .dio-channel-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px}
#nb#nb#nb .dio-channel-head>div{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:2px 9px;min-width:0}
#nb#nb#nb .dio-channel-head strong{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#nb#nb#nb .dio-channel-head small{grid-column:2;font-size:8.5px;color:var(--text-muted)}
#nb#nb#nb .dio-index{grid-row:1/3;width:30px;height:30px;border-radius:10px;display:grid;place-items:center;background:rgba(59,130,246,.16);border:1px solid rgba(96,165,250,.3);font-size:10px;font-weight:800}
#nb#nb#nb .dio-existing-communication{display:flex;align-items:center;gap:10px;padding:11px 12px;margin-bottom:12px;border:1px solid rgba(148,163,184,.2);border-radius:12px;background:rgba(255,255,255,.025)}
#nb#nb#nb .dio-existing-communication>span{display:flex;flex-direction:column;gap:3px}#nb#nb#nb .dio-existing-communication strong{font-size:10px}#nb#nb#nb .dio-existing-communication small{font-size:8.5px;color:var(--text-muted)}
#nb#nb#nb .dio-subhead{display:flex;justify-content:space-between;gap:12px;align-items:end;padding:10px 0 7px;margin-top:4px;border-top:1px solid rgba(148,163,184,.14)}
#nb#nb#nb .dio-subhead strong{font-size:10px}#nb#nb#nb .dio-subhead span{font-size:8px;color:var(--text-muted);text-align:right}
#nb#nb#nb .dio-independent-communication{padding:12px;margin-bottom:10px;border:1px solid rgba(59,130,246,.2);border-radius:12px;background:rgba(59,130,246,.045)}
#nb#nb#nb .dio-independent-communication[hidden]{display:none!important}
@media(max-width:760px){#nb#nb#nb .dio-intro-card,#nb#nb#nb .dio-channel-head,#nb#nb#nb .dio-subhead{align-items:stretch;flex-direction:column}#nb#nb#nb .dio-subhead span{text-align:left}}

/* UI16 Digital I/O & Automation */
.dio-live-state{display:inline-flex;align-items:center;justify-content:center;min-width:62px;padding:5px 9px;border-radius:999px;font-size:11px;font-weight:800;letter-spacing:.04em;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.05);color:var(--muted,#a9a5c7)}
.dio-live-state.on{color:#8ff2c8;border-color:rgba(55,218,159,.4);background:rgba(55,218,159,.12);box-shadow:0 0 18px rgba(55,218,159,.1)}
.dio-live-state.off{color:#beb9d6}
.dio-automation-panel{margin-top:14px;background:linear-gradient(145deg,rgba(82,67,136,.2),rgba(20,17,44,.36));border:1px solid rgba(139,124,208,.25)}
.dio-automation-note{display:flex;gap:10px;align-items:flex-start;margin:10px 0 14px;padding:10px 12px;border-radius:12px;background:rgba(255,179,71,.07);border:1px solid rgba(255,179,71,.18)}
.dio-automation-note strong{color:#ffbd57;white-space:nowrap}.dio-automation-note span{color:var(--muted,#b6b0d0);font-size:12px;line-height:1.45}
.dio-automation-row{align-items:center}.dio-channel-head{gap:10px;align-items:center}

/* UI16.2 Auto Check guided closed-loop workflow */
.autocheck-flow{display:flex;align-items:center;gap:.45rem;flex-wrap:wrap;margin:.75rem 0 1rem;padding:.7rem .8rem;border:1px solid rgba(112,137,205,.32);border-radius:14px;background:linear-gradient(135deg,rgba(51,67,122,.24),rgba(22,28,61,.38));font-size:.78rem;color:var(--muted,#b7b9d3)}
.autocheck-flow span{padding:.32rem .52rem;border-radius:999px;background:rgba(126,139,205,.12);border:1px solid rgba(126,139,205,.18);white-space:nowrap}.autocheck-flow b{opacity:.55}
.autocheck-feedback{margin:.75rem 0;padding:.8rem;border:1px solid rgba(80,201,174,.24);border-radius:14px;background:rgba(21,44,53,.18)}
.autocheck-feedback legend{padding:0 .4rem;font-weight:700;color:#9ee7d7}.autocheck-feedback>small{display:block;margin:0 0 .65rem;color:var(--muted,#a8abc2);line-height:1.45}
@media (max-width:900px){.autocheck-flow b{display:none}.autocheck-flow span{flex:1 1 30%;text-align:center}}

/* Protocol Studio: command acknowledgements are writable actions, not numeric parsers. */
.ps-write-action-hint{
  margin:12px 0 0;
  padding:12px 14px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  border:1px solid color-mix(in srgb, var(--accent, #ffb13b) 42%, transparent);
  border-radius:12px;
  background:color-mix(in srgb, var(--panel-2, #241d43) 88%, transparent);
}
.ps-write-action-hint>div{display:grid;gap:4px;min-width:0}
.ps-write-action-hint strong{font-size:.9rem}
.ps-write-action-hint small{opacity:.78;line-height:1.35}
.ps-write-action-hint code{width:max-content;max-width:100%;overflow:auto;padding:4px 7px;border-radius:7px;background:rgba(0,0,0,.18)}
@media(max-width:760px){.ps-write-action-hint{align-items:stretch;flex-direction:column}.ps-write-action-hint .button{width:100%}}


/* Larger device editor: configuration/automation forms should use the workspace
   instead of being squeezed into a narrow centered dialog. */
#nb#nb#nb #modal-root .staged-device-modal{
  width:min(96vw,1580px)!important;
  max-width:min(96vw,1580px)!important;
  height:min(94vh,1040px)!important;
  max-height:94vh!important;
}
#nb#nb#nb #modal-root .staged-device-modal>.modal-body,
#nb#nb#nb #modal-root .staged-device-modal .instrument-wizard-body{
  min-height:0!important;
}
@media(max-width:900px){
  #nb#nb#nb #modal-root .staged-device-modal{width:98vw!important;max-width:98vw!important;height:96vh!important;max-height:96vh!important}
}

/* ========================================================================
   UI16.1 — client-wide consistency rail
   Purpose: enforce one alignment model, one spacing rhythm and one tab/page
   geometry across the workspace so configuration/report/analysis pages do not
   feel left-shifted / right-shifted / top-shifted between routes.
   ======================================================================== */
#nb#nb#nb .page{
  display:grid!important;
  align-content:start!important;
  justify-items:stretch!important;
  gap:16px!important;
  width:min(100%,1540px)!important;
  max-width:1540px!important;
  margin-inline:auto!important;
}
#nb#nb#nb .page>*{
  min-width:0!important;
}
#nb#nb#nb .page>:is(.page-head,.configuration-nav-stack,.live-tabs,.tabular-mode-tabs,.analysis-mode-tabs,.timebase-tab-strip,.instrument-list,.analysis-builder-layout,.analysis-workspace-grid,.service-layout,.summary-strip,.workspace-card-grid,.c3d-grid,.chr-grid,.rep-filters,.rep-grid,.stack,.grid,.panel){
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  justify-self:stretch!important;
}
#nb#nb#nb .page>.page-head{
  padding-inline:2px!important;
  align-items:flex-start!important;
  justify-content:space-between!important;
  gap:14px!important;
}
#nb#nb#nb .page>.page-head .page-actions{
  margin-left:auto!important;
  align-self:flex-start!important;
}

/* One settings/workspace rail for every configuration route. */
#nb#nb#nb .configuration-page,
#nb#nb#nb .analysis-page,
#nb#nb#nb .network-page{
  gap:16px!important;
}
#nb#nb#nb .configuration-page>.configuration-nav-stack,
#nb#nb#nb .configuration-page>.page-head,
#nb#nb#nb .configuration-page>.panel,
#nb#nb#nb .configuration-page>.stack,
#nb#nb#nb .configuration-page>.instrument-list,
#nb#nb#nb .configuration-page>.analysis-builder-layout,
#nb#nb#nb .configuration-page>.analysis-config-note,
#nb#nb#nb .analysis-page>.page-head,
#nb#nb#nb .analysis-page>.panel,
#nb#nb#nb .analysis-page>.analysis-mode-tabs,
#nb#nb#nb .analysis-page>.analysis-engine-ribbon,
#nb#nb#nb .analysis-page>.analysis-workspace-grid,
#nb#nb#nb .network-page>.page-head,
#nb#nb#nb .network-page>.panel{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
}

/* Unified top tab system: same width logic and same centering on every page. */
#nb#nb#nb .configuration-nav-stack{
  display:grid!important;
  gap:10px!important;
  align-content:start!important;
}
#nb#nb#nb :is(.configuration-nav-primary,.configuration-nav-secondary){
  width:100%!important;
}
#nb#nb#nb :is(.configuration-tabs,.station-entity-tabs,.tabular-mode-tabs,.analysis-mode-tabs,.live-tabs,.met-subtabs,.dashboard-tabs,.timebase-tab-strip){
  width:100%!important;
  max-width:none!important;
  display:flex!important;
  flex-wrap:wrap!important;
  align-items:stretch!important;
  gap:6px!important;
  margin:0!important;
  padding:4px!important;
  box-sizing:border-box!important;
}
#nb#nb#nb :is(.configuration-tabs,.station-entity-tabs,.tabular-mode-tabs,.analysis-mode-tabs,.live-tabs,.met-subtabs,.dashboard-tabs,.timebase-tab-strip)>button{
  flex:1 1 140px!important;
  min-height:40px!important;
  max-width:none!important;
  width:auto!important;
  padding:9px 12px!important;
  text-align:center!important;
  justify-content:center!important;
}
#nb#nb#nb .station-entity-tabs>button{flex-basis:170px!important}
#nb#nb#nb .timebase-tab-strip>button{flex-basis:120px!important}

/* Card geometry and internal spacing. */
#nb#nb#nb .configuration-page :is(.panel,.config-entity-panel,.card),
#nb#nb#nb .analysis-page :is(.panel,.card),
#nb#nb#nb .network-page :is(.panel,.card){
  border-radius:18px!important;
}
#nb#nb#nb .configuration-page :is(.panel,.config-entity-panel),
#nb#nb#nb .analysis-page>.panel,
#nb#nb#nb .network-page>.panel{
  padding:18px!important;
}
#nb#nb#nb .station-entity-stack{
  /* A flex-column stack must keep stretch alignment.  The child configuration
     panels are inline-size containers; combining inline-size containment with
     align-items:start makes their shrink-to-fit width collapse to ~0 and wraps
     every heading one character per line. */
  align-items:stretch!important;
  width:100%!important;
}
#nb#nb#nb .station-entity-stack>.config-entity-panel{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  align-self:stretch!important;
  box-sizing:border-box!important;
}
#nb#nb#nb .station-entity-stack>.config-entity-panel[hidden]{display:none!important}
#nb#nb#nb .analysis-builder-layout,
#nb#nb#nb .analysis-workspace-grid,
#nb#nb#nb .instrument-list,
#nb#nb#nb .service-layout,
#nb#nb#nb .summary-strip,
#nb#nb#nb .workspace-card-grid{
  align-items:start!important;
}

/* Consistent title/action alignment inside panels. */
#nb#nb#nb .section-title,
#nb#nb#nb .analysis-query-heading,
#nb#nb#nb .analysis-report-head,
#nb#nb#nb .recent-events-head,
#nb#nb#nb .chr-card-head,
#nb#nb#nb .rep-block-head{
  display:flex!important;
  align-items:flex-start!important;
  justify-content:space-between!important;
  gap:14px!important;
  flex-wrap:wrap!important;
}
#nb#nb#nb .section-title>.copy,
#nb#nb#nb .analysis-query-heading>div,
#nb#nb#nb .analysis-report-head>div,
#nb#nb#nb .recent-events-title,
#nb#nb#nb .chr-card-head>div:first-child,
#nb#nb#nb .rep-block-head>div:first-child{
  min-width:0!important;
  flex:1 1 320px!important;
}
#nb#nb#nb .config-row-actions,
#nb#nb#nb .mapping-row-actions,
#nb#nb#nb .wizard-saved-actions,
#nb#nb#nb .database-config-actions,
#nb#nb#nb .page-actions{
  display:flex!important;
  flex-wrap:wrap!important;
  align-items:center!important;
  gap:8px!important;
}
#nb#nb#nb .config-row-actions,
#nb#nb#nb .database-config-actions,
#nb#nb#nb .page-actions{
  justify-content:flex-end!important;
}
#nb#nb#nb .database-config-actions .button{
  flex:1 1 170px!important;
}
#nb#nb#nb .database-config-summary{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:12px!important;
  align-items:stretch!important;
}
#nb#nb#nb .database-config-summary>div{
  min-width:0!important;
}

/* Responsive collapse keeps the same symmetry instead of shifting content. */
@media(max-width:1180px){
  #nb#nb#nb .database-config-summary{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  #nb#nb#nb .database-config-summary>div:nth-child(2){grid-column:1/-1!important}
  #nb#nb#nb .analysis-workspace-grid,
  #nb#nb#nb .service-layout{grid-template-columns:1fr!important}
}
@media(max-width:820px){
  #nb#nb#nb .page{gap:14px!important}
  #nb#nb#nb .page>.page-head{flex-direction:column!important}
  #nb#nb#nb .page>.page-head .page-actions{margin-left:0!important;width:100%!important;justify-content:flex-start!important}
  #nb#nb#nb :is(.configuration-tabs,.station-entity-tabs,.tabular-mode-tabs,.analysis-mode-tabs,.live-tabs,.met-subtabs,.dashboard-tabs,.timebase-tab-strip)>button{flex:1 1 calc(50% - 6px)!important}
  #nb#nb#nb .database-config-actions .button{flex:1 1 calc(50% - 8px)!important}
}
@media(max-width:560px){
  #nb#nb#nb :is(.configuration-tabs,.station-entity-tabs,.tabular-mode-tabs,.analysis-mode-tabs,.live-tabs,.met-subtabs,.dashboard-tabs,.timebase-tab-strip)>button,
  #nb#nb#nb .database-config-actions .button{flex-basis:100%!important}
  #nb#nb#nb .database-config-summary{grid-template-columns:1fr!important}
  #nb#nb#nb .database-config-summary>div:nth-child(2){grid-column:auto!important}
}

/* UI16.2 Protocol Studio redesign — dense engineering workbench, responsive and field-use friendly. */
#nb#nb#nb .ps-v3{max-width:1540px!important;margin-inline:auto!important}
#nb#nb#nb .ps-v3>.page-head{margin-bottom:12px!important}
#nb#nb#nb .ps-studio-hero{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;padding:18px 20px;margin:0 0 12px;border:1px solid rgba(130,112,210,.34);border-radius:18px;background:linear-gradient(135deg,rgba(91,65,170,.18),rgba(19,17,42,.3));box-shadow:inset 0 1px 0 rgba(255,255,255,.05)}
#nb#nb#nb .ps-studio-hero h2{margin:3px 0 5px;font-size:22px;line-height:1.1}
#nb#nb#nb .ps-studio-hero p{max-width:820px;margin:0;color:var(--text-muted);font-size:10px;line-height:1.55}
#nb#nb#nb .ps-hero-stats{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
#nb#nb#nb .ps-hero-stats span{min-width:84px;padding:9px 12px;border:1px solid rgba(148,163,184,.2);border-radius:12px;background:rgba(255,255,255,.04);display:flex;flex-direction:column;gap:2px;font-size:8px;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted)}
#nb#nb#nb .ps-hero-stats b{font-size:13px;color:var(--text);letter-spacing:0;text-transform:none}
#nb#nb#nb .ps-hero-stats .is-live{border-color:rgba(52,211,153,.35);background:rgba(16,185,129,.08)}
#nb#nb#nb .ps-hero-stats .is-live b{color:#72e0b3}
#nb#nb#nb .ps-capability-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:0 0 12px}
#nb#nb#nb .ps-capability-strip>span{display:flex;align-items:center;gap:7px;min-width:0;padding:8px 11px;border:1px solid rgba(148,163,184,.17);border-radius:11px;background:rgba(255,255,255,.026);font-size:8.5px;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#nb#nb#nb .ps-capability-strip b{flex:0 0 auto;color:var(--text);font-size:8px;text-transform:uppercase;letter-spacing:.05em}
#nb#nb#nb .ps-v3 .panel{border-radius:17px!important}
#nb#nb#nb .ps-v3 .ps-device-selector{padding:16px 18px!important;margin-bottom:10px!important}
#nb#nb#nb .ps-v3 .ps-device-selector .section-title{margin-bottom:12px!important}
#nb#nb#nb .ps-v3 .ps-selector-grid-four{gap:10px!important}
#nb#nb#nb .ps-v3 .ps-progress-strip{margin:8px 0 12px!important;gap:7px!important}
#nb#nb#nb .ps-v3 .ps-progress-strip span{min-height:32px!important;border-radius:10px!important;font-size:8.5px!important;padding:6px 10px!important}
#nb#nb#nb .ps-workbench-grid{display:grid;grid-template-columns:minmax(0,2.25fr) minmax(250px,.75fr);gap:12px;align-items:start}
#nb#nb#nb .ps-workbench-main{display:grid;gap:12px;min-width:0}
#nb#nb#nb .ps-workbench-side{display:grid;gap:12px;position:sticky;top:10px;min-width:0}
#nb#nb#nb .ps-side-guide,#nb#nb#nb .ps-side-io{padding:16px!important}
#nb#nb#nb .ps-side-guide h3,#nb#nb#nb .ps-side-io h3{margin:4px 0 8px;font-size:13px}
#nb#nb#nb .ps-side-guide ol{margin:0;padding-left:18px;display:grid;gap:8px;color:var(--text-muted);font-size:9px;line-height:1.45}
#nb#nb#nb .ps-side-guide li::marker{color:var(--nb-accent,#ffbd59);font-weight:800}
#nb#nb#nb .ps-side-io p{margin:0;color:var(--text-muted);font-size:9px;line-height:1.55}
#nb#nb#nb .ps-v3 .ps-connect-panel,#nb#nb#nb .ps-v3 .ps-parser-panel{margin:0!important;padding:17px 18px!important}
#nb#nb#nb .ps-v3 .ps-connect-panel .form-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:10px!important}
#nb#nb#nb .ps-v3 .ps-parser-panel .form-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}
#nb#nb#nb .ps-v3 .ps-interface-tabs{margin:0 0 12px!important;width:max-content;max-width:100%}
#nb#nb#nb .ps-v3 .ps-interface-tabs button{min-width:110px!important}
#nb#nb#nb .ps-v3 .ps-console{min-height:150px!important;max-height:280px!important;margin-top:12px!important;border-radius:12px!important}
#nb#nb#nb .ps-v3 .ps-candidate-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important;margin-top:10px!important}
#nb#nb#nb .ps-v3 .ps-candidate-grid .button{text-align:left!important;justify-content:flex-start!important;white-space:normal!important;min-height:42px!important}
#nb#nb#nb .ps-v3 .ps-category-tabs{margin:14px 0 10px!important;display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:8px!important;background:transparent!important;padding:0!important}
#nb#nb#nb .ps-v3 .ps-category-tabs button{min-height:40px!important;border-radius:11px!important}
#nb#nb#nb .ps-v3 .ps-active-profile,#nb#nb#nb .ps-v3 .ps-calibration-panel,#nb#nb#nb .ps-v3 .ps-save-panel{padding:17px 18px!important;margin:0 0 12px!important}
#nb#nb#nb .ps-v3 .ps-draft-editor{margin-top:14px;padding:14px;border:1px solid rgba(96,165,250,.24);border-radius:13px;background:rgba(59,130,246,.045)}
#nb#nb#nb .ps-v3 .ps-draft-editor .form-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important}
#nb#nb#nb .ps-v3 .ps-profile-actions{justify-content:flex-start!important}
#nb#nb#nb #modal-root .profile-create-shortcut{margin-top:7px!important;width:100%!important;justify-content:center!important;font-size:9px!important}
@media(max-width:1120px){
  #nb#nb#nb .ps-workbench-grid{grid-template-columns:1fr}
  #nb#nb#nb .ps-workbench-side{position:static;grid-template-columns:repeat(2,minmax(0,1fr))}
  #nb#nb#nb .ps-capability-strip{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:780px){
  #nb#nb#nb .ps-studio-hero{align-items:stretch;flex-direction:column}
  #nb#nb#nb .ps-hero-stats{justify-content:flex-start}
  #nb#nb#nb .ps-v3 .ps-connect-panel .form-grid,#nb#nb#nb .ps-v3 .ps-parser-panel .form-grid,#nb#nb#nb .ps-v3 .ps-draft-editor .form-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  #nb#nb#nb .ps-workbench-side{grid-template-columns:1fr}
}
@media(max-width:540px){
  #nb#nb#nb .ps-capability-strip,#nb#nb#nb .ps-v3 .ps-category-tabs{grid-template-columns:1fr}
  #nb#nb#nb .ps-v3 .ps-connect-panel .form-grid,#nb#nb#nb .ps-v3 .ps-parser-panel .form-grid,#nb#nb#nb .ps-v3 .ps-draft-editor .form-grid,#nb#nb#nb .ps-v3 .ps-candidate-grid{grid-template-columns:1fr!important}
}


/* UI16.3 — Protocol Studio interaction + Add Device tab-state correction. */
#nb#nb#nb .ps-v3 .ps-interface-tabs{
  display:inline-flex!important;
  gap:6px!important;
  padding:4px!important;
  margin:0 0 14px!important;
  border:1px solid rgba(148,163,184,.20)!important;
  border-radius:12px!important;
  background:rgba(255,255,255,.025)!important;
}
#nb#nb#nb .ps-v3 .ps-interface-tabs button{
  min-width:112px!important;
  min-height:36px!important;
  padding:8px 14px!important;
  border:1px solid transparent!important;
  border-radius:9px!important;
  background:transparent!important;
  color:var(--text-muted)!important;
  box-shadow:none!important;
  transition:background .16s ease,border-color .16s ease,color .16s ease,box-shadow .16s ease!important;
}
#nb#nb#nb .ps-v3 .ps-interface-tabs button:hover{
  color:var(--text)!important;
  background:rgba(255,255,255,.045)!important;
}
#nb#nb#nb .ps-v3 .ps-interface-tabs button[aria-selected="true"]{
  color:#fff!important;
  border-color:rgba(96,165,250,.65)!important;
  background:linear-gradient(180deg,#347fe8,#286ed0)!important;
  box-shadow:0 7px 20px rgba(37,99,235,.18)!important;
}
#nb#nb#nb .ps-v3 .ps-connection-surface{
  border-top:1px solid rgba(148,163,184,.14);
  padding-top:13px;
}
#nb#nb#nb .ps-v3 .ps-connect-grid{
  grid-template-columns:minmax(220px,1.35fr) repeat(3,minmax(130px,1fr))!important;
  gap:11px!important;
  align-items:start!important;
}
#nb#nb#nb .ps-v3 .ps-connect-grid .field{
  min-width:0!important;
}
#nb#nb#nb .ps-v3 .ps-connect-grid .field>span{
  display:block;
  margin-bottom:6px;
  color:var(--text-muted);
  font-size:9px;
  font-weight:700;
}
#nb#nb#nb .ps-v3 .ps-connect-grid .ps-field-port,
#nb#nb#nb .ps-v3 .ps-connect-grid .ps-field-host{
  grid-column:span 2;
}
#nb#nb#nb .ps-v3 .ps-connect-actions{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:8px;
  padding-top:14px;
}
#nb#nb#nb .ps-v3 .ps-connect-actions .button{
  min-width:100px;
}
#nb#nb#nb #modal-root .staged-device-modal .instrument-tabs button:disabled{
  opacity:.42!important;
  cursor:not-allowed!important;
  filter:saturate(.55);
}
#nb#nb#nb #modal-root .staged-device-modal .instrument-tabs button:disabled:hover{
  background:rgba(255,255,255,.04)!important;
  color:var(--text-muted)!important;
}
#nb#nb#nb #modal-root .profile-create-shortcut{
  min-height:38px!important;
  border-style:dashed!important;
  border-color:rgba(96,165,250,.44)!important;
  background:rgba(59,130,246,.055)!important;
  color:#b9d5ff!important;
}
#nb#nb#nb #modal-root .profile-create-shortcut:hover{
  border-color:rgba(96,165,250,.72)!important;
  background:rgba(59,130,246,.11)!important;
  color:#fff!important;
}
@media(max-width:1050px){
  #nb#nb#nb .ps-v3 .ps-connect-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  #nb#nb#nb .ps-v3 .ps-connect-grid .ps-field-port,
  #nb#nb#nb .ps-v3 .ps-connect-grid .ps-field-host{grid-column:1/-1}
}
@media(max-width:620px){
  #nb#nb#nb .ps-v3 .ps-interface-tabs{display:grid!important;grid-template-columns:1fr 1fr;width:100%;max-width:none}
  #nb#nb#nb .ps-v3 .ps-interface-tabs button{min-width:0!important;width:100%}
  #nb#nb#nb .ps-v3 .ps-connect-grid{grid-template-columns:1fr!important}
  #nb#nb#nb .ps-v3 .ps-connect-grid .ps-field-port,
  #nb#nb#nb .ps-v3 .ps-connect-grid .ps-field-host{grid-column:auto}
  #nb#nb#nb .ps-v3 .ps-connect-actions{justify-content:stretch;flex-wrap:wrap}
  #nb#nb#nb .ps-v3 .ps-connect-actions .button{flex:1 1 140px}
}


/* UI16.4 — Protocol Studio visual/state hardening.
   Fixes white inactive tabs in Nebula, makes tab panels deterministic, and prevents
   a live session from visually carrying across a transport switch. */
#nb#nb#nb .ps-v3 [hidden]{display:none!important}
#nb#nb#nb .ps-v3 .ps-interface-tabs button[role="tab"]{
  appearance:none!important;
  background:rgba(255,255,255,.025)!important;
  border-color:rgba(148,163,184,.16)!important;
  color:#aaa3cb!important;
  opacity:1!important;
}
#nb#nb#nb .ps-v3 .ps-interface-tabs button[role="tab"]:hover{
  background:rgba(99,102,241,.10)!important;
  border-color:rgba(129,140,248,.38)!important;
  color:#f5f2ff!important;
}
#nb#nb#nb .ps-v3 .ps-interface-tabs button[role="tab"][aria-selected="true"]{
  background:linear-gradient(180deg,#347fe8,#286ed0)!important;
  border-color:#63a4ff!important;
  color:#fff!important;
}
#nb#nb#nb .ps-v3 .ps-category-tabs{
  border:0!important;
  overflow:visible!important;
}
#nb#nb#nb .ps-v3 .ps-category-tabs button[role="tab"]{
  appearance:none!important;
  width:100%!important;
  min-width:0!important;
  min-height:42px!important;
  padding:9px 14px!important;
  border:1px solid rgba(148,163,184,.18)!important;
  border-radius:11px!important;
  background:rgba(255,255,255,.032)!important;
  color:#aaa3cb!important;
  opacity:1!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.02)!important;
  transition:background .16s ease,border-color .16s ease,color .16s ease,transform .16s ease!important;
}
#nb#nb#nb .ps-v3 .ps-category-tabs button[role="tab"]:hover{
  transform:translateY(-1px);
  background:rgba(99,102,241,.10)!important;
  border-color:rgba(129,140,248,.38)!important;
  color:#f6f3ff!important;
}
#nb#nb#nb .ps-v3 .ps-category-tabs button[role="tab"][aria-selected="true"],
#nb#nb#nb .ps-v3 .ps-category-tabs button[role="tab"].is-active{
  background:linear-gradient(180deg,#347fe8,#286ed0)!important;
  border-color:#63a4ff!important;
  color:#fff!important;
  box-shadow:0 8px 20px rgba(37,99,235,.16)!important;
}
#nb#nb#nb .ps-v3 #ps-parameter-panel,
#nb#nb#nb .ps-v3 #ps-calibration-panel{min-width:0;width:100%}
#nb#nb#nb .ps-v3 .ps-workbench-main>.panel{width:100%;min-width:0}
#nb#nb#nb .ps-v3 .ps-connect-panel .field-help{margin-top:5px!important;line-height:1.35!important}
#nb#nb#nb .ps-v3 .ps-connect-actions{border-top:1px solid rgba(148,163,184,.10);margin-top:14px;padding-top:14px}
#nb#nb#nb .ps-v3 .ps-side-guide,
#nb#nb#nb .ps-v3 .ps-side-io{background:linear-gradient(180deg,rgba(40,31,78,.88),rgba(29,23,58,.88))!important}
@media(max-width:1120px){
  #nb#nb#nb .ps-v3 .ps-workbench-side{position:static!important}
}

/* UI16.6 — Protocol Studio decoder/readability hardening */
#nb#nb#nb .ps-v3 .ps-parser-panel{overflow:hidden!important}
#nb#nb#nb .ps-v3 .ps-read-grid{align-items:start!important}
#nb#nb#nb .ps-v3 .ps-read-grid .field small{display:block;margin-top:5px;line-height:1.4;color:var(--muted)!important}
#nb#nb#nb .ps-v3 .ps-parser-actions{display:flex!important;justify-content:flex-end!important;margin:10px 0 12px!important}
#nb#nb#nb .ps-v3 .ps-read-summary{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:8px!important;margin:10px 0 12px!important}
#nb#nb#nb .ps-v3 .ps-read-summary>span{min-width:0!important;padding:10px 12px!important;border:1px solid rgba(150,143,205,.24)!important;border-radius:11px!important;background:rgba(255,255,255,.035)!important;display:flex!important;flex-direction:column!important;gap:3px!important}
#nb#nb#nb .ps-v3 .ps-read-summary small{font-size:9px!important;font-weight:800!important;letter-spacing:.08em!important;color:#aaa3ce!important}
#nb#nb#nb .ps-v3 .ps-read-summary strong,#nb#nb#nb .ps-v3 .ps-read-summary code{font-size:12px!important;color:#f4f1ff!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
#nb#nb#nb .ps-v3 .ps-decode-heading{display:flex!important;align-items:flex-end!important;justify-content:space-between!important;gap:14px!important;margin:12px 0 8px!important;padding-top:10px!important;border-top:1px solid rgba(150,143,205,.18)!important}
#nb#nb#nb .ps-v3 .ps-decode-heading strong{font-size:12px!important;color:#f5f2ff!important}
#nb#nb#nb .ps-v3 .ps-decode-heading small{font-size:10px!important;line-height:1.4!important;color:#aaa3ce!important;text-align:right!important}
#nb#nb#nb .ps-v3 .ps-candidate-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:9px!important}
#nb#nb#nb .ps-v3 button.ps-candidate{appearance:none!important;-webkit-appearance:none!important;min-width:0!important;min-height:88px!important;padding:11px 12px!important;border:1px solid rgba(155,146,211,.28)!important;border-radius:12px!important;background:linear-gradient(180deg,rgba(255,255,255,.055),rgba(255,255,255,.025))!important;color:#f1edff!important;text-align:left!important;display:flex!important;flex-direction:column!important;align-items:stretch!important;justify-content:flex-start!important;gap:6px!important;cursor:pointer!important;box-shadow:none!important;transition:border-color .15s ease,background .15s ease,transform .15s ease!important}
#nb#nb#nb .ps-v3 button.ps-candidate:hover{border-color:rgba(87,151,255,.72)!important;background:rgba(49,112,218,.13)!important;transform:translateY(-1px)!important}
#nb#nb#nb .ps-v3 button.ps-candidate.is-selected,#nb#nb#nb .ps-v3 button.ps-candidate[aria-pressed="true"]{border-color:#4b92ff!important;background:linear-gradient(180deg,rgba(43,120,232,.30),rgba(43,120,232,.16))!important;box-shadow:0 0 0 1px rgba(75,146,255,.18) inset!important}
#nb#nb#nb .ps-v3 .ps-candidate-head{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:8px!important}
#nb#nb#nb .ps-v3 .ps-candidate-head strong{text-transform:uppercase!important;font-size:10px!important;letter-spacing:.055em!important;color:#dcd7ff!important}
#nb#nb#nb .ps-v3 .ps-candidate-head em{font-style:normal!important;font-size:9px!important;font-weight:800!important;padding:2px 6px!important;border-radius:999px!important;background:rgba(255,255,255,.08)!important;color:#aaa3ce!important}
#nb#nb#nb .ps-v3 .ps-candidate-value{font-size:19px!important;line-height:1.15!important;font-weight:800!important;color:#fff!important;overflow-wrap:anywhere!important}
#nb#nb#nb .ps-v3 .ps-candidate small{font-size:9px!important;line-height:1.35!important;color:#aaa3ce!important}
#nb#nb#nb .ps-v3 .ps-selection-summary{display:grid!important;grid-template-columns:auto 1fr!important;gap:3px 10px!important;align-items:center!important;margin:12px 0!important;padding:10px 12px!important;border:1px solid rgba(75,146,255,.38)!important;border-radius:11px!important;background:rgba(43,120,232,.12)!important}
#nb#nb#nb .ps-v3 .ps-selection-summary strong{font-size:16px!important;color:#fff!important}
#nb#nb#nb .ps-v3 .ps-selection-summary small{grid-column:1/-1!important;color:#aaa3ce!important}
@media(max-width:1180px){#nb#nb#nb .ps-v3 .ps-candidate-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}#nb#nb#nb .ps-v3 .ps-read-summary{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:700px){#nb#nb#nb .ps-v3 .ps-candidate-grid,#nb#nb#nb .ps-v3 .ps-read-summary{grid-template-columns:1fr!important}#nb#nb#nb .ps-v3 .ps-decode-heading{align-items:flex-start!important;flex-direction:column!important}#nb#nb#nb .ps-v3 .ps-decode-heading small{text-align:left!important}}
/* UI16.13 - Modbus source-offset clarity and OEM verified hints */
#nb#nb#nb .ps-v3 .ps-oem-hint{margin:10px 0 2px;padding:10px 12px;border:1px solid rgba(255,184,77,.32);border-radius:10px;background:rgba(255,184,77,.07);display:flex;gap:10px;align-items:flex-start;flex-wrap:wrap}
#nb#nb#nb .ps-v3 .ps-oem-hint strong{color:#ffbe55;font-size:11px;letter-spacing:.02em}
#nb#nb#nb .ps-v3 .ps-oem-hint span{color:#c9c3e5;font-size:10px;line-height:1.45;flex:1 1 480px}
#nb#nb#nb .ps-v3 .ps-oem-hint.is-good{border-color:rgba(83,210,148,.34);background:rgba(83,210,148,.07)}
#nb#nb#nb .ps-v3 .ps-oem-hint.is-good strong{color:#76e4ad}
#nb#nb#nb .ps-v3 button.ps-candidate.is-oem-verified{border-color:rgba(83,210,148,.58)!important;background:linear-gradient(180deg,rgba(83,210,148,.12),rgba(83,210,148,.045))!important}
#nb#nb#nb .ps-v3 button.ps-candidate.is-oem-verified .ps-candidate-head em{background:rgba(83,210,148,.16)!important;color:#9cf1c4!important}

/* ========================================================================
   UI20.2 — VISUAL BASELINE RESTORE / GLOBAL CONFIGURATION INTEGRITY
   Reference: approved pre-regression Add/Edit Device layout (2026-10-02).
   Goal: one visual boundary per semantic section, no nested outline noise,
   consistent spacing/typography across Instrument Configuration and Central DIO.
   ======================================================================== */

/* Shared modal surface: one outer boundary only. */
#nb#nb#nb #modal-root .staged-device-modal,
#nb#nb#nb #modal-root .central-dio-editor-modal{
  border:1px solid var(--adq-ui-editor-border-outer,rgba(148,136,210,.28))!important;
  box-shadow:0 22px 58px rgba(4,3,18,.38)!important;
  background:var(--adq-ui-editor-surface,#1d1740)!important;
}

/* Instrument Configuration — restore the approved compact hierarchy. */
#nb#nb#nb #modal-root .staged-device-modal>.modal-head{
  background:var(--adq-ui-editor-header,#241b50)!important;
  border:0!important;
  box-shadow:none!important;
  padding:10px 14px!important;
}
#nb#nb#nb #modal-root .staged-device-modal>.wizard-progress{
  margin:0 12px 8px!important;
  padding:9px 14px!important;
  border:0!important;
  border-radius:0!important;
  background:var(--adq-ui-editor-progress,rgba(117,99,174,.16))!important;
  box-shadow:none!important;
}
#nb#nb#nb #modal-root .staged-device-modal>.wizard-scroll-body{
  padding:0 10px 10px!important;
  background:var(--adq-ui-editor-body,#1b153c)!important;
}
#nb#nb#nb #modal-root .staged-device-modal>.wizard-scroll-body>.wizard-step{
  margin:0 0 7px!important;
  padding:10px 12px!important;
  border:1px solid var(--adq-ui-editor-border,rgba(151,140,204,.16))!important;
  border-radius:13px!important;
  background:var(--adq-ui-editor-section,rgba(255,255,255,.025))!important;
  box-shadow:none!important;
}
#nb#nb#nb #modal-root .staged-device-modal>.wizard-scroll-body>.wizard-step.active{
  border-color:var(--adq-ui-editor-border-active,rgba(151,140,204,.22))!important;
  box-shadow:none!important;
}
/* Saved rows are content rows, not a second bright card outline. */
#nb#nb#nb #modal-root .staged-device-modal .wizard-saved-row,
#nb#nb#nb #modal-root .staged-device-modal .saved-config-row{
  border:1px solid var(--adq-ui-editor-border-row,rgba(151,140,204,.13))!important;
  background:var(--adq-ui-editor-row,rgba(255,255,255,.028))!important;
  box-shadow:none!important;
}
#nb#nb#nb #modal-root .staged-device-modal .instrument-form-title{
  padding:0!important;
  margin:0 0 7px!important;
  border:0!important;
}
#nb#nb#nb #modal-root .staged-device-modal .instrument-form-title strong{color:var(--adq-ui-editor-text,#f0edff)!important}
#nb#nb#nb #modal-root .staged-device-modal .instrument-form-title span{color:var(--adq-ui-editor-muted,#aaa3c6)!important}

/* Tabs: no extra divider/outline rail. Individual tabs carry the interaction. */
#nb#nb#nb #modal-root .staged-device-modal .instrument-tabs{
  display:flex!important;
  gap:7px!important;
  flex-wrap:wrap!important;
  margin:2px 0 8px!important;
  padding:2px 0 7px!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
#nb#nb#nb #modal-root .staged-device-modal .instrument-tabs button[role="tab"]{
  min-height:34px!important;
  padding:7px 11px!important;
  border:1px solid var(--adq-ui-editor-border,rgba(151,140,204,.16))!important;
  border-radius:9px!important;
  background:#f2f4f7!important;
  color:#40506a!important;
  box-shadow:none!important;
}
#nb#nb#nb #modal-root .staged-device-modal .instrument-tabs button[role="tab"][aria-selected="true"]{
  background:#2771dc!important;
  border-color:#2771dc!important;
  color:#fff!important;
  box-shadow:none!important;
}

/* Footer gets one quiet separator, no inset/double line. */
#nb#nb#nb #modal-root .staged-device-modal>.modal-actions{
  min-height:52px!important;
  margin:0!important;
  padding:8px 13px!important;
  border:0!important;
  border-top:1px solid var(--adq-ui-editor-footer-border,rgba(151,140,204,.11))!important;
  background:var(--adq-ui-editor-body,#1b153c)!important;
  box-shadow:none!important;
}

/* Remove incidental separator noise within the device editor. */
#nb#nb#nb #modal-root .staged-device-modal .divider{background:var(--adq-ui-editor-divider,rgba(151,140,204,.10))!important}
#nb#nb#nb #modal-root .staged-device-modal .wizard-step-actions{
  border:0!important;
  box-shadow:none!important;
  background:var(--adq-ui-editor-actions,linear-gradient(180deg,rgba(27,21,60,0),rgba(27,21,60,.98) 35%))!important;
}

/* Central DIO — same visual language as Instrument Configuration, not a separate app. */
#nb#nb#nb #modal-root .central-dio-editor-modal>.modal-head{
  padding:12px 16px 10px!important;
  border:0!important;
  background:var(--adq-ui-editor-header,#241b50)!important;
  box-shadow:none!important;
}
#nb#nb#nb #modal-root .central-dio-editor-body{
  padding:10px 12px 14px!important;
  background:var(--adq-ui-editor-body,#1b153c)!important;
}
#nb#nb#nb #modal-root .central-dio-editor-modal .dio-config-stack{
  display:grid!important;
  gap:8px!important;
  width:100%!important;
  max-width:none!important;
}
#nb#nb#nb #modal-root .central-dio-editor-modal .dio-config-section{
  padding:12px!important;
  margin:0!important;
  border:1px solid var(--adq-ui-editor-border,rgba(151,140,204,.16))!important;
  border-radius:13px!important;
  background:var(--adq-ui-editor-section,rgba(255,255,255,.025))!important;
  box-shadow:none!important;
  overflow:visible!important;
}
#nb#nb#nb #modal-root .central-dio-editor-modal .dio-config-section>.section-title{
  margin:0 0 10px!important;
  padding:0!important;
  border:0!important;
}
#nb#nb#nb #modal-root .central-dio-editor-modal .dio-config-section>.section-title h2{
  margin:1px 0 2px!important;
  font-size:14px!important;
  color:var(--adq-ui-editor-text,#f0edff)!important;
}
#nb#nb#nb #modal-root .central-dio-editor-modal .dio-config-section>.section-title p{
  margin:0!important;
  color:var(--adq-ui-editor-muted,#aaa3c6)!important;
  font-size:9px!important;
  line-height:1.4!important;
}
#nb#nb#nb #modal-root .central-dio-editor-modal .dio-config-section>.section-title .eyebrow{
  color:var(--adq-ui-warning,#ffb43d)!important;
  font-size:8px!important;
  letter-spacing:.10em!important;
}

/* Form symmetry and rhythm. */
#nb#nb#nb #modal-root .central-dio-editor-modal .form-grid{gap:8px 10px!important}
#nb#nb#nb #modal-root .central-dio-editor-modal .form-grid.grid-3{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
}
#nb#nb#nb #modal-root .central-dio-editor-modal .field{gap:4px!important;min-width:0!important}
#nb#nb#nb #modal-root .central-dio-editor-modal .field>label,
#nb#nb#nb #modal-root .central-dio-editor-modal .field>span,
#nb#nb#nb #modal-root .central-dio-editor-modal .dio-field-label{
  margin:0!important;
  min-height:auto!important;
  font-size:8.8px!important;
  line-height:1.2!important;
  color:var(--adq-ui-editor-label,#ded9f4)!important;
}
#nb#nb#nb #modal-root .central-dio-editor-modal .input,
#nb#nb#nb #modal-root .central-dio-editor-modal .select{
  min-height:35px!important;
  height:35px!important;
  padding:6px 10px!important;
  border-color:var(--adq-ui-editor-border-field,rgba(151,140,204,.18))!important;
  border-radius:10px!important;
  box-shadow:none!important;
}

/* Profile source cards: compact, symmetric and contained. */
#nb#nb#nb #modal-root .central-dio-editor-modal .dio-profile-source-wrap{margin-top:9px!important}
#nb#nb#nb #modal-root .central-dio-editor-modal .dio-profile-source-grid{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:8px!important;
}
#nb#nb#nb #modal-root .central-dio-editor-modal .dio-source-card{
  min-height:58px!important;
  padding:9px 11px!important;
  border:1px solid var(--adq-ui-editor-border-soft,rgba(151,140,204,.14))!important;
  border-radius:11px!important;
  background:var(--adq-ui-editor-section,rgba(255,255,255,.025))!important;
  box-shadow:none!important;
}
#nb#nb#nb #modal-root .central-dio-editor-modal .dio-source-card.active{
  border-color:rgba(75,146,255,.58)!important;
  background:rgba(43,120,232,.10)!important;
}
#nb#nb#nb #modal-root .central-dio-editor-modal .dio-source-icon{
  width:28px!important;height:28px!important;min-width:28px!important;min-height:28px!important;max-width:28px!important;max-height:28px!important;
  display:grid!important;place-items:center!important;overflow:hidden!important;border-radius:8px!important;
}
#nb#nb#nb #modal-root .central-dio-editor-modal .dio-source-icon svg{
  width:15px!important;height:15px!important;min-width:15px!important;min-height:15px!important;max-width:15px!important;max-height:15px!important;
}

/* DI / DO panels: one quiet boundary each, equal geometry. */
#nb#nb#nb #modal-root .central-dio-editor-modal .dio-channel-columns{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:10px!important;
  align-items:stretch!important;
}
#nb#nb#nb #modal-root .central-dio-editor-modal .dio-channel-panel{
  min-height:210px!important;
  padding:12px!important;
  border:1px solid var(--adq-ui-editor-border-soft,rgba(151,140,204,.14))!important;
  border-radius:12px!important;
  background:var(--adq-ui-editor-panel,rgba(255,255,255,.018))!important;
  box-shadow:none!important;
}
#nb#nb#nb #modal-root .central-dio-editor-modal .dio-channel-panel.di-panel,
#nb#nb#nb #modal-root .central-dio-editor-modal .dio-channel-panel.do-panel{
  border-top-color:var(--adq-ui-editor-border-soft,rgba(151,140,204,.14))!important;
}
#nb#nb#nb #modal-root .central-dio-editor-modal .dio-channel-head{
  min-height:44px!important;
  margin:0 0 8px!important;
  padding:0!important;
  border:0!important;
}
#nb#nb#nb #modal-root .central-dio-editor-modal .dio-channel-head h4{font-size:12px!important;margin:1px 0 2px!important}
#nb#nb#nb #modal-root .central-dio-editor-modal .dio-channel-head p{font-size:8.5px!important;margin:0!important}
#nb#nb#nb #modal-root .central-dio-editor-modal .dio-channel-panel>.empty-state{
  min-height:110px!important;
  padding:18px!important;
  border:0!important;
  background:transparent!important;
}

/* Central editor footer: same single separator as device editor. */
#nb#nb#nb #modal-root .central-dio-editor-modal>.central-dio-editor-actions{
  min-height:52px!important;
  padding:8px 13px!important;
  border:0!important;
  border-top:1px solid var(--adq-ui-editor-footer-border,rgba(151,140,204,.11))!important;
  background:var(--adq-ui-editor-body,#1b153c)!important;
  box-shadow:none!important;
}

/* Project 00: keep keyboard focus visible even where baseline rules remove shadows. */
#nb#nb#nb #modal-root :is(.staged-device-modal,.central-dio-editor-modal) :is(button,input,select,textarea):focus-visible{
  outline:2px solid var(--adq-ui-focus)!important;
  outline-offset:2px!important;
}

/* Configuration cards/page-wide: reduce accidental double outlines globally. */
#nb#nb#nb .configuration-page .panel .panel,
#nb#nb#nb .configuration-page .card .card{
  box-shadow:none!important;
}

@media(max-width:900px){
  #nb#nb#nb #modal-root .central-dio-editor-modal .form-grid.grid-3,
  #nb#nb#nb #modal-root .central-dio-editor-modal .dio-profile-source-grid,
  #nb#nb#nb #modal-root .central-dio-editor-modal .dio-channel-columns{grid-template-columns:1fr!important}
}


/* ======================================================================
   LEGACY MIGRATION SOURCE: PROJECTS/00_UI_FOUNDATION/developer-workspace/developer.css
   Consolidated into the single universal Project 00 stylesheet.
   ====================================================================== */
/* Project 00 developer-only presentation. Uses only frozen semantic tokens. */
@font-face{font-family:"Sora";src:url("../../../src/daq/webui/shared/fonts/sora-latin-wght-normal.woff2") format("woff2");font-weight:100 800;font-style:normal;font-display:swap}
@font-face{font-family:"JetBrains Mono";src:url("../../../src/daq/webui/shared/fonts/jetbrains-mono-latin-400-normal.woff2") format("woff2");font-weight:400;font-display:swap}
:root{--dev-mono:"JetBrains Mono",Consolas,monospace;--dev-content:1320px;--dev-nav:210px}
*{box-sizing:border-box}
html{scroll-behavior:smooth;background:var(--adq-ui-canvas)}
html,body{margin:0;min-height:100%;overflow-x:hidden}
body.foundation-gallery{background:var(--adq-ui-canvas);color:var(--adq-ui-text);font-family:var(--adq-ui-font-family)}
.dev-shell{max-width:var(--dev-content);margin:0 auto;padding:32px 28px 24px;position:relative}
.dev-header{display:flex;justify-content:space-between;gap:24px;align-items:center;margin-bottom:22px}
.dev-header h1{font-size:34px;letter-spacing:-.04em;margin:8px 0 6px}.dev-header p{margin:0;color:var(--adq-ui-text-muted);font-size:13px;line-height:1.6}.dev-eyebrow{font-size:10px;letter-spacing:.14em;color:var(--adq-ui-text-muted);font-weight:700}.dev-header-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.dev-banner{display:flex;gap:10px;align-items:center;padding:12px 16px;border:1px solid var(--adq-ui-border);border-radius:12px;font-size:11px;color:var(--adq-ui-text-muted);background:var(--adq-ui-surface-muted);margin-bottom:24px;flex-wrap:wrap}.dev-banner strong{color:var(--adq-ui-text)}.dev-dot{width:7px;height:7px;border-radius:50%;background:var(--adq-ui-accent)}
.dev-layout{display:grid;grid-template-columns:var(--dev-nav) minmax(0,1fr);gap:28px}.dev-nav{position:sticky;top:18px;align-self:start;display:grid;gap:4px;padding-top:6px;max-height:calc(100vh - 36px);overflow:auto}.dev-nav>span{font-size:9px;letter-spacing:.12em;color:var(--adq-ui-text-muted);padding:0 12px 8px}.dev-nav a{display:block;color:var(--adq-ui-text-muted);text-decoration:none;font-size:11px;line-height:1.45;padding:9px 12px;border-radius:9px;border:1px solid transparent}.dev-nav a:hover,.dev-nav a:focus-visible,.dev-nav a[aria-current=true]{background:var(--adq-ui-surface-muted);color:var(--adq-ui-text);border-color:var(--adq-ui-border)}
.dev-content{min-width:0}.dev-section{margin-bottom:34px;scroll-margin-top:18px;min-width:0}.dev-section-head{display:flex;gap:12px;align-items:flex-start;margin-bottom:13px}.dev-section-head>span{display:grid;place-items:center;width:28px;height:28px;flex:0 0 28px;background:var(--adq-ui-surface-muted);border:1px solid var(--adq-ui-border);border-radius:8px;color:var(--adq-ui-text-muted);font-size:10px}.dev-section-head h2{font-size:18px;letter-spacing:-.025em;margin:1px 0 4px}.dev-section-head p{font-size:11px;color:var(--adq-ui-text-muted);line-height:1.65;margin:0}
.dev-demo{min-width:0}.dev-demo h2{margin:0 0 14px;font-size:25px}.dev-demo h3{margin:0 0 10px;font-size:17px}.dev-demo p{font-size:13px;line-height:1.65;color:var(--adq-ui-text-muted)}.dev-demo small{font-size:10px;color:var(--adq-ui-text-muted)}.dev-demo code,code,pre{font-family:var(--dev-mono)}.dev-numeric{font-size:30px;font-weight:650;font-variant-numeric:tabular-nums;margin:18px 0}.dev-numeric small{font-size:13px}.dev-flow{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.dev-flow>span{font-size:11px;color:var(--adq-ui-text-muted)}
.dev-swatches{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.dev-swatch{border:1px solid var(--adq-ui-border);border-radius:12px;padding:9px;background:var(--adq-ui-surface);min-width:0}.dev-swatch>div{height:48px;border-radius:8px;border:1px solid var(--adq-ui-border);margin-bottom:9px}.dev-swatch strong{display:block;font-size:11px;margin-bottom:4px}.dev-swatch code{display:block;font-size:8px;color:var(--adq-ui-text-muted);overflow-wrap:anywhere}.dev-swatch small{display:block;font-size:9px;color:var(--adq-ui-text-muted);margin-top:5px;overflow-wrap:anywhere}
.dev-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.dev-form .adq-input,.dev-form .adq-select,.dev-form textarea{width:100%}.dev-full{grid-column:1/-1}.dev-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.dev-inner{padding:12px;margin-top:14px;border:1px solid var(--adq-ui-border);border-radius:14px;background:var(--adq-ui-surface-muted)}.dev-inner strong{font-size:11px}.dev-inner small{display:block;margin-top:5px}.dev-table{overflow:auto;max-width:100%;border:1px solid var(--adq-ui-border);border-radius:16px;background:var(--adq-ui-surface)}.dev-table table{min-width:740px}.dev-spacing{display:flex;gap:24px;flex-wrap:wrap;margin-bottom:20px}.dev-spacing>div{display:grid;gap:7px;font-size:10px}.dev-spacing span{display:block;height:24px;background:var(--adq-ui-accent);border-radius:4px}.dev-checklist{display:grid;gap:12px;font-size:12px}.dev-checklist label{display:flex;gap:9px;align-items:flex-start;line-height:1.55}.dev-footer{border-top:1px solid var(--adq-ui-border);padding:18px 0 0;margin-top:22px;color:var(--adq-ui-text-muted);font-size:10px;line-height:1.7}
#modal-root[hidden]{display:none}.modal-backdrop{position:fixed;inset:0;background:rgba(5,3,18,.72);backdrop-filter:blur(5px);display:grid;place-items:center;padding:20px;z-index:1000}.dev-demo-modal{width:min(780px,calc(100vw - 40px));height:min(620px,calc(100dvh - 40px))}.dev-demo-modal .adq-field{margin:14px 0}.dev-demo-modal .adq-input{width:100%}.dev-modal-tabs{margin:16px 0}.dev-modal-panel{margin:0 0 16px;color:var(--adq-ui-text-muted)}
#dev-toast-host{position:fixed;right:20px;bottom:20px;z-index:1100;display:grid;gap:8px}.dev-toast{min-width:260px;max-width:min(420px,calc(100vw - 40px))}
.dev-module-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:0 0 22px}.dev-module-summary>div{border:1px solid var(--adq-ui-border);border-radius:12px;padding:17px;background:var(--adq-ui-surface)}.dev-module-summary b{display:block;font-size:25px;font-weight:650;margin-bottom:5px}.dev-module-summary span{font-size:11px;color:var(--adq-ui-text-muted)}.dev-module-layout{display:grid;grid-template-columns:295px minmax(0,1fr);gap:20px}.dev-module-list{display:grid;gap:7px;align-content:start}.dev-module-list button{font:inherit;text-align:left;display:flex;gap:12px;align-items:center;padding:13px;border:1px solid var(--adq-ui-border);border-radius:12px;color:var(--adq-ui-text);background:var(--adq-ui-surface);cursor:pointer}.dev-module-list button.selected{border-color:var(--adq-ui-accent);background:var(--adq-ui-surface-muted)}.dev-module-list .dev-module-id{font-size:13px;color:var(--adq-ui-text-muted);width:25px}.dev-module-list strong{display:block;font-size:11px;line-height:1.6}.dev-module-list small{font-size:9px;color:var(--adq-ui-text-muted);display:block;margin-top:4px}.dev-module-detail{padding:25px;min-width:0}.dev-module-detail h2{font-size:24px;margin:7px 0 10px}.dev-module-detail h3{font-size:13px;margin:23px 0 10px}.dev-module-detail p{font-size:12px;color:var(--adq-ui-text-muted);line-height:1.7}.dev-module-detail pre{white-space:pre-wrap;overflow-wrap:anywhere;font:11px/1.8 var(--dev-mono);background:var(--adq-ui-surface-muted);padding:15px;border:1px solid var(--adq-ui-border);border-radius:10px;color:var(--adq-ui-text-muted);margin:0}.dev-module-detail ul{padding-left:18px;font-size:11px;color:var(--adq-ui-text-muted);line-height:1.9;overflow-wrap:anywhere}.dev-module-detail details{margin-top:20px;font-size:12px;color:var(--adq-ui-text-muted)}.dev-module-detail summary{cursor:pointer;padding:9px 0;color:var(--adq-ui-text)}
@media(max-width:1050px){.dev-layout{grid-template-columns:170px minmax(0,1fr);gap:20px}.dev-swatches{grid-template-columns:repeat(3,minmax(0,1fr))}.dev-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dev-module-layout{grid-template-columns:230px minmax(0,1fr)}}
@media(max-width:720px){.dev-shell{padding:20px 14px}.dev-header{flex-wrap:wrap}.dev-header h1{font-size:28px}.dev-layout,.dev-module-layout{grid-template-columns:1fr}.dev-nav{position:static;grid-template-columns:repeat(2,minmax(0,1fr));max-height:none}.dev-nav>span{grid-column:1/-1}.dev-swatches{grid-template-columns:repeat(2,minmax(0,1fr))}.dev-card-grid,.dev-form{grid-template-columns:1fr}.dev-module-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.foundation-gallery *{animation-duration:.01ms!important;transition-duration:.01ms!important}}


/* ========================================================================
   UNIVERSAL MOTION CONTRACT — Project 00
   All application modules inherit the same motion timing/easing.
   ======================================================================== */
:root{
  --adq-motion-instant:0ms;
  --adq-motion-fast:120ms;
  --adq-motion-normal:180ms;
  --adq-motion-slow:260ms;
  --adq-motion-ease:cubic-bezier(.2,.8,.2,1);
  --adq-motion-ease-out:cubic-bezier(.16,1,.3,1);
  --adq-motion-ease-in:cubic-bezier(.4,0,1,1);
  --adq-motion-distance:8px;
}
html.adq-page-enter body{animation:adq-page-enter var(--adq-motion-normal) var(--adq-motion-ease-out) both}
@keyframes adq-page-enter{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}
:is(.modal,.adq-modal,dialog,[role="dialog"]){transition:opacity var(--adq-motion-normal) var(--adq-motion-ease),transform var(--adq-motion-normal) var(--adq-motion-ease),visibility var(--adq-motion-normal) step-end}
:is(.modal,.adq-modal,dialog,[role="dialog"]).adq-motion-opening{animation:adq-pop-in var(--adq-motion-normal) var(--adq-motion-ease-out) both}
:is(.modal,.adq-modal,dialog,[role="dialog"]).adq-motion-closing{animation:adq-pop-out var(--adq-motion-fast) var(--adq-motion-ease-in) both}
@keyframes adq-pop-in{from{opacity:0;transform:translateY(var(--adq-motion-distance)) scale(.992)}to{opacity:1;transform:none}}
@keyframes adq-pop-out{from{opacity:1;transform:none}to{opacity:0;transform:translateY(4px) scale(.995)}}
:is(.adq-dropdown-menu,.dropdown-menu,[role="listbox"],.select-options,.nb-select-options){transform-origin:top center}
:is(.adq-dropdown-menu,.dropdown-menu,[role="listbox"],.select-options,.nb-select-options):not([hidden]){animation:adq-dropdown-in var(--adq-motion-fast) var(--adq-motion-ease-out) both}
@keyframes adq-dropdown-in{from{opacity:0;transform:translateY(-4px) scaleY(.985)}to{opacity:1;transform:none}}
:is(button,.button,.adq-button,[role="button"],input,select,textarea,.tab,[role="tab"],.card,.panel,.adq-card){transition-duration:var(--adq-motion-fast);transition-timing-function:var(--adq-motion-ease);transition-property:background-color,border-color,color,box-shadow,opacity,transform}
:is(button,.button,.adq-button,[role="button"]):active:not(:disabled){transform:translateY(1px)}
.adq-motion-fade-in{animation:adq-fade-in var(--adq-motion-normal) var(--adq-motion-ease-out) both}
.adq-motion-fade-out{animation:adq-fade-out var(--adq-motion-fast) var(--adq-motion-ease-in) both}
@keyframes adq-fade-in{from{opacity:0}to{opacity:1}}
@keyframes adq-fade-out{from{opacity:1}to{opacity:0}}
@media (prefers-reduced-motion:reduce){
  :root{--adq-motion-fast:1ms;--adq-motion-normal:1ms;--adq-motion-slow:1ms;--adq-motion-distance:0px}
  *,*::before,*::after{animation-duration:1ms!important;animation-iteration-count:1!important;transition-duration:1ms!important;scroll-behavior:auto!important}
}

/* ========================================================================
   UNIVERSAL MOTION STABILITY PATCH — 2026-10-04
   Opacity-first motion prevents layout shift/jumping across all modules.
   ======================================================================== */
:root{
  --adq-motion-fast:120ms;
  --adq-motion-normal:180ms;
  --adq-motion-slow:240ms;
  --adq-motion-ease:cubic-bezier(.2,.72,.2,1);
  --adq-motion-ease-out:cubic-bezier(.16,1,.3,1);
  --adq-motion-ease-in:cubic-bezier(.4,0,1,1);
}
/* The application runtime owns route transitions. Never animate the whole document with movement. */
html.adq-page-enter body{animation:adq-page-enter-stable var(--adq-motion-normal) var(--adq-motion-ease-out) both}
@keyframes adq-page-enter-stable{from{opacity:.88}to{opacity:1}}
/* Avoid transform-on-press because it makes controls/file selectors visibly jump. */
:is(button,.button,.adq-button,[role="button"]):active:not(:disabled){transform:none!important}
/* Reusable controls may transition paint properties, not layout geometry. */
:is(button,.button,.adq-button,[role="button"],input,select,textarea,.tab,[role="tab"],.card,.panel,.adq-card){
  transition-property:background-color,border-color,color,box-shadow,opacity!important;
  transition-duration:var(--adq-motion-fast)!important;
  transition-timing-function:var(--adq-motion-ease)!important;
}
/* Modal positioning is stable; JS animates only opacity and a very small compositor translation. */
:is(.modal,.adq-modal,dialog,[role="dialog"]){animation:none!important;will-change:opacity,transform}
.modal-backdrop{will-change:opacity}
/* Dropdown animation is driven by the shared runtime so open and close use the same timing. */
:is(.adq-dropdown-menu,.dropdown-menu,[role="listbox"],.select-options,.nb-select-options):not([hidden]){animation:none!important}
.adq-dropdown-menu{will-change:opacity,transform;contain:layout paint style}
/* Route/page containers must never have an inherited translate/scale animation. */
.page-root>.page,#page-root>.page,.configuration-page{animation:none!important;transform:none!important}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:1ms!important;transition-duration:1ms!important;scroll-behavior:auto!important}
}


/* UIUX-VERIFIED-PATCH-20261004 */
html,body{margin:0!important;padding:0!important;width:100%!important;min-width:0!important;}
body.adq-ui{overflow-x:hidden!important;}
#app-shell.app-shell{width:100%!important;max-width:none!important;margin:0!important;box-sizing:border-box!important;}
#nb#nb#nb .ref-brand-lockup .nb-crumb{pointer-events:none!important;min-width:0!important;max-width:min(38vw,520px)!important;overflow:hidden!important;}


/* UIUX-TOPBAR-COLLISION-FIX-20261004 */
#nb#nb#nb .ref-topbar-brand{min-width:0!important;flex:1 1 auto!important;overflow:hidden!important;}
#nb#nb#nb .ref-brand-lockup{pointer-events:none!important;min-width:0!important;max-width:min(34vw,500px)!important;overflow:hidden!important;white-space:nowrap!important;flex:0 1 auto!important;}
#nb#nb#nb .ref-brand-lockup .nb-crumb{display:inline-block!important;pointer-events:none!important;min-width:0!important;max-width:min(24vw,340px)!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;vertical-align:middle!important;}
#nb#nb#nb .ref-topbar-center,#nb#nb#nb .ref-topbar-right{position:relative!important;z-index:3!important;flex:0 0 auto!important;}
#nb#nb#nb .ref-topbar-center{min-width:max-content!important;}


/* UIUX-MOBILE-MENU-STACKING-FIX-20261004 */
/* The hamburger sheet lives inside .ref-topbar. Keep the backdrop below that
   stacking context; otherwise on narrow preview/mobile viewports the body
   toggles to sidebar-open (button becomes X) but the sheet is painted behind
   the full-screen backdrop and appears not to open. */
#nb#nb#nb .sidebar-backdrop{z-index:18!important;}
#nb#nb#nb .ref-topbar{position:relative!important;z-index:20!important;overflow:visible!important;}
#nb#nb#nb body.sidebar-open .top-primary-nav{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  pointer-events:auto!important;
  z-index:99999!important;
}
@media (max-width:900px){
  #nb#nb#nb .top-primary-nav{
    left:8px!important;
    top:calc(100% + 8px)!important;
    width:min(360px,calc(100vw - 16px))!important;
    max-height:calc(100dvh - 92px)!important;
  }
}


/* UIUX-NARROW-TOPBAR-HITBOX-FIX-20261004 */
/* On narrow browser/mobile widths, center/status content must not overlap the
   hamburger hit target. This is both a visual and pointer-hit invariant. */
@media (max-width:700px){
  #nb#nb#nb .ref-topbar{
    grid-template-columns:minmax(0,1fr) auto!important;
    gap:6px!important;
  }
  #nb#nb#nb .ref-topbar-center{
    display:none!important;
    pointer-events:none!important;
  }
  #nb#nb#nb .ref-topbar-brand{
    min-width:0!important;
    overflow:visible!important;
    padding-inline:8px!important;
  }
  #nb#nb#nb .ref-menu-button{
    position:relative!important;
    z-index:100001!important;
    pointer-events:auto!important;
    flex:0 0 40px!important;
    width:40px!important;
    min-width:40px!important;
  }
  #nb#nb#nb .ref-brand-lockup{
    min-width:0!important;
    max-width:220px!important;
    overflow:hidden!important;
  }
  #nb#nb#nb .ref-brand-lockup strong,
  #nb#nb#nb .ref-brand-lockup span{
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
  }
  #nb#nb#nb .ref-topbar-right{
    min-width:0!important;
    gap:4px!important;
  }
}


/* UIUX-HAMBURGER-MENU-CLIP-FIX-20261004 */
/* primary-nav is a flyout child of .ref-topbar-brand. A previous collision
   fix set overflow:hidden on the brand container, which left the button in
   the open/X state while clipping the entire menu. Keep clipping on the text
   lockup only; the menu host itself must remain overflow-visible. */
#nb#nb#nb .ref-topbar-brand{
  position:relative!important;
  overflow:visible!important;
  z-index:30!important;
}
#nb#nb#nb .ref-brand-lockup{
  min-width:0!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
}
#nb#nb#nb .top-primary-nav{
  z-index:100000!important;
  isolation:isolate!important;
}
#nb#nb#nb body.sidebar-open .top-primary-nav{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  pointer-events:auto!important;
}
