/* Superficies de grafito neutro y espacios de trabajo ajustados a la pantalla. */
:root {
  --bg: #111214; --surface: #1b1d20; --surface-2: #23262a; --surface-3: #2d3035;
  --border: #444850; --text: #f3f4f6; --muted: #b4b8c0;
  --brand: #a8b9d1; --brand-strong: #d0dcec; --brand-soft: rgba(181, 195, 216, .12);
  --panel-ink: #f0f1f4; --panel-muted-ink: #b7bbc3;
  --panel-glass: rgba(24, 25, 28, var(--panel-surface-alpha));
  --detail-glass: rgba(20, 21, 24, var(--detail-surface-alpha));
  --panel-protected-glass: rgba(27, 29, 33, var(--panel-protected-alpha));
}
body { background: #111214; }
.login-background { background: radial-gradient(circle at 18% 20%, rgba(143, 155, 179, .14), transparent 34%), linear-gradient(145deg, #101114, #292c33 58%, #15161a); }
.login-card { border-color: #565d6c; background: rgba(24, 26, 31, .95); }
.login-card .button-primary { background: #647791; color: #fff; }
::selection { background: #53627a; }
.app-shell .main-column, .app-shell .app-header { background-color: #16171a; background-image: linear-gradient(135deg, #18191c, #282b30 55%, #141518); }
.app-shell .sidebar { background-color: #17181b; background-image: linear-gradient(rgba(16, 17, 20, .90), rgba(18, 19, 22, .96)); }
.app-shell .app-header::after { background: linear-gradient(90deg, rgba(14, 15, 18, .97), rgba(22, 23, 27, .88) 30%, rgba(21, 22, 25, .60) 68%, rgba(16, 17, 20, .78)); }
.app-shell .panel-scene-image { filter: saturate(.45); }
.app-shell :is(.section-kicker, .eyebrow), .dialog .section-kicker { color: #c1cad8 !important; }
.app-shell .nav-item { border-color: #41434a; background: rgba(24, 26, 30, .76); color: #e8eaef; }
.app-shell .nav-item:hover, .app-shell .nav-item.active { border-color: #8e9aaf; background: rgba(92, 100, 115, .48); color: #fff; box-shadow: inset 3px 0 #bdc9dc; }
.app-shell .nav-item .nav-icon, .app-shell .nav-item:hover .nav-icon, .app-shell .nav-item.active .nav-icon { border-color: #616671; background: #30343b; color: #d5ddec; box-shadow: none; }
.app-shell .profile-block, .app-shell .avatar { border-color: #656a75; background: rgba(49, 52, 59, .85); color: #fff; }
.app-shell .button, .dialog .button { text-shadow: none; }
.app-shell .button-primary, .dialog .button-primary { border-color: #9baac1; background: #647791; color: #fff; }
.app-shell .button-primary:hover, .dialog .button-primary:hover { background: #7b8fac; color: #fff; }
.app-shell .button-secondary, .dialog .button-secondary, .app-shell .icon-button { border-color: #666c78; background: #30343c; color: #f3f5f8; }
.app-shell .button-secondary:hover, .dialog .button-secondary:hover { background: #434a56; }
.app-shell .button-quiet, .app-shell .button-ghost, .dialog .button-quiet { color: #d3deef; }
.app-shell :is(.button-icon, .settings-tab-icon, .settings-hero-icon, .upload-symbol, .account-metric-icon), .dialog .button-icon { color: #c3d2e9; }
.app-shell .connection-status { border-color: #5e6876; background: #31353d; color: #e5eaf2; }
.app-shell .header-summary { background: rgba(92, 100, 114, .45); border-color: #687386; }
.app-shell .settings-hero, .app-shell .accounts-hero, .app-shell .maintenance-hero { background: linear-gradient(120deg, #1a1d22, #333943); }
.app-shell :is(.settings-tab.active, .settings-source.active, .catalog-navigation-item.active, .load-source-tab.active, .maintenance-track.active) { border-color: #a0aec5; background: rgba(83, 96, 117, .65); color: #fff; box-shadow: inset 3px 0 #c1cede; }
.app-shell :is(.settings-source, .catalog-navigation-item).active :is(i, span:first-child) { background: #7a8ba6; color: #101217; }
.app-shell :is(.settings-source, .catalog-navigation-item).active small { color: #e3e8f0; }
.app-shell :is(.settings-switch input:checked + span) { background: #8293ad; }
.app-shell input[type="checkbox"], .dialog input[type="checkbox"], .app-shell input[type="range"] { accent-color: #9eafc9; }
.app-shell :is(input, select, textarea):focus, .dialog :is(input, select, textarea):focus { border-color: #afbdd3; box-shadow: 0 0 0 3px rgba(181, 195, 216, .14); background: #262b33; }
.app-shell .map-stat-card.located { border-color: #7a879d; background: rgba(67, 79, 98, .65); }
.app-shell .appearance-control output { border-color: #707f95; background: #303a4b; color: #e5ebf6; }
.app-shell .dossier-scene-card:has(input:checked) { border-color: #a0afc6; background: #354052; }
.app-shell .map-control-panel .map-filter-toolbar { background: rgba(24, 26, 30, .88); }
.app-shell #parkView .inventory-table tbody tr:hover td,
.app-shell #parkView .inventory-table tbody tr:hover td:nth-child(-n+2),
.app-shell #parkView .inventory-table tbody tr:focus-visible td,
.app-shell #parkView .inventory-table tbody tr:focus-visible td:nth-child(-n+2),
.app-shell :is(.configuration-table, .catalog-table, .maintenance-table) tbody tr:hover td { background: #414a59; color: #fff; }
.app-shell #parkView .inventory-table .table-supply { display: grid; gap: 4px; padding: 0; border: 0; border-radius: 0; background: transparent; color: inherit; }
.app-shell #parkView .table-supply strong { font-size: inherit; font-weight: 750; line-height: 1.3; white-space: normal; }
.app-shell #parkView .table-supply small { display: flex; gap: 6px; align-items: center; color: #c4ccd9; font-size: 9px; letter-spacing: .06em; }
.table-supply-symbol { display: inline-block; flex: 0 0 11px; width: 11px; height: 11px; background: var(--condition-color, #c64fff); }
.table-supply-symbol.shape-triangle { clip-path: polygon(50% 0, 100% 100%, 0 100%); }
.table-supply-symbol.shape-diamond { clip-path: polygon(50% 0, 100% 50%, 50% 100%, 0 50%); }
.table-supply-symbol.shape-square { border-radius: 1px; }
.table-supply-symbol.shape-circle { border-radius: 50%; }
.table-supply-symbol.shape-review, .legend-shape.shape-review { clip-path: polygon(25% 0, 75% 0, 100% 50%, 75% 100%, 25% 100%, 0 50%); }
.app-shell .map-legend-explicit .map-legend-body { display: grid; gap: 9px; grid-template-columns: 1fr; padding: 10px 12px; background: rgba(23, 25, 29, .88); }
.map-legend-explicit .legend-group { gap: 6px 12px; }
.map-legend-explicit .legend-group > strong { display: none; }
.app-shell .main-column .map-legend-explicit span b { color: #f2f5fa; }
.app-shell .main-column .map-legend-explicit .legend-group > span { color: #e2e8f2; }
.map-legend-explicit .legend-shape { width: 13px; height: 13px; flex-basis: 13px; background: #d1dbea; filter: none; }
.map-legend-explicit .legend-condition { width: 10px; height: 10px; flex-basis: 10px; border-width: 1px; }
.map-legend-explicit .map-layer-hint { display: none; }
.app-shell .map-control-panel .map-legend-explicit { flex-shrink: 0; margin-top: 8px; }
.dialog.dialog-detail { border-color: #8d99ae; }
.dialog.dialog-detail .detail-item.is-important { background: rgba(160, 177, 203, .08); }

/* El banner tiene la misma altura en todos los módulos; la fila inferior aloja las acciones. */
.header-workspace-controls { position: relative; z-index: 3; min-width: 0; }
.header-settings-controls { display: flex; align-items: center; gap: 18px; min-width: 0; }
.header-workspace-controls :is(.settings-tabs, .load-source-navigation) { display: flex; gap: 6px; min-width: 0; margin: 0; overflow-x: auto; scrollbar-width: thin; }
.app-shell .header-workspace-controls :is(.settings-tab, .load-source-tab) { flex: 0 0 auto; min-height: 34px; height: 34px; padding: 5px 10px; border-radius: 8px; background: rgba(31, 34, 40, .90); color: #e2e6ef; font-size: 10px; }
.app-shell .header-workspace-controls :is(.settings-tab, .load-source-tab).active { background: #45536a; border-color: #a1b4d2; color: white; }
.app-shell .header-workspace-controls :is(.settings-tab, .load-source-tab) :is(strong, span) { color: inherit; }
.app-shell .header-workspace-controls svg { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 1.65; stroke-linecap: round; stroke-linejoin: round; }
.header-workspace-controls :is(.settings-tab, .load-source-tab) small { display: none; }
.header-workspace-controls :is(.settings-tab-icon, .load-source-tab > span:first-child) { width: 18px; height: 18px; background: none; }
.header-workspace-controls .settings-health { flex: 0 0 auto; gap: 14px; margin-left: auto; }
.header-workspace-controls .settings-health > div { min-width: 0; padding: 0; border: 0; background: transparent; }
.header-workspace-controls .settings-health strong { color: #f6f7fa; font-size: 15px; }
.header-workspace-controls .settings-health span { font-size: 8px; color: #b8c3d4; }
.app-shell .settings-rail-heading > span { color: #c2ccda; }
.app-shell :is(.settings-source, .catalog-navigation-item) :is(i, span:first-child) { color: #d1dbea; background: #343a45; }
.app-shell .settings-switch input:checked + span { border-color: #8b9bb2; box-shadow: none; }
.app-shell .status { border-color: #687487; background: rgba(51, 60, 74, .9); color: #e5edf9; }
.app-shell .status .badge-pictogram { color: #c9d8ee; background: none; }
.app-shell .table-location-actions > summary { border-color: #7a879b; background: #303a4a; color: #dbe5f5; }

/* Filtros a la izquierda; indicadores generales en banner y tipos encima del mapa. */
.header-map-controls { display: flex; align-items: center; gap: 12px; }
.app-shell .header-map-controls .map-statistics { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px; flex: 1; padding: 0; margin: 0; }
.app-shell .header-map-controls .map-stat-card { display: flex; min-height: 34px; align-items: center; justify-content: space-between; gap: 8px; padding: 5px 11px; border: 1px solid #575e6a; border-radius: 8px; background: rgba(43, 47, 55, .86); }
.app-shell .header-map-controls .map-stat-card span { color: #d7deea; font-size: 10px; }
.app-shell .header-map-controls .map-stat-card strong { color: #fff; font-size: 20px; line-height: 1; }
.app-shell .header-map-controls .map-refresh { width: 34px; min-height: 34px; padding: 7px; }
.app-shell.map-workspace-active .map-control-panel .map-heading { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); }
.app-shell.map-workspace-active .map-control-panel .map-filters { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.app-shell.map-workspace-active .map-canvas-panel { display: grid; grid-template-rows: auto minmax(0, 1fr); }
.app-shell.map-workspace-active .map-canvas-panel .map-type-summary { min-width: 0; padding: 10px 12px; border-bottom: 1px solid #4d535e; }
.app-shell.map-workspace-active .map-canvas-panel .map-type-summary h3 { margin: 0 0 6px; color: #d3dbe8; font-size: 10px; }
.app-shell.map-workspace-active .map-canvas-panel .map-type-breakdown { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 6px; }
.app-shell.map-workspace-active .map-canvas-panel .map-type-chip { display: grid; min-height: 45px; min-width: 0; padding: 5px 8px; gap: 2px; border: 1px solid #555d6a; border-radius: 8px; background: rgba(51, 56, 65, .65); color: #d9e1ee; font-size: 9px; white-space: normal; }
.app-shell.map-workspace-active .map-canvas-panel .map-type-chip strong { color: #fff; font-size: 19px; line-height: 1; }
.app-shell.map-workspace-active .map-canvas-panel .inventory-map { border-radius: 0 0 15px 15px; }

/* Los colores cartográficos y de señal conservan significado; las superficies son neutras. */
.app-shell .sidebar-illustration::after { background: linear-gradient(180deg, rgba(20, 21, 25, .68), rgba(20, 21, 25, .38) 58%, rgba(20, 21, 25, .82)); }
.app-shell .sidebar :is(.nav-item, .sidebar-version) { text-shadow: 0 1px 3px #141519; }
.app-shell .sidebar .sidebar-version { color: #ccd1db; }
.app-shell .sidebar #logoutButton { background: rgba(24, 25, 30, .94); }
.app-shell :is(.maintenance-hero-icon, .maintenance-metric-icon, .accounts-hero-icon, .record-context-icon, .operation-context-icon, .confirm-symbol, .empty-symbol), .dialog :is(.operation-context-icon, .record-context-icon, .confirm-symbol) { color: #d0ddf3; background: #323842; border-color: #667183; }
.app-shell :is(.button-icon, .nav-icon, .settings-tab-icon, .settings-hero-icon, .upload-symbol, .account-metric-icon, .maintenance-metric-icon, .maintenance-hero-icon, .accounts-hero-icon, .record-context-icon, .empty-symbol) svg,
.dialog :is(.button-icon, .badge-pictogram, .detail-field-icon, .detail-section-icon, .operation-context-icon, .record-context-icon, .confirm-symbol) svg { fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.dialog :is(.detail-field-icon, .detail-section-icon) { color: var(--icon-tone, #d2ddef); border-color: #687386; background: rgba(45, 49, 58, .92); box-shadow: none; }
.dialog :is(.pictogram-camp, .pictogram-identity, .pictogram-users) { --icon-tone: #d0dcef; --icon-soft: #303641; }
.dialog .detail-open-evidence > summary { color: #cfdbef; }
.app-shell :is(.map-workspace-filters > summary, .map-disclosure-caret, .map-workspace-filters > summary .button-icon) { color: #d6dfed; }
.app-shell .map-workspace-filters > summary:focus-visible { outline-color: #c0cfea; }
.app-shell .main-column :is(.settings-hero, .accounts-hero, .maintenance-hero) { background: linear-gradient(120deg, #1a1d22, #333943); border-color: #535b69; }
.app-shell .main-column :is(.settings-tab, .maintenance-track):hover,
.app-shell .main-column :is(.account-card, .maintenance-card):hover { border-color: #8c9cb5; background: rgba(49, 55, 66, .86); }
.app-shell :is(.profile-switcher select, .settings-preservation-note, .work-order-rule) { border-color: #6a768a; background-color: rgba(48, 55, 68, .8); color: #e0e7f4; }
.app-shell :is(.filter-multi-options label, .filter-multi-actions button):hover { background: #414a59; color: #fff; }
.app-shell .main-column :is(.settings-main, .settings-rail, .settings-toolbar, .accounts-toolbar, .maintenance-toolbar, .account-card, .maintenance-card, .polygon-style-card),
.app-shell :is(.visual-settings-section, .appearance-control, .dossier-scene-card, .dossier-upload) { border-color: #4e5663; background-color: rgba(29, 32, 38, .72); }
.app-shell .main-column #loadsView :is(.ccc-current-grid > div, .open-contrast-card, .upload-dropzone, .validation-metric) { border-color: #555e6d; background: rgba(32, 35, 42, .7); }
.app-shell :is(.open-meter-dates.is-difference, .open-result-badge.is-match),
.app-shell #loadsView .open-contrast-table-wrap .open-change-date-cell { border-color: #798ba6; background: rgba(58, 72, 94, .6); color: #e9f0fc; }
.app-shell :is(.open-comparison-pair h4, .open-meter-dates h4) { color: #d4e1f5; }
.app-shell .appearance-preview { background: linear-gradient(135deg, #191b21, #323640); }
.app-shell .content-scene-backdrop, .app-shell .park-scene-backdrop { background-color: #15161a; }
.app-shell .main-column .compact-table-wrap tbody tr:hover td { background: #414a59; color: #fff; }
#configurationView .configuration-position { border: 1px solid #748198; background: #354052; color: #f0f5ff !important; font-weight: 750; }
#configurationView .settings-preservation-note > span { background: #424e62; color: #edf3ff; }
.app-shell :is(.upload-symbol, .settings-hero-icon, .account-metric-icon, .accounts-hero-icon, .maintenance-metric-icon, .maintenance-hero-icon, .empty-symbol) { border-color: #6c7a90; background: #343d4c; color: #e1ebfb; }
.app-shell .settings-switch input:not(:checked) + span { border-color: #657082; background: #434a56; }
.app-shell .settings-switch input + span::after { background: #f4f6fb; }
.dialog .account-profiles-field legend { color: #d9e3f3; }
.dialog .account-profile-option { border-color: #617087; background: #2c333e; color: #e1e9f7 !important; }
.dialog .account-profile-option:hover { border-color: #a7b8d1; background: #3d485a; }
.dialog .account-profile-option:has(input:checked) { border-color: #b1c1db; background: #4b5b74; color: #fff !important; box-shadow: inset 0 0 0 1px #7c91b2; }
.dialog .account-profile-option input { accent-color: #a3b8d7; }
.app-shell .sidebar .nav-list { min-width: 0; }
.app-shell .sidebar .nav-item { min-width: 0; max-width: 100%; }

/* Todos los seleccionables usan la misma superficie neutra, incluso sus opciones. */
.app-shell .main-column :is(select, input, textarea, .filter-multi-select > summary),
.dialog :is(select, input, textarea, .filter-multi-select > summary) { color-scheme: dark; border-color: #697587; background-color: #252a33; color: #f1f4fa; }
.app-shell .main-column select option, .dialog select option,
.app-shell .main-column select optgroup, .dialog select optgroup { background: #252a33; color: #f1f4fa; }
.app-shell .main-column :is(select, input, textarea):focus,
.dialog :is(select, input, textarea):focus { border-color: #c3d2eb; background-color: #303947; box-shadow: 0 0 0 3px rgba(156, 178, 210, .18); }
.app-shell .main-column :is(input[readonly], select:disabled),
.dialog :is(input[readonly], select:disabled) { border-color: #657082; background: #323640; color: #d3d9e4; opacity: 1; }
.app-shell .main-column .smart-field select:disabled, .dialog .smart-field select:disabled { border-color: #657082; background: #323640; color: #d3d9e4; }
.app-shell .main-column .filter-multi-select.has-filter > summary { border-color: #8b9db9; background: #343f52; color: #f2f6ff; }
.app-shell .main-column .filter-multi-popover { border-color: #8b9bb3; background: #20252e; color: #f1f5fc; }
.app-shell .main-column .filter-multi-option { color: #edf2fc; }
.app-shell .main-column .filter-multi-option:has(input:checked) { background: #3d4b61; }
.app-shell .main-column .filter-multi-option :is(strong, small) { color: #ecf2ff; }
.app-shell .main-column .filter-multi-actions button { border-color: #6a7890; background: #303a49; color: #e6edfa; }
.app-shell .main-column .filter-multi-actions button:hover { border-color: #bbcbea; background: #4a5870; color: #fff; }
.dialog :is(.camp-manual-entry, .camp-selection, .catalog-selection),
.app-shell .installation-grid :is(td.is-fill-source, td.is-fill-preview) { background: #34445b; color: #f2f6ff; }
.app-shell .installation-grid td.is-active-cell { box-shadow: inset 0 0 0 2px #b6cdef; }
.app-shell .installation-grid-control:focus { outline-color: #b6cdef; background: #303b4c; color: #fff; box-shadow: none; }
.app-shell .installation-grid .installation-grid-select { background: #30394a !important; color: #f4f7ff; }
.dialog .installation-grid .installation-grid-select { background: #30394a !important; color: #f4f7ff; }
.dialog .installation-grid :is(td.is-fill-source, td.is-fill-preview) { background: #34445b; color: #f2f6ff; }
.dialog .installation-grid td.is-active-cell { box-shadow: inset 0 0 0 2px #b6cdef; }
.dialog .installation-grid-control:focus { outline-color: #b6cdef; background: #303b4c; color: #fff; box-shadow: none; }
.dialog .installation-fill-handle::after { border-color: #e1eaff; background: #849cc2; }

/* Acciones y resúmenes de operación y cuentas dentro del banner global. */
.header-maintenance-controls, .header-accounts-controls { display: flex; min-width: 0; align-items: center; gap: 12px; }
.header-maintenance-controls { overflow-x: auto; scrollbar-width: thin; }
.header-maintenance-controls :is(.maintenance-sections, .maintenance-tracks) { display: flex; flex: 0 0 auto; gap: 5px; margin: 0; padding: 0; border: 0; background: transparent; }
.app-shell .header-maintenance-controls :is(.maintenance-section, .maintenance-track) { display: flex; flex: 0 0 auto; min-height: 34px; align-items: center; gap: 7px; padding: 5px 9px; border: 1px solid #64718a; border-radius: 8px; background: #282f3b; color: #e6edf9; box-shadow: none; }
.app-shell .header-maintenance-controls :is(.maintenance-section, .maintenance-track).active { border-color: #bbccea; background: #4b5b74; color: #fff; box-shadow: inset 2px 0 #cfddf4; }
.app-shell .header-maintenance-controls :is(.maintenance-section, .maintenance-track) > span:first-child { width: 18px; height: 18px; background: none; color: #e4edfc; }
.header-maintenance-controls :is(.maintenance-section, .maintenance-track) small { display: none; }
.header-maintenance-controls :is(.maintenance-section, .maintenance-track) strong { color: inherit; font-size: 10px; }
.header-maintenance-controls .maintenance-metrics { display: flex; flex: 1; gap: 12px; margin: 0 0 0 auto; }
.app-shell .header-maintenance-controls .maintenance-metrics > div { min-height: 0; padding: 0; border: 0; border-radius: 0; background: none; box-shadow: none; }
.header-maintenance-controls .maintenance-metric-icon { display: none; }
.header-maintenance-controls .maintenance-metrics :is(p, small) { margin: 0; }
.header-maintenance-controls .maintenance-metrics strong { color: #fff; font-size: 18px; }
.header-maintenance-controls .maintenance-metrics small { color: #ced8e9; font-size: 8px; white-space: nowrap; }
.header-maintenance-controls > .button, .header-accounts-controls > .button { flex: 0 0 auto; min-height: 34px; padding: 6px 10px; font-size: 10px; }
.header-accounts-controls .accounts-metrics { display: grid; flex: 1; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px; }
.app-shell .header-accounts-controls .accounts-metrics > div { min-height: 34px; gap: 8px; padding: 5px 10px; border-color: #66748a; border-radius: 8px; background: rgba(45, 52, 65, .86); box-shadow: none; }
.header-accounts-controls .account-metric-icon { width: 23px; height: 23px; }
.header-accounts-controls .accounts-metrics p { display: flex; align-items: center; justify-content: space-between; flex: 1; gap: 8px; }
.header-accounts-controls .accounts-metrics strong { color: #fff; font-size: 19px; }
.header-accounts-controls .accounts-metrics small { margin: 0; color: #d4def0; font-size: 9px; }
.app-shell .app-header .profile-switcher { display: grid; gap: 3px; margin: 0; text-shadow: none; }
.app-shell .app-header .profile-switcher > span { color: #d5dfef; font-size: 8px; font-weight: 700; }
.app-shell .app-header .profile-switcher select { width: min(230px, 30vw); height: 30px; border: 1px solid #a0b3d0; background: #303b4d; color: #fff; font-size: 10px; }
.app-shell .app-header .profile-switcher option { background: #252d3a; color: #fff; }
#auditView :is(h2, strong) { color: #f1f5fc; }
#auditView .audit-action { color: #c4d4ef; }
#auditView .audit-item { border-color: #596373; }
#accountsView .account-avatar { border-color: #77879f; background: #3e4c62; color: #eef4ff; }
#accountsView .account-badges span, #accountsView .account-protected, #accountsView .account-status.active { border-color: #7889a3; background: #354257; color: #e8f0ff; }
#accountsView .account-status.inactive { background: #54333e; color: #ffc5cf; }
.dialog :is(h1, h2, h3, h4, h5, h6) { color: #f1f5fc !important; }
.dialog :is(.eyebrow, .section-kicker) { color: #c7d5eb !important; }
.dialog .icon-button { border-color: #8797b0; background: #303b4d; color: #f3f7ff; }
.dialog .account-form-intro > span { background: #354257; color: #e6efff; }
.dialog.dialog-detail .detail-identity-copy > p { border-color: #8292ab; background: #344155; color: #fff; }
.dialog.dialog-detail :is(.detail-section, .detail-item) { border-color: #5f6a7d; }
.dialog.dialog-detail .detail-section { border-left-color: #8196b8; }
.dialog.dialog-detail .detail-identity-copy > span, .dialog.dialog-detail .detail-map-heading span:first-child { color: #c1cfe5; }
.dialog.dialog-detail .detail-item.is-important { border-left-color: #94a9c9; }
.dialog.dialog-detail .coordinate-actions, .dialog.dialog-detail .coordinate-actions > summary { color: #d7e5fc; text-decoration-color: #9ab3d9; }
.dialog.dialog-detail .coordinate-actions > summary::after { color: #d7e5fc; }
.dialog.dialog-detail .coordinate-actions a { border-color: #94a8c8; background: #35455f; color: #f1f6ff; }
.dialog.dialog-detail .coordinate-actions a:hover { background: #4c6386; }
.dialog.dialog-detail :is(.status, .value-badge, .detail-meta-chip) { border-color: #75849c; background: #354257; color: #edf4ff; }

@media (max-width: 760px) {
  .app-shell .header-map-controls { gap: 6px; }
  .app-shell .header-map-controls .map-statistics { gap: 4px; }
  .app-shell .header-map-controls .map-stat-card { display: grid; gap: 3px; padding: 6px; }
  .app-shell .header-map-controls .map-stat-card span { font-size: 8px; }
  .app-shell .header-map-controls .map-stat-card strong { font-size: 17px; }
  .app-shell.map-workspace-active .map-canvas-panel .map-type-chip { min-height: 34px; padding: 4px 6px; font-size: 8px; }
  .app-shell.map-workspace-active .map-canvas-panel .map-type-chip strong { font-size: 15px; }
}

@media (min-width: 761px) {
  body.administration-workspace-active { height: 100dvh; min-height: 0; overflow: hidden; }
  .app-shell.administration-workspace-active { height: 100dvh; min-height: 0; overflow: hidden; }
  .app-shell, .app-shell.inventory-workspace-active, .app-shell.map-workspace-active, .app-shell.administration-workspace-active { --app-header-size: 132px; grid-template-rows: 132px minmax(0, 1fr); }
  .app-shell .app-header, .app-shell.inventory-workspace-active .app-header, .app-shell.map-workspace-active .app-header, .app-shell.administration-workspace-active .app-header { display: grid; height: 132px; min-height: 132px; grid-template-columns: var(--app-sidebar-size) minmax(0, 1fr) auto; grid-template-rows: 78px 54px; padding: 0; }
  .app-shell .app-header .header-brand { grid-column: 1; grid-row: 1 / 3; padding: 12px 18px; height: 132px; }
  .app-shell .app-header .brand-logo { width: 172px; }
  .app-shell .app-header .brand-copy strong { font-size: 10px; }
  .app-shell .app-header .brand-copy small { display: none; }
  .app-shell .app-header .topbar-copy { grid-column: 2; grid-row: 1; padding: 12px 20px 0; }
  .app-shell#appView .app-header .topbar-copy { align-self: start; min-height: 0; padding: 6px 20px 0; }
  .app-shell.inventory-workspace-active .app-header .page-description { display: none; }
  .app-shell .app-header h1 { margin: 3px 0; font-size: 23px; line-height: 1.15; }
  .app-shell .app-header .page-description { max-width: none; font-size: 10px; margin: 3px 0; }
  .app-shell .app-header .eyebrow { font-size: 8px; margin: 0; }
  .app-shell .app-header .header-summary { display: inline-block; margin: 3px 0; padding: 2px 7px; font-size: 9px; }
  .app-shell .app-header .topbar-actions { grid-column: 3; grid-row: 1; padding: 14px 20px; align-self: start; }
  .app-shell .header-workspace-controls { grid-column: 2 / 4; grid-row: 2; padding: 8px 20px 10px; align-self: end; }
  .app-shell .header-workspace-controls .inventory-header-actions { display: flex; justify-content: flex-end; gap: 7px; width: 100%; }
  .app-shell .header-workspace-controls .inventory-header-actions .button { min-height: 33px; padding: 6px 10px; font-size: 10px; }
  .app-shell.administration-workspace-active > .sidebar { height: 100%; position: relative; min-height: 0; top: auto; overflow: hidden; }
  .app-shell.administration-workspace-active .main-column { height: 100%; min-height: 0; overflow: hidden; }
  .app-shell.administration-workspace-active .main-column .content { display: flex; height: 100%; min-height: 0; padding: 14px 18px; overflow: hidden; }
  .app-shell.administration-workspace-active #loadsView:not([hidden]) { display: flex; flex-direction: column; width: 100%; min-width: 0; height: 100%; min-height: 0; gap: 14px; overflow: auto; overscroll-behavior: contain; padding-right: 3px; }
  .app-shell.administration-workspace-active #loadsView > .panel { flex-shrink: 0; }
  .app-shell.administration-workspace-active #configurationView:not([hidden]) { display: flex; flex-direction: column; width: 100%; height: 100%; min-height: 0; overflow: hidden; }
  .app-shell.administration-workspace-active #configurationView > .settings-hero { display: none; }
  .app-shell.administration-workspace-active #configurationView > .settings-workspace:not([hidden]) { display: grid; flex: 1 1 0; min-height: 0; overflow: hidden; grid-template-columns: 218px minmax(0, 1fr); }
  .app-shell.administration-workspace-active .settings-workspace .settings-rail { min-height: 0; overflow: auto; }
  .app-shell.administration-workspace-active .settings-workspace .settings-main { display: flex; flex-direction: column; min-height: 0; overflow: hidden; }
  .app-shell.administration-workspace-active .settings-main-heading, .app-shell.administration-workspace-active .settings-toolbar { flex-shrink: 0; }
  .app-shell.administration-workspace-active .settings-workspace .configuration-table-wrap { flex: 1 1 0; min-height: 0; max-height: none; overflow: auto; }
  .app-shell.administration-workspace-active .settings-workspace .catalog-items { flex: 1 1 0; min-height: 0; overflow: auto; }
  .app-shell.administration-workspace-active #configurationView > :is(#mapSettingsPanel, #appearanceSettingsPanel):not([hidden]) { flex: 1 1 0; min-height: 0; overflow: auto; }
  .app-shell .header-workspace-controls .settings-health { display: none; }
}
@media (max-width: 760px) {
  .app-shell .header-workspace-controls { padding: 4px 12px 12px; }
  .header-settings-controls .settings-health { display: none; }
  .app-shell .header-workspace-controls .inventory-header-actions { display: flex; flex-wrap: wrap; gap: 5px; }
  .app-shell .header-workspace-controls .inventory-header-actions .button { flex: 1 1 140px; font-size: 10px; }
  .app-shell .header-workspace-controls .load-source-navigation { max-width: 100%; }
  .app-shell #configurationView > .settings-hero { display: none; }
}

@media (min-width: 761px) {
  .app-shell.administration-workspace-active #maintenanceView:not([hidden]) { display: flex; flex-direction: column; width: 100%; height: 100%; min-height: 0; gap: 10px; overflow: hidden; }
  .app-shell.administration-workspace-active .maintenance-section-context { flex: 0 0 auto; margin: 0; padding: 2px 4px; color: #ced7e6; font-size: 10px; }
  .app-shell.administration-workspace-active .maintenance-panel { display: flex; flex: 1; flex-direction: column; min-height: 0; overflow: hidden; }
  .app-shell.administration-workspace-active .maintenance-toolbar { flex: 0 0 auto; }
  .app-shell.administration-workspace-active .maintenance-table-wrap { flex: 1; min-height: 0; max-height: none; overflow: auto; }
  .app-shell.administration-workspace-active .maintenance-table thead th { position: sticky; top: 0; z-index: 2; }
  .app-shell.administration-workspace-active #accountsView:not([hidden]) { display: grid; grid-template-rows: minmax(0, 1fr) minmax(0, .68fr); gap: 12px; width: 100%; height: 100%; min-height: 0; overflow: hidden; }
  .app-shell.administration-workspace-active #accountsView > .accounts-panel { display: flex; flex-direction: column; min-height: 0; overflow: hidden; }
  .app-shell.administration-workspace-active #accountsView .accounts-toolbar { flex: 0 0 auto; padding: 12px 16px; }
  .app-shell.administration-workspace-active #accountsView :is(.accounts-list, .analyzer-devices-list) { flex: 1; min-height: 0; overflow: auto; overscroll-behavior: contain; }
  .app-shell.administration-workspace-active #accountsView .account-form-hint { flex: 0 0 auto; margin: 0; padding: 0 16px 7px; }
  .app-shell.administration-workspace-active #auditView:not([hidden]) { display: flex; flex-direction: column; width: 100%; height: 100%; min-height: 0; overflow: hidden; }
  .app-shell.administration-workspace-active #auditView > .panel-heading { flex: 0 0 auto; }
  .app-shell.administration-workspace-active #auditList { flex: 1; min-height: 0; overflow: auto; overscroll-behavior: contain; }
}
@media (max-width: 760px) {
  .header-accounts-controls { flex-wrap: wrap; }
  .header-accounts-controls .accounts-metrics { flex-basis: 100%; gap: 4px; }
  .app-shell .header-accounts-controls .accounts-metrics > div { padding: 5px; }
  .header-accounts-controls .account-metric-icon { display: none; }
  .header-accounts-controls .accounts-metrics p { display: grid; gap: 2px; }
  .header-accounts-controls .accounts-metrics small { font-size: 8px; }
  .header-maintenance-controls { flex-wrap: wrap; overflow: visible; gap: 7px; }
  .header-maintenance-controls .maintenance-metrics { flex: 1 1 100%; order: 2; justify-content: space-between; }
  .app-shell .app-header .topbar-actions { flex-wrap: wrap; }
  .app-shell .app-header .profile-switcher select { width: min(260px, 65vw); }
}
