/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before{box-sizing:border-box;border:0 solid;margin:0;padding:0}::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.collapse{visibility:collapse}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.table{display:table}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.border{border-style:var(--tw-border-style);border-width:1px}.capitalize{text-transform:capitalize}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--font-geist-sans:Inter, "Segoe UI", Roboto, Arial, sans-serif;--font-geist-mono:"SFMono-Regular", Consolas, "Liberation Mono", monospace;--ec-bg-app:#f4f6f8;--ec-bg-surface:#fff;--ec-bg-secondary:#f8fafb;--ec-bg-sidebar:#f7f9fa;--ec-bg-header:#fff;--ec-bg-subtle:#f2f4f7;--ec-bg-hover:#f4f7f8;--ec-border:#dde2e7;--ec-border-subtle:#eaecf0;--ec-text-primary:#17212b;--ec-text-secondary:#475467;--ec-text-muted:#667085;--ec-text-subtle:#98a2b3;--ec-text-disabled:#b7bec8;--ec-primary:#0f817e;--ec-primary-hover:#0a6c69;--ec-primary-soft:#0f817e1a;--ec-success:#239f68;--ec-success-soft:#239f681a;--ec-warning:#c47b13;--ec-warning-soft:#c47b131a;--ec-danger:#d64555;--ec-danger-soft:#d6455517;--ec-info:#3478c7;--ec-info-soft:#3478c717;--ec-status-offline:#98a2b3;--background:var(--ec-bg-app);--background-subtle:var(--ec-bg-subtle);--surface:var(--ec-bg-surface);--surface-raised:var(--ec-bg-surface);--surface-hover:var(--ec-bg-hover);--border:var(--ec-border);--border-soft:var(--ec-border-subtle);--text:var(--ec-text-primary);--text-secondary:var(--ec-text-secondary);--text-muted:var(--ec-text-muted);--primary:var(--ec-primary);--primary-strong:var(--ec-primary-hover);--primary-soft:var(--ec-primary-soft);--success:var(--ec-success);--success-soft:var(--ec-success-soft);--warning:var(--ec-warning);--warning-soft:var(--ec-warning-soft);--danger:var(--ec-danger);--danger-soft:var(--ec-danger-soft);--info:var(--ec-info);--info-soft:var(--ec-info-soft);--unknown:var(--ec-status-offline);--maintenance:var(--ec-info);--shadow:0 8px 24px #17212b14;--sidebar-width:244px;--ec-space-1:4px;--ec-space-2:8px;--ec-space-3:12px;--ec-space-4:16px;--ec-space-5:20px;--ec-space-6:24px;--ec-space-8:32px;--ec-radius-sm:6px;--ec-radius-md:7px;--ec-radius-lg:8px;--ec-shadow-subtle:0 2px 8px #17212b0f}body{line-height:1.45}.ec-card,.ec-panel,.table-toolbar,.entity-kpi-strip,.asset-summary-strip,.stats-grid,.alerts-stats{border-radius:var(--ec-radius-md);box-shadow:none}.ec-panel__header{min-height:52px;padding:var(--ec-space-3) var(--ec-space-4)}.ec-page-header h1{font-size:clamp(22px,1.7vw,24px);line-height:1.2}.ec-page-header p{max-width:820px;font-size:13px;line-height:1.5}.ec-eyebrow{font-size:12px;line-height:1.35}.ec-button{min-height:36px;padding-inline:var(--ec-space-3);border-radius:var(--ec-radius-sm);font-size:12px;line-height:1}.ec-button--link:hover{color:var(--ec-primary-hover);text-decoration:underline}@supports (color:color-mix(in lab, red, red)){.ec-badge.is-danger{border-color:color-mix(in srgb, var(--ec-danger) 28%, var(--ec-border))}}.ec-input,.ec-select,.ec-search-input{border-radius:var(--ec-radius-sm);min-height:36px}.completion-form>label,.settings-fields label{gap:var(--ec-space-2);font-size:12px;line-height:1.35}.ec-table-wrap th{height:40px;padding-inline:var(--ec-space-3);vertical-align:middle;font-size:11px}.ec-table-wrap td,.ec-table-wrap table.is-compact td{height:44px;padding-inline:var(--ec-space-3);vertical-align:middle}.ec-feedback-state>span{border-radius:var(--ec-radius-lg)}.ec-feedback-state h3{font-size:15px}.ec-feedback-state p{font-size:12px}.completion-page,.source-detail-page,.endpoint-detail-page,.asset-detail-page,.tag-detail-page,.alert-detail-page{min-width:0}.entity-alert-summary>button{gap:var(--ec-space-3);width:100%;min-height:52px;padding:var(--ec-space-2) var(--ec-space-3);color:var(--ec-text-secondary);border:1px solid var(--ec-border-subtle);border-radius:var(--ec-radius-sm);background:var(--ec-bg-secondary);text-align:left;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;display:grid}.entity-alert-summary>button strong{color:var(--ec-text-primary);font-size:12px}.entity-alert-summary>button small{color:var(--ec-text-muted);text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:11px;overflow:hidden}.event-timeline__action-separator{margin-inline:var(--ec-space-2);color:var(--ec-text-subtle)}.global-search-shortcuts{justify-content:flex-end;align-items:center;gap:var(--ec-space-3);margin-top:var(--ec-space-2);padding:var(--ec-space-2);border-top:1px solid var(--ec-border-subtle);color:var(--ec-text-muted);font-size:10px;display:flex}.global-search-shortcuts span{align-items:center;gap:3px;display:inline-flex}.global-search-shortcuts kbd{border:1px solid var(--ec-border);min-width:20px;color:var(--ec-text-secondary);background:var(--ec-bg-secondary);font:inherit;text-align:center;border-radius:4px;padding:2px 4px}.event-timeline>li>div{border-radius:var(--ec-radius-md)}.event-timeline .table-link{min-height:32px;padding:0}.integration-service-card footer small{flex-wrap:wrap}.integration-contract-pending{color:var(--ec-text-muted);font-weight:650}.library-card,.library-card__icon,.completion-related-list button,.completion-link-stack button,.completion-entity-link,.completion-callout,.completion-separation-banner,.completion-settings-footer{border-radius:var(--ec-radius-md)}@media (max-width:1440px){:root{--sidebar-width:228px}.app-content{padding:18px 20px 36px}.ec-table-wrap table{min-width:700px}}@media (max-width:1180px){.settings-grid,.completion-card-grid{grid-template-columns:1fr}.ec-table-wrap th.is-tertiary,.ec-table-wrap td.is-tertiary{display:none}.ec-page-header__row{flex-wrap:wrap;align-items:flex-start}.ec-page-header__actions{flex-wrap:wrap}}@media (max-width:1100px){.completion-form,.settings-fields,.settings-fields--three{grid-template-columns:1fr}.completion-form .is-wide,.settings-checkbox{grid-column:1}.ec-table-wrap th.is-secondary,.ec-table-wrap td.is-secondary{display:none}.library-category-strip{grid-template-columns:repeat(3,minmax(130px,1fr))}}@media (max-width:760px){.ec-dialog,.ec-dialog.is-sm,.ec-dialog.is-lg,.ec-drawer{width:100%}.entity-alert-summary>button{grid-template-columns:auto minmax(0,1fr)}.entity-alert-summary>button>.alert-severity,.entity-alert-summary>button>.alert-state{grid-column:2}.library-category-strip{grid-template-columns:repeat(2,minmax(120px,1fr))}}.simplified-device-wizard .guided-integration-steps{grid-template-columns:repeat(3,minmax(0,1fr))}.simplified-device-wizard .form-actions{align-items:center;gap:var(--ec-space-2);flex-wrap:wrap;display:flex}.simplified-device-wizard .device-kind-grid>div>button{width:100%;font-weight:600;line-height:1.4}.simplified-device-wizard .device-kind-grid>div>p{margin:var(--ec-space-2) 0 0;color:var(--ec-text-secondary);font-size:12px;line-height:1.5}.simplified-device-wizard>.ec-panel>details>summary{padding:var(--ec-space-3) var(--ec-space-4);color:var(--ec-text-secondary);cursor:pointer}.guided-integration-panel{min-width:0}.guided-integration-panel code,.guided-integration-panel .detail-list dd{overflow-wrap:anywhere}.guided-integration-panel td small{margin-top:var(--ec-space-1);color:var(--ec-text-secondary);display:block}.guided-integration-panel details>summary{cursor:pointer;padding-block:var(--ec-space-2)}@media (max-width:600px){.guided-integration-steps li{flex-wrap:wrap}.guided-integration-panel .form-actions>button{flex:100%}}.context-selectors{gap:8px}.context-selectors>i{margin:0 2px}.context-selectors label{border-radius:var(--ec-radius-sm);border:1px solid #0000;align-content:center;min-width:156px;min-height:44px;padding:4px 28px 4px 10px;transition:border-color .12s,background .12s}.context-selectors label:hover:not([data-state=loading]):not([data-state=empty]):not([data-state=error]){background:var(--ec-bg-hover)}.context-selectors label:focus-within{border-color:var(--ec-primary);background:var(--ec-bg-surface);box-shadow:0 0 0 2px var(--ec-primary-soft)}.context-selectors label[data-state=error]{border-color:var(--ec-danger)}@supports (color:color-mix(in lab, red, red)){.context-selectors label[data-state=error]{border-color:color-mix(in srgb, var(--ec-danger) 55%, var(--ec-border))}}.context-selectors label[data-state=error]{background:var(--ec-danger-soft)}.context-selectors label[data-state=loading],.context-selectors label[data-state=empty]{opacity:.72}.app-header .context-selectors label>span{color:var(--ec-text-muted);font:700 11px/1.25 var(--font-geist-sans);letter-spacing:.04em;text-transform:none}.app-header .context-selectors select{min-height:24px;color:var(--ec-text-primary);padding-right:0;font-size:12px}.app-header .context-selectors select:disabled{color:var(--ec-text-muted);cursor:not-allowed}.app-header .context-selectors label svg{width:13px;bottom:10px;right:9px}.context-selector-status{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.context-summary-compact{min-width:0;line-height:1.25;display:none}.context-summary-compact strong,.context-summary-compact span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.context-summary-compact strong{color:var(--ec-text-primary);font-size:12px}.context-summary-compact span{color:var(--ec-text-muted);font-size:11px}.header-theme-control{border:1px solid var(--ec-border-subtle);border-radius:var(--ec-radius-sm);background:var(--ec-bg-secondary);align-items:center;gap:2px;padding:2px;display:flex}.header-theme-control button{min-width:32px;height:32px;color:var(--ec-text-muted);background:0 0;border:0;border-radius:5px;justify-content:center;align-items:center;gap:5px;padding:0 8px;font-size:11px;display:inline-flex}.header-theme-control button:hover{color:var(--ec-text-primary);background:var(--ec-bg-hover)}.header-theme-control button[aria-pressed=true]{color:var(--ec-primary);background:var(--ec-bg-surface);box-shadow:var(--ec-shadow-subtle)}.header-theme-control svg{width:14px;height:14px}.ec-drawer>header p{color:var(--ec-text-muted);margin:4px 0 0;font-size:12px;line-height:1.5}.dashboard-grid-container .dashboard-panel__header p,.dashboard-grid-container .dashboard-panel__stale.is-visible,.dashboard-grid-container .dashboard-panel-stale-notice{font-size:11px}.dashboard-grid-container .dashboard-panel__actions button{width:32px;height:32px}.dashboard-panel__menu{z-index:120;border:1px solid var(--ec-border);border-radius:var(--ec-radius-md);background:var(--ec-bg-surface);gap:2px;width:224px;max-height:calc(100vh - 16px);padding:5px;display:grid;position:fixed;overflow-y:auto;box-shadow:0 12px 30px #17212b2e}.dashboard-panel__menu button,.dashboard-panel__menu a{width:100%;min-height:36px;color:var(--ec-text-secondary);text-align:left;background:0 0;border:0;border-radius:5px;align-items:center;gap:9px;padding:7px 9px;font-size:12px;text-decoration:none;display:flex}:is(.dashboard-panel__menu button:hover,.dashboard-panel__menu a:hover,.dashboard-panel__menu button:focus-visible,.dashboard-panel__menu a:focus-visible){color:var(--ec-text-primary);background:var(--ec-bg-hover)}.dashboard-panel__menu .is-danger{color:var(--ec-danger)}.dashboard-panel__action-feedback{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.dashboard-display-control,.operational-display-control{min-width:154px;color:var(--ec-text-muted);gap:4px;font-size:11px;font-weight:650;display:grid}.dashboard-display-control>span{align-items:center;gap:5px;display:flex}.dashboard-display-control .ec-select,.operational-display-control .ec-select{min-height:32px;color:var(--ec-text-secondary);font-size:12px}:is(.operational-dashboards-page,.operational-dashboard-tv) .operational-dashboard-toolbar>label>span,:is(.operational-dashboards-page,.operational-dashboard-tv) .operational-system-picker small,:is(.operational-dashboards-page,.operational-dashboard-tv) .operational-dashboard-section>header small{color:var(--ec-text-muted);font-size:11px}:is(.operational-dashboards-page,.operational-dashboard-tv) .operational-system-picker{min-height:44px}:is(.operational-dashboards-page,.operational-dashboard-tv) .operational-system-picker strong,:is(.operational-dashboards-page,.operational-dashboard-tv) .operational-dashboard-section>header p,:is(.operational-dashboards-page,.operational-dashboard-tv) .operational-dashboard-placeholder,.operational-dashboards-page .operational-system-options small{font-size:12px}.operational-dashboards-page .operational-dashboard-toolbar__actions{align-items:end}.operational-dashboards-page .operational-system-options{gap:7px}.operational-dashboards-page .operational-system-options label{min-height:44px}.operational-dashboards-page .operational-system-options__all{border-bottom:1px solid var(--ec-border-subtle);align-items:center;gap:8px;padding-bottom:8px;display:flex}.operational-dashboards-page .operational-system-options__all label{border-color:var(--ec-primary);background:var(--ec-primary-soft);flex:1}.operational-dashboards-page .operational-system-options__all>button{border:1px solid var(--ec-border);border-radius:var(--ec-radius-sm);min-height:32px;color:var(--ec-primary);background:var(--ec-bg-surface);padding:0 10px;font-size:12px}.overview-page .overview-shortcuts button{grid-template-columns:28px minmax(0,1fr);gap:2px 10px;min-height:68px}.overview-page .overview-shortcuts svg{grid-area:1/1/3;width:20px;height:20px}.overview-page .overview-shortcuts span,.overview-page .overview-shortcuts strong{grid-column:2}.overview-page .overview-shortcuts span{font-size:11px}.overview-page .overview-shortcuts strong,.settings-general-page .theme-choice-grid button{font-size:12px}.settings-general-page .theme-choice-grid small{font-size:11px;line-height:1.4}.settings-general-page .theme-choice-grid button{min-height:44px}@media (max-width:1400px){.header-theme-control button span{display:none}.header-theme-control button{padding-inline:6px}.global-search{width:150px}.operational-dashboards-page .operational-dashboard-toolbar{flex-wrap:wrap}}@media (max-width:1120px){.app-header .context-selectors>label,.app-header .context-selectors>i{display:none}.app-header .context-summary-compact{width:min(180px,24vw);display:grid}.app-header .global-search{display:none}.app-header .header-actions{min-width:0}.operational-dashboards-page .operational-dashboard-toolbar{align-items:end;position:static}.operational-dashboards-page .operational-dashboard-toolbar__actions{margin-left:0}.overview-page .overview-shortcuts{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (pointer:coarse){.header-theme-control button,.dashboard-grid-container .dashboard-panel__actions button,.dashboard-panel__menu button,.dashboard-panel__menu a,.dashboard-display-control .ec-select,.operational-display-control .ec-select,.operational-dashboards-page .operational-system-options__all>button{min-width:44px;min-height:44px}}@media (prefers-reduced-motion:reduce){.context-selectors label,.header-theme-control button,.dashboard-panel__menu{transition:none}}main.operational-dashboard-tv>header small{font-size:11px}.documents-page,.document-form-page,.document-detail-page{gap:18px;min-width:0;display:grid}.documents-mode-strip{border:1px solid var(--ec-border);border-radius:var(--ec-radius-md);background:var(--ec-bg-surface);align-items:center;gap:12px;min-height:68px;padding:12px 16px;display:flex}.documents-mode-strip__icon,.documents-title-cell>i{width:36px;height:36px;color:var(--ec-primary);background:var(--ec-primary-soft);border-radius:7px;flex:none;place-items:center;display:grid}.documents-mode-strip__icon svg,.documents-title-cell>i svg{width:18px}.documents-mode-strip>div:nth-child(2){flex:1;display:grid}.documents-mode-strip strong,.documents-mode-strip span{font-size:12px}.documents-mode-strip span{color:var(--ec-text-muted)}.documents-filterbar{border:1px solid var(--ec-border);border-radius:var(--ec-radius-md);background:var(--ec-bg-surface);grid-template-columns:minmax(280px,1fr) repeat(3,minmax(160px,auto));gap:10px;padding:12px;display:grid}.documents-search{min-height:36px;color:var(--ec-text-muted);border:1px solid var(--ec-border);border-radius:var(--ec-radius-sm);background:var(--ec-bg-secondary);align-items:center;gap:8px;padding:0 11px;display:flex}.documents-search input{width:100%;color:var(--ec-text-primary);background:0 0;border:0;outline:0}.documents-context-filter{color:var(--ec-text-secondary);border-left:3px solid var(--ec-info);background:var(--ec-info-soft);align-items:center;gap:5px;padding:9px 12px;font-size:12px;display:flex}.documents-context-filter a{color:var(--ec-primary);margin-left:auto;font-weight:700}.documents-table-card{border:1px solid var(--ec-border);border-radius:var(--ec-radius-md);background:var(--ec-bg-surface);overflow-x:auto}.documents-table{border-collapse:collapse;width:100%;min-width:980px;font-size:12px}.documents-table th{color:var(--ec-text-muted);border-bottom:1px solid var(--ec-border);background:var(--ec-bg-secondary);text-align:left;text-transform:uppercase;letter-spacing:.035em;padding:10px 12px;font-size:11px;font-weight:700}.documents-table td{color:var(--ec-text-secondary);border-bottom:1px solid var(--ec-border-subtle);padding:12px}.documents-table tbody tr{cursor:pointer}.documents-table tbody tr:hover,.documents-table tbody tr:focus{background:var(--ec-bg-hover)}.documents-title-cell{align-items:center;gap:10px;min-width:300px;display:flex}.documents-title-cell>span{display:grid}.documents-title-cell strong{color:var(--ec-text-primary)}.documents-title-cell small{color:var(--ec-text-muted);margin-top:2px}.document-form{grid-template-columns:minmax(0,1fr) 310px;gap:16px;display:grid}.document-form__main,.document-form__relations,.document-info-card,.document-description-card,.document-versions-card,.document-relations-card,.document-danger-zone{border:1px solid var(--ec-border);border-radius:var(--ec-radius-md);background:var(--ec-bg-surface);padding:18px}.document-file-drop{color:var(--ec-text-secondary);border:1px dashed var(--ec-primary);justify-items:center;gap:5px;margin-bottom:18px;padding:26px;display:grid;position:relative}@supports (color:color-mix(in lab, red, red)){.document-file-drop{border:1px dashed color-mix(in srgb, var(--ec-primary) 55%, var(--ec-border))}}.document-file-drop{border-radius:var(--ec-radius-md);background:var(--ec-primary-soft);cursor:pointer}.document-file-drop:hover{border-color:var(--ec-primary)}.document-file-drop>svg{width:26px;height:26px;color:var(--ec-primary)}.document-file-drop>span{color:var(--ec-text-muted);font-size:12px}.document-file-drop input,.document-version-file input{opacity:0;width:1px;height:1px;position:absolute}.document-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.document-form-grid>label,.document-version-form>label,.document-qr-options>label{color:var(--ec-text-secondary);gap:6px;font-size:12px;font-weight:700;display:grid}.document-form-grid>label.is-wide{grid-column:1/-1}.document-form-grid textarea,.document-version-form textarea{resize:vertical;width:100%;padding:10px}.document-form__relations h2,.document-versions-card h2,.document-relations-card h2{color:var(--ec-text-primary);margin:3px 0 5px;font-size:16px}.document-form__relations>p,.document-relations-card header p{color:var(--ec-text-muted);margin:0 0 14px;font-size:12px}.document-relation-check,.document-relations-editor>label{color:var(--ec-text-secondary);border-bottom:1px solid var(--ec-border-subtle);cursor:pointer;align-items:center;gap:9px;padding:9px 0;display:flex}.document-relation-check input,.document-relations-editor input{accent-color:var(--ec-primary)}.document-relation-check span,.document-relations-editor label span{display:grid}.document-relation-check strong,.document-relations-editor label strong{font-size:12px}.document-relation-check small,.document-relations-editor label small{color:var(--ec-text-muted);text-transform:uppercase;font-size:10px}.document-form__actions{grid-column:1/-1;justify-content:flex-end;gap:8px;display:flex}.document-form-error{color:var(--ec-danger);border-radius:var(--ec-radius-sm);background:var(--ec-danger-soft);grid-column:1/-1;align-items:center;gap:7px;margin:0;padding:10px 12px;font-size:12px;display:flex}.document-form-error svg{width:16px}.document-duplicate-dialog{text-align:center;justify-items:center;gap:12px;display:grid}.document-duplicate-dialog>svg{color:var(--ec-warning)}.document-duplicate-dialog>div,.document-version-form footer,.document-relations-editor footer,.document-qr-actions{justify-content:flex-end;gap:8px;display:flex}.document-detail-status,.document-detail-actions,.document-file-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.document-tabs{border:1px solid var(--ec-border);border-radius:var(--ec-radius-md);background:var(--ec-bg-surface);gap:3px;padding:4px;display:flex;overflow-x:auto}.document-tabs button{min-height:36px;color:var(--ec-text-secondary);border-radius:var(--ec-radius-sm);white-space:nowrap;background:0 0;border:0;align-items:center;gap:7px;padding:0 13px;font-size:12px;font-weight:700;display:flex}.document-tabs button svg{width:15px}.document-tabs button:hover,.document-tabs button.is-active{color:var(--ec-primary);background:var(--ec-primary-soft)}.document-historical-banner,.document-pdf-context{color:var(--ec-warning);border:1px solid var(--ec-warning);align-items:center;gap:10px;padding:10px 12px;display:flex}@supports (color:color-mix(in lab, red, red)){.document-historical-banner,.document-pdf-context{border:1px solid color-mix(in srgb, var(--ec-warning) 30%, var(--ec-border))}}.document-historical-banner,.document-pdf-context{border-radius:var(--ec-radius-sm);background:var(--ec-warning-soft);font-size:12px}.document-historical-banner span,.document-pdf-context>span{flex:1}.document-info-layout{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.document-info-card dl{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:14px 0 0;display:grid}.document-info-card dl>div{min-width:0}.document-info-card dt,.document-info-card dd{margin:0}.document-info-card dt{color:var(--ec-text-muted);font-size:11px}.document-info-card dd{color:var(--ec-text-primary);text-overflow:ellipsis;margin-top:3px;font-size:12px;font-weight:700;overflow:hidden}.document-description-card{grid-column:1/-1}.document-description-card>p{min-height:42px;color:var(--ec-text-secondary);font-size:13px}.document-pdf-section{min-width:0}.document-pdf-context{color:var(--ec-text-secondary);border-color:var(--ec-border);background:var(--ec-bg-surface);margin-bottom:8px}.pdf-viewer{color:#dbe6eb;border-radius:var(--ec-radius-md);background:#172a34;border:1px solid #263d49;min-width:0;overflow:hidden}.pdf-viewer:-webkit-full-screen{border:0;border-radius:0;grid-template-rows:auto auto 1fr;display:grid}.pdf-viewer:fullscreen{border:0;border-radius:0;grid-template-rows:auto auto 1fr;display:grid}.pdf-viewer-toolbar{background:#1c323d;border-bottom:1px solid #314957;justify-content:space-between;align-items:center;gap:8px;min-height:48px;padding:6px 9px;display:flex}.pdf-toolbar-group{align-items:center;gap:4px;display:flex}.pdf-toolbar-group:first-child{min-width:160px;max-width:260px}.pdf-toolbar-group strong{text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.pdf-toolbar-group button{color:#dbe6eb;background:0 0;border:1px solid #0000;border-radius:5px;place-items:center;min-width:30px;height:30px;padding:0 7px;font-size:10px;font-weight:800;display:grid}.pdf-toolbar-group button:hover,.pdf-toolbar-group button.is-active{color:#fff;background:#294653;border-color:#426170}.pdf-toolbar-group button:disabled{opacity:.35}.pdf-toolbar-group button svg{width:15px}.pdf-toolbar-group label{color:#a9bbc3;align-items:center;gap:4px;font-size:11px;display:flex}.pdf-toolbar-group label input{color:#fff;text-align:center;background:#12242d;border:1px solid #426170;border-radius:4px;width:40px;height:28px}.pdf-zoom-label{min-width:58px!important}.pdf-searchbar{background:#172a34;border-bottom:1px solid #314957;align-items:center;gap:8px;min-height:44px;padding:6px 10px;display:flex}.pdf-searchbar>svg{color:#8ea5af;width:15px}.pdf-searchbar input{color:#edf4f6;background:#10232c;border:1px solid #426170;border-radius:5px;outline:0;flex:1;min-width:150px;height:30px;padding:0 9px}.pdf-searchbar>span{color:#a9bbc3;font-size:10px}.pdf-viewer-body{grid-template-columns:auto minmax(0,1fr);height:min(720px,100vh - 295px);min-height:480px;display:grid}.pdf-viewer:-webkit-full-screen .pdf-viewer-body{height:auto;min-height:0}.pdf-viewer:fullscreen .pdf-viewer-body{height:auto;min-height:0}.pdf-thumbnails{background:#142630;border-right:1px solid #314957;width:156px;padding:10px;overflow-y:auto}.pdf-thumbnails button{color:#a9bbc3;background:0 0;border:1px solid #0000;border-radius:5px;justify-items:center;width:100%;margin:0 0 10px;padding:6px;display:grid}.pdf-thumbnails button:hover,.pdf-thumbnails button.is-active{color:#fff;background:#203945;border-color:#20bbb5}.pdf-thumbnails canvas{background:#fff;max-width:100%;min-height:80px;display:block;box-shadow:0 2px 8px #0005}.pdf-thumbnails span{margin-top:5px;font-size:10px}.pdf-stage{background:#30444f;padding:28px;overflow:auto}.pdf-page-shell{background:#fff;width:max-content;min-width:200px;min-height:240px;margin:0 auto;position:relative;box-shadow:0 6px 24px #0008}.pdf-page-shell canvas{display:block}.pdf-text-layer{line-height:1;position:absolute;inset:0;overflow:hidden}.pdf-text-layer span{color:#0000;white-space:pre;transform-origin:0 0;cursor:text;position:absolute}.pdf-text-layer ::selection,.pdf-text-layer span::selection{color:#0000;background:#2e91ff59}.pdf-rendering{color:#253b45;background:#ffffffe8;border-radius:5px;padding:6px 10px;font-size:11px;position:absolute;top:12px;left:50%;transform:translate(-50%)}.pdf-viewer-feedback{border:1px solid var(--ec-border);border-radius:var(--ec-radius-md);background:var(--ec-bg-surface);min-height:480px;padding:30px}.document-versions-card>header,.document-relations-card>header,.document-danger-zone{justify-content:space-between;align-items:center;gap:12px;display:flex}.document-version-timeline{gap:8px;margin-top:16px;display:grid}.document-version-timeline article{border:1px solid var(--ec-border-subtle);border-radius:var(--ec-radius-sm);background:var(--ec-bg-secondary);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:14px;display:grid}.document-version-timeline article.is-current{border-color:var(--ec-success)}@supports (color:color-mix(in lab, red, red)){.document-version-timeline article.is-current{border-color:color-mix(in srgb, var(--ec-success) 36%, var(--ec-border))}}.document-version-timeline article.is-current{background:var(--ec-success-soft)}.document-version-marker{width:34px;height:34px;color:var(--ec-primary);background:var(--ec-primary-soft);border-radius:50%;place-items:center;display:grid}.document-version-marker svg{width:16px}.document-version-timeline article>div{gap:4px;min-width:0;display:grid}.document-version-timeline article>div>strong{color:var(--ec-text-primary);align-items:center;gap:8px;display:flex}.document-version-timeline small,.document-version-timeline p,.document-version-timeline code{color:var(--ec-text-muted);margin:0;font-size:11px}.document-version-timeline aside{gap:6px;display:flex}.document-relations-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:16px;display:grid}.document-relations-grid article{border:1px solid var(--ec-border-subtle);border-radius:var(--ec-radius-sm);background:var(--ec-bg-secondary);align-items:center;gap:10px;min-width:0;padding:13px;display:flex}.document-relations-grid article>span{width:32px;height:32px;color:var(--ec-primary);background:var(--ec-primary-soft);border-radius:6px;place-items:center;display:grid}.document-relations-grid article>div{min-width:0;display:grid}.document-relations-grid small,.document-relations-grid code{color:var(--ec-text-muted);text-overflow:ellipsis;font-size:10px;overflow:hidden}.document-relations-grid strong{color:var(--ec-text-primary);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.document-relations-editor{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 22px;margin-top:14px;display:grid}.document-relations-editor footer{grid-column:1/-1;margin-top:14px}.document-danger-zone{color:var(--ec-text-secondary);border-color:var(--ec-danger)}@supports (color:color-mix(in lab, red, red)){.document-danger-zone{border-color:color-mix(in srgb, var(--ec-danger) 22%, var(--ec-border))}}.document-danger-zone>div{font-size:12px;display:grid}.document-danger-zone strong{color:var(--ec-text-primary)}.document-version-form{gap:14px;display:grid}.document-version-file{border:1px dashed var(--ec-border);border-radius:var(--ec-radius-sm);background:var(--ec-bg-secondary);cursor:pointer;align-items:center;gap:10px;padding:14px;position:relative;display:flex!important}.document-version-file>span{display:grid}.document-version-file svg{color:var(--ec-primary)}.document-duplicate-inline{color:var(--ec-warning);border-radius:var(--ec-radius-sm);background:var(--ec-warning-soft);grid-template-columns:auto 1fr auto;align-items:center;gap:8px;padding:10px;font-size:11px;display:grid}.entity-documents-actions{gap:6px;display:flex}.entity-documents-actions a,.entity-documents-actions button{color:var(--ec-primary);background:0 0;border:0;align-items:center;gap:5px;font-size:11px;font-weight:700;display:flex}.entity-documents-actions svg{width:14px}.entity-documents-list{gap:7px;display:grid}.entity-documents-list>a{color:var(--ec-text-secondary);border:1px solid var(--ec-border-subtle);border-radius:var(--ec-radius-sm);background:var(--ec-bg-secondary);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px;display:grid}.entity-documents-list>a:hover{border-color:var(--ec-primary)}.entity-documents-list>a>span{width:32px;height:32px;color:var(--ec-primary);background:var(--ec-primary-soft);border-radius:6px;place-items:center;display:grid}.entity-documents-list>a>span svg{width:15px}.entity-documents-list>a>div{display:grid}.entity-documents-list small{color:var(--ec-text-muted);font-size:10px}.document-qr-layout{grid-template-columns:minmax(260px,.85fr) minmax(280px,1.15fr);gap:20px;display:grid}.document-qr-print{color:#18303b;text-align:center;background:#fff;border:1px solid #d9e3e7;border-radius:8px;align-content:center;justify-items:center;min-height:420px;padding:24px;display:grid}.document-qr-print>header{align-items:center;gap:9px;margin-bottom:14px;display:flex}.document-qr-print>header>span{color:#18aaa6;background:#e7f8f7;border-radius:7px;place-items:center;width:35px;height:35px;display:grid}.document-qr-print>header>div{text-align:left;display:grid}.document-qr-print>header small{color:#657985;text-transform:uppercase;font-size:9px}.document-qr-code{color:#657985;border:1px solid #d9e3e7;border-radius:6px;place-items:center;width:220px;height:220px;display:grid}.document-qr-code img{width:100%;height:100%}.document-qr-print h3{margin:14px 0 4px;font-size:15px}.document-qr-print p,.document-qr-print>small{color:#657985;margin:0;font-size:10px}.document-qr-options{align-content:start;gap:16px;display:grid}.document-qr-options>div:not(.document-qr-actions){color:var(--ec-text-secondary);gap:6px;font-size:12px;font-weight:700;display:grid}.document-qr-options code{overflow-wrap:anywhere;color:var(--ec-text-secondary);background:var(--ec-bg-secondary);border-radius:5px;padding:9px;font-size:10px}.document-local-warning{color:var(--ec-warning);border-left:3px solid var(--ec-warning);background:var(--ec-warning-soft);margin:0;padding:10px;font-size:11px}.document-local-warning strong{display:block}@media (max-width:1180px){.documents-filterbar{grid-template-columns:minmax(240px,1fr) repeat(3,minmax(135px,auto))}.pdf-viewer-toolbar{flex-wrap:wrap}.pdf-viewer-body{height:600px}.document-relations-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:900px){.documents-filterbar,.document-form,.document-info-layout,.document-qr-layout{grid-template-columns:1fr}.document-form__actions{grid-column:1}.pdf-thumbnails{width:120px}}@media (max-width:680px){.document-form-grid,.document-info-card dl,.document-relations-grid,.document-relations-editor{grid-template-columns:1fr}.document-form-grid>label.is-wide,.document-relations-editor footer{grid-column:1}.document-version-timeline article{grid-template-columns:auto 1fr}.document-version-timeline aside{grid-column:2}.pdf-viewer-body{grid-template-columns:1fr}.pdf-thumbnails{display:none}.document-historical-banner,.document-versions-card>header,.document-relations-card>header,.document-danger-zone{flex-direction:column;align-items:flex-start}}@media print{.ec-overlay .ec-dialog>header,.ec-overlay .document-qr-options{display:none!important}body:has(.document-qr-print)>:not(.ec-overlay){display:none!important}.ec-overlay,.ec-overlay .ec-dialog,.ec-overlay .ec-dialog__body,.document-qr-layout{width:auto!important;max-width:none!important;box-shadow:none!important;background:#fff!important;border:0!important;margin:0!important;padding:0!important;display:block!important;position:static!important}.document-qr-print{width:95mm;min-height:125mm;margin:10mm auto}}.sidebar-group-toggle{width:100%;height:30px;color:var(--ec-text-subtle);letter-spacing:.08em;background:0 0;border:0;justify-content:space-between;align-items:center;margin:10px 0 4px;padding:0 10px;font-size:10px;font-weight:700;display:flex}.sidebar-group-toggle svg{width:13px;transition:transform .14s}.sidebar-group-toggle[aria-expanded=false] svg{transform:rotate(-90deg)}.sidebar-collapsed .sidebar-group-toggle{pointer-events:none;justify-content:center;height:14px;margin:8px 0 2px;padding:0}.sidebar-collapsed .sidebar-group-toggle span,.sidebar-collapsed .sidebar-group-toggle svg{display:none}.sidebar-collapsed .sidebar-group-toggle:after{content:"";background:var(--ec-border);width:18px;height:1px}.ia-hub-tabs{border:1px solid var(--ec-border);background:var(--ec-bg-surface);border-radius:7px;align-items:center;gap:4px;margin:0 0 18px;padding:4px;display:flex;overflow-x:auto}.ia-hub-tabs a{min-height:34px;color:var(--ec-text-muted);white-space:nowrap;border-radius:5px;align-items:center;padding:0 13px;font-size:12px;font-weight:600;text-decoration:none;display:flex}.ia-hub-tabs a:hover,.ia-hub-tabs a.is-active,.ia-hub-tabs a.active{color:var(--ec-primary);background:var(--ec-primary-soft)}.module-settings{gap:16px;display:grid}.module-profile-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;display:grid}.module-profile-grid>button{text-align:left;border:1px solid var(--ec-border);background:var(--ec-bg-secondary);min-height:148px;color:var(--ec-text-primary);border-radius:7px;grid-template-rows:auto auto 1fr auto;justify-items:start;gap:7px;padding:14px;display:grid}.module-profile-grid>button[aria-pressed=true]{border-color:var(--ec-primary);background:var(--ec-primary-soft);box-shadow:inset 0 0 0 1px var(--ec-primary)}.module-profile-grid>button:disabled{opacity:1}.module-profile-grid svg{width:18px;color:var(--ec-primary)}.module-profile-grid small,.module-profile-grid em{color:var(--ec-text-muted);font-size:11px;font-style:normal;line-height:1.45}.module-toggle-list{border:1px solid var(--ec-border-subtle);background:var(--ec-border-subtle);border-radius:6px;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;display:grid;overflow:hidden}.module-toggle-list>label{background:var(--ec-bg-surface);align-items:center;gap:12px;min-height:68px;padding:12px;display:flex}.module-toggle-list>label>span{flex:1;min-width:0}.module-toggle-list strong,.module-toggle-list small{display:block}.module-toggle-list small{color:var(--ec-text-muted);margin-top:3px;font-size:10px}.module-toggle-list input[role=switch]{width:34px;height:18px;accent-color:var(--ec-primary)}.module-disabled-page{min-height:calc(100vh - 150px)}.overview-page--simplified .domain-stats-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.overview-page--simplified>.systems-panel{margin-top:16px}.overview-domain-boundary{color:var(--ec-text-subtle);text-align:right;margin:8px 0 0;font-size:10px}.overview-chart-grid--simplified{grid-template-columns:1fr}.overview-chart-grid--simplified .ec-panel__body{min-height:290px}.operational-dashboards-page,.operational-dashboard-tv{min-width:0}.operational-dashboard-toolbar{z-index:18;border:1px solid var(--ec-border);background:var(--ec-bg-surface);border-radius:7px;align-items:end;gap:12px;min-height:58px;margin-bottom:16px;padding:9px 10px;display:flex;position:sticky;top:68px}@supports (color:color-mix(in lab, red, red)){.operational-dashboard-toolbar{background:color-mix(in srgb, var(--ec-bg-surface) 96%, transparent)}}.operational-dashboard-toolbar>label{gap:3px;display:grid}.operational-dashboard-toolbar>label>span,.operational-system-picker small{color:var(--ec-text-subtle);text-transform:uppercase;font-size:9px;font-weight:700}.operational-system-picker{border:1px solid var(--ec-border);background:var(--ec-bg-secondary);min-width:240px;min-height:39px;color:var(--ec-text-primary);text-align:left;border-radius:6px;align-items:center;gap:9px;padding:5px 10px;display:flex}.operational-system-picker svg{width:16px;color:var(--ec-primary)}.operational-system-picker span,.operational-system-picker small,.operational-system-picker strong{display:block}.operational-system-picker strong{text-overflow:ellipsis;white-space:nowrap;max-width:205px;font-size:11px;overflow:hidden}.operational-dashboard-toolbar__actions{gap:6px;margin-left:auto;display:flex}.operational-dashboard-stack{gap:18px;display:grid}.operational-dashboard-section{border:1px solid var(--ec-border);background:var(--ec-bg-surface);border-radius:8px;min-height:390px;padding:13px}.operational-dashboard-section>header{border-bottom:1px solid var(--ec-border-subtle);justify-content:space-between;align-items:center;min-height:54px;margin:-13px -13px 10px;padding:10px 14px;display:flex}.operational-dashboard-section>header small{color:var(--ec-primary);font-size:9px;font-weight:700}.operational-dashboard-section>header h2{margin:2px 0;font-size:17px}.operational-dashboard-section>header p,.operational-dashboard-section>header a{color:var(--ec-text-muted);font-size:11px}.operational-dashboard-placeholder{min-height:330px;color:var(--ec-text-muted);background:var(--ec-bg-secondary);place-items:center;display:grid}.operational-system-options{gap:5px;display:grid}.operational-system-options label{border:1px solid var(--ec-border-subtle);border-radius:6px;align-items:center;gap:10px;padding:10px;display:flex}.operational-system-options strong,.operational-system-options small{display:block}.operational-system-options small{color:var(--ec-text-muted);margin-top:2px}.videowall-reference-summary{border:1px solid var(--ec-border);background:var(--ec-bg-secondary);border-radius:7px;align-items:center;gap:12px;padding:14px;display:flex}.videowall-reference-summary>svg{color:var(--ec-primary)}.videowall-reference-summary div{flex:1}.videowall-reference-summary p{color:var(--ec-text-muted);margin:4px 0 0}.videowall-reference-summary button{color:var(--ec-text-muted);background:0 0;border:0}.operational-dashboard-tv{background:var(--ec-bg-app);min-height:100vh;padding:14px}.operational-dashboard-tv>header{z-index:20;border:1px solid var(--ec-border);background:var(--ec-bg-header);border-radius:7px;justify-content:space-between;align-items:center;gap:16px;min-height:58px;margin-bottom:12px;padding:9px 14px;display:flex;position:sticky;top:0}.operational-dashboard-tv>header small,.operational-dashboard-tv>header strong{display:block}.operational-dashboard-tv>header small{color:var(--ec-primary);font-size:9px}.operational-dashboard-tv>header>div:last-child{align-items:center;gap:12px;display:flex}.operational-dashboard-tv a{color:var(--ec-primary)}.device-summary-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:16px;display:grid}.device-summary-grid button{border:1px solid var(--ec-border);background:var(--ec-bg-surface);min-height:104px;color:var(--ec-text-primary);text-align:left;border-radius:7px;grid-template-columns:auto 1fr;align-items:center;gap:4px 10px;padding:14px;display:grid}.device-summary-grid svg{color:var(--ec-primary);grid-row:span 2}.device-summary-grid strong{font-size:24px}.device-summary-grid span{color:var(--ec-text-muted);font-size:11px}.ia-data-list{display:grid}.ia-data-list>button{border:0;border-bottom:1px solid var(--ec-border-subtle);min-height:58px;color:var(--ec-text-primary);text-align:left;background:0 0;align-items:center;gap:11px;padding:9px 4px;display:flex}.ia-data-list>button>span:nth-child(2){flex:1;min-width:0}.ia-data-list strong,.ia-data-list small{display:block}.ia-data-list small{color:var(--ec-text-muted);margin-top:3px;font-size:10px}.ia-data-list__icon{background:var(--ec-primary-soft);width:34px;height:34px;color:var(--ec-primary);border-radius:6px;place-items:center;display:grid}.ia-data-list__icon svg{width:16px}.device-library-hub{grid-template-columns:1fr .7fr;gap:16px;display:grid}.device-technology-cloud{flex-wrap:wrap;gap:6px;display:flex}.device-technology-cloud span{border:1px solid var(--ec-border);color:var(--ec-text-secondary);background:var(--ec-bg-secondary);border-radius:5px;padding:6px 8px;font-size:10px}.device-wizard-steps{border:1px solid var(--ec-border);background:var(--ec-bg-surface);border-radius:7px;grid-template-columns:repeat(6,1fr);margin:0 0 16px;padding:0;list-style:none;display:grid}.device-wizard-steps li{min-height:56px;color:var(--ec-text-muted);border-right:1px solid var(--ec-border-subtle);align-items:center;gap:7px;padding:8px 10px;font-size:10px;display:flex;position:relative}.device-wizard-steps li:last-child{border-right:0}.device-wizard-steps li>span{background:var(--ec-bg-secondary);border-radius:50%;place-items:center;width:22px;height:22px;display:grid}.device-wizard-steps li svg{width:13px}.device-wizard-steps li.is-active,.device-wizard-steps li.is-complete{color:var(--ec-primary)}.device-wizard-steps li.is-active>span,.device-wizard-steps li.is-complete>span{background:var(--ec-primary-soft)}.device-kind-step,.device-technology-step,.device-data-path-step,.device-tag-step,.device-review-step{gap:16px;display:grid}.device-kind-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.device-kind-grid button,.data-path-options button{border:1px solid var(--ec-border);background:var(--ec-bg-secondary);min-height:84px;color:var(--ec-text-primary);text-align:left;border-radius:7px;justify-items:start;gap:6px;padding:12px;display:grid}.device-kind-grid button[aria-pressed=true],.data-path-options button[aria-pressed=true]{border-color:var(--ec-primary);background:var(--ec-primary-soft)}.device-kind-grid svg,.data-path-options svg{width:18px;color:var(--ec-primary)}.device-kind-step>label,.device-technology-step>label,.device-data-path-step>label,.device-wizard-form-grid>label{color:var(--ec-text-secondary);gap:6px;font-size:11px;display:grid}.device-wizard-form-grid,.data-path-options{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.device-wizard-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.data-path-options button span{color:var(--ec-text-muted);font-size:10px;line-height:1.4}.technology-explanation{border:1px solid var(--ec-border);background:var(--ec-bg-secondary);border-radius:7px;gap:12px;padding:14px;display:flex}.technology-explanation>svg{color:var(--ec-primary)}.technology-explanation p,.technology-explanation small{color:var(--ec-text-muted)}.device-tag-row{grid-template-columns:auto 1.3fr 1fr .5fr;align-items:center;gap:8px;display:grid}.device-review-step dl{border:1px solid var(--ec-border-subtle);background:var(--ec-border-subtle);border-radius:7px;grid-template-columns:repeat(3,1fr);gap:1px;margin:0;display:grid;overflow:hidden}.device-review-step dl div{background:var(--ec-bg-secondary);min-height:66px;padding:10px}.device-review-step dt{color:var(--ec-text-muted);font-size:10px}.device-review-step dd{margin:5px 0 0;font-weight:650}.domain-model-flow{color:var(--ec-primary);background:var(--ec-primary-soft);border-radius:7px;justify-content:center;align-items:center;gap:8px;padding:14px;font-size:11px;font-weight:700;display:flex}.domain-model-flow svg{width:14px}.device-wizard-actions{border-top:1px solid var(--ec-border-subtle);justify-content:space-between;margin-top:18px;padding-top:12px;display:flex}@media (max-width:1180px){.module-profile-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.module-toggle-list{grid-template-columns:repeat(2,minmax(0,1fr))}.overview-page--simplified .domain-stats-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.operational-dashboard-toolbar{flex-wrap:wrap;align-items:stretch;position:static}.operational-dashboard-toolbar__actions{width:100%;margin-left:0}}@media (max-width:900px){.module-profile-grid,.module-toggle-list,.device-summary-grid,.device-kind-grid,.device-wizard-form-grid,.data-path-options,.device-review-step dl,.device-library-hub{grid-template-columns:1fr 1fr}.device-wizard-steps{grid-template-columns:repeat(3,1fr)}.device-tag-row{grid-template-columns:auto 1fr}}@media (max-width:620px){.module-profile-grid,.module-toggle-list,.overview-page--simplified .domain-stats-grid,.device-summary-grid,.device-kind-grid,.device-wizard-form-grid,.data-path-options,.device-review-step dl,.device-library-hub{grid-template-columns:1fr}.device-wizard-steps{display:flex;overflow-x:auto}.device-wizard-steps li{min-width:132px}.operational-dashboard-toolbar__actions{flex-wrap:wrap}}.network-page{min-width:0;color:var(--ec-text-primary)}.network-module-nav{border-bottom:1px solid var(--ec-border);align-items:center;gap:3px;margin:-5px 0 15px;padding-bottom:1px;display:flex;overflow-x:auto}.network-module-nav a{min-height:38px;color:var(--ec-text-muted);white-space:nowrap;border-bottom:2px solid #0000;align-items:center;gap:7px;padding:0 12px;font-size:11px;font-weight:650;text-decoration:none;display:inline-flex}.network-module-nav a svg{width:14px}.network-module-nav a:hover,.network-module-nav a.is-active{color:var(--ec-primary)}.network-module-nav a.is-active{border-bottom-color:var(--ec-primary)}.network-mode-indicator{border:1px solid var(--ec-border);background:var(--ec-bg-surface);border-radius:8px;align-items:center;gap:11px;min-width:245px;padding:9px 12px;display:flex}.network-mode-indicator>i{border-radius:50%;flex:0 0 8px;width:8px;height:8px}.network-mode-indicator>i.is-demo{background:var(--ec-info);box-shadow:0 0 0 5px var(--ec-info-soft)}.network-mode-indicator>i.is-live{background:var(--ec-success);box-shadow:0 0 0 5px var(--ec-success-soft)}.network-mode-indicator strong,.network-mode-indicator small{display:block}.network-mode-indicator strong{font-size:11px}.network-mode-indicator small{color:var(--ec-text-muted);margin-top:3px;font-size:9px}.network-summary-strip{border:1px solid var(--ec-border);background:var(--ec-bg-surface);border-radius:9px;grid-template-columns:1.25fr repeat(5,minmax(110px,1fr));margin-bottom:12px;display:grid;overflow:hidden}.network-summary-strip article{border-right:1px solid var(--ec-border-subtle);align-items:center;gap:10px;min-width:0;min-height:76px;padding:12px 13px;display:flex}.network-summary-strip article:last-child{border-right:0}.network-summary-strip article>span{width:30px;height:30px;color:var(--ec-info);background:var(--ec-info-soft);border-radius:7px;flex:0 0 30px;place-items:center;display:grid}.network-summary-strip article>span svg{width:15px}.network-summary-strip article.is-success>span{color:var(--ec-success);background:var(--ec-success-soft)}.network-summary-strip article.is-warning>span{color:var(--ec-warning);background:var(--ec-warning-soft)}.network-summary-strip article.is-danger>span{color:var(--ec-danger);background:var(--ec-danger-soft)}.network-summary-strip strong,.network-summary-strip small{display:block}.network-summary-strip strong{font-size:18px;line-height:1}.network-summary-strip small{color:var(--ec-text-muted);margin-top:5px;font-size:9px;line-height:1.25}.network-kpi-row{grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin-bottom:12px;display:grid}.network-kpi-row article{border:1px solid var(--ec-border);background:var(--ec-bg-surface);border-radius:8px;min-height:87px;padding:14px 15px}.network-kpi-row small,.network-kpi-row strong,.network-kpi-row span{display:block}.network-kpi-row small{color:var(--ec-text-muted);text-transform:uppercase;letter-spacing:.04em;font-size:9px;font-weight:650}.network-kpi-row strong{margin-top:6px;font-size:22px;line-height:1}.network-kpi-row span{color:var(--ec-text-muted);margin-top:7px;font-size:9px}.network-overview-grid{grid-template-columns:minmax(0,1.4fr) minmax(320px,.85fr);gap:12px;margin-bottom:12px;display:grid}.network-health-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:1px 16px;display:grid}.network-health-list>button{border:0;border-bottom:1px solid var(--ec-border-subtle);min-width:0;min-height:52px;color:var(--ec-text-primary);text-align:left;background:0 0;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:9px;padding:7px 3px;display:grid}.network-health-list>button:hover{background:var(--ec-bg-hover)}.network-device-icon{width:30px;height:30px;color:var(--ec-primary);background:var(--ec-primary-soft);border-radius:7px;place-items:center;display:grid}.network-device-icon svg{width:15px}.network-health-list strong,.network-health-list small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.network-health-list strong{font-size:10px}.network-health-list small{color:var(--ec-text-muted);margin-top:3px;font-size:8px}.network-status{border:1px solid var(--ec-border);background:var(--ec-bg-secondary);min-height:22px;color:var(--ec-text-secondary);white-space:nowrap;border-radius:999px;align-items:center;gap:6px;padding:0 7px;font-size:9px;font-weight:650;display:inline-flex}.network-status i{background:var(--ec-text-subtle);border-radius:50%;width:6px;height:6px}.network-status.is-success{color:var(--ec-success);border-color:var(--ec-success)}@supports (color:color-mix(in lab, red, red)){.network-status.is-success{border-color:color-mix(in srgb, var(--ec-success) 28%, var(--ec-border))}}.network-status.is-success{background:var(--ec-success-soft)}.network-status.is-success i{background:var(--ec-success)}.network-status.is-warning{color:var(--ec-warning);border-color:var(--ec-warning)}@supports (color:color-mix(in lab, red, red)){.network-status.is-warning{border-color:color-mix(in srgb, var(--ec-warning) 28%, var(--ec-border))}}.network-status.is-warning{background:var(--ec-warning-soft)}.network-status.is-warning i{background:var(--ec-warning)}.network-status.is-danger{color:var(--ec-danger);border-color:var(--ec-danger)}@supports (color:color-mix(in lab, red, red)){.network-status.is-danger{border-color:color-mix(in srgb, var(--ec-danger) 28%, var(--ec-border))}}.network-status.is-danger{background:var(--ec-danger-soft)}.network-status.is-danger i{background:var(--ec-danger)}.network-status.is-info{color:var(--ec-info);border-color:var(--ec-info)}@supports (color:color-mix(in lab, red, red)){.network-status.is-info{border-color:color-mix(in srgb, var(--ec-info) 28%, var(--ec-border))}}.network-status.is-info{background:var(--ec-info-soft)}.network-status.is-info i{background:var(--ec-info)}.network-issue-list{display:grid}.network-issue-list>button{border:0;border-bottom:1px solid var(--ec-border-subtle);min-width:0;min-height:61px;color:var(--ec-text-primary);text-align:left;background:0 0;grid-template-columns:31px minmax(0,1fr) 18px;align-items:center;gap:9px;padding:9px 2px;display:grid}.network-issue-list>button:hover{background:var(--ec-bg-hover)}.network-issue-list>button>span{border-radius:7px;place-items:center;width:29px;height:29px;display:grid}.network-issue-list>button>span.is-danger{color:var(--ec-danger);background:var(--ec-danger-soft)}.network-issue-list>button>span.is-warning{color:var(--ec-warning);background:var(--ec-warning-soft)}.network-issue-list>button>span svg,.network-issue-list>button>svg{width:14px}.network-issue-list strong,.network-issue-list small{display:block}.network-issue-list strong{font-size:10px}.network-issue-list small{color:var(--ec-text-muted);margin-top:4px;font-size:8px;line-height:1.35}.network-topology-preview{border:1px solid var(--ec-border-subtle);background:var(--ec-bg-secondary);border-radius:7px;justify-content:center;align-items:center;gap:11px;min-height:122px;padding:16px;display:flex}@supports (color:color-mix(in lab, red, red)){.network-topology-preview{background:color-mix(in srgb, var(--ec-bg-secondary) 80%, transparent)}}.network-topology-preview>i{background:var(--ec-border);width:36px;height:1px}.network-preview-node,.network-preview-branches span{border:1px solid var(--ec-border);border-left:3px solid var(--ec-success);background:var(--ec-bg-surface);white-space:nowrap;border-radius:7px;justify-content:center;align-items:center;min-height:38px;padding:0 12px;font-size:9px;font-weight:650;display:inline-flex}.network-preview-node.is-external{border-left-color:var(--ec-info)}.network-preview-branches{grid-template-columns:repeat(3,1fr);gap:7px;display:grid}.network-preview-branches span.is-offline{color:var(--ec-danger);border-left-color:var(--ec-danger);background:var(--ec-danger-soft)}@media (max-width:1180px){.network-summary-strip{grid-template-columns:repeat(3,1fr)}.network-summary-strip article:nth-child(3){border-right:0}.network-overview-grid{grid-template-columns:1fr}}@media (max-width:760px){.network-summary-strip,.network-kpi-row{grid-template-columns:repeat(2,1fr)}.network-health-list{grid-template-columns:1fr}.network-topology-preview{justify-content:flex-start;overflow-x:auto}.network-mode-indicator{min-width:0}}.network-topology-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.header-actions{position:relative}.global-search-popover{z-index:70;border:1px solid var(--ec-border);background:var(--ec-bg-surface);width:390px;box-shadow:var(--shadow);border-radius:9px;padding:9px;position:absolute;top:calc(100% + 10px);right:130px}.global-search-popover>label{min-height:38px;color:var(--ec-text-muted);border:1px solid var(--ec-border);background:var(--ec-bg-secondary);border-radius:6px;align-items:center;gap:8px;padding:0 10px;display:flex}.global-search-popover>label svg{width:15px}.global-search-popover>label input{width:100%;min-width:0;color:var(--ec-text-primary);background:0 0;border:0;outline:0;font-size:10px}.global-search-popover>div{gap:2px;margin-top:8px;display:grid}.global-search-popover>div>small{color:var(--ec-text-muted);text-transform:uppercase;padding:6px 8px;font-size:8px;font-weight:700}.global-search-popover>div>button{min-height:43px;color:var(--ec-text-primary);text-align:left;background:0 0;border:0;border-radius:5px;grid-template-columns:28px minmax(0,1fr) 20px;align-items:center;gap:8px;padding:5px 8px;display:grid}.global-search-popover>div>button:hover{background:var(--ec-bg-hover)}.global-search-popover>div>button>svg{width:14px;color:var(--ec-primary)}.global-search-popover strong,.global-search-popover button small{display:block}.global-search-popover strong{font-size:9px}.global-search-popover button small{color:var(--ec-text-muted);margin-top:3px;font-size:8px}.global-search-popover .global-search-view-all{min-height:32px;color:var(--ec-primary);border-top:1px solid var(--ec-border-subtle);text-align:center;margin-top:4px;font-size:8px;display:block}.network-topology-list>article{border:1px solid var(--ec-border);background:var(--ec-bg-surface);border-radius:9px;grid-template-columns:150px minmax(0,1fr) auto;align-items:center;gap:14px;min-height:165px;padding:14px;display:grid}.network-topology-list__preview{height:132px;color:var(--ec-primary);border:1px solid var(--ec-border-subtle);background:radial-gradient(circle at center, var(--ec-primary-soft) 0 2px, transparent 3px) 0 0/22px 22px, var(--ec-bg-secondary);border-radius:7px;place-items:center;display:grid;position:relative}.network-topology-list__preview svg{width:32px}.network-topology-list__preview span{color:var(--ec-text-muted);background:var(--ec-bg-surface);border-radius:4px;padding:3px 6px;font-size:8px;position:absolute;bottom:9px;left:9px}.network-topology-list article small,.network-topology-list article h2,.network-topology-list article p,.network-topology-list article>div>span{margin:0;display:block}.network-topology-list article small{color:var(--ec-primary);text-transform:uppercase;font-size:8px;font-weight:700}.network-topology-list article h2{margin-top:7px;font-size:14px}.network-topology-list article p{color:var(--ec-text-secondary);margin-top:8px;font-size:9px}.network-topology-list article>div>span{color:var(--ec-text-muted);margin-top:8px;font-size:8px}.network-topology-list article footer{gap:7px;display:grid}.network-topology-list article footer>button:not(.ec-button){border:1px solid var(--ec-border);background:var(--ec-bg-surface);width:31px;height:31px;color:var(--ec-text-muted);border-radius:6px;justify-self:end;place-items:center;display:grid}.network-topology-list article footer>button svg{width:13px}.network-readonly-note{min-height:58px;color:var(--ec-info);border:1px solid var(--ec-info);align-items:center;gap:11px;margin-top:12px;padding:10px 14px;display:flex}@supports (color:color-mix(in lab, red, red)){.network-readonly-note{border:1px solid color-mix(in srgb, var(--ec-info) 22%, var(--ec-border))}}.network-readonly-note{background:var(--ec-info-soft);border-radius:8px}.network-readonly-note svg{width:18px}.network-readonly-note strong,.network-readonly-note span{display:block}.network-readonly-note strong{font-size:10px}.network-readonly-note span{color:var(--ec-text-secondary);margin-top:3px;font-size:8px}.network-topology-toolbar{border:1px solid var(--ec-border);background:var(--ec-bg-surface);border-radius:8px;justify-content:space-between;align-items:center;gap:12px;min-height:47px;margin-bottom:9px;padding:7px 9px;display:flex}.network-topology-toolbar>div{flex-wrap:wrap;gap:4px;display:flex}.network-topology-toolbar button{min-height:27px;color:var(--ec-text-muted);background:0 0;border:1px solid #0000;border-radius:5px;padding:0 9px;font-size:8px;font-weight:650}.network-topology-toolbar button:hover,.network-topology-toolbar button.is-active{color:var(--ec-primary);border-color:var(--ec-primary)}@supports (color:color-mix(in lab, red, red)){.network-topology-toolbar button:hover,.network-topology-toolbar button.is-active{border-color:color-mix(in srgb, var(--ec-primary) 24%, var(--ec-border))}}.network-topology-toolbar button:hover,.network-topology-toolbar button.is-active{background:var(--ec-primary-soft)}.network-topology-toolbar>span{color:var(--ec-text-muted);white-space:nowrap;align-items:center;gap:7px;font-size:8px;display:inline-flex}.network-topology-toolbar>span i{background:var(--ec-info);border-radius:50%;width:7px;height:7px}.network-topology-workspace{border:1px solid var(--ec-border);background:var(--ec-bg-secondary);border-radius:9px;grid-template-columns:minmax(0,1fr);min-height:620px;display:grid;position:relative;overflow:hidden}.network-topology-canvas{background:var(--ec-bg-secondary);min-height:620px;position:relative}.network-topology-canvas:-webkit-full-screen{background:var(--ec-bg-app);width:100vw;height:100vh;min-height:100vh}.network-topology-canvas:fullscreen{background:var(--ec-bg-app);width:100vw;height:100vh;min-height:100vh}.network-topology-canvas .react-flow__attribution{opacity:.45;color:var(--ec-text-muted);background:var(--ec-bg-surface)}@supports (color:color-mix(in lab, red, red)){.network-topology-canvas .react-flow__attribution{background:color-mix(in srgb, var(--ec-bg-surface) 88%, transparent)}}.network-topology-canvas .react-flow__minimap{border:1px solid var(--ec-border);background:var(--ec-bg-surface);border-radius:6px}.network-topology-canvas .react-flow__minimap-mask{fill:var(--ec-bg-secondary)}@supports (color:color-mix(in lab, red, red)){.network-topology-canvas .react-flow__minimap-mask{fill:color-mix(in srgb, var(--ec-bg-secondary) 76%, transparent)}}.network-topology-controls{z-index:8;border:1px solid var(--ec-border);background:var(--ec-bg-surface);box-shadow:var(--shadow);border-radius:6px;gap:3px;padding:3px;display:flex;position:absolute;top:10px;right:10px}.network-topology-controls button{width:28px;height:28px;color:var(--ec-text-muted);background:0 0;border:0;border-radius:4px;place-items:center;display:grid}.network-topology-controls button:hover{color:var(--ec-primary);background:var(--ec-primary-soft)}.network-topology-controls svg{width:14px}.network-topology-node{border:1px solid var(--ec-border);border-left:3px solid var(--ec-success);background:var(--ec-bg-surface);width:172px;min-height:94px;color:var(--ec-text-primary);border-radius:8px;padding:9px 10px 8px;position:relative;box-shadow:0 3px 10px #17212b14}.network-topology-canvas.is-viewer .react-flow__handle{opacity:0;pointer-events:none}.network-topology-canvas.is-editable .react-flow__handle{border:1px solid var(--ec-bg-surface);background:var(--ec-primary);width:7px;height:7px}.network-topology-node:hover,.network-topology-node.is-selected{border-color:var(--ec-primary);box-shadow:0 0 0 2px var(--ec-primary-soft), 0 5px 15px #17212b1a}.network-topology-node.is-warning{border-left-color:var(--ec-warning)}.network-topology-node.is-danger{border-left-color:var(--ec-danger);background:var(--ec-danger-soft)}@supports (color:color-mix(in lab, red, red)){.network-topology-node.is-danger{background:color-mix(in srgb, var(--ec-danger-soft) 34%, var(--ec-bg-surface))}}.network-topology-node.is-info{border-left-color:var(--ec-info)}.network-topology-node header{justify-content:space-between;align-items:center;height:25px;display:flex}.network-topology-node header>span{width:25px;height:25px;color:var(--ec-primary);background:var(--ec-primary-soft);border-radius:5px;place-items:center;display:grid}.network-topology-node header svg{width:13px}.network-topology-node header i{background:var(--ec-success);border-radius:50%;width:7px;height:7px}.network-topology-node.is-warning header i{background:var(--ec-warning)}.network-topology-node.is-danger header i{background:var(--ec-danger)}.network-topology-node.is-info header i{background:var(--ec-info)}.network-topology-node>strong,.network-topology-node>small{white-space:nowrap;text-overflow:ellipsis;display:block;overflow:hidden}.network-topology-node>strong{margin-top:7px;font-size:10px}.network-topology-node>small{color:var(--ec-text-muted);text-transform:uppercase;margin-top:3px;font-size:7px}.network-topology-node footer{border-top:1px solid var(--ec-border-subtle);color:var(--ec-text-muted);justify-content:space-between;margin-top:8px;padding-top:6px;font-size:7px;display:flex}.network-topology-node footer em{color:var(--ec-text-secondary);font-style:normal}.network-topology-alert{color:#fff;border:2px solid var(--ec-bg-surface);background:var(--ec-danger);border-radius:999px;place-items:center;min-width:20px;height:20px;padding:0 5px;font-size:8px;display:grid;position:absolute;top:-8px;right:-8px}.network-topology-edge path{stroke:var(--ec-success);stroke-width:1.5px}.network-topology-edge.is-degraded path{stroke:var(--ec-warning);stroke-dasharray:7 4}.network-topology-edge.is-down path{stroke:var(--ec-danger);stroke-dasharray:4 4}.network-topology-edge.is-unknown path{stroke:var(--ec-text-subtle);stroke-dasharray:3 4}.network-topology-edge .react-flow__edge-text{fill:var(--ec-text-secondary);font-size:7px}.network-topology-edge .react-flow__edge-textbg{fill:var(--ec-bg-surface)}.network-topology-context{z-index:7;border:1px solid var(--ec-border);background:var(--ec-bg-surface);width:292px;box-shadow:var(--shadow);border-radius:8px;padding:14px;position:absolute;top:9px;bottom:9px;right:9px;overflow-y:auto}.network-topology-context header{border-bottom:1px solid var(--ec-border);justify-content:space-between;gap:12px;padding-bottom:12px;display:flex}.network-topology-context header small{color:var(--ec-primary);text-transform:uppercase;font-size:7px;font-weight:700}.network-topology-context header h2{margin:5px 0 0;font-size:14px}.network-topology-context header button{border:1px solid var(--ec-border);width:26px;height:26px;color:var(--ec-text-muted);background:0 0;border-radius:5px}.network-context-status{border-bottom:1px solid var(--ec-border-subtle);color:var(--ec-text-muted);justify-content:space-between;align-items:center;padding:11px 0;font-size:8px;display:flex}.network-topology-context dl{margin:8px 0 0}.network-topology-context dl>div{border-bottom:1px solid var(--ec-border-subtle);justify-content:space-between;align-items:center;gap:10px;min-height:33px;font-size:8px;display:flex}.network-topology-context dt{color:var(--ec-text-muted)}.network-topology-context dd{margin:0;font-weight:650}.network-topology-context>section{gap:7px;margin-top:13px;display:grid}.network-topology-context>section>strong{text-transform:uppercase;font-size:8px}.network-topology-context>section>span{min-height:28px;color:var(--ec-text-muted);background:var(--ec-bg-secondary);overflow-wrap:anywhere;border-radius:5px;align-items:center;gap:7px;padding:0 8px;font-size:7px;display:flex}.network-topology-context>section svg{width:12px}.network-topology-context>footer{grid-template-columns:repeat(2,1fr);gap:6px;margin-top:14px;display:grid}.network-external-context{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:230px;display:flex}.network-external-context svg{width:32px;color:var(--ec-info)}.network-external-context strong{margin-top:10px;font-size:12px}.network-external-context p{max-width:210px;color:var(--ec-text-muted);font-size:8px;line-height:1.5}.network-topology-empty{z-index:4;pointer-events:none;color:var(--ec-text-muted);flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.network-topology-empty svg{width:28px}.network-topology-empty strong{margin-top:9px;font-size:11px}.network-topology-empty span{margin-top:4px;font-size:8px}.network-stress-note{min-height:38px;color:var(--ec-text-muted);border:1px dashed var(--ec-border);background:var(--ec-bg-secondary);border-radius:7px;justify-content:center;align-items:center;margin-top:8px;font-size:8px;display:flex}.videowall-network-renderer,.videowall-network-renderer .network-topology-canvas{width:100%;height:100%;min-height:100%}.videowall-network-renderer .network-topology-controls{display:none}.videowall-network-renderer .network-topology-node{box-shadow:none}.network-stress-note strong{color:var(--ec-text-primary);margin-right:4px}.network-trend-summary{min-height:24px;color:var(--ec-text-muted);border-top:1px solid var(--ec-border-subtle);justify-content:space-between;align-items:center;gap:12px;margin:2px 0 0;padding:5px 8px 0;font-size:8px;display:flex}.network-trend-summary strong{color:var(--ec-text-secondary);white-space:nowrap;font-weight:700}.network-editor-toolbar{border:1px solid var(--ec-border);background:var(--ec-bg-surface);border-radius:8px;justify-content:space-between;align-items:center;gap:12px;min-height:49px;margin-bottom:8px;padding:7px 9px;display:flex}.network-editor-toolbar>div{gap:6px;display:flex}.network-editor-toolbar>span{color:var(--ec-text-muted);font-size:8px}.network-editor-workspace{border:1px solid var(--ec-border);border-radius:9px;grid-template-columns:minmax(0,1fr) 270px;min-height:650px;display:grid;overflow:hidden}.network-editor-workspace .network-topology-canvas{min-height:650px}.network-editor-sidebar{border-left:1px solid var(--ec-border);background:var(--ec-bg-surface);align-content:start;gap:12px;padding:12px;display:grid;overflow-y:auto}.network-editor-sidebar>section{border-bottom:1px solid var(--ec-border-subtle);gap:8px;padding-bottom:12px;display:grid}.network-editor-sidebar header{align-items:center;gap:7px;font-size:9px;font-weight:700;display:flex}.network-editor-sidebar header svg{width:14px;color:var(--ec-primary)}.network-editor-safety{color:var(--ec-info);border:1px solid var(--ec-info)!important;padding:11px!important}@supports (color:color-mix(in lab, red, red)){.network-editor-safety{border:1px solid color-mix(in srgb, var(--ec-info) 22%, var(--ec-border))!important}}.network-editor-safety{background:var(--ec-info-soft);border-radius:7px}.network-editor-safety>svg{width:18px}.network-editor-safety strong{font-size:9px}.network-editor-safety p,.network-editor-safety span{color:var(--ec-text-secondary);margin:0;font-size:8px;line-height:1.45}@media (max-width:1180px){.network-topology-list{grid-template-columns:1fr}.network-editor-workspace{grid-template-columns:minmax(0,1fr) 240px}}@media (max-width:760px){.network-topology-list>article{grid-template-columns:1fr}.network-topology-list__preview{height:110px}.network-topology-toolbar{flex-direction:column;align-items:flex-start}.network-topology-workspace,.network-topology-canvas{min-height:520px}.network-topology-context{width:min(292px,100% - 18px)}.network-editor-workspace{grid-template-columns:1fr}.network-editor-sidebar{border-top:1px solid var(--ec-border);border-left:0}}.reports-page,.report-preview-page,.report-builder-page{min-width:0;color:var(--ec-text-primary)}.reports-module-nav{border-bottom:1px solid var(--ec-border);align-items:center;gap:4px;margin:-5px 0 18px;padding-bottom:1px;display:flex}.reports-module-nav a{min-height:38px;color:var(--ec-text-muted);border-bottom:2px solid #0000;align-items:center;gap:7px;padding:0 13px;font-size:12px;font-weight:600;text-decoration:none;display:inline-flex}.reports-module-nav a:hover,.reports-module-nav a.is-active{color:var(--ec-primary)}.reports-module-nav a.is-active{border-bottom-color:var(--ec-primary)}.reports-overview-strip{border:1px solid var(--ec-border);background:var(--ec-bg-surface);border-radius:9px;grid-template-columns:repeat(3,minmax(150px,.7fr)) minmax(260px,1.45fr);margin-bottom:14px;display:grid;overflow:hidden}.reports-overview-strip>article,.reports-mode-note{border-right:1px solid var(--ec-border-subtle);align-items:center;gap:12px;min-height:82px;padding:14px 16px;display:flex}.reports-overview-strip>article>span{border-radius:7px;place-items:center;width:36px;height:36px;display:grid}.reports-overview-strip>article>span svg{width:17px}.reports-overview-strip>article>span.is-teal{color:var(--ec-primary);background:var(--ec-primary-soft)}.reports-overview-strip>article>span.is-blue{color:var(--ec-info);background:var(--ec-info-soft)}.reports-overview-strip>article>span.is-amber{color:var(--ec-warning);background:var(--ec-warning-soft)}.reports-overview-strip article strong,.reports-overview-strip article small,.reports-mode-note strong,.reports-mode-note small{display:block}.reports-overview-strip article strong{color:var(--ec-text-primary);font-size:20px;line-height:1.1}.reports-overview-strip article small,.reports-mode-note small{color:var(--ec-text-muted);margin-top:4px;font-size:10px}.reports-mode-note{background:var(--ec-bg-secondary);border-right:0}.reports-mode-note>i{background:var(--ec-success);width:9px;height:9px;box-shadow:0 0 0 5px var(--ec-success-soft);border-radius:50%;flex:0 0 9px}.reports-mode-note>i.is-demo{background:var(--ec-info);box-shadow:0 0 0 5px var(--ec-info-soft)}.reports-mode-note strong{font-size:11px}.reports-filterbar{border:1px solid var(--ec-border);background:var(--ec-bg-surface);border-radius:8px;grid-template-columns:minmax(260px,1fr) repeat(3,minmax(145px,.35fr));gap:8px;margin-bottom:11px;padding:10px;display:grid}.reports-search{min-height:34px;color:var(--ec-text-muted);border:1px solid var(--ec-border);background:var(--ec-bg-secondary);border-radius:6px;align-items:center;gap:8px;padding:0 10px;display:flex}.reports-search input{width:100%;min-width:0;color:var(--ec-text-primary);background:0 0;border:0;outline:0;font-size:11px}.reports-table-card{border:1px solid var(--ec-border);background:var(--ec-bg-surface);border-radius:8px;overflow-x:auto}.reports-list-table{border-collapse:collapse;text-align:left;width:100%;font-size:10px}.reports-list-table th{height:38px;color:var(--ec-text-muted);border-bottom:1px solid var(--ec-border);background:var(--ec-bg-secondary);white-space:nowrap;padding:0 10px;font-size:9px;font-weight:650}.reports-list-table td{min-height:54px;color:var(--ec-text-secondary);border-bottom:1px solid var(--ec-border-subtle);vertical-align:middle;padding:9px 10px}.reports-list-table tbody tr:last-child td{border-bottom:0}.reports-list-table tbody tr:hover td{background:var(--ec-bg-hover)}.reports-name-cell{min-width:220px;color:inherit;text-align:left;background:0 0;border:0;align-items:center;gap:9px;padding:0;display:flex}.reports-name-cell>span{width:30px;height:30px;color:var(--ec-primary);border:1px solid var(--ec-primary);flex:0 0 30px;place-items:center;display:grid}@supports (color:color-mix(in lab, red, red)){.reports-name-cell>span{border:1px solid color-mix(in srgb, var(--ec-primary) 22%, var(--ec-border))}}.reports-name-cell>span{background:var(--ec-primary-soft);border-radius:6px}.reports-name-cell strong,.reports-name-cell small{display:block}.reports-name-cell strong{color:var(--ec-text-primary);margin-bottom:3px;font-size:11px}.reports-name-cell small{max-width:250px;color:var(--ec-text-muted);text-overflow:ellipsis;white-space:nowrap;font-size:9px;overflow:hidden}.report-type-badge,.report-format-badge{color:var(--ec-text-secondary);border:1px solid var(--ec-border);background:var(--ec-bg-secondary);white-space:nowrap;border-radius:999px;align-items:center;padding:4px 7px;font-size:8px;font-weight:700;display:inline-flex}.report-type-badge.is-operational,.report-type-badge.is-telemetry{color:var(--ec-primary);border-color:var(--ec-primary)}@supports (color:color-mix(in lab, red, red)){.report-type-badge.is-operational,.report-type-badge.is-telemetry{border-color:color-mix(in srgb, var(--ec-primary) 25%, var(--ec-border))}}.report-type-badge.is-operational,.report-type-badge.is-telemetry{background:var(--ec-primary-soft)}.report-type-badge.is-energy{color:var(--ec-warning);background:var(--ec-warning-soft)}.report-type-badge.is-alerts{color:var(--ec-danger);background:var(--ec-danger-soft)}.report-type-badge.is-availability{color:var(--ec-info);background:var(--ec-info-soft)}.report-schedule-state,.report-run-status,.report-equipment-state,.report-quality,.report-severity{white-space:nowrap;align-items:center;gap:5px;font-size:9px;font-weight:650;display:inline-flex}.report-schedule-state i{background:var(--ec-text-subtle);border-radius:50%;width:6px;height:6px}.report-schedule-state.is-active{color:var(--ec-success)}.report-schedule-state.is-active i{background:var(--ec-success)}.reports-row-actions{justify-content:flex-end;gap:2px;display:flex}.reports-row-actions button{width:27px;height:27px;color:var(--ec-text-muted);background:0 0;border:0;border-radius:5px;place-items:center;display:grid}.reports-row-actions button:hover{color:var(--ec-primary);background:var(--ec-primary-soft)}.reports-row-actions button.is-danger:hover{color:var(--ec-danger);background:var(--ec-danger-soft)}.reports-row-actions button:disabled{opacity:.35}.reports-row-actions svg{width:13px}.reports-confirm-dialog>p{color:var(--ec-text-secondary);margin:0 0 8px;font-size:12px}.reports-confirm-dialog footer{justify-content:flex-end;gap:8px;margin-top:18px;display:flex}.report-template-hero{border:1px solid var(--ec-primary);justify-content:space-between;align-items:center;gap:30px;min-height:150px;margin-bottom:18px;padding:24px 28px;display:flex}@supports (color:color-mix(in lab, red, red)){.report-template-hero{border:1px solid color-mix(in srgb, var(--ec-primary) 22%, var(--ec-border))}}.report-template-hero{background:linear-gradient(120deg, var(--ec-primary-soft), var(--ec-bg-surface) 58%), var(--ec-bg-surface);border-radius:10px}@supports (color:color-mix(in lab, red, red)){.report-template-hero{background:linear-gradient(120deg, color-mix(in srgb, var(--ec-primary-soft) 72%, var(--ec-bg-surface)), var(--ec-bg-surface) 58%), var(--ec-bg-surface)}}.report-template-hero>div{align-items:flex-start;gap:16px;display:flex}.report-template-hero>div>span{width:44px;height:44px;color:var(--ec-primary);background:var(--ec-primary-soft);border-radius:10px;flex:0 0 44px;place-items:center;display:grid}.report-template-hero small{color:var(--ec-primary);letter-spacing:.12em;font-size:8px;font-weight:750}.report-template-hero h2{margin:5px 0 7px;font-size:19px}.report-template-hero p{max-width:620px;color:var(--ec-text-secondary);margin:0;font-size:11px;line-height:1.55}.report-template-hero>dl{gap:28px;margin:0;display:flex}.report-template-hero dl div{text-align:center;min-width:74px}.report-template-hero dt{color:var(--ec-text-primary);font-size:24px;font-weight:700}.report-template-hero dd{color:var(--ec-text-muted);margin:3px 0 0;font-size:9px}.report-template-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.report-template-card{border:1px solid var(--ec-border);background:var(--ec-bg-surface);border-radius:9px;min-width:0;transition:all .15s;overflow:hidden}.report-template-card:hover{border-color:var(--ec-primary);transform:translateY(-2px)}@supports (color:color-mix(in lab, red, red)){.report-template-card:hover{border-color:color-mix(in srgb, var(--ec-primary) 30%, var(--ec-border))}}.report-template-card:hover{box-shadow:var(--shadow)}.report-template-card__cover{height:84px;color:var(--ec-primary);background:linear-gradient(135deg, var(--ec-primary-soft), var(--ec-bg-secondary));align-items:center;gap:10px;padding:15px;display:flex;position:relative}.report-template-card.is-amber .report-template-card__cover{color:var(--ec-warning);background:linear-gradient(135deg, var(--ec-warning-soft), var(--ec-bg-secondary))}.report-template-card.is-rose .report-template-card__cover{color:var(--ec-danger);background:linear-gradient(135deg, var(--ec-danger-soft), var(--ec-bg-secondary))}.report-template-card.is-blue .report-template-card__cover{color:var(--ec-info);background:linear-gradient(135deg, var(--ec-info-soft), var(--ec-bg-secondary))}.report-template-card__cover>span{background:currentColor;border:1px solid;border-radius:9px;place-items:center;width:40px;height:40px;display:grid}@supports (color:color-mix(in lab, red, red)){.report-template-card__cover>span{background:color-mix(in srgb, currentColor 7%, var(--ec-bg-surface))}}.report-template-card__cover small{text-transform:uppercase;letter-spacing:.08em;font-size:9px;font-weight:700}.report-template-card__cover i{color:var(--ec-text-muted);font-size:8px;font-style:normal;position:absolute;bottom:11px;right:13px}.report-template-card__body{padding:15px}.report-template-card__body h2{margin:0 0 6px;font-size:13px}.report-template-card__body p{min-height:34px;color:var(--ec-text-muted);margin:0 0 10px;font-size:10px;line-height:1.45}.report-template-card__body ul{min-height:52px;margin:0 0 13px;padding:0;list-style:none}.report-template-card__body li{color:var(--ec-text-secondary);margin:4px 0;font-size:9px}.report-template-card__body li:before{content:"✓";color:var(--ec-success);margin-right:6px;font-weight:700}.report-template-card__body .ec-button{justify-content:space-between;width:100%}.report-create-steps{border:1px solid var(--ec-border);background:var(--ec-bg-surface);border-radius:8px;grid-template-columns:repeat(3,1fr);margin:0 0 18px;padding:0;list-style:none;display:grid}.report-create-steps li{min-height:62px;color:var(--ec-text-muted);align-items:center;gap:10px;padding:12px 18px;display:flex;position:relative}.report-create-steps li:not(:last-child):after{content:"";background:var(--ec-border-subtle);width:1px;position:absolute;top:10px;bottom:10px;right:0}.report-create-steps li>span{border:1px solid var(--ec-border);border-radius:50%;place-items:center;width:25px;height:25px;font-size:10px;font-weight:700;display:grid}.report-create-steps li.is-active>span{color:#fff;border-color:var(--ec-primary);background:var(--ec-primary)}.report-create-steps strong,.report-create-steps small{display:block}.report-create-steps strong{color:var(--ec-text-primary);font-size:11px}.report-create-steps small{margin-top:2px;font-size:9px}.report-new-layout{grid-template-columns:minmax(0,1fr) 350px;align-items:start;gap:14px;display:grid}.report-new-templates,.report-new-summary{border:1px solid var(--ec-border);background:var(--ec-bg-surface);border-radius:9px}.report-new-templates>header{border-bottom:1px solid var(--ec-border-subtle);gap:11px;padding:15px 17px;display:flex}.report-new-templates>header svg{color:var(--ec-primary)}.report-new-templates h2,.report-new-templates p{margin:0}.report-new-templates h2{font-size:13px}.report-new-templates p{color:var(--ec-text-muted);margin-top:4px;font-size:10px}.report-new-templates>div{grid-template-columns:repeat(2,1fr);gap:8px;padding:10px;display:grid}.report-new-templates>div>button{min-height:105px;color:var(--ec-text-secondary);border:1px solid var(--ec-border);background:var(--ec-bg-surface);text-align:left;border-radius:7px;grid-template-columns:34px 1fr 20px;align-items:start;gap:10px;padding:13px;display:grid}.report-new-templates>div>button:hover,.report-new-templates>div>button.is-selected{border-color:var(--ec-primary);background:var(--ec-primary-soft)}.report-new-templates button>span{width:34px;height:34px;color:var(--ec-primary);background:var(--ec-primary-soft);border-radius:7px;place-items:center;display:grid}.report-new-templates button strong,.report-new-templates button small,.report-new-templates button p{display:block}.report-new-templates button strong{color:var(--ec-text-primary);font-size:11px}.report-new-templates button small{color:var(--ec-primary);margin-top:3px;font-size:8px}.report-new-templates button p{margin-top:7px;line-height:1.35}.report-new-templates button>i svg{width:14px}.report-new-summary{padding:20px;position:sticky;top:76px}.report-new-summary h2{margin:8px 0 6px;font-size:18px}.report-new-summary>p{color:var(--ec-text-muted);margin:0 0 16px;font-size:10px;line-height:1.5}.report-new-summary label,.report-schedule-editor label,.report-properties label,.report-layout-properties label,.report-form-field{color:var(--ec-text-secondary);gap:5px;font-size:9px;font-weight:650;display:grid}.report-form-field.is-inline{align-items:center;display:flex}.report-new-summary input,.report-schedule-editor input,.report-properties input,.report-properties textarea{width:100%;min-height:34px;color:var(--ec-text-primary);border:1px solid var(--ec-border);background:var(--ec-bg-secondary);font:inherit;border-radius:6px;outline:0;padding:7px 9px}.report-new-summary input:focus,.report-schedule-editor input:focus,.report-properties input:focus,.report-properties textarea:focus{border-color:var(--ec-primary);box-shadow:0 0 0 3px var(--ec-primary-soft)}.report-new-summary dl{border-block:1px solid var(--ec-border-subtle);margin:15px 0}.report-new-summary dl div{border-bottom:1px solid var(--ec-border-subtle);justify-content:space-between;gap:12px;padding:9px 0;font-size:10px;display:flex}.report-new-summary dl div:last-child{border-bottom:0}.report-new-summary dt{color:var(--ec-text-muted)}.report-new-summary dd{margin:0;font-weight:650}.report-new-summary__note{color:var(--ec-success);background:var(--ec-success-soft);border-radius:6px;gap:9px;margin-bottom:15px;padding:10px;display:flex}.report-new-summary__note svg{width:15px}.report-new-summary__note strong,.report-new-summary__note small{display:block}.report-new-summary__note small{color:var(--ec-text-secondary);margin-top:2px;font-size:8px}.report-new-summary>.ec-button{width:100%}.report-new-summary__empty{text-align:center;min-height:300px;color:var(--ec-text-muted);place-content:center;justify-items:center;display:grid}.report-new-summary__empty svg{width:38px;height:38px;color:var(--ec-text-subtle)}.report-new-summary__empty h2{color:var(--ec-text-secondary);font-size:14px}.report-back-link{color:var(--ec-text-muted);align-items:center;gap:6px;margin-top:14px;font-size:10px;text-decoration:none;display:inline-flex}.report-back-link svg{width:13px}.report-builder-page{background:var(--ec-bg-secondary);margin:-22px -24px -40px}.report-builder-topbar{border-bottom:1px solid var(--ec-border);background:var(--ec-bg-surface);grid-template-columns:180px minmax(0,1fr) auto;align-items:center;gap:14px;min-height:62px;padding:8px 14px;display:grid}.report-builder-back{color:var(--ec-text-muted);background:0 0;border:0;align-items:center;gap:7px;padding:0;font-size:10px;font-weight:650;display:inline-flex}.report-builder-back svg{width:14px}.report-builder-topbar>div:nth-child(2){min-width:0}.report-builder-topbar input{width:min(100%,520px);color:var(--ec-text-primary);background:0 0;border:0;outline:0;margin:2px 0;padding:0;font-size:14px;font-weight:700;display:block}.report-builder-topbar small{color:var(--ec-warning);font-size:8px}.report-builder-topbar__actions{gap:7px;display:flex}.report-builder-validation{min-height:36px;color:var(--ec-danger);border-bottom:1px solid var(--ec-danger);align-items:center;gap:8px;padding:7px 14px;display:flex}@supports (color:color-mix(in lab, red, red)){.report-builder-validation{border-bottom:1px solid color-mix(in srgb, var(--ec-danger) 24%, var(--ec-border))}}.report-builder-validation{background:var(--ec-danger-soft);font-size:10px}.report-builder-validation svg{width:14px}.report-builder-validation button{color:inherit;background:0 0;border:0;margin-left:auto;font-size:9px}.report-builder-workspace{grid-template-columns:230px minmax(420px,1fr) 318px;height:calc(100vh - 122px);min-height:630px;display:grid;overflow:hidden}.report-section-library,.report-builder-inspector{background:var(--ec-bg-surface);min-width:0;overflow-y:auto}.report-section-library{border-right:1px solid var(--ec-border)}.report-section-library>header,.report-builder-inspector>header{z-index:3;border-bottom:1px solid var(--ec-border);background:var(--ec-bg-surface);align-items:center;gap:9px;min-height:52px;padding:10px 12px;display:flex;position:sticky;top:0}.report-section-library>header svg,.report-builder-inspector>header svg{width:16px;color:var(--ec-primary)}.report-section-library>header strong,.report-section-library>header small,.report-builder-inspector>header strong,.report-builder-inspector>header small{display:block}.report-section-library>header strong,.report-builder-inspector>header strong{font-size:11px}.report-section-library>header small,.report-builder-inspector>header small{color:var(--ec-text-muted);margin-top:2px;font-size:8px}.report-section-library section{border-bottom:1px solid var(--ec-border-subtle);padding:9px}.report-section-library h3,.report-builder-outline h3,.report-layout-properties h3{color:var(--ec-text-muted);letter-spacing:.08em;text-transform:uppercase;margin:2px 3px 7px;font-size:8px;font-weight:700}.report-section-library section>button{width:100%;min-height:43px;color:var(--ec-text-secondary);text-align:left;background:0 0;border:1px solid #0000;border-radius:6px;grid-template-columns:26px 1fr;align-items:center;gap:7px;padding:6px;display:grid}.report-section-library section>button:hover{color:var(--ec-primary);border-color:var(--ec-primary)}@supports (color:color-mix(in lab, red, red)){.report-section-library section>button:hover{border-color:color-mix(in srgb, var(--ec-primary) 20%, var(--ec-border))}}.report-section-library section>button:hover{background:var(--ec-primary-soft)}.report-section-library section>button>span{border:1px solid var(--ec-border);background:var(--ec-bg-secondary);border-radius:5px;place-items:center;width:25px;height:25px;display:grid}.report-section-library section>button svg{width:12px}.report-section-library section>button strong,.report-section-library section>button small{display:block}.report-section-library section>button strong{font-size:9px}.report-section-library section>button small{max-width:158px;color:var(--ec-text-muted);text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:7px;overflow:hidden}.report-builder-canvas{background:linear-gradient(90deg, var(--ec-border) 1px, transparent 1px) 0 0 / 20px 20px, linear-gradient(var(--ec-border) 1px, transparent 1px) 0 0 / 20px 20px, var(--ec-bg-secondary);min-width:0;position:relative;overflow:hidden}@supports (color:color-mix(in lab, red, red)){.report-builder-canvas{background:linear-gradient(90deg, color-mix(in srgb, var(--ec-border) 42%, transparent) 1px, transparent 1px) 0 0 / 20px 20px, linear-gradient(color-mix(in srgb, var(--ec-border) 42%, transparent) 1px, transparent 1px) 0 0 / 20px 20px, var(--ec-bg-secondary)}}.report-builder-document-toolbar{z-index:2;height:42px;color:var(--ec-text-muted);border-bottom:1px solid var(--ec-border);background:var(--ec-bg-surface);justify-content:space-between;align-items:center;padding:0 11px;display:flex;position:relative}@supports (color:color-mix(in lab, red, red)){.report-builder-document-toolbar{background:color-mix(in srgb, var(--ec-bg-surface) 94%, transparent)}}.report-builder-document-toolbar{font-size:9px}.report-builder-document-toolbar span,.report-builder-document-toolbar label{align-items:center;gap:7px;display:flex}.report-builder-document-toolbar svg{width:13px}.report-builder-document-toolbar .ec-select{width:86px;min-height:27px}.report-builder-paper-wrap{height:calc(100% - 42px);padding:24px 24px 80px;overflow:auto}.report-builder-paper-wrap .report-paper.is-compact{transform-origin:top;margin:0 auto -30%;transform:scale(.72)}.report-builder-inspector{border-left:1px solid var(--ec-border)}.report-builder-outline{border-bottom:1px solid var(--ec-border);padding:10px 8px}.report-builder-outline>.report-outline-item{width:100%;min-height:42px;color:var(--ec-text-muted);text-align:left;background:0 0;border:1px solid #0000;border-radius:5px;grid-template-columns:14px 1fr auto;align-items:center;gap:7px;padding:5px 6px;display:grid}.report-builder-outline>.report-outline-item:hover,.report-builder-outline>.report-outline-item.is-selected{color:var(--ec-primary);border-color:var(--ec-primary)}@supports (color:color-mix(in lab, red, red)){.report-builder-outline>.report-outline-item:hover,.report-builder-outline>.report-outline-item.is-selected{border-color:color-mix(in srgb, var(--ec-primary) 20%, var(--ec-border))}}.report-builder-outline>.report-outline-item:hover,.report-builder-outline>.report-outline-item.is-selected{background:var(--ec-primary-soft)}.report-builder-outline>.report-outline-item>svg{cursor:grab;width:12px}.report-builder-outline>.report-outline-item strong,.report-builder-outline>.report-outline-item small{display:block}.report-builder-outline>.report-outline-item strong{max-width:164px;color:var(--ec-text-primary);text-overflow:ellipsis;white-space:nowrap;font-size:9px;overflow:hidden}.report-builder-outline>.report-outline-item small{margin-top:2px;font-size:7px}.report-builder-outline>.report-outline-item>i{display:flex}.report-builder-outline>.report-outline-item>i button{width:20px;height:20px;color:inherit;background:0 0;border:0;place-items:center;display:grid}.report-builder-outline>.report-outline-item>i svg{width:10px}.report-builder-section-actions{border-bottom:1px solid var(--ec-border-subtle);gap:5px;padding:8px;display:flex}.report-builder-section-actions button{min-height:28px;color:var(--ec-text-muted);border:1px solid var(--ec-border);background:var(--ec-bg-secondary);border-radius:5px;align-items:center;gap:5px;padding:0 8px;font-size:8px;display:inline-flex}.report-builder-section-actions button.is-danger{color:var(--ec-danger);margin-left:auto}.report-builder-section-actions svg{width:11px}.report-properties{border-bottom:1px solid var(--ec-border);padding:10px}.report-properties>header{border-bottom:1px solid var(--ec-border-subtle);margin-bottom:10px;padding-bottom:8px}.report-properties>header span,.report-properties>header small{display:block}.report-properties>header span{font-size:10px;font-weight:700}.report-properties>header small{color:var(--ec-text-muted);margin-top:2px;font-size:8px}.report-properties>label,.report-properties__row,.report-tag-binding>label{margin-bottom:9px}.report-properties textarea{resize:vertical}.report-properties__row{grid-template-columns:1fr 90px;gap:7px;display:grid}.report-properties__section-title{color:var(--ec-text-primary);justify-content:space-between;align-items:center;margin:12px 0 6px;font-size:9px;font-weight:700;display:flex}.report-properties__section-title button{color:var(--ec-primary);background:0 0;border:0;align-items:center;gap:3px;font-size:8px;display:inline-flex}.report-properties__section-title svg{width:10px}.report-query-tabs{gap:3px;margin-bottom:6px;display:flex;overflow-x:auto}.report-query-tabs button{max-width:105px;color:var(--ec-text-muted);border:1px solid var(--ec-border);background:var(--ec-bg-secondary);text-overflow:ellipsis;white-space:nowrap;border-radius:4px;padding:5px 7px;font-size:7px;overflow:hidden}.report-query-tabs button.is-active{color:var(--ec-primary);border-color:var(--ec-primary);background:var(--ec-primary-soft)}.report-tag-binding{border:1px solid var(--ec-border);background:var(--ec-bg-secondary);border-radius:6px;padding:8px}.report-tag-binding__main{width:100%;color:var(--ec-text-primary);border:1px solid var(--ec-primary);justify-content:space-between;align-items:center;gap:8px;margin-bottom:9px;padding:8px;display:flex}@supports (color:color-mix(in lab, red, red)){.report-tag-binding__main{border:1px solid color-mix(in srgb, var(--ec-primary) 22%, var(--ec-border))}}.report-tag-binding__main{background:var(--ec-bg-surface);text-align:left;border-radius:5px}.report-tag-binding__main strong,.report-tag-binding__main code{display:block}.report-tag-binding__main strong{font-size:9px}.report-tag-binding__main code{color:var(--ec-primary);margin-top:3px;font-size:7px}.report-tag-binding__main svg{width:13px;color:var(--ec-primary)}.report-checkbox{grid-template-columns:16px 1fr;align-items:center;gap:7px!important;display:flex!important}.report-checkbox input{width:14px;min-height:14px;accent-color:var(--ec-primary)}.report-properties__print{background:var(--ec-bg-secondary);border-radius:5px;margin-top:11px;padding:8px}.report-properties__print span,.report-properties__print strong{font-size:8px;display:block}.report-properties__print span{color:var(--ec-text-muted)}.report-properties__print strong{color:var(--ec-text-secondary);margin-top:3px}.report-layout-properties{padding:10px}.report-layout-properties>div{grid-template-columns:1fr 1fr;gap:7px;display:grid}.report-preview-page{background:#e8ecef;margin:-22px -24px -40px;padding-bottom:42px}.report-preview-toolbar{border-bottom:1px solid var(--ec-border);background:var(--ec-bg-surface);grid-template-columns:95px minmax(210px,1fr) 168px auto;align-items:center;gap:12px;min-height:65px;padding:8px 16px;display:grid}.report-preview-toolbar__title{min-width:0}.report-preview-toolbar__title strong,.report-preview-toolbar__title small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.report-preview-toolbar__title strong{color:var(--ec-text-primary);font-size:12px}.report-preview-toolbar__title small{color:var(--ec-info);margin-top:2px;font-size:8px}.report-preview-toolbar>label,.report-preview-toolbar>.report-preview-period{color:var(--ec-text-muted);gap:3px;font-size:8px;display:grid}.report-preview-period__override{color:var(--ec-warning);gap:2px;padding-top:2px;display:grid}.report-preview-period__override small{font-size:7px;line-height:1.2}.report-preview-period__override button{width:fit-content;color:var(--ec-primary);cursor:pointer;background:0 0;border:0;padding:0;font-size:7px;font-weight:650}.report-preview-period__override button:hover{text-decoration:underline}.report-preview-toolbar__actions{gap:5px;display:flex}.report-preview-toolbar__actions .ec-button{min-height:31px;padding:0 9px;font-size:8px}.report-preview-message{color:var(--ec-success);border-bottom:1px solid var(--ec-success);align-items:center;gap:8px;padding:8px 16px;display:flex}@supports (color:color-mix(in lab, red, red)){.report-preview-message{border-bottom:1px solid color-mix(in srgb, var(--ec-success) 20%, var(--ec-border))}}.report-preview-message{background:var(--ec-success-soft);font-size:9px}.report-preview-message svg{width:13px}.report-preview-message button{color:inherit;background:0 0;border:0;margin-left:auto;font-size:8px}.report-preview-context{color:#667085;background:#f6f8f9;border-bottom:1px solid #d4dade;justify-content:center;align-items:center;gap:22px;min-height:36px;font-size:8px;display:flex}.report-preview-context span:first-child{align-items:center;gap:5px;display:flex}.report-preview-context i{background:var(--ec-primary);border-radius:50%;width:6px;height:6px}.report-preview-stage{padding:26px 24px 40px;overflow-x:auto}.report-paper{color:#17212b;background:#fff;width:794px;min-height:1123px;margin:0 auto;padding:58px 64px 54px;font-family:Inter,Segoe UI,Arial,sans-serif;position:relative;box-shadow:0 12px 38px #17212b2e}.report-paper.is-a3{width:1123px;min-height:1587px}.report-paper.is-letter{width:816px;min-height:1056px}.report-paper.is-landscape{width:1123px;min-height:794px}.report-paper.margins-narrow{padding:38px 44px 42px}.report-paper.margins-wide{padding:74px 82px 68px}.report-paper__header{border-bottom:2px solid #173c4b;grid-template-columns:1fr;gap:23px;margin-bottom:30px;padding-bottom:21px;display:grid}.report-paper__brand{align-items:center;gap:9px;display:flex}.report-paper__logo{color:#fff;letter-spacing:-.04em;background:#18aaa6;border-radius:6px;place-items:center;width:33px;height:33px;font-size:11px;font-weight:800;display:grid}.report-paper__brand strong,.report-paper__brand small{display:block}.report-paper__brand strong{color:#173c4b;letter-spacing:.04em;text-transform:uppercase;font-size:11px}.report-paper__brand small{color:#667085;margin-top:2px;font-size:7px}.report-paper__title>span{color:#18aaa6;letter-spacing:.16em;font-size:7px;font-weight:800}.report-paper__title h1{color:#17212b;letter-spacing:-.025em;margin:7px 0 6px;font-size:24px;font-weight:720}.report-paper__title p{color:#667085;margin:0;font-size:10px;line-height:1.5}.report-paper__header>dl{background:#f8fafb;border:1px solid #dde2e7;border-radius:5px;grid-template-columns:repeat(3,1fr);margin:0;padding:11px 13px;display:grid}.report-paper__header>dl div{border-right:1px solid #dde2e7;padding:0 11px}.report-paper__header>dl div:last-child{border-right:0}.report-paper__header dt{color:#98a2b3;letter-spacing:.08em;text-transform:uppercase;font-size:6px;font-weight:700}.report-paper__header dd{color:#344054;margin:3px 0 0;font-size:8px;font-weight:650}.report-paper__sections{grid-template-columns:repeat(4,minmax(0,1fr));align-items:start;gap:14px;display:grid}.report-section{break-inside:avoid;grid-column:1/-1;min-width:0}.report-section.is-kpi{grid-column:span 1}.report-section.is-page_break{break-before:page}.report-heading{margin:7px 0 2px}.report-heading h2{color:#173c4b;margin:0;font-size:16px;font-weight:700}.report-heading p{color:#667085;margin:4px 0 0;font-size:9px}.report-prose{color:#475467;margin:0;font-size:9px;line-height:1.65}.report-kpi{background:#fff;border:1px solid #dde2e7;border-top:3px solid #18aaa6;border-radius:5px;flex-direction:column;justify-content:center;min-height:92px;padding:12px;display:flex}.report-kpi>span{color:#667085;text-transform:uppercase;letter-spacing:.05em;font-size:7px;font-weight:650}.report-kpi strong{color:#173c4b;margin:6px 0 4px;font-size:20px;line-height:1;display:block}.report-kpi small{color:#98a2b3;text-overflow:ellipsis;white-space:nowrap;font-size:6px;overflow:hidden}.report-chart,.report-summary,.report-alert-summary,.report-event-timeline,.report-availability{background:#fff;border:1px solid #dde2e7;border-radius:5px;padding:15px}.report-chart h3,.report-summary h3,.report-alert-summary h3,.report-event-timeline h3,.report-availability h3{color:#344054;margin:0 0 9px;font-size:10px}.report-chart .ec-chart{width:100%}.report-summary dl,.report-alert-summary dl,.report-availability dl{grid-template-columns:repeat(4,1fr);gap:8px;margin:0;display:grid}.report-summary dl div,.report-alert-summary dl div,.report-availability dl div{background:#f8fafb;border-radius:4px;padding:9px}.report-summary dt,.report-alert-summary dt,.report-availability dt{color:#667085;font-size:7px}.report-summary dd,.report-alert-summary dd,.report-availability dd{color:#173c4b;margin:4px 0 0;font-size:14px;font-weight:700}.report-alert-summary .is-critical dd{color:#d64555}.report-alert-summary .is-warning dd{color:#c47b13}.report-alert-summary .is-info dd{color:#3478c7}.report-table-wrap{border:1px solid #dde2e7;border-radius:4px;overflow:hidden}.report-table{border-collapse:collapse;color:#344054;text-align:left;width:100%;font-size:7px}.report-table th{color:#475467;text-transform:uppercase;letter-spacing:.04em;background:#eef2f4;border-bottom:1px solid #cfd6dc;height:27px;padding:0 8px;font-size:6px;font-weight:750}.report-table td{vertical-align:middle;border-bottom:1px solid #eaecf0;padding:7px 8px}.report-table tr:nth-child(2n) td{background:#fafbfc}.report-table tr:last-child td{border-bottom:0}.report-table code{color:#173c4b;font-size:6px}.report-quality,.report-equipment-state,.report-severity{border-radius:999px;padding:3px 5px;font-size:6px}.report-quality.is-good,.report-equipment-state.is-online{color:#187a4e;background:#239f681a}.report-quality.is-uncertain,.report-quality.is-unknown,.report-equipment-state.is-warning,.report-severity.is-warning{color:#9b5e0d;background:#c47b131c}.report-quality.is-bad,.report-equipment-state.is-offline,.report-severity.is-critical{color:#b72f40;background:#d645551a}.report-event-timeline article{border-bottom:1px solid #eaecf0;grid-template-columns:20px 1fr;gap:8px;padding:8px 0;display:grid}.report-event-timeline article:last-child{border-bottom:0}.report-event-timeline article>span{color:#18aaa6;background:#18aaa61a;border-radius:50%;place-items:center;width:19px;height:19px;display:grid}.report-event-timeline article svg{width:8px}.report-event-timeline time,.report-event-timeline strong,.report-event-timeline p{display:block}.report-event-timeline time{color:#98a2b3;font-size:6px}.report-event-timeline strong{color:#344054;margin-top:2px;font-size:8px}.report-event-timeline p{color:#667085;margin:2px 0 0;font-size:7px}.report-availability>div{grid-template-columns:150px 1fr;align-items:stretch;gap:12px;display:grid}.report-availability__score{color:#239f68;background:#239f6814;border-radius:4px;grid-template-columns:20px 1fr;align-items:center;padding:12px;display:grid}.report-availability__score svg{width:15px}.report-availability__score strong{font-size:18px}.report-availability__score small{color:#667085;grid-column:1/-1;margin-top:5px;font-size:6px}.report-page-break{border-top:1px dashed #98a2b3;place-items:center;min-height:30px;display:grid}.report-page-break span{color:#98a2b3;text-transform:uppercase;letter-spacing:.08em;background:#fff;padding:0 8px;font-size:6px;transform:translateY(-50%)}.report-section-state{color:#667085;background:#f8fafb;border:1px dashed #cfd6dc;border-radius:5px;justify-content:center;align-items:center;gap:8px;min-height:72px;padding:12px;font-size:8px;display:flex}.report-section-state svg{color:#18aaa6;width:15px}.report-section-state.is-error{color:#b72f40;background:#d645550f;border-color:#d645554d;justify-content:flex-start}.report-section-state.is-error>div{flex:1}.report-section-state.is-error strong,.report-section-state.is-error span{display:block}.report-section-state.is-error span{color:#667085;margin-top:2px;font-size:7px}.report-section-error>small{color:#667085;letter-spacing:.04em;text-transform:uppercase;margin-bottom:5px;font-size:7px;font-weight:700;display:block}.report-paper__footer{color:#98a2b3;border-top:1px solid #dde2e7;justify-content:space-between;padding-top:8px;font-size:6px;display:flex;position:absolute;bottom:25px;left:64px;right:64px}.report-print-security{color:#98a2b3;align-items:center;gap:4px;font-size:5px;display:flex;position:absolute;bottom:10px;right:64px}.report-print-security svg{width:8px}.report-large-export-note{color:#475467;background:#f8fafb;border:1px solid #cfd6dc;border-radius:6px;gap:11px;width:min(794px,100% - 48px);margin:0 auto;padding:13px 15px;display:flex}.report-large-export-note>svg{color:#18aaa6;flex:0 0 17px}.report-large-export-note strong{color:#344054;font-size:9px}.report-large-export-note p{margin:4px 0 0;font-size:8px;line-height:1.5}.report-large-export-note code{color:#173c4b;font-size:7px}.report-schedule-boundary{color:var(--ec-info);border:1px solid var(--ec-info);align-items:center;gap:12px;margin-bottom:14px;padding:13px 15px;display:flex}@supports (color:color-mix(in lab, red, red)){.report-schedule-boundary{border:1px solid color-mix(in srgb, var(--ec-info) 25%, var(--ec-border))}}.report-schedule-boundary{background:var(--ec-info-soft);border-radius:8px}.report-schedule-boundary>svg{width:20px}.report-schedule-boundary strong,.report-schedule-boundary p{margin:0;display:block}.report-schedule-boundary strong{font-size:11px}.report-schedule-boundary p{color:var(--ec-text-secondary);margin-top:3px;font-size:9px}.report-schedule-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:11px;display:grid}.report-schedule-grid>article{border:1px solid var(--ec-border);background:var(--ec-bg-surface);border-radius:8px;overflow:hidden}.report-schedule-grid>article.is-paused{opacity:.7}.report-schedule-grid article>header{border-bottom:1px solid var(--ec-border-subtle);grid-template-columns:34px 1fr 30px;gap:9px;padding:14px;display:grid}.report-schedule-grid header>span{width:34px;height:34px;color:var(--ec-primary);background:var(--ec-primary-soft);border-radius:7px;place-items:center;display:grid}.report-schedule-grid header small{color:var(--ec-primary);text-transform:uppercase;font-size:7px;font-weight:700}.report-schedule-grid header h2{margin:3px 0;font-size:12px}.report-schedule-grid header p{color:var(--ec-text-muted);margin:0;font-size:8px}.report-schedule-toggle{width:28px;height:28px;color:var(--ec-primary);border:1px solid var(--ec-border);background:var(--ec-bg-secondary);border-radius:5px;place-items:center;display:grid}.report-schedule-toggle svg{width:12px}.report-schedule-grid dl{grid-template-columns:1fr 1fr;margin:0;padding:11px 14px;display:grid}.report-schedule-grid dl div{padding:7px 0}.report-schedule-grid dt{color:var(--ec-text-muted);font-size:8px}.report-schedule-grid dd{margin:3px 0 0;font-size:9px;font-weight:650}.report-schedule-grid article>footer{border-top:1px solid var(--ec-border-subtle);background:var(--ec-bg-secondary);align-items:center;gap:6px;padding:9px 14px;display:flex}.report-schedule-grid footer>span{color:var(--ec-text-muted);align-items:center;gap:5px;margin-right:auto;font-size:8px;display:flex}.report-schedule-grid footer>span i{background:var(--ec-text-subtle);border-radius:50%;width:6px;height:6px}.report-schedule-grid footer>span.is-active{color:var(--ec-success)}.report-schedule-grid footer>span.is-active i{background:var(--ec-success)}.report-schedule-grid footer button{color:var(--ec-text-muted);background:0 0;border:0;font-size:8px}.report-schedule-grid footer button.is-danger{color:var(--ec-danger)}.report-schedule-grid footer svg{width:12px}.report-schedule-editor__banner{color:var(--ec-primary);background:var(--ec-primary-soft);border-radius:6px;align-items:center;gap:10px;margin-bottom:14px;padding:11px;display:flex}.report-schedule-editor__banner svg{width:18px}.report-schedule-editor__banner strong,.report-schedule-editor__banner small{display:block}.report-schedule-editor__banner strong{font-size:10px}.report-schedule-editor__banner small{color:var(--ec-text-secondary);margin-top:3px;font-size:8px}.report-schedule-editor__grid{grid-template-columns:1fr 1fr;gap:11px;display:grid}.report-schedule-editor label.is-wide{grid-column:1/-1}.report-schedule-editor label.is-wide>svg{width:13px}.report-schedule-editor label small{color:var(--ec-text-muted);font-size:7px}.report-delivery-editor{border:1px solid var(--ec-border);background:var(--ec-bg-secondary);border-radius:7px;margin:15px 0;padding:13px}.report-delivery-editor>header{align-items:center;gap:9px;margin-bottom:12px;display:flex}.report-delivery-editor>header svg{width:16px;color:var(--ec-info)}.report-delivery-editor strong,.report-delivery-editor small{display:block}.report-delivery-editor strong{font-size:10px}.report-delivery-editor small{color:var(--ec-text-muted);margin-top:2px;font-size:8px}.report-schedule-editor>footer{justify-content:flex-end;gap:8px;margin-top:15px;display:flex}.report-form-error{color:var(--ec-danger);font-size:9px}.report-history-summary{border:1px solid var(--ec-border);background:var(--ec-border);border-radius:8px;grid-template-columns:repeat(3,1fr) minmax(250px,1.5fr);gap:1px;margin-bottom:12px;display:grid;overflow:hidden}.report-history-summary>article,.report-history-summary>label,.report-history-summary>.report-history-filter{background:var(--ec-bg-surface);align-items:center;gap:11px;min-height:70px;padding:12px 15px;display:flex}.report-history-summary article>svg{width:18px;color:var(--ec-primary)}.report-history-summary strong,.report-history-summary small{display:block}.report-history-summary strong{font-size:16px}.report-history-summary small{color:var(--ec-text-muted);margin-top:3px;font-size:8px}.report-history-summary>label,.report-history-summary>.report-history-filter{color:var(--ec-text-muted);grid-template-columns:15px auto 1fr;font-size:9px;display:grid}.report-history-summary label svg,.report-history-summary .report-history-filter svg{width:14px}.report-history-table td{vertical-align:top}.report-run-id{align-items:center;gap:5px;display:inline-flex}.report-run-id svg{width:12px;color:var(--ec-primary)}.report-run-id code{color:var(--ec-text-secondary);font-size:8px}.report-run-status svg{width:11px}.report-run-status.is-completed{color:var(--ec-success)}.report-run-status.is-failed{color:var(--ec-danger)}.report-run-error{max-width:170px;color:var(--ec-danger);margin-top:4px;font-size:7px;display:block}@media (max-width:1220px){.report-template-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.report-builder-workspace{grid-template-columns:200px minmax(380px,1fr) 285px}.report-builder-paper-wrap .report-paper.is-compact{margin-bottom:-45%;transform:scale(.62)}.report-preview-toolbar{grid-template-columns:80px minmax(160px,1fr) 150px}.report-preview-toolbar__actions{grid-column:1/-1;justify-content:flex-end}}@media (max-width:1024px){.reports-overview-strip{grid-template-columns:repeat(3,1fr)}.reports-mode-note{border-top:1px solid var(--ec-border-subtle);grid-column:1/-1}.report-template-grid,.report-schedule-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.report-new-layout{grid-template-columns:minmax(0,1fr) 300px}.report-builder-workspace{grid-template-columns:185px minmax(360px,1fr) 265px}.report-builder-outline>.report-outline-item>i{display:none}.report-preview-stage{padding-inline:16px}}@media (max-width:860px){.reports-filterbar,.report-history-summary{grid-template-columns:1fr 1fr}.reports-search{grid-column:1/-1}.report-template-hero{flex-direction:column;align-items:flex-start}.report-new-layout{grid-template-columns:1fr}.report-new-summary{position:static}.report-builder-workspace{grid-template-columns:160px minmax(400px,1fr);overflow-x:auto}.report-builder-inspector{z-index:20;width:300px;position:fixed;top:122px;bottom:0;right:0;box-shadow:-10px 0 24px #17212b1f}.report-preview-toolbar{grid-template-columns:80px 1fr}.report-preview-toolbar>label,.report-preview-toolbar>.report-preview-period{grid-column:1/-1}.report-preview-toolbar__actions{flex-wrap:wrap;justify-content:flex-start}}@media (max-width:640px){.reports-module-nav{overflow-x:auto}.reports-overview-strip,.reports-filterbar,.report-template-grid,.report-new-templates>div,.report-schedule-grid,.report-history-summary,.report-schedule-editor__grid{grid-template-columns:1fr}.reports-mode-note,.reports-search{grid-column:auto}.reports-overview-strip>article{border-right:0;border-bottom:1px solid var(--ec-border-subtle)}.report-template-hero>dl{justify-content:space-between;width:100%}.report-create-steps li{padding:10px}.report-create-steps small{display:none}.report-builder-page{margin-inline:-14px}.report-builder-topbar{grid-template-columns:70px 1fr}.report-builder-topbar__actions{grid-column:1/-1}.report-builder-workspace{height:auto;display:block;overflow:visible}.report-section-library{border-right:0;border-bottom:1px solid var(--ec-border);max-height:250px}.report-builder-canvas{min-height:700px}.report-builder-inspector{width:auto;max-height:600px;box-shadow:none;position:static}.report-preview-page{margin-inline:-14px}.report-preview-context{white-space:nowrap;justify-content:flex-start;padding-inline:12px;overflow-x:auto}.report-paper{transform-origin:0 0;margin-bottom:-30%;margin-right:-30%;transform:scale(.7)}}@media print{@page{size:A4 portrait;margin:0}html,body,.app-shell,.app-workspace,.app-content,.report-preview-page,.report-preview-stage{background:#fff!important;width:auto!important;min-width:0!important;min-height:0!important;margin:0!important;padding:0!important}.app-sidebar,.app-header,.report-screen-only,.report-large-export-note,.ec-dialog,.ec-overlay{display:none!important}.app-workspace{margin-left:0!important}.report-paper{-webkit-print-color-adjust:exact;print-color-adjust:exact;width:210mm!important;min-height:297mm!important;box-shadow:none!important;margin:0!important;padding:15mm 17mm 14mm!important}.report-section,.report-kpi,.report-chart,.report-summary,.report-alert-summary,.report-event-timeline,.report-availability{break-inside:avoid}.report-section.is-table,.report-section.is-alert_table,.report-section.is-audit_table,.report-section.is-equipment_status_table{break-inside:auto}.report-table thead{display:table-header-group}.report-section.is-page_break{break-before:page;height:0}.report-page-break{display:none}.report-paper__footer{position:fixed;bottom:7mm;left:17mm;right:17mm}}.scada-viewer-page{width:min(100%,1680px);margin:0 auto}.scada-connection-state{color:var(--success);border:1px solid var(--success);align-items:center;gap:7px;padding:7px 10px;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.scada-connection-state{border:1px solid color-mix(in srgb, var(--success) 28%, var(--border))}}.scada-connection-state{background:var(--success-soft);border-radius:999px;font-size:11px;font-weight:650}.scada-toolbar{border:1px solid var(--border);background:var(--surface);border-radius:9px;justify-content:space-between;align-items:center;gap:16px;margin-bottom:12px;padding:9px 12px;display:flex;box-shadow:0 4px 16px #17212b0a}.scada-toolbar>div:first-child{flex-direction:column;gap:2px;display:flex}.scada-toolbar>div:first-child strong{font-size:12px}.scada-toolbar>div:first-child span{color:var(--text-muted);font-size:10px}.scada-toolbar__actions{align-items:center;gap:4px;display:flex}.scada-toolbar__actions .ec-button{min-height:32px}.scada-zoom-value{min-width:42px;color:var(--text-secondary);text-align:center;font:600 10px var(--font-geist-mono)}.scada-workspace{border:1px solid var(--border);background:var(--surface);border-radius:11px;grid-template-columns:minmax(0,1fr) 290px;min-height:620px;display:grid;overflow:hidden;box-shadow:0 8px 30px #17212b12}.scada-canvas{background:var(--background-subtle);min-width:0;position:relative;overflow:hidden}@supports (color:color-mix(in lab, red, red)){.scada-canvas{background:color-mix(in srgb, var(--background-subtle) 72%, var(--surface))}}.scada-canvas__grid{opacity:.45;background-image:linear-gradient(var(--border-soft) 1px, transparent 1px), linear-gradient(90deg, var(--border-soft) 1px, transparent 1px);background-size:24px 24px;position:absolute;inset:0}.scada-zone-label{color:var(--text-muted);font:650 9px var(--font-geist-mono);letter-spacing:.12em;position:absolute;top:24px;left:28px}.scada-process-node{z-index:3;border:1px solid var(--border);color:var(--text);background:var(--surface);cursor:pointer;transition:all .16s;position:absolute;box-shadow:0 5px 18px #17212b14}.scada-process-node:hover,.scada-process-node[data-selected=true]{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft), 0 8px 22px #17212b1a}.scada-process-node--reservoir{background:0 0;border:3px solid #78909c;border-top-width:7px;border-radius:12px 12px 38px 38px;width:170px;height:270px;top:120px;left:7%;overflow:hidden}.scada-reservoir__water{background:linear-gradient(#18aaa68c,#187aaabd);position:absolute;bottom:0;left:0;right:0}.scada-reservoir__water:before{content:"";background:#73d5d1;border-radius:50%;width:120%;height:10px;position:absolute;top:-5px;left:-10%}.scada-reservoir__label{color:#fff;text-shadow:0 1px 3px #00000073;place-content:center;display:grid;position:absolute;inset:0}.scada-reservoir__label small{font:650 9px var(--font-geist-mono);letter-spacing:.06em}.scada-reservoir__label strong{letter-spacing:-.05em;margin-top:5px;font-size:32px}.scada-reservoir__label em{font-size:10px;font-style:normal}.scada-pipe{z-index:1;background:#dbe8eb;border:3px solid #6d8790;border-radius:10px;height:14px;position:absolute}.scada-pipe i{border-radius:inherit;background:repeating-linear-gradient(90deg, var(--primary) 0 12px, transparent 12px 24px);opacity:.6;animation:1.4s linear infinite scada-flow;position:absolute;inset:2px}.scada-pipe--a{width:19%;top:278px;left:calc(7% + 168px)}.scada-pipe--b{width:17%;top:278px;left:48%}.scada-pipe--c{width:18%;top:278px;right:5%}@keyframes scada-flow{to{background-position:24px 0}}.scada-pump{border-radius:10px;align-content:center;justify-items:center;gap:3px;width:126px;height:112px;display:grid;top:225px}.scada-pump--one{left:34%}.scada-pump--two{left:66%}.scada-pump>span{width:42px;height:42px;color:var(--text-muted);border:5px solid var(--border);border-radius:50%;place-items:center;margin-bottom:4px;display:grid}.scada-pump.is-running>span{color:var(--success);border-color:var(--success)}@supports (color:color-mix(in lab, red, red)){.scada-pump.is-running>span{border-color:color-mix(in srgb, var(--success) 46%, var(--border))}}.scada-pump.is-running>span{animation:2.2s ease-in-out infinite scada-pump-pulse}@keyframes scada-pump-pulse{50%{box-shadow:0 0 0 7px var(--success-soft)}}.scada-pump strong{font:700 10px var(--font-geist-mono)}.scada-pump small{color:var(--text-muted);font-size:9px}.scada-tag-card{text-align:left;border-radius:8px;width:174px;padding:14px;top:124px;left:46%}.scada-tag-card small{color:var(--text-muted);font:650 8px var(--font-geist-mono);letter-spacing:.08em}.scada-tag-card strong{letter-spacing:-.04em;margin:7px 0;font-size:24px;display:block}.scada-tag-card strong em{font-size:11px;font-style:normal}.scada-tag-card>span{color:var(--warning);font-size:9px}.scada-alert-marker{z-index:4;color:var(--danger);border:1px solid var(--danger);align-items:center;gap:6px;padding:7px 9px;display:flex;position:absolute;top:405px;right:7%}@supports (color:color-mix(in lab, red, red)){.scada-alert-marker{border:1px solid color-mix(in srgb, var(--danger) 28%, var(--border))}}.scada-alert-marker{background:var(--danger-soft);border-radius:7px;font-size:10px;font-weight:650}.scada-canvas-legend{color:var(--text-muted);gap:15px;font-size:9px;display:flex;position:absolute;bottom:20px;left:24px}.scada-canvas-legend span{align-items:center;gap:5px;display:flex}.scada-canvas-legend i{background:var(--success);border-radius:50%;width:7px;height:7px}.scada-canvas-legend i.is-warning{background:var(--warning)}.scada-canvas-legend i.is-bad{background:var(--danger)}.scada-inspector{border-left:1px solid var(--border);background:var(--surface);padding:18px}.scada-inspector>header{border-bottom:1px solid var(--border-soft);gap:10px;padding-bottom:17px;display:flex}.scada-inspector__icon{width:32px;height:32px;color:var(--primary);background:var(--primary-soft);border-radius:8px;flex:none;place-items:center;display:grid}.scada-inspector header>div{flex-direction:column;min-width:0;display:flex}.scada-inspector header small,.scada-inspector section>small{color:var(--text-muted);font:650 8px var(--font-geist-mono);letter-spacing:.08em}.scada-inspector header strong{margin:3px 0;font-size:12px}.scada-inspector header span{color:var(--text-muted);font-size:9px}.scada-inspector dl{margin:17px 0}.scada-inspector dl>div{border-bottom:1px solid var(--border-soft);padding:9px 0}.scada-inspector dt{color:var(--text-muted);margin-bottom:4px;font-size:9px}.scada-inspector dd{margin:0;font-size:12px;font-weight:600}.scada-inspector dd.is-good{color:var(--success)}.scada-inspector dd.is-warning{color:var(--warning)}.scada-inspector code{color:var(--primary);font:550 9px var(--font-geist-mono);overflow-wrap:anywhere}.scada-inspector section{border:1px solid var(--border-soft);background:var(--background-subtle);border-radius:8px;padding:13px}.scada-inspector section>span{color:var(--text-muted);font-size:9px}.scada-sparkline{align-items:end;gap:4px;height:45px;margin:10px 0 5px;display:flex}.scada-sparkline i{background:var(--primary);opacity:.72;border-radius:2px 2px 0 0;flex:1}.scada-sparkline i:first-child{height:35%}.scada-sparkline i:nth-child(2){height:48%}.scada-sparkline i:nth-child(3){height:43%}.scada-sparkline i:nth-child(4){height:68%}.scada-sparkline i:nth-child(5){height:54%}.scada-sparkline i:nth-child(6){height:76%}.scada-sparkline i:nth-child(7){height:63%}.scada-sparkline i:nth-child(8){height:70%}.scada-readonly-note{color:var(--info);background:var(--info-soft);border-radius:8px;gap:8px;margin-top:16px;padding:10px;display:flex}.scada-readonly-note p{flex-direction:column;gap:2px;margin:0;display:flex}.scada-readonly-note strong{font-size:10px}.scada-readonly-note span{color:var(--text-secondary);font-size:9px;line-height:1.4}@media (max-width:1000px){.scada-workspace{grid-template-columns:1fr}.scada-canvas{min-height:560px}.scada-inspector{border-top:1px solid var(--border);border-left:0}}@media (max-width:680px){.scada-toolbar{flex-direction:column;align-items:flex-start}.scada-toolbar__actions{width:100%;overflow-x:auto}.scada-workspace{min-height:auto}.scada-canvas{transform-origin:0 0;min-width:760px;min-height:520px}.scada-workspace{overflow-x:auto}}.scada-toolbar__screen-picker{align-items:center;min-width:0;flex-flow:wrap!important;gap:7px!important;display:flex!important}.scada-toolbar__screen-picker>label{color:var(--text-muted);font:650 9px var(--font-geist-mono);letter-spacing:.06em;text-transform:uppercase}.scada-toolbar__screen-picker .ec-select{min-width:230px;padding-block:7px}.scada-operation-mode{background:var(--info-soft);white-space:nowrap;border-radius:999px;align-items:center;gap:5px;padding:5px 8px;display:inline-flex;color:var(--info)!important;font-size:9px!important}.scada-toolbar__actions .is-spinning{animation:1s linear infinite slow-spin}.scada-canvas-column{grid-template-rows:32px minmax(0,1fr);min-width:0;display:grid}.scada-canvas-meta{z-index:5;color:var(--text-muted);border-bottom:1px solid var(--border-soft);background:var(--surface);justify-content:space-between;align-items:center;gap:12px;padding:0 12px;font-size:9px;display:flex}.scada-canvas-meta span:last-child{color:var(--info);align-items:center;gap:5px;display:inline-flex}.scada-canvas-viewport{touch-action:none;cursor:grab;background:var(--background-subtle);min-width:0;min-height:588px;position:relative;overflow:hidden}@supports (color:color-mix(in lab, red, red)){.scada-canvas-viewport{background:color-mix(in srgb, var(--background-subtle) 72%, var(--surface))}}.scada-canvas-viewport:active{cursor:grabbing}.scada-canvas-stage{transform-origin:0 0;border:1px solid var(--border-soft);background:var(--background-subtle);border-radius:8px;position:absolute;top:0;left:0;overflow:hidden}@supports (color:color-mix(in lab, red, red)){.scada-canvas-stage{background:color-mix(in srgb, var(--background-subtle) 74%, var(--surface))}}.scada-canvas-stage{box-shadow:0 8px 22px #17212b0f}.scada-workspace:-webkit-full-screen{background:var(--surface);border:0;border-radius:0;grid-template-columns:minmax(0,1fr) 320px;width:100vw;height:100vh}.scada-workspace:fullscreen{background:var(--surface);border:0;border-radius:0;grid-template-columns:minmax(0,1fr) 320px;width:100vw;height:100vh}.scada-workspace:-webkit-full-screen .scada-canvas-viewport{min-height:calc(100vh - 32px)}.scada-workspace:fullscreen .scada-canvas-viewport{min-height:calc(100vh - 32px)}.scada-element{z-index:2;box-sizing:border-box;min-width:0;color:var(--text);font:inherit;margin:0;position:absolute}button.scada-element{border:1px solid var(--border);background:var(--surface);cursor:pointer;border-radius:9px;transition:all .15s;box-shadow:0 4px 14px #17212b12}button.scada-element:hover,button.scada-element[data-selected=true]{z-index:6;border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft), 0 7px 20px #17212b1a}.scada-element__alert{z-index:4;color:#fff;border:3px solid var(--surface);background:var(--danger);border-radius:999px;justify-content:center;align-items:center;gap:2px;min-width:25px;height:25px;padding:0 5px;font-size:8px;font-weight:750;display:inline-flex;position:absolute;top:-9px;right:-9px;box-shadow:0 3px 8px #d6455540}.scada-element--label{pointer-events:none;flex-direction:column;gap:3px;display:flex}.scada-element--label strong{color:var(--text-secondary);font:700 10px var(--font-geist-mono);letter-spacing:.12em}.scada-element--label small{color:var(--text-muted);font-size:9px}.scada-element--pipe{z-index:1;pointer-events:none;background:#dce9eb;border:3px solid #718993;border-radius:12px;overflow:hidden}.scada-element--pipe i{border-radius:inherit;background:repeating-linear-gradient(90deg, var(--primary) 0 12px, transparent 12px 24px);opacity:.2;position:absolute;inset:2px}.scada-element--pipe.is-animated i{opacity:.68;animation:1.4s linear infinite scada-flow}.scada-element--pipe.is-offline,.scada-element--pipe.is-no_data{filter:grayscale();opacity:.65}.scada-element--tank{overflow:hidden;background:0 0!important;border:3px solid #78909c!important;border-top-width:7px!important;border-radius:12px 12px 38px 38px!important}.scada-element--tank.is-warning{border-color:var(--warning)!important}@supports (color:color-mix(in lab, red, red)){.scada-element--tank.is-warning{border-color:color-mix(in srgb, var(--warning) 65%, #78909c)!important}}.scada-element--tank.is-critical{border-color:var(--danger)!important}@supports (color:color-mix(in lab, red, red)){.scada-element--tank.is-critical{border-color:color-mix(in srgb, var(--danger) 70%, #78909c)!important}}.scada-tank__liquid{background:linear-gradient(#18aaa694,#2576aec7);transition:height .42s;position:absolute;bottom:0;left:0;right:0}.scada-tank__liquid:before{content:"";background:#72d3cf;border-radius:50%;width:120%;height:10px;position:absolute;top:-5px;left:-10%}.scada-tank__content{color:#fff;text-shadow:0 1px 3px #00000080;place-content:center;display:grid;position:absolute;inset:0}.scada-tank__content small{font:650 9px var(--font-geist-mono);letter-spacing:.04em;text-transform:uppercase}.scada-tank__content strong{letter-spacing:-.05em;margin:5px 0;font-size:30px}.scada-tank__content em{text-transform:uppercase;font-size:9px;font-style:normal}.scada-element--metric{text-align:left;padding:14px}.scada-element--metric:before{content:"";background:var(--primary);border-radius:0 0 4px 4px;width:34px;height:3px;position:absolute;top:0;left:12px}.scada-element--metric.is-blue:before{background:var(--info)}.scada-element--metric.is-amber:before{background:var(--warning)}.scada-element--metric.is-violet:before{background:#7a62c9}.scada-element--metric>small{color:var(--text-muted);font:650 8px var(--font-geist-mono);letter-spacing:.06em;text-transform:uppercase}.scada-element--metric>strong{letter-spacing:-.04em;margin:8px 0 5px;font-size:23px;display:block}.scada-element__quality{color:var(--success);text-transform:uppercase;font-size:8px}.scada-element--metric.is-warning .scada-element__quality{color:var(--warning)}.scada-element--metric.is-critical .scada-element__quality{color:var(--danger)}.scada-element--pump,.scada-element--source,.scada-element--lamp,.scada-element--state{align-content:center;justify-items:center;gap:4px;padding:10px;display:grid}.scada-machine__icon{width:42px;height:42px;color:var(--text-muted);border:5px solid var(--border);border-radius:50%;place-items:center;margin-bottom:3px;display:grid}.scada-element--source .scada-machine__icon,.scada-element--state .scada-machine__icon{background:var(--background-subtle);border-width:0;border-radius:9px}.scada-element--lamp .scada-machine__icon{color:var(--warning);background:var(--warning-soft);border-width:0}.scada-element--pump.is-animated .scada-machine__icon{color:var(--success);border-color:var(--success)}@supports (color:color-mix(in lab, red, red)){.scada-element--pump.is-animated .scada-machine__icon{border-color:color-mix(in srgb, var(--success) 46%, var(--border))}}.scada-element--pump.is-animated .scada-machine__icon{animation:2.2s ease-in-out infinite scada-pump-pulse}.scada-element--lamp.is-animated .scada-machine__icon{box-shadow:0 0 20px var(--warning-soft);animation:2.2s ease-in-out infinite scada-pump-pulse}.scada-element--pump.is-critical .scada-machine__icon,.scada-element--pump.is-offline .scada-machine__icon{color:var(--danger);border-color:var(--danger)}@supports (color:color-mix(in lab, red, red)){.scada-element--pump.is-critical .scada-machine__icon,.scada-element--pump.is-offline .scada-machine__icon{border-color:color-mix(in srgb, var(--danger) 45%, var(--border))}}.scada-element--pump>strong,.scada-element--source>strong,.scada-element--lamp>strong,.scada-element--state>strong{font:700 10px var(--font-geist-mono);text-align:center;text-transform:uppercase}.scada-element--pump>small,.scada-element--source>small,.scada-element--lamp>small,.scada-element--state>small{color:var(--text-muted);font-size:9px}.scada-element--lamp>em{color:var(--warning);font-size:9px;font-style:normal}.scada-element--valve{align-content:center;justify-items:center;gap:3px;display:grid;box-shadow:none!important;background:0 0!important;border:0!important}.scada-valve__symbol{width:42px;height:30px;display:block;position:relative}.scada-valve__symbol i{border:3px solid var(--success);background:var(--surface);width:24px;height:20px;position:absolute;top:5px;transform:rotate(45deg)}.scada-valve__symbol i:first-child{left:1px}.scada-valve__symbol i:last-child{right:1px}.scada-element--valve small{color:var(--text-muted);white-space:nowrap;font-size:8px}.scada-element--navigation{justify-content:space-between;align-items:center;gap:10px;padding:10px 13px;display:flex;color:var(--primary)!important;border-color:var(--primary)!important}@supports (color:color-mix(in lab, red, red)){.scada-element--navigation{border-color:color-mix(in srgb, var(--primary) 30%, var(--border))!important}}.scada-element--navigation{background:var(--primary-soft)!important}@supports (color:color-mix(in lab, red, red)){.scada-element--navigation{background:color-mix(in srgb, var(--primary-soft) 55%, var(--surface))!important}}.scada-element--navigation{text-align:left}.scada-element--navigation span{flex-direction:column;gap:2px;display:flex}.scada-element--navigation small{color:var(--text-muted);font-size:8px}.scada-element--navigation strong{font-size:10px}.scada-canvas-stage .scada-canvas-legend{z-index:10;position:absolute}.scada-canvas-legend i.is-critical{background:var(--danger)}.scada-canvas-legend i.is-offline{background:var(--unknown)}.scada-inspector__hint{color:var(--text-muted);margin:18px 0;font-size:11px;line-height:1.55}.scada-inspector dd.is-good,.scada-inspector dd.is-normal{color:var(--success)}.scada-inspector dd.is-uncertain,.scada-inspector dd.is-warning{color:var(--warning)}.scada-inspector dd.is-bad,.scada-inspector dd.is-critical{color:var(--danger)}.scada-inspector dd.is-stale,.scada-inspector dd.is-unknown,.scada-inspector dd.is-offline,.scada-inspector dd.is-no_data{color:var(--unknown)}.scada-inspector__entity-link{color:var(--primary);background:var(--primary-soft);border-radius:7px;justify-content:space-between;align-items:center;gap:8px;margin:-4px 0 15px;padding:8px 9px;font-size:9px;font-weight:650;text-decoration:none;display:flex}.scada-inspector section+section{margin-top:10px}.scada-history-bars{align-items:end;gap:3px;height:52px;margin:10px 0 6px;display:flex}.scada-history-bars i{background:var(--primary);opacity:.76;border-radius:2px 2px 0 0;flex:1;min-height:5px}.scada-history-bars i.is-uncertain{background:var(--warning)}.scada-history-bars i.is-bad,.scada-history-bars i.is-stale{background:var(--danger)}.scada-history-empty{color:var(--text-muted);margin:10px 0 4px;font-size:9px}.scada-inspector__bindings>div{border-bottom:1px solid var(--border-soft);justify-content:space-between;align-items:center;gap:7px;padding:7px 0;display:flex}.scada-inspector__bindings>div:last-child{border-bottom:0}.scada-inspector__bindings code{color:var(--primary);font:550 8px var(--font-geist-mono);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.scada-inspector__bindings span{color:var(--text-muted);font:600 7px var(--font-geist-mono);text-transform:uppercase;flex:none}.scada-inspector__alerts{border-color:var(--danger)!important}@supports (color:color-mix(in lab, red, red)){.scada-inspector__alerts{border-color:color-mix(in srgb, var(--danger) 22%, var(--border))!important}}.scada-inspector__alerts{background:var(--danger-soft)!important}.scada-inspector__alerts>small{align-items:center;gap:4px;display:flex;color:var(--danger)!important}.scada-inspector__alerts a{color:var(--text);align-items:center;gap:6px;margin-top:8px;font-size:9px;text-decoration:none;display:flex}.scada-inspector__alerts a b{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.scada-inspector__alerts a>span{background:var(--warning);border-radius:50%;flex:none;width:6px;height:6px}.scada-inspector__alerts a>span.is-critical{background:var(--danger)}@media (max-width:1100px){.scada-workspace{grid-template-columns:minmax(0,1fr) 260px}.scada-canvas-viewport{min-height:560px}}@media (max-width:820px){.scada-workspace{grid-template-columns:1fr}.scada-inspector{border-top:1px solid var(--border);border-left:0}.scada-canvas-viewport{min-height:520px}}@media (max-width:680px){.scada-toolbar__screen-picker{align-items:stretch;width:100%}.scada-toolbar__screen-picker>label{width:100%}.scada-toolbar__screen-picker .ec-select{flex:1;min-width:0}.scada-operation-mode{display:none}.scada-canvas{min-width:0;transform:none}.scada-workspace{overflow:hidden}.scada-canvas-meta{flex-direction:column;justify-content:center;align-items:flex-start;padding-block:5px}.scada-canvas-column{grid-template-rows:45px minmax(0,1fr)}}.dashboards-page,.dashboard-view-page,.dashboard-editor-page,.dashboard-new-page{width:min(100%,1600px);margin:0 auto}.dashboard-card-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.dashboard-card{text-align:left;border:1px solid var(--border);background:var(--surface);border-radius:12px;grid-template-columns:180px minmax(0,1fr);min-height:190px;padding:0;transition:all .16s;display:grid;overflow:hidden;box-shadow:0 1px 2px #17212b08}.dashboard-card:hover{border-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.dashboard-card:hover{border-color:color-mix(in srgb, var(--primary), var(--border) 50%)}}.dashboard-card:hover{box-shadow:var(--shadow);transform:translateY(-2px)}.dashboard-card__visual{color:var(--ec-primary-600);background:radial-gradient(circle at 50% 42%, var(--ec-primary-500), transparent 48%), var(--ec-bg-subtle);place-items:center;gap:12px;display:grid;position:relative;overflow:hidden}@supports (color:color-mix(in lab, red, red)){.dashboard-card__visual{background:radial-gradient(circle at 50% 42%, color-mix(in srgb, var(--ec-primary-500) 14%, transparent), transparent 48%), var(--ec-bg-subtle)}}.dashboard-card__visual>svg{filter:drop-shadow(0 8px 14px var(--ec-primary-500))}@supports (color:color-mix(in lab, red, red)){.dashboard-card__visual>svg{filter:drop-shadow(0 8px 14px color-mix(in srgb, var(--ec-primary-500) 16%, transparent))}}.dashboard-card__visual>small{max-width:140px;color:var(--ec-text-muted);font:650 .58rem var(--font-geist-mono);letter-spacing:.08em;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap;overflow:hidden}.dashboard-card__content{flex-direction:column;padding:21px;display:flex}.dashboard-card__top,.dashboard-card__meta{color:var(--text-muted);justify-content:space-between;align-items:center;display:flex}.dashboard-card__top small{color:var(--primary);font:650 10px var(--font-geist-mono);letter-spacing:.07em;text-transform:uppercase}.dashboard-card__content>strong{letter-spacing:-.02em;margin-top:20px;font-size:17px}.dashboard-card__content>p{min-height:38px;color:var(--text-muted);margin:7px 0 17px;font-size:12px;line-height:1.5}.dashboard-card__meta{border-top:1px solid var(--border-soft);padding-top:13px;font-size:11px}.dashboard-card__meta b{color:var(--text-secondary)}.dashboard-live-status,.dashboard-save-state{border:1px solid var(--border);color:var(--text-muted);background:var(--surface);border-radius:20px;align-items:center;gap:7px;padding:7px 10px;font-size:11px;display:inline-flex}.dashboard-live-status i,.dashboard-save-state i,.dashboard-tv__status i{background:var(--success);width:7px;height:7px;box-shadow:0 0 0 3px var(--success-soft);border-radius:50%}.dashboard-save-state.is-dirty i{background:var(--warning);box-shadow:0 0 0 3px var(--warning-soft)}.dashboard-toolbar{z-index:12;border:1px solid var(--border);background:var(--surface);border-radius:9px;justify-content:space-between;align-items:end;gap:18px;margin-bottom:12px;padding:10px 12px;display:flex;position:sticky;top:0}@supports (color:color-mix(in lab, red, red)){.dashboard-toolbar{background:color-mix(in srgb, var(--surface), transparent 4%)}}.dashboard-toolbar{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 7px 18px #17212b0a}.dashboard-toolbar__group,.dashboard-toolbar__actions{align-items:end;gap:8px;display:flex}.dashboard-toolbar label,.custom-time-range label,.dashboard-properties label,.dashboard-form-grid label,.panel-query-editor label,.dashboard-new-name label{flex-direction:column;gap:5px;display:flex}.dashboard-toolbar label>span,.custom-time-range label>span,.dashboard-properties label>span,.dashboard-form-grid label>span,.panel-query-editor label>span,.dashboard-new-name label>span,.panel-query-editor>div>span{color:var(--text-muted);font:650 9px var(--font-geist-mono);letter-spacing:.06em;text-transform:uppercase}.dashboard-toolbar .ec-select{min-width:150px}.dashboard-toolbar .ec-button{min-height:34px}.dashboard-refresh-feedback{max-width:190px;color:var(--text-muted);align-self:center;font-size:11px;line-height:1.3}.dashboard-toolbar a.ec-button{justify-content:center;align-items:center;gap:6px;text-decoration:none;display:inline-flex}.dashboard-variable-bar{color:var(--text-muted);border:1px solid var(--border-soft);background:var(--background-subtle);border-radius:8px;align-items:center;gap:12px;margin:0 0 12px;padding:8px 12px;display:flex}.dashboard-variable-bar>strong{color:var(--text-secondary);font-size:11px}.dashboard-variable-bar label{align-items:center;gap:7px;display:flex}.dashboard-variable-bar label>span{font-size:10px}.dashboard-variable-bar .ec-select{min-width:120px;padding-block:6px}.dashboard-grid-container{min-height:260px}.react-grid-layout{transition:height .2s;position:relative}.react-grid-item{transition:all .2s}.react-grid-item.cssTransforms{transition-property:transform,width,height}.dashboard-grid-container.is-editing .react-grid-item{transition:none}.react-grid-item.react-grid-placeholder{background:var(--primary);opacity:.13;border-radius:9px}.react-grid-item.resizing{z-index:20;transition:none}.react-grid-item.react-draggable-dragging{z-index:30;transition:none}.react-resizable-handle{opacity:0;transition:opacity .12s}.dashboard-grid-container.is-editing .react-grid-item:hover .react-resizable-handle{opacity:1}.react-resizable-handle:after{border-color:var(--primary)!important}.dashboard-panel{border:1px solid var(--border);background:var(--surface);border-radius:9px;height:100%;overflow:hidden;box-shadow:0 1px 3px #17212b09}.dashboard-grid-container.is-editing .dashboard-panel{border-style:dashed}.dashboard-grid-container.is-editing .dashboard-panel:hover{border-color:var(--primary)}.dashboard-panel__header{border-bottom:1px solid var(--border-soft);justify-content:space-between;align-items:center;gap:8px;height:44px;padding:0 10px 0 13px;display:flex}.dashboard-panel-drag-handle{align-items:center;gap:7px;min-width:0;display:flex}.is-editing .dashboard-panel-drag-handle{cursor:grab}.dashboard-panel-drag-handle>div{min-width:0}.dashboard-panel__header h2{letter-spacing:-.01em;text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:12px;font-weight:650;overflow:hidden}.dashboard-panel__header p{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;margin:1px 0 0;font-size:9px;overflow:hidden}.dashboard-panel__actions{align-items:center;gap:1px;display:flex}.dashboard-panel__actions button{width:27px;height:27px;color:var(--text-muted);background:0 0;border:0;border-radius:5px;place-items:center;padding:0;display:grid}.dashboard-panel__actions button:hover{color:var(--primary);background:var(--primary-soft)}.dashboard-panel__stale svg{color:var(--primary);animation:1.2s linear infinite slow-spin}.dashboard-panel__body{height:calc(100% - 44px);min-height:0;position:relative;overflow:hidden}.dashboard-panel__body .ec-chart{width:100%;max-height:100%}.dashboard-timeseries{outline:none;flex-direction:column;width:100%;height:100%;min-height:0;display:flex;position:relative;container-type:inline-size}.dashboard-timeseries:focus-visible{box-shadow:inset 0 0 0 2px var(--primary)}.dashboard-timeseries__controls{border-bottom:1px solid var(--border-soft);min-height:35px;color:var(--text-muted);background:var(--surface);align-items:center;gap:7px;padding:4px 9px;display:flex}@supports (color:color-mix(in lab, red, red)){.dashboard-timeseries__controls{background:color-mix(in srgb, var(--surface) 96%, var(--primary))}}.dashboard-timeseries__controls{font-size:10px}.dashboard-timeseries__interval{color:var(--text);flex:none;font-weight:600}.dashboard-timeseries__hint{text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;overflow:hidden}.dashboard-timeseries__controls button{border:1px solid var(--border);min-height:28px;color:var(--text);background:var(--surface-raised);border-radius:5px;flex:none;padding:4px 8px;font-size:10px;font-weight:600}:is(.dashboard-timeseries__controls button:hover,.dashboard-timeseries__controls button:focus-visible){border-color:var(--primary);color:var(--primary)}.dashboard-timeseries__controls button:disabled{cursor:not-allowed;opacity:.48}.dashboard-timeseries__controls button:disabled:hover{border-color:var(--border);color:var(--text)}.dashboard-timeseries__stage{touch-action:pan-y pinch-zoom;-webkit-user-select:none;user-select:none;flex:auto;min-height:0;position:relative;overflow:hidden}.dashboard-timeseries__stage .ec-chart{height:100%}.dashboard-timeseries__partial{z-index:2;border:1px solid var(--warning);flex:none;align-self:flex-end;max-width:min(52%,360px);margin:6px 10px 0;padding:6px 8px;position:relative}@supports (color:color-mix(in lab, red, red)){.dashboard-timeseries__partial{border:1px solid color-mix(in srgb, var(--warning) 34%, var(--border))}}.dashboard-timeseries__partial{color:var(--text-muted);background:var(--surface);border-radius:6px}@supports (color:color-mix(in lab, red, red)){.dashboard-timeseries__partial{background:color-mix(in srgb, var(--surface) 92%, var(--warning))}}.dashboard-timeseries__partial{font-size:11px;line-height:1.35}.dashboard-timeseries__partial strong,.dashboard-timeseries__partial span{display:block}.dashboard-timeseries__partial strong{color:var(--warning);font-weight:650}.dashboard-timeseries__selection{z-index:3;border-inline:1px solid var(--primary);background:var(--primary);position:absolute;top:0;bottom:0}@supports (color:color-mix(in lab, red, red)){.dashboard-timeseries__selection{background:color-mix(in srgb, var(--primary) 15%, transparent)}}.dashboard-timeseries__selection{pointer-events:none}.dashboard-timeseries__crosshair{z-index:3;background:var(--primary);width:1px;position:absolute}@supports (color:color-mix(in lab, red, red)){.dashboard-timeseries__crosshair{background:color-mix(in srgb, var(--primary) 74%, transparent)}}.dashboard-timeseries__crosshair{pointer-events:none}.dashboard-timeseries__tooltip{z-index:5;border:1px solid var(--border);width:min(260px,100% - 82px);max-height:calc(100% - 16px);color:var(--text);background:var(--surface);border-radius:7px;padding:8px;position:absolute;overflow:auto;transform:translate(9px)}@supports (color:color-mix(in lab, red, red)){.dashboard-timeseries__tooltip{background:color-mix(in srgb, var(--surface) 96%, transparent)}}.dashboard-timeseries__tooltip{-webkit-user-select:text;user-select:text;font-size:10px;box-shadow:0 7px 20px #141e2624}.dashboard-timeseries__tooltip.is-right{transform:translate(calc(-100% - 9px))}.dashboard-timeseries__tooltip.is-contained{transform:none}.dashboard-timeseries__tooltip header{border-bottom:1px solid var(--border-soft);justify-content:space-between;align-items:flex-start;gap:8px;padding-bottom:6px;display:flex}.dashboard-timeseries__tooltip header strong{overflow-wrap:anywhere;min-width:0;line-height:1.25}.dashboard-timeseries__tooltip header button{width:28px;height:28px;color:var(--text-muted);background:0 0;border:0;border-radius:5px;flex:none;place-items:center;padding:0;font-size:18px;display:grid}:is(.dashboard-timeseries__tooltip header button:hover,.dashboard-timeseries__tooltip header button:focus-visible){color:var(--primary);background:var(--primary-soft)}.dashboard-timeseries__tooltip ul{margin:0;padding:0;list-style:none}.dashboard-timeseries__tooltip li{border-bottom:1px solid var(--border-soft);padding:7px 0 0}.dashboard-timeseries__tooltip li:last-child{border-bottom:0;padding-bottom:0}.dashboard-timeseries__tooltip-value{font-family:var(--font-geist-mono);white-space:nowrap;font-size:15px;font-weight:650;line-height:1.3;display:block}.dashboard-timeseries__tooltip-value.is-empty{white-space:normal;overflow-wrap:anywhere;font-family:inherit;font-size:12px}.dashboard-timeseries__tooltip li[data-quality=bad] .dashboard-timeseries__tooltip-value{color:var(--danger)}.dashboard-timeseries__tooltip li[data-quality=uncertain] .dashboard-timeseries__tooltip-value,.dashboard-timeseries__tooltip li[data-quality=stale] .dashboard-timeseries__tooltip-value{color:var(--warning)}.dashboard-timeseries__tooltip time,.dashboard-timeseries__tooltip li>small{color:var(--text-muted);overflow-wrap:anywhere;margin-top:3px;line-height:1.35;display:block}.dashboard-timeseries__tooltip-meta{border-top:1px solid var(--border-soft);color:var(--text-muted);gap:2px;margin:6px 0 0;padding-top:5px;display:grid}.dashboard-timeseries__tooltip-meta div{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.dashboard-timeseries__tooltip-meta dt,.dashboard-timeseries__tooltip-meta dd{margin:0}.dashboard-timeseries__tooltip-meta dd{color:var(--text);text-align:right;overflow-wrap:anywhere}@media (max-width:1200px){.dashboard-timeseries__hint{display:none}}@container (width<=500px){.dashboard-timeseries__controls{flex-wrap:wrap}.dashboard-timeseries__interval{min-width:100%}.dashboard-timeseries__hint{display:none}.dashboard-timeseries__controls button{flex:auto}.dashboard-timeseries__partial{align-self:stretch;max-width:none}.dashboard-timeseries__tooltip{width:min(244px,100% - 82px);padding:7px}}@media (prefers-reduced-motion:reduce){.dashboard-timeseries__selection,.dashboard-timeseries__crosshair,.dashboard-timeseries__tooltip{transition:none}}.dashboard-panel-state{height:100%;color:var(--text-muted);align-content:center;place-items:center;gap:8px;font-size:11px;display:grid}.dashboard-panel-state svg{color:var(--primary)}.dashboard-panel-state.is-error svg{color:var(--danger)}.is-pulse{animation:1.2s ease-in-out infinite dashboard-pulse}@keyframes dashboard-pulse{50%{opacity:.25;transform:translateY(-2px)}}.dashboard-stat{flex-direction:column;justify-content:center;height:100%;padding:8px 20px;display:flex}.dashboard-stat:before{content:"";background:var(--success);border-radius:2px;width:28px;height:3px;margin-bottom:13px}.dashboard-stat[data-tone=warning]:before{background:var(--warning)}.dashboard-stat[data-tone=danger]:before{background:var(--danger)}.dashboard-stat[data-tone=info]:before{background:var(--info)}.dashboard-stat[data-tone=neutral]:before{background:var(--unknown)}.dashboard-stat strong{letter-spacing:-.045em;font-size:clamp(22px,2.4vw,33px);font-weight:620}.dashboard-stat span{color:var(--text-secondary);margin-top:5px;font-size:11px}.dashboard-stat small{color:var(--text-muted);margin-top:8px;font-size:9px}.dashboard-state{align-content:center;place-items:center;gap:6px;height:100%;display:grid}.dashboard-state>.dashboard-state__indicator{border:7px solid var(--surface);background:var(--success);width:30px;height:30px;box-shadow:0 0 0 5px var(--success-soft);border-radius:50%}.dashboard-state.is-warning>span{background:var(--warning);box-shadow:0 0 0 5px var(--warning-soft)}.dashboard-state.is-danger>span{background:var(--danger);box-shadow:0 0 0 5px var(--danger-soft)}.dashboard-state.is-info>span{background:var(--info);box-shadow:0 0 0 5px var(--info-soft)}.dashboard-state.is-neutral>span{background:var(--unknown);box-shadow:0 0 0 5px var(--unknown)}@supports (color:color-mix(in lab, red, red)){.dashboard-state.is-neutral>span{box-shadow:0 0 0 5px color-mix(in srgb, var(--unknown) 14%, transparent)}}.dashboard-state strong{margin-top:7px;font-size:18px}.dashboard-state small{color:var(--text-muted);font-size:10px}.dashboard-gauge{grid-template-rows:minmax(0,1fr) auto;align-items:center;min-width:0;height:100%;padding:2px 4px 4px;display:grid;container-type:inline-size}.dashboard-gauge__stage{width:100%;height:100%;min-height:104px;position:relative;overflow:hidden}.dashboard-gauge__stage>.ec-chart{transform-origin:50%;position:absolute;inset:0;transform:scaleX(1.6)}.dashboard-gauge__stage.is-empty:before{content:"";border:12px solid var(--ec-text-muted);position:absolute;inset:13% 13% 4%}@supports (color:color-mix(in lab, red, red)){.dashboard-gauge__stage.is-empty:before{border:12px solid color-mix(in srgb, var(--ec-text-muted) 16%, transparent)}}.dashboard-gauge__stage.is-empty:before{opacity:.7;border-bottom-color:#0000;border-radius:50%}.dashboard-gauge__value{z-index:1;text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:3px;width:min(76%,230px);min-width:0;display:flex;position:absolute;top:54%;left:50%;transform:translate(-50%,-50%)}.dashboard-gauge__value strong{max-width:100%;color:var(--ec-text-strong);letter-spacing:-.045em;overflow-wrap:anywhere;font-size:clamp(1.35rem,11cqw,2.35rem);font-weight:650;line-height:.95}.dashboard-gauge__value strong.is-compact{font-size:clamp(1.1rem,8.5cqw,1.85rem)}.dashboard-gauge__value small,.dashboard-gauge__quality{color:var(--ec-text-muted);font-size:clamp(.66rem,3.3cqw,.78rem);font-weight:650;line-height:1.1}.dashboard-gauge__quality{justify-self:center;padding:0 6px 2px}.dashboard-quality{color:var(--ec-text-muted);text-align:center;justify-self:center;font-size:clamp(.66rem,3.3cqw,.78rem);font-weight:700;line-height:1.2}.dashboard-quality.is-uncertain,.dashboard-quality.is-stale{color:var(--ec-warning)}.dashboard-quality.is-bad{color:var(--ec-danger)}.dashboard-quality.is-unknown{color:var(--ec-text-muted)}.dashboard-quality.is-freshness-aging,.dashboard-quality.is-freshness-stale{color:var(--ec-warning)}.dashboard-quality.is-freshness-unknown{color:var(--ec-text-muted)}.dashboard-bar-gauge{grid-template-rows:minmax(0,1fr) auto;height:100%;min-height:0;display:grid;position:relative}.dashboard-bar-gauge__value{z-index:1;max-width:calc(100% - 24px);color:var(--ec-text-strong);text-overflow:ellipsis;white-space:nowrap;pointer-events:none;font-size:20px;font-weight:650;line-height:1.1;position:absolute;top:8px;left:12px;overflow:hidden}.dashboard-instrument{--instrument-tone:var(--ec-primary);width:100%;min-width:0;height:100%;min-height:0;color:var(--ec-text-primary);align-content:center;gap:8px;display:grid;container-type:size}.dashboard-instrument[data-tone=success],.dashboard-instrument [data-tone=success]{--instrument-tone:var(--ec-success)}.dashboard-instrument[data-tone=warning],.dashboard-instrument [data-tone=warning]{--instrument-tone:var(--ec-warning)}.dashboard-instrument[data-tone=danger],.dashboard-instrument [data-tone=danger]{--instrument-tone:var(--ec-danger)}.dashboard-instrument[data-tone=neutral],.dashboard-instrument [data-tone=neutral]{--instrument-tone:var(--ec-text-subtle)}.dashboard-instrument__numeric-lane{justify-content:space-between;align-items:baseline;gap:10px;min-width:0;display:flex}.dashboard-instrument__reading{font-variant-numeric:tabular-nums lining-nums;align-items:baseline;gap:7px;min-width:0;display:inline-flex}.dashboard-instrument__reading strong{min-width:0;color:var(--ec-text-primary);letter-spacing:-.045em;text-overflow:ellipsis;white-space:nowrap;font-size:clamp(1.35rem,8cqh,2.5rem);font-weight:680;line-height:1;overflow:hidden}.dashboard-instrument__reading strong.is-compact{letter-spacing:-.03em;font-size:clamp(1.05rem,6.5cqh,1.85rem)}.dashboard-instrument__reading small{color:var(--ec-text-secondary);flex:none;font-size:clamp(.72rem,3.3cqh,.9rem);font-weight:650}.dashboard-instrument__status{min-width:0;color:var(--instrument-tone);text-align:right;flex:0 auto;justify-content:flex-end;align-items:center;gap:6px;font-size:11px;font-weight:700;line-height:1.2;display:inline-flex}.dashboard-instrument__status time{color:var(--ec-text-muted);white-space:nowrap;font-weight:600}.dashboard-instrument__range{width:100%;color:var(--ec-text-muted);font-variant-numeric:tabular-nums;justify-content:space-between;gap:8px;line-height:1;display:flex}.dashboard-instrument__range small{font-size:10px}.dashboard-instrument--fallback{text-align:center;place-content:center;justify-items:center;padding:12px}.dashboard-instrument--fallback .dashboard-instrument__reading{justify-content:center}.dashboard-instrument--fallback>strong{color:var(--ec-text-primary);font-size:12px}.dashboard-instrument--fallback>span:not(.dashboard-instrument__reading):not(.dashboard-quality){max-width:420px;color:var(--ec-text-muted);font-size:11px}.dashboard-gauge-v2{grid-template-rows:auto auto auto;gap:3px;padding:2px 10px;position:relative}.dashboard-gauge-v2[data-value-placement=inside] .dashboard-instrument__numeric-lane{justify-content:flex-end}.dashboard-gauge-v2[data-value-placement=numeric]:not([data-variant=small]){grid-template-rows:1fr;padding:6px 10px}.dashboard-gauge-v2[data-value-placement=numeric]:not([data-variant=small]) .dashboard-instrument__numeric-lane{grid-template:"status""reading"minmax(0,1fr)/minmax(0,1fr);align-items:center;min-height:0;display:grid}.dashboard-gauge-v2[data-value-placement=numeric]:not([data-variant=small]) .dashboard-instrument__reading:not([data-gauge-probe]){text-align:center;flex-direction:column;grid-area:reading;justify-self:center;align-items:center;gap:3px;max-width:100%}.dashboard-gauge-v2[data-value-placement=numeric]:not([data-variant=small]) .dashboard-instrument__reading:not([data-gauge-probe]) strong{letter-spacing:-.03em;font-size:clamp(1.1rem,7cqh,1.6rem)}.dashboard-gauge-v2[data-value-placement=numeric]:not([data-variant=small]) .dashboard-instrument__status{grid-area:status;justify-self:end}.dashboard-gauge-v2[data-value-placement=numeric]:not([data-variant=small]) .dashboard-gauge-v2__radial{visibility:hidden;pointer-events:none;position:absolute}.dashboard-gauge-v2 .dashboard-instrument__reading strong{text-overflow:clip;overflow:visible}.dashboard-gauge-v2__radial{aspect-ratio:280/132;justify-self:center;place-items:center;width:min(100%,300px,128cqh);min-height:0;display:grid;position:relative;overflow:visible}.dashboard-gauge-v2__radial>.dashboard-instrument__reading{z-index:1;top:var(--gauge-reading-y);left:var(--gauge-reading-x);max-width:none;color:var(--ec-text-primary);pointer-events:none;text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:2px;position:absolute;transform:translate(-50%,-50%)}.dashboard-gauge-v2__radial>.dashboard-instrument__reading strong,.dashboard-gauge-v2__radial>.dashboard-instrument__reading strong.is-compact{letter-spacing:-.035em;font-size:clamp(1.35rem,11cqh,2.35rem)}.dashboard-gauge-v2__radial>.dashboard-instrument__reading small{font-size:clamp(.7rem,3.1cqh,.88rem);line-height:1.1}.dashboard-gauge-v2__radial svg{width:100%;height:100%;display:block;overflow:visible}.dashboard-gauge-v2>.dashboard-instrument__range{grid-template-columns:34fr 212fr 34fr;justify-self:center;gap:0;width:min(100%,300px,128cqh);display:grid}.dashboard-gauge-v2>.dashboard-instrument__range small:first-child{grid-area:1/2;justify-self:start}.dashboard-gauge-v2>.dashboard-instrument__range small:last-child{grid-area:1/2;justify-self:end}.dashboard-gauge-v2__arc-track,.dashboard-gauge-v2__arc-value{fill:none;stroke-linecap:round;stroke-width:12px}.dashboard-gauge-v2__arc-track{stroke:var(--ec-text-muted)}@supports (color:color-mix(in lab, red, red)){.dashboard-gauge-v2__arc-track{stroke:color-mix(in srgb, var(--ec-text-muted) 16%, transparent)}}.dashboard-gauge-v2__arc-value{stroke:var(--instrument-tone)}.dashboard-gauge-v2__threshold{fill:var(--ec-bg-surface);stroke-width:2.5px}.dashboard-gauge-v2__threshold.is-success{stroke:var(--ec-success)}.dashboard-gauge-v2__threshold.is-warning{stroke:var(--ec-warning)}.dashboard-gauge-v2__threshold.is-danger{stroke:var(--ec-danger)}.dashboard-gauge-v2__current-marker{fill:var(--ec-bg-surface);stroke:var(--instrument-tone);stroke-width:4px}.dashboard-gauge-v2__numeric-only{display:none}.dashboard-gauge-v2[data-variant=small]{grid-template-rows:1fr;padding:6px 8px}.dashboard-gauge-v2[data-variant=small] .dashboard-instrument__numeric-lane{align-items:center}.dashboard-gauge-v2[data-variant=small] .dashboard-instrument__reading strong{font-size:clamp(1.1rem,7cqh,1.6rem)}.dashboard-level-tank{grid-template:"reading reading""visual metadata"minmax(0,1fr)/minmax(98px,.82fr) minmax(118px,1.18fr);column-gap:14px;padding:7px 10px 4px}.dashboard-level-tank .dashboard-instrument__numeric-lane{grid-area:reading}.dashboard-level-tank__visual{grid-area:visual;justify-content:center;align-items:center;gap:9px;min-height:82px;display:flex}.dashboard-level-tank__vessel{border:2px solid var(--ec-text-secondary);width:min(92px,70%);height:100%;min-height:76px;position:relative;overflow:hidden}@supports (color:color-mix(in lab, red, red)){.dashboard-level-tank__vessel{border:2px solid color-mix(in srgb, var(--ec-text-secondary) 60%, var(--ec-border))}}.dashboard-level-tank__vessel{border-top-color:var(--ec-text-secondary)}@supports (color:color-mix(in lab, red, red)){.dashboard-level-tank__vessel{border-top-color:color-mix(in srgb, var(--ec-text-secondary) 38%, var(--ec-border))}}.dashboard-level-tank__vessel{background:var(--ec-bg-secondary);border-radius:5px 5px 11px 11px}@supports (color:color-mix(in lab, red, red)){.dashboard-level-tank__vessel{background:color-mix(in srgb, var(--ec-bg-secondary) 72%, transparent)}}.dashboard-level-tank__vessel:before{z-index:2;content:"";background:var(--ec-text-muted);height:1px;position:absolute;inset:5px 7px auto}@supports (color:color-mix(in lab, red, red)){.dashboard-level-tank__vessel:before{background:color-mix(in srgb, var(--ec-text-muted) 22%, transparent)}}.dashboard-level-tank__fill{background:var(--instrument-tone);max-height:100%;position:absolute;inset:auto 0 0}@supports (color:color-mix(in lab, red, red)){.dashboard-level-tank__fill{background:color-mix(in srgb, var(--instrument-tone) 80%, var(--ec-bg-surface))}}.dashboard-level-tank__fill{transition:height .18s ease-out}.dashboard-level-tank__marker{z-index:3;min-width:20px;color:var(--ec-text-secondary);border-bottom:1px dashed;padding-left:3px;font-size:8px;font-weight:800;line-height:1.1;position:absolute;right:3px;transform:translateY(50%)}.dashboard-level-tank__marker.is-h,.dashboard-level-tank__marker.is-l{color:var(--ec-warning)}.dashboard-level-tank__marker.is-hh,.dashboard-level-tank__marker.is-ll{color:var(--ec-danger)}.dashboard-level-tank__percentage{color:var(--ec-text-secondary);font-variant-numeric:tabular-nums;writing-mode:vertical-rl;font-size:11px;font-weight:750;transform:rotate(180deg)}.dashboard-level-tank__metadata{min-width:0;color:var(--ec-text-muted);grid-area:metadata;align-content:center;gap:8px;display:grid}.dashboard-level-tank__metadata>small{font-size:10px;font-weight:650}.dashboard-level-tank__linear{background:var(--ec-text-muted);border-radius:999px;grid-area:visual;height:8px;position:relative;overflow:hidden}@supports (color:color-mix(in lab, red, red)){.dashboard-level-tank__linear{background:color-mix(in srgb, var(--ec-text-muted) 16%, transparent)}}.dashboard-level-tank__linear>span{border-radius:inherit;background:var(--instrument-tone);max-width:100%;position:absolute;inset:0 auto 0 0}.dashboard-level-tank[data-variant=medium]{grid-template-columns:minmax(82px,.65fr) minmax(110px,1.35fr);column-gap:10px}.dashboard-level-tank[data-variant=small]{grid-template:"reading""visual"8px"metadata"/1fr;gap:7px;padding:5px 8px}.dashboard-level-tank[data-variant=small] .dashboard-instrument__reading strong{font-size:clamp(1.05rem,7cqh,1.55rem)}.dashboard-level-tank[data-variant=small] .dashboard-level-tank__metadata{gap:4px}.dashboard-gauge[data-quality=bad] .dashboard-gauge__quality,.dashboard-gauge[data-quality=uncertain] .dashboard-gauge__quality,.dashboard-gauge[data-quality=stale] .dashboard-gauge__quality{color:var(--ec-warning);font-weight:700}.dashboard-equipment-status{--equipment-tone:var(--ec-text-muted);height:100%;min-height:116px;color:var(--equipment-tone);justify-content:center;align-items:center;gap:14px;display:flex}.dashboard-equipment-status.is-running{--equipment-tone:var(--ec-success)}.dashboard-equipment-status.is-fault{--equipment-tone:var(--ec-warning)}.dashboard-equipment-status.is-maintenance{--equipment-tone:var(--ec-info)}.dashboard-equipment-status__icon{border:1px solid var(--equipment-tone);flex:0 0 64px;place-items:center;width:64px;height:64px;display:grid}@supports (color:color-mix(in lab, red, red)){.dashboard-equipment-status__icon{border:1px solid color-mix(in srgb, var(--equipment-tone) 34%, var(--ec-border-subtle))}}.dashboard-equipment-status__icon{color:var(--equipment-tone);background:var(--equipment-tone);border-radius:50%}@supports (color:color-mix(in lab, red, red)){.dashboard-equipment-status__icon{background:color-mix(in srgb, var(--equipment-tone) 9%, transparent)}}.dashboard-equipment-status__icon .operational-equipment-icon{color:inherit;place-items:center;display:grid}.dashboard-equipment-status__icon .operational-equipment-icon .ec-scada-symbol{width:100%;height:100%;color:inherit;--ec-scada-state-color:currentColor}.operational-equipment-icon[data-equipment-state=running]{color:var(--ec-success)}.operational-equipment-icon[data-equipment-state=stopped],.operational-equipment-icon[data-equipment-state=offline]{color:var(--ec-text-muted)}.operational-equipment-icon[data-equipment-state=fault]{color:var(--ec-warning)}.operational-equipment-icon[data-equipment-state=maintenance]{color:var(--ec-info)}.dashboard-equipment-status__copy{gap:3px;min-width:0;display:grid}.dashboard-equipment-status__copy small,.dashboard-equipment-status__copy code{color:var(--ec-text-muted);font-size:.7rem}.dashboard-equipment-status__copy strong{color:var(--equipment-tone);font-size:1.15rem}.equipment-mapping-editor{gap:8px;margin-top:12px;display:grid}.equipment-mapping-editor label{grid-template-columns:96px minmax(0,1fr);align-items:center;gap:10px;display:grid}.equipment-mapping-editor label>span,.panel-editor__hint{color:var(--ec-text-muted);font-size:.72rem}.scada-system-icon-picker{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;display:grid}.scada-system-icon-picker button{border:1px solid var(--ec-border-subtle);min-width:0;color:var(--ec-text-muted);background:var(--surface);text-align:left;border-radius:8px;align-items:center;gap:7px;padding:7px 8px;font-size:.68rem;display:flex}.scada-system-icon-picker button.is-selected{border-color:var(--ec-primary-500)}@supports (color:color-mix(in lab, red, red)){.scada-system-icon-picker button.is-selected{border-color:color-mix(in srgb, var(--ec-primary-500) 48%, var(--ec-border-subtle))}}.scada-system-icon-picker button.is-selected{color:var(--ec-primary-600);background:var(--ec-primary-500)}@supports (color:color-mix(in lab, red, red)){.scada-system-icon-picker button.is-selected{background:color-mix(in srgb, var(--ec-primary-500) 8%, var(--surface))}}.scada-system-icon-picker button span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.ec-studio-view-identity{align-items:center;gap:10px;display:flex}.ec-studio-view-identity>i{width:34px;height:34px;color:var(--ec-primary-600);background:var(--ec-primary-500);border-radius:8px;flex:0 0 34px;place-items:center;display:grid}@supports (color:color-mix(in lab, red, red)){.ec-studio-view-identity>i{background:color-mix(in srgb, var(--ec-primary-500) 10%, transparent)}}.ec-studio-view-identity>span{gap:3px;min-width:0;display:grid}.dashboard-table-wrap{height:100%;overflow:auto}.dashboard-table{border-collapse:collapse;width:100%;font-size:10px}.dashboard-table th{z-index:1;color:var(--text-muted);text-align:left;border-bottom:1px solid var(--border);background:var(--background-subtle);font:650 8px var(--font-geist-mono);text-transform:uppercase;padding:8px 10px;position:sticky;top:0}.dashboard-table td{border-bottom:1px solid var(--border-soft);text-overflow:ellipsis;white-space:nowrap;max-width:160px;padding:8px 10px;overflow:hidden}.quality-pill{color:var(--success);background:var(--success-soft);border-radius:8px;padding:2px 5px}.quality-pill.is-uncertain{color:var(--warning);background:var(--warning-soft)}.quality-pill.is-bad{color:var(--danger);background:var(--danger-soft)}.quality-pill.is-stale{color:var(--warning);background:var(--warning-soft);border:1px dashed}.quality-pill.is-unknown{color:var(--text-muted);background:var(--background-subtle)}.freshness-pill{color:var(--success);background:var(--success-soft);border-radius:8px;padding:2px 5px}.freshness-pill.is-aging,.freshness-pill.is-stale{color:var(--warning);background:var(--warning-soft)}.freshness-pill.is-stale{border:1px dashed}.freshness-pill.is-unknown{color:var(--text-muted);background:var(--background-subtle)}.freshness-pill.is-not-provided{color:var(--text-muted);background:0 0}.dashboard-inspector{flex-direction:column;gap:10px;display:flex}.dashboard-inspector>div{border-bottom:1px solid var(--border-soft);justify-content:space-between;padding-bottom:9px;display:flex}.dashboard-inspector span{color:var(--text-muted);font-size:11px}.dashboard-inspector h3{text-transform:uppercase;margin:13px 0 0;font-size:11px}.dashboard-inspector pre{color:var(--text-secondary);border:1px solid var(--border-soft);background:var(--background-subtle);font:10px/1.55 var(--font-geist-mono);border-radius:7px;margin:0;padding:12px;overflow:auto}.panel-type-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.panel-type-grid button{text-align:left;border:1px solid var(--border);background:var(--surface);border-radius:9px;flex-direction:column;align-items:flex-start;min-height:145px;padding:17px;display:flex}.panel-type-grid button:hover{border-color:var(--primary);background:var(--primary-soft)}.panel-type-grid button>span{width:36px;height:36px;color:var(--primary);background:var(--primary-soft);border-radius:8px;place-items:center;margin-bottom:15px;display:grid}.panel-type-grid strong{font-size:12px}.panel-type-grid p{color:var(--text-muted);margin:6px 0 0;font-size:10px;line-height:1.45}.panel-editor{flex-direction:column;gap:18px;display:flex}.panel-editor section{border-bottom:1px solid var(--border-soft);padding-bottom:17px}.panel-editor h3{text-transform:uppercase;letter-spacing:.04em;margin:0 0 11px;font-size:11px}.panel-editor__section-title{justify-content:space-between;align-items:center;display:flex}.panel-editor__section-title h3{margin:0}.dashboard-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.dashboard-form-grid .is-full{grid-column:1/-1}.panel-query-editor{border:1px solid var(--border);background:var(--background-subtle);border-radius:8px;grid-template-columns:minmax(0,1.5fr) minmax(110px,.6fr);gap:9px;margin-top:9px;padding:10px;display:grid;position:relative}.panel-query-editor>div{flex-direction:column;grid-column:1/-1;gap:5px;display:flex}.tag-select-button{text-align:left;border:1px solid var(--border);background:var(--surface);border-radius:7px;align-items:center;gap:9px;padding:9px;display:flex}.tag-select-button>svg{color:var(--primary)}.tag-select-button>span{flex-direction:column;gap:2px;min-width:0;display:flex}.tag-select-button strong{font-size:11px}.tag-select-button code{color:var(--text-muted);text-overflow:ellipsis;font-size:9px;overflow:hidden}.icon-danger-button{color:var(--danger);background:0 0;border:0;position:absolute;top:7px;right:7px}.threshold-row{grid-template-columns:1fr 1.4fr 30px;gap:8px;margin-top:8px;display:grid}.state-mapping-row{grid-template-columns:minmax(80px,.7fr) minmax(120px,1.2fr) minmax(120px,1fr) 30px;align-items:center;gap:8px;margin-top:8px;display:grid}.state-mapping-row>button{width:30px;height:30px;color:var(--danger);background:0 0;border:0;border-radius:5px;place-items:center;display:grid}.threshold-row button{color:var(--danger);background:0 0;border:0}.panel-editor>footer,.custom-time-range footer,.tag-picker footer{justify-content:flex-end;gap:8px;display:flex}.panel-editor>footer{z-index:2;border-top:1px solid var(--border);background:var(--surface-raised);margin:-19px -19px 0;padding:13px 19px;position:sticky;top:-19px}.panel-editor__errors{color:var(--danger);background:var(--danger-soft);border-radius:6px;padding:9px;font-size:10px}.tag-picker{flex-direction:column;gap:12px;display:flex}.tag-picker__search{color:var(--text-muted);border:1px solid var(--border);background:var(--surface);border-radius:7px;align-items:center;gap:8px;padding-left:10px;display:flex}.tag-picker__search .ec-input{box-shadow:none;border:0;flex:1;padding-left:0}.tag-picker__search button{background:0 0;border:0}.tag-picker__context{background:var(--primary-soft);border-radius:6px;justify-content:space-between;align-items:center;padding:8px 10px;display:flex}.tag-picker__context span{color:var(--primary);align-items:center;gap:6px;font-size:10px;font-weight:650;display:flex}.tag-picker__context small{color:var(--text-muted);font-size:9px}.tag-picker__list{border:1px solid var(--border);border-radius:8px;max-height:435px;overflow:auto}.tag-picker__item{text-align:left;border:0;border-bottom:1px solid var(--border-soft);background:var(--surface);grid-template-columns:35px minmax(0,1fr) minmax(180px,.55fr);align-items:center;gap:10px;width:100%;padding:11px;display:grid}.tag-picker__item:hover,.tag-picker__item[aria-selected=true]{background:var(--primary-soft)}.tag-picker__item:last-child{border-bottom:0}.tag-picker__icon{width:32px;height:32px;color:var(--primary);background:var(--primary-soft);border-radius:7px;place-items:center;display:grid}.tag-picker__item>span:not(.tag-picker__icon){flex-direction:column;gap:2px;min-width:0;display:flex}.tag-picker__item strong{font-size:11px}.tag-picker__item code{color:var(--primary);text-overflow:ellipsis;font-size:9px;overflow:hidden}.tag-picker__item small{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;font-size:9px;overflow:hidden}.tag-picker__meta{text-align:right}.tag-picker__meta b{color:var(--text-secondary);font-size:11px}.tag-picker__empty{color:var(--text-muted);text-align:center;padding:35px}.custom-time-range{flex-direction:column;gap:12px;display:flex}.custom-time-range footer{margin-top:7px}.dashboard-properties{border:1px solid var(--border);background:var(--surface);border-radius:8px;grid-template-columns:minmax(240px,.7fr) minmax(320px,1.3fr);gap:12px;margin-bottom:12px;padding:11px;display:grid}.dashboard-empty-canvas{width:100%;min-height:330px;color:var(--text-muted);border:1px dashed var(--border);background:var(--surface);border-radius:10px;align-content:center;place-items:center;gap:7px;display:grid}@supports (color:color-mix(in lab, red, red)){.dashboard-empty-canvas{background:color-mix(in srgb, var(--surface), transparent 35%)}}.dashboard-empty-canvas:hover{color:var(--primary);border-color:var(--primary);background:var(--primary-soft)}.dashboard-empty-canvas>span{background:var(--primary-soft);border-radius:50%;place-items:center;width:42px;height:42px;font-size:25px;display:grid}.dashboard-empty-canvas strong{color:var(--text);font-size:15px}.dashboard-empty-canvas p{margin:0;font-size:11px}.dashboard-new-name{max-width:760px;margin-bottom:18px;padding:17px}.dashboard-new-metadata{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.dashboard-new-metadata .is-full{grid-column:1/-1}.dashboard-new-icon-picker{gap:8px;display:grid}.dashboard-new-icon-picker>span{color:var(--text-muted);font:650 9px var(--font-geist-mono);letter-spacing:.06em;text-transform:uppercase}.dashboard-new-icon-picker__selection{align-items:center;gap:10px;display:flex}.dashboard-new-icon-picker__selection>span{width:40px;height:40px;color:var(--ec-primary-600);background:var(--ec-primary-soft);border-radius:9px;flex:0 0 40px;place-items:center;display:grid}.dashboard-new-icon-picker__selection p{color:var(--ec-text-muted);margin:0;font-size:.72rem;line-height:1.45}.dashboard-new-icon-picker .scada-system-icon-picker{grid-template-columns:repeat(4,minmax(0,1fr))}.dashboard-new-name .ec-input{font-size:16px}.dashboard-template-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.dashboard-template{text-align:left;border:1px solid var(--border);background:var(--surface);border-radius:11px;flex-direction:column;align-items:flex-start;min-height:220px;padding:24px;display:flex}.dashboard-template:hover{border-color:var(--primary);box-shadow:var(--shadow);transform:translateY(-2px)}.dashboard-template>span{width:48px;height:48px;color:var(--primary);background:var(--primary-soft);border-radius:10px;place-items:center;display:grid}.dashboard-template strong{margin-top:24px;font-size:16px}.dashboard-template p{color:var(--text-muted);margin:7px 0 auto;font-size:11px;line-height:1.5}.dashboard-template small{color:var(--primary);align-items:center;gap:5px;margin-top:20px;font-size:9px;display:flex}.dashboard-template.is-primary{color:#e9ffff;background:linear-gradient(145deg,#0c3738,#135052);border-color:#1e8583}.dashboard-template.is-primary p{color:#9cc8c8}.dashboard-template.is-primary>span{color:#6ce5df;background:#6ce5df1f}.dashboard-tv{background:var(--background);min-height:100vh;padding:12px 20px 0}.dashboard-tv>header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;height:60px;padding:0 5px 12px;display:flex}.dashboard-tv__brand{align-items:center;gap:11px;display:flex}.dashboard-tv__brand>span{color:#e8ffff;background:#137e7c;border-radius:8px;place-items:center;width:36px;height:36px;font-weight:750;display:grid}.dashboard-tv__brand div{flex-direction:column;gap:2px;display:flex}.dashboard-tv__brand small{color:var(--primary);font:650 8px var(--font-geist-mono);letter-spacing:.1em}.dashboard-tv__brand strong{font-size:15px}.dashboard-tv__status{align-items:center;gap:12px;display:flex}.dashboard-tv__status>span{color:var(--text-muted);align-items:center;gap:7px;font-size:10px;display:flex}.dashboard-tv__status time{min-width:70px;color:var(--text-secondary);font:12px var(--font-geist-mono)}.dashboard-tv__status button,.dashboard-tv__status a{width:32px;height:32px;color:var(--text-muted);border:1px solid var(--border);background:var(--surface);border-radius:6px;place-items:center;display:grid}.dashboard-tv .dashboard-variable-bar{margin-top:10px}.dashboard-tv .dashboard-grid-container{min-height:calc(100vh - 135px)}.dashboard-tv>footer{color:var(--text-subtle);border-top:1px solid var(--border-soft);font:8px var(--font-geist-mono);text-transform:uppercase;justify-content:space-between;padding:7px 2px;display:flex}@media (max-width:1100px){.dashboard-card-grid{grid-template-columns:1fr}.panel-type-grid{grid-template-columns:repeat(2,1fr)}.dashboard-template-grid{grid-template-columns:1fr}}@media (max-width:760px){.dashboard-toolbar{flex-direction:column;align-items:stretch;position:static}.dashboard-toolbar__group,.dashboard-toolbar__actions{flex-wrap:wrap}.dashboard-card{grid-template-columns:105px minmax(0,1fr)}.dashboard-new-metadata,.dashboard-new-icon-picker .scada-system-icon-picker,.dashboard-properties,.dashboard-form-grid{grid-template-columns:1fr}.dashboard-form-grid .is-full{grid-column:auto}.tag-picker__item{grid-template-columns:35px minmax(0,1fr)}.tag-picker__meta{text-align:left;grid-column:2}}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--ec-bg-app:#101519;--ec-bg-surface:#161d22;--ec-bg-secondary:#1b2329;--ec-bg-sidebar:#131a1f;--ec-bg-header:#161d22;--ec-bg-subtle:#1b2329;--ec-bg-hover:#202930;--ec-border:#293239;--ec-border-subtle:#222b31;--ec-text-primary:#f1f4f6;--ec-text-secondary:#c2c8ce;--ec-text-muted:#8d98a1;--ec-text-subtle:#717c85;--ec-text-disabled:#58636b;--ec-primary:#28bdb8;--ec-primary-hover:#3ac9c4;--ec-primary-soft:#28bdb81c;--ec-success:#46b87e;--ec-success-soft:#46b87e1c;--ec-warning:#e0a23f;--ec-warning-soft:#e0a23f1c;--ec-danger:#e76572;--ec-danger-soft:#e765721c;--ec-info:#69a0df;--ec-info-soft:#69a0df1a;--ec-status-offline:#7b8790;--shadow:0 10px 26px #00000038}*{box-sizing:border-box}html,body{background:var(--background);min-height:100%;color:var(--text);font-family:var(--font-geist-sans), Inter, system-ui, sans-serif;margin:0;font-size:14px}body{min-width:320px}button,input,select,textarea{color:inherit;font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:not-allowed}a{color:inherit}:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.app-boot-state{background:var(--background);align-content:center;place-items:center;gap:9px;min-height:100vh;display:grid}.app-boot-state>span{border:2px solid var(--border);border-top-color:var(--primary);border-radius:50%;width:26px;height:26px;animation:.8s linear infinite slow-spin}.app-boot-state strong{letter-spacing:.12em;margin-top:5px;font-size:11px}.app-boot-state small{color:var(--text-muted);font:8px var(--font-geist-mono)}.login-page{color:#e9f2f4;background:#071015;grid-template-columns:minmax(0,1.55fr) minmax(420px,.85fr);min-height:100vh;display:grid}.login-visual{background:radial-gradient(circle at 76% 45%,#26b1b01f,#0000 29%),linear-gradient(145deg,#071015 0%,#0a171d 70%,#0a1b21 100%);border-right:1px solid #1b2e35;flex-direction:column;justify-content:center;display:flex;position:relative;overflow:hidden}.login-grid{opacity:.28;background-image:linear-gradient(#37848b1a 1px,#0000 1px),linear-gradient(90deg,#37848b1a 1px,#0000 1px);background-size:54px 54px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(90deg,#0000,#000 24% 76%,#0000);mask-image:linear-gradient(90deg,#0000,#000 24% 76%,#0000)}.login-grid:before{content:"";border:1px solid #2fd5d040;border-radius:50%;width:58%;height:36%;position:absolute;top:32%;right:-8%;transform:rotate(-11deg);box-shadow:0 0 0 44px #2fd5d005,0 0 0 90px #2fd5d004}.login-grid:after{content:"";background:linear-gradient(90deg,#0000,#2fd5d0 50%,#0000);height:2px;position:absolute;top:52%;left:28%;right:-4%;box-shadow:120px -48px 0 -.5px #2fd5d073,220px 65px 0 -.5px #2fd5d05c}.login-visual__content{z-index:1;width:min(650px,72%);margin:0 auto;position:relative}.login-visual__badge{color:#76aaa9;width:max-content;font:600 9px var(--font-geist-mono);letter-spacing:.14em;align-items:center;gap:8px;margin-bottom:34px;display:flex}.login-visual__badge svg{color:#45d493;width:15px}.login-visual h1{color:#f1f7f8;letter-spacing:-.055em;margin:0;font-size:clamp(42px,5vw,72px);font-weight:580;line-height:1.05}.login-visual__content>p{color:#7f989f;max-width:590px;margin:27px 0 38px;font-size:15px;line-height:1.65}.login-telemetry{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#09181dc7;border:1px solid #1c353d;border-radius:9px;grid-template-columns:1.2fr 1fr 1fr;display:grid}.login-telemetry>div{border-right:1px solid #1c353d;flex-direction:column;justify-content:center;min-height:84px;padding:0 20px;display:flex}.login-telemetry>div:last-child{border:0}.login-telemetry span{color:#55747b;font:600 8px var(--font-geist-mono);letter-spacing:.12em;align-items:center;gap:6px;display:flex}.login-telemetry i{background:#44d492;border-radius:50%;width:6px;height:6px;box-shadow:0 0 9px #44d492cc}.login-telemetry strong{color:#d7e6e8;font:560 16px var(--font-geist-mono);margin-top:9px}.login-telemetry strong small{color:#5f7a81;font-size:8px}.login-visual footer{color:#3e5c64;font:600 8px var(--font-geist-mono);letter-spacing:.18em;justify-content:space-around;display:flex;position:absolute;bottom:32px;left:5%;right:5%}.login-form-panel{background:#09151b;place-items:center;padding:42px;display:grid}.login-form-wrap{width:min(370px,100%)}.login-brand{align-items:center;gap:12px;margin-bottom:64px;display:flex}.login-brand>span{color:#051315;background:linear-gradient(135deg,#61e2dc,#1caeac);border-radius:10px;place-items:center;width:40px;height:40px;display:grid}.login-brand svg{width:22px}.login-brand strong,.login-brand small{display:block}.login-brand strong{letter-spacing:.08em;font-size:14px}.login-brand small{color:#506c74;font:600 8px/1.6 var(--font-geist-mono);letter-spacing:.17em}.login-title h2{letter-spacing:-.035em;margin:9px 0 7px;font-size:27px}.login-title p{color:#708991;margin:0 0 28px;font-size:12px}.ec-field{margin-bottom:17px;display:block}.ec-field>span,.ec-field>label{color:#a4b7bc;margin-bottom:7px;font-size:11px;font-weight:550;display:block}.ec-field>small{color:#ff7583;margin-top:5px;font-size:10px;display:block}.ec-input,.ec-select,.custom-range-form input{border:1px solid var(--border);background:var(--background-subtle);width:100%;height:40px;color:var(--text);border-radius:7px;outline:none;padding:0 12px}.ec-input:focus,.ec-select:focus,.custom-range-form input:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft)}.ec-input[aria-invalid=true]{border-color:var(--danger)}.password-field{position:relative}.password-field>svg{color:#5e7a82;width:15px;position:absolute;top:12px;left:12px}.password-field .ec-input{padding-left:38px;padding-right:42px}.password-field button{color:#647e86;background:0 0;border:0;width:30px;height:30px;position:absolute;top:6px;right:6px}.password-field button svg{width:15px}.login-options{justify-content:space-between;align-items:center;margin:3px 0 20px;font-size:10px;display:flex}.login-options label{color:#839aa1;gap:7px;display:flex}.login-options input{accent-color:#2fd5d0}.login-options button{color:#4fcfca;background:0 0;border:0;font-size:10px}.login-error{color:#ff909b;background:#ff647514;border:1px solid #ff64754d;border-radius:7px;margin-bottom:12px;padding:10px 12px;font-size:10px}.login-submit{width:100%;justify-content:space-between!important}.login-demo{background:#0a1a20;border:1px dashed #24404a;border-radius:7px;margin-top:20px;padding:13px}.login-demo span{color:#5b7b83;font:600 8px var(--font-geist-mono);letter-spacing:.12em}.login-demo p{color:#789098;margin:5px 0 0;font-size:10px}.login-version{color:#3f5d65;text-align:center;font:9px var(--font-geist-mono);margin-top:28px;display:block}.app-shell{background:radial-gradient(circle at 65% -15%, var(--primary), transparent 32%), var(--background);min-height:100vh}@supports (color:color-mix(in lab, red, red)){.app-shell{background:radial-gradient(circle at 65% -15%, color-mix(in srgb, var(--primary) 8%, transparent), transparent 32%), var(--background)}}.app-sidebar{z-index:40;width:var(--sidebar-width);border-right:1px solid var(--border-soft);background:var(--surface);flex-direction:column;display:flex;position:fixed;inset:0 auto 0 0}@supports (color:color-mix(in lab, red, red)){.app-sidebar{background:color-mix(in srgb, var(--surface) 97%, transparent)}}.app-sidebar{transition:width .18s,transform .18s}.app-brand{border-bottom:1px solid var(--border-soft);flex:0 0 68px;align-items:center;gap:11px;height:68px;padding:0 17px;display:flex;overflow:hidden}.ec-brand-mark__asset{width:34px;height:34px;color:var(--ec-primary-500);background:var(--ec-primary-500);border-radius:9px;flex:0 0 34px;place-items:center;display:grid;overflow:hidden}@supports (color:color-mix(in lab, red, red)){.ec-brand-mark__asset{background:color-mix(in srgb, var(--ec-primary-500) 12%, transparent)}}.ec-brand-mark__asset img,.report-paper__logo img,.brand-preview__asset img{object-fit:contain;width:100%;height:100%}.ec-brand-mark__asset svg{width:21px;height:21px}.ec-brand-mark__text{min-width:0;line-height:1.05;display:grid}.ec-brand-mark__text strong,.ec-brand-mark__text small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.ec-brand-mark__text strong{letter-spacing:.08em;text-transform:uppercase;font-size:.82rem}.ec-brand-mark__text small{color:var(--ec-text-muted);letter-spacing:.06em;margin-top:4px;font-size:.61rem}.brand-settings-grid{align-items:start}.brand-preview-panel{grid-column:1/-1}.brand-upload-list{gap:10px;display:grid}.brand-upload-row{border:1px solid var(--ec-border-subtle);cursor:pointer;border-radius:10px;grid-template-columns:36px minmax(0,1fr) auto;align-items:start;gap:10px;padding:10px;display:grid;position:relative}.brand-upload-row input{opacity:0;width:1px;height:1px;position:absolute}.brand-upload-row__icon{width:36px;height:36px;color:var(--ec-primary-500);background:var(--ec-primary-500);border-radius:8px;place-items:center;display:grid}@supports (color:color-mix(in lab, red, red)){.brand-upload-row__icon{background:color-mix(in srgb, var(--ec-primary-500) 10%, transparent)}}.brand-upload-row__icon svg,.brand-upload-row__action svg{width:16px}.brand-upload-row>span:nth-child(2){gap:3px;min-width:0;display:grid}.brand-upload-row em{color:var(--ec-text-secondary);font-size:.75rem;font-style:normal}.brand-upload-row small,.brand-upload-help{color:var(--ec-text-muted)}.brand-upload-row__action{color:var(--ec-primary-600);align-items:center;gap:6px;margin-top:8px;font-size:.78rem;font-weight:700;display:inline-flex}.brand-upload-help{margin:12px 0 0;font-size:.75rem}.brand-preview-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.brand-preview{border:1px solid var(--ec-border-subtle);color:#172033;background:#f7fafc;border-radius:12px;min-height:116px;padding:24px 16px 16px;position:relative}.brand-preview.is-dark{color:#f1f5f9;background:#121923}.brand-preview__label{color:#64748b;text-transform:uppercase;letter-spacing:.08em;font-size:.67rem;position:absolute;top:8px;right:10px}.brand-preview__sidebar{align-items:center;gap:11px;display:flex}.brand-preview__asset{color:#18a999;place-items:center;width:42px;height:42px;display:grid}.brand-preview__sidebar>span:last-child{gap:4px;min-width:0;display:grid}.brand-preview__sidebar strong{text-transform:uppercase;letter-spacing:.07em;font-size:.86rem}.brand-preview__sidebar small{color:#64748b;font-size:.68rem}.brand-preview.is-dark .brand-preview__sidebar small{color:#94a3b8}.videowall-output-brand .ec-brand-mark__asset{background:0 0;flex-basis:26px;width:26px;height:26px}.videowall-output-brand .ec-brand-mark__text small{display:none}.report-paper__logo img{max-width:38px;max-height:38px}@media (max-width:720px){.brand-preview-grid{grid-template-columns:1fr}}.app-brand__mark{color:#041415;background:linear-gradient(135deg,#65e4df,#20afad);border-radius:9px;flex:0 0 35px;place-items:center;height:35px;display:grid;box-shadow:0 0 22px #2fd5d024}.app-brand__mark svg{width:20px}.app-brand__text{white-space:nowrap}.app-brand__text strong,.app-brand__text small{display:block}.app-brand__text strong{letter-spacing:.08em;font-size:12px}.app-brand__text small{color:var(--text-muted);font:600 7px/1.6 var(--font-geist-mono);letter-spacing:.18em}.sidebar-mobile-close{display:none}.app-sidebar nav{scrollbar-width:thin;flex:1;padding:12px 9px;overflow-y:auto}.app-sidebar nav section{margin-bottom:6px}.app-sidebar nav h3{color:var(--text-muted);font:600 8px var(--font-geist-mono);letter-spacing:.15em;white-space:nowrap;margin:16px 11px 6px;overflow:hidden}.app-sidebar nav a{height:38px;color:var(--text-secondary);white-space:nowrap;border-radius:7px;align-items:center;gap:10px;padding:0 11px;font-size:11px;text-decoration:none;transition:all .14s;display:flex;position:relative;overflow:hidden}.app-sidebar nav a.active{color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.app-sidebar nav a.active{color:color-mix(in srgb, var(--primary) 70%, var(--text))}}.app-sidebar nav a.active{background:linear-gradient(90deg, var(--primary-soft), transparent);box-shadow:inset 2px 0 var(--primary)}.app-sidebar nav a svg{flex:0 0 16px;width:16px}.app-sidebar nav a b{color:var(--text-muted);font:600 9px var(--font-geist-mono);margin-left:auto}.app-sidebar nav a b.is-alert{color:#25080c;background:var(--danger);border-radius:5px;place-items:center;min-width:18px;height:18px;display:grid}.app-sidebar nav a em{color:var(--text-muted);font:600 7px var(--font-geist-mono);text-transform:uppercase;letter-spacing:.06em;margin-left:auto;font-style:normal}.sidebar-footer{border-top:1px solid var(--border-soft);align-items:center;gap:6px;min-height:75px;padding:10px;display:flex}.gateway-state{border:1px solid var(--border-soft);background:var(--background-subtle);border-radius:7px;flex:1;align-items:center;gap:9px;min-width:0;padding:10px;display:flex;overflow:hidden}.gateway-state>span{background:var(--success);width:6px;height:6px;box-shadow:0 0 9px var(--success);border-radius:50%;flex:0 0 6px}.gateway-state strong,.gateway-state small{white-space:nowrap;display:block}.gateway-state small{color:var(--text-muted);font:7px/1.5 var(--font-geist-mono)}.sidebar-footer>button{border:1px solid var(--border-soft);background:var(--surface);width:28px;height:34px;color:var(--text-muted);border-radius:6px;flex:0 0 28px;place-items:center;display:grid}.sidebar-footer>button svg{width:13px;transition:transform .18s}.sidebar-collapsed{--sidebar-width:66px}.sidebar-collapsed .app-brand{padding:0 15px}.sidebar-collapsed .app-brand__text,.sidebar-collapsed .app-sidebar nav h3,.sidebar-collapsed .app-sidebar nav a span,.sidebar-collapsed .app-sidebar nav a b,.sidebar-collapsed .app-sidebar nav a em,.sidebar-collapsed .gateway-state{display:none}.sidebar-collapsed .app-sidebar nav a{justify-content:center;padding:0}.sidebar-collapsed .sidebar-footer{justify-content:center}.sidebar-collapsed .sidebar-footer>button svg{transform:rotate(180deg)}.sidebar-backdrop{display:none}.app-workspace{min-width:0;min-height:100vh;margin-left:var(--sidebar-width);transition:margin-left .18s}.app-header{z-index:30;border-bottom:1px solid var(--border-soft);background:var(--background);align-items:center;height:68px;display:flex;position:sticky;top:0}@supports (color:color-mix(in lab, red, red)){.app-header{background:color-mix(in srgb, var(--background) 88%, transparent)}}.app-header{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.mobile-menu-button{display:none}.context-selectors{align-items:center;padding-left:22px;display:flex}.context-selectors>i{background:var(--border);width:1px;height:26px;margin:0 12px}.context-selectors label{grid-template-columns:minmax(0,1fr) 14px;min-width:150px;display:grid;position:relative}.context-selectors label>span{color:var(--text-muted);font:600 7px/1.6 var(--font-geist-mono);letter-spacing:.13em;grid-column:1/-1}.context-selectors select{-webkit-appearance:none;appearance:none;width:100%;color:var(--text);background:0 0;border:0;outline:none;padding:0 22px 0 0;font-size:10px;font-weight:580}.context-selectors label svg{width:11px;color:var(--text-muted);pointer-events:none;position:absolute;bottom:1px;right:0}.header-actions{align-items:center;gap:7px;margin-left:auto;padding-right:14px;display:flex}.global-search,.header-select,.header-icon-button,.user-button{border:1px solid var(--border-soft);background:var(--surface);border-radius:7px;height:34px}.global-search{width:185px;color:var(--text-muted);align-items:center;gap:8px;padding:0 9px;font-size:9px;display:flex}.global-search svg{width:13px}.global-search kbd{border:1px solid var(--border);background:var(--background-subtle);font:8px var(--font-geist-mono);border-radius:4px;margin-left:auto;padding:2px 5px}.header-select{align-items:center;padding-left:9px;display:flex;position:relative}.header-select>svg:first-child{width:13px;color:var(--text-muted)}.header-select select{-webkit-appearance:none;appearance:none;background:0 0;border:0;outline:0;max-width:120px;height:100%;padding:0 25px 0 7px;font-size:9px}.header-select>svg:last-child{width:10px;color:var(--text-muted);pointer-events:none;position:absolute;right:7px}.refresh-select select{max-width:67px}.refresh-select .is-spinning{animation:3s linear infinite slow-spin}@keyframes slow-spin{to{transform:rotate(360deg)}}.header-icon-button{width:34px;color:var(--text-muted);place-items:center;display:grid;position:relative}.header-icon-button svg{width:14px}.alarm-button span{border:2px solid var(--background);background:var(--danger);color:#26070b;min-width:15px;height:15px;font:700 7px var(--font-geist-mono);border-radius:6px;place-items:center;display:grid;position:absolute;top:-5px;right:-4px}.user-menu-wrap{position:relative}.user-button{align-items:center;gap:8px;padding:0 8px 0 5px;display:flex}.user-button>span{border:1px solid var(--primary);place-items:center;width:25px;height:25px;display:grid}@supports (color:color-mix(in lab, red, red)){.user-button>span{border:1px solid color-mix(in srgb, var(--primary) 32%, var(--border))}}.user-button>span{background:var(--primary-soft);color:var(--primary);font:700 8px var(--font-geist-mono);border-radius:6px}.user-button strong,.user-button small{text-overflow:ellipsis;text-align:left;white-space:nowrap;max-width:90px;display:block;overflow:hidden}.user-button strong{font-size:9px}.user-button small{color:var(--text-muted);font:7px var(--font-geist-mono)}.user-button>svg{width:10px;color:var(--text-muted)}.user-popover{z-index:60;border:1px solid var(--border);background:var(--surface-raised);width:220px;box-shadow:var(--shadow);border-radius:9px;padding:7px;position:absolute;top:42px;right:0}.user-popover>div{border-bottom:1px solid var(--border-soft);align-items:center;gap:10px;padding:10px;display:flex}.user-popover>div svg{width:17px;color:var(--primary)}.user-popover>div strong,.user-popover>div small{display:block}.user-popover>div strong{font-size:10px}.user-popover>div small{color:var(--text-muted);font-size:8px}.user-popover>button{width:100%;color:var(--text-secondary);text-align:left;background:0 0;border:0;border-radius:6px;padding:9px 10px;font-size:9px}.user-popover>button:hover{background:var(--surface-hover)}.user-popover>button.is-danger{color:var(--danger)}.user-popover .user-release-info{background:var(--background-subtle);padding-block:8px}.user-popover .user-release-info span{min-width:0}.user-popover .user-release-info strong,.user-popover .user-release-info small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.app-content{width:min(100%,1550px);margin:0 auto;padding:27px 28px 48px}.ec-button{letter-spacing:.015em;border:1px solid #0000;border-radius:7px;justify-content:center;align-items:center;gap:7px;min-height:34px;padding:0 13px;font-size:9px;font-weight:650;transition:all .14s;display:inline-flex}.ec-button svg{width:13px}.ec-button--sm{min-height:30px;padding:0 9px;font-size:8px}.ec-button--primary:hover{filter:brightness(1.08);transform:translateY(-1px)}.ec-button--secondary:hover{color:var(--text);background:var(--surface-hover)}.ec-button--ghost{color:var(--text-muted);background:0 0}.ec-button--ghost:hover{color:var(--primary);background:var(--primary-soft)}.ec-button--danger{color:#fff;background:var(--danger)}.ec-button:disabled{opacity:.6;transform:none}.ec-card,.ec-panel{border:1px solid var(--border);background:var(--surface-raised);border-radius:9px}@supports (color:color-mix(in lab, red, red)){.ec-card,.ec-panel{background:color-mix(in srgb, var(--surface-raised) 96%, transparent)}}.ec-panel{overflow:hidden}.ec-panel__header{border-bottom:1px solid var(--border-soft);justify-content:space-between;align-items:center;gap:18px;min-height:64px;padding:13px 17px;display:flex}.ec-panel__header h2{letter-spacing:-.015em;margin:5px 0 0;font-size:13px}.ec-panel__body{min-width:0}.ec-eyebrow{color:var(--primary);font:650 8px var(--font-geist-mono);letter-spacing:.15em}.ec-status,.ec-quality,.ec-alarm-state{width:max-content;font:650 8px var(--font-geist-mono);letter-spacing:.05em;text-transform:uppercase;white-space:nowrap;align-items:center;gap:6px;display:inline-flex}.ec-status.is-md{background:var(--background-subtle);border-radius:6px;padding:6px 8px}.ec-status.is-normal{color:var(--success)}.ec-status.is-warning{color:var(--warning)}.ec-status.is-critical,.ec-status.is-offline{color:var(--danger)}.ec-status.is-maintenance{color:var(--maintenance)}.ec-status.is-unknown,.ec-status.is-disabled{color:var(--unknown)}.ec-status-dot{background:var(--unknown);border-radius:50%;width:6px;height:6px;display:inline-block}.ec-status-dot.is-normal{background:var(--success);box-shadow:0 0 8px var(--success)}@supports (color:color-mix(in lab, red, red)){.ec-status-dot.is-normal{box-shadow:0 0 8px color-mix(in srgb, var(--success) 62%, transparent)}}.ec-status-dot.is-warning{background:var(--warning);box-shadow:0 0 8px var(--warning)}@supports (color:color-mix(in lab, red, red)){.ec-status-dot.is-warning{box-shadow:0 0 8px color-mix(in srgb, var(--warning) 55%, transparent)}}.ec-status-dot.is-critical,.ec-status-dot.is-offline{background:var(--danger);box-shadow:0 0 8px var(--danger)}@supports (color:color-mix(in lab, red, red)){.ec-status-dot.is-critical,.ec-status-dot.is-offline{box-shadow:0 0 8px color-mix(in srgb, var(--danger) 55%, transparent)}}.ec-status-dot.is-maintenance{background:var(--maintenance)}.ec-status-dot.is-disabled{background:#566970}.ec-badge{border:1px solid var(--border);background:var(--background-subtle);width:max-content;color:var(--text-secondary);font:650 8px var(--font-geist-mono);letter-spacing:.04em;text-transform:uppercase;white-space:nowrap;border-radius:5px;align-items:center;padding:4px 7px;display:inline-flex}.ec-badge.is-critical{color:var(--danger);border-color:var(--danger)}@supports (color:color-mix(in lab, red, red)){.ec-badge.is-critical{border-color:color-mix(in srgb, var(--danger) 28%, transparent)}}.ec-badge.is-critical{background:var(--danger-soft)}.ec-badge.is-warning{color:var(--warning);border-color:var(--warning)}@supports (color:color-mix(in lab, red, red)){.ec-badge.is-warning{border-color:color-mix(in srgb, var(--warning) 28%, transparent)}}.ec-badge.is-warning{background:var(--warning-soft)}.ec-badge.is-info{color:var(--info);border-color:var(--info)}@supports (color:color-mix(in lab, red, red)){.ec-badge.is-info{border-color:color-mix(in srgb, var(--info) 28%, transparent)}}.ec-badge.is-info{background:var(--info-soft)}.ec-badge.is-success{color:var(--success);border-color:var(--success)}@supports (color:color-mix(in lab, red, red)){.ec-badge.is-success{border-color:color-mix(in srgb, var(--success) 28%, transparent)}}.ec-badge.is-success{background:var(--success-soft)}.ec-alarm-state.is-active{color:var(--danger)}.ec-alarm-state.is-acknowledged{color:var(--warning)}.ec-alarm-state.is-resolved{color:var(--success)}.ec-quality span{border-radius:50%;width:6px;height:6px}.ec-quality.is-good{color:var(--success)}.ec-quality.is-good span{background:var(--success)}.ec-quality.is-bad{color:var(--danger)}.ec-quality.is-bad span{background:var(--danger)}.ec-quality.is-uncertain{color:var(--warning)}.ec-quality.is-uncertain span{background:var(--warning)}.ec-quality.is-stale{color:var(--unknown)}.ec-quality.is-stale span{background:var(--unknown)}.ec-page-header__row{align-items:flex-end;gap:20px;display:flex}.ec-page-header__row>div:first-child{flex:1;min-width:0}.ec-page-header h1{letter-spacing:-.04em;margin:7px 0 5px;font-size:25px;font-weight:620;line-height:1.05}.ec-page-header p{color:var(--text-muted);margin:0;font-size:10px;line-height:1.5}.ec-page-header__status{margin-left:auto}.ec-page-header__actions{gap:7px;margin-left:auto;display:flex}.ec-breadcrumb{color:var(--text-muted);align-items:center;gap:4px;margin-bottom:15px;font-size:8px;display:flex}.ec-breadcrumb span{align-items:center;gap:4px;display:flex}.ec-breadcrumb a{text-decoration:none}.ec-breadcrumb b{color:var(--text-secondary);font-weight:550}.ec-search-input{border:1px solid var(--border);background:var(--surface);height:36px;color:var(--text-muted);border-radius:7px;align-items:center;gap:8px;padding:0 10px;display:flex}.ec-search-input:focus-within{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft)}.ec-search-input svg{flex:0 0 14px}.ec-search-input input{min-width:0;color:var(--text);background:0 0;border:0;outline:0;flex:1;font-size:9px}.ec-select{-webkit-appearance:none;appearance:none;background-image:linear-gradient(45deg, transparent 50%, var(--text-muted) 50%), linear-gradient(135deg, var(--text-muted) 50%, transparent 50%);background-position:calc(100% - 14px) 14px,calc(100% - 10px) 14px;background-repeat:no-repeat;background-size:4px 4px,4px 4px;min-width:138px;height:34px;padding-right:30px;font-size:9px}.ec-loading{border:1px solid var(--border);background:var(--surface);border-radius:9px;padding:24px}.ec-loading__pulse{color:var(--text-muted);align-items:center;gap:8px;margin-bottom:22px;font-size:9px;display:flex}.ec-loading__pulse svg{animation:1s linear infinite slow-spin}.ec-skeleton{background:linear-gradient(90deg, var(--surface-hover), var(--border-soft), var(--surface-hover));background-size:200% 100%;border-radius:5px;height:13px;margin:11px 0;animation:1.3s ease-in-out infinite shimmer}@keyframes shimmer{to{background-position:-200% 0}}.ec-feedback-state{border:1px solid var(--border);background:var(--surface);text-align:center;border-radius:9px;align-content:center;place-items:center;min-height:310px;padding:35px;display:grid}.ec-feedback-state>span{background:var(--primary-soft);width:46px;height:46px;color:var(--primary);border-radius:11px;place-items:center;display:grid}.ec-feedback-state>span.is-error{background:var(--danger-soft);color:var(--danger)}.ec-feedback-state svg{width:20px}.ec-feedback-state h3{margin:14px 0 4px;font-size:13px}.ec-feedback-state p{max-width:420px;color:var(--text-muted);margin:0 0 15px;font-size:10px;line-height:1.55}.ec-overlay{z-index:100;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#01070aad;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.ec-dialog{border:1px solid var(--border);background:var(--surface-raised);width:min(520px,100%);max-height:86vh;box-shadow:var(--shadow);border-radius:11px;overflow:auto}.ec-dialog>header,.ec-drawer>header{border-bottom:1px solid var(--border-soft);justify-content:space-between;align-items:flex-start;gap:15px;padding:18px 19px;display:flex}.ec-dialog>header h2,.ec-drawer>header h2{margin:0;font-size:14px}.ec-dialog>header p{color:var(--text-muted);margin:5px 0 0;font-size:9px}.ec-dialog>header button,.ec-drawer>header button{background:var(--surface-hover);width:28px;height:28px;color:var(--text-muted);border:0;border-radius:6px;place-items:center;display:grid}.ec-dialog>header button svg,.ec-drawer>header button svg{width:14px}.ec-dialog__body{padding:19px}.ec-overlay.is-drawer{place-items:stretch end;padding:0}.ec-drawer{border-left:1px solid var(--border);background:var(--surface-raised);width:min(430px,100%);height:100%;box-shadow:var(--shadow);animation:.18s drawer-in}.ec-drawer__body{height:calc(100% - 72px);padding:19px;overflow:auto}@keyframes drawer-in{0%{opacity:0;transform:translate(30px)}}.ec-tooltip{position:relative}.ec-tooltip:hover:after{content:attr(data-tooltip);z-index:4;border:1px solid var(--border);background:var(--surface-raised);width:max-content;max-width:200px;color:var(--text-secondary);box-shadow:var(--shadow);border-radius:5px;padding:6px 8px;font-size:8px;position:absolute;bottom:calc(100% + 7px);left:50%;transform:translate(-50%)}.site-operational-state{border:1px solid var(--border);background:var(--surface);border-radius:8px;align-items:center;gap:10px;padding:9px 11px;display:flex}.site-operational-state strong,.site-operational-state small{display:block}.site-operational-state small{color:var(--text-muted);font:7px var(--font-geist-mono);margin-top:2px}.stats-grid,.operation-metric-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:10px;display:grid}.ec-stat-card{border:1px solid var(--border);background:linear-gradient(145deg, var(--surface-raised), var(--surface));border-radius:9px;min-height:116px;padding:15px 16px;position:relative}@supports (color:color-mix(in lab, red, red)){.ec-stat-card{background:linear-gradient(145deg, var(--surface-raised), color-mix(in srgb, var(--surface) 92%, transparent))}}.ec-stat-card{overflow:hidden}.ec-stat-card:after{content:"";opacity:.36;background:linear-gradient(90deg, transparent, var(--primary), transparent);height:2px;position:absolute;bottom:0;left:0;right:0}.ec-stat-card.is-green:after{background:linear-gradient(90deg, transparent, var(--success), transparent)}.ec-stat-card.is-red:after{background:linear-gradient(90deg, transparent, var(--danger), transparent)}.ec-stat-card.is-amber:after{background:linear-gradient(90deg, transparent, var(--warning), transparent)}.ec-stat-card__icon{background:var(--primary-soft);width:32px;height:32px;color:var(--primary);border-radius:8px;place-items:center;display:grid;position:absolute;top:14px;right:14px}.ec-stat-card.is-green .ec-stat-card__icon{color:var(--success);background:var(--success-soft)}.ec-stat-card.is-red .ec-stat-card__icon{color:var(--danger);background:var(--danger-soft)}.ec-stat-card.is-amber .ec-stat-card__icon{color:var(--warning);background:var(--warning-soft)}.ec-stat-card.is-blue .ec-stat-card__icon{color:var(--info);background:var(--info-soft)}.ec-stat-card__icon svg{width:15px}.ec-stat-card>span{color:var(--text-muted);font:650 8px var(--font-geist-mono);letter-spacing:.12em}.ec-stat-card>strong{font:560 25px var(--font-geist-mono);letter-spacing:-.045em;margin:8px 0 3px;display:block}.ec-stat-card>small b{color:var(--text-secondary)}.ec-stat-card>em{color:var(--success);font-size:7px;font-style:normal;position:absolute;bottom:14px;right:13px}.ec-stat-card.is-compact{min-height:100px}.ec-stat-card.is-compact>strong{font-size:20px}.overview-primary-grid{grid-template-columns:minmax(0,2.05fr) minmax(290px,.95fr);gap:10px;margin-bottom:10px;display:grid}.panel-link{color:var(--text-muted);background:0 0;border:0;align-items:center;gap:5px;font-size:8px;display:inline-flex}.panel-link svg{width:11px;color:var(--primary)}.system-card-grid{background:var(--border-soft);grid-template-columns:repeat(3,1fr);gap:1px;display:grid}.system-card{background:var(--surface);text-align:left;border:0;grid-template-rows:auto 1fr auto;grid-template-columns:36px 1fr;column-gap:10px;min-height:147px;padding:15px;transition:all .14s;display:grid}.system-card:hover{z-index:1;background:var(--surface-hover);box-shadow:inset 0 0 0 1px var(--primary)}@supports (color:color-mix(in lab, red, red)){.system-card:hover{box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--primary) 34%, var(--border))}}.system-card__icon{width:34px;height:34px;color:var(--primary);background:var(--primary-soft);border-radius:8px;place-items:center;display:grid}.system-card__icon svg{width:16px}.system-card.accent-amber .system-card__icon{color:var(--warning);background:var(--warning-soft)}.system-card.accent-violet .system-card__icon{color:var(--maintenance);background:var(--maintenance)}@supports (color:color-mix(in lab, red, red)){.system-card.accent-violet .system-card__icon{background:color-mix(in srgb, var(--maintenance) 10%, transparent)}}.system-card.accent-blue .system-card__icon{color:var(--info);background:var(--info-soft)}.system-card.accent-green .system-card__icon{color:var(--success);background:var(--success-soft)}.system-card.accent-slate .system-card__icon{color:var(--unknown);background:var(--unknown)}@supports (color:color-mix(in lab, red, red)){.system-card.accent-slate .system-card__icon{background:color-mix(in srgb, var(--unknown) 12%, transparent)}}.system-card__title strong{margin:2px 0 6px;font-size:10px;display:block}.system-card__metric{grid-column:1/-1;align-self:center}.system-card__metric small,.system-card__metric b{display:block}.system-card__metric small{color:var(--text-muted);font-size:7px}.system-card__metric b{font:560 13px var(--font-geist-mono);margin-top:3px}.system-card__footer{border-top:1px solid var(--border-soft);color:var(--text-muted);grid-column:1/-1;align-items:center;gap:13px;padding-top:9px;font-size:8px;display:flex}.system-card__footer b{color:var(--text-secondary)}.system-card__footer .has-alert{color:var(--warning)}.system-card__footer>svg{width:12px;color:var(--text-muted);margin-left:auto}.realtime-label{color:var(--text-muted);font:650 7px var(--font-geist-mono);letter-spacing:.09em;align-items:center;gap:6px;display:flex}.realtime-label i,.pulse-dot{background:var(--success);width:6px;height:6px;box-shadow:0 0 8px var(--success);border-radius:50%;display:inline-block}.site-health-summary{border-bottom:1px solid var(--border-soft);padding:15px 16px 13px}.site-health-summary strong,.site-health-summary small{display:block}.site-health-summary strong{color:var(--text-secondary);font-size:9px;line-height:1.45}.site-health-summary small{color:var(--text-muted);margin-top:3px;font-size:7px}.service-list{padding:0 16px 9px}.service-list>div{border-bottom:1px solid var(--border-soft);grid-template-columns:1fr auto 49px;align-items:center;height:40px;font-size:8px;display:grid}.service-list>div:last-child{border:0}.service-list span{color:var(--text-secondary);align-items:center;gap:7px;display:flex}.service-list i{background:var(--success);border-radius:50%;width:6px;height:6px}.service-list strong{color:var(--success);font:650 7px var(--font-geist-mono);text-transform:uppercase}.service-list small{color:var(--text-muted);font:7px var(--font-geist-mono);text-align:right}.overview-chart-grid,.operation-summary-grid{grid-template-columns:minmax(0,2fr) minmax(300px,.95fr);gap:10px;margin-bottom:10px;display:grid}.chart-total{text-align:right}.chart-total small,.chart-total strong{display:block}.chart-total small{color:var(--text-muted);font:650 7px var(--font-geist-mono);letter-spacing:.08em}.chart-total strong{font:560 13px var(--font-geist-mono);margin-top:3px}.chart-total strong span{color:var(--text-muted);font-size:7px;font-weight:500}.ec-chart{width:100%}.health-chart-wrap{grid-template-columns:1.3fr 1fr;align-items:center;min-height:245px;padding-right:16px;display:grid;position:relative}.health-chart-total{text-align:center;pointer-events:none;position:absolute;top:50%;left:26%;transform:translate(-50%,-50%)}.health-chart-total strong,.health-chart-total span{display:block}.health-chart-total strong{font:560 20px var(--font-geist-mono)}.health-chart-total span{color:var(--text-muted);font-size:7px}.health-legend>div{border-bottom:1px solid var(--border-soft);min-height:31px;color:var(--text-muted);grid-template-columns:7px 1fr auto;align-items:center;gap:7px;font-size:8px;display:grid}.health-legend i,.inventory-summary i{border-radius:50%;width:6px;height:6px}.health-legend i.online,.inventory-summary i.online{background:var(--success)}.health-legend i.offline,.inventory-summary i.offline{background:var(--danger)}.health-legend i.warning{background:var(--warning)}.health-legend i.maintenance{background:var(--maintenance)}.health-legend b{color:var(--text-secondary);font:600 9px var(--font-geist-mono)}.ec-table-wrap table{border-collapse:collapse;width:100%;min-width:760px}.ec-table-wrap th{border-bottom:1px solid var(--border);background:var(--background-subtle);height:38px;color:var(--text-muted);text-align:left;font:650 7px var(--font-geist-mono);letter-spacing:.1em;white-space:nowrap;padding:0 13px}.ec-table-wrap td{border-bottom:1px solid var(--border-soft);height:48px;color:var(--text-secondary);padding:0 13px;font-size:8px}.ec-table-wrap tr:last-child td{border-bottom:0}.communication-table th,.communication-table td{vertical-align:top;overflow-wrap:anywhere;padding:10px 13px}.communication-table th{white-space:normal}.communication-table td:first-child{min-width:220px;max-width:340px}.communication-brokers-table td:nth-child(2){white-space:nowrap;min-width:175px}.communication-brokers-table td:nth-child(3){min-width:190px}.communication-table td:last-child{min-width:210px}.ec-table-wrap tr.is-clickable{cursor:pointer}.ec-table-wrap tr.is-clickable:hover td{background:var(--surface-hover);color:var(--text)}.ec-table-wrap table.is-compact td{height:45px}.table-primary{color:var(--text);font-size:8px;font-weight:580}.table-secondary{color:var(--text-muted)}.table-mono{font-family:var(--font-geist-mono);font-size:7px}.table-subline{color:var(--text-muted);margin-top:2px;display:block}.table-link{color:var(--text-secondary);text-decoration:underline;-webkit-text-decoration-color:var(--border);-webkit-text-decoration-color:var(--border);-webkit-text-decoration-color:var(--border);text-decoration-color:var(--border);text-underline-offset:3px;background:0 0;border:0;padding:0}.telemetry-value{color:var(--text);font:600 10px var(--font-geist-mono)}.device-cell,.tag-cell{align-items:center;gap:9px;display:flex}.device-cell>span,.tag-cell>span{background:var(--primary-soft);width:28px;height:28px;color:var(--primary);border-radius:6px;flex:0 0 28px;place-items:center;display:grid}.device-cell svg,.tag-cell svg{width:13px}.device-cell strong,.device-cell small,.tag-cell strong,.tag-cell small{display:block}.device-cell strong,.tag-cell strong{color:var(--text);font-size:8px}.device-cell small,.tag-cell small{color:var(--text-muted);margin-top:2px;font-size:7px}.ec-pagination{border-top:1px solid var(--border-soft);height:45px;color:var(--text-muted);justify-content:space-between;align-items:center;padding:0 13px;font-size:8px;display:flex}.ec-pagination div{gap:5px;display:flex}.ec-pagination button{border:1px solid var(--border);background:var(--surface);width:27px;height:27px;color:var(--text-muted);border-radius:5px;place-items:center;display:grid}.ec-pagination button:disabled{opacity:.35}.ec-pagination svg{width:12px}.table-toolbar{justify-content:space-between;align-items:center;gap:14px;margin:17px 0 10px;display:flex}.table-toolbar>.ec-search-input{width:min(350px,100%)}.table-filters{align-items:center;gap:7px;display:flex}.table-filters>span{color:var(--text-muted);font:650 7px var(--font-geist-mono);letter-spacing:.1em;align-items:center;gap:5px;margin-right:2px;display:flex}.table-filters>span svg{width:12px}.inventory-summary{border-bottom:1px solid var(--border-soft);min-height:40px;color:var(--text-muted);font:650 7px var(--font-geist-mono);letter-spacing:.05em;justify-content:space-between;align-items:center;gap:15px;padding:0 13px;display:flex}.inventory-summary>span{align-items:center;gap:7px;display:flex}.inventory-summary strong,.inventory-summary b{color:var(--text-secondary)}.capitalize{text-transform:capitalize}.is-danger-text{color:var(--danger)!important}.is-warning-text{color:var(--warning)!important}.operation-alert-strip,.device-active-alert,.system-security-note{border:1px solid var(--warning);align-items:center;gap:12px;min-height:62px;margin:10px 0;padding:12px 15px;display:flex}@supports (color:color-mix(in lab, red, red)){.operation-alert-strip,.device-active-alert,.system-security-note{border:1px solid color-mix(in srgb, var(--warning) 28%, var(--border))}}.operation-alert-strip,.device-active-alert,.system-security-note{background:var(--warning-soft);border-radius:9px}.operation-alert-strip>svg,.device-active-alert>svg{width:18px;color:var(--warning)}.operation-alert-strip>div,.device-active-alert>div{flex:1}.operation-alert-strip strong,.operation-alert-strip p,.device-active-alert strong,.device-active-alert p{margin:0;display:block}.operation-alert-strip strong,.device-active-alert strong{font-size:9px}.operation-alert-strip p,.device-active-alert p{color:var(--text-muted);margin-top:3px;font-size:8px}.operation-health{grid-template-columns:.9fr 1.1fr;align-items:center;min-height:245px;padding:18px;display:grid}.operation-health-score{text-align:center}.operation-health-score strong,.operation-health-score span{display:block}.operation-health-score strong{color:var(--primary);font:560 33px var(--font-geist-mono)}.operation-health-score small{font-size:12px}.operation-health-score span{color:var(--text-muted);font-size:7px}.operation-health dl{margin:0}.operation-health dl>div{border-bottom:1px solid var(--border-soft);justify-content:space-between;padding:10px 0;font-size:8px;display:flex}.operation-health dt{color:var(--text-muted)}.operation-health dd{color:var(--text-secondary);font-family:var(--font-geist-mono);margin:0}.future-flow{text-align:center}.future-flow>svg{width:40px;color:var(--primary)}.future-flow h3{margin:12px 0 5px;font-size:13px}.future-flow p{color:var(--text-muted);font-size:9px;line-height:1.55}.future-flow ul{max-width:290px;color:var(--text-secondary);text-align:left;margin:16px auto;padding:0;font-size:9px;line-height:2}.detail-tabs{border:1px solid var(--border);background:var(--surface);border-radius:8px;gap:3px;margin:-2px 0 10px;padding:5px;display:flex;overflow-x:auto}.detail-tabs button{height:31px;color:var(--text-muted);white-space:nowrap;background:0 0;border:0;border-radius:6px;align-items:center;gap:6px;padding:0 10px;font-size:8px;display:flex}.detail-tabs button svg{width:12px}.detail-tabs button:disabled{opacity:.48}.device-identity-grid{grid-template-columns:1.3fr 1fr .85fr;gap:10px;display:grid}.detail-list{grid-template-columns:1fr 1fr;margin:0;padding:13px 17px;display:grid}.detail-list>div{border-bottom:1px solid var(--border-soft);padding:11px 0}.detail-list>div:nth-last-child(-n+2){border-bottom:0}.detail-list dd{color:var(--text-secondary);margin:4px 0 0;font-size:8px}.connectivity-hero{border:1px solid var(--success);align-items:center;gap:11px;margin:14px;padding:12px;display:flex}@supports (color:color-mix(in lab, red, red)){.connectivity-hero{border:1px solid color-mix(in srgb, var(--success) 25%, var(--border))}}.connectivity-hero{background:var(--success-soft);border-radius:8px}.connectivity-hero>span{background:var(--success-soft);width:34px;height:34px;color:var(--success);border-radius:7px;place-items:center;display:grid}.connectivity-hero svg{width:16px}.connectivity-hero strong,.connectivity-hero small{display:block}.connectivity-hero strong{font-size:8px}.connectivity-hero small{color:var(--text-muted);margin-top:3px;font-size:7px}.connectivity-hero.is-offline,.connectivity-hero.is-critical{border-color:var(--danger)}@supports (color:color-mix(in lab, red, red)){.connectivity-hero.is-offline,.connectivity-hero.is-critical{border-color:color-mix(in srgb, var(--danger) 28%, var(--border))}}.connectivity-hero.is-offline,.connectivity-hero.is-critical{background:var(--danger-soft)}.connectivity-hero.is-offline>span,.connectivity-hero.is-critical>span{color:var(--danger);background:var(--danger-soft)}.connectivity-list{margin:0 14px 10px}.connectivity-list>div{border-bottom:1px solid var(--border-soft);justify-content:space-between;align-items:center;padding:8px 0;display:flex}.connectivity-list dt{align-items:center;gap:6px;display:flex}.connectivity-list dt svg{width:11px}.connectivity-list dd{color:var(--text-secondary);margin:0;font-size:7px}.device-health-list{padding:7px 14px 12px}.device-health-list>div{border-bottom:1px solid var(--border-soft);grid-template-columns:28px 1fr auto;align-items:center;gap:8px;padding:10px 0;display:grid}.device-health-list>div:last-child{border:0}.device-health-list>div>span{background:var(--success-soft);width:27px;height:27px;color:var(--success);border-radius:6px;place-items:center;display:grid}.device-health-list svg{width:12px}.device-health-list p{margin:0}.device-health-list strong,.device-health-list small{display:block}.device-health-list strong{font-size:8px}.device-health-list small{color:var(--text-muted);margin-top:2px;font-size:7px}.device-health-list b{color:var(--success);font:650 7px var(--font-geist-mono)}.device-active-alert{border-color:var(--danger)}@supports (color:color-mix(in lab, red, red)){.device-active-alert{border-color:color-mix(in srgb, var(--danger) 27%, var(--border))}}.device-active-alert{background:var(--danger-soft)}.device-active-alert>svg{color:var(--danger)}.tag-summary-strip{border:1px solid var(--border);background:var(--surface);border-radius:9px;grid-template-columns:repeat(4,1fr);min-height:76px;margin-bottom:10px;display:grid}.tag-summary-strip>div{border-right:1px solid var(--border-soft);align-items:center;gap:10px;padding:0 17px;display:flex}.tag-summary-strip>div:last-child{border:0}.tag-summary-strip>div>span{background:var(--primary-soft);width:30px;height:30px;color:var(--primary);border-radius:7px;place-items:center;display:grid}.tag-summary-strip svg{width:14px}.tag-summary-strip i{border-radius:50%;width:8px;height:8px}.tag-summary-strip i.is-good{background:var(--success)}.tag-summary-strip i.is-warning{background:var(--warning)}.tag-summary-strip p{margin:0}.tag-summary-strip strong,.tag-summary-strip small,.tag-summary-strip p>span{display:block}.tag-summary-strip strong{font:600 15px var(--font-geist-mono)}.tag-summary-strip small,.tag-summary-strip p>span{color:var(--text-muted);font-size:7px}.alerts-stats{margin-bottom:10px}.alarm-drawer-content h3{margin:15px 0;font-size:15px;line-height:1.4}.alarm-drawer-heading{gap:7px;display:flex}.alarm-drawer-content dl{border-top:1px solid var(--border-soft);margin:0 0 16px}.alarm-drawer-content dl>div{border-bottom:1px solid var(--border-soft);justify-content:space-between;gap:15px;padding:10px 0;font-size:8px;display:flex}.alarm-drawer-content dt{color:var(--text-muted)}.alarm-drawer-content dd{color:var(--text-secondary);text-align:right;margin:0}.ec-callout{border:1px solid var(--warning);gap:10px;margin:15px 0;padding:12px;display:flex}@supports (color:color-mix(in lab, red, red)){.ec-callout{border:1px solid color-mix(in srgb, var(--warning) 25%, var(--border))}}.ec-callout{background:var(--warning-soft);border-radius:7px}.ec-callout>svg{color:var(--warning);flex:0 0 15px}.ec-callout strong{font-size:8px}.ec-callout p{color:var(--text-muted);margin:4px 0 0;font-size:8px;line-height:1.5}.alarm-timeline{margin:18px 0}.alarm-timeline>div{gap:10px;min-height:53px;display:flex;position:relative}.alarm-timeline>div:before{content:"";background:var(--border);width:1px;position:absolute;top:27px;bottom:0;left:13px}.alarm-timeline>div:last-child:before{display:none}.alarm-timeline>div>span{z-index:1;background:var(--surface-hover);width:27px;height:27px;color:var(--text-muted);border-radius:50%;place-items:center;display:grid}.alarm-timeline>div.active>span{color:var(--danger);background:var(--danger-soft)}.alarm-timeline svg{width:12px}.alarm-timeline p{margin:4px 0 0}.alarm-timeline strong,.alarm-timeline small{display:block}.alarm-timeline strong{font-size:8px}.alarm-timeline small{color:var(--text-muted);margin-top:3px;font-size:7px}.module-placeholder{border:1px solid var(--border);background:radial-gradient(circle at 50% 0, var(--primary-soft), transparent 35%), var(--surface);text-align:center;border-radius:12px;max-width:730px;margin:30px auto;padding:42px}.module-placeholder__icon{border:1px solid var(--primary);place-items:center;width:58px;height:58px;margin:0 auto 13px;display:grid}@supports (color:color-mix(in lab, red, red)){.module-placeholder__icon{border:1px solid color-mix(in srgb, var(--primary) 30%, var(--border))}}.module-placeholder__icon{background:var(--primary-soft);color:var(--primary);border-radius:14px}.module-placeholder__icon svg{width:26px}.module-placeholder h2{margin:16px 0 7px;font-size:18px}.module-placeholder>p{max-width:550px;color:var(--text-muted);margin:0 auto;font-size:10px;line-height:1.6}.module-placeholder>div:not(.module-placeholder__icon){border:1px solid var(--border-soft);background:var(--background-subtle);text-align:left;border-radius:8px;max-width:440px;margin:26px auto 0;padding:17px}.module-placeholder>div strong{font-size:9px}.module-placeholder ul{grid-template-columns:1fr 1fr;gap:9px;padding:0;list-style:none;display:grid}.module-placeholder li{color:var(--text-secondary);align-items:center;gap:7px;font-size:8px;display:flex}.module-placeholder li svg{width:12px;color:var(--success)}.module-placeholder footer{margin-top:26px}.admin-site-grid{grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:10px;display:grid}.admin-site-grid>button{border:1px solid var(--border);background:var(--surface);text-align:left;border-radius:9px;grid-template-columns:38px 1fr;gap:10px;min-height:130px;padding:17px;display:grid;position:relative}.admin-site-grid>button.active{border-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.admin-site-grid>button.active{border-color:color-mix(in srgb, var(--primary) 42%, var(--border))}}.admin-site-grid>button.active{box-shadow:inset 0 0 0 1px var(--primary-soft)}.admin-site-grid>button>span{background:var(--primary-soft);width:38px;height:38px;color:var(--primary);border-radius:8px;place-items:center;display:grid}.admin-site-grid svg{width:16px}.admin-site-grid small{color:var(--primary);font:650 7px var(--font-geist-mono);letter-spacing:.1em}.admin-site-grid strong{margin:5px 0;font-size:11px;display:block}.admin-site-grid p{color:var(--text-muted);align-items:center;gap:4px;margin:0;font-size:7px;display:flex}.admin-site-grid p svg{width:10px}.admin-site-grid .ec-status{position:absolute;bottom:16px;left:66px}.admin-site-grid>button>svg{color:var(--text-muted);position:absolute;top:16px;right:15px}.hierarchy-flow{background:var(--border-soft);grid-template-columns:repeat(7,1fr);gap:1px;display:grid}.hierarchy-flow>div{background:var(--surface);text-align:center;flex-direction:column;justify-content:center;min-height:85px;padding:12px;display:flex}.hierarchy-flow span{color:var(--primary);font:650 7px var(--font-geist-mono)}.hierarchy-flow strong{color:var(--text-secondary);margin-top:7px;font-size:8px}.platform-service-grid{background:var(--border-soft);grid-template-columns:repeat(5,1fr);gap:1px;display:grid}.platform-service-grid article{background:var(--surface);min-height:140px;padding:16px}.platform-service-grid article>span{background:var(--primary-soft);width:34px;height:34px;color:var(--primary);border-radius:8px;place-items:center;margin-bottom:12px;display:grid}.platform-service-grid svg{width:15px}.platform-service-grid strong,.platform-service-grid small{display:block}.platform-service-grid strong{font-size:9px}.platform-service-grid small{color:var(--text-muted);margin-top:3px;font-size:7px}.platform-service-grid b{color:var(--success);font:650 7px var(--font-geist-mono);text-transform:uppercase;align-items:center;gap:5px;margin-top:15px;display:flex}.platform-service-grid b svg{width:10px}.platform-service-grid em{color:var(--text-muted);font:7px var(--font-geist-mono);margin-top:5px;font-style:normal;display:block}.system-security-note{border-color:var(--success)}@supports (color:color-mix(in lab, red, red)){.system-security-note{border-color:color-mix(in srgb, var(--success) 25%, var(--border))}}.system-security-note{background:var(--success-soft)}.system-security-note>svg{width:19px;color:var(--success)}.system-security-note strong{font-size:9px}.system-security-note p{color:var(--text-muted);margin:4px 0 0;font-size:8px}.custom-range-form{gap:13px;display:grid}.custom-range-form label span{color:var(--text-secondary);margin-bottom:6px;font-size:8px;display:block}.custom-range-form button{background:var(--primary);color:#031415;border:0;border-radius:7px;height:36px;font-size:9px;font-weight:700}@media (max-width:1220px){.global-search{display:none}.system-card-grid{grid-template-columns:repeat(2,1fr)}.device-identity-grid{grid-template-columns:1fr 1fr}.device-identity-grid>.ec-panel:last-child{grid-column:1/-1}.platform-service-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width:980px){:root,.sidebar-collapsed{--sidebar-width:0px}.app-sidebar{width:244px;box-shadow:var(--shadow);transform:translate(-100%)}.app-sidebar.is-mobile-open{transform:translate(0)}.app-sidebar .app-brand{padding:0 17px}.sidebar-mobile-close{width:40px;height:40px;color:var(--text-muted);background:0 0;border:0;place-items:center;margin-left:auto;display:grid}.sidebar-mobile-close svg{width:16px}.sidebar-footer>button{display:none}.sidebar-backdrop{z-index:35;background:#02080ba6;border:0;display:block;position:fixed;inset:0}.app-workspace{margin-left:0}.mobile-menu-button{width:46px;height:68px;color:var(--text-muted);background:0 0;border:0;place-items:center;display:grid}.mobile-menu-button svg{width:17px}.context-selectors label:first-child,.context-selectors>i,.header-select.refresh-select,.user-button>div,.user-button>svg{display:none}.overview-primary-grid,.overview-chart-grid,.operation-summary-grid{grid-template-columns:1fr}.health-chart-wrap{max-width:520px}.stats-grid,.operation-metric-grid{grid-template-columns:1fr 1fr}.login-page{grid-template-columns:1fr 430px}.login-visual__content{width:80%}.login-telemetry{grid-template-columns:1fr;width:240px}.login-telemetry>div{border-bottom:1px solid #1c353d;border-right:0;min-height:57px}.admin-site-grid{grid-template-columns:1fr 1fr}.hierarchy-flow{grid-template-columns:repeat(4,1fr)}}@media (max-width:720px){:root{--sidebar-width:0px}.app-sidebar{width:244px;box-shadow:var(--shadow);transform:translate(-100%)}.app-sidebar.is-mobile-open{transform:translate(0)}.app-sidebar .app-brand{padding:0 17px}.app-sidebar .app-brand__text,.app-sidebar nav h3,.app-sidebar nav a span,.app-sidebar nav a b,.app-sidebar nav a em,.app-sidebar .gateway-state{display:initial}.app-sidebar nav a{justify-content:flex-start;padding:0 11px}.sidebar-mobile-close{width:29px;height:29px;color:var(--text-muted);background:0 0;border:0;place-items:center;margin-left:auto;display:grid}.sidebar-mobile-close svg{width:14px}.sidebar-footer>button{display:none}.sidebar-backdrop{z-index:35;background:#02080ba6;border:0;display:block;position:fixed;inset:0}.app-header{height:60px}.mobile-menu-button{width:46px;height:60px;color:var(--text-muted);background:0 0;border:0;place-items:center;display:grid}.mobile-menu-button svg{width:17px}.context-selectors{padding-left:0}.context-selectors label{min-width:110px}.header-select,.header-icon-button:first-of-type{display:none}.header-actions{gap:5px;padding-right:8px}.user-button{padding:0 4px}.app-content{padding:20px 14px 40px}.ec-page-header__row{flex-wrap:wrap;align-items:flex-start}.ec-page-header__status,.ec-page-header__actions{width:100%;margin:6px 0 0}.ec-page-header__actions{flex-wrap:wrap}.ec-page-header h1{font-size:22px}.stats-grid,.operation-metric-grid{grid-template-columns:1fr 1fr}.system-card-grid{grid-template-columns:1fr}.ec-stat-card{min-height:105px}.ec-stat-card>strong{font-size:22px}.ec-stat-card>em{display:none}.table-toolbar{flex-direction:column;align-items:stretch}.table-toolbar>.ec-search-input{width:100%}.table-filters{flex-wrap:wrap}.table-filters>span{width:100%}.table-filters .ec-select{flex:1;min-width:130px}.inventory-summary{flex-direction:column;justify-content:center;align-items:flex-start;padding:10px 13px}.device-identity-grid{grid-template-columns:1fr}.device-identity-grid>.ec-panel:last-child{grid-column:auto}.tag-summary-strip{grid-template-columns:1fr 1fr}.tag-summary-strip>div{border-bottom:1px solid var(--border-soft);min-height:66px}.tag-summary-strip>div:nth-child(2){border-right:0}.health-chart-wrap{grid-template-columns:1fr 1fr}.operation-alert-strip,.device-active-alert{flex-wrap:wrap;align-items:flex-start}.operation-alert-strip .ec-button,.device-active-alert .ec-button{margin-left:30px}.login-page{display:block}.login-visual{display:none}.login-form-panel{min-height:100vh;padding:32px 22px}.login-brand{margin-bottom:45px}.admin-site-grid{grid-template-columns:1fr}.hierarchy-flow,.platform-service-grid{grid-template-columns:1fr 1fr}.module-placeholder{padding:28px 20px}.module-placeholder ul{grid-template-columns:1fr}}@media (max-width:460px){.stats-grid,.operation-metric-grid{grid-template-columns:1fr}.ec-stat-card{min-height:98px}.health-chart-wrap{grid-template-columns:1fr;padding:0 16px 15px}.health-chart-total{top:95px;left:50%}.tag-summary-strip{grid-template-columns:1fr}.tag-summary-strip>div{border-right:0}.platform-service-grid,.detail-list{grid-template-columns:1fr}.detail-list>div:nth-last-child(-n+2){border-bottom:1px solid var(--border-soft)}}.completion-page{min-width:0}.completion-card-grid,.settings-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:14px;display:grid}.completion-detail-list{gap:12px;display:grid}.completion-detail-list>div{align-items:flex-start;gap:10px;display:flex}.completion-detail-list svg{width:18px;height:18px;color:var(--ec-primary);flex:0 0 18px}.completion-detail-list span,.completion-detail-list strong,.completion-detail-list small{display:block}.completion-detail-list small{color:var(--ec-text-muted);margin-top:3px}.completion-related-list,.completion-link-stack{gap:7px;display:grid}.completion-related-list button,.completion-link-stack button,.completion-entity-link{width:100%;color:var(--ec-text-primary);border:1px solid var(--ec-border-subtle);background:var(--ec-bg-secondary);text-align:left;cursor:pointer;border-radius:8px;align-items:center;gap:10px;padding:10px 11px;display:flex}.completion-related-list button:hover,.completion-link-stack button:hover,.completion-entity-link:hover{color:var(--ec-primary);border-color:var(--ec-primary)}@supports (color:color-mix(in lab, red, red)){.completion-related-list button:hover,.completion-link-stack button:hover,.completion-entity-link:hover{border-color:color-mix(in srgb, var(--ec-primary) 34%, var(--ec-border))}}.completion-related-list svg,.completion-link-stack svg,.completion-entity-link svg{flex:0 0 16px;width:16px}.completion-entity-link span,.completion-entity-link strong,.completion-entity-link small{display:block}.completion-entity-link small{color:var(--ec-text-muted);margin-top:3px}.completion-dialog-actions,.completion-form-actions{justify-content:flex-end;gap:9px;display:flex}.completion-form-page{max-width:1120px}.completion-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.completion-form>label,.settings-fields label{color:var(--ec-text-secondary);gap:7px;font-size:11px;font-weight:700;display:grid}.completion-form .is-wide{grid-column:1/-1}.completion-form textarea.ec-input{resize:vertical;min-height:92px;padding-top:10px}.completion-callout,.completion-separation-banner,.completion-settings-footer{color:var(--ec-text-secondary);border:1px solid var(--ec-primary);align-items:center;gap:11px;padding:12px 14px;display:flex}@supports (color:color-mix(in lab, red, red)){.completion-callout,.completion-separation-banner,.completion-settings-footer{border:1px solid color-mix(in srgb, var(--ec-primary) 24%, var(--ec-border))}}.completion-callout,.completion-separation-banner,.completion-settings-footer{background:var(--ec-primary-soft);border-radius:9px;font-size:11px;line-height:1.5}.completion-callout svg,.completion-separation-banner svg,.completion-settings-footer svg{width:18px;color:var(--ec-primary);flex:0 0 18px}.completion-callout span,.completion-callout strong,.completion-settings-footer span,.completion-settings-footer strong{display:block}.completion-callout strong,.completion-settings-footer strong{color:var(--ec-text-primary)}.completion-settings-footer__actions{gap:8px;margin-left:auto;display:flex}.completion-separation-banner{margin-bottom:14px}.completion-separation-banner a{color:var(--ec-primary);margin-left:auto;font-weight:700;text-decoration:none}.completion-ready-badge,.integration-frontend-ready{color:var(--ec-success);background:var(--ec-success-soft);letter-spacing:.04em;border-radius:999px;align-items:center;gap:6px;padding:6px 9px;font-size:10px;font-weight:800;display:inline-flex}.completion-ready-badge svg{width:14px}.completion-flow{flex-wrap:wrap;align-items:center;gap:7px;margin-bottom:16px;display:flex}.completion-flow span{border:1px solid var(--ec-border);background:var(--ec-bg-secondary);border-radius:6px;padding:6px 8px;font-size:10px;font-weight:700}.completion-flow b{color:var(--ec-text-muted)}.completion-health,.completion-inline-status{align-items:center;gap:9px;margin-bottom:12px;display:flex}.completion-health svg{color:var(--ec-success)}.completion-health span,.completion-health strong,.completion-health small,.completion-inline-status span,.completion-inline-status strong,.completion-inline-status small,.completion-table-subtitle{display:block}.completion-health small,.completion-table-subtitle{color:var(--ec-text-muted);margin-top:2px;font-size:9px}.completion-quality{align-items:center;gap:5px;font-size:10px;font-weight:700;display:inline-flex}.completion-quality svg{width:13px}.completion-quality.is-good{color:var(--ec-success)}.completion-quality.is-warning{color:var(--ec-warning)}.overview-shortcuts{grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin:-2px 0 13px;display:grid}.overview-shortcuts button{color:var(--ec-text-primary);border:1px solid var(--ec-border);background:var(--ec-bg-surface);text-align:left;cursor:pointer;border-radius:8px;grid-template-columns:1fr auto;gap:3px 8px;padding:11px 12px;display:grid}.overview-shortcuts button:hover{border-color:var(--ec-primary);box-shadow:0 5px 18px #17212b0f}.overview-shortcuts span{color:var(--ec-text-muted);text-transform:uppercase;letter-spacing:.08em;grid-column:1;font-size:9px}.overview-shortcuts strong{font-size:11px}.overview-shortcuts svg{width:15px;color:var(--ec-primary);grid-area:1/2/3;align-self:center}.library-category-strip{grid-template-columns:repeat(7,minmax(105px,1fr));gap:8px;margin-bottom:14px;display:grid;overflow-x:auto}.library-category-strip button{min-width:105px;color:var(--ec-text-secondary);border:1px solid var(--ec-border);background:var(--ec-bg-surface);cursor:pointer;border-radius:8px;justify-items:start;gap:6px;padding:11px;display:grid}.library-category-strip button.is-active{color:var(--ec-primary);border-color:var(--ec-primary);background:var(--ec-primary-soft)}.library-category-strip svg{width:17px}.library-category-strip span{min-height:26px;font-size:9px;font-weight:700}.library-category-strip b{font-size:13px}.library-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.library-card{flex-direction:column;min-height:260px;padding:16px;display:flex;position:relative}.library-card__icon{width:38px;height:38px;color:var(--ec-primary);background:var(--ec-primary-soft);border-radius:9px;place-items:center;display:grid}.library-card__icon svg{width:19px}.library-card__meta{color:var(--ec-text-muted);text-transform:uppercase;justify-content:space-between;gap:8px;margin-top:14px;font-size:9px;display:flex}.library-card__meta b{color:var(--ec-primary)}.library-card h2{margin:8px 0 6px;font-size:15px}.library-card p{color:var(--ec-text-secondary);margin:0 0 12px;font-size:11px;line-height:1.55}.library-card footer{gap:7px;margin-top:auto;padding-top:14px;display:flex}.library-detail{gap:14px;display:grid}.events-related-filters{grid-template-columns:repeat(6,minmax(130px,1fr));gap:7px;margin:-4px 0 12px;display:grid;overflow-x:auto}.event-timeline li.is-clickable{cursor:pointer}.event-timeline li.is-clickable:hover{background:var(--ec-bg-hover)}.event-timeline .table-link{margin-top:6px}.settings-grid{align-items:start}.settings-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.settings-fields--three{grid-template-columns:repeat(3,minmax(0,1fr))}.settings-checkbox{grid-column:1/-1;align-items:center;display:flex!important}.settings-checkbox input{width:16px;height:16px;accent-color:var(--ec-primary)}.settings-checkbox small{color:var(--ec-text-muted);margin-top:2px;display:block}.settings-panel-icon{float:right;color:var(--ec-primary)}.theme-choice-grid{grid-template-columns:repeat(3,1fr);gap:9px;display:grid}.theme-choice-grid button{color:var(--ec-text-primary);border:1px solid var(--ec-border);text-align:left;cursor:pointer;background:0 0;border-radius:8px;gap:5px;padding:9px;display:grid}.theme-choice-grid button[aria-pressed=true]{border-color:var(--ec-primary);box-shadow:inset 0 0 0 1px var(--ec-primary)}.theme-choice-grid small{color:var(--ec-text-muted);font-size:9px}.theme-preview{color:#18aaa6;background:#f4f6f8;border-radius:6px;place-items:center;height:52px;display:grid}.theme-preview.is-dark{background:#17212b}.theme-preview.is-system{background:linear-gradient(110deg,#f4f6f8 50%,#17212b 50%)}.completion-settings-footer{justify-content:flex-start;margin-top:14px}.completion-settings-footer .ec-button{margin-left:auto}.network-link-hero{border:1px solid var(--ec-border);background:var(--ec-bg-surface);border-radius:10px;grid-template-columns:minmax(190px,1fr) auto 190px auto minmax(190px,1fr);align-items:center;gap:14px;margin-bottom:14px;padding:18px;display:grid}.network-link-hero>button,.network-link-hero>div{min-height:72px;color:var(--ec-text-primary);border:1px solid var(--ec-border-subtle);background:var(--ec-bg-secondary);border-radius:8px;justify-content:center;align-items:center;gap:10px;padding:12px;display:flex}.network-link-hero>button{cursor:pointer}.network-link-hero span,.network-link-hero strong,.network-link-hero small{display:block}.network-link-hero small{color:var(--ec-text-muted);margin-top:3px}.global-search-popover>div>button.is-active{background:var(--ec-primary-soft);color:var(--ec-primary)}.global-search-popover>div>button>span{flex:1;min-width:0}.global-search-popover>div>button small b{color:var(--ec-primary)}.global-search-popover>div>button>svg:last-child{color:var(--ec-text-muted);margin-left:auto}.global-search-empty{color:var(--ec-text-muted);justify-items:center;gap:4px;padding:28px 12px;display:grid}.global-search-empty svg{width:22px}.notification-channel.is-clickable{cursor:pointer}.notification-channel.is-clickable:hover{border-color:var(--ec-primary)}.integration-service-card footer small{align-items:center;gap:5px;display:flex}@media (max-width:1100px){.library-grid,.overview-shortcuts{grid-template-columns:repeat(2,minmax(0,1fr))}.events-related-filters{grid-template-columns:repeat(3,minmax(150px,1fr))}}@media (max-width:760px){.completion-card-grid,.settings-grid,.completion-form,.library-grid{grid-template-columns:1fr}.completion-form .is-wide{grid-column:1}.settings-fields,.settings-fields--three,.overview-shortcuts,.network-link-hero{grid-template-columns:1fr}.network-link-hero>svg{justify-self:center;transform:rotate(90deg)}}.app-boundary{display:contents}.service-status-indicator{background:var(--ec-surface-subtle);border:1px solid var(--ec-border-subtle);border-radius:var(--ec-radius-md);color:var(--ec-text);align-items:center;gap:8px;min-height:38px;padding:5px 10px;display:flex}.service-status-indicator>svg{color:var(--ec-warning);width:16px;height:16px}.service-status-indicator>span{flex-direction:column;align-items:flex-start;line-height:1.15;display:flex}.service-status-indicator strong{font-size:11px}.service-status-indicator small{color:var(--ec-text-muted);text-transform:uppercase;font-size:9px}.integration-diagnostics{gap:18px;display:grid}.integration-overall-status{background:var(--ec-surface);border:1px solid var(--ec-border);border-radius:var(--ec-radius-md);align-items:center;gap:9px;min-width:220px;padding:8px 12px;display:flex}.integration-overall-status>i{background:var(--ec-success);box-shadow:0 0 0 4px var(--ec-success);border-radius:50%}@supports (color:color-mix(in lab, red, red)){.integration-overall-status>i{box-shadow:0 0 0 4px color-mix(in srgb, var(--ec-success) 13%, transparent)}}.integration-overall-status>i{width:8px;height:8px}.integration-overall-status.is-degraded>i{background:var(--ec-warning)}.integration-overall-status.is-unavailable>i{background:var(--ec-danger)}.integration-overall-status>span{flex-direction:column;display:flex}.integration-overall-status strong{font-size:12px}.integration-overall-status small{color:var(--ec-text-muted);font-size:10px}.integration-diagnostics-nav{background:var(--ec-surface);border:1px solid var(--ec-border-subtle);border-radius:var(--ec-radius-lg);align-items:center;gap:4px;width:fit-content;padding:5px;display:flex}.integration-diagnostics-nav button{border-radius:var(--ec-radius-md);color:var(--ec-text-muted);align-items:center;gap:7px;padding:8px 12px;font-size:12px;font-weight:650;display:flex}.integration-diagnostics-nav button:hover,.integration-diagnostics-nav button.active{background:var(--ec-primary-soft);color:var(--ec-primary)}.integration-diagnostics-nav svg{width:15px;height:15px}.integration-summary{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.integration-summary article{background:var(--ec-surface);border:1px solid var(--ec-border-subtle);border-radius:var(--ec-radius-lg);grid-template-columns:32px auto;align-items:center;gap:2px 10px;padding:13px 15px;display:grid}.integration-summary svg{color:var(--ec-success);grid-row:span 2;width:22px;height:22px}.integration-summary article.is-warning svg{color:var(--ec-warning)}.integration-summary article.is-danger svg{color:var(--ec-danger)}.integration-summary strong{font-size:22px;line-height:1}.integration-summary span{color:var(--ec-text-muted);font-size:11px}.integration-service-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.integration-service-card{background:var(--ec-surface);border:1px solid var(--ec-border-subtle);border-radius:var(--ec-radius-lg);box-shadow:var(--ec-shadow-sm);min-width:0;overflow:hidden}.integration-service-card>header{border-bottom:1px solid var(--ec-border-subtle);grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:9px;padding:12px;display:grid}.integration-service-card>header>span{background:var(--ec-primary-soft);color:var(--ec-primary);border-radius:8px;justify-content:center;align-items:center;height:32px;display:flex}.integration-service-card>header svg{width:17px;height:17px}.integration-service-card h2{margin:0;font-size:13px}.integration-service-card header small{color:var(--ec-text-muted);text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:9px;display:block;overflow:hidden}.integration-service-card header b{background:var(--ec-success-soft);color:var(--ec-success);text-transform:uppercase;border-radius:999px;padding:4px 7px;font-size:9px}.integration-service-card.is-degraded header b{background:var(--ec-warning-soft);color:var(--ec-warning)}.integration-service-card.is-unavailable header b{background:var(--ec-danger-soft);color:var(--ec-danger)}.integration-service-card dl{gap:7px;margin:0;padding:11px 12px;display:grid}.integration-service-card dl>div{justify-content:space-between;align-items:center;display:flex}.integration-service-card dt{color:var(--ec-text-muted);font-size:10px}.integration-service-card dd{text-align:right;margin:0;font-size:10px;font-weight:650}.integration-service-card>footer{background:var(--ec-surface-subtle);flex-direction:column;gap:3px;min-height:47px;padding:8px 12px;display:flex}.integration-service-card>footer span{color:var(--ec-text-muted);text-overflow:ellipsis;white-space:nowrap;font-size:9px;overflow:hidden}.integration-service-card>footer small{color:var(--ec-text);font-size:9px;font-weight:700}.integration-contract-table{overflow:auto}.integration-contract-table table{border-collapse:collapse;width:100%;font-size:10px}.integration-contract-table th,.integration-contract-table td{border-bottom:1px solid var(--ec-border-subtle);text-align:left;vertical-align:top;padding:10px 8px}.integration-contract-table th{color:var(--ec-text-muted);text-transform:uppercase;font-size:9px}.integration-contract-table code{color:var(--ec-primary);font-size:9px}.integration-contract-pending{background:var(--ec-warning-soft);color:var(--ec-warning);white-space:nowrap;border-radius:999px;padding:4px 6px;font-size:8px;font-weight:750;display:inline-flex}.integration-contract-footnote,.integration-security-note{background:var(--ec-primary-soft);border-radius:var(--ec-radius-md);color:var(--ec-text-muted);align-items:center;gap:8px;margin-top:12px;padding:10px;font-size:10px;display:flex}.integration-contract-footnote svg,.integration-security-note svg{color:var(--ec-primary);min-width:17px;height:17px}.integration-batch-layout{grid-template-columns:2fr 1fr;gap:12px;display:grid}.integration-batch-flow{grid-template-columns:1fr auto 1fr auto 1fr;align-items:center;gap:12px;display:grid}.integration-batch-flow article{background:var(--ec-surface-subtle);border:1px solid var(--ec-border-subtle);border-radius:var(--ec-radius-md);grid-template-columns:32px auto;align-items:center;gap:2px 9px;padding:15px;display:grid}.integration-batch-flow article svg{color:var(--ec-primary);grid-row:span 2;width:24px;height:24px}.integration-batch-flow article strong{font-size:22px}.integration-batch-flow article span{color:var(--ec-text-muted);font-size:10px}.integration-batch-bars{gap:10px;margin-top:18px;display:grid}.integration-batch-bars>div{grid-template-columns:55px minmax(0,1fr) 70px;align-items:center;gap:8px;font-size:10px;display:grid}.integration-batch-bars i,.integration-performance article>div i{background:var(--ec-primary);border-radius:999px;height:7px;display:block}.integration-batch-summary{gap:0;margin:0;display:grid}.integration-batch-summary>div{border-bottom:1px solid var(--ec-border-subtle);justify-content:space-between;padding:10px 0;display:flex}.integration-batch-summary dt{color:var(--ec-text-muted);font-size:11px}.integration-batch-summary dd{margin:0;font-size:11px;font-weight:700}.integration-batch-summary+p{color:var(--ec-text-muted);margin:12px 0 0;font-size:10px}.integration-performance{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.integration-performance article{background:var(--ec-surface-subtle);border:1px solid var(--ec-border-subtle);border-radius:var(--ec-radius-md);padding:13px}.integration-performance article>header,.integration-performance article>footer{justify-content:space-between;align-items:center;gap:8px;display:flex}.integration-performance article>header div{flex-direction:column;gap:3px;display:flex}.integration-performance article>header code{color:var(--ec-text-muted);font-size:9px}.integration-performance article>header b{color:var(--ec-primary);font-size:10px}.integration-performance article>div{background:var(--ec-border-subtle);border-radius:999px;height:7px;margin:12px 0 9px}.integration-performance article>footer{color:var(--ec-text-muted);font-size:9px}.integration-error-detail{grid-template-columns:28px minmax(0,1fr) auto;align-items:flex-start;gap:12px;display:grid}.integration-error-detail>svg{color:var(--ec-danger)}.integration-error-detail>div{gap:5px;display:grid}.integration-error-detail pre{background:var(--ec-surface-inverse,#17212b);border-radius:var(--ec-radius-md);color:#dfe8ee;max-height:220px;margin:5px 0;padding:11px;font-size:10px;line-height:1.45;overflow:auto}.integration-security-note{background:var(--ec-surface-subtle);border:1px solid var(--ec-border-subtle);margin:0}.integration-security-note>span{flex-direction:column;flex:1;display:flex}.ec-inline-error,.ec-panel-error{background:var(--ec-danger-soft);border:1px solid var(--ec-danger);align-items:center}@supports (color:color-mix(in lab, red, red)){.ec-inline-error,.ec-panel-error{border:1px solid color-mix(in srgb, var(--ec-danger) 24%, var(--ec-border))}}.ec-inline-error,.ec-panel-error{border-radius:var(--ec-radius-md);color:var(--ec-text);gap:10px;padding:10px 12px;display:flex}.ec-inline-error>svg,.ec-panel-error>svg{color:var(--ec-danger);min-width:18px;height:18px}.ec-inline-error>span,.ec-panel-error>div{flex-direction:column;flex:1;display:flex}.ec-inline-error small,.ec-panel-error span{color:var(--ec-text-muted);font-size:10px}.ec-inline-error button{color:var(--ec-primary);font-size:10px;font-weight:700}.ec-page-error{background:var(--ec-surface);border:1px solid var(--ec-border);border-radius:var(--ec-radius-lg);align-items:flex-start;gap:14px;margin:24px;padding:24px;display:flex}.ec-page-error>span{background:var(--ec-danger-soft);color:var(--ec-danger);border-radius:10px;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.ec-page-error h1{margin:3px 0 5px;font-size:20px}.ec-page-error p{color:var(--ec-text-muted);margin:0}.ec-chunk-error{background:var(--ec-surface);border:1px solid var(--ec-danger);border-radius:var(--ec-radius-lg);box-shadow:var(--ec-shadow-lg);z-index:1000;align-items:center;gap:10px;width:max-content;max-width:min(680px,100vw - 32px);padding:12px;display:flex;position:fixed;bottom:18px;left:50%;transform:translate(-50%)}.ec-chunk-error>svg{color:var(--ec-danger)}.ec-chunk-error>div{flex-direction:column;flex:1;display:flex}.ec-chunk-error span{color:var(--ec-text-muted);font-size:10px}.ec-operational-partial-notice{background:var(--ec-warning-soft);border:1px solid var(--ec-warning);align-items:center}@supports (color:color-mix(in lab, red, red)){.ec-operational-partial-notice{border:1px solid color-mix(in srgb, var(--ec-warning) 28%, var(--ec-border))}}.ec-operational-partial-notice{border-radius:var(--ec-radius-md);gap:10px;padding:9px 12px;display:flex}.ec-operational-partial-notice>svg{color:var(--ec-warning)}.ec-operational-partial-notice>div{flex-direction:column;display:flex}.ec-operational-partial-notice strong{font-size:11px}.ec-operational-partial-notice span{color:var(--ec-text-muted);font-size:10px}.dashboard-panel__stale.is-visible{color:var(--ec-warning);text-transform:uppercase;font-size:9px;font-weight:750}.dashboard-panel-stale-notice{background:var(--ec-warning-soft);border-bottom:1px solid var(--ec-warning)}@supports (color:color-mix(in lab, red, red)){.dashboard-panel-stale-notice{border-bottom:1px solid color-mix(in srgb, var(--ec-warning) 20%, var(--ec-border))}}.dashboard-panel-stale-notice{color:var(--ec-warning);text-overflow:ellipsis;white-space:nowrap;z-index:2;max-width:calc(100% - 16px);padding:5px 8px;font-size:9px;font-weight:650;position:absolute;top:8px;right:8px;overflow:hidden}@media (max-width:1100px){.integration-service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:760px){.service-status-indicator{display:none}.integration-summary,.integration-service-grid,.integration-performance,.integration-batch-layout{grid-template-columns:1fr}.integration-diagnostics-nav{width:100%;overflow-x:auto}.integration-diagnostics-nav button{white-space:nowrap}.integration-batch-flow{grid-template-columns:1fr}.integration-batch-flow>b{display:none}}.network-empty-scope{min-height:220px;color:var(--text-muted);text-align:center;place-content:center;justify-items:center;gap:10px;display:grid}.network-empty-scope>svg{width:30px;height:30px;color:var(--primary)}.network-empty-scope strong{color:var(--text)}.network-filterbar{border:1px solid var(--ec-border);background:var(--ec-bg-surface);border-radius:8px;grid-template-columns:minmax(260px,1fr) repeat(3,minmax(150px,.34fr));gap:8px;margin-bottom:11px;padding:10px;display:grid}.network-filterbar.is-compact{grid-template-columns:minmax(300px,1fr) minmax(190px,.3fr)}.network-search{min-height:34px;color:var(--ec-text-muted);border:1px solid var(--ec-border);background:var(--ec-bg-secondary);border-radius:6px;align-items:center;gap:8px;padding:0 10px;display:flex}.network-search svg{width:14px}.network-search input{width:100%;min-width:0;color:var(--ec-text-primary);background:0 0;border:0;outline:0;font-size:10px}.network-table-card{border:1px solid var(--ec-border);background:var(--ec-bg-surface);border-radius:8px;max-width:100%;overflow-x:auto}.network-table{border-collapse:collapse;width:100%;min-width:1080px;color:var(--ec-text-secondary);text-align:left;font-size:9px}.network-table th{height:37px;color:var(--ec-text-muted);border-bottom:1px solid var(--ec-border);background:var(--ec-bg-secondary);text-transform:uppercase;letter-spacing:.035em;white-space:nowrap;padding:0 10px;font-size:8px;font-weight:700}.network-table td{border-bottom:1px solid var(--ec-border-subtle);vertical-align:middle;white-space:nowrap;height:52px;padding:7px 10px}.network-table tbody tr:last-child td{border-bottom:0}.network-table tbody tr:hover td{background:var(--ec-bg-hover);cursor:pointer}.network-table code{font-family:var(--font-geist-mono);font-size:9px}.network-table td>small{margin-top:3px;font-size:8px;display:block}.network-name-cell{align-items:center;gap:9px;min-width:190px;display:flex}.network-name-cell>i{width:29px;height:29px;color:var(--ec-primary);border:1px solid var(--ec-primary);place-items:center;display:grid}@supports (color:color-mix(in lab, red, red)){.network-name-cell>i{border:1px solid color-mix(in srgb, var(--ec-primary) 20%, var(--ec-border))}}.network-name-cell>i{background:var(--ec-primary-soft);border-radius:6px}.network-name-cell>i svg{width:14px}.network-name-cell strong,.network-name-cell small{display:block}.network-name-cell strong{color:var(--ec-text-primary);font-size:10px}.network-name-cell small{color:var(--ec-text-muted);margin-top:3px;font-size:8px}.network-alert-count{min-width:22px;height:21px;color:var(--ec-danger);background:var(--ec-danger-soft);border-radius:999px;place-items:center;font-weight:700;display:inline-grid}.network-list-footer{min-height:38px;color:var(--ec-text-muted);justify-content:space-between;align-items:center;padding:0 4px;font-size:9px;display:flex}.network-detail-identity{border:1px solid var(--ec-border);background:var(--ec-bg-surface);border-radius:8px;grid-template-columns:55px repeat(4,minmax(0,1fr));gap:0;margin-bottom:12px;display:grid;overflow:hidden}.network-detail-identity>*{border-right:1px solid var(--ec-border-subtle);flex-direction:column;justify-content:center;min-height:72px;padding:11px 15px;display:flex}.network-detail-icon{color:var(--ec-primary);background:var(--ec-primary-soft);align-items:center;padding:0!important}.network-detail-icon svg{width:22px}.network-detail-identity small,.network-detail-identity strong{display:block}.network-detail-identity small{color:var(--ec-text-muted);text-transform:uppercase;letter-spacing:.04em;font-size:8px}.network-detail-identity strong{margin-top:6px;font-size:10px}.network-metric-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;display:grid}.network-metric-grid article{border:1px solid var(--ec-border-subtle);background:var(--ec-bg-secondary);border-radius:7px;align-items:flex-start;gap:8px;min-width:0;min-height:88px;padding:11px;display:flex}.network-metric-grid article.is-stale{border-color:var(--ec-warning)}@supports (color:color-mix(in lab, red, red)){.network-metric-grid article.is-stale{border-color:color-mix(in srgb, var(--ec-warning) 32%, var(--ec-border))}}.network-metric-grid article.is-stale{background:var(--ec-warning-soft)}.network-metric-grid article>span{width:23px;height:23px;color:var(--ec-primary);background:var(--ec-primary-soft);border-radius:5px;place-items:center;display:grid}.network-metric-grid svg{width:12px}.network-metric-grid small,.network-metric-grid strong,.network-metric-grid em{display:block}.network-metric-grid small{color:var(--ec-text-muted);font-size:8px}.network-metric-grid strong{margin-top:5px;font-size:14px}.network-metric-grid em{color:var(--ec-text-muted);margin-top:6px;font-size:7px;font-style:normal;line-height:1.25}.network-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:12px 0;display:grid}.network-compact-table{max-width:100%;overflow-x:auto}.network-compact-table table{border-collapse:collapse;text-align:left;width:100%;font-size:9px}.network-compact-table th{height:31px;color:var(--ec-text-muted);border-bottom:1px solid var(--ec-border);font-size:8px}.network-compact-table td{border-bottom:1px solid var(--ec-border-subtle);height:39px;padding-right:8px}.network-compact-table tbody tr:hover td{background:var(--ec-bg-hover);cursor:pointer}.network-related-alerts{display:grid}.network-related-alerts>button{border:0;border-bottom:1px solid var(--ec-border-subtle);min-height:54px;color:var(--ec-text-primary);text-align:left;background:0 0;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:8px;padding:7px 1px;display:grid}.network-related-alerts>button:hover{background:var(--ec-bg-hover)}.network-related-alerts>button>span{border-radius:6px;place-items:center;width:27px;height:27px;display:grid}.network-related-alerts>button>span.is-critical{color:var(--ec-danger);background:var(--ec-danger-soft)}.network-related-alerts>button>span.is-warning{color:var(--ec-warning);background:var(--ec-warning-soft)}.network-related-alerts>button>span.is-info{color:var(--ec-info);background:var(--ec-info-soft)}.network-related-alerts svg{width:13px}.network-related-alerts strong,.network-related-alerts small{display:block}.network-related-alerts strong{font-size:9px}.network-related-alerts small{color:var(--ec-text-muted);margin-top:3px;font-size:8px}.network-related-alerts em{color:var(--ec-text-muted);font-size:8px;font-style:normal}.network-event-list{margin:0;padding:0;list-style:none;display:grid}.network-event-list li{border-bottom:1px solid var(--ec-border-subtle);grid-template-columns:110px 8px minmax(0,1fr);align-items:center;gap:9px;min-height:44px;display:grid}.network-event-list time{color:var(--ec-text-muted);font-size:8px}.network-event-list li>span{background:var(--ec-info);border-radius:50%;width:7px;height:7px}.network-event-list li>span.is-warning{background:var(--ec-warning)}.network-event-list li>span.is-critical{background:var(--ec-danger)}.network-event-list strong,.network-event-list small{display:block}.network-event-list strong{font-size:9px}.network-event-list small{color:var(--ec-text-muted);margin-top:3px;font-size:8px}.network-event-list li.is-empty{color:var(--ec-text-muted);justify-content:center;font-size:9px;display:flex}.network-trends-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:12px 0;display:grid}.network-domain-links,.network-binding-list{margin:0;display:grid}.network-domain-links>div,.network-binding-list>div{border-bottom:1px solid var(--ec-border-subtle);grid-template-columns:minmax(130px,.45fr) 1fr;align-items:center;gap:10px;min-height:36px;display:grid}.network-domain-links dt{color:var(--ec-text-muted);align-items:center;gap:7px;font-size:8px;display:flex}.network-domain-links dt svg{width:12px}.network-domain-links dd,.network-binding-list dd{color:var(--ec-text-primary);font-family:var(--font-geist-mono);overflow-wrap:anywhere;margin:0;font-size:8px}.network-binding-list dt{color:var(--ec-text-muted);font-size:8px}.network-technical-context{display:grid}.network-technical-context p{border-bottom:1px solid var(--ec-border-subtle);grid-template-columns:130px 1fr;gap:10px;min-height:40px;margin:0;padding:8px 0;font-size:8px;line-height:1.4;display:grid}.network-technical-context span{color:var(--ec-text-muted)}.network-no-data{min-height:74px;color:var(--ec-text-muted);text-align:center;place-items:center;font-size:9px;display:grid}.network-interface-identity{border:1px solid var(--ec-border);background:var(--ec-bg-surface);border-radius:8px;grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:10px;display:grid;overflow:hidden}.network-interface-identity article{border-right:1px solid var(--ec-border-subtle);min-height:78px;padding:13px 15px}.network-interface-identity small,.network-interface-identity strong,.network-interface-identity span{display:block}.network-interface-identity small{color:var(--ec-text-muted);text-transform:uppercase;font-size:8px}.network-interface-identity strong{margin-top:6px;font-size:15px}.network-interface-identity span{color:var(--ec-text-muted);margin-top:6px;font-size:8px}.network-interface-metrics{grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;display:grid}.network-interface-metrics article{border:1px solid var(--ec-border);background:var(--ec-bg-surface);border-radius:7px;min-height:79px;padding:11px}.network-interface-metrics article>span{float:right;color:var(--ec-primary)}.network-interface-metrics svg{width:14px}.network-interface-metrics small,.network-interface-metrics strong{display:block}.network-interface-metrics small{color:var(--ec-text-muted);font-size:8px}.network-interface-metrics strong{margin-top:9px;font-size:14px}.network-link-summary{grid-template-columns:36px minmax(0,1fr) auto;align-items:center;gap:10px;min-height:74px;display:grid}.network-link-summary>svg{width:20px;color:var(--ec-primary)}.network-link-summary strong,.network-link-summary span{display:block}.network-link-summary strong{font-size:10px}.network-link-summary span{color:var(--ec-text-muted);margin-top:4px;font-size:8px}.network-link-strip{border:1px solid var(--ec-border);background:var(--ec-bg-surface);border-radius:8px;align-items:center;gap:11px;min-height:66px;margin-bottom:11px;padding:10px 14px;display:flex}.network-link-strip>span{width:34px;height:34px;color:var(--ec-primary);background:var(--ec-primary-soft);border-radius:7px;place-items:center;display:grid}.network-link-strip svg{width:17px}.network-link-strip strong,.network-link-strip small{display:block}.network-link-strip strong{font-size:11px}.network-link-strip small{color:var(--ec-text-muted);margin-top:4px;font-size:8px}.network-health-summary{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin-bottom:12px;display:grid}.network-health-summary article{border:1px solid var(--ec-border);background:var(--ec-bg-surface);border-radius:8px;min-height:89px;padding:13px;position:relative}.network-health-summary article>span{color:var(--ec-primary);position:absolute;top:12px;right:12px}.network-health-summary article.is-warning>span{color:var(--ec-warning)}.network-health-summary article.is-danger>span{color:var(--ec-danger)}.network-health-summary svg{width:16px}.network-health-summary small,.network-health-summary strong{display:block}.network-health-summary small{max-width:75%;color:var(--ec-text-muted);text-transform:uppercase;font-size:8px;line-height:1.3}.network-health-summary strong{margin-top:12px;font-size:20px}.network-health-charts{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:12px;display:grid}.network-offline-list article{border-bottom:1px solid var(--ec-border-subtle);grid-template-columns:32px minmax(0,1fr) auto;align-items:center;gap:9px;min-height:54px;display:grid}.network-offline-list article>span{width:28px;height:28px;color:var(--ec-danger);background:var(--ec-danger-soft);border-radius:6px;place-items:center;display:grid}.network-offline-list svg{width:14px}.network-offline-list strong,.network-offline-list small{display:block}.network-offline-list strong{font-size:10px}.network-offline-list small{color:var(--ec-text-muted);margin-top:4px;font-size:8px}.network-offline-list em{color:var(--ec-danger);font-size:9px;font-style:normal;font-weight:700}@media (max-width:1180px){.network-filterbar{grid-template-columns:repeat(2,minmax(0,1fr))}.network-metric-grid,.network-interface-metrics{grid-template-columns:repeat(4,1fr)}.network-health-summary{grid-template-columns:repeat(3,1fr)}}@media (max-width:760px){.network-filterbar,.network-filterbar.is-compact{grid-template-columns:1fr}.network-detail-identity{grid-template-columns:55px 1fr}.network-detail-identity>*{border-bottom:1px solid var(--ec-border-subtle)}.network-metric-grid{grid-template-columns:repeat(2,1fr)}.network-detail-grid,.network-trends-grid,.network-health-charts{grid-template-columns:1fr}.network-interface-identity,.network-interface-metrics,.network-health-summary{grid-template-columns:repeat(2,1fr)}}.videowall-list-page,.videowall-new-page,.videowall-control-page,.videowall-editor-page{width:min(100%,1720px);margin:0 auto}.videowall-page-status,.videowall-default,.videowall-window-state,.videowall-data-state{color:var(--text-secondary);white-space:nowrap;align-items:center;gap:6px;font-size:11px;font-weight:650;display:inline-flex}.videowall-page-status i,.videowall-data-state i{background:var(--success);width:7px;height:7px;box-shadow:0 0 0 3px var(--success-soft);border-radius:50%}.videowall-data-state.is-disconnected,.videowall-data-state.is-reconnecting,.videowall-window-state.is-closed{color:var(--warning)}.videowall-data-state.is-disconnected i,.videowall-data-state.is-reconnecting i{background:var(--warning);box-shadow:0 0 0 3px var(--warning-soft)}.videowall-capacity-note,.videowall-popup-note{border:1px solid var(--info);align-items:center;gap:12px;margin-bottom:14px;padding:12px 14px;display:flex}@supports (color:color-mix(in lab, red, red)){.videowall-capacity-note,.videowall-popup-note{border:1px solid color-mix(in srgb, var(--info) 24%, var(--border))}}.videowall-capacity-note,.videowall-popup-note{background:var(--info-soft);color:var(--info);border-radius:8px}.videowall-capacity-note>svg,.videowall-popup-note>svg{flex:none;width:19px}.videowall-capacity-note div,.videowall-popup-note div{gap:2px;display:grid}.videowall-capacity-note strong,.videowall-popup-note strong{font-size:12px}.videowall-capacity-note span,.videowall-popup-note span{color:var(--text-secondary);font-size:11px}.videowall-list-panel,.videowall-control-panel,.videowall-new-shell{border:1px solid var(--border);background:var(--surface);border-radius:10px;overflow:hidden;box-shadow:0 8px 28px #17212b0d}.videowall-list-panel>header,.videowall-control-panel>header{border-bottom:1px solid var(--border-soft);justify-content:space-between;align-items:center;gap:14px;min-height:55px;padding:0 16px;display:flex}.videowall-list-panel>header strong,.videowall-control-panel>header strong{font-size:13px}.videowall-list-panel>header span,.videowall-control-panel>header>span{color:var(--text-muted);font-size:10px}.videowall-name-cell,.videowall-control-panel>header>div,.videowall-control-output{align-items:center;gap:10px;display:flex}.videowall-name-cell>svg,.videowall-control-panel>header svg{width:17px;color:var(--primary)}.videowall-name-cell>span,.videowall-control-output>span{gap:2px;min-width:0;display:grid}.videowall-name-cell strong,.videowall-control-output strong{color:var(--text);font-size:12px}.videowall-name-cell small,.videowall-control-output small{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.videowall-default{color:var(--warning)}.videowall-default svg{fill:currentColor;width:13px}.videowall-table-actions,.videowall-control-actions{align-items:center;gap:3px;display:flex}.videowall-table-actions a,.videowall-table-actions button,.videowall-control-actions button,.videowall-output-toolbar>button{width:30px;height:30px;color:var(--text-muted);background:0 0;border:0;border-radius:5px;place-items:center;display:grid}.videowall-table-actions a:hover,.videowall-table-actions button:hover,.videowall-control-actions button:hover,.videowall-output-toolbar>button:hover{background:var(--surface-hover);color:var(--primary)}.videowall-table-actions svg,.videowall-control-actions svg,.videowall-output-toolbar>button svg{width:15px}.videowall-new-shell{max-width:1080px;margin:0 auto}.videowall-new-shell>section{border-bottom:1px solid var(--border-soft);padding:24px 28px 28px 74px;position:relative}.videowall-new-shell h2{margin:0 0 18px;font-size:15px}.videowall-form-icon{background:var(--primary-soft);width:34px;height:34px;color:var(--primary);border-radius:7px;place-items:center;display:grid;position:absolute;top:22px;left:24px}.videowall-form-icon svg{width:17px}.videowall-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;display:grid}.videowall-form-grid .videowall-field,.videowall-inspector-fields>label,.videowall-inspector-fields>.videowall-field,.videowall-output-toolbar .videowall-field{color:var(--text-secondary);gap:6px;font-size:11px;font-weight:600;display:grid}.videowall-form-grid .videowall-field.is-wide{grid-column:1/-1}.videowall-template-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;display:grid}.videowall-template-grid button{border:1px solid var(--border);background:var(--surface);min-height:108px;color:var(--text-secondary);text-align:left;border-radius:7px;align-content:center;gap:6px;padding:14px;display:grid}.videowall-template-grid button:hover,.videowall-template-grid button.active{border-color:var(--primary);background:var(--primary-soft)}.videowall-template-grid strong{color:var(--text);font-size:12px}.videowall-template-grid span,.videowall-template-grid small{font-size:10px;line-height:1.4}.videowall-template-grid small{color:var(--text-muted)}.videowall-new-shell>footer{justify-content:flex-end;gap:8px;padding:16px 28px;display:flex}.videowall-editor-shell{border:1px solid var(--border);background:var(--surface);border-radius:9px;grid-template-columns:236px minmax(0,1fr) 286px;min-height:720px;display:grid;overflow:hidden;box-shadow:0 10px 34px #17212b0f}.videowall-output-list,.videowall-region-inspector{background:var(--surface);min-width:0}.videowall-output-list{border-right:1px solid var(--border);flex-direction:column;display:flex}.videowall-output-list>header,.videowall-region-inspector>header{border-bottom:1px solid var(--border-soft);justify-content:space-between;align-items:center;gap:9px;min-height:54px;padding:0 13px;display:flex}.videowall-output-list>header span,.videowall-region-inspector>header{color:var(--text);font-size:11px;font-weight:700}.videowall-output-list>header span{align-items:center;gap:7px;display:flex}.videowall-output-list>header svg,.videowall-region-inspector>header svg{width:15px;color:var(--primary)}.videowall-output-list>header small{color:var(--text-muted);font:600 10px var(--font-geist-mono)}.videowall-output-list>div{flex:1;padding:8px;overflow:auto}.videowall-output-list>div>button{width:100%;min-height:53px;color:var(--text-secondary);text-align:left;background:0 0;border:1px solid #0000;border-radius:6px;align-items:center;gap:9px;margin-bottom:4px;padding:7px 8px;display:flex}.videowall-output-list>div>button:hover,.videowall-output-list>div>button.active{border-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.videowall-output-list>div>button:hover,.videowall-output-list>div>button.active{border-color:color-mix(in srgb, var(--primary) 28%, var(--border))}}.videowall-output-list>div>button:hover,.videowall-output-list>div>button.active{background:var(--primary-soft)}.videowall-output-list>div>button>span{background:var(--background-subtle);width:29px;height:29px;font:700 10px var(--font-geist-mono);border-radius:5px;flex:none;place-items:center;display:grid}.videowall-output-list>div>button>div{gap:2px;min-width:0;display:grid}.videowall-output-list>div strong{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.videowall-output-list>div small,.videowall-output-list>p{color:var(--text-muted);font-size:9px}.videowall-add-output{border:1px dashed var(--border);min-height:42px;color:var(--primary);background:0 0;border-radius:6px;justify-content:center;align-items:center;gap:7px;margin:8px;font-size:10px;font-weight:650;display:flex}.videowall-add-output svg{width:14px}.videowall-output-list>p{margin:0;padding:0 10px 10px;line-height:1.4}.videowall-editor-center{background:var(--background-subtle);flex-direction:column;min-width:0;padding:12px;display:flex}@supports (color:color-mix(in lab, red, red)){.videowall-editor-center{background:color-mix(in srgb, var(--background-subtle) 78%, var(--surface))}}.videowall-output-toolbar{border:1px solid var(--border);background:var(--surface);border-radius:7px;align-items:flex-end;gap:8px;margin-bottom:10px;padding:9px;display:flex}.videowall-output-toolbar .videowall-field:first-child{flex:1}.videowall-output-toolbar .videowall-field:nth-child(2){width:120px}.videowall-editor-preview{border:1px solid var(--border);background:#101820;border-radius:8px;flex:1;min-height:0;position:relative;overflow:hidden}.videowall-region-selector{z-index:20;color:#fff;width:26px;height:26px;font:700 10px var(--font-geist-mono);background:#0f1720c2;border:1px solid #ffffffa6;border-radius:50%;place-items:center;display:grid;position:absolute;transform:translate(-50%,-50%)}.videowall-region-selector.active{background:#168f89;border-color:#54e4d7;box-shadow:0 0 0 3px #54e4d738}.videowall-region-selector.region-1{top:18%;left:18%}.videowall-region-selector.region-2{top:18%;left:62%}.videowall-region-selector.region-3{top:60%;left:18%}.videowall-region-selector.region-4{top:60%;left:62%}.videowall-region-selector.region-5{top:18%;left:86%}.videowall-region-selector.region-6{top:60%;left:86%}.videowall-region-inspector{border-left:1px solid var(--border)}.videowall-region-inspector>header{justify-content:flex-start}.videowall-region-inspector>header div{gap:2px;display:grid}.videowall-region-inspector>header small{color:var(--text-muted);font-size:9px;font-weight:500}.videowall-inspector-fields{gap:14px;padding:14px;display:grid}.videowall-content-source{border:1px solid var(--border);background:var(--background-subtle);color:var(--text);text-align:left;border-radius:6px;gap:2px;padding:10px;display:grid}.videowall-content-source strong{font-size:11px}.videowall-content-source small{color:var(--text-muted);font-size:9px}.videowall-toggle{align-items:center;gap:8px!important;display:flex!important}.videowall-toggle input{accent-color:var(--primary)}.videowall-playlist{gap:5px;display:grid}.videowall-playlist>span{color:var(--text-secondary);font-size:10px;font-weight:650}.videowall-playlist>div{background:var(--background-subtle);border-radius:5px;align-items:center;gap:7px;padding:7px;font-size:9px;display:flex}.videowall-playlist b{background:var(--surface);width:19px;height:19px;color:var(--text-muted);border-radius:4px;place-items:center;display:grid}.videowall-playlist button{color:var(--primary);text-align:left;background:0 0;border:0;padding:6px;font-size:9px}.videowall-inspector-empty{color:var(--text-muted);text-align:center;place-items:center;gap:10px;padding:60px 24px;display:grid}.videowall-inspector-empty svg{width:26px}.videowall-inspector-empty p{margin:0;font-size:10px;line-height:1.55}.videowall-content-picker{grid-template-columns:178px minmax(0,1fr);min-height:510px;margin:-4px;display:grid}.videowall-content-picker>aside{border-right:1px solid var(--border);background:var(--background-subtle);padding:8px}.videowall-content-picker>aside button{width:100%;min-height:40px;color:var(--text-secondary);text-align:left;background:0 0;border:0;border-radius:5px;align-items:center;gap:8px;padding:0 10px;font-size:10px;display:flex}.videowall-content-picker>aside button.active{background:var(--surface);color:var(--primary);box-shadow:0 1px 4px #17212b14}.videowall-content-picker>aside svg{width:15px}.videowall-content-picker>section{flex-direction:column;min-width:0;padding:12px;display:flex}.videowall-picker-search{display:block;position:relative}.videowall-picker-search>svg{z-index:2;width:14px;color:var(--text-muted);position:absolute;top:10px;left:10px}.videowall-picker-search input{width:100%;padding-left:32px}.videowall-picker-results{flex:1;min-height:0;padding:9px 0;overflow:auto}.videowall-picker-results>button{border:0;border-bottom:1px solid var(--border-soft);width:100%;min-height:58px;color:var(--text-secondary);text-align:left;background:0 0;align-items:center;gap:10px;padding:8px 10px;display:flex}.videowall-picker-results>button:hover{background:var(--surface-hover)}.videowall-picker-results>button>svg{width:17px;color:var(--primary)}.videowall-picker-results>button span{gap:3px;display:grid}.videowall-picker-results strong{color:var(--text);font-size:11px}.videowall-picker-results small{color:var(--text-muted);font-size:9px}.videowall-content-picker footer{border-top:1px solid var(--border-soft);justify-content:space-between;align-items:center;gap:12px;padding-top:10px;display:flex}.videowall-content-picker footer span{color:var(--text-muted);font-size:9px}.videowall-control-table{overflow-x:auto}.videowall-control-row{border-bottom:1px solid var(--border-soft);min-width:1090px;min-height:60px;color:var(--text-secondary);grid-template-columns:230px minmax(240px,1fr) 120px 145px 145px 120px;align-items:center;gap:10px;padding:8px 16px;font-size:11px;display:grid}.videowall-control-row.is-head{background:var(--background-subtle);min-height:38px;color:var(--text-muted);font-size:10px;font-weight:650}.videowall-control-output>b{background:var(--primary-soft);width:31px;height:31px;color:var(--primary);font:700 10px var(--font-geist-mono);border-radius:5px;place-items:center;display:grid}.videowall-control-content{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.videowall-window-state svg{width:14px}.videowall-window-state.is-open{color:var(--success)}.videowall-guidance-grid{border:1px solid var(--border);background:var(--border);border-radius:8px;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;margin-top:14px;display:grid;overflow:hidden}.videowall-guidance-grid>div{background:var(--surface);gap:3px;padding:13px 16px;display:grid}.videowall-guidance-grid strong{font-size:12px}.videowall-guidance-grid span,.videowall-guidance-grid p{color:var(--text-muted);font-size:10px}.videowall-guidance-grid p{background:var(--background-subtle);grid-column:1/-1;margin:0;padding:9px 16px}.videowall-operation-shell{background:#0d151c;width:100vw;min-width:0;height:100vh;overflow:hidden}.videowall-operation-actions{color:#b8c4cd;background:#111c24;border-bottom:1px solid #26333d;justify-content:space-between;align-items:center;gap:10px;height:42px;padding:0 10px;font-size:10px;display:flex}.videowall-operation-actions>span{text-overflow:ellipsis;white-space:nowrap;font-weight:650;overflow:hidden}.videowall-operation-actions>div{gap:3px;display:flex}.videowall-operation-actions>div button{color:#b8c4cd;background:0 0;border:0;border-radius:4px;align-items:center;gap:5px;min-height:29px;padding:0 8px;font-size:9px;display:flex}.videowall-operation-actions>div button:hover{color:#fff;background:#1c2b35}.videowall-operation-actions svg{width:13px}.videowall-output-canvas{--vw-surface:#fff;--vw-surface-2:#f4f6f8;--vw-border:#dce2e7;--vw-text:#17212b;--vw-muted:#667085;--ec-bg-app:#f4f6f8;--ec-bg-surface:#fff;--ec-bg-secondary:#f4f6f8;--ec-border:#dce2e7;--ec-border-subtle:#e9edf0;--ec-text-primary:#17212b;--ec-text-secondary:#475467;--ec-text-muted:#667085;--ec-text-subtle:#98a2b3;--ec-primary:#18aaa6;--ec-primary-soft:#18aaa61a;--ec-success:#239f68;--ec-warning:#c47b13;--ec-danger:#d64555;--ec-info:#3478c7;--shadow:0 8px 24px #17212b14;background:var(--vw-surface-2);width:100%;height:100%;min-height:0;color:var(--vw-text);flex-direction:column;display:flex;overflow:hidden}.videowall-output-canvas.is-dark{--vw-surface:#121d25;--vw-surface-2:#0d151c;--vw-border:#293743;--vw-text:#eef3f6;--vw-muted:#9badb9;--ec-bg-app:#0d151c;--ec-bg-surface:#121d25;--ec-bg-secondary:#0d151c;--ec-border:#293743;--ec-border-subtle:#22303a;--ec-text-primary:#eef3f6;--ec-text-secondary:#c2cdd4;--ec-text-muted:#9badb9;--ec-text-subtle:#71818c;--ec-primary:#28bdb8;--ec-primary-soft:#28bdb81c;--ec-success:#46b87e;--ec-warning:#e0a23f;--ec-danger:#e76572;--ec-info:#69a0df;--shadow:0 10px 26px #00000038;--surface:var(--vw-surface);--background-subtle:var(--vw-surface-2);--border:var(--vw-border);--border-soft:#22303a;--text:var(--vw-text);--text-secondary:#c2cdd4;--text-muted:var(--vw-muted);--surface-hover:#1a2933}.videowall-output-canvas.is-preview{position:absolute;inset:0}.videowall-operation-shell>.videowall-output-canvas{height:calc(100vh - 42px)}.videowall-output-header{border-bottom:1px solid var(--vw-border);background:var(--vw-surface);justify-content:space-between;align-items:center;gap:14px;min-height:52px;padding:6px 14px;display:flex}.videowall-output-header>div:first-child{grid-template-columns:auto 1fr;gap:1px 12px;min-width:0;display:grid}.videowall-output-brand{color:var(--primary);letter-spacing:.08em;grid-row:1/span 2;align-items:center;gap:6px;font-size:8px;font-weight:800;display:flex}.videowall-output-brand svg{width:17px}.videowall-output-header strong{color:var(--vw-text);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.videowall-output-header small{color:var(--vw-muted);font-size:8px}.videowall-output-header>div:last-child{align-items:center;gap:10px;display:flex}.videowall-output-header button,.videowall-output-header time{color:var(--vw-muted);font:600 9px var(--font-geist-mono);background:0 0;border:0;align-items:center;gap:5px;display:flex}.videowall-output-header button svg,.videowall-output-header time svg{width:12px}.videowall-region-grid{background:var(--vw-border);flex:1;gap:2px;min-height:0;padding:2px;display:grid}.videowall-region{--vw-region-title-size:clamp(9px, 1.2cqw, 14px);background:var(--vw-surface);flex-direction:column;min-width:0;min-height:0;display:flex;position:relative;overflow:hidden}.videowall-region>header{border-bottom:1px solid var(--vw-border);background:var(--vw-surface);align-items:center;gap:9px;min-height:28px;padding:0 9px;display:flex}.videowall-region>header strong{min-width:0;color:var(--vw-text);font-size:var(--vw-region-title-size);text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.videowall-region.density-compact{--vw-region-title-size:clamp(8px, 1cqw, 11px)}.videowall-region.density-large{--vw-region-title-size:clamp(11px, 1.45cqw, 17px)}.videowall-region>header .videowall-data-state{color:var(--vw-muted);font-size:8px}.videowall-region>header small{color:var(--vw-muted);font:600 8px var(--font-geist-mono)}.videowall-region-content{background:var(--vw-surface);flex:1;min-height:0;position:relative;overflow:hidden}.videowall-region-fit-surface{flex:1;min-width:0;min-height:0;position:relative;overflow:hidden;container-type:size}.videowall-region-fit-surface>*{width:100%;height:100%}.videowall-region[data-fit-mode=custom] .videowall-region-content{width:calc(100% / var(--vw-region-scale));height:calc(100% / var(--vw-region-scale));transform:scale(var(--vw-region-scale));transform-origin:0 0}.videowall-region[data-fit-mode=cover] .videowall-region-content{transform-origin:50%;transform:scale(1.035)}.videowall-region[data-fit-mode=native] .videowall-region-content{width:min(100%,1280px);height:min(100%,720px);margin:auto}.videowall-region.header-compact>header{min-height:22px}.videowall-output-canvas.header-compact .videowall-output-header{min-height:38px;padding-block:3px}.videowall-output-canvas.header-compact .videowall-output-header small,.videowall-output-canvas.header-compact .videowall-output-brand{display:none}.videowall-size-warning{z-index:35;color:#8a5a00;background:#fff4ce;border-radius:3px;padding:3px 5px;font-size:7px;font-weight:750;position:absolute;top:34px;left:7px}.videowall-output-canvas.is-operation .videowall-size-warning{display:none}.videowall-region-content>.ec-loading,.videowall-region-content>.ec-feedback-state{height:100%;min-height:0;padding:12px}.videowall-stale-banner{z-index:30;border:1px solid var(--warning);gap:2px;padding:6px 8px;display:grid;position:absolute;bottom:8px;right:8px}@supports (color:color-mix(in lab, red, red)){.videowall-stale-banner{border:1px solid color-mix(in srgb, var(--warning) 45%, var(--vw-border))}}.videowall-stale-banner{background:var(--warning);border-radius:5px}@supports (color:color-mix(in lab, red, red)){.videowall-stale-banner{background:color-mix(in srgb, var(--warning) 12%, var(--vw-surface))}}.videowall-stale-banner{color:var(--warning);box-shadow:0 4px 12px #0000002e}.videowall-stale-banner strong{font-size:8px}.videowall-stale-banner span{color:var(--vw-muted);font-size:7px}.videowall-scada-renderer,.videowall-scada-renderer .ec-supervisory-canvas,.videowall-scada-renderer .react-flow{width:100%;height:100%;min-height:0}.videowall-scada-renderer .ec-supervisory-canvas{border:0;border-radius:0}.videowall-dashboard-renderer{background:var(--vw-surface-2);width:100%;height:100%;padding:4px;overflow:hidden}.videowall-dashboard-renderer .dashboard-grid-container{width:100%;min-width:0;height:100%}.videowall-dashboard-renderer .dashboard-panel-card{box-shadow:none}.videowall-alert-renderer,.videowall-event-renderer{width:100%;height:100%;overflow:hidden}.videowall-alert-renderer{position:relative}.videowall-alert-renderer table{table-layout:fixed;border-collapse:collapse;width:100%}.videowall-alert-renderer th{background:var(--vw-surface-2);height:28px;color:var(--vw-muted);padding:0 8px;font-size:8px}.videowall-alert-renderer td{background:var(--vw-surface);height:34px;color:var(--vw-text);padding:3px 8px;font-size:8px}.videowall-alert-renderer th,.videowall-alert-renderer td{border-bottom:1px solid var(--vw-border);text-align:left;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.videowall-alert-renderer td strong,.videowall-alert-renderer td small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.videowall-alert-renderer td small{color:var(--vw-muted);margin-top:2px;font-size:7px}.videowall-region.density-compact .videowall-alert-renderer td{height:31px;padding-block:2px}.videowall-region.density-large .videowall-alert-renderer td{height:48px;font-size:10px}.videowall-region-page-count{background:var(--vw-surface-2);color:var(--vw-muted);border-radius:3px;padding:3px 5px;font-size:7px;position:absolute;bottom:4px;right:6px}.videowall-event-list{height:100%;margin:0;padding:4px 8px;list-style:none;overflow:hidden}.videowall-event-list li{border-bottom:1px solid var(--vw-border);grid-template-columns:42px 6px minmax(0,1fr);align-items:center;gap:7px;min-height:39px;display:grid}.videowall-region.density-compact .videowall-event-list li{min-height:31px}.videowall-region.density-large .videowall-event-list li{min-height:48px}.videowall-event-list time{color:var(--vw-muted);font:650 8px var(--font-geist-mono)}.videowall-event-list li>span{background:var(--primary);border-radius:50%;width:5px;height:5px}.videowall-event-list li>span.is-critical{background:var(--danger)}.videowall-event-list li>span.is-warning{background:var(--warning)}.videowall-event-list div,.videowall-event-list strong,.videowall-event-list small{min-width:0}.videowall-event-list strong,.videowall-event-list small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.videowall-event-list strong{color:var(--vw-text);font-size:9px}.videowall-event-list small{color:var(--vw-muted);margin-top:2px;font-size:7px}.videowall-region-empty,.videowall-region-error{height:100%;color:var(--vw-muted);text-align:center;place-content:center;gap:6px;padding:16px;font-size:10px;display:grid}.videowall-region-error strong{color:var(--danger)}.videowall-region-error button{border:1px solid var(--vw-border);background:var(--vw-surface-2);color:var(--vw-text);border-radius:4px;justify-self:center;padding:5px 8px;font-size:8px}.videowall-event-renderer{padding:4px 8px}.videowall-event-renderer .event-timeline{margin:0}.videowall-event-renderer .event-timeline li{padding-block:6px}.videowall-event-renderer .event-timeline strong,.videowall-event-renderer .event-timeline p,.videowall-event-renderer .event-timeline small{font-size:8px}.videowall-output-statusbar{border-top:1px solid var(--vw-border);background:var(--vw-surface);min-height:23px;color:var(--vw-muted);font:600 8px var(--font-geist-mono);justify-content:flex-end;align-items:center;gap:14px;padding:0 10px;display:flex}.videowall-output-statusbar time{color:inherit;font:inherit}.videowall-wake-lock{color:#91a1ac;flex:none;font-size:8px}.videowall-control-row{grid-template-columns:210px minmax(210px,1fr) 105px 125px 105px 125px 105px}@container (width<=520px){.videowall-region>header .videowall-data-state,.videowall-region>header small,.videowall-dashboard-renderer .dashboard-panel-card header small{display:none}}.videowall-soak-page{color:#eaf1f5;background:#0a1218;min-height:100vh;padding:28px}.videowall-soak-page>header{justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:18px;display:flex}.videowall-soak-page>header span{color:#42b8a5;letter-spacing:.12em;font-size:10px;font-weight:800}.videowall-soak-page h1{margin:6px 0;font-size:28px}.videowall-soak-page p,.videowall-soak-page footer{color:#8fa2ae;margin:0;font-size:11px}.videowall-soak-toolbar,.videowall-soak-summary,.videowall-soak-stage,.videowall-soak-result{background:#101c24;border:1px solid #263640;border-radius:8px}.videowall-soak-toolbar{justify-content:space-between;align-items:flex-end;gap:18px;padding:12px 14px;display:flex}.videowall-soak-toolbar label{color:#9bacb6;gap:6px;font-size:10px;display:grid}.videowall-soak-toolbar select{color:#eaf1f5;background:#15242d;min-width:280px}.videowall-soak-toolbar>span{color:#738995;font:600 10px var(--font-geist-mono)}.videowall-soak-summary{background:#263640;grid-template-columns:repeat(8,minmax(0,1fr));gap:1px;margin-top:12px;display:grid;overflow:hidden}.videowall-soak-summary article{background:#101c24;align-content:center;gap:5px;min-height:92px;padding:12px;display:grid}.videowall-soak-summary svg{color:#42b8a5;width:16px}.videowall-soak-summary span{color:#8fa2ae;font-size:9px}.videowall-soak-summary strong{font:750 18px var(--font-geist-mono)}.videowall-soak-stage{background-image:linear-gradient(#172630 1px,#0000 1px),linear-gradient(90deg,#172630 1px,#0000 1px);background-size:28px 28px;place-items:center;height:330px;margin-top:12px;display:grid;overflow:hidden}.videowall-soak-stage>div{color:#8fa2ae;text-align:center;background:#15242d;border:1px solid #3a5360;border-radius:6px;place-content:center;gap:6px;font-size:10px;transition:width 80ms linear,height 80ms linear;display:grid}.videowall-soak-stage strong{color:#42b8a5;font:800 20px var(--font-geist-mono)}.videowall-soak-result{margin-top:12px;padding:14px}.videowall-soak-result>header{color:#8fa2ae;align-items:center;gap:8px;display:flex}.videowall-soak-result.is-pass>header{color:#4cc9a9}.videowall-soak-result>header svg{width:18px}.videowall-soak-result>div{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin-top:12px;display:grid}.videowall-soak-result>div span{color:#8fa2ae;border:1px solid #263640;border-radius:5px;gap:4px;padding:9px;font-size:9px;display:grid}.videowall-soak-result>div strong{color:#eaf1f5;font:700 12px var(--font-geist-mono)}.videowall-soak-page>footer{text-align:right;margin-top:12px}@media (max-width:1260px){.videowall-editor-shell{grid-template-columns:200px minmax(0,1fr) 250px}.videowall-template-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:980px){.videowall-editor-shell{grid-template-columns:180px minmax(0,1fr);display:grid}.videowall-region-inspector{border-top:1px solid var(--border);border-left:0;grid-column:1/-1}.videowall-inspector-fields{grid-template-columns:repeat(3,minmax(0,1fr))}.videowall-guidance-grid{grid-template-columns:1fr}}@media (max-width:700px){.videowall-form-grid,.videowall-template-grid,.videowall-editor-shell,.videowall-inspector-fields{grid-template-columns:1fr}.videowall-new-shell>section{padding:62px 16px 20px}.videowall-form-icon{left:16px}.videowall-output-list{border-right:0;border-bottom:1px solid var(--border);max-height:260px}.videowall-region-inspector{grid-column:auto}.videowall-content-picker{grid-template-columns:1fr}.videowall-content-picker>aside{border-right:0;border-bottom:1px solid var(--border);display:flex;overflow-x:auto}.videowall-content-picker>aside button{width:auto;min-width:max-content}.videowall-operation-actions>div button span,.videowall-operation-actions>span,.videowall-output-brand,.videowall-output-header small,.videowall-region>header .videowall-data-state,.videowall-output-statusbar{display:none}}.governance-page{width:min(100%,1680px);margin:0 auto}.governance-security-chip{border:1px solid var(--primary);align-items:center;gap:7px;padding:7px 10px;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.governance-security-chip{border:1px solid color-mix(in srgb, var(--primary) 28%, var(--border))}}.governance-security-chip{color:var(--primary-strong);background:var(--primary-soft);border-radius:999px;font-size:11px;font-weight:700}.governance-toolbar,.governance-audit-filters,.governance-table-meta,.governance-version-selectors{border:1px solid var(--border);background:var(--surface);border-radius:9px;align-items:center;gap:10px;margin-bottom:12px;padding:10px 12px;display:flex}.governance-toolbar{justify-content:space-between}.governance-toolbar>span,.governance-table-meta{color:var(--text-muted);font-size:11px;font-weight:650}.governance-search{min-width:320px;color:var(--text-muted);align-items:center;gap:8px;display:flex}.governance-search input,.governance-form input,.governance-form textarea,.governance-role-identity input{border:1px solid var(--border);width:100%;min-height:36px;color:var(--text);background:var(--surface);border-radius:7px;outline:none;padding:8px 10px}.governance-search input{background:0 0;border:0}.governance-search:focus-within,.governance-form input:focus,.governance-role-identity input:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft)}.governance-table-wrap{border:1px solid var(--border);background:var(--surface);border-radius:10px;overflow:auto}.governance-table{border-collapse:collapse;width:100%;font-size:12px}.governance-table th{border-bottom:1px solid var(--border);color:var(--text-muted);background:var(--background-subtle);text-align:left;letter-spacing:.05em;text-transform:uppercase;padding:9px 12px;font-size:10px;font-weight:750}.governance-table td{border-bottom:1px solid var(--border-soft);min-width:110px;color:var(--text-secondary);vertical-align:middle;padding:11px 12px}.governance-table tr:last-child td{border-bottom:0}.governance-table tbody tr:hover{background:var(--surface-hover)}.governance-table td>strong,.governance-table td>span{display:block}.governance-table td>strong{color:var(--text);font-weight:680}.governance-table td>span,.governance-table td>code{color:var(--text-muted);margin-top:3px;font-size:10px}.governance-inline-list,.governance-capability-cloud{flex-wrap:wrap;gap:5px;display:flex}.governance-inline-list>span{border:1px solid var(--border);color:var(--text-secondary);background:var(--background-subtle);border-radius:5px;padding:4px 7px;font-size:10px;font-weight:650}.governance-row-actions{gap:4px;display:flex}.governance-row-actions button,.governance-icon-action{border:1px solid var(--border);width:31px;height:31px;color:var(--text-secondary);background:var(--surface);border-radius:6px;place-items:center;display:inline-grid}.governance-row-actions button:hover,.governance-icon-action:hover{border-color:var(--primary);color:var(--primary)}.governance-form{gap:14px;display:grid}.governance-form>label,.governance-role-identity>label,.governance-version-selectors>label{gap:6px;display:grid}.governance-form label>span,.governance-role-identity label>span,.governance-version-selectors label>span{color:var(--text-secondary);font-size:11px;font-weight:700}.governance-form footer,.governance-decision-dialog footer{justify-content:flex-end;gap:8px;padding-top:4px;display:flex}.governance-dialog-note,.governance-boundary-note{border:1px solid var(--border);color:var(--text-secondary);background:var(--background-subtle);border-radius:7px;padding:10px 12px;font-size:11px;line-height:1.5}.governance-detail-grid{grid-template-columns:1fr 1fr;gap:12px;margin-bottom:12px;display:grid}.governance-panel,.governance-settings-panel,.governance-review-preview,.governance-review-diff,.governance-review-comment{border:1px solid var(--border);background:var(--surface);border-radius:10px;margin-bottom:12px}.governance-panel>header,.governance-settings-panel>header,.governance-review-preview>header,.governance-review-diff>header{border-bottom:1px solid var(--border-soft);align-items:flex-start;gap:10px;padding:13px 15px;display:flex}.governance-panel>header>svg,.governance-settings-panel>header>svg,.governance-review-preview>header>svg,.governance-review-diff>header>svg{color:var(--primary)}.governance-panel h2,.governance-settings-panel h2,.governance-review-preview h2,.governance-review-diff h2{margin:0;font-size:13px}.governance-panel header p,.governance-settings-panel header p,.governance-review-preview header p,.governance-review-diff header p{color:var(--text-muted);margin:3px 0 0;font-size:10px}.governance-check-list{max-height:310px;padding:5px 14px 12px;overflow:auto}.governance-check-list label,.governance-settings-panel>label{border-bottom:1px solid var(--border-soft);align-items:flex-start;gap:10px;padding:10px 2px;display:flex}.governance-check-list label:last-child,.governance-settings-panel>label:last-child{border-bottom:0}.governance-check-list label span,.governance-settings-panel label span{gap:2px;display:grid}.governance-check-list label strong,.governance-settings-panel label strong{color:var(--text);font-size:12px}.governance-check-list label small,.governance-settings-panel label small{color:var(--text-muted);font-size:10px}.governance-check-list input,.governance-settings-panel input,.governance-permission-module input{accent-color:var(--primary)}.governance-scope-editor{gap:7px;padding:14px;display:grid}.governance-scope-editor>div{border:1px solid var(--border);background:var(--background-subtle);border-radius:7px;justify-content:space-between;align-items:center;gap:12px;padding:8px 10px;font-size:11px;display:flex}.governance-scope-editor button{color:var(--danger);font-size:10px}.governance-scope-editor label,.governance-scope-editor .governance-scope-add{color:var(--text-secondary);gap:6px;margin-top:4px;font-size:10px;font-weight:700;display:grid}.governance-capability-panel>.governance-capability-cloud{padding:14px}.governance-capability-cloud>span,.governance-my-capabilities section>div>span{border:1px solid var(--border);background:var(--background-subtle);border-radius:6px;gap:3px;min-width:170px;padding:7px 9px;display:grid}.governance-capability-cloud strong,.governance-my-capabilities strong{font-size:10px}.governance-capability-cloud code,.governance-my-capabilities code{color:var(--text-muted);font-size:9px}.governance-activity-list{padding:4px 14px 12px}.governance-activity-list>div{border-bottom:1px solid var(--border-soft);grid-template-columns:150px 220px 1fr;gap:10px;padding:9px 2px;font-size:10px;display:grid}.governance-activity-list span,.governance-activity-list small{color:var(--text-muted)}.governance-role-identity{border:1px solid var(--border);background:var(--surface);border-radius:10px;grid-template-columns:minmax(220px,.8fr) minmax(340px,1.6fr) 170px;align-items:end;gap:12px;margin-bottom:12px;padding:13px;display:grid}.governance-role-identity>div{height:36px;color:var(--primary-strong);align-items:center;gap:8px;font-size:11px;display:flex}.governance-warning-list{border:1px solid var(--warning);margin-bottom:12px;padding:8px 12px}@supports (color:color-mix(in lab, red, red)){.governance-warning-list{border:1px solid color-mix(in srgb, var(--warning) 34%, var(--border))}}.governance-warning-list{color:var(--warning);background:var(--warning-soft);border-radius:8px}.governance-warning-list p{align-items:center;gap:7px;margin:3px 0;font-size:10px;display:flex}.governance-permission-modules{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.governance-permission-module{border:1px solid var(--border);background:var(--surface);border-radius:10px;overflow:hidden}.governance-permission-module>header{border-bottom:1px solid var(--border);background:var(--background-subtle);justify-content:space-between;align-items:center;padding:11px 13px;display:flex}.governance-permission-module h2{margin:0;font-size:12px}.governance-permission-module header span,.governance-permission-module header label{color:var(--text-muted);font-size:9px}.governance-permission-module header label{align-items:center;gap:6px;display:flex}.governance-permission-module>div>label{border-bottom:1px solid var(--border-soft);grid-template-columns:18px minmax(0,1fr) auto;align-items:start;gap:8px;padding:9px 12px;display:grid}.governance-permission-module>div>label:last-child{border-bottom:0}.governance-permission-module label span{gap:2px;display:grid}.governance-permission-module label strong{font-size:11px}.governance-permission-module label small,.governance-permission-module label code{color:var(--text-muted);font-size:9px}.governance-permission-module label em{color:var(--text-muted);background:var(--background-subtle);text-transform:uppercase;border-radius:4px;padding:3px 5px;font-size:8px;font-style:normal;font-weight:700}.governance-permission-module label em.is-high{color:var(--danger);background:var(--danger-soft)}.governance-settings-panel{max-width:900px}.governance-settings-panel>label{margin-inline:15px}.governance-boundary-banner,.governance-review-warning,.ec-studio-workflow-freeze,.ec-studio-rejection-note{border:1px solid var(--info);align-items:center;gap:10px;padding:10px 13px;display:flex}@supports (color:color-mix(in lab, red, red)){.governance-boundary-banner,.governance-review-warning,.ec-studio-workflow-freeze,.ec-studio-rejection-note{border:1px solid color-mix(in srgb, var(--info) 30%, var(--border))}}.governance-boundary-banner,.governance-review-warning,.ec-studio-workflow-freeze,.ec-studio-rejection-note{color:var(--text-secondary);background:var(--info-soft);border-radius:8px;font-size:11px}.governance-boundary-banner strong,.governance-review-warning strong,.ec-studio-workflow-freeze strong{color:var(--info)}.governance-access-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:12px;display:grid}.governance-access-summary section{border:1px solid var(--border);background:var(--surface);border-radius:9px;gap:11px;padding:14px;display:flex}.governance-access-summary svg{color:var(--primary)}.governance-access-summary span{gap:2px;min-width:0;display:grid}.governance-access-summary small,.governance-access-summary em{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;font-size:9px;font-style:normal;overflow:hidden}.governance-access-summary strong{font-size:12px}.governance-my-capabilities{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:12px;display:grid}.governance-my-capabilities section{border:1px solid var(--border);background:var(--surface);border-radius:9px}.governance-my-capabilities header{border-bottom:1px solid var(--border-soft);justify-content:space-between;padding:10px 12px;display:flex}.governance-my-capabilities h2{margin:0;font-size:12px}.governance-my-capabilities section>div{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;padding:10px;display:grid}.governance-audit-filters{flex-wrap:wrap}.governance-audit-filters>label:not(.governance-search),.governance-audit-filter{align-items:center;gap:5px;display:flex}.governance-table-meta{justify-content:space-between;padding-block:7px}.governance-audit-table td:first-child{font:10px var(--font-geist-mono);white-space:nowrap}.governance-load-more{justify-content:center;padding:14px;display:flex}.governance-audit-detail dl{margin:0 0 18px}.governance-audit-detail dl>div{border-bottom:1px solid var(--border-soft);grid-template-columns:110px 1fr;gap:10px;padding:9px 0;display:grid}.governance-audit-detail dt,.governance-audit-detail section h3{color:var(--text-muted);text-transform:uppercase;font-size:10px;font-weight:700}.governance-audit-detail dd{color:var(--text);margin:0;font-size:11px}.governance-audit-detail section>div>p{background:var(--background-subtle);border-radius:5px;justify-content:space-between;gap:10px;padding:8px;font-size:10px;display:flex}.governance-review-comment{padding:12px 14px}.governance-review-comment>span{color:var(--text-muted);text-transform:uppercase;font-size:9px;font-weight:700}.governance-review-comment p{margin:5px 0 0;font-size:12px}.governance-review-warning{border-color:var(--warning);margin-bottom:12px}@supports (color:color-mix(in lab, red, red)){.governance-review-warning{border-color:color-mix(in srgb, var(--warning) 30%, var(--border))}}.governance-review-warning{background:var(--warning-soft)}.governance-review-warning strong{color:var(--warning)}.governance-review-metadata{border:1px solid var(--border);background:var(--border);border-radius:8px;grid-template-columns:repeat(5,minmax(0,1fr));gap:1px;margin-bottom:12px;display:grid;overflow:hidden}.governance-review-metadata>div{background:var(--surface);gap:3px;padding:10px 12px;display:grid}.governance-review-metadata span{color:var(--text-muted);text-transform:uppercase;font-size:9px}.governance-review-metadata strong{font-size:12px}.governance-review-preview>div{background:var(--background-subtle);height:520px;overflow:hidden}.governance-review-diff>.governance-diff{padding:12px}.governance-diff-summary{border:1px solid var(--border);background:var(--background-subtle);border-radius:7px;align-items:center;gap:8px;margin-bottom:10px;padding:9px 10px;display:flex}.governance-diff-summary>div{align-items:center;gap:7px;margin-right:auto;font-size:11px;font-weight:700;display:flex}.governance-diff-summary strong{border-radius:4px;padding:4px 6px;font-size:9px}.governance-diff-summary .is-added{color:var(--success);background:var(--success-soft)}.governance-diff-summary .is-removed{color:var(--danger);background:var(--danger-soft)}.governance-diff-summary .is-modified{color:var(--warning);background:var(--warning-soft)}.governance-diff-section{margin-top:10px}.governance-diff-section>h3{border-bottom:1px solid var(--border);color:var(--text-secondary);background:var(--background-subtle);text-transform:uppercase;justify-content:space-between;margin:0;padding:7px 9px;font-size:10px;display:flex}.governance-diff-section>div{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;padding-top:6px;display:grid}.governance-diff-section article{border:1px solid var(--border);border-left:3px solid var(--warning);border-radius:6px;padding:8px 9px}.governance-diff-section article.is-added{border-left-color:var(--success)}.governance-diff-section article.is-removed{border-left-color:var(--danger)}.governance-diff-section article header{align-items:center;gap:6px;font-size:10px;display:flex}.governance-diff-section article header code{color:var(--text-muted);margin-left:auto;font-size:8px}.governance-diff-change{grid-template-columns:80px minmax(0,1fr) 14px minmax(0,1fr);align-items:center;gap:5px;margin-top:7px;font-size:9px;display:grid}.governance-diff-change>span{color:var(--text-muted)}.governance-diff-change code{background:var(--background-subtle);text-overflow:ellipsis;white-space:nowrap;border-radius:3px;padding:4px;overflow:hidden}.governance-diff-empty{color:var(--text-muted);text-align:center;padding:24px;font-size:11px}.governance-decision-dialog{gap:14px;display:grid}.governance-decision-dialog>div:first-child{background:var(--background-subtle);border-radius:7px;gap:3px;padding:10px;font-size:11px;display:grid}.governance-decision-dialog label{gap:6px;font-size:11px;font-weight:700;display:grid}.governance-decision-dialog textarea{border:1px solid var(--border);min-height:100px;color:var(--text);background:var(--surface);border-radius:7px;padding:9px}.governance-version-selectors{justify-content:center}.governance-version-selectors label{min-width:220px}.governance-technical-details{border:1px solid var(--border);background:var(--surface);border-radius:7px;margin-top:12px}.governance-technical-details summary{cursor:pointer;padding:9px 11px;font-size:10px;font-weight:700}.governance-technical-details pre{border-top:1px solid var(--border);max-height:420px;margin:0;padding:12px;font-size:9px;overflow:auto}.governance-access-denied{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:560px;display:flex}.governance-access-denied>span{width:58px;height:58px;color:var(--danger);background:var(--danger-soft);border-radius:50%;place-items:center;display:grid}.governance-access-denied small{color:var(--text-muted);text-transform:uppercase;margin-top:15px;font-weight:700}.governance-access-denied h1{margin:6px 0;font-size:24px}.governance-access-denied>p{max-width:520px;color:var(--text-secondary);margin:0 0 14px}.governance-access-denied .governance-boundary-note{max-width:600px;margin-bottom:18px}.ec-studio-workflow-freeze,.ec-studio-rejection-note{border-radius:5px;margin:8px 10px 0}.ec-studio-rejection-note{border-color:var(--warning)}@supports (color:color-mix(in lab, red, red)){.ec-studio-rejection-note{border-color:color-mix(in srgb, var(--warning) 36%, var(--border))}}.ec-studio-rejection-note{background:var(--warning-soft)}.ec-studio-rejection-note strong{color:var(--warning)}.ec-studio-shell.is-frozen .ec-studio-symbol-library{opacity:.68}.user-governance-summary{border-block:1px solid var(--border-soft);gap:2px;padding:9px 12px;display:grid}.user-governance-summary span,.user-governance-summary small{color:var(--text-muted);font-size:9px}.user-governance-summary strong{font-size:10px}@media (max-width:1100px){.governance-permission-modules,.governance-my-capabilities,.governance-detail-grid{grid-template-columns:1fr}.governance-role-identity{grid-template-columns:1fr 1fr}.governance-role-identity>div{grid-column:1/-1}.governance-audit-filters .governance-search{min-width:100%}}@media (max-width:760px){.governance-access-summary,.governance-review-metadata,.governance-role-identity{grid-template-columns:1fr}.governance-toolbar,.governance-version-selectors{flex-direction:column;align-items:stretch}.governance-search{min-width:0}.governance-diff-section>div,.governance-my-capabilities section>div{grid-template-columns:1fr}.governance-diff-summary{flex-wrap:wrap;align-items:flex-start}.governance-diff-summary>div{width:100%}.governance-review-preview>div{height:420px}}.ec-studio-shell{border-color:var(--ec-border);background:var(--ec-bg-subtle);border-radius:8px;grid-template-rows:58px minmax(0,1fr) 31px;width:100%;height:calc(100vh - 92px);min-height:680px}.ec-studio-toolbar{flex-wrap:wrap;gap:7px;min-width:0;min-height:58px;padding:7px 9px;overflow:hidden}.ec-studio-toolbar__identity{border-right:1px solid var(--ec-border-subtle);align-items:center;gap:8px;min-width:220px;padding-right:10px;display:flex}.ec-studio-toolbar__identity>button,.ec-studio-row-actions button,.ec-studio-canvas-controls button,.ec-studio-layer button,.ec-studio-binding-item>button{color:var(--ec-text-muted);background:0 0;border:0}.ec-studio-toolbar__identity>button{border-radius:5px;place-items:center;width:28px;height:32px;display:grid}.ec-studio-toolbar__identity>button:hover,.ec-studio-row-actions button:hover,.ec-studio-canvas-controls button:hover{background:var(--ec-bg-hover);color:var(--ec-primary)}.ec-studio-product-mark{background:var(--ec-primary);border-radius:6px;place-items:center;width:28px;height:28px;display:grid;color:#fff!important;font:750 10px var(--font-geist-mono)!important}.ec-studio-toolbar__identity>div{gap:2px;min-width:0;display:grid}.ec-studio-toolbar__identity strong{text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.ec-studio-toolbar__identity b{color:var(--ec-warning);font-weight:650}.ec-studio-toolbar__section,.ec-studio-toolbar__actions{align-items:center;gap:2px;display:flex}.ec-studio-toolbar__section{border-right:1px solid var(--ec-border-subtle);padding-right:6px}.ec-studio-toolbar__actions{flex-wrap:wrap;gap:5px;max-width:100%;margin-left:auto}.ec-studio-tool-button{min-width:29px;height:30px;color:var(--ec-text-secondary);background:0 0;border:1px solid #0000;border-radius:5px;place-items:center;padding:0 6px;display:grid}.ec-studio-tool-button:hover:not(:disabled){border-color:var(--ec-border);background:var(--ec-bg-hover);color:var(--ec-primary)}.ec-studio-tool-button:disabled{color:var(--ec-text-disabled)}.ec-studio-text-icon{font:700 9px var(--font-geist-mono)}.ec-studio-mode-button{border:1px solid var(--ec-border);background:var(--ec-bg-surface);height:31px;color:var(--ec-text-secondary);border-radius:5px;align-items:center;gap:5px;padding:0 8px;font-size:10px;font-weight:600;display:flex}.ec-studio-mode-button.active{border-color:var(--ec-primary);background:var(--ec-primary-soft);color:var(--ec-primary)}.ec-studio-mode-switch{border:1px solid var(--ec-border);background:var(--ec-bg-secondary);border-radius:6px;padding:2px;display:flex}.ec-studio-mode-switch button{height:25px;color:var(--ec-text-muted);background:0 0;border:0;border-radius:4px;padding:0 8px;font-size:9px}.ec-studio-mode-switch button.active{background:var(--ec-bg-surface);color:var(--ec-primary);box-shadow:0 1px 3px #17212b1a}.ec-studio-workspace{grid-template-columns:215px minmax(450px,1fr) 315px;min-height:0;overflow:hidden}.ec-studio-library,.ec-studio-inspector{background:var(--ec-bg-surface);min-width:0}.ec-studio-library{flex-direction:column;height:100%;padding:0;display:flex}.ec-studio-panel-heading,.ec-studio-inspector__heading{gap:3px;display:grid}.ec-studio-panel-heading{grid-template-columns:1fr auto;padding:13px 12px 10px}.ec-studio-panel-heading>div{gap:2px;display:grid}.ec-studio-panel-heading small,.ec-studio-inspector__heading small,.ec-studio-new-form>small{color:var(--ec-text-subtle);font:700 8px var(--font-geist-mono);letter-spacing:.08em}.ec-studio-panel-heading strong{font-size:13px}.ec-studio-panel-heading>span{background:var(--ec-primary-soft);color:var(--ec-primary);font:650 8px var(--font-geist-mono);border-radius:9px;align-self:center;padding:3px 6px}.ec-studio-search,.ec-studio-list-toolbar label{border:1px solid var(--ec-border);background:var(--ec-bg-secondary);color:var(--ec-text-muted);border-radius:6px;align-items:center;gap:7px;display:flex}.ec-studio-search{margin:0 10px 8px;padding:0 8px}.ec-studio-search input,.ec-studio-list-toolbar input{width:100%;height:31px;color:var(--ec-text-primary);background:0 0;border:0;outline:0;font-size:10px}.ec-studio-library__scroll,.ec-studio-inspector__scroll{flex:1;min-height:0;overflow:auto}.ec-studio-library__scroll{padding:2px 10px 16px}.ec-studio-library__scroll section+section{margin-top:13px}.ec-studio-library__scroll h3,.ec-studio-section-title{color:var(--ec-text-subtle);font:700 8px var(--font-geist-mono);letter-spacing:.08em;text-transform:uppercase;margin:7px 0}.ec-studio-symbol-grid{grid-template-columns:1fr 1fr;gap:6px;display:grid}.ec-studio-symbol-card{border-color:var(--ec-border-subtle);background:var(--ec-bg-secondary);min-height:72px;color:var(--ec-text-secondary);text-align:center;cursor:grab;flex-direction:column;gap:4px;margin:0;padding:6px;display:flex}.ec-studio-symbol-card__visual{pointer-events:none;place-items:center;width:100%;height:44px;overflow:hidden;display:grid!important}.ec-studio-symbol-card__visual svg{width:66px;height:42px}.ec-studio-symbol-card>span:last-child{text-overflow:ellipsis;white-space:nowrap;font-size:8px;font-weight:600;display:block;overflow:hidden}.ec-studio-symbol-fallback{border:1px solid var(--ec-border);background:var(--ec-bg-surface);width:35px;height:31px;color:var(--ec-primary);font:700 10px var(--font-geist-mono);border-radius:5px;place-items:center;display:grid!important}.ec-studio-canvas-wrap{background:var(--ec-bg-subtle);grid-template-rows:35px minmax(0,1fr);min-width:0;min-height:0;padding:0;display:grid;position:relative;overflow:hidden}@supports (color:color-mix(in lab, red, red)){.ec-studio-canvas-wrap{background:color-mix(in srgb, var(--ec-bg-subtle) 88%, var(--ec-bg-surface))}}.ec-studio-canvas-header{z-index:3;border-bottom:1px solid var(--ec-border-subtle);background:var(--ec-bg-surface);justify-content:space-between;align-items:center;padding:0 9px;display:flex}@supports (color:color-mix(in lab, red, red)){.ec-studio-canvas-header{background:color-mix(in srgb, var(--ec-bg-surface) 92%, transparent)}}.ec-studio-canvas-header>div:first-child{align-items:center;gap:6px;display:flex}.ec-studio-canvas-header strong{font-size:9px}.ec-studio-canvas-header small{color:var(--ec-text-muted);font-size:8px}.ec-studio-mode-dot{background:var(--ec-primary);border-radius:50%;width:6px;height:6px}.ec-studio-mode-dot.is-data{background:var(--ec-info);box-shadow:0 0 0 3px var(--ec-info-soft)}.ec-studio-canvas-controls{border:1px solid var(--ec-border);border-radius:5px;align-items:center;display:flex;overflow:hidden}.ec-studio-canvas-controls button{border-right:1px solid var(--ec-border);min-width:27px;height:25px;color:var(--ec-text-muted);padding:0 7px;font-size:8px}.ec-studio-canvas-controls .ec-select{border:0;border-right:1px solid var(--ec-border);border-radius:0;width:112px;height:25px;min-height:25px;padding:0 6px;font-size:8px}.ec-studio-canvas-controls button:last-child{border-right:0}.ec-studio-canvas{background:var(--ec-bg-canvas,var(--ec-bg-secondary));width:100%;height:100%;min-height:0}.ec-studio-canvas .react-flow__node.selected>.ec-scada-node-frame,.ec-studio-canvas .react-flow__node.selected .ec-scada-node-frame,.ec-studio-canvas .react-flow__node.ec-studio-node-selected>.ec-scada-node-frame,.ec-studio-canvas .react-flow__node.ec-studio-node-selected .ec-scada-node-frame{outline:2px solid var(--ec-primary);outline-offset:4px}.ec-studio-canvas .react-flow__resize-control.handle{background:var(--ec-primary);border:1px solid #fff;border-radius:1px;width:7px;height:7px}.ec-studio-canvas .ec-scada-node-frame.is-studio-hidden{opacity:.35;filter:grayscale()}.ec-studio-canvas .react-flow__handle{border:2px solid var(--ec-bg-surface);background:var(--ec-primary);width:8px;height:8px}.ec-studio-minimap{border-radius:5px;border:1px solid var(--ec-border)!important;background:var(--ec-bg-surface)!important}.ec-scada-pipe-edge__core{stroke-width:var(--ec-scada-line-width,5)}.ec-scada-pipe-edge__interaction{fill:none;stroke:#0000;stroke-width:22px;pointer-events:stroke}.ec-studio-inspector{border-left:1px solid var(--ec-border);flex-direction:column;height:100%;display:flex;overflow:hidden}.ec-studio-inspector__tabs{border-bottom:1px solid var(--ec-border);background:var(--ec-bg-secondary);grid-template-columns:repeat(3,1fr);display:grid}.ec-studio-inspector__tabs button{height:39px;color:var(--ec-text-muted);background:0 0;border:0;justify-content:center;align-items:center;gap:4px;font-size:8px;display:flex;position:relative}.ec-studio-inspector__tabs button.active{color:var(--ec-primary);background:var(--ec-bg-surface)}.ec-studio-inspector__tabs button.active:after{content:"";background:var(--ec-primary);height:2px;position:absolute;bottom:0;left:9px;right:9px}.ec-studio-inspector__scroll{padding:13px}.ec-studio-inspector__heading{border:1px solid var(--ec-border-subtle);background:var(--ec-bg-secondary);border-radius:6px;margin-bottom:13px;padding:10px;position:relative}.ec-studio-inspector__heading strong{padding-right:60px;font-size:12px}.ec-studio-inspector__heading>span{color:var(--ec-primary);font:650 8px var(--font-geist-mono);position:absolute;top:18px;right:9px}.ec-studio-field,.ec-studio-new-form label{color:var(--ec-text-muted);gap:4px;margin:0 0 8px;font-size:9px;display:grid}.ec-studio-field .ec-input,.ec-studio-field .ec-select,.ec-studio-new-form .ec-input,.ec-studio-new-form .ec-select{height:31px;min-height:31px;font-size:9px}.ec-studio-field textarea,.ec-studio-new-form textarea{resize:vertical;border:1px solid var(--ec-border);background:var(--ec-bg-surface);min-height:68px;color:var(--ec-text-primary);font:inherit;border-radius:5px;padding:8px}.ec-studio-field-grid{gap:0 7px}.ec-studio-toggle-row{grid-template-columns:1fr 1fr;gap:6px;margin:3px 0 12px;display:grid}.ec-studio-toggle,.ec-studio-check-row{border:1px solid var(--ec-border);background:var(--ec-bg-surface);min-height:31px;color:var(--ec-text-muted);border-radius:5px;align-items:center;gap:6px;font-size:9px;display:flex}.ec-studio-toggle{justify-content:center}.ec-studio-toggle.is-active{border-color:var(--ec-primary)}@supports (color:color-mix(in lab, red, red)){.ec-studio-toggle.is-active{border-color:color-mix(in srgb, var(--ec-primary) 36%, var(--ec-border))}}.ec-studio-toggle.is-active{background:var(--ec-primary-soft);color:var(--ec-primary)}.ec-studio-check-row{margin-bottom:8px;padding:0 8px}.ec-studio-help,.ec-studio-empty-inline{color:var(--ec-text-muted);font-size:9px;line-height:1.5}.ec-studio-binding-summary,.ec-studio-binding-card,.ec-studio-binding-item{border:1px solid var(--ec-border-subtle);background:var(--ec-bg-secondary);border-radius:6px;gap:6px;display:grid}.ec-studio-binding-summary{margin-bottom:10px;padding:10px}.ec-studio-binding-summary strong{color:var(--ec-primary);font:650 20px var(--font-geist-mono)}.ec-studio-binding-summary small,.ec-studio-binding-card small{color:var(--ec-text-muted);font-size:8px}.ec-studio-binding-card{margin-bottom:8px;padding:10px}.ec-studio-binding-card>div:first-child{justify-content:space-between;align-items:center;display:flex}.ec-studio-binding-card label{color:var(--ec-text-muted);gap:4px;font-size:8px;display:grid}.ec-studio-tag-chip{border:1px solid var(--ec-primary);padding:7px;overflow:hidden}@supports (color:color-mix(in lab, red, red)){.ec-studio-tag-chip{border:1px solid color-mix(in srgb, var(--ec-primary) 28%, var(--ec-border))}}.ec-studio-tag-chip{background:var(--ec-primary-soft);color:var(--ec-primary);font:600 8px var(--font-geist-mono);text-align:left;text-overflow:ellipsis;border-radius:5px}.ec-studio-danger-link{color:var(--ec-danger);background:0 0;border:0;align-items:center;gap:5px;padding:0;font-size:8px;display:flex}.ec-studio-binding-item{grid-template-columns:minmax(0,1fr) 110px auto;align-items:center;padding:7px}.ec-studio-binding-item code,.ec-studio-binding-summary code{color:var(--ec-primary);text-overflow:ellipsis;font-size:8px;overflow:hidden}.ec-studio-layers-heading{justify-content:space-between;align-items:flex-start;display:flex}.ec-studio-layers-heading .ec-studio-inspector__heading{flex:1;margin-right:7px}.ec-studio-layer{border-bottom:1px solid var(--ec-border-subtle);grid-template-columns:16px minmax(0,1fr) repeat(5,22px);align-items:center;gap:2px;min-height:36px;display:grid}.ec-studio-layer__drag{color:var(--ec-text-subtle)}.ec-studio-layer input{min-width:0;color:var(--ec-text-secondary);background:0 0;border:0;font-size:9px}.ec-studio-layer button{place-items:center;width:23px;height:27px;display:grid}.ec-studio-statusbar{background:var(--ec-bg-surface);justify-content:space-between;min-height:31px;padding:0 10px}.ec-studio-statusbar>div,.ec-studio-statusbar label{align-items:center;gap:12px;display:flex}.ec-studio-statusbar>div>span+span{border-left:1px solid var(--ec-border-subtle);padding-left:12px}.ec-studio-statusbar__ready{color:var(--ec-success)}.ec-studio-statusbar label .ec-select{width:62px;height:23px;min-height:23px;padding:0 5px;font-size:8px}.ec-studio-statusbar button{color:var(--ec-text-muted);background:0 0;border:0;font-size:9px}.ec-studio-statusbar button.active{color:var(--ec-primary)}.ec-studio-preview{background:var(--ec-bg-subtle);min-height:0;padding:14px;position:relative}.ec-studio-preview .ec-supervisory-canvas{border:1px solid var(--ec-border);background:var(--ec-bg-canvas,var(--ec-bg-surface));border-radius:7px;height:100%}.ec-studio-preview__notice{z-index:5;border:1px solid var(--ec-primary);align-items:center;gap:6px;padding:7px 10px;display:flex;position:absolute;top:27px;left:27px}@supports (color:color-mix(in lab, red, red)){.ec-studio-preview__notice{border:1px solid color-mix(in srgb, var(--ec-primary) 28%, var(--ec-border))}}.ec-studio-preview__notice{background:var(--ec-bg-surface);color:var(--ec-primary);box-shadow:var(--ec-shadow);border-radius:999px;font-size:9px}.ec-studio-publish-dialog{gap:14px;display:grid}.ec-studio-version-flow{background:var(--ec-bg-secondary);color:var(--ec-text-muted);border-radius:7px;justify-content:center;align-items:center;gap:14px;padding:15px;display:flex}.ec-studio-version-flow span,.ec-studio-version-flow strong{border:1px solid var(--ec-border);background:var(--ec-bg-surface);border-radius:5px;padding:7px 10px;font-size:11px}.ec-studio-version-flow strong{border-color:var(--ec-success)}@supports (color:color-mix(in lab, red, red)){.ec-studio-version-flow strong{border-color:color-mix(in srgb, var(--ec-success) 32%, var(--ec-border))}}.ec-studio-version-flow strong{color:var(--ec-success)}.ec-studio-validation{gap:6px;display:grid}.ec-studio-validation h3{margin:0;font-size:11px}.ec-studio-validation p{background:var(--ec-warning-soft);color:var(--ec-warning);border-radius:5px;margin:0;padding:7px 9px;font-size:9px}.ec-studio-validation p.is-success{background:var(--ec-success-soft);color:var(--ec-success);align-items:center;gap:6px;display:flex}.ec-studio-validation p.is-error{background:var(--ec-danger-soft);color:var(--ec-danger)}.ec-studio-publish-dialog>footer,.ec-studio-new-form footer{justify-content:flex-end;gap:7px;display:flex}.ec-studio-list-page,.ec-studio-new-page,.ec-studio-versions-page{width:min(100%,1550px);margin:0 auto}.ec-studio-readonly{border:1px solid var(--ec-primary);align-items:center;gap:6px;padding:6px 9px;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.ec-studio-readonly{border:1px solid color-mix(in srgb, var(--ec-primary) 25%, var(--ec-border))}}.ec-studio-readonly{background:var(--ec-primary-soft);color:var(--ec-primary);border-radius:999px;font-size:9px;font-weight:650}.ec-studio-list-toolbar{border:1px solid var(--ec-border);background:var(--ec-bg-surface);border-radius:7px;justify-content:space-between;gap:10px;margin-bottom:10px;padding:9px;display:flex}.ec-studio-list-toolbar label{width:min(420px,55%);padding:0 9px}.ec-studio-list-toolbar .ec-select{width:170px}.ec-studio-table-wrap{border:1px solid var(--ec-border);background:var(--ec-bg-surface);border-radius:8px;overflow:auto}.ec-studio-table{border-collapse:collapse;width:100%;min-width:900px}.ec-studio-table th{border-bottom:1px solid var(--ec-border);background:var(--ec-bg-secondary);height:39px;color:var(--ec-text-muted);text-align:left;padding:0 13px;font-size:9px}.ec-studio-table td{border-bottom:1px solid var(--ec-border-subtle);height:62px;color:var(--ec-text-secondary);padding:8px 13px;font-size:10px}.ec-studio-table tr:last-child td{border-bottom:0}.ec-studio-table td>strong,.ec-studio-table td>span,.ec-studio-table td>code{display:block}.ec-studio-table td>strong{color:var(--ec-text-primary);font-size:11px}.ec-studio-table td>span,.ec-studio-table td>code{color:var(--ec-text-muted);margin-top:3px;font-size:8px}.ec-studio-row-actions{gap:3px;display:flex}.ec-studio-row-actions button{border:1px solid var(--ec-border-subtle);border-radius:5px;place-items:center;width:28px;height:28px;display:grid}.ec-studio-new-layout{grid-template-columns:minmax(0,1fr) 330px;gap:13px;display:grid}.ec-studio-template-section,.ec-studio-new-form,.ec-studio-version-summary,.ec-studio-timeline__card{border:1px solid var(--ec-border);background:var(--ec-bg-surface);border-radius:8px}.ec-studio-template-section{padding:14px}.ec-studio-template-section>header{align-items:center;gap:9px;margin-bottom:13px;display:flex}.ec-studio-template-section>header div{gap:2px;display:grid}.ec-studio-template-section>header strong{font-size:12px}.ec-studio-template-section>header span{color:var(--ec-text-muted);font-size:9px}.ec-studio-template-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;display:grid}.ec-studio-template-grid>button{border:1px solid var(--ec-border);background:var(--ec-bg-secondary);min-height:178px;color:var(--ec-text-primary);text-align:left;border-radius:7px;flex-direction:column;align-items:flex-start;gap:3px;padding:9px;display:flex}.ec-studio-template-grid>button.active{border-color:var(--ec-primary);box-shadow:0 0 0 2px var(--ec-primary-soft)}.ec-studio-template-grid>button strong{font-size:11px}.ec-studio-template-grid>button small,.ec-studio-template-grid>button p{color:var(--ec-text-muted);font-size:8px}.ec-studio-template-grid>button p{margin:2px 0 0;line-height:1.45}.ec-studio-template-preview{border:1px solid var(--ec-border-subtle);background-color:var(--ec-bg-canvas,var(--ec-bg-surface));background-image:radial-gradient(var(--ec-border) .6px, transparent .6px);background-size:12px 12px;border-radius:5px;width:100%;height:92px;margin-bottom:4px;display:block;position:relative;overflow:hidden}.ec-studio-template-preview i{border:2px solid var(--ec-scada-metal-deep);background:var(--ec-scada-metal);border-radius:4px;width:25px;height:25px;position:absolute}.ec-studio-template-preview i:first-child{top:35%;left:15%}.ec-studio-template-preview i:nth-child(2){border-radius:50%;top:22%;left:46%}.ec-studio-template-preview i:nth-child(3){top:45%;right:13%}.ec-studio-template-preview:after{content:"";background:var(--ec-scada-pipe);border-radius:3px;height:4px;position:absolute;top:51%;left:30%;right:25%}.ec-studio-template-preview.is-blank i,.ec-studio-template-preview.is-blank:after{display:none}.ec-studio-template-preview b{z-index:2;background:var(--ec-primary);color:#fff;border-radius:50%;place-items:center;width:21px;height:21px;display:grid;position:absolute;top:6px;right:6px}.ec-studio-new-form{align-self:start;padding:16px}.ec-studio-new-form h2{margin:4px 0;font-size:17px}.ec-studio-new-form>p{color:var(--ec-text-muted);margin:0 0 14px;font-size:9px;line-height:1.5}.ec-studio-version-summary{grid-template-columns:repeat(3,1fr);margin-bottom:14px;display:grid;overflow:hidden}.ec-studio-version-summary>div{border-right:1px solid var(--ec-border-subtle);gap:4px;padding:14px;display:grid}.ec-studio-version-summary>div:last-child{border-right:0}.ec-studio-version-summary span,.ec-studio-version-summary small{color:var(--ec-text-muted);font-size:8px}.ec-studio-version-summary strong{font-size:15px}.ec-studio-timeline{gap:12px;padding-left:42px;display:grid;position:relative}.ec-studio-timeline:before{content:"";background:var(--ec-border);width:1px;position:absolute;top:18px;bottom:18px;left:16px}.ec-studio-timeline article{position:relative}.ec-studio-timeline__marker{border:1px solid var(--ec-border);background:var(--ec-bg-surface);width:33px;height:33px;color:var(--ec-text-muted);border-radius:50%;place-items:center;display:grid;position:absolute;top:14px;left:-42px}.ec-studio-timeline article.is-current .ec-studio-timeline__marker{border-color:var(--ec-primary);background:var(--ec-primary-soft);color:var(--ec-primary)}.ec-studio-timeline__card{padding:14px}.ec-studio-timeline__card>header,.ec-studio-timeline__card>header>div,.ec-studio-timeline__card>footer{align-items:center;display:flex}.ec-studio-timeline__card>header{justify-content:space-between}.ec-studio-timeline__card>header>div{gap:8px}.ec-studio-timeline__card>header>span{color:var(--ec-success);font-size:9px}.ec-studio-timeline__card>p{color:var(--ec-text-secondary);font-size:10px}.ec-studio-timeline__card dl{gap:30px;display:flex}.ec-studio-timeline__card dl>div{gap:3px;display:grid}.ec-studio-timeline__card dt{color:var(--ec-text-muted);align-items:center;gap:5px;font-size:8px;display:flex}.ec-studio-timeline__card dd{color:var(--ec-text-secondary);margin:0;font-size:9px}.ec-studio-timeline__card>footer{justify-content:flex-end}.ec-studio-mobile-warning{display:none}@media (max-width:1260px){.ec-studio-align-tools{display:none}.ec-studio-workspace{grid-template-columns:185px minmax(390px,1fr) 280px}}@media (max-width:980px){.ec-studio-shell>:not(.ec-studio-mobile-warning){display:none}.ec-studio-shell{place-items:center;height:auto;min-height:440px;display:grid}.ec-studio-mobile-warning{max-width:420px;color:var(--ec-text-muted);text-align:center;place-items:center;gap:8px;padding:30px;display:grid}.ec-studio-mobile-warning strong{color:var(--ec-text-primary);font-size:15px}.ec-studio-new-layout{grid-template-columns:1fr}.ec-studio-template-grid{grid-template-columns:repeat(2,1fr)}}.ec-studio-shell{border:1px solid var(--ec-border-subtle);background:var(--ec-bg-canvas);min-height:calc(100vh - 92px);box-shadow:var(--ec-shadow-sm);border-radius:10px;grid-template-rows:auto 1fr auto;display:grid;overflow:hidden}.ec-studio-toolbar,.ec-studio-statusbar{border-bottom:1px solid var(--ec-border-subtle);background:var(--ec-bg-surface);align-items:center;gap:12px;min-height:54px;padding:8px 12px;display:flex}.ec-studio-toolbar__identity{line-height:1.1;display:grid}.ec-studio-toolbar__identity small,.ec-studio-library>small,.ec-studio-properties>small{color:var(--ec-text-subtle);letter-spacing:.08em;font-size:9px}.ec-studio-toolbar__identity span{color:var(--ec-text-muted);font-size:10px}.ec-studio-toolbar__tools{gap:5px;margin-left:auto;display:flex}.ec-studio-workspace{grid-template-columns:240px minmax(480px,1fr) 280px;min-height:690px;display:grid}.ec-studio-library,.ec-studio-properties{background:var(--ec-bg-surface);padding:12px;overflow:auto}.ec-studio-library{border-right:1px solid var(--ec-border-subtle)}.ec-studio-properties{border-left:1px solid var(--ec-border-subtle)}.ec-studio-panel-title{align-items:center;gap:7px;margin-bottom:12px;display:flex}.ec-studio-symbol-card{border:1px solid var(--ec-border-subtle);background:var(--ec-bg-raised);width:100%;min-height:76px;color:var(--ec-text);text-align:left;border-radius:7px;grid-template-columns:74px 1fr;align-items:center;gap:8px;margin-top:8px;padding:8px;display:grid}.ec-studio-symbol-card:hover{border-color:var(--ec-primary)}.ec-studio-symbol-card svg{width:70px;height:54px}.ec-studio-symbol-card span{gap:4px;display:grid}.ec-studio-symbol-card small{color:var(--ec-text-muted);font-size:8px}.ec-studio-canvas-wrap{background:var(--ec-bg-subtle);padding:12px;overflow:auto}.ec-studio-canvas-placeholder{border:1px solid var(--ec-border-strong);background-color:var(--ec-bg-canvas);background-image:radial-gradient(var(--ec-border-strong) .7px, transparent .7px);background-size:20px 20px;min-width:900px;min-height:650px;position:relative}.ec-studio-canvas-placeholder__title{color:var(--ec-text-muted);font:700 11px var(--font-geist-mono);padding:12px}.ec-studio-slice-tank,.ec-studio-slice-pump{z-index:2;border:2px solid var(--ec-primary);background:var(--ec-bg-surface);box-shadow:var(--ec-shadow-sm);border-radius:6px;place-items:center;gap:4px;padding:9px;display:grid;position:absolute}.ec-studio-slice-tank{width:180px;height:230px;top:150px;left:180px}.ec-studio-slice-pump{border-color:var(--ec-border-strong);width:180px;height:120px;top:205px;left:540px}.ec-studio-slice-tank svg{height:180px}.ec-studio-slice-pump svg{width:145px}.ec-studio-slice-pipe{border:2px solid var(--ec-scada-pipe-outline);background:var(--ec-scada-pipe);border-radius:6px;width:180px;height:10px;position:absolute;top:264px;left:360px}.ec-studio-properties label{color:var(--ec-text-muted);gap:5px;margin-top:10px;font-size:10px;display:grid}.ec-studio-field-grid{grid-template-columns:1fr 1fr;gap:0 8px;display:grid}.ec-studio-binding-preview{border-top:1px solid var(--ec-border-subtle);gap:6px;margin-top:18px;padding-top:14px;display:grid}.ec-studio-binding-preview code{background:var(--ec-bg-subtle);color:var(--ec-primary);border-radius:5px;padding:7px;font-size:9px;overflow:hidden}.ec-studio-statusbar{border-top:1px solid var(--ec-border-subtle);min-height:32px;color:var(--ec-text-muted);border-bottom:0;justify-content:flex-end;font-size:9px}:root{--ec-scada-normal:#278764;--ec-scada-warning:#b77919;--ec-scada-critical:#c84c58;--ec-scada-offline:#7c8992;--ec-scada-maintenance:#397bb7;--ec-scada-stopped:#65737c;--ec-scada-pipe:#4b98ad;--ec-scada-pipe-outline:#c6d5db;--ec-scada-liquid:#4f9fbd;--ec-scada-liquid-deep:#367f9f;--ec-scada-surface:#f8fbfc;--ec-scada-surface-raised:#fff;--ec-scada-metal:#dbe4e8;--ec-scada-metal-deep:#9aaab2;--ec-scada-shadow:#1c2e3824;--ec-scada-border:#b9c8cf;--ec-scada-label:#32434d;--ec-scada-highlight:#ffffffc2;--ec-scada-state-color:var(--ec-scada-offline)}:root[data-theme=dark]{--ec-scada-normal:#55bd8d;--ec-scada-warning:#d5a043;--ec-scada-critical:#ef727d;--ec-scada-offline:#84949d;--ec-scada-maintenance:#68a6dc;--ec-scada-stopped:#91a0a8;--ec-scada-pipe:#5ca5ba;--ec-scada-pipe-outline:#253a44;--ec-scada-liquid:#438fae;--ec-scada-liquid-deep:#2d6e8b;--ec-scada-surface:#111c22;--ec-scada-surface-raised:#16242b;--ec-scada-metal:#52636b;--ec-scada-metal-deep:#83929a;--ec-scada-shadow:#00000047;--ec-scada-border:#354851;--ec-scada-label:#d4dfe3;--ec-scada-highlight:#ffffff24}.ec-scada-node.is-symbol-pack-v1{border-color:var(--ec-scada-border);background:linear-gradient(145deg, var(--ec-scada-surface-raised), var(--ec-scada-surface));box-shadow:0 5px 12px var(--ec-scada-shadow), inset 0 1px 0 var(--ec-scada-highlight);border-radius:7px;justify-content:flex-start;gap:5px;padding:9px 10px}.ec-scada-node.is-symbol-pack-v1.is-critical{border-color:var(--ec-scada-critical)}@supports (color:color-mix(in lab, red, red)){.ec-scada-node.is-symbol-pack-v1.is-critical{border-color:color-mix(in srgb, var(--ec-scada-critical) 74%, var(--ec-scada-border))}}.ec-scada-node.is-symbol-pack-v1.is-critical{background:linear-gradient(145deg, var(--ec-scada-surface-raised), var(--ec-scada-critical))}@supports (color:color-mix(in lab, red, red)){.ec-scada-node.is-symbol-pack-v1.is-critical{background:linear-gradient(145deg, var(--ec-scada-surface-raised), color-mix(in srgb, var(--ec-scada-critical) 8%, var(--ec-scada-surface)))}}.ec-scada-node.is-symbol-pack-v1.is-warning{border-color:var(--ec-scada-warning)}@supports (color:color-mix(in lab, red, red)){.ec-scada-node.is-symbol-pack-v1.is-warning{border-color:color-mix(in srgb, var(--ec-scada-warning) 68%, var(--ec-scada-border))}}.ec-scada-node.is-symbol-pack-v1 .ec-scada-node__heading{align-items:center;width:100%;min-height:25px}.ec-scada-node.is-symbol-pack-v1 .ec-scada-node__heading strong{color:var(--ec-scada-label);letter-spacing:.005em;font-size:10px}.ec-scada-node.is-symbol-pack-v1 .ec-scada-node__heading small{font-size:7px}.ec-scada-node.is-symbol-pack-v1 .ec-scada-handle{border-color:var(--ec-scada-surface-raised)!important;background:var(--ec-scada-pipe)!important;width:8px!important;height:8px!important}.ec-scada-symbol{color:var(--ec-scada-state-color);shape-rendering:geometricprecision;display:block;overflow:visible}.ec-scada-symbol.is-running,.ec-scada-symbol.is-open,.ec-scada-symbol.is-online,.ec-scada-symbol.is-normal,.ec-scada-symbol.is-available{--ec-scada-state-color:var(--ec-scada-normal)}.ec-scada-symbol.is-stopped,.ec-scada-symbol.is-closed,.ec-scada-symbol.is-idle{--ec-scada-state-color:var(--ec-scada-stopped)}.ec-scada-symbol.is-fault,.ec-scada-symbol.is-critical,.ec-scada-symbol.is-unavailable,.ec-scada-symbol.is-offline{--ec-scada-state-color:var(--ec-scada-critical)}.ec-scada-symbol.is-maintenance,.ec-scada-symbol.is-opening,.ec-scada-symbol.is-closing{--ec-scada-state-color:var(--ec-scada-maintenance)}.ec-scada-symbol.is-warning{--ec-scada-state-color:var(--ec-scada-warning)}.ec-equipment-base,.ec-equipment-pipe{fill:none;stroke:var(--ec-scada-metal-deep);stroke-linecap:round;stroke-linejoin:round}.ec-equipment-pipe{stroke-width:6px}.ec-equipment-base{stroke-width:3px}.ec-equipment-accent{fill:none;stroke:var(--ec-scada-highlight);stroke-width:2px}.ec-scada-equipment-v1,.ec-scada-flow-v1,.ec-scada-sensor-v1,.ec-scada-status-v1,.ec-scada-gateway-v1,.ec-scada-lighting-v1,.ec-scada-alarm-indicator-v1{align-content:center;justify-items:center;gap:2px;width:100%;min-height:0;display:grid}.ec-scada-equipment-v1 .ec-scada-symbol{width:min(100%,124px);height:48px}.ec-scada-node--motor .ec-scada-equipment-v1 .ec-scada-symbol,.ec-scada-node--fan .ec-scada-equipment-v1 .ec-scada-symbol{height:55px}.ec-scada-state-label{color:var(--ec-scada-label);letter-spacing:.02em;font-size:8px;font-weight:750}.ec-pump-visual__motor path:first-child,.ec-motor-visual__body,.ec-motor-visual__rear,.ec-motor-visual__terminal,.ec-motor-visual__shaft{fill:var(--ec-scada-metal);stroke:var(--ec-scada-metal-deep);stroke-width:2px;stroke-linejoin:round}.ec-pump-visual__motor>path:not(:first-child),.ec-motor-visual__fins,.ec-motor-visual__fan,.ec-pump-visual__rotor{fill:none;stroke:var(--ec-scada-state-color);stroke-width:2px;stroke-linecap:round;stroke-linejoin:round}.ec-pump-visual__volute{fill:var(--ec-scada-state-color)}@supports (color:color-mix(in lab, red, red)){.ec-pump-visual__volute{fill:color-mix(in srgb, var(--ec-scada-state-color) 12%, var(--ec-scada-metal))}}.ec-pump-visual__volute{stroke:var(--ec-scada-state-color);stroke-width:3px;stroke-linejoin:round}.ec-pump-visual__coupling{fill:var(--ec-scada-metal-deep);stroke:var(--ec-scada-border);stroke-width:1px}.ec-pump-visual__rotor circle{fill:var(--ec-scada-surface-raised)}.ec-pump-visual__rotor path,.ec-motor-visual__fan path{fill:var(--ec-scada-state-color);stroke:none}.ec-pump-visual[data-motion=active] .ec-pump-visual__rotor,.ec-motor-visual[data-motion=active] .ec-motor-visual__fan,.ec-fan-visual[data-motion=active] .ec-fan-visual__blades{transform-box:fill-box;transform-origin:50%;animation:2.2s linear infinite ec-scada-rotor}.ec-fan-visual__housing,.ec-fan-visual__guard{fill:var(--ec-scada-metal)}@supports (color:color-mix(in lab, red, red)){.ec-fan-visual__housing,.ec-fan-visual__guard{fill:color-mix(in srgb, var(--ec-scada-metal) 65%, var(--ec-scada-surface))}}.ec-fan-visual__housing,.ec-fan-visual__guard{stroke:var(--ec-scada-metal-deep);stroke-width:3px}.ec-fan-visual__guard{fill:var(--ec-scada-surface-raised);stroke-width:1.5px}.ec-fan-visual__blades,.ec-valve-visual__body{fill:var(--ec-scada-state-color)}@supports (color:color-mix(in lab, red, red)){.ec-valve-visual__body{fill:color-mix(in srgb, var(--ec-scada-state-color) 12%, var(--ec-scada-surface-raised))}}.ec-valve-visual__body{stroke:var(--ec-scada-state-color);stroke-width:3px;stroke-linejoin:round}.ec-valve-visual__stem{fill:none;stroke:var(--ec-scada-metal-deep);stroke-width:3px}.ec-valve-visual__actuator{fill:var(--ec-scada-metal);stroke:var(--ec-scada-metal-deep);stroke-width:2px}.ec-valve-visual__position{fill:var(--ec-scada-state-color)}.ec-valve-visual[data-motion=active] .ec-valve-visual__actuator{animation:1.6s ease-in-out infinite alternate ec-scada-valve-travel}.ec-scada-tank-v1{flex:1;place-items:center;width:100%;min-height:0;display:grid;position:relative}.ec-scada-tank-v1 .ec-tank-visual{width:100%;height:178px}.ec-tank-visual__shell,.ec-tank-visual__rim,.ec-tank-visual__stand{fill:var(--ec-scada-metal);stroke:var(--ec-scada-metal-deep);stroke-width:2.4px;stroke-linecap:round;stroke-linejoin:round}.ec-tank-visual__stand{fill:none;stroke-width:3px}.ec-tank-visual__back{fill:var(--ec-scada-surface);stroke:var(--ec-scada-border)}@supports (color:color-mix(in lab, red, red)){.ec-tank-visual__back{stroke:color-mix(in srgb, var(--ec-scada-border) 72%, transparent)}}.ec-tank-visual__back{stroke-width:1px}.ec-tank-visual__liquid rect,.ec-tank-visual__liquid path{fill:var(--ec-scada-liquid)}.ec-tank-visual__liquid rect{fill:var(--ec-scada-liquid-deep)}@supports (color:color-mix(in lab, red, red)){.ec-tank-visual__liquid rect{fill:color-mix(in srgb, var(--ec-scada-liquid-deep) 76%, var(--ec-scada-liquid))}}.ec-tank-visual__liquid{transition:transform .46s}.ec-tank-visual__highlight,.ec-tank-visual__scale,.ec-tank-visual__no-data{fill:none;stroke:var(--ec-scada-highlight);stroke-width:2px;stroke-linecap:round}.ec-tank-visual__scale{stroke:var(--ec-scada-metal-deep);stroke-width:1.5px}.ec-tank-visual__no-data{stroke:var(--ec-scada-offline);stroke-dasharray:4 5;opacity:.48}.ec-scada-tank-v1__reading{border:1px solid var(--ec-scada-border);justify-items:center;gap:2px;padding:5px 7px;display:grid;position:absolute;inset:auto 20px 32px}@supports (color:color-mix(in lab, red, red)){.ec-scada-tank-v1__reading{border:1px solid color-mix(in srgb, var(--ec-scada-border) 72%, transparent)}}.ec-scada-tank-v1__reading{background:var(--ec-scada-surface-raised);border-radius:5px}@supports (color:color-mix(in lab, red, red)){.ec-scada-tank-v1__reading{background:color-mix(in srgb, var(--ec-scada-surface-raised) 78%, transparent)}}.ec-scada-tank-v1__reading{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.ec-scada-tank-v1__reading strong{color:var(--ec-scada-label);font:800 17px var(--font-geist-mono)}.ec-scada-tank-v1__reading small{color:var(--text-muted);font-size:7px}.ec-scada-tank-v1.is-no-data .ec-scada-tank-v1__reading strong{color:var(--ec-scada-offline);font:750 10px var(--font-geist-sans)}.ec-scada-flow-v1 .ec-flow-visual{width:100%;height:31px}.ec-flow-visual__outline,.ec-flow-visual__channel{fill:var(--ec-scada-surface);stroke:var(--ec-scada-pipe-outline);stroke-width:3px;stroke-linejoin:round}.ec-flow-visual__channel{fill:var(--ec-scada-pipe)}@supports (color:color-mix(in lab, red, red)){.ec-flow-visual__channel{fill:color-mix(in srgb, var(--ec-scada-pipe) 12%, var(--ec-scada-surface))}}.ec-flow-visual__channel{stroke:var(--ec-scada-pipe);stroke-width:1.5px}.ec-flow-visual__arrows{fill:none;stroke:var(--ec-scada-state-color);stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;opacity:.68}.ec-flow-visual.is-left .ec-flow-visual__arrows{transform-box:fill-box;transform-origin:50%;transform:rotate(180deg)}.ec-flow-visual[data-motion=active] .ec-flow-visual__arrows{animation:1.8s linear infinite ec-scada-flow-dashes}.ec-scada-flow-v1>strong,.ec-scada-sensor-v1>strong,.ec-scada-value-v1>strong{color:var(--ec-scada-label);font:780 16px var(--font-geist-mono);letter-spacing:-.03em}.ec-scada-sensor-v1{grid-template-columns:44px 1fr;justify-items:stretch;gap:6px}.ec-scada-sensor-v1 .ec-sensor-visual{width:48px;height:39px}.ec-sensor-visual__body,.ec-sensor-visual__probe{fill:var(--ec-scada-metal);stroke:var(--ec-scada-metal-deep);stroke-width:2px;stroke-linecap:round;stroke-linejoin:round}.ec-sensor-visual__face{fill:var(--ec-scada-surface-raised);stroke:var(--ec-scada-border);stroke-width:1.5px}.ec-sensor-visual__glyph{fill:none;stroke:var(--ec-scada-state-color);stroke-width:2.5px;stroke-linecap:round;stroke-linejoin:round}.ec-scada-value-v1{grid-template-columns:38px 1fr;align-items:center;gap:7px;width:100%;display:grid}.ec-value-glyph{border:1px solid var(--ec-scada-pipe);width:36px;height:27px;padding:4px}@supports (color:color-mix(in lab, red, red)){.ec-value-glyph{border:1px solid color-mix(in srgb, var(--ec-scada-pipe) 32%, var(--ec-scada-border))}}.ec-value-glyph{background:var(--ec-scada-pipe);border-radius:5px}@supports (color:color-mix(in lab, red, red)){.ec-value-glyph{background:color-mix(in srgb, var(--ec-scada-pipe) 8%, var(--ec-scada-surface))}}.ec-value-glyph{fill:none;stroke:var(--ec-scada-pipe);stroke-width:2.2px;stroke-linecap:round;stroke-linejoin:round}.ec-value-glyph.is-energy{fill:var(--ec-scada-warning)}@supports (color:color-mix(in lab, red, red)){.ec-value-glyph.is-energy{fill:color-mix(in srgb, var(--ec-scada-warning) 16%, transparent)}}.ec-value-glyph.is-energy{stroke:var(--ec-scada-warning)}.ec-value-glyph.is-alarm{width:31px;fill:var(--ec-scada-critical)}@supports (color:color-mix(in lab, red, red)){.ec-value-glyph.is-alarm{fill:color-mix(in srgb, var(--ec-scada-critical) 12%, transparent)}}.ec-value-glyph.is-alarm{stroke:var(--ec-scada-critical)}.ec-scada-state-v1{border:1px solid var(--ec-scada-border);background:var(--ec-scada-surface);border-radius:5px;align-items:center;gap:8px;width:100%;padding:6px 8px;display:flex}.ec-scada-state-v1__indicator{border:2px solid var(--ec-scada-surface-raised);background:var(--ec-scada-offline);width:10px;height:10px;box-shadow:0 0 0 1px var(--ec-scada-border);border-radius:50%;flex:none}.ec-scada-state-v1.is-normal .ec-scada-state-v1__indicator{background:var(--ec-scada-normal)}.ec-scada-state-v1.is-warning .ec-scada-state-v1__indicator{background:var(--ec-scada-warning)}.ec-scada-state-v1.is-critical .ec-scada-state-v1__indicator{background:var(--ec-scada-critical)}.ec-scada-status-v1 .ec-status-beacon-visual{width:45px;height:38px}.ec-status-beacon-visual__base,.ec-status-beacon-visual__housing{fill:var(--ec-scada-metal);stroke:var(--ec-scada-metal-deep);stroke-width:2px;stroke-linejoin:round}.ec-status-beacon-visual__lens{fill:var(--ec-scada-state-color)}@supports (color:color-mix(in lab, red, red)){.ec-status-beacon-visual__lens{fill:color-mix(in srgb, var(--ec-scada-state-color) 72%, var(--ec-scada-surface-raised))}}.ec-status-beacon-visual__lens{stroke:var(--ec-scada-state-color);stroke-width:2px}.ec-status-beacon-visual__highlight{fill:none;stroke:var(--ec-scada-highlight);stroke-width:2px;stroke-linecap:round}.ec-scada-gateway-v1 .ec-gateway-visual{width:100%;height:54px}.ec-gateway-visual__rack{fill:var(--ec-scada-metal);stroke:var(--ec-scada-metal-deep);stroke-width:2px}.ec-gateway-visual__panel{fill:var(--ec-scada-surface-raised);stroke:var(--ec-scada-border);stroke-width:1.5px}.ec-gateway-visual__antenna,.ec-gateway-visual__vents{fill:none;stroke:var(--ec-scada-metal-deep);stroke-width:2px;stroke-linecap:round}.ec-gateway-visual__led{fill:var(--ec-scada-state-color)}.ec-gateway-visual__led.is-secondary{fill:var(--ec-scada-maintenance)}.ec-scada-lighting-v1 .ec-scada-symbol{width:100%;height:63px}.ec-lighting-circuit-visual__breaker,.ec-lighting-circuit-visual__fixture,.ec-luminaire-visual__housing,.ec-luminaire-visual__mount{fill:var(--ec-scada-metal);stroke:var(--ec-scada-metal-deep);stroke-width:2px;stroke-linecap:round;stroke-linejoin:round}.ec-lighting-circuit-visual__switch,.ec-lighting-circuit-visual__line,.ec-lighting-circuit-visual__light,.ec-luminaire-visual__rays{fill:none;stroke:var(--ec-scada-state-color);stroke-width:2.5px;stroke-linecap:round}.ec-lighting-circuit-visual__level{fill:var(--ec-scada-border)}.ec-lighting-circuit-visual__level-fill,.ec-luminaire-visual__lens{fill:var(--ec-scada-state-color)}@supports (color:color-mix(in lab, red, red)){.ec-luminaire-visual__lens{fill:color-mix(in srgb, var(--ec-scada-state-color) 22%, var(--ec-scada-surface-raised))}}.ec-luminaire-visual__lens{stroke:var(--ec-scada-state-color);stroke-width:2px}.ec-scada-node--group.is-symbol-pack-v1{justify-content:center}.ec-scada-node--group .ec-distribution-visual{width:100%;height:80px}.ec-distribution-visual__main,.ec-distribution-visual__branches{fill:none;stroke:var(--ec-scada-pipe);stroke-width:8px;stroke-linecap:round;stroke-linejoin:round}.ec-distribution-visual circle{fill:var(--ec-scada-surface-raised);stroke:var(--ec-scada-pipe);stroke-width:3px}.ec-distribution-visual__flow{fill:none;stroke:var(--ec-scada-highlight);stroke-width:2px;stroke-linecap:round;stroke-linejoin:round}.ec-scada-alarm-indicator-v1{grid-template-columns:auto 1fr;justify-items:start;gap:6px}.ec-scada-alarm-marker{border:2px solid var(--ec-scada-surface-raised);color:#fff;background:var(--ec-scada-warning);min-width:31px;min-height:25px;box-shadow:0 3px 7px var(--ec-scada-shadow);border-radius:6px;justify-content:center;padding:4px 6px;top:-9px;right:-9px}.ec-scada-alarm-marker svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:13px;height:13px}.ec-scada-alarm-marker strong{font:800 8px var(--font-geist-mono)}.ec-scada-pipe-edge path{fill:none;pointer-events:none;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}.ec-scada-pipe-edge__outline{stroke:var(--ec-scada-pipe-outline);stroke-width:9px}.ec-scada-pipe-edge__core{stroke:var(--ec-scada-pipe);stroke-width:5px}.ec-scada-pipe-edge__flow{stroke:var(--ec-scada-highlight);stroke-width:1.7px;stroke-dasharray:7 13;opacity:.7}.ec-scada-pipe-edge.is-electrical .ec-scada-pipe-edge__core{stroke:var(--ec-scada-warning)}.ec-scada-pipe-edge.is-data .ec-scada-pipe-edge__core{stroke:var(--ec-scada-maintenance);stroke-dasharray:5 5}.ec-scada-pipe-edge.is-air .ec-scada-pipe-edge__core{stroke:var(--ec-scada-offline)}.ec-scada-pipe-edge.is-gas .ec-scada-pipe-edge__core{stroke:var(--ec-scada-warning)}.ec-scada-pipe-edge[data-motion=active] .ec-scada-pipe-edge__flow{animation:2.3s linear infinite ec-scada-pipe-flow}@keyframes ec-scada-rotor{to{transform:rotate(360deg)}}@keyframes ec-scada-valve-travel{0%{transform:translateY(0)}to{transform:translateY(3px)}}@keyframes ec-scada-flow-dashes{50%{opacity:.38;transform:translate(2px)}}@keyframes ec-scada-pipe-flow{to{stroke-dashoffset:-40px}}@media (prefers-reduced-motion:reduce){.ec-scada-symbol[data-motion=active] *,.ec-scada-pipe-edge[data-motion=active] .ec-scada-pipe-edge__flow{animation:none!important}.ec-tank-visual__liquid,.ec-lighting-circuit-visual__level-fill{transition:none!important}}.ec-supervisory-list,.ec-supervisory-viewer{width:min(100%,1680px);margin:0 auto}.ec-supervisory-safe,.ec-supervisory-readonly,.ec-supervisory-live{border:1px solid var(--border);min-height:30px;color:var(--text-secondary);background:var(--surface);white-space:nowrap;border-radius:999px;align-items:center;gap:7px;padding:6px 10px;font-size:10px;font-weight:700;display:inline-flex}.ec-supervisory-live i{background:var(--unknown);border-radius:50%;width:7px;height:7px}.ec-supervisory-live.is-realtime{color:var(--success);border-color:var(--success)}@supports (color:color-mix(in lab, red, red)){.ec-supervisory-live.is-realtime{border-color:color-mix(in srgb, var(--success) 28%, var(--border))}}.ec-supervisory-live.is-realtime{background:var(--success-soft)}.ec-supervisory-live.is-realtime i{background:var(--success);box-shadow:0 0 0 4px var(--success)}@supports (color:color-mix(in lab, red, red)){.ec-supervisory-live.is-realtime i{box-shadow:0 0 0 4px color-mix(in srgb, var(--success) 13%, transparent)}}.ec-supervisory-live.is-polling{color:var(--warning);background:var(--warning-soft)}.ec-supervisory-live.is-simulation{color:#2966a3;border-color:#4287c7}@supports (color:color-mix(in lab, red, red)){.ec-supervisory-live.is-simulation{border-color:color-mix(in srgb, #4287c7 30%, var(--border))}}.ec-supervisory-live.is-simulation{background:#4287c7}@supports (color:color-mix(in lab, red, red)){.ec-supervisory-live.is-simulation{background:color-mix(in srgb, #4287c7 10%, var(--surface))}}.ec-supervisory-live.is-simulation i{background:#4287c7;box-shadow:0 0 0 4px #4287c71f}.ec-supervisory-live.is-disconnected{color:var(--danger);border-color:var(--danger)}@supports (color:color-mix(in lab, red, red)){.ec-supervisory-live.is-disconnected{border-color:color-mix(in srgb, var(--danger) 30%, var(--border))}}.ec-supervisory-live.is-disconnected{background:var(--danger-soft)}.ec-supervisory-live.is-disconnected i{background:var(--danger)}.ec-supervisory-live em{opacity:.78;border-left:1px solid;padding-left:7px;font-size:8px;font-style:normal}.ec-supervisory-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.ec-supervisory-card{cursor:pointer;transition:border-color .16s,box-shadow .16s,transform .16s;overflow:hidden}.ec-supervisory-card:hover{border-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.ec-supervisory-card:hover{border-color:color-mix(in srgb, var(--primary) 50%, var(--border))}}.ec-supervisory-card:hover{box-shadow:var(--shadow);transform:translateY(-2px)}.ec-supervisory-card__preview{height:126px;color:var(--primary);align-content:center;place-items:center;gap:8px;display:grid}@supports (color:color-mix(in lab, red, red)){.ec-supervisory-card__preview{color:color-mix(in srgb, var(--primary) 78%, var(--text))}}.ec-supervisory-card__preview{background:linear-gradient(#18aaa612 1px, transparent 1px), linear-gradient(90deg, #18aaa612 1px, transparent 1px), linear-gradient(145deg, var(--surface), var(--background-subtle));border-bottom:1px solid var(--border-soft);background-size:22px 22px,22px 22px,100% 100%}.ec-supervisory-card__preview svg{stroke-width:1.45px;width:34px;height:34px}.ec-supervisory-card__preview span{color:var(--text-muted);font:600 9px var(--font-geist-mono);letter-spacing:.1em;text-transform:uppercase}.ec-supervisory-card__content{gap:14px;padding:17px;display:grid}.ec-supervisory-card__heading{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.ec-supervisory-card__heading>div{gap:3px;display:grid}.ec-supervisory-card__heading strong{font-size:15px}.ec-supervisory-card__heading small,.ec-supervisory-card dl dt{color:var(--text-muted);font-size:10px}.ec-supervisory-card dl{grid-template-columns:1fr 1fr;gap:10px;margin:0;display:grid}.ec-supervisory-card dl div{gap:3px;display:grid}.ec-supervisory-card dl dt,.ec-supervisory-card dl dd{align-items:center;gap:5px;margin:0;display:flex}.ec-supervisory-card dl dd{color:var(--text-secondary);font-size:11px;font-weight:650}.ec-supervisory-card__content>button{border:0;border-top:1px solid var(--border-soft);color:var(--primary-strong);background:0 0;justify-content:space-between;align-items:center;padding:10px 0 0;font-size:11px;font-weight:700;display:inline-flex}.ec-supervisory-toolbar{z-index:6;border:1px solid var(--border);background:var(--surface);border-radius:8px;align-items:center;gap:9px;min-height:50px;margin-bottom:10px;padding:8px 10px;display:flex;position:relative;box-shadow:0 3px 14px #111d240d}.ec-supervisory-context-notice{border:1px solid var(--warning);align-items:center;gap:11px;margin-bottom:10px;padding:10px 12px;display:flex}@supports (color:color-mix(in lab, red, red)){.ec-supervisory-context-notice{border:1px solid color-mix(in srgb, var(--warning) 40%, var(--border))}}.ec-supervisory-context-notice{color:var(--text-secondary);background:var(--warning-soft);border-radius:8px}@supports (color:color-mix(in lab, red, red)){.ec-supervisory-context-notice{background:color-mix(in srgb, var(--warning-soft) 76%, var(--surface))}}.ec-supervisory-context-notice>svg{color:var(--warning);flex:none}.ec-supervisory-context-notice div{gap:2px;display:grid}.ec-supervisory-context-notice strong{font-size:10px}.ec-supervisory-context-notice span{color:var(--text-muted);font-size:9px;line-height:1.4}.ec-supervisory-toolbar__view{align-items:center;gap:7px;display:flex}.ec-supervisory-toolbar__view label{color:var(--text-muted);letter-spacing:.07em;text-transform:uppercase;font-size:9px;font-weight:700}.ec-supervisory-toolbar__view .ec-select{min-width:194px;min-height:32px;padding-top:5px;padding-bottom:5px}.ec-supervisory-toolbar__actions{align-items:center;gap:5px;margin-left:auto;display:flex}.ec-supervisory-toolbar__actions .ec-button{min-width:32px;min-height:32px;padding-inline:8px}.ec-supervisory-toolbar__actions .is-spinning{animation:.8s linear infinite slow-spin}.ec-layer-selector{position:relative}.ec-layer-selector__menu{z-index:30;border:1px solid var(--border);background:var(--surface-raised);width:210px;box-shadow:var(--shadow);border-radius:8px;padding:10px;position:absolute;top:calc(100% + 7px);right:0}.ec-layer-selector__menu>strong{letter-spacing:.04em;margin:1px 5px 7px;font-size:10px;display:block}.ec-layer-selector__menu label{color:var(--text-secondary);cursor:pointer;align-items:center;gap:8px;padding:7px 5px;font-size:11px;display:flex}.ec-layer-selector__menu label:hover{background:var(--surface-hover)}.ec-layer-selector__menu input{accent-color:var(--primary)}.ec-supervisory-stage{border:1px solid var(--border);background:var(--surface);border-radius:9px;height:calc(100vh - 282px);min-height:640px;position:relative;overflow:hidden;box-shadow:0 4px 18px #111d240d}.ec-supervisory-stage__meta{z-index:5;pointer-events:none;justify-content:space-between;display:flex;position:absolute;top:10px;left:12px;right:12px}.ec-supervisory-stage__meta span{border:1px solid var(--border-soft);color:var(--text-muted);background:var(--surface);border-radius:5px;padding:5px 8px}@supports (color:color-mix(in lab, red, red)){.ec-supervisory-stage__meta span{background:color-mix(in srgb, var(--surface) 88%, transparent)}}.ec-supervisory-stage__meta span{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);font:600 9px var(--font-geist-mono)}.ec-supervisory-canvas{background:radial-gradient(circle at 50% 42%, var(--primary), transparent 43%), var(--background-subtle);width:100%;height:100%}@supports (color:color-mix(in lab, red, red)){.ec-supervisory-canvas{background:radial-gradient(circle at 50% 42%, color-mix(in srgb, var(--primary) 3%, transparent), transparent 43%), var(--background-subtle)}}.ec-supervisory-canvas .react-flow__pane{cursor:grab}.ec-supervisory-canvas .react-flow__pane:active{cursor:grabbing}.ec-supervisory-canvas .react-flow__node{cursor:pointer}.ec-supervisory-canvas .react-flow__node.selected .ec-scada-node{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft), 0 8px 20px #0d4d4d21}.ec-supervisory-edge .react-flow__edge-path{stroke:#61a9bb}.ec-supervisory-edge.is-water .react-flow__edge-path{stroke:#3995b6}.ec-supervisory-edge.is-electrical .react-flow__edge-path{stroke:#d39b32}.ec-supervisory-edge.is-data .react-flow__edge-path{stroke:#7c78b8;stroke-dasharray:7 5}.ec-scada-node{border:1px solid var(--border);flex-direction:column;justify-content:center;gap:7px;width:100%;height:100%;padding:11px 12px;display:flex;position:relative;overflow:visible}@supports (color:color-mix(in lab, red, red)){.ec-scada-node{border:1px solid color-mix(in srgb, var(--border) 88%, var(--text-muted))}}.ec-scada-node{color:var(--text);background:var(--surface);border-radius:8px}@supports (color:color-mix(in lab, red, red)){.ec-scada-node{background:color-mix(in srgb, var(--surface) 97%, var(--primary) 3%)}}.ec-scada-node{font-family:var(--font-geist-sans);box-shadow:0 4px 12px #14232b14}.ec-scada-node.is-warning{border-color:var(--warning)}@supports (color:color-mix(in lab, red, red)){.ec-scada-node.is-warning{border-color:color-mix(in srgb, var(--warning) 62%, var(--border))}}.ec-scada-node.is-warning{background:var(--surface)}@supports (color:color-mix(in lab, red, red)){.ec-scada-node.is-warning{background:color-mix(in srgb, var(--surface) 92%, var(--warning) 8%)}}.ec-scada-node.is-critical{border-color:var(--danger)}@supports (color:color-mix(in lab, red, red)){.ec-scada-node.is-critical{border-color:color-mix(in srgb, var(--danger) 72%, var(--border))}}.ec-scada-node.is-critical{background:var(--surface)}@supports (color:color-mix(in lab, red, red)){.ec-scada-node.is-critical{background:color-mix(in srgb, var(--surface) 92%, var(--danger) 8%)}}.ec-scada-node.is-offline,.ec-scada-node.is-unknown{color:var(--text-muted);border-style:dashed}.ec-scada-node__heading{align-items:flex-start;gap:7px;display:flex}.ec-scada-node__heading>span:last-child{gap:2px;min-width:0;display:grid}.ec-scada-node__heading strong{text-overflow:ellipsis;white-space:nowrap;font-size:11px;line-height:1.18;overflow:hidden}.ec-scada-node__heading small{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;font-size:8px;overflow:hidden}.ec-scada-node__icon{width:27px;height:27px;color:var(--primary-strong);background:var(--primary-soft);border-radius:6px;flex:0 0 27px;place-items:center;display:grid}.ec-scada-node__value{color:var(--text);font:750 18px var(--font-geist-mono);letter-spacing:-.04em}.ec-scada-node__value .is-hidden-value{color:var(--text-subtle);font:600 8px var(--font-geist-sans);letter-spacing:0}.ec-scada-quality{color:var(--text-muted);text-transform:uppercase;font-size:7px;font-weight:700;position:absolute;bottom:6px;right:8px}.ec-scada-quality.is-good{color:var(--success)}.ec-scada-quality.is-bad,.ec-scada-quality.is-stale{color:var(--danger)}.ec-scada-quality.is-uncertain,.ec-scada-quality.is-unknown{color:var(--warning)}.ec-scada-handle{opacity:.78;border:2px solid var(--surface)!important;background:#5795a5!important;width:7px!important;height:7px!important}.ec-scada-alarm-marker{z-index:5;border:2px solid var(--surface);color:#fff;background:var(--warning);border-radius:999px;align-items:center;gap:3px;padding:4px 6px;font-size:8px;font-weight:800;display:inline-flex;position:absolute;top:-10px;right:-10px;box-shadow:0 3px 8px #16202638}.ec-scada-alarm-marker.is-critical{background:var(--danger)}.ec-scada-tank{border:2px solid var(--info);flex:1;align-content:center;place-items:center;min-height:115px;display:grid;position:relative;overflow:hidden}@supports (color:color-mix(in lab, red, red)){.ec-scada-tank{border:2px solid color-mix(in srgb, var(--info) 60%, var(--border))}}.ec-scada-tank{background:var(--background-subtle);border-top-width:1px;border-radius:5px 5px 12px 12px}.ec-scada-tank__liquid{background:linear-gradient(#3995b67a,#3995b6c7);transition:height .42s;position:absolute;bottom:0;left:0;right:0}.ec-scada-tank strong,.ec-scada-tank small{z-index:1;position:relative}.ec-scada-tank strong{font:800 20px var(--font-geist-mono)}.ec-scada-tank small{font-size:8px}.ec-scada-pump-symbol,.ec-scada-motor-symbol{border:4px solid var(--unknown);border-radius:50%;place-items:center;width:37px;height:37px;margin:0 auto;display:grid;position:relative}.ec-scada-pump-symbol span{border:4px solid #0000;border-left-color:currentColor;border-radius:50%;width:13px;height:13px}.ec-scada-pump-symbol.is-running,.ec-scada-motor-symbol.is-running{color:var(--success);border-color:var(--success)}.ec-scada-pump-symbol.is-running span,.ec-scada-motor-symbol.is-running span{animation:1.7s linear infinite ec-scada-spin}.ec-scada-pump-symbol.is-fault,.ec-scada-motor-symbol.is-fault{color:var(--danger);border-color:var(--danger)}.ec-scada-motor-symbol span{font:800 13px var(--font-geist-mono)}.ec-scada-state-label{color:var(--text-secondary);text-align:center;font-size:9px}.ec-scada-valve-symbol{justify-content:center;align-items:center;margin:2px auto;display:flex;position:relative}.ec-scada-valve-symbol i{border:2px solid var(--text-muted);background:var(--background-subtle);clip-path:polygon(0 0,100% 50%,0 100%);width:21px;height:24px}.ec-scada-valve-symbol i:last-child{transform:rotate(180deg)}.ec-scada-valve-symbol.is-open i{border-color:var(--success);background:var(--success-soft)}.ec-scada-status-light{border:1px solid var(--border);background:var(--background-subtle);border-radius:50%;place-items:center;width:32px;height:32px;margin:0 auto;display:grid}.ec-scada-status-light span{background:var(--unknown);border-radius:50%;width:16px;height:16px}.ec-scada-status-light.is-normal span{background:var(--success);box-shadow:0 0 0 5px var(--success-soft)}.ec-scada-node.is-label-node{box-shadow:none;background:0 0;border:0;justify-content:flex-start;padding:4px}.ec-scada-node.is-label-node .ec-scada-node__heading strong{letter-spacing:.04em;font-size:14px}.ec-scada-node.is-label-node .ec-scada-quality,.ec-scada-node.is-label-node .ec-scada-handle{display:none}.ec-scada-node--navigation{border-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.ec-scada-node--navigation{border-color:color-mix(in srgb, var(--primary) 38%, var(--border))}}.ec-scada-node--navigation{background:var(--surface)}@supports (color:color-mix(in lab, red, red)){.ec-scada-node--navigation{background:color-mix(in srgb, var(--surface) 95%, var(--primary) 5%)}}.ec-scada-node__navigation{border:1px solid var(--primary);justify-content:center;align-items:center;padding:5px 7px;display:flex}@supports (color:color-mix(in lab, red, red)){.ec-scada-node__navigation{border:1px solid color-mix(in srgb, var(--primary) 32%, var(--border))}}.ec-scada-node__navigation{color:var(--primary-strong);background:var(--primary-soft);border-radius:5px;font-size:8px;font-weight:750}.ec-supervisory-back{z-index:5;border:1px solid var(--border);color:var(--text-secondary);background:var(--surface);border-radius:6px;align-items:center;gap:6px;padding:7px 9px;font-size:9px;font-weight:700;display:inline-flex;position:absolute;bottom:12px;left:12px;box-shadow:0 2px 8px #16232a14}.ec-operational-context{gap:18px;display:grid}.ec-operational-context section{border-bottom:1px solid var(--border-soft);gap:10px;padding-bottom:16px;display:grid}.ec-operational-context h3,.ec-context-history__heading{align-items:center;gap:7px;display:flex}.ec-operational-context h3{margin:0;font-size:11px}.ec-operational-context__status{border:1px solid var(--border);background:var(--background-subtle);border-radius:8px;padding:14px}.ec-operational-context__status>strong{font:800 28px var(--font-geist-mono);margin-top:4px}.ec-operational-context__status small{color:var(--text-muted);font-size:9px}.ec-supervisory-status{color:var(--text-secondary);background:var(--border-soft);text-transform:uppercase;border-radius:4px;justify-self:start;padding:4px 6px;font-size:8px;font-weight:800}.ec-supervisory-status.is-critical{color:var(--danger);background:var(--danger-soft)}.ec-supervisory-status.is-warning{color:var(--warning);background:var(--warning-soft)}.ec-context-values{gap:7px;margin:0;display:grid}.ec-context-values div{justify-content:space-between;gap:14px;display:flex}.ec-context-values dt,.ec-context-values dd{margin:0;font-size:10px}.ec-context-values dt{color:var(--text-muted)}.ec-context-values dt code{color:var(--text-subtle);font:8px var(--font-geist-mono);margin-top:3px;display:block}.ec-context-values dd{font:700 10px var(--font-geist-mono);justify-items:end;gap:3px;display:grid}.ec-context-quality{color:var(--text-muted);font:700 8px var(--font-geist-sans)}.ec-context-quality.is-bad,.ec-context-quality.is-stale{color:var(--danger)}.ec-context-quality.is-uncertain,.ec-context-quality.is-unknown{color:var(--warning)}.ec-context-alerts button{border:1px solid var(--danger);grid-template-columns:auto 1fr;gap:3px 7px;padding:10px;display:grid}@supports (color:color-mix(in lab, red, red)){.ec-context-alerts button{border:1px solid color-mix(in srgb, var(--danger) 35%, var(--border))}}.ec-context-alerts button{color:var(--text);background:var(--danger-soft);text-align:left;border-radius:7px}.ec-context-alerts button>span{color:#fff;background:var(--danger);text-transform:uppercase;border-radius:4px;grid-row:1/3;align-self:start;padding:3px 5px;font-size:7px;font-weight:800}.ec-context-alerts button strong{font-size:10px}.ec-context-alerts button small{color:var(--text-muted);font-size:9px}.ec-context-actions{flex-wrap:wrap;gap:6px;display:flex}.ec-context-actions .ec-button{flex:126px;justify-content:flex-start}.ec-context-actions .ec-button svg:last-child{margin-left:auto}.ec-context-technical{color:var(--text-muted);background:var(--background-subtle);border-radius:5px;justify-content:space-between;margin:1px 0 0;padding:9px;font-size:9px;display:flex}.ec-context-technical strong{color:var(--text-secondary)}.ec-context-history__heading{justify-content:space-between}.ec-context-history__heading h3{margin:0}.ec-mini-trend,.ec-mini-trend-feedback{border:1px solid var(--border-soft);background:var(--background-subtle);border-radius:7px;min-height:226px;overflow:hidden}.ec-mini-trend{padding:8px 8px 3px}.ec-mini-trend__summary{justify-content:space-between;align-items:center;padding:1px 5px 5px;display:flex}.ec-mini-trend__summary strong{color:var(--text-secondary);font-size:9px}.ec-mini-trend__summary span{color:var(--text-muted);font-size:8px}.ec-mini-trend-feedback{align-content:center;gap:8px;padding:10px;display:grid}.ec-mini-trend-feedback>strong{color:var(--text-secondary);font-size:10px}.ec-mini-trend-feedback .ec-feedback-state{min-height:190px;padding:14px}.ec-context-readonly{border:1px solid var(--border);color:var(--text-muted);background:var(--background-subtle);border-radius:6px;margin:0;padding:10px;font-size:9px;line-height:1.45}.ec-operation-shell{background:#071015;min-height:100vh;padding:10px}.ec-operation-header{color:#edf4f5;background:#0d171c;border:1px solid #203039;border-radius:7px;justify-content:space-between;align-items:center;gap:20px;min-height:58px;margin-bottom:8px;padding:8px 13px;display:flex}.ec-operation-header>div{align-items:center;gap:10px;display:flex}.ec-operation-header>div:first-child span{color:#38c1bd;letter-spacing:.11em;border-right:1px solid #2a3b43;padding-right:10px;font-size:9px;font-weight:850}.ec-operation-header strong{font-size:13px}.ec-operation-header small,.ec-operation-header>div:last-child>span{color:#99a8af;font-size:9px}.ec-operation-header>div:last-child>span{align-items:center;gap:5px;display:inline-flex}.ec-supervisory-viewer.is-operation-mode{max-width:none;height:calc(100vh - 20px)}.ec-supervisory-viewer.is-operation-mode .ec-supervisory-toolbar{background:#0d171c;border-color:#203039;margin-bottom:8px}.ec-supervisory-viewer.is-operation-mode .ec-supervisory-stage{border-color:#203039;height:calc(100vh - 136px);min-height:480px}.ec-operation-loading{background:#071015;place-items:center;min-height:100vh;display:grid}@keyframes ec-scada-spin{to{transform:rotate(360deg)}}@media (max-width:1180px){.ec-supervisory-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ec-supervisory-readonly{display:none}.ec-supervisory-toolbar{flex-wrap:wrap}.ec-supervisory-toolbar__actions{flex:1 0 100%;justify-content:flex-end}.ec-supervisory-stage{height:calc(100vh - 330px);min-height:540px}}@media (max-width:760px){.ec-supervisory-grid{grid-template-columns:1fr}.ec-supervisory-toolbar__view{flex:1}.ec-supervisory-toolbar__view .ec-select{width:100%;min-width:0}.ec-supervisory-toolbar__actions{justify-content:flex-start;padding-bottom:2px;overflow-x:auto}.ec-supervisory-stage{height:68vh;min-height:470px}.ec-supervisory-stage__meta span:last-child{display:none}.ec-operation-header{align-items:flex-start}.ec-operation-header small,.ec-operation-header>div:last-child>span:not(.ec-supervisory-live){display:none}}@media (prefers-reduced-motion:reduce){.ec-supervisory-card,.ec-scada-tank__liquid,.ec-scada-pump-symbol.is-running span,.ec-scada-motor-symbol.is-running span,.ec-supervisory-canvas .react-flow__edge.animated path{transition:none!important;animation:none!important}}.alert-engine-page{width:min(100%,1580px);margin:0 auto}.alert-module-nav,.notification-subnav,.alert-quick-filters{scrollbar-width:none;align-items:center;gap:4px;display:flex;overflow-x:auto}.alert-module-nav{border:1px solid var(--ec-border-subtle);background:var(--ec-bg-secondary);border-radius:12px;margin:18px 0;padding:5px}.alert-module-nav::-webkit-scrollbar{display:none}.notification-subnav::-webkit-scrollbar{display:none}.alert-quick-filters::-webkit-scrollbar{display:none}.alert-module-nav a,.notification-subnav a{min-height:34px;color:var(--ec-text-secondary);border-radius:8px;flex:none;justify-content:center;align-items:center;gap:7px;padding:0 13px;font-size:12px;font-weight:700;text-decoration:none;display:inline-flex}.alert-module-nav a svg{width:15px;height:15px}.alert-module-nav a:hover,.notification-subnav a:hover{color:var(--ec-text-primary);background:var(--ec-bg-hover)}.alert-module-nav a.active,.notification-subnav a.active{color:var(--ec-primary);background:var(--ec-bg-surface);box-shadow:inset 0 0 0 1px var(--ec-border)}.alert-counter-strip{border:1px solid var(--ec-border-subtle);background:var(--ec-bg-surface);border-radius:12px;grid-template-columns:repeat(4,minmax(150px,1fr));margin-bottom:14px;display:grid;overflow:hidden}.alert-counter-strip>div{border-right:1px solid var(--ec-border-subtle);align-items:center;gap:10px;min-height:64px;padding:12px 16px;display:flex}.alert-counter-strip>div:last-child{border-right:0}.alert-counter-strip svg{width:18px;color:var(--ec-primary)}.alert-counter-strip span{color:var(--ec-text-muted);align-items:baseline;gap:5px;font-size:12px;display:flex}.alert-counter-strip strong{color:var(--ec-text-primary);font-size:20px;line-height:1}.alert-counter-strip .is-critical svg,.alert-counter-strip .is-critical strong{color:var(--ec-danger)}.alert-counter-strip .is-warning svg,.alert-counter-strip .is-warning strong{color:var(--ec-warning)}.alert-quick-filters{margin:0 0 10px}.alert-quick-filters button{min-height:30px;color:var(--ec-text-muted);background:0 0;border:1px solid #0000;border-radius:999px;flex:none;padding:0 11px;font-size:11px;font-weight:750}.alert-quick-filters button:hover{color:var(--ec-text-primary);background:var(--ec-bg-hover)}.alert-quick-filters button.is-active{border-color:var(--ec-primary)}@supports (color:color-mix(in lab, red, red)){.alert-quick-filters button.is-active{border-color:color-mix(in srgb, var(--ec-primary) 28%, var(--ec-border))}}.alert-quick-filters button.is-active{color:var(--ec-primary);background:var(--ec-primary-soft)}.alert-filters{border:1px solid var(--ec-border-subtle);background:var(--ec-bg-surface);border-radius:10px;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:14px;padding:10px;display:flex}.alert-filters>.ec-search-input,.alert-filters>label:first-child{flex:240px}.alert-filters__selects{flex:2 520px;gap:8px;display:flex}.alert-filters__selects label{flex:130px}.alert-filters__selects .ec-select{width:100%}.alert-filters__advanced{color:var(--ec-text-muted);flex:none;font-size:12px}.alert-filters__advanced summary{cursor:pointer;font-weight:700}.alert-filters__advanced[open]{border-top:1px solid var(--ec-border-subtle);flex:1 0 100%;grid-template-columns:repeat(5,minmax(120px,1fr));gap:8px;padding-top:10px;display:grid}.alert-filters__advanced[open] summary{grid-column:1/-1}.alert-filters__advanced label,.condition-editor label,.rule-form-grid label,.rule-target-select,.rule-timing-grid label,.rule-policy-select,.channel-form label,.policy-editor>label,.policy-timing-grid label{color:var(--ec-text-secondary);gap:6px;font-size:11px;font-weight:700;display:grid}.alert-list-panel,.events-timeline-panel{border:1px solid var(--ec-border-subtle);background:var(--ec-bg-surface);border-radius:12px;overflow:hidden;box-shadow:0 1px 2px #13222b08}.alert-list-panel>header,.events-timeline-panel>header{border-bottom:1px solid var(--ec-border-subtle);min-height:44px;color:var(--ec-text-muted);letter-spacing:.025em;justify-content:space-between;align-items:center;padding:0 14px;font-size:11px;display:flex}.alert-list-panel>header span,.events-timeline-panel>header span{color:var(--ec-text-secondary);align-items:center;gap:8px;font-weight:750;display:flex}.alert-list-panel>header i,.events-timeline-panel>header i{background:var(--ec-success);width:7px;height:7px;box-shadow:0 0 0 4px var(--ec-success-soft);border-radius:50%}.alert-table-shell{overflow-x:auto}.alert-table-shell table{min-width:1020px}.alert-table-shell tbody tr{cursor:pointer}.alert-table-shell tbody tr:hover td{background:var(--ec-bg-hover)}.alert-table-shell tbody tr:has(.alert-severity.is-critical) td:first-child{box-shadow:inset 3px 0 0 var(--ec-danger)}.alert-table-shell tbody tr:has(.alert-severity.is-warning) td:first-child{box-shadow:inset 3px 0 0 var(--ec-warning)}.alert-table-shell tbody tr:has(.alert-severity.is-info) td:first-child{box-shadow:inset 3px 0 0 var(--ec-info)}.alert-severity,.alert-state{border:1px solid var(--ec-border-subtle);width:max-content;min-height:24px;color:var(--ec-text-secondary);background:var(--ec-bg-secondary);letter-spacing:.055em;text-transform:uppercase;border-radius:999px;align-items:center;gap:6px;padding:0 9px;font-size:10px;font-weight:800;display:inline-flex}.alert-severity.is-critical{border-color:var(--ec-danger)}@supports (color:color-mix(in lab, red, red)){.alert-severity.is-critical{border-color:color-mix(in srgb, var(--ec-danger) 25%, transparent)}}.alert-severity.is-critical{color:var(--ec-danger);background:var(--ec-danger-soft)}.alert-severity.is-warning{border-color:var(--ec-warning)}@supports (color:color-mix(in lab, red, red)){.alert-severity.is-warning{border-color:color-mix(in srgb, var(--ec-warning) 28%, transparent)}}.alert-severity.is-warning{color:var(--ec-warning);background:var(--ec-warning-soft)}.alert-severity.is-info{border-color:var(--ec-info)}@supports (color:color-mix(in lab, red, red)){.alert-severity.is-info{border-color:color-mix(in srgb, var(--ec-info) 25%, transparent)}}.alert-severity.is-info{color:var(--ec-info);background:var(--ec-info-soft)}.alert-severity.is-compact{min-height:20px;padding:0 6px;font-size:8px}.alert-state.is-firing,.alert-state.is-pending{color:var(--ec-danger)}.alert-state.is-acknowledged{color:var(--ec-info)}.alert-state.is-silenced{color:var(--ec-warning)}.alert-state.is-resolved,.alert-state.is-normal{color:var(--ec-success)}.alert-origin-cell,.rule-name-cell,.rule-target-cell{gap:3px;display:grid}.alert-origin-cell strong,.rule-name-cell strong,.rule-target-cell strong{color:var(--ec-text-primary);font-size:12px}.alert-origin-cell small,.rule-name-cell small,.rule-target-cell small{color:var(--ec-text-muted);font-size:10px}.alert-message-cell{max-width:310px;color:var(--ec-text-secondary);text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.table-mono,.rule-condition-code{color:var(--ec-text-secondary);font-family:var(--font-geist-mono), ui-monospace, monospace;font-size:11px}.alert-detail-hero{border:1px solid var(--ec-border-subtle);background:var(--ec-bg-surface);border-radius:12px;grid-template-columns:minmax(280px,1fr) auto auto auto auto;align-items:center;gap:10px;margin:18px 0;padding:20px 18px 20px 24px;display:grid;position:relative;overflow:hidden}.alert-detail-hero__rail{background:var(--ec-info);width:4px;position:absolute;inset:0 auto 0 0}.alert-detail-hero__rail.is-critical{background:var(--ec-danger)}.alert-detail-hero__rail.is-warning{background:var(--ec-warning)}.alert-detail-hero>div:nth-child(2)>span,.rule-step__eyebrow{color:var(--ec-primary);letter-spacing:.11em;text-transform:uppercase;font-size:9px;font-weight:850}.alert-detail-hero h2{color:var(--ec-text-primary);margin:5px 0 4px;font-size:20px}.alert-detail-hero p{color:var(--ec-text-muted);margin:0;font-size:12px}.alert-detail-grid{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:14px;display:grid}.alert-detail-timeline-panel{grid-column:1/-1}.alert-current-value{border:1px solid var(--ec-border-subtle);background:var(--ec-bg-secondary);border-radius:10px;justify-content:space-between;align-items:center;min-height:70px;margin:8px 0 14px;padding:14px;display:flex}.alert-current-value strong{color:var(--ec-text-primary);font-size:28px}.alert-current-value strong small{color:var(--ec-text-muted);margin-left:5px;font-size:12px}.alert-current-value.is-connectivity{justify-content:flex-start;gap:12px}.alert-current-value.is-connectivity svg{color:var(--ec-primary)}.alert-current-value.is-connectivity strong{font-size:14px}.alert-detail-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:0;margin:0;display:grid}.alert-detail-list>div{border-bottom:1px solid var(--ec-border-subtle);min-width:0;padding:10px 0}.alert-detail-list dt{color:var(--ec-text-muted);letter-spacing:.06em;text-transform:uppercase;margin-bottom:4px;font-size:9px;font-weight:800}.alert-detail-list dd{color:var(--ec-text-primary);text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:12px;font-weight:650;overflow:hidden}.alert-context-actions{flex-wrap:wrap;gap:6px;margin-top:14px;display:flex}.alert-timeline,.event-timeline{margin:0;padding:2px 0;list-style:none}.alert-timeline li{grid-template-columns:34px minmax(0,1fr);gap:11px;min-height:58px;display:grid;position:relative}.alert-timeline li:not(:last-child):after{background:var(--ec-border);content:"";width:1px;position:absolute;top:31px;bottom:-1px;left:16px}.alert-timeline li>span{z-index:1;border:1px solid var(--ec-border);width:34px;height:34px;color:var(--ec-primary);background:var(--ec-bg-surface);border-radius:50%;place-items:center;display:grid}.alert-timeline svg{width:14px}.alert-timeline li>div{padding:4px 0 14px}.alert-timeline strong,.alert-timeline small,.alert-timeline em{display:block}.alert-timeline strong{color:var(--ec-text-primary);font-size:12px}.alert-timeline small,.alert-timeline em{color:var(--ec-text-muted);margin-top:3px;font-size:10px;font-style:normal}.alert-timeline p{border-left:2px solid var(--ec-primary);color:var(--ec-text-secondary);background:var(--ec-bg-secondary);margin:7px 0 0;padding:8px 10px;font-size:11px}.alert-action-form,.channel-form,.policy-editor{gap:14px;display:grid}.alert-action-form textarea,.rule-form-grid textarea{resize:vertical;border:1px solid var(--ec-border);background:var(--ec-bg-surface);border-radius:8px;outline:0;width:100%;min-height:90px;padding:10px 12px}.alert-action-form textarea:focus,.rule-form-grid textarea:focus{border-color:var(--ec-primary);box-shadow:0 0 0 3px var(--ec-primary-soft)}.alert-action-form footer,.channel-form footer,.policy-editor>footer{justify-content:flex-end;gap:8px;display:flex}.form-error,.wizard-validation-error{color:var(--ec-danger);margin:0;font-size:11px}.rule-status-toggle{background:var(--ec-border);border:0;border-radius:999px;width:34px;height:20px;position:relative}.rule-status-cell{align-items:center;gap:7px;display:flex}.rule-status-cell small{color:var(--ec-text-muted);font-size:10px}.rule-status-toggle:after{content:"";background:#fff;border-radius:50%;width:14px;height:14px;transition:transform .16s;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #0003}.rule-status-toggle.is-enabled{background:var(--ec-primary)}.rule-status-toggle.is-enabled:after{transform:translate(14px)}.rule-row-actions{justify-content:flex-end;gap:3px;display:flex}.icon-danger-button{width:30px;height:30px;color:var(--ec-text-muted);background:0 0;border:0;border-radius:7px;place-items:center;display:grid}.icon-danger-button:hover{color:var(--ec-danger);background:var(--ec-danger-soft)}.icon-danger-button svg{width:15px}.delete-rule-dialog{gap:14px;display:grid}.delete-rule-dialog p{color:var(--ec-text-secondary);margin:0}.delete-rule-dialog footer{justify-content:flex-end;gap:8px;display:flex}.rule-wizard-shell{border:1px solid var(--ec-border-subtle);background:var(--ec-bg-surface);border-radius:14px;grid-template-columns:220px minmax(0,1fr);min-height:590px;margin-top:18px;display:grid;overflow:hidden}.rule-wizard-shell>nav{border-right:1px solid var(--ec-border-subtle);background:var(--ec-bg-secondary);padding:16px 10px}.rule-wizard-shell>nav button{width:100%;min-height:44px;color:var(--ec-text-muted);text-align:left;background:0 0;border:0;border-radius:8px;grid-template-columns:28px minmax(0,1fr);align-items:center;gap:10px;padding:6px 9px;display:grid}.rule-wizard-shell>nav button>span{border:1px solid var(--ec-border);border-radius:50%;place-items:center;width:25px;height:25px;font-size:10px;display:grid}.rule-wizard-shell>nav button svg{width:12px}.rule-wizard-shell>nav button strong{font-size:11px}.rule-wizard-shell>nav button.is-active{color:var(--ec-primary);background:var(--ec-primary-soft)}.rule-wizard-shell>nav button.is-active>span,.rule-wizard-shell>nav button.is-complete>span{border-color:var(--ec-primary);color:#fff;background:var(--ec-primary)}.rule-wizard-shell>main{flex-direction:column;min-width:0;display:flex}.alert-rule-builder{flex:1}.rule-step{width:min(100%,820px);margin:0 auto;padding:36px 34px}.rule-step h2{color:var(--ec-text-primary);margin:8px 0 5px;font-size:21px}.rule-step>p{color:var(--ec-text-muted);margin:0 0 24px;font-size:12px}.rule-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.rule-form-grid .is-full{grid-column:1/-1}.rule-target-types,.rule-severity-options{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.rule-target-types>button,.rule-severity-options>button{border:1px solid var(--ec-border);min-height:128px;color:var(--ec-text-secondary);background:var(--ec-bg-surface);text-align:left;border-radius:11px;flex-direction:column;align-items:flex-start;gap:7px;padding:16px;display:flex;position:relative}.rule-target-types>button:hover,.rule-severity-options>button:hover{border-color:var(--ec-primary);background:var(--ec-bg-hover)}.rule-target-types>button.is-selected,.rule-severity-options>button.is-selected{border-color:var(--ec-primary);box-shadow:inset 0 0 0 1px var(--ec-primary);background:var(--ec-primary-soft)}.rule-target-types svg{width:20px;color:var(--ec-primary)}.rule-target-types small,.rule-severity-options small{color:var(--ec-text-muted);font-size:10px;line-height:1.45}.rule-severity-options>button>svg{width:17px;color:var(--ec-primary);position:absolute;top:12px;right:12px}.rule-target-selected{border:1px dashed var(--ec-primary);width:100%;color:var(--ec-text-secondary);background:var(--ec-primary-soft);text-align:left;border-radius:10px;grid-template-columns:36px minmax(0,1fr) auto;align-items:center;gap:12px;margin-top:14px;padding:14px;display:grid}.rule-target-selected>svg{width:20px;color:var(--ec-primary)}.rule-target-selected span{gap:4px;display:grid}.rule-target-selected code{color:var(--ec-text-muted);font-size:10px}.rule-target-select,.rule-policy-select{margin-top:16px}.condition-editor{grid-template-columns:minmax(180px,1.2fr) minmax(120px,.8fr) minmax(90px,.5fr);align-items:end;gap:10px;display:grid}.rule-current-value{border:1px solid var(--ec-border-subtle);background:var(--ec-bg-secondary);border-radius:10px;grid-template-columns:1fr auto;align-items:center;gap:4px 12px;margin:16px 0;padding:12px 14px;display:grid}.rule-current-value span,.rule-current-value small{color:var(--ec-text-muted);font-size:10px}.rule-current-value strong{color:var(--ec-text-primary);grid-area:1/2/3;font-size:21px}.rule-condition-note,.channel-secret-notice{border:1px solid var(--ec-info);align-items:flex-start;gap:11px;margin-top:15px;padding:12px;display:flex}@supports (color:color-mix(in lab, red, red)){.rule-condition-note,.channel-secret-notice{border:1px solid color-mix(in srgb, var(--ec-info) 23%, var(--ec-border))}}.rule-condition-note,.channel-secret-notice{color:var(--ec-info);background:var(--ec-info-soft);border-radius:9px}.rule-condition-note svg,.channel-secret-notice svg{flex:none;width:17px}.rule-condition-note p,.channel-secret-notice p{gap:3px;margin:0;display:grid}.rule-condition-note strong,.channel-secret-notice strong{color:var(--ec-text-primary);font-size:11px}.rule-condition-note small,.channel-secret-notice small{color:var(--ec-text-muted);font-size:10px}.rule-timing-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.rule-pending-flow{border:1px solid var(--ec-border-subtle);color:var(--ec-text-secondary);background:var(--ec-bg-secondary);border-radius:10px;justify-content:center;align-items:center;gap:10px;margin-top:22px;padding:16px;font-size:11px;display:flex}.rule-pending-flow i{background:var(--ec-border);width:38px;height:1px}.rule-pending-flow strong{color:var(--ec-danger)}.rule-future-note{border-left:2px solid var(--ec-border);background:var(--ec-bg-secondary);padding:10px 12px;margin-top:15px!important}.rule-review__summary{border:1px solid var(--ec-border-subtle);border-radius:10px;grid-template-columns:repeat(2,minmax(0,1fr));display:grid;overflow:hidden}.rule-review__summary>div{border-right:1px solid var(--ec-border-subtle);border-bottom:1px solid var(--ec-border-subtle);gap:5px;min-height:78px;padding:13px;display:grid}.rule-review__summary>div:nth-child(2n){border-right:0}.rule-review__summary span,.rule-review__summary small{color:var(--ec-text-muted);letter-spacing:.05em;text-transform:uppercase;font-size:9px;font-weight:750}.rule-review__summary strong{color:var(--ec-text-primary);font-size:12px}.rule-test-panel{border:1px solid var(--ec-border-subtle);background:var(--ec-bg-secondary);border-radius:10px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;margin-top:14px;padding:14px;display:grid}.rule-test-panel>div:first-child{gap:3px;display:grid}.rule-test-panel small{color:var(--ec-text-muted);font-size:10px}.rule-test-result{border-left:3px solid var(--ec-warning);background:var(--ec-warning-soft);grid-column:1/-1;grid-template-columns:1fr auto;gap:4px;padding:10px;display:grid}.rule-test-result.is-match{border-color:var(--ec-danger);background:var(--ec-danger-soft)}.rule-test-result p{color:var(--ec-text-secondary);grid-column:1/-1;margin:0;font-size:10px}.rule-wizard-footer{border-top:1px solid var(--ec-border-subtle);background:var(--ec-bg-secondary);grid-template-columns:1fr auto 1fr;align-items:center;gap:10px;padding:13px 18px;display:grid}.rule-wizard-footer>span{color:var(--ec-text-muted);font-size:10px;font-weight:750}.rule-wizard-footer>:last-child{justify-self:end}.wizard-validation-error{background:var(--ec-bg-secondary);text-align:center;padding:0 18px 12px}.notification-subnav{border-bottom:1px solid var(--ec-border-subtle);margin:18px 0 12px}.notification-subnav a{border-radius:7px 7px 0 0}.notification-channel-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.notification-channel{border:1px solid var(--ec-border-subtle);background:var(--ec-bg-surface);border-radius:11px;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:12px;min-height:90px;padding:14px;display:grid}.notification-channel__icon{width:42px;height:42px;color:var(--ec-primary);background:var(--ec-primary-soft);border-radius:10px;place-items:center;display:grid}.notification-channel__icon svg{width:19px}.notification-channel>div{gap:3px;min-width:0;display:grid}.notification-channel>div strong{color:var(--ec-text-primary);font-size:12px}.notification-channel>div small{color:var(--ec-text-muted);text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.notification-channel__status{color:var(--ec-warning);text-transform:uppercase;align-items:center;gap:5px;font-size:9px;font-weight:800;display:inline-flex}.notification-channel__status.is-configured{color:var(--ec-success)}.notification-future-strip{border:1px dashed var(--ec-border);color:var(--ec-text-muted);background:var(--ec-bg-secondary);border-radius:10px;align-items:center;gap:12px;margin-top:12px;padding:11px 14px;font-size:10px;display:flex}.notification-future-strip span{color:var(--ec-primary);text-transform:uppercase;font-weight:800}.notification-future-strip strong{color:var(--ec-text-secondary)}.notification-future-strip small{margin-left:auto}.channel-form{grid-template-columns:repeat(2,minmax(0,1fr))}.channel-form label:nth-of-type(n+3),.channel-secret-notice,.channel-form footer{grid-column:1/-1}.policy-list{gap:8px;display:grid}.policy-list>button{border:1px solid var(--ec-border-subtle);width:100%;min-height:70px;color:var(--ec-text-secondary);background:var(--ec-bg-surface);text-align:left;border-radius:10px;grid-template-columns:minmax(180px,1.4fr) minmax(160px,1fr) 80px 110px 130px 24px;align-items:center;gap:12px;padding:12px 14px;display:grid}.policy-list>button:hover{border-color:var(--ec-primary);background:var(--ec-bg-hover)}.policy-list>button>span{gap:4px;display:grid}.policy-list>button small{color:var(--ec-text-muted);font-size:9px}.policy-list>button strong{color:var(--ec-text-primary);font-size:11px}.policy-list>button>svg{width:15px;color:var(--ec-text-muted)}.policy-editor fieldset{border:1px solid var(--ec-border-subtle);border-radius:9px;margin:0;padding:12px}.policy-editor legend{color:var(--ec-text-muted);text-transform:uppercase;padding:0 5px;font-size:10px;font-weight:800}.policy-check-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;display:grid}.policy-check-grid label{border:1px solid var(--ec-border-subtle);color:var(--ec-text-secondary);background:var(--ec-bg-secondary);border-radius:7px;align-items:center;gap:7px;padding:9px;font-size:10px;display:flex}.policy-check-grid small{color:var(--ec-text-muted);margin-left:auto}.policy-timing-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.policy-escalation{border:1px solid var(--ec-border-subtle);border-radius:9px;overflow:hidden}.policy-escalation>header{background:var(--ec-bg-secondary);justify-content:space-between;align-items:center;padding:10px 12px;display:flex}.policy-escalation>header>div{gap:2px;display:grid}.policy-escalation>header small{color:var(--ec-text-muted);font-size:9px}.policy-escalation>div{border-top:1px solid var(--ec-border-subtle);color:var(--ec-text-secondary);grid-template-columns:auto 110px 1fr 30px;align-items:center;gap:8px;padding:9px 12px;font-size:10px;display:grid}.policy-escalation>div>button{width:28px;height:28px;color:var(--ec-danger);background:0 0;border:0;border-radius:6px;place-items:center;display:grid}.policy-escalation>div>button:hover{background:var(--ec-danger-soft)}.policy-escalation>div svg{width:14px}.history-page-status{color:var(--ec-text-muted);align-items:center;gap:6px;font-size:10px;font-weight:750;display:inline-flex}.history-page-status svg{width:15px;color:var(--ec-primary)}.events-toolbar{align-items:center;gap:8px;margin:18px 0 12px;display:flex}.events-toolbar .ec-search-input,.events-toolbar>label:first-child{flex:1}.events-toolbar>.ec-select{flex:0 0 260px;width:260px}.events-toolbar>label:last-child{color:var(--ec-text-secondary);flex:0 0 150px;gap:4px;font-size:10px;display:grid}.event-timeline{padding:12px 16px}.event-timeline li{grid-template-columns:64px 16px minmax(0,1fr);gap:10px;min-height:90px;display:grid}.event-timeline time{align-content:start;justify-items:end;padding-top:12px;display:grid}.event-timeline time strong{color:var(--ec-text-primary);font-size:12px}.event-timeline time small{color:var(--ec-text-muted);text-transform:uppercase;font-size:9px}.event-timeline>li>div{border:1px solid var(--ec-border-subtle);background:var(--ec-bg-secondary);border-radius:9px;margin-bottom:10px;padding:11px 13px}.event-timeline>li>div header{justify-content:space-between;align-items:center;gap:10px;display:flex}.event-timeline>li>div p{color:var(--ec-text-secondary);margin:5px 0;font-size:11px}.event-timeline>li>div>small{color:var(--ec-text-muted);font-size:9px}.event-timeline__marker{border:2px solid var(--ec-bg-surface);background:var(--ec-primary);width:9px;height:9px;box-shadow:0 0 0 1px var(--ec-primary);border-radius:50%;margin-top:17px;position:relative}.event-timeline li:not(:last-child) .event-timeline__marker:after{background:var(--ec-border);content:"";width:1px;position:absolute;top:9px;bottom:-75px;left:2px}.event-timeline__marker.is-critical{background:var(--ec-danger);box-shadow:0 0 0 1px var(--ec-danger)}.event-timeline__marker.is-warning{background:var(--ec-warning);box-shadow:0 0 0 1px var(--ec-warning)}.alert-center-wrap,.alarm-button{position:relative}.alarm-button>span{border:2px solid var(--ec-bg-header);color:#fff;background:var(--ec-danger);border-radius:999px;place-items:center;min-width:15px;height:15px;padding:0 3px;font-size:8px;font-weight:850;display:grid;position:absolute;top:2px;right:1px}.alert-center-popover{z-index:80;border:1px solid var(--ec-border);background:var(--ec-bg-surface);width:min(390px,100vw - 24px);box-shadow:var(--shadow);border-radius:12px;position:absolute;top:calc(100% + 9px);right:0;overflow:hidden}.alert-center-popover>header{border-bottom:1px solid var(--ec-border-subtle);justify-content:space-between;align-items:center;padding:13px 14px;display:flex}.alert-center-popover>header>div{gap:2px;display:grid}.alert-center-popover>header small{color:var(--ec-text-muted);font-size:9px}.alert-center-popover>header>span{color:var(--ec-danger);background:var(--ec-danger-soft);border-radius:999px;padding:4px 7px;font-size:9px;font-weight:800}.alert-center-popover>div>button{border:0;border-bottom:1px solid var(--ec-border-subtle);width:100%;min-height:55px;color:var(--ec-text-secondary);text-align:left;background:0 0;grid-template-columns:auto minmax(0,1fr) 18px;align-items:center;gap:10px;padding:9px 13px;display:grid}.alert-center-popover>div>button:hover{background:var(--ec-bg-hover)}.alert-center-popover>div>button>span{gap:2px;display:grid}.alert-center-popover>div strong{color:var(--ec-text-primary);font-size:11px}.alert-center-popover>div small{color:var(--ec-text-muted);font-size:9px}.alert-center-popover>div svg{width:14px}.alert-center-popover>footer button{width:100%;min-height:39px;color:var(--ec-primary);background:var(--ec-bg-secondary);border:0;justify-content:center;align-items:center;gap:6px;font-size:10px;font-weight:800;display:flex}.alert-center-popover>footer svg{width:13px}.entity-alert-summary{gap:7px;display:grid}.entity-alert-summary>a{border:1px solid var(--ec-border-subtle);color:var(--ec-text-secondary);background:var(--ec-bg-secondary);border-radius:8px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:9px 10px;text-decoration:none;display:grid}.entity-alert-summary>a:hover{border-color:var(--ec-primary)}.entity-alert-summary>a>span{gap:2px;display:grid}.entity-alert-summary>a strong{color:var(--ec-text-primary);font-size:11px}.entity-alert-summary>a small,.entity-alert-summary__empty{color:var(--ec-text-muted);font-size:10px}.entity-alert-summary__empty{margin:0}.dashboard-inspector__alert-links{border-top:1px solid var(--ec-border-subtle);grid-template-columns:1fr 1fr;gap:6px;padding:10px 12px;display:grid}.dashboard-inspector__alert-links a{border:1px solid var(--ec-border);min-height:30px;color:var(--ec-primary);border-radius:7px;justify-content:center;align-items:center;gap:6px;font-size:9px;font-weight:800;text-decoration:none;display:flex}.dashboard-inspector__alert-links a:hover{background:var(--ec-primary-soft)}.sidebar-link.is-nested{min-height:31px;padding-left:37px;font-size:11px}.sidebar-link.is-nested svg{width:14px}:root[data-theme=dark] .alert-list-panel,:root[data-theme=dark] .events-timeline-panel,:root[data-theme=dark] .alert-detail-hero,:root[data-theme=dark] .notification-channel,:root[data-theme=dark] .policy-list>button,:root[data-theme=dark] .rule-wizard-shell,:root[data-theme=dark] .alert-center-popover{box-shadow:0 9px 28px #00000021}:root[data-theme=dark] .alert-table-shell tbody tr:hover td{background:#202930}:root[data-theme=dark] .rule-status-toggle:after{background:#e9eef1}@media (max-width:1180px){.alert-counter-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.alert-counter-strip>div:nth-child(2){border-right:0}.alert-counter-strip>div:nth-child(-n+2){border-bottom:1px solid var(--ec-border-subtle)}.policy-list>button{grid-template-columns:minmax(170px,1.4fr) minmax(150px,1fr) 65px 95px 22px}.policy-list>button>span:nth-child(5){display:none}}@media (max-width:900px){.alert-detail-hero{grid-template-columns:minmax(220px,1fr) auto auto}.alert-detail-hero>.ec-button{justify-self:stretch}.alert-detail-grid,.notification-channel-list,.rule-wizard-shell{grid-template-columns:1fr}.rule-wizard-shell>nav{border-right:0;border-bottom:1px solid var(--ec-border-subtle);padding:8px;display:flex;overflow-x:auto}.rule-wizard-shell>nav button{flex:none;width:auto}.policy-list>button{grid-template-columns:minmax(170px,1.4fr) minmax(150px,1fr) 65px 22px}.policy-list>button>span:nth-child(4){display:none}.alert-filters__advanced[open]{grid-template-columns:repeat(2,minmax(130px,1fr))}}@media (max-width:700px){.alert-module-nav{margin:12px 0}.alert-counter-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.alert-counter-strip>div{min-height:54px;padding:10px}.alert-counter-strip span{display:grid}.alert-filters,.alert-filters__selects,.events-toolbar{flex-direction:column;align-items:stretch}.alert-filters>.ec-search-input,.alert-filters>label:first-child,.events-toolbar>.ec-search-input,.events-toolbar>label:first-child{flex:none;width:100%}.alert-filters__selects{flex:none;grid-template-columns:repeat(2,minmax(0,1fr));width:100%;display:grid}.events-toolbar>.ec-select,.events-toolbar>label:last-child{flex:none;width:100%}.alert-detail-hero{grid-template-columns:1fr 1fr;align-items:center}.alert-detail-hero>div:nth-child(2){grid-column:1/-1}.alert-detail-hero>.ec-button{width:100%}.alert-detail-list,.rule-form-grid,.rule-target-types,.rule-severity-options,.rule-timing-grid,.rule-review__summary,.channel-form,.policy-timing-grid,.policy-check-grid{grid-template-columns:1fr}.rule-form-grid .is-full,.rule-review__summary>div,.channel-form label:nth-of-type(n+3),.channel-secret-notice,.channel-form footer{grid-column:auto}.rule-step{padding:26px 18px}.condition-editor{grid-template-columns:1fr}.rule-pending-flow{flex-direction:column;align-items:stretch}.rule-pending-flow i{width:1px;height:16px;margin-left:8px}.rule-wizard-footer{grid-template-columns:1fr 1fr}.rule-wizard-footer>span{display:none}.notification-future-strip{flex-wrap:wrap;align-items:flex-start}.notification-future-strip small{flex-basis:100%;margin-left:0}.policy-list>button{grid-template-columns:minmax(0,1fr) 24px}.policy-list>button>span:not(:first-child){display:none}.policy-escalation>div{grid-template-columns:auto minmax(90px,1fr) 30px}.policy-escalation>div>span:nth-of-type(2){display:none}.event-timeline{padding:10px}.event-timeline li{grid-template-columns:48px 12px minmax(0,1fr);gap:7px}.event-timeline>li>div header{flex-direction:column;align-items:flex-start}.dashboard-inspector__alert-links{grid-template-columns:1fr}}@media (min-width:1181px){.overview-page .stats-grid.domain-stats-grid{grid-template-columns:repeat(5,minmax(0,1fr))}}.ec-textarea{resize:vertical;border:1px solid var(--ec-border);background:var(--ec-bg-surface);width:100%;min-height:92px;color:var(--ec-text-primary);font:inherit;border-radius:6px;outline:none;padding:10px 12px}.ec-textarea:focus,.ec-input:focus,.ec-select:focus{border-color:var(--ec-primary);box-shadow:0 0 0 3px var(--ec-primary)}@supports (color:color-mix(in lab, red, red)){.ec-textarea:focus,.ec-input:focus,.ec-select:focus{box-shadow:0 0 0 3px color-mix(in srgb, var(--ec-primary) 13%, transparent)}}.form-field{flex-direction:column;gap:6px;min-width:0;display:flex}.form-field>span{color:var(--ec-text-secondary);font-size:12px;font-weight:600}.form-field>small{color:var(--ec-text-subtle);font-size:10px;line-height:1.45}.form-field>small.field-error,.field-error{color:var(--ec-danger);font-size:11px}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.form-grid .form-field:last-child{grid-column:1/-1}.form-stack{flex-direction:column;gap:16px;display:flex}.check-field{color:var(--ec-text-secondary);align-items:center;gap:8px;font-size:12px;display:flex}.check-field input{accent-color:var(--ec-primary)}.full-width{justify-content:center;width:100%}.toolbar-note{color:var(--ec-text-muted);align-items:center;gap:7px;font-size:11px;display:inline-flex}.toolbar-note svg,.inventory-summary svg{width:14px}.table-subline{text-overflow:ellipsis;white-space:nowrap;max-width:360px;margin-top:3px;display:block;overflow:hidden}.wizard-shell{border:1px solid var(--ec-border);background:var(--ec-bg-surface);min-height:640px;box-shadow:var(--ec-shadow-sm);border-radius:8px;grid-template-columns:225px minmax(0,1fr);display:grid;overflow:hidden}.wizard-steps{border-right:1px solid var(--ec-border);background:var(--ec-bg-secondary);padding:18px 12px}.wizard-steps button{width:100%;color:var(--ec-text-muted);text-align:left;background:0 0;border:0;border-radius:6px;grid-template-rows:16px 20px;grid-template-columns:34px 1fr 14px;align-items:center;padding:10px;display:grid;position:relative}.wizard-steps button:not(:last-child):after{content:"";background:var(--ec-border);width:1px;position:absolute;top:49px;bottom:-7px;left:26px}.wizard-steps button>span{z-index:1;border:1px solid var(--ec-border);background:var(--ec-bg-surface);border-radius:50%;grid-row:1/3;place-items:center;width:28px;height:28px;display:grid}.wizard-steps button svg{width:14px}.wizard-steps button small{text-transform:uppercase;letter-spacing:.06em;font-size:9px}.wizard-steps button strong{color:var(--ec-text-secondary);font-size:12px}.wizard-steps button>svg{grid-area:1/3/3}.wizard-steps button.active{background:var(--ec-primary)}@supports (color:color-mix(in lab, red, red)){.wizard-steps button.active{background:color-mix(in srgb, var(--ec-primary) 8%, transparent)}}.wizard-steps button.active{color:var(--ec-primary)}.wizard-steps button.active>span{border-color:var(--ec-primary);background:var(--ec-primary);color:#fff}.wizard-steps button.active strong{color:var(--ec-primary)}.wizard-steps button.complete>span{border-color:var(--ec-success);color:var(--ec-success)}.wizard-content{flex-direction:column;min-width:0;display:flex}.wizard-content>header{border-bottom:1px solid var(--ec-border);min-height:110px;padding:22px 30px 18px}.wizard-content>header>span{color:var(--ec-primary);letter-spacing:.09em;font-size:9px;font-weight:700}.wizard-content>header h2{color:var(--ec-text-primary);margin:4px 0;font-size:20px}.wizard-content>header p{color:var(--ec-text-muted);margin:0;font-size:12px}.wizard-section{min-height:430px;padding:28px 30px}.wizard-actions{border-top:1px solid var(--ec-border);background:var(--ec-bg-secondary);justify-content:flex-end;align-items:center;gap:10px;min-height:66px;margin-top:auto;padding:12px 20px;display:flex}.wizard-actions>div{flex:1}.unsaved-indicator{color:var(--ec-warning);font-size:11px}.mode-choice{grid-template-columns:1fr 1fr;gap:12px;margin-bottom:18px;display:grid}.mode-choice button{border:1px solid var(--ec-border);background:var(--ec-bg-surface);color:var(--ec-text-muted);text-align:left;border-radius:7px;grid-template-columns:36px 1fr;padding:16px;display:grid}.mode-choice button>svg{color:var(--ec-primary);grid-row:1/3}.mode-choice button strong{color:var(--ec-text-primary);font-size:13px}.mode-choice button small{margin-top:4px;font-size:10px}.mode-choice button.selected{border-color:var(--ec-primary);box-shadow:inset 3px 0 0 var(--ec-primary)}.template-picker{gap:8px;display:grid}.template-picker button{border:1px solid var(--ec-border);background:var(--ec-bg-surface);color:var(--ec-text-secondary);text-align:left;border-radius:6px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:5px 12px;padding:12px 14px;display:grid}.template-picker button.selected{border-color:var(--ec-primary);background:var(--ec-primary)}@supports (color:color-mix(in lab, red, red)){.template-picker button.selected{background:color-mix(in srgb, var(--ec-primary) 5%, var(--ec-bg-surface))}}.template-picker button span strong{color:var(--ec-text-primary);font-size:12px;display:block}.template-picker button span small{color:var(--ec-text-muted);font-size:10px}.template-picker button em{color:var(--ec-text-subtle);font-size:9px;font-style:normal}.protocol-selector{border-bottom:1px solid var(--ec-border);grid-template-columns:260px 1fr;align-items:end;gap:18px;margin-bottom:22px;padding-bottom:20px;display:grid}.protocol-selector>div{color:var(--ec-primary);align-items:center;gap:10px;display:flex}.protocol-selector p{margin:0}.protocol-selector p strong,.protocol-selector p small{display:block}.protocol-selector p strong{color:var(--ec-text-secondary);font-size:11px}.protocol-selector p small{color:var(--ec-text-subtle);font-size:9px}.protocol-form{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.form-advisory{border:1px solid var(--ec-warning);grid-column:1/-1;align-items:center;gap:8px;margin:2px 0 0;padding:10px;display:flex}@supports (color:color-mix(in lab, red, red)){.form-advisory{border:1px solid color-mix(in srgb, var(--ec-warning) 25%, var(--ec-border))}}.form-advisory{background:var(--ec-warning);border-radius:6px}@supports (color:color-mix(in lab, red, red)){.form-advisory{background:color-mix(in srgb, var(--ec-warning) 7%, transparent)}}.form-advisory{color:var(--ec-text-muted);font-size:10px}.form-advisory svg{width:15px;color:var(--ec-warning)}.tag-builder-head{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.tag-builder-head h3{margin:0;font-size:14px}.tag-builder-head p{color:var(--ec-text-muted);margin:4px 0 0;font-size:10px}.tag-builder-list{gap:8px;display:grid}.tag-builder-row{border:1px solid var(--ec-border);background:var(--ec-bg-secondary);border-radius:6px;grid-template-columns:72px 1fr 1.3fr 105px 86px 1.1fr 28px;align-items:center;gap:7px;padding:8px;display:grid}.tag-builder-row>button{width:28px;height:28px;color:var(--ec-text-subtle);background:0 0;border:0;place-items:center;display:grid}.tag-builder-row>button svg{width:14px}.test-target{border:1px solid var(--ec-border);background:var(--ec-bg-secondary);border-radius:7px;align-items:center;gap:14px;padding:16px;display:flex}.test-target>svg{color:var(--ec-primary)}.test-target>div{flex:1}.test-target span,.test-target strong,.test-target small{display:block}.test-target span{color:var(--ec-text-subtle);letter-spacing:.08em;font-size:9px}.test-target strong{color:var(--ec-text-primary);font:600 13px var(--font-geist-mono);margin:3px 0}.test-target small{color:var(--ec-text-muted);font-size:10px}.test-placeholder,.connection-progress{min-height:220px;color:var(--ec-text-muted);text-align:center;place-content:center;place-items:center;display:grid}.test-placeholder>svg,.connection-progress>svg{width:30px;height:30px;color:var(--ec-primary)}.test-placeholder h3,.connection-progress strong{color:var(--ec-text-primary);margin:10px 0 4px;font-size:13px}.test-placeholder p,.connection-progress p{max-width:450px;margin:0;font-size:11px}.test-placeholder small{color:var(--ec-text-subtle);margin-top:16px;font-size:9px}.spin{animation:1s linear infinite ec-spin}@keyframes ec-spin{to{transform:rotate(360deg)}}.connection-result{border:1px solid var(--ec-border);border-radius:7px;margin-top:16px;overflow:hidden}.connection-result>header{border-bottom:1px solid var(--ec-border);background:var(--ec-bg-secondary);gap:12px;padding:14px 16px;display:flex}.connection-result.is-passed>header>svg{color:var(--ec-success)}.connection-result.is-failed>header>svg{color:var(--ec-danger)}.connection-result header strong{color:var(--ec-text-primary);font-size:13px}.connection-result header p{color:var(--ec-text-muted);margin:3px 0 0;font-size:10px}.connection-result ol{margin:0;padding:10px 16px;list-style:none;display:grid}.connection-result ol li{min-height:34px;color:var(--ec-text-muted);grid-template-columns:25px 1fr auto;align-items:center;display:grid}.connection-result ol li>span{border:1px solid var(--ec-border);border-radius:50%;place-items:center;width:19px;height:19px;font-size:10px;display:grid}.connection-result ol li.is-passed>span{border-color:var(--ec-success);color:var(--ec-success)}.connection-result ol li.is-failed>span{border-color:var(--ec-danger);color:var(--ec-danger)}.connection-result ol li strong{font-size:11px;font-weight:500}.connection-result ol li small{font-size:9px}.diagnostic-suggestions{border-top:1px solid var(--ec-border);background:var(--ec-warning);padding:12px 16px}@supports (color:color-mix(in lab, red, red)){.diagnostic-suggestions{background:color-mix(in srgb, var(--ec-warning) 5%, transparent)}}.diagnostic-suggestions strong{font-size:10px}.diagnostic-suggestions ul{color:var(--ec-text-muted);margin:6px 0 0 16px;padding:0;font-size:10px}.review-layout{grid-template-columns:1fr 1fr;gap:12px;display:grid}.review-block{border:1px solid var(--ec-border);border-radius:6px;padding:14px}.review-block h3{color:var(--ec-text-primary);align-items:center;gap:7px;margin:0 0 10px;font-size:12px;display:flex}.review-block h3 svg{width:15px;color:var(--ec-primary)}.review-block dl{margin:0}.review-block dl div{border-top:1px solid var(--ec-border-subtle);justify-content:space-between;gap:15px;padding:6px 0;font-size:10px;display:flex}.review-block dt{color:var(--ec-text-muted)}.review-block dd{color:var(--ec-text-secondary);text-align:right;margin:0}.review-callout{border:1px solid var(--ec-success);grid-column:1/-1;align-items:center;gap:12px;padding:14px;display:flex}@supports (color:color-mix(in lab, red, red)){.review-callout{border:1px solid color-mix(in srgb, var(--ec-success) 30%, var(--ec-border))}}.review-callout{background:var(--ec-success);border-radius:6px}@supports (color:color-mix(in lab, red, red)){.review-callout{background:color-mix(in srgb, var(--ec-success) 5%, transparent)}}.review-callout{color:var(--ec-success)}.review-callout strong{color:var(--ec-text-primary);font-size:11px}.review-callout p{color:var(--ec-text-muted);margin:3px 0 0;font-size:10px}.library-notice{border:1px solid var(--ec-primary);gap:12px;margin-bottom:12px;padding:12px 14px;display:flex}@supports (color:color-mix(in lab, red, red)){.library-notice{border:1px solid color-mix(in srgb, var(--ec-primary) 18%, var(--ec-border))}}.library-notice{background:var(--ec-primary);border-radius:7px}@supports (color:color-mix(in lab, red, red)){.library-notice{background:color-mix(in srgb, var(--ec-primary) 4%, var(--ec-bg-surface))}}.library-notice{color:var(--ec-primary)}.library-notice strong{color:var(--ec-text-primary);font-size:11px}.library-notice p{color:var(--ec-text-muted);margin:3px 0 0;font-size:10px}.template-validation{color:var(--ec-text-muted);align-items:center;gap:5px;font-size:10px;display:inline-flex}.template-validation svg{width:13px}.template-validation.is-custom{color:var(--ec-warning)}.template-summary-grid{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.template-version{color:var(--ec-primary);gap:10px;margin-bottom:13px;display:flex}.template-version strong{color:var(--ec-text-primary);font-size:11px}.template-version p{color:var(--ec-text-muted);margin:3px 0 0;font-size:10px}.template-docs{gap:8px;display:grid}.template-docs span{border:1px solid var(--ec-border);color:var(--ec-text-secondary);border-radius:5px;align-items:center;gap:7px;padding:8px;font-size:10px;display:flex}.template-docs span svg{width:14px;color:var(--ec-primary)}.template-docs small{color:var(--ec-text-subtle);margin-left:auto}.device-health-summary,.asset-summary-strip{border:1px solid var(--ec-border);background:var(--ec-bg-surface);border-radius:7px;grid-template-columns:repeat(5,1fr);margin-bottom:12px;display:grid;overflow:hidden}.device-health-summary>div{border-right:1px solid var(--ec-border);min-height:58px;padding:10px 12px}.device-health-summary>div:last-child{border-right:0}.device-health-summary span,.device-health-summary strong{display:block}.device-health-summary>div>span{color:var(--ec-text-subtle);text-transform:uppercase;font-size:9px}.device-health-summary>div>strong{color:var(--ec-text-secondary);margin-top:6px;font-size:11px}.detail-tabs button b{background:var(--ec-bg-subtle);border-radius:8px;padding:1px 5px;font-size:9px}.copy-value{justify-content:flex-end;align-items:center;gap:6px;display:flex}.copy-value button{width:24px;height:24px;color:var(--ec-text-subtle);background:0 0;border:0;place-items:center;display:grid}.copy-value button svg{width:12px}.panel-intro{border-bottom:1px solid var(--ec-border);color:var(--ec-primary);align-items:center;gap:10px;padding:12px;display:flex}.panel-intro p{margin:0}.panel-intro strong,.panel-intro small{display:block}.panel-intro strong{color:var(--ec-text-primary);font-size:11px}.panel-intro small{color:var(--ec-text-muted);font-size:9px}.connectivity-detail-grid,.configuration-grid,.tag-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.tag-detail-grid{grid-template-columns:1.1fr 1fr 1fr}.tag-detail-page .detail-list{column-gap:var(--ec-space-3);grid-template-columns:repeat(2,minmax(0,1fr))}.tag-detail-page .detail-list>div{min-width:0}.tag-detail-page .detail-list dd{overflow-wrap:anywhere;white-space:normal}.switch-field{align-items:center;gap:10px;display:flex}.switch-field>input{opacity:0;position:absolute}.switch-field>span{background:var(--ec-bg-subtle);width:34px;height:18px;box-shadow:inset 0 0 0 1px var(--ec-border);border-radius:9px;position:relative}.switch-field>span:after{content:"";background:var(--ec-text-subtle);border-radius:50%;width:12px;height:12px;transition:all .15s;position:absolute;top:3px;left:3px}.switch-field>input:checked+span{background:var(--ec-primary)}.switch-field>input:checked+span:after{background:#fff;left:19px}.switch-field strong,.switch-field small{display:block}.switch-field strong{color:var(--ec-text-secondary);font-size:11px}.switch-field small{color:var(--ec-text-subtle);font-size:9px}.maintenance-actions{gap:8px;display:grid}.maintenance-actions button{border:1px solid var(--ec-border);background:var(--ec-bg-surface);color:var(--ec-warning);text-align:left;border-radius:6px;align-items:center;gap:10px;padding:12px;display:flex}.maintenance-actions button.is-danger{color:var(--ec-danger)}.maintenance-actions strong,.maintenance-actions small{display:block}.maintenance-actions strong{color:var(--ec-text-primary);font-size:11px}.maintenance-actions small{color:var(--ec-text-subtle);margin-top:2px;font-size:9px}.configuration-actions{justify-content:flex-end;align-items:center;gap:10px;margin-top:12px;display:flex}.configuration-actions .unsaved-indicator{margin-right:auto}.test-dialog-body{min-height:300px}.confirm-dialog>svg{color:var(--ec-danger);margin:0 auto 8px;display:block}.confirm-dialog p{color:var(--ec-text-muted);text-align:center;font-size:11px}.confirm-dialog>div{justify-content:flex-end;gap:8px;margin-top:18px;display:flex}.drawer-note,.mapping-summary{border:1px solid var(--ec-border);background:var(--ec-bg-secondary);color:var(--ec-primary);border-radius:6px;align-items:center;gap:10px;padding:12px;display:flex}.drawer-note p,.mapping-summary div{margin:0}.drawer-note strong,.drawer-note small,.mapping-summary strong,.mapping-summary small{display:block}.drawer-note strong,.mapping-summary strong{color:var(--ec-text-primary);font-size:11px}.drawer-note small,.mapping-summary small{color:var(--ec-text-muted);font-size:9px}.ec-tag-value{flex-wrap:wrap;align-items:center;gap:9px;display:inline-flex}.ec-tag-value>strong{color:var(--ec-text-primary);font-family:var(--font-geist-mono);font-size:14px}.ec-tag-value>small{width:100%;color:var(--ec-text-subtle);align-items:center;gap:4px;font-size:9px;display:inline-flex}.ec-tag-value>small svg{width:11px}.ec-tag-value.is-compact>strong{font-size:11px}.tag-value-hero{border:1px solid var(--ec-border);background:var(--ec-bg-secondary);border-radius:6px;place-items:center;min-height:100px;margin-bottom:12px;display:grid}.tag-value-hero .ec-tag-value{justify-content:center}.tag-value-hero .ec-tag-value>strong{text-align:center;width:100%;font-size:26px}.asset-summary-strip{grid-template-columns:repeat(4,1fr)}.asset-summary-strip>div{border-right:1px solid var(--ec-border);min-height:68px;color:var(--ec-primary);align-items:center;gap:10px;padding:12px;display:flex}.asset-summary-strip>div:last-child{border-right:0}.asset-summary-strip p{margin:0}.asset-summary-strip strong,.asset-summary-strip small{display:block}.asset-summary-strip strong{color:var(--ec-text-primary);font-size:12px}.asset-summary-strip small{color:var(--ec-text-subtle);font-size:9px}@media (max-width:1100px){.wizard-shell{grid-template-columns:185px minmax(0,1fr)}.protocol-form{grid-template-columns:repeat(2,minmax(0,1fr))}.tag-builder-row{grid-template-columns:64px 1fr 1.2fr 95px 28px}.tag-builder-row>:nth-child(5),.tag-builder-row>:nth-child(6){grid-column:span 2}.template-summary-grid,.tag-detail-grid{grid-template-columns:1fr 1fr}.tag-detail-grid>:last-child{grid-column:1/-1}}@media (max-width:760px){.wizard-shell{display:block}.wizard-steps{border-right:0;border-bottom:1px solid var(--ec-border);padding:8px;display:flex;overflow-x:auto}.wizard-steps button{grid-template-columns:28px 1fr;min-width:112px;padding:8px}.wizard-steps button>svg,.wizard-steps button:after{display:none}.wizard-steps button>span{width:24px;height:24px}.wizard-content>header,.wizard-section{padding-left:18px;padding-right:18px}.form-grid,.mode-choice,.protocol-selector,.protocol-form,.review-layout,.template-summary-grid,.connectivity-detail-grid,.configuration-grid,.tag-detail-grid{grid-template-columns:1fr}.review-callout,.tag-detail-grid>:last-child{grid-column:auto}.tag-builder-row{grid-template-columns:1fr 1fr 30px}.tag-builder-row>:first-child{grid-column:1/-1}.tag-builder-row>:nth-child(4),.tag-builder-row>:nth-child(5),.tag-builder-row>:nth-child(6){grid-column:auto}.tag-builder-row>:nth-child(6){grid-column:1/3}.test-target{flex-wrap:wrap;align-items:flex-start}.test-target>div{min-width:calc(100% - 50px)}.test-target .ec-button{justify-content:center;width:100%}.device-health-summary{grid-template-columns:1fr 1fr}.device-health-summary>div{border-bottom:1px solid var(--ec-border)}.asset-summary-strip{grid-template-columns:1fr 1fr}.detail-tabs{overflow-x:auto}.detail-tabs button{flex:none}.library-notice{align-items:flex-start}}.domain-stats-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.entity-kpi-strip,.registry-summary-strip{border:1px solid var(--ec-border);background:var(--ec-bg-surface);border-radius:7px;grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:14px;display:grid}.entity-kpi-strip>div,.registry-summary-strip>div{border-right:1px solid var(--ec-border);min-width:0;padding:16px 18px}.entity-kpi-strip>div:last-child,.registry-summary-strip>div:last-child{border-right:0}.entity-kpi-strip span,.registry-summary-strip span{color:var(--ec-text-muted);letter-spacing:.07em;text-transform:uppercase;margin-bottom:6px;font-size:9px;font-weight:650;display:block}.entity-kpi-strip strong,.registry-summary-strip strong{color:var(--ec-text-primary);text-overflow:ellipsis;white-space:nowrap;font-size:14px;display:block;overflow:hidden}.registry-summary-strip strong{color:var(--ec-primary);font-size:22px}.domain-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:14px;display:grid}.domain-chain{border:1px solid var(--ec-border);background:var(--ec-bg-secondary);border-radius:7px;align-items:center;gap:9px;min-height:56px;margin-bottom:14px;padding:10px 14px;display:flex;overflow-x:auto}.domain-chain>span,.domain-chain>button{border:1px solid var(--ec-border);background:var(--ec-bg-surface);min-width:max-content;color:var(--ec-text-secondary);border-radius:5px;align-items:center;gap:7px;padding:8px 10px;font-size:11px;font-weight:600;display:inline-flex}.domain-chain>button:hover{border-color:var(--ec-primary);color:var(--ec-primary)}.domain-chain>svg{width:13px;min-width:13px;color:var(--ec-text-subtle)}.domain-chain svg,.definition-chip-list svg,.compact-entity-list svg,.source-relationship-card svg{width:15px}.definition-chip-list{flex-wrap:wrap;gap:7px;display:flex}.definition-chip-list>span{border:1px solid var(--ec-border);background:var(--ec-bg-secondary);color:var(--ec-text-secondary);border-radius:4px;align-items:center;gap:6px;padding:7px 9px;font-size:11px;display:inline-flex}.panel-explainer{color:var(--ec-text-muted);margin:15px 0 0;font-size:11px;line-height:1.55}.compact-entity-list{gap:7px;display:grid}.compact-entity-list>div,.compact-entity-list>button,.source-relationship-card{border:1px solid var(--ec-border);background:var(--ec-bg-surface);width:100%;color:var(--ec-text-muted);text-align:left;border-radius:5px;align-items:center;gap:10px;padding:10px 11px;display:flex}.compact-entity-list>button:hover{border-color:var(--ec-primary)}.compact-entity-list span,.source-relationship-card>div{flex:1;gap:3px;display:grid}.compact-entity-list strong,.source-relationship-card strong{color:var(--ec-text-primary);font-size:12px}.compact-entity-list small,.source-relationship-card small{color:var(--ec-text-muted);font-size:10px}.compact-entity-list b{color:var(--ec-success);text-transform:uppercase;font-size:9px;font-weight:650}.compact-entity-list b.connection-disconnected{color:var(--ec-danger)}.compact-entity-list b.connection-degraded{color:var(--ec-warning)}.table-link{color:var(--ec-primary);text-align:left;background:0 0;border:0;align-items:center;gap:5px;font-size:11px;display:inline-flex}.table-link svg{width:13px}.technology-check-grid{grid-column:1/-1;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;max-height:390px;display:grid;overflow-y:auto}.technology-check-grid label,.compatible-source-list label{border:1px solid var(--ec-border);background:var(--ec-bg-surface);cursor:pointer;border-radius:5px;align-items:center;gap:9px;padding:10px;display:flex}.technology-check-grid label.selected,.compatible-source-list label.selected{border-color:var(--ec-primary);box-shadow:inset 3px 0 0 var(--ec-primary)}.technology-check-grid input,.compatible-source-list input{accent-color:var(--ec-primary)}.technology-check-grid span,.compatible-source-list span{gap:3px;display:grid}.technology-check-grid strong,.compatible-source-list strong{color:var(--ec-text-primary);font-size:11px}.technology-check-grid small,.compatible-source-list small{color:var(--ec-text-muted);text-overflow:ellipsis;white-space:nowrap;font-size:9px;overflow:hidden}.compatible-source-list,.tag-builder-simple{grid-column:1/-1;gap:8px;display:grid}.compatible-source-list>p{color:var(--ec-text-secondary);margin:0 0 4px;font-size:11px}.wizard-test-card{border:1px dashed var(--ec-border);color:var(--ec-text-muted);text-align:center;border-radius:7px;grid-column:1/-1;place-items:center;padding:34px;display:grid}.wizard-test-card>svg{width:28px;height:28px;color:var(--ec-primary)}.wizard-test-card h3{color:var(--ec-text-primary);margin:10px 0 0}.wizard-test-card p{max-width:460px;line-height:1.55}.wizard-test-card>strong{align-items:center;gap:6px;margin-top:14px;display:flex}.review-list{border:1px solid var(--ec-border);border-radius:6px;grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr));width:100%;margin:0;display:grid}.review-list>div{border-right:1px solid var(--ec-border);border-bottom:1px solid var(--ec-border);padding:13px}.review-list dt{color:var(--ec-text-muted);text-transform:uppercase;font-size:9px}.review-list dd{color:var(--ec-text-primary);margin:5px 0 0;font-size:12px}.dali-principle{border:1px solid var(--ec-warning);align-items:flex-start;gap:15px;margin-bottom:14px;padding:17px 18px;display:flex}@supports (color:color-mix(in lab, red, red)){.dali-principle{border:1px solid color-mix(in srgb, var(--ec-warning) 35%, var(--ec-border))}}.dali-principle{border-left:3px solid var(--ec-warning);background:var(--ec-bg-surface);border-radius:6px}.dali-principle>svg{color:var(--ec-warning)}.dali-principle div{gap:4px;display:grid}.dali-principle span{color:var(--ec-warning);letter-spacing:.08em;text-transform:uppercase;font-size:9px;font-weight:700}.dali-principle strong{font-size:14px}.dali-principle p{color:var(--ec-text-muted);margin:0;font-size:11px}.is-success-text{color:var(--ec-success)!important}@media (max-width:1180px){.domain-stats-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.technology-check-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:760px){.domain-stats-grid,.entity-kpi-strip,.registry-summary-strip,.domain-detail-grid,.review-list,.technology-check-grid{grid-template-columns:1fr}.entity-kpi-strip>div,.registry-summary-strip>div{border-right:0;border-bottom:1px solid var(--ec-border)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}html,body{background:var(--ec-bg-app);color:var(--ec-text-primary);font-family:var(--font-geist-sans);font-size:13px}::selection{color:var(--ec-text-primary);background:var(--ec-primary-soft)}.app-shell{background:var(--ec-bg-app)}.app-sidebar{border-color:var(--ec-border);background:var(--ec-bg-sidebar)}.app-brand{border-color:var(--ec-border-subtle);flex-basis:60px;height:60px;padding:0 16px}.app-brand__mark,.login-brand>span{color:#fff;background:var(--ec-primary);width:32px;height:32px;box-shadow:none;border-radius:7px;flex-basis:32px}.app-brand__text strong,.login-brand strong{color:var(--ec-text-primary);letter-spacing:.025em;font-size:12px}.app-brand__text small,.login-brand small{color:var(--ec-text-subtle);font-family:var(--font-geist-sans);letter-spacing:.05em;font-size:8px}.app-sidebar nav{padding:10px 8px}.app-sidebar nav h3{color:var(--ec-text-subtle);font-family:var(--font-geist-sans);letter-spacing:0;margin:16px 10px 6px;font-size:11px;font-weight:600}.app-sidebar nav a{height:38px;color:var(--ec-text-secondary);border-radius:6px;gap:10px;padding:0 10px;font-size:13px}.app-sidebar nav a:hover{color:var(--ec-text-primary);background:var(--ec-bg-hover)}.app-sidebar nav a.active{color:var(--ec-primary);background:var(--ec-primary-soft);box-shadow:inset 3px 0 var(--ec-primary)}.app-sidebar nav a b,.app-sidebar nav a em{font-family:var(--font-geist-sans);letter-spacing:0;text-transform:none;font-size:10px}.app-sidebar nav a b.is-alert{color:#fff;background:var(--ec-danger)}.sidebar-footer{border-color:var(--ec-border-subtle);min-height:66px}.gateway-state{background:var(--ec-bg-secondary);border-color:var(--ec-border-subtle);padding:8px}.gateway-state>span,.realtime-label i,.pulse-dot{box-shadow:none}.gateway-state strong{color:var(--ec-text-secondary);font-size:10px}.gateway-state small{color:var(--ec-text-subtle);font-size:9px}.app-header{border-color:var(--ec-border-subtle);background:var(--ec-bg-header);-webkit-backdrop-filter:none;backdrop-filter:none;height:60px}.context-selectors{padding-left:20px}.context-selectors label{min-width:160px}.context-selectors label>span{color:var(--ec-text-subtle);font-family:var(--font-geist-sans);letter-spacing:0;font-size:10px}.context-selectors select{color:var(--ec-text-primary);font-size:12px;font-weight:600}.global-search,.header-icon-button,.user-button{border-color:var(--ec-border);background:var(--ec-bg-surface);border-radius:6px;height:34px}.global-search{width:230px;color:var(--ec-text-muted);font-size:12px}.global-search kbd{background:var(--ec-bg-subtle);border-color:var(--ec-border);font-size:9px}.header-icon-button{color:var(--ec-text-muted)}.alarm-button span{color:#fff;background:var(--ec-danger);border-color:var(--ec-bg-header)}.user-button strong{color:var(--ec-text-primary);font-size:11px}.user-button small{color:var(--ec-text-muted);font-family:var(--font-geist-sans);font-size:9px}.user-popover{background:var(--ec-bg-surface);box-shadow:var(--shadow);border-radius:7px}.user-popover>div:first-child{border-color:var(--ec-border-subtle)}.user-popover>button{color:var(--ec-text-secondary);font-size:12px}.user-theme-options{border-bottom:1px solid var(--ec-border-subtle);grid-template-columns:repeat(3,1fr);gap:4px!important;padding:8px 0!important;display:grid!important}.user-theme-options button{min-width:0;color:var(--ec-text-muted);background:0 0;border:0;border-radius:5px;justify-items:center;gap:3px;padding:7px 3px;font-size:10px;display:grid}.user-theme-options button svg{width:14px}.user-theme-options button[aria-pressed=true]{color:var(--ec-primary);background:var(--ec-primary-soft)}.app-content{width:min(100%,1550px);padding:22px 24px 40px}.login-page{background:var(--ec-bg-app);color:var(--ec-text-primary);grid-template-columns:minmax(0,1fr) minmax(400px,.72fr)}.login-visual{border-color:var(--ec-border);background:var(--ec-bg-secondary)}.login-grid{display:none}.login-visual__content{width:min(570px,76%)}.login-visual__badge{color:var(--ec-text-muted);font-family:var(--font-geist-sans);letter-spacing:0;margin-bottom:24px;font-size:11px}.login-visual__badge svg{color:var(--ec-success)}.login-visual h1{color:var(--ec-text-primary);letter-spacing:-.035em;font-size:clamp(32px,3vw,46px);font-weight:600;line-height:1.12}.login-visual h1 span{color:var(--ec-text-secondary)}.login-visual__content>p{max-width:520px;color:var(--ec-text-muted);margin:22px 0 30px;font-size:14px;line-height:1.6}.login-telemetry{border-color:var(--ec-border);background:var(--ec-bg-surface);-webkit-backdrop-filter:none;backdrop-filter:none;border-radius:7px}.login-telemetry>div{border-color:var(--ec-border-subtle);min-height:76px}.login-telemetry span{color:var(--ec-text-muted);font-family:var(--font-geist-sans);letter-spacing:0;font-size:10px}.login-telemetry i{background:var(--ec-success);box-shadow:none}.login-telemetry strong{color:var(--ec-text-primary);font-family:var(--font-geist-sans);font-size:15px}.login-visual footer{color:var(--ec-text-subtle);font-family:var(--font-geist-sans);letter-spacing:0;font-size:10px}.login-form-panel{background:var(--ec-bg-surface)}.login-title h2{color:var(--ec-text-primary);font-size:24px}.login-title p,.ec-field>label,.ec-field>span{color:var(--ec-text-muted);font-size:12px}.login-options,.login-options button,.login-demo p{color:var(--ec-text-muted);font-size:11px}.login-demo{border-color:var(--ec-border);background:var(--ec-bg-secondary)}.login-demo span{color:var(--ec-text-secondary);font-family:var(--font-geist-sans);letter-spacing:0}.login-version{color:var(--ec-text-subtle);font-family:var(--font-geist-sans)}.ec-card,.ec-panel{border-color:var(--ec-border);background:var(--ec-bg-surface);box-shadow:none;border-radius:7px}.ec-panel__header{border-color:var(--ec-border-subtle);min-height:54px;padding:11px 15px}.ec-panel__header h2{color:var(--ec-text-primary);letter-spacing:0;margin-top:3px;font-size:15px;font-weight:600}.ec-eyebrow{color:var(--ec-text-muted);font-family:var(--font-geist-sans);letter-spacing:0;font-size:11px;font-weight:500}.ec-button{letter-spacing:0;border-radius:6px;min-height:34px;font-size:12px}.ec-button--sm{min-height:32px;font-size:11px}.ec-button--primary{color:#fff;background:var(--ec-primary);box-shadow:none}.ec-button--primary:hover{background:var(--ec-primary-hover);filter:none;transform:none}.ec-button--secondary{color:var(--ec-text-secondary);border-color:var(--ec-border);background:var(--ec-bg-surface)}.ec-input,.ec-select,.ec-search-input{background-color:var(--ec-bg-surface);min-height:36px;color:var(--ec-text-primary);border-color:#d0d5dd;border-radius:6px;font-size:12px}:root[data-theme=dark] .ec-input,:root[data-theme=dark] .ec-select,:root[data-theme=dark] .ec-search-input{border-color:var(--ec-border)}.ec-search-input input{color:var(--ec-text-primary);font-size:12px}.ec-page-header{margin-bottom:14px}.ec-page-header__row{align-items:center}.ec-page-header h1{color:var(--ec-text-primary);letter-spacing:-.025em;margin:4px 0;font-size:24px;font-weight:600;line-height:1.2}.ec-page-header p{color:var(--ec-text-muted);font-size:13px}.ec-breadcrumb{color:var(--ec-text-muted);margin-bottom:10px;font-size:11px}.ec-page-toolbar{border:1px solid var(--ec-border);background:var(--ec-bg-surface);border-radius:7px;justify-content:space-between;align-items:center;gap:18px;min-height:52px;margin-bottom:12px;padding:8px 12px;display:flex}.page-toolbar-context strong,.page-toolbar-context span{display:block}.page-toolbar-context strong{color:var(--ec-text-primary);font-size:13px}.page-toolbar-context span{color:var(--ec-text-subtle);margin-top:2px;font-size:11px}.page-toolbar-controls{align-items:flex-end;gap:8px;display:flex}.page-toolbar-controls label>span{color:var(--ec-text-muted);margin-bottom:3px;font-size:10px;display:block}.page-toolbar-controls .ec-select{min-width:132px;height:32px;min-height:32px}.site-operational-state{background:var(--ec-bg-surface);border-radius:6px;padding:8px 10px}.site-operational-state strong{font-size:12px}.site-operational-state small{color:var(--ec-text-muted);font-family:var(--font-geist-sans);font-size:10px}.ec-status,.ec-quality,.ec-alarm-state{color:var(--ec-text-secondary);font-family:var(--font-geist-sans);letter-spacing:0;text-transform:none;font-size:11px}.ec-status.is-md{background:0 0;padding:0}.ec-status.is-offline{color:var(--ec-status-offline)}.ec-status-dot.is-offline{background:var(--ec-status-offline)}.stats-grid,.alerts-stats{border:1px solid var(--ec-border);background:var(--ec-bg-surface);border-radius:7px;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;margin-bottom:12px;overflow:hidden}.ec-stat-card{border:0;border-right:1px solid var(--ec-border-subtle);background:0 0;border-radius:0;min-height:102px;padding:15px 17px}.ec-stat-card:last-child{border-right:0}.ec-stat-card:after,.ec-stat-card__icon,.ec-stat-card>em{display:none}.ec-stat-card>span{color:var(--ec-text-muted);font-family:var(--font-geist-sans);letter-spacing:0;font-size:12px;font-weight:500}.ec-stat-card>strong{color:var(--ec-text-primary);font-family:var(--font-geist-sans);letter-spacing:-.03em;margin:7px 0 3px;font-size:27px;font-weight:600}.ec-stat-card>small{color:var(--ec-text-muted);font-size:11px}.overview-primary-grid{grid-template-columns:minmax(0,1.65fr) minmax(290px,.8fr);gap:12px;margin-bottom:12px}.systems-panel .ec-table-wrap table{min-width:640px}.system-metric-value b,.system-metric-value small{display:block}.system-metric-value b{color:var(--ec-text-primary);font-weight:600}.system-metric-value small{color:var(--ec-text-subtle);margin-top:2px;font-size:10px}.realtime-label{color:var(--ec-text-muted);font-family:var(--font-geist-sans);letter-spacing:0;font-size:10px}.site-health-summary strong{color:var(--ec-text-secondary);font-size:12px}.site-health-summary small{color:var(--ec-text-subtle);font-size:10px}.service-list>div{height:42px;font-size:12px}.service-list strong,.service-list small{font-family:var(--font-geist-sans);text-transform:none;font-size:10px}.overview-chart-grid{gap:12px;margin-bottom:12px}.chart-total small,.chart-total strong,.health-chart-total strong,.health-legend b{font-family:var(--font-geist-sans)}.chart-total small{letter-spacing:0;font-size:10px}.chart-total strong{font-size:13px}.health-legend>div{color:var(--ec-text-muted);font-size:11px}.table-panel{margin-top:12px}.ec-table-wrap table{min-width:760px}.ec-table-wrap th{background:var(--ec-bg-secondary);height:38px;color:var(--ec-text-muted);font-family:var(--font-geist-sans);letter-spacing:0;text-transform:none;padding:0 13px;font-size:11px;font-weight:600}.ec-table-wrap td,.ec-table-wrap table.is-compact td{height:43px;color:var(--ec-text-secondary);font-size:12px}.table-primary{color:var(--ec-text-primary);font-size:12px}.table-mono{font-size:11px}.table-subline,.device-cell small,.tag-cell small{color:var(--ec-text-subtle);font-size:10px}.device-cell strong,.tag-cell strong{color:var(--ec-text-primary);font-size:12px;font-weight:600}.device-cell>span,.tag-cell>span{background:var(--ec-bg-subtle);color:var(--ec-text-muted)}.table-toolbar{background:var(--ec-bg-surface);border-radius:7px}.table-filters>span,.inventory-summary{color:var(--ec-text-muted);font-family:var(--font-geist-sans);letter-spacing:0;font-size:10px}.inventory-summary{background:var(--ec-bg-secondary)}.tag-summary-strip{background:var(--ec-bg-surface);border-radius:7px;min-height:70px}.tag-summary-strip>div>span{background:var(--ec-bg-subtle);color:var(--ec-text-muted)}.tag-summary-strip strong{color:var(--ec-text-primary);font-family:var(--font-geist-sans)}.tag-summary-strip small,.tag-summary-strip p>span{font-size:10px}.detail-tabs{border:0;border-bottom:1px solid var(--ec-border);background:0 0;border-radius:0;gap:18px;margin:0 0 14px;padding:0}.detail-tabs button{height:38px;color:var(--ec-text-muted);border-radius:0;padding:0 2px;font-size:12px;position:relative}.detail-tabs button.active{color:var(--ec-primary);background:0 0}.detail-tabs button.active:after{content:"";background:var(--ec-primary);height:2px;position:absolute;bottom:-1px;left:0;right:0}.detail-list dt,.connectivity-list dt{color:var(--ec-text-muted);font-size:11px}.detail-list dd,.connectivity-list dd,.device-health-list strong{color:var(--ec-text-secondary);font-size:12px}.device-health-list small{font-size:10px}.connectivity-hero,.device-active-alert,.ec-callout{border-radius:6px}@media (max-width:1180px){.global-search{width:170px}.user-button>div{display:none}.overview-primary-grid,.overview-chart-grid{grid-template-columns:1fr}}@media (max-width:760px){.app-sidebar{transform:translate(-100%)}.app-sidebar.is-mobile-open{transform:translate(0)}.app-workspace{margin-left:0}.mobile-menu-button{width:44px;height:60px;color:var(--ec-text-muted);background:0 0;border:0;place-items:center;display:grid}.context-selectors{padding-left:0}.context-selectors>i,.context-selectors label:first-child,.global-search,.header-icon-button:first-of-type,.user-button>div,.user-button>svg{display:none}.context-selectors label{min-width:118px}.header-actions{gap:5px;padding-right:8px}.app-content{padding:18px 14px 36px}.ec-page-header__row{flex-wrap:wrap;align-items:flex-start}.ec-page-header__status,.ec-page-header__actions{width:100%;margin:6px 0 0}.ec-page-toolbar{flex-direction:column;align-items:stretch}.page-toolbar-controls{flex-wrap:wrap;align-items:stretch}.page-toolbar-controls label{flex:1}.page-toolbar-controls .ec-select{width:100%}.stats-grid,.alerts-stats{grid-template-columns:1fr 1fr}.ec-stat-card:nth-child(2){border-right:0}.ec-stat-card:nth-child(-n+2){border-bottom:1px solid var(--ec-border-subtle)}.ec-stat-card{min-height:94px}.login-page{display:block}.login-visual{display:none}.login-form-panel{min-height:100vh;padding:28px 22px}}@media (max-width:460px){.stats-grid,.alerts-stats{grid-template-columns:1fr 1fr}.ec-stat-card{border-right:1px solid var(--ec-border-subtle)}.ec-stat-card:nth-child(2n){border-right:0}}.dashboard-view-page,.dashboard-editor-page,.operational-dashboards-page,.operational-dashboard-section,.operational-dashboard-stack{min-width:0;max-width:100%}.dashboard-view-page,.dashboard-editor-page{container:dashboard-page/inline-size}.dashboard-grid-container{width:100%;min-width:0;max-width:100%}.dashboard-grid-skeleton{grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));align-content:start;gap:8px;min-height:260px;display:grid}.dashboard-grid-skeleton>span{border:1px solid var(--border-soft);background:linear-gradient(100deg, var(--background-subtle) 20%, var(--background-subtle) 42%, var(--background-subtle) 64%);border-radius:9px;min-height:112px}@supports (color:color-mix(in lab, red, red)){.dashboard-grid-skeleton>span{background:linear-gradient(100deg, var(--background-subtle) 20%, color-mix(in srgb, var(--background-subtle) 72%, var(--surface)) 42%, var(--background-subtle) 64%)}}.dashboard-grid-skeleton>span{background-size:220% 100%;animation:1.2s ease-in-out infinite dashboard-grid-measuring}.dashboard-grid-container .dashboard-table-wrap{overscroll-behavior-inline:contain;min-width:0;max-width:100%;overflow:auto}.dashboard-grid-container .dashboard-table{min-width:480px}.dashboard-variable-bar{flex-wrap:wrap;min-width:0}.dashboard-variable-bar label,.dashboard-variable-bar .ec-select{min-width:0;max-width:100%}.dashboard-grid-container .dashboard-panel{flex-direction:column;min-width:0;display:flex}.dashboard-grid-container .dashboard-panel__header{flex:0 0 44px}.dashboard-panel__heading{flex:auto;align-items:center;gap:7px;min-width:0;display:flex}.dashboard-panel__title{min-width:0}.dashboard-panel-drag-handle{width:32px;min-width:32px;height:32px;color:var(--text-muted);cursor:grab;touch-action:none;background:0 0;border:1px solid #0000;border-radius:6px;flex:0 0 32px;place-items:center;padding:0;display:grid}:is(.dashboard-panel-drag-handle:hover,.dashboard-panel-drag-handle:focus-visible){color:var(--primary);border-color:var(--border);background:var(--primary-soft)}.dashboard-panel-drag-handle:active{cursor:grabbing}.dashboard-grid-container .dashboard-panel__body{touch-action:pan-y;flex:auto;min-width:0;height:auto}.dashboard-panel__reorder-actions{border-bottom:1px solid var(--border-soft);background:var(--background-subtle);flex:none;gap:6px;min-width:0;padding:4px 10px;display:flex}.dashboard-panel__reorder-actions button{border:1px solid var(--border);min-width:0;min-height:36px;color:var(--text-secondary);background:var(--surface);border-radius:6px;flex:1 1 0;justify-content:center;align-items:center;gap:5px;padding:6px 8px;font-size:11px;font-weight:650;display:inline-flex}:is(.dashboard-panel__reorder-actions button:hover:not(:disabled),.dashboard-panel__reorder-actions button:focus-visible:not(:disabled)){color:var(--primary);border-color:var(--primary)}.dashboard-panel__reorder-actions button:disabled{cursor:not-allowed;opacity:.44}@media (pointer:coarse){.dashboard-panel-drag-handle{flex-basis:44px;width:44px;min-width:44px;height:44px}.dashboard-panel__reorder-actions button{min-height:44px}}@container dashboard-page (width<=760px){.dashboard-toolbar{flex-direction:column;align-items:stretch;position:static}.dashboard-toolbar__group,.dashboard-toolbar__actions{flex-wrap:wrap;min-width:0}.dashboard-toolbar__actions{margin-left:0}}@keyframes dashboard-grid-measuring{0%,to{background-position:100% 0}50%{background-position:0 0}}@media (prefers-reduced-motion:reduce){.dashboard-grid-skeleton>span{animation:none}}:where(button,a,input,select,textarea,[tabindex]):focus-visible{outline:2px solid var(--ec-primary);outline-offset:2px}.ec-page-header p{max-width:820px;line-height:1.5}.ec-button{min-height:36px;padding-inline:var(--ec-space-3)}.ec-button--sm{min-height:32px}.ec-button--icon{width:36px;min-width:36px;padding:0}.ec-button--link{min-height:auto;color:var(--ec-primary);background:0 0;border:0;padding:0}.ec-button--link:hover{color:var(--ec-primary-hover);background:0 0;text-decoration:underline}.ec-badge.is-danger{color:var(--ec-danger);border-color:var(--ec-danger)}@supports (color:color-mix(in lab, red, red)){.ec-badge.is-danger{border-color:color-mix(in srgb, var(--ec-danger) 28%, var(--ec-border))}}.ec-badge.is-danger{background:var(--ec-danger-soft)}.ec-status-dot{box-shadow:none!important}.ec-table-wrap{max-width:100%;overflow-x:auto}.ec-overlay{-webkit-backdrop-filter:none;backdrop-filter:none;background:#0c121694}.ec-dialog{border-radius:var(--ec-radius-lg);width:min(560px,100%);box-shadow:var(--ec-shadow-subtle)}.ec-dialog.is-sm{width:min(480px,100%)}.ec-dialog.is-lg{width:min(720px,100%)}.ec-dialog>header,.ec-drawer>header{padding:var(--ec-space-4) var(--ec-space-5)}.ec-dialog>header h2,.ec-drawer>header h2{font-size:16px;line-height:1.3}.ec-dialog>header p{font-size:12px;line-height:1.5}.ec-dialog>header button,.ec-drawer>header button{width:32px;height:32px}.ec-dialog__body,.ec-drawer__body{padding:var(--ec-space-5)}.ec-drawer{width:min(480px,100%);box-shadow:var(--ec-shadow-subtle)}.ec-feedback-state{min-height:240px;padding:var(--ec-space-8);border-radius:var(--ec-radius-md)}.completion-form-page,.settings-general-page{width:min(100%,1180px);margin-inline:auto}.entity-alert-summary>button{align-items:center;gap:var(--ec-space-3);width:100%;min-height:52px;padding:var(--ec-space-2) var(--ec-space-3);border:1px solid var(--ec-border-subtle);border-radius:var(--ec-radius-sm);color:var(--ec-text-secondary);background:var(--ec-bg-secondary);text-align:left;grid-template-columns:auto minmax(0,1fr) auto auto;display:grid}.entity-alert-summary>button:hover{border-color:var(--ec-primary);background:var(--ec-bg-hover)}.entity-alert-summary>button>span{min-width:0}.entity-alert-summary>button strong,.entity-alert-summary>button small{display:block}.entity-alert-summary>button small{text-overflow:ellipsis;white-space:nowrap;margin-top:2px;overflow:hidden}.entity-alert-summary__separator{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.library-category-strip{grid-template-columns:repeat(6,minmax(120px,1fr))}@media (min-width:981px) and (max-width:1440px){:root{--sidebar-width:228px}}@media (max-width:1440px){.app-content{padding:18px 20px 36px}}@media (max-width:1180px){.settings-grid,.completion-card-grid{grid-template-columns:1fr}.ec-table-wrap th.is-tertiary,.ec-table-wrap td.is-tertiary{display:none}.ec-page-header__row,.ec-page-header__actions{flex-wrap:wrap;align-items:flex-start}}@media (max-width:1100px){.completion-form,.settings-fields,.settings-fields--three{grid-template-columns:1fr}.completion-form .is-wide,.settings-checkbox{grid-column:1}.ec-table-wrap th.is-secondary,.ec-table-wrap td.is-secondary{display:none}.library-category-strip{grid-template-columns:repeat(3,minmax(130px,1fr))}}@media (max-width:760px){.ec-dialog,.ec-dialog.is-sm,.ec-dialog.is-lg,.ec-drawer{width:100%}.entity-alert-summary>button{grid-template-columns:auto minmax(0,1fr)}.entity-alert-summary>button>.alert-severity,.entity-alert-summary>button>.alert-state{grid-column:2}.library-category-strip{grid-template-columns:repeat(2,minmax(120px,1fr))}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
