@import"https://fonts.googleapis.com/css2?family=Sora:wght@400;500;600;700&family=IBM+Plex+Sans:wght@300;400;500;600&display=swap";:root{--bg: #f3f6f9;--bg-gradient: radial-gradient(circle at 15% 10%, #e7f1f6, #f3f6f9);--panel: #ffffff;--panel-soft: #f8fafc;--panel-border: #e2e8f0;--text: #0f172a;--muted: #64748b;--accent: #0ea5a6;--accent-2: #0f766e;--accent-soft: rgba(14, 165, 166, .12);--danger: #ef4444;--warning: #f59e0b;--ok: #22c55e;--border: #e2e8f0;--shadow: 0 12px 30px rgba(15, 23, 42, .08);--surface-elevated: #f8fafc;--surface-elevated-hover: #f1f5f9;--surface-elevated-border: #d2dde8;--surface-strong: #eef2f7;--surface-overlay: rgba(248, 250, 252, .58);--input-bg: #ffffff;--input-border: #d2dce8;--input-placeholder: #94a3b8;--chip-bg: #e2e8f0;--chip-text: #334155;--tone-online-bg: #dcfce7;--tone-online-border: #86efac;--tone-online-text: #166534;--tone-offline-bg: #fee2e2;--tone-offline-border: #fca5a5;--tone-offline-text: #991b1b;--tone-degraded-bg: #fef3c7;--tone-degraded-border: #fcd34d;--tone-degraded-text: #92400e;--tone-critical-bg: #fee2e2;--tone-critical-border: #fca5a5;--tone-critical-text: #991b1b;--tone-high-bg: #ffedd5;--tone-high-border: #fdba74;--tone-high-text: #9a3412;--tone-medium-bg: #fef9c3;--tone-medium-border: #fcd34d;--tone-medium-text: #854d0e;--tone-low-bg: #dcfce7;--tone-low-border: #86efac;--tone-low-text: #166534;--maintenance-banner-bg: linear-gradient(115deg, #ecf9ff 0%, #eaf8f4 56%, #f1fbf8 100%);--maintenance-banner-border: rgba(14, 116, 144, .28);--maintenance-banner-text: #0b3e56;--maintenance-banner-muted: rgba(11, 62, 86, .72);--maintenance-banner-kicker: rgba(11, 62, 86, .64);--maintenance-banner-dismiss-bg: rgba(255, 255, 255, .78);--maintenance-banner-dismiss-border: rgba(14, 116, 144, .26);--maintenance-banner-state-bg: rgba(14, 116, 144, .12);--maintenance-banner-state-border: rgba(14, 116, 144, .26);--maintenance-banner-state-text: #0c4a6e;--maintenance-notice-bg: rgba(14, 116, 144, .09);--maintenance-notice-border: rgba(14, 116, 144, .3);--maintenance-notice-text: #0d3d56;--maintenance-notice-muted: rgba(13, 61, 86, .72);--dashboard-grid-bg: linear-gradient(135deg, #f8fafc 0%, #f1f5f9 100%);--dashboard-grid-border: rgba(148, 163, 184, .3);--dashboard-widget-bg: linear-gradient(180deg, #ffffff 0%, #fbfdff 100%);--dashboard-widget-border: #d8e2ec;--dashboard-widget-title: #0f172a;--dashboard-widget-text: #1e293b;--dashboard-widget-muted: #64748b;--dashboard-widget-row-bg: #f8fafc;--dashboard-widget-row-border: #e2e8f0;--dashboard-scrollbar-track: rgba(148, 163, 184, .14);--dashboard-scrollbar-thumb: rgba(100, 116, 139, .42);--dashboard-scrollbar-thumb-hover: rgba(71, 85, 105, .58);--dashboard-chart-grid: rgba(148, 163, 184, .22);--dashboard-chart-axis: #94a3b8;--dashboard-chart-tick: #64748b;--dashboard-chart-cursor: rgba(14, 165, 166, .28);--dashboard-chart-tooltip-bg: #ffffff;--dashboard-chart-tooltip-border: rgba(148, 163, 184, .36);--dashboard-chart-tooltip-text: #0f172a;--dashboard-overlay: rgba(241, 245, 249, .72);--dashboard-grid-line: rgba(148, 163, 184, .2);--dashboard-grid-inset: rgba(148, 163, 184, .25);--dashboard-selected-shadow: rgba(14, 165, 166, .18);--dashboard-muted-widget-bg: linear-gradient(180deg, #f8fafc 0%, #f1f5f9 100%);--dashboard-muted-widget-border: #cbd5e1;--dashboard-delete-hover-bg: rgba(239, 68, 68, .12);--dashboard-lock-border: rgba(148, 163, 184, .68);--dashboard-lock-bg: rgba(226, 232, 240, .45);--dashboard-map-overlay: rgba(248, 250, 252, .55);--dashboard-row-hover-bg: rgba(14, 165, 166, .08);--dashboard-status-track: #e2e8f0;--dashboard-data-link: #64748b;--dashboard-viewer-border: rgba(148, 163, 184, .24);--dashboard-header-bg: rgba(255, 255, 255, .9);--dashboard-header-border: rgba(226, 232, 240, .8);--dashboard-refresh-bg: rgba(255, 255, 255, .78);--dashboard-refresh-hover-bg: rgba(255, 255, 255, .95);--dashboard-refresh-hover-border: rgba(100, 116, 139, .5)}*{box-sizing:border-box}body{margin:0;font-family:IBM Plex Sans,sans-serif;color:var(--text);background:var(--bg-gradient);position:relative;min-height:100vh;transition:background .35s ease,color .25s ease}body.app-design-modern{--bg: #041827;--bg-gradient: radial-gradient(circle at 12% 18%, rgba(10, 115, 132, .44), transparent 42%), radial-gradient(circle at 86% 12%, rgba(26, 136, 82, .34), transparent 46%), radial-gradient(circle at 50% 82%, rgba(11, 94, 150, .32), transparent 52%), linear-gradient(142deg, #03121f 0%, #07263a 48%, #081f2d 100%);--panel: rgba(6, 33, 49, .78);--panel-soft: rgba(9, 41, 63, .72);--panel-border: rgba(107, 181, 213, .26);--text: #e6f1fb;--muted: #b0c9db;--border: rgba(131, 186, 214, .28);--accent: #32c6b0;--accent-2: #1f938a;--accent-soft: rgba(50, 198, 176, .14);--shadow: 0 22px 45px rgba(2, 12, 20, .42);--surface-elevated: rgba(9, 47, 70, .72);--surface-elevated-hover: rgba(12, 60, 86, .8);--surface-elevated-border: rgba(124, 190, 214, .32);--surface-strong: rgba(10, 57, 84, .86);--surface-overlay: rgba(5, 33, 50, .66);--input-bg: rgba(6, 36, 55, .88);--input-border: rgba(121, 189, 213, .36);--input-placeholder: #a6c1d4;--chip-bg: rgba(15, 62, 88, .74);--chip-text: #d9ebf8;--tone-online-bg: rgba(16, 185, 129, .2);--tone-online-border: rgba(74, 222, 128, .56);--tone-online-text: #b8ffd7;--tone-offline-bg: rgba(239, 68, 68, .2);--tone-offline-border: rgba(252, 165, 165, .58);--tone-offline-text: #ffd7d7;--tone-degraded-bg: rgba(245, 158, 11, .2);--tone-degraded-border: rgba(252, 211, 77, .58);--tone-degraded-text: #ffe9ba;--tone-critical-bg: rgba(239, 68, 68, .2);--tone-critical-border: rgba(248, 113, 113, .58);--tone-critical-text: #ffdcdc;--tone-high-bg: rgba(249, 115, 22, .2);--tone-high-border: rgba(251, 146, 60, .56);--tone-high-text: #ffe2c6;--tone-medium-bg: rgba(234, 179, 8, .2);--tone-medium-border: rgba(250, 204, 21, .56);--tone-medium-text: #fff1c0;--tone-low-bg: rgba(16, 185, 129, .2);--tone-low-border: rgba(74, 222, 128, .56);--tone-low-text: #c8ffdf;--maintenance-banner-bg: linear-gradient(116deg, rgba(9, 68, 97, .88) 0%, rgba(11, 84, 96, .86) 48%, rgba(12, 101, 84, .84) 100%);--maintenance-banner-border: rgba(122, 201, 224, .45);--maintenance-banner-text: #dff4ff;--maintenance-banner-muted: rgba(202, 231, 247, .9);--maintenance-banner-kicker: rgba(171, 222, 241, .88);--maintenance-banner-dismiss-bg: rgba(4, 35, 52, .56);--maintenance-banner-dismiss-border: rgba(126, 200, 221, .4);--maintenance-banner-state-bg: rgba(186, 230, 253, .15);--maintenance-banner-state-border: rgba(186, 230, 253, .4);--maintenance-banner-state-text: #dff4ff;--maintenance-notice-bg: rgba(10, 70, 95, .58);--maintenance-notice-border: rgba(125, 204, 223, .42);--maintenance-notice-text: #dff4ff;--maintenance-notice-muted: rgba(203, 231, 245, .88);--dashboard-grid-bg: linear-gradient(164deg, rgba(7, 39, 58, .78) 0%, rgba(5, 30, 48, .74) 60%, rgba(7, 45, 56, .72) 100%);--dashboard-grid-border: rgba(115, 188, 203, .24);--dashboard-widget-bg: linear-gradient(160deg, rgba(10, 48, 73, .74) 0%, rgba(7, 36, 56, .82) 58%, rgba(7, 45, 56, .75) 100%);--dashboard-widget-border: rgba(117, 187, 208, .3);--dashboard-widget-title: #eff8ff;--dashboard-widget-text: #d6e9f7;--dashboard-widget-muted: #b4cede;--dashboard-widget-row-bg: rgba(13, 62, 90, .5);--dashboard-widget-row-border: rgba(124, 188, 211, .24);--dashboard-scrollbar-track: rgba(11, 40, 61, .6);--dashboard-scrollbar-thumb: rgba(106, 178, 206, .58);--dashboard-scrollbar-thumb-hover: rgba(140, 210, 229, .78);--dashboard-chart-grid: rgba(114, 167, 197, .24);--dashboard-chart-axis: rgba(141, 190, 218, .6);--dashboard-chart-tick: #b2d0e4;--dashboard-chart-cursor: rgba(72, 220, 183, .36);--dashboard-chart-tooltip-bg: rgba(6, 28, 44, .94);--dashboard-chart-tooltip-border: rgba(113, 185, 209, .42);--dashboard-chart-tooltip-text: #e3f2ff;--dashboard-overlay: rgba(5, 24, 38, .56);--dashboard-grid-line: rgba(122, 191, 214, .18);--dashboard-grid-inset: rgba(122, 191, 214, .24);--dashboard-selected-shadow: rgba(50, 198, 176, .34);--dashboard-muted-widget-bg: linear-gradient(180deg, rgba(9, 43, 64, .8) 0%, rgba(7, 35, 53, .84) 100%);--dashboard-muted-widget-border: rgba(116, 181, 208, .28);--dashboard-delete-hover-bg: rgba(239, 68, 68, .18);--dashboard-lock-border: rgba(124, 188, 212, .52);--dashboard-lock-bg: rgba(10, 49, 72, .62);--dashboard-map-overlay: rgba(9, 38, 56, .52);--dashboard-row-hover-bg: rgba(50, 198, 176, .18);--dashboard-status-track: rgba(124, 188, 211, .26);--dashboard-data-link: #8fc8e1;--dashboard-viewer-border: rgba(112, 184, 211, .32);--dashboard-header-bg: rgba(8, 47, 71, .74);--dashboard-header-border: rgba(110, 184, 211, .34);--dashboard-refresh-bg: rgba(10, 53, 79, .7);--dashboard-refresh-hover-bg: rgba(10, 63, 93, .76);--dashboard-refresh-hover-border: rgba(124, 191, 214, .52)}body.app-design-modern:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;background:radial-gradient(circle at 8% 16%,rgba(36,213,225,.16),transparent 36%),radial-gradient(circle at 90% 8%,rgba(138,242,95,.14),transparent 34%),radial-gradient(circle at 72% 78%,rgba(53,170,255,.16),transparent 42%);mix-blend-mode:screen;opacity:.72;z-index:-1;animation:modernBackgroundShift 20s ease-in-out infinite alternate}@keyframes modernBackgroundShift{0%{transform:translateZ(0) scale(1)}to{transform:translate3d(0,-12px,0) scale(1.03)}}body.app-density-compact .content{padding:18px 22px}body.app-density-compact .panel{padding:12px}body.app-density-compact .table-row{padding:8px 10px}a{color:inherit;text-decoration:none}.app-shell{display:grid;grid-template-columns:260px 1fr;min-height:100vh;align-items:start;transition:grid-template-columns .24s ease}.app-shell.sidebar-collapsed,.app-shell.sidebar-hover-mode{grid-template-columns:84px 1fr}.sidebar{background:#0b1f2a;color:#e2e8f0;padding:24px 18px;display:flex;flex-direction:column;gap:24px;transition:width .2s ease,padding .2s ease;position:sticky;top:0;height:100dvh;overflow:hidden}.app-shell.sidebar-hover-mode .sidebar{width:84px;z-index:30;will-change:width}.app-shell.sidebar-hover-mode.sidebar-hover-open .sidebar{width:260px;box-shadow:14px 0 28px -20px #020617d1}.sidebar-header{display:grid;grid-template-columns:minmax(0,1fr);align-items:flex-start;gap:12px}.sidebar-mode-controls{display:grid;width:100%;grid-template-columns:minmax(0,2fr) minmax(0,1fr);align-items:stretch;justify-self:stretch;gap:8px;padding:5px;border-radius:14px;border:1px solid rgba(125,195,218,.26);background:linear-gradient(145deg,#062132db,#092c41ad);box-shadow:inset 0 1px #addbf11f;container-type:inline-size}@container (max-width: 245px){.sidebar-toggle{grid-template-columns:auto minmax(0,1fr);gap:4px;padding:0 8px}.sidebar-toggle-label{font-size:clamp(9px,4cqi,11px)}.sidebar-toggle-state{display:none}}@container (max-width: 210px){.sidebar-mode-controls{grid-template-columns:minmax(0,1fr)}.sidebar-toggle{min-height:36px}.sidebar-toggle-label{font-size:11px}}.brand{display:flex;gap:8px;align-items:center;flex:1 1 auto;width:100%;min-width:0}.brand-copy{display:flex;flex-direction:column;gap:2px;min-width:0}.logo-image{width:40px;height:40px;border-radius:12px;object-fit:contain;background:#0f172a;padding:6px}.logo{background:linear-gradient(135deg,#0ea5a6,#22c55e);color:#0b1f2a;font-weight:700;font-size:18px;width:44px;height:44px;border-radius:12px;display:grid;place-items:center}.brand-title{font-family:Sora,sans-serif;font-weight:600;font-size:16px;line-height:1.05;white-space:nowrap}.brand-sub{font-size:9px;color:#94a3b8;line-height:1.05;white-space:nowrap}.sidebar-toggle{border:1px solid rgba(152,197,216,.36);background:#061e2cb8;color:#e2e8f0;border-radius:11px;min-height:40px;height:40px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;justify-content:start;gap:6px;padding:0 10px;cursor:pointer;min-width:0;transition:transform .2s ease,border-color .2s ease,background .2s ease,color .2s ease}.sidebar-toggle:hover{border-color:#78d8ea9e;background:#0ea5a647;color:#fff;transform:translateY(-1px)}.sidebar-toggle.active{border-color:#67e8f9b8;background:#14b6b35c;color:#fff}.sidebar-toggle:focus-visible{outline:2px solid #67e8f9;outline-offset:3px}.sidebar-toggle svg{width:17px;height:17px;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;transition:transform .2s ease}.sidebar-toggle-label{min-width:0;overflow:hidden;text-overflow:ellipsis;font-size:clamp(10px,4.4cqi,12px);font-weight:600;line-height:1;white-space:nowrap}.sidebar-toggle-mode{grid-template-columns:auto minmax(0,1fr);padding:0 8px}.sidebar-toggle-collapse .sidebar-toggle-label{font-size:clamp(10px,4.2cqi,12px)}.sidebar-toggle-mode .sidebar-toggle-label{font-size:clamp(8px,3.3cqi,10px)}.sidebar-toggle-label-stacked{display:grid;align-content:center;justify-items:start;gap:0;overflow:hidden;text-overflow:ellipsis;white-space:normal;line-height:1}.sidebar-toggle-label-line{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-toggle-state{flex-shrink:0;border:1px solid rgba(157,209,226,.38);border-radius:999px;padding:1px 5px;font-size:clamp(9px,3.9cqi,10px);font-weight:700;line-height:1.2;color:#d1ebf7e6;background:#061d2c73}.sidebar-toggle.active .sidebar-toggle-state{border-color:#67e8f99e;color:#fff;background:#0ea5a63d}.sidebar.collapsed .sidebar-toggle-collapse svg{transform:rotate(180deg)}.nav{display:flex;flex-direction:column;gap:8px}.nav-primary{flex:1;min-height:0}.nav-utility{margin-top:auto;padding-top:10px;border-top:1px solid rgba(148,163,184,.2)}.nav a{display:flex;align-items:center;gap:12px;padding:11px 13px;border-radius:10px;color:#d7e2f8;font-size:17px;font-weight:500;transition:background .2s ease,color .2s ease}.nav-locked-button{width:100%;border:none;display:flex;align-items:flex-start;gap:12px;padding:11px 13px;border-radius:10px;color:#bcd0eb;background:#0f172a47;font-size:17px;font-weight:500;cursor:pointer;text-align:left;transition:background .2s ease,color .2s ease}.nav-locked-button:hover,.nav-locked-button:focus-visible{background:#0ea5a629;color:#fff}.nav-icon{width:22px;height:22px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.nav-icon svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:2.15;stroke-linecap:round;stroke-linejoin:round}.nav-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nav-label-wrap{width:100%;display:flex;align-items:center;justify-content:space-between;gap:8px}.nav-label-wrap-locked{display:grid;align-items:start;justify-items:start;gap:4px}.nav-lock-badge{display:inline-flex;align-items:center;gap:6px;border:1px solid rgba(148,163,184,.42);background:#0f172a80;color:#e2e8f0;border-radius:999px;padding:2px 8px;font-size:10px;text-transform:uppercase;letter-spacing:.06em;line-height:1;flex-shrink:0}.nav-locked-button .nav-label-wrap{min-width:0}.nav-locked-title{display:block;width:100%;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nav-lock-icon{width:12px;height:12px;display:inline-flex;align-items:center;justify-content:center}.nav-lock-icon svg{width:12px;height:12px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.nav-addon-pill{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;border-radius:999px;border:1px solid rgba(94,234,212,.55);background:#2dd4bf26;color:#99f6e4;font-size:11px;font-weight:700;line-height:1;flex-shrink:0}.nav a.active,.nav a:hover{background:#0ea5a633;color:#fff}.nav a.active .nav-icon svg,.nav a:hover .nav-icon svg{filter:drop-shadow(0 0 6px rgba(45,212,191,.3))}.nav-entry{display:grid;gap:6px}.sidebar-pinned-dashboards{display:grid;gap:5px;margin-left:34px;padding:0 4px 0 2px}.sidebar-upgrade-sections{display:grid;gap:4px;margin-left:34px;padding:0 4px 0 2px}.nav .sidebar-upgrade-section{display:flex;align-items:center;border-radius:8px;padding:6px 8px;color:#e2e8f0d1;font-size:12px;transition:background-color .2s ease,color .2s ease}.nav .sidebar-upgrade-section.active,.nav .sidebar-upgrade-section:hover{background:#0ea5a62e;color:#fff}.sidebar-pinned-title{font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:#cbd5e1c7}.sidebar-pinned-list{display:grid;gap:4px}.nav .sidebar-pinned-dashboard{display:flex;align-items:center;gap:6px;border-radius:8px;padding:6px 8px;color:#e2e8f0d1;font-size:12px;transition:background-color .2s ease,color .2s ease}.nav .sidebar-pinned-dashboard.active,.nav .sidebar-pinned-dashboard:hover{background:#0ea5a62e;color:#fff}.sidebar-pinned-bullet{color:#94a3b8e6;line-height:1}.sidebar-pinned-name{display:block;max-width:clamp(120px,72%,164px);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-edit-trigger{margin-top:0;margin-bottom:8px;border:1px dashed rgba(94,234,212,.45);background:#0b1f2a80;color:#e2e8f0e6;border-radius:10px;display:flex;align-items:center;gap:8px;padding:8px 10px;font-size:12px;font-weight:500;cursor:pointer;transition:transform .2s ease,border-color .2s ease,background .2s ease,color .2s ease;width:100%;justify-content:flex-start}.sidebar-edit-trigger:hover{transform:translateY(-1px);border-color:#67e8f9a8;background:#0e374ea3;color:#fff}.sidebar-edit-trigger:focus-visible{outline:2px solid #67e8f9;outline-offset:2px}.sidebar.collapsed .brand{justify-content:center}.sidebar.collapsed{padding:18px 10px}.sidebar.collapsed .sidebar-header{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:10px;width:100%}.sidebar.collapsed .sidebar-mode-controls{width:100%;display:flex;align-self:center;justify-self:center;align-items:center;justify-content:center;padding:0;border:0;background:transparent;box-shadow:none}.sidebar.collapsed .sidebar-toggle{width:36px;min-height:36px;flex:0 0 36px;padding:0;display:flex;align-items:center;justify-content:center}.sidebar.collapsed .sidebar-toggle-label,.sidebar.collapsed .brand-copy{display:none}.sidebar.collapsed .nav a{justify-content:center;padding:10px}.sidebar.collapsed .nav-locked-button{justify-content:center;align-items:center;padding:10px}.sidebar.collapsed .nav-label,.sidebar.collapsed .sidebar-pinned-dashboards,.sidebar.collapsed .sidebar-upgrade-sections{display:none}.sidebar.collapsed .sidebar-edit-trigger{width:100%;justify-content:center;padding:10px}.sidebar.collapsed .sidebar-edit-trigger .nav-label{display:none}.main{display:flex;flex-direction:column;min-width:0;min-height:100dvh}.topbar{display:flex;align-items:center;gap:20px;padding:14px 28px;background:var(--panel-soft);border-bottom:1px solid var(--border);position:relative;z-index:25}.demo-mode-banner{padding:10px 28px;border-bottom:1px solid rgba(14,165,166,.35);background:#0ea5a61f;color:var(--text);font-size:12px;font-weight:600}.search input{width:100%;max-width:none;min-height:40px;padding:0 14px;border-radius:12px;border:1px solid var(--border);background:var(--panel);color:var(--text);font-size:14px}.search{display:flex;gap:12px;align-items:center;flex:0 1 auto;min-width:0}.topbar-search-group{display:flex;align-items:center;gap:12px;flex:0 1 clamp(340px,34vw,760px);width:clamp(340px,34vw,760px);min-width:0;max-width:100%}.search-box{position:relative;flex:1 1 auto;max-width:none;min-width:0;z-index:30}.search-box input{width:100%}.search-results{position:absolute;top:calc(100% + 8px);left:0;right:0;background:var(--panel);border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow);padding:10px;display:grid;gap:10px;z-index:120;max-height:420px;overflow:auto}.search-group{display:grid;gap:6px}.search-group-title{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}.search-result{border:1px solid var(--border);border-radius:10px;padding:8px 10px;background:var(--panel-soft);display:flex;justify-content:space-between;align-items:center;gap:12px;cursor:pointer;text-align:left}.search-result:hover{border-color:var(--accent);background:#0ea5a614}.search-result-title{font-weight:600;font-size:13px}.search-result-meta{font-size:11px;color:var(--muted)}.search-status{font-size:12px;color:var(--muted)}.notifications{position:relative;display:flex;align-items:center;flex-shrink:0}.alarm-badge{position:absolute;top:-6px;right:-6px;background:#ef4444;color:#fff;font-size:10px;font-weight:600;border-radius:999px;padding:2px 6px}.notifications-panel{position:absolute;top:42px;left:0;width:360px;max-height:420px;overflow:auto;background:var(--panel);border:1px solid var(--border);border-radius:16px;box-shadow:var(--shadow);padding:12px;z-index:20}.notifications-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:6px}.notifications-list{display:grid;gap:10px}.notification-item{border:1px solid var(--border);border-radius:12px;padding:10px;display:grid;gap:8px;background:var(--panel-soft)}.notification-item.severity-critical{border-color:var(--tone-critical-border);background:var(--tone-critical-bg);color:var(--tone-critical-text)}.notification-item.severity-high{border-color:var(--tone-high-border);background:var(--tone-high-bg);color:var(--tone-high-text)}.notification-item.severity-medium{border-color:var(--tone-medium-border);background:var(--tone-medium-bg);color:var(--tone-medium-text)}.notification-item.severity-low{border-color:var(--tone-low-border);background:var(--tone-low-bg);color:var(--tone-low-text)}.notification-item-security{border-color:#0ea5a657;background:#0ea5a614}.notification-item-onboarding{border-color:#32c6b06b;background:#32c6b01f}.notification-item-maintenance{border-color:var(--maintenance-notice-border);background:var(--maintenance-notice-bg);color:var(--maintenance-notice-text)}.notification-item-maintenance .muted{color:var(--maintenance-notice-muted)}.maintenance-inline-state{display:inline-flex;width:fit-content;align-items:center;border-radius:999px;border:1px solid var(--maintenance-banner-state-border);background:var(--maintenance-banner-state-bg);color:var(--maintenance-banner-state-text);font-size:11px;font-weight:600;line-height:1.2;padding:3px 8px}.alarm-toast-wrap{position:fixed;top:90px;right:24px;display:grid;gap:12px;width:min(340px,92vw);z-index:50}.alarm-toast{background:var(--panel);border:1px solid var(--border);border-radius:16px;padding:12px 14px;box-shadow:0 18px 40px #0f172a2e;display:grid;gap:8px;position:relative}.alarm-toast.severity-critical{border-color:var(--tone-critical-border);background:var(--tone-critical-bg);color:var(--tone-critical-text)}.alarm-toast.severity-high{border-color:var(--tone-high-border);background:var(--tone-high-bg);color:var(--tone-high-text)}.alarm-toast.severity-medium{border-color:var(--tone-medium-border);background:var(--tone-medium-bg);color:var(--tone-medium-text)}.alarm-toast.severity-low{border-color:var(--tone-low-border);background:var(--tone-low-bg);color:var(--tone-low-text)}.notification-item[class*=severity-] .muted,.alarm-toast[class*=severity-] .alarm-toast-title,.alarm-toast[class*=severity-] .alarm-toast-meta{color:currentColor;opacity:.82}.alarm-toast-title{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.alarm-toast-body{display:grid;gap:2px;font-size:13px}.alarm-toast-meta{font-size:11px;color:var(--muted)}.alarm-toast-actions{display:flex;gap:8px;flex-wrap:wrap}.toast-close{position:absolute;top:6px;right:8px;border:none;background:transparent;font-size:16px;line-height:1;cursor:pointer;color:var(--muted)}.notification-main{display:grid;gap:4px;font-size:12px}.notification-actions{display:flex;gap:8px;flex-wrap:wrap}.topbar-actions{display:flex;gap:14px;align-items:center;margin-left:auto;min-width:0}.topbar-context-pills{display:inline-flex;align-items:center;gap:10px;min-width:0}.topbar-tools{display:inline-flex;align-items:center;gap:12px;padding-left:14px;border-left:1px solid var(--border)}.topbar-mobile-identity{display:none;min-width:0;font-size:14px;font-weight:600;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.topbar .icon-btn{width:36px;height:36px}.topbar-secondary-actions{display:inline-flex;align-items:center;gap:10px}.mobile-nav-trigger{display:none;flex-shrink:0}.mobile-nav-trigger svg{fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}.mobile-sidebar-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;border:0;padding:0;margin:0;background:#0f172a7a;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:70}.pill{background:var(--panel-soft);border:1px solid var(--border);height:36px;padding:0 12px;display:inline-flex;align-items:center;border-radius:999px;font-size:12px;white-space:nowrap}.demo-pill{border-color:#0ea5a673;background:#0ea5a61f}.demo-readonly-content a[href],.demo-readonly-content button,.demo-readonly-content input,.demo-readonly-content select,.demo-readonly-content textarea,.demo-readonly-content [role=button],.demo-readonly-content [contenteditable=true]{cursor:not-allowed!important}.demo-readonly-content .leaflet-container a[href],.demo-readonly-content .leaflet-container button,.demo-readonly-content .leaflet-container [role=button]{cursor:pointer!important}.icon-btn{width:36px;height:36px;border:1px solid var(--border);border-radius:12px;background:var(--panel-soft);cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.icon-btn svg{width:18px;height:18px;color:var(--text)}.topbar-fullscreen-btn svg{stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.kpi-link{border:none;text-align:left;cursor:pointer;background:var(--panel);padding:16px;border-radius:16px;box-shadow:var(--shadow);width:100%}.kpi-link:hover{border-color:var(--accent)}.user-menu{display:flex;gap:8px;align-items:center;position:relative}.user-avatar{width:36px;height:36px;border-radius:50%;background:#0ea5a6;color:#fff;display:grid;place-items:center;font-weight:600}.user-trigger{display:flex;gap:8px;align-items:center;min-height:36px;background:transparent;border:none;padding:0;cursor:pointer;text-align:left;color:var(--text)}.user-identity-box{display:grid;gap:1px;border:1px solid var(--border);background:var(--panel-soft);border-radius:10px;min-height:36px;padding:4px 10px;min-width:120px;align-content:center}.user-meta{font-size:11px;color:var(--muted)}.user-popup{position:absolute;top:calc(100% + 10px);right:0;min-width:220px;background:var(--panel);border:1px solid var(--border);border-radius:14px;padding:12px;box-shadow:0 16px 30px #0f172a1f;z-index:20;display:grid;gap:8px}.user-popup-title{font-weight:600}.user-popup-row{display:flex;justify-content:space-between;gap:8px;font-size:12px}.user-popup-actions{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap}.support-dialog{width:min(560px,96vw)}.support-copy{line-height:1.45}.support-urgent{font-size:13px}.support-urgent a{color:var(--accent)}.support-urgent a:hover{text-decoration:underline}.support-dialog .dashboard-confirm-actions .button{border-color:var(--input-border);background:var(--surface-elevated);color:var(--text)}.support-dialog .dashboard-confirm-actions .button:disabled{opacity:1;background:var(--surface-strong);color:var(--muted)}.cluster-toggle{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--muted)}.cluster-toggle input{accent-color:var(--accent)}.user-name{font-size:14px;font-weight:600;color:var(--text)}.link-button{background:none;border:none;color:var(--muted);font-size:12px;cursor:pointer;padding:4px 6px}a.link{color:var(--accent);text-decoration:none;cursor:pointer}a.link:hover{text-decoration:underline}.content{padding:24px 28px}.app-footer{margin-top:auto;padding:8px 28px 10px;font-size:12px;color:var(--muted);border-top:1px solid var(--border);background:#f8fafc}.app-footer-main{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.app-footer-meta{display:flex;flex-direction:column;align-items:flex-start;gap:2px;color:var(--muted);min-width:0}.app-footer-brand{display:flex;align-items:baseline;gap:6px;min-width:0}.app-footer-brand-title{font-family:Sora,sans-serif;font-weight:600;font-size:12px;line-height:1.1;white-space:nowrap}.app-footer-brand-sub{font-size:11px;line-height:1.1;white-space:nowrap}.app-footer-meta-row{display:flex;align-items:center;gap:2px;flex-wrap:wrap}.app-footer-support{padding:4px 10px;font-size:12px}.app-footer-links{display:inline-flex;align-items:center;gap:8px}.app-footer-link-group{display:inline-flex;align-items:center;gap:4px}.app-footer a{color:var(--accent)}.app-footer a:hover{text-decoration:underline}@media (max-width: 780px){.app-footer-main{justify-content:flex-start}}.legal-page{display:grid;gap:16px}.legal-page-header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.legal-page-content{display:grid;gap:12px}.legal-page-html{line-height:1.55;color:var(--text)}.legal-page-html pre{margin:0;white-space:pre-wrap;font-family:inherit;line-height:1.6}.legal-page-html p{margin:0 0 10px}.legal-page-html p:last-child{margin-bottom:0}body.app-design-modern .sidebar{background:linear-gradient(180deg,#051d2cf7,#041724fa),radial-gradient(circle at 18% 10%,rgba(55,194,183,.2),transparent 45%);border-right:1px solid rgba(110,177,208,.24)}body.app-design-modern .logo-image{background:#03141fbf}body.app-design-modern .topbar{background:#062031d1;-webkit-backdrop-filter:blur(13px);backdrop-filter:blur(13px)}body.app-design-modern .app-footer{background:#051b2ad6}body.app-design-modern .nav a{color:#c9def0}body.app-design-modern .nav-locked-button{color:#b4cde2;background:#071c2966}body.app-design-modern .nav-addon-pill{border-color:#7dd3fc80;background:#0e749073;color:#e0f2fe}body.app-design-modern .nav a.active,body.app-design-modern .nav a:hover{background:#34c1ba33;color:#f8fdff}body.app-design-modern .search input::placeholder{color:#a4c3d8d1}body.app-design-modern .search-results{background:#041b29f7;border-color:#71bad361}body.app-design-modern .search-group-title{color:#add4e8e0}body.app-design-modern .search-result{border-color:#71bad347;background:#082c43b3;color:#e5f2fc}body.app-design-modern .search-result:hover{border-color:#56dbc98f;background:#32c6b029}body.app-design-modern .search-result-meta,body.app-design-modern .search-status{color:#b1d0e3db}body.app-design-modern .dashboard-confirm-dialog,body.app-design-modern .notifications-panel,body.app-design-modern .search-results,body.app-design-modern .user-popup{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}body.app-design-modern .danger,body.app-design-modern .button.danger{background:#991b1b4d;color:#fecaca;border:1px solid rgba(252,165,165,.42)}.not-found{display:grid;place-items:center;min-height:60vh}.not-found .panel{text-align:center;max-width:420px;display:grid;gap:10px}.not-found-actions{display:flex;justify-content:center;margin-top:6px}.settings-page{display:grid;gap:18px;max-width:1340px;margin:0 auto;width:100%}.settings-hero{position:relative;display:flex;justify-content:space-between;align-items:flex-start;gap:20px;flex-wrap:wrap;border:1px solid rgba(15,23,42,.06);background:linear-gradient(130deg,#f9fbfe,#fff 48%,#f6fbfd)}.settings-hero-copy{display:grid;gap:6px;max-width:580px}.settings-mode{display:inline-flex;gap:4px;padding:4px;background:#eef2f7;border:1px solid #d8e0ea;border-radius:12px}.settings-mode button{border:1px solid transparent;background:transparent;padding:7px 14px;border-radius:10px;cursor:pointer;font-size:12px;font-weight:600;color:#334155;transition:background .2s ease,color .2s ease,border-color .2s ease}.settings-mode button.active{background:var(--accent);color:#fff;border-color:#0f172a1f}.settings-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;align-items:start}.settings-card{display:grid;gap:14px;border:1px solid rgba(15,23,42,.06);background:#fff;min-height:0}.settings-card-security{grid-column:span 2}.settings-card-appearance{min-height:0}.settings-card-head{display:grid;gap:2px;padding-bottom:10px;border-bottom:1px solid #edf2f7}.settings-fields{display:grid;gap:11px}.settings-toggle{display:inline-flex;gap:4px;padding:4px;background:#eef2f7;border:1px solid #d8e0ea;border-radius:12px;width:fit-content}.settings-toggle button{border:1px solid transparent;background:transparent;padding:7px 13px;border-radius:10px;cursor:pointer;font-size:12px;font-weight:600;color:#334155;transition:background .2s ease,color .2s ease,border-color .2s ease}.settings-toggle button.active{background:var(--accent);color:#fff;border-color:#0f172a1f}.settings-card-onboarding{background:linear-gradient(145deg,#f5fbfc,#fff 52%,#f4f7fb);border:1px solid rgba(14,165,166,.22)}body.app-design-modern .settings-hero{border-color:#74b8d247;background:linear-gradient(142deg,#083149b3,#07283ec7 58%,#083946b8)}body.app-design-modern .settings-card{border-color:#74b8d23d;background:linear-gradient(160deg,#092b40b8,#072235d1)}body.app-design-modern .settings-card-head{border-bottom-color:#83bfd733}body.app-design-modern .settings-card-onboarding{border-color:#3dc0b854;background:linear-gradient(145deg,#073742b8,#082a3ad6)}body.app-design-modern .settings-mode,body.app-design-modern .settings-toggle{background:#082c42c7;border-color:#74b8d24d}body.app-design-modern .settings-mode button,body.app-design-modern .settings-toggle button{color:#d6e8f5}body.app-design-modern .settings-security-block{border-color:#79bdd452;background:#092c42a8}body.app-design-modern .settings-security-message{border-color:#34c6b06b;background:#32c6b024;color:#a8f3e5}body.app-design-modern .settings-2fa-setup{border-color:#6cb5d366;background:#051e2e85}body.app-design-modern .settings-2fa-qr{border-color:#6cb5d366;background:#051e2eb8}.settings-security-grid{display:grid;gap:12px}.settings-security-loading{display:inline-flex;align-items:center}.settings-security-message{border-radius:10px;border:1px solid rgba(20,184,166,.35);background:#14b8a61a;color:#0f766e;padding:9px 11px;font-size:13px}.settings-security-block{display:grid;gap:10px;border:1px solid rgba(148,163,184,.28);border-radius:12px;background:#f8fafc;padding:12px}.settings-security-block-2fa.is-maintenance{position:relative;border-color:#94a3b88f;background:#edf2f7;cursor:not-allowed}.settings-security-block-2fa.is-maintenance:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;background:#94a3b824;pointer-events:none}.settings-security-block-2fa.is-maintenance>*{opacity:.72}.settings-security-block-2fa.is-maintenance:after{content:attr(data-maintenance-message);position:absolute;left:12px;right:12px;bottom:12px;z-index:2;border-radius:10px;background:#0f172aeb;color:#f8fafc;padding:8px 10px;font-size:12px;line-height:1.35;opacity:0;transform:translateY(4px);transition:opacity .15s ease,transform .15s ease;pointer-events:none}.settings-security-block-2fa.is-maintenance:hover:after,.settings-security-block-2fa.is-maintenance:focus-within:after{opacity:1;transform:translateY(0)}.settings-security-block-head{display:flex;justify-content:space-between;gap:10px;align-items:center;flex-wrap:wrap}.settings-security-status{display:inline-flex;align-items:center;padding:4px 10px;border-radius:999px;font-size:11px;font-weight:600;letter-spacing:.01em}.settings-security-status.enabled{background:#16a34a24;color:#166534}.settings-security-status.disabled{background:#ef444424;color:#991b1b}.settings-security-status.unknown{background:#64748b29;color:#334155}.settings-inline-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.settings-inline-actions{display:flex;flex-wrap:wrap;gap:8px}.settings-backup-codes{display:grid;grid-template-columns:repeat(auto-fit,minmax(118px,1fr));gap:8px}.settings-2fa-setup{display:grid;gap:8px;border:1px dashed rgba(14,165,166,.35);border-radius:12px;background:#fff;padding:10px}.settings-2fa-qr{width:min(220px,100%);border-radius:10px;border:1px solid rgba(148,163,184,.35);background:#fff;padding:8px}.settings-2fa-secret{display:grid;gap:4px;font-size:12px;color:var(--muted)}.settings-2fa-secret code{width:fit-content;padding:6px 8px;border-radius:8px;background:#111827;color:#f8fafc}.settings-backup-codes code{display:inline-flex;align-items:center;justify-content:center;min-height:30px;padding:4px 8px;border-radius:8px;background:#111827;color:#f8fafc;font-size:12px;letter-spacing:.06em}.onboarding-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:3200;pointer-events:none}.onboarding-scrim{position:absolute;top:0;right:0;bottom:0;left:0;background:#0b12208f;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.onboarding-scrim.with-spotlight,.onboarding-scrim.preview{background:transparent;-webkit-backdrop-filter:none;backdrop-filter:none}.onboarding-highlight{position:fixed;border-radius:14px;border:2px solid rgba(94,234,212,.98);box-shadow:0 0 0 200vmax #0b122094,0 0 0 3px #ffffff2e,0 0 32px #2dd4bf52;z-index:3202;pointer-events:none;animation:onboardingPulse 1.9s ease-in-out infinite}.onboarding-card{position:fixed;z-index:3203;border-radius:16px;border:1px solid rgba(148,163,184,.42);background:linear-gradient(145deg,#fff,#f8fafc);color:#0f172a;box-shadow:0 24px 56px #0f172a52;pointer-events:auto;animation:onboardingEnter .22s ease-out}.onboarding-card-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;border-bottom:1px solid rgba(226,232,240,.9)}.onboarding-progress{display:inline-flex;align-items:center;padding:4px 10px;border-radius:999px;font-size:11px;letter-spacing:.02em;font-weight:600;color:#0f766e;background:#14b8a624}.onboarding-skip{font-size:12px;color:#64748b}.onboarding-skip:hover{color:#0f172a}.onboarding-card-body{padding:14px 16px;display:grid;gap:11px}.onboarding-title{font-family:Sora,sans-serif;font-size:17px;font-weight:600;letter-spacing:.01em;color:#0f172a}.onboarding-card-body p{margin:0;font-size:14px;line-height:1.48;color:#1e293b}.onboarding-click-hint{font-size:13px;padding:10px 12px;border-radius:12px;background:#94a3b829;color:#0f172a}.onboarding-missing{font-size:12px;color:#64748b}.onboarding-language-grid{display:grid;gap:8px}.onboarding-language-label{font-size:13px;color:#64748b}.onboarding-language-grid .button{justify-content:center}.onboarding-language-grid .button:not(.primary),.onboarding-card-actions .button:not(.primary){border-color:#cbd5e1;background:#e2e8f0;color:#1e293b}.onboarding-card-actions{padding:0 16px 16px;display:flex;justify-content:space-between;gap:8px}.onboarding-card-actions .button{min-width:108px;justify-content:center}.onboarding-card .muted{color:#64748b}.onboarding-design-note{font-size:12px;color:#64748b;line-height:1.4}@keyframes onboardingEnter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes onboardingPulse{0%,to{box-shadow:0 0 0 200vmax #0b122094,0 0 0 3px #ffffff2e,0 0 24px #2dd4bf47}50%{box-shadow:0 0 0 200vmax #0b12209e,0 0 0 3px #ffffff3d,0 0 34px #2dd4bf57}}@media (max-width: 1440px){.settings-card-security{grid-column:span 2}.settings-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 980px){.settings-card-security{grid-column:span 1}.settings-grid,.settings-inline-fields{grid-template-columns:1fr}}@media (max-width: 760px){.settings-card-security{grid-column:span 1}.settings-grid{grid-template-columns:1fr}.settings-mode{width:100%}.settings-mode button{flex:1}.settings-inline-fields{grid-template-columns:1fr}.onboarding-card{left:12px!important;right:12px;width:auto!important}}.kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;margin-bottom:18px}.kpi{background:var(--panel);border-radius:16px;padding:16px;box-shadow:var(--shadow)}.kpi-label{color:var(--muted);font-size:12px}.kpi-value{font-size:26px;font-weight:600;margin-top:6px}.panel-row{display:grid;grid-template-columns:2fr 1fr;gap:16px}.panel{background:var(--panel);border-radius:16px;padding:16px;box-shadow:var(--shadow)}.panel-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;font-weight:600}.panel-map{min-height:520px}.map{height:460px;border-radius:12px;overflow:hidden}.map-device-icon{display:grid;place-items:center;width:36px;height:36px;border-radius:12px;background:transparent;border:none;box-shadow:none}.map-device-icon img{width:28px;height:28px;object-fit:contain;display:block;filter:drop-shadow(0 6px 10px rgba(15,23,42,.28))}.cluster-marker{background:#0ea5a6e6;color:#fff;border-radius:999px;width:34px;height:34px;display:grid;place-items:center;font-size:12px;font-weight:700;line-height:1;border:2px solid #ffffff;box-shadow:0 6px 16px #0f172a33}.cluster-marker span{display:flex;align-items:center;justify-content:center;width:100%;height:100%;line-height:1}.map-device-popup .leaflet-popup-content-wrapper{background:var(--panel);color:var(--text);border-radius:14px;border:1px solid rgba(148,163,184,.25);box-shadow:0 10px 24px #0f172a29}.map-device-popup .leaflet-popup-tip{background:var(--panel)}.map-device-popup .leaflet-popup-content{margin:10px}.map-popup-card{min-width:230px;display:grid;gap:8px}.map-popup-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.map-popup-title{font-size:14px;line-height:1.2;min-width:0}.map-popup-id{font-size:11px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.map-popup-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.map-popup-cell{display:grid;gap:2px;background:var(--surface-elevated);border:1px solid var(--border);border-radius:8px;padding:6px 8px}.map-popup-cell span{font-size:10px;color:var(--muted)}.map-popup-cell strong{font-size:12px;line-height:1.2}.map-popup-location{font-size:11px;color:var(--muted)}.map-popup-action{width:100%;justify-content:center;padding:7px 10px}.toggle button{border:1px solid var(--border);background:var(--surface-elevated);color:var(--text);padding:6px 10px;border-radius:8px;margin-left:6px}.toggle .active{background:var(--accent);color:#fff;border-color:var(--accent)}.device-list{display:grid;gap:10px}.device-row{display:flex;justify-content:space-between;padding:10px 12px;border-radius:10px;border:1px solid var(--border);background:var(--surface-elevated);color:var(--text)}.device-row.online{border-color:var(--tone-online-border);background:var(--tone-online-bg);color:var(--tone-online-text)}.device-row.offline{border-color:var(--tone-offline-border);background:var(--tone-offline-bg);color:var(--tone-offline-text)}.device-row.degraded{border-color:var(--tone-degraded-border);background:var(--tone-degraded-bg);color:var(--tone-degraded-text)}.device-row.alarm{border-color:var(--tone-critical-border);background:var(--tone-critical-bg);color:var(--tone-critical-text)}.panel-events{min-height:420px}.events{display:flex;flex-direction:column;gap:8px}.event{background:var(--surface-elevated);border-radius:10px;padding:10px;font-size:12px}.event-time{color:var(--muted);margin-bottom:4px}.table{display:grid;gap:6px}.table-row{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;padding:10px 12px;border-radius:10px;border:1px solid var(--border);background:var(--surface-elevated);color:var(--text)}.table-row.focused{border-color:var(--accent);box-shadow:0 0 0 2px #0ea5a629}.inventory-header{display:flex;justify-content:space-between;gap:16px;align-items:center;margin-bottom:12px}.inventory-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.inventory-page-size{display:inline-flex;align-items:center;gap:8px;color:var(--muted);font-size:12px}.inventory-loading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px;padding:10px 12px;border-radius:12px;border:1px solid var(--surface-elevated-border);background:var(--surface-elevated)}.inventory-loading .muted{white-space:nowrap}.inventory-table-loading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:2px 0 6px;padding:10px 12px;border-radius:12px;border:1px solid var(--surface-elevated-border);background:var(--surface-elevated)}.inventory-table-loading .muted{white-space:nowrap}.inventory-clear{background:var(--surface-elevated);border-color:var(--input-border);color:var(--text)}.inventory-table .table-row{align-items:center;transition:box-shadow .2s ease,transform .2s ease}.inventory-row:hover{background:var(--surface-elevated-hover);box-shadow:0 8px 20px #0f172a14;transform:translateY(-1px)}.inventory-row.focused{box-shadow:0 0 0 2px #0ea5a633;transform:none}.inventory-footer{margin-top:12px;display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.inventory-pagination{display:inline-flex;align-items:center;gap:8px}.inventory-pagination-label{font-size:12px;color:var(--muted);min-width:92px;text-align:center}.inventory-pagination .button[disabled]{opacity:.55;cursor:not-allowed}.inventory-pagination-more{width:100%;font-size:12px;color:var(--accent-2);padding:8px 10px;border:1px dashed var(--surface-elevated-border);border-radius:10px;background:var(--surface-elevated)}.devices-page{display:grid;gap:14px}.devices-hero{display:flex;align-items:center;justify-content:space-between;gap:16px;position:relative;overflow:hidden}.devices-hero:after{content:"";position:absolute;right:-60px;top:-54px;width:210px;height:210px;border-radius:999px;background:radial-gradient(circle,#0ea5a629,#0ea5a600);pointer-events:none}.devices-hero-subtitle{margin:6px 0 0;max-width:820px;line-height:1.45}.devices-hero-actions{display:inline-flex;align-items:center;gap:8px;flex-wrap:wrap;position:relative;z-index:1}.devices-kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.devices-kpi-card{display:grid;gap:2px;align-content:start;min-height:132px}.devices-kpi-label{font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}.devices-kpi-value{font-family:Sora,sans-serif;font-size:clamp(26px,4vw,34px);line-height:1.05}.devices-kpi-meta{font-size:12px;color:var(--muted)}.devices-manufacturer-list{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.devices-manufacturer-chip{display:inline-flex;align-items:center;gap:6px;border-radius:999px;padding:4px 10px;font-size:11px;border:1px solid var(--surface-elevated-border);background:var(--surface-elevated);color:var(--text)}.devices-manufacturer-chip strong{font-size:11px}.devices-status-overview{display:grid;gap:8px}.devices-status-overview-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.devices-status-track{width:100%;height:10px;border-radius:999px;overflow:hidden;display:flex;background:var(--chip-bg)}.devices-status-track span{height:100%}.devices-status-track .online{background:#22c55e}.devices-status-track .degraded{background:#f59e0b}.devices-status-track .offline{background:#ef4444}.devices-status-legend{display:flex;flex-wrap:wrap;align-items:center;gap:14px;font-size:12px;color:var(--muted)}.devices-status-legend span{display:inline-flex;align-items:center;gap:6px}.devices-status-legend em{width:9px;height:9px;border-radius:999px;display:inline-block;flex-shrink:0}.devices-status-legend em.online{background:#22c55e}.devices-status-legend em.degraded{background:#f59e0b}.devices-status-legend em.offline{background:#ef4444}.devices-table-panel{display:grid;gap:10px}.devices-table-header{display:flex;align-items:center;justify-content:space-between;gap:10px}.devices-table-actions{margin-bottom:4px}.devices-manufacturer-cell{display:grid;gap:2px}.device-onboarding-page{display:grid;gap:14px}.device-onboarding-hero{display:flex;justify-content:space-between;align-items:center;gap:14px;position:relative;overflow:hidden}.device-onboarding-hero:before{content:"";position:absolute;left:-70px;top:-68px;width:250px;height:250px;border-radius:999px;background:radial-gradient(circle,#0f766e2e,#0f766e00);pointer-events:none}.device-onboarding-subtitle{margin:6px 0 0;max-width:860px;line-height:1.45}.device-onboarding-highlight{margin-top:10px;font-size:12px;border-radius:999px;display:inline-flex;align-items:center;gap:6px;padding:5px 11px;border:1px solid var(--surface-elevated-border);background:var(--surface-elevated)}.device-onboarding-hero-actions{display:inline-flex;gap:8px;flex-wrap:wrap;position:relative;z-index:1}.device-onboarding-summary-grid{display:grid;gap:10px;grid-template-columns:repeat(3,minmax(0,1fr))}.device-onboarding-summary-card{display:grid;gap:4px}.device-onboarding-summary-card span{font-size:12px;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}.device-onboarding-summary-card strong{font-size:30px;line-height:1;font-family:Sora,sans-serif}.device-onboarding-summary-card small{font-size:12px;color:var(--muted)}.device-onboarding-filter{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}.device-onboarding-toggle-group{display:inline-flex;align-items:center;gap:14px;flex-wrap:wrap}.device-onboarding-toggle{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:500}.device-onboarding-toggle input{width:16px;height:16px;accent-color:var(--accent)}.device-onboarding-cards{display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.device-onboarding-card{display:grid;gap:10px;align-content:start;min-height:260px}.device-onboarding-card-header{display:flex;align-items:center;justify-content:space-between;gap:8px}.device-onboarding-logo{font-family:Sora,sans-serif;font-weight:600;letter-spacing:.02em;font-size:14px;color:var(--accent-2)}.device-onboarding-card-title{display:grid;gap:3px}.device-onboarding-card-description{margin:0;font-size:13px;line-height:1.45}.device-onboarding-provisioning{font-size:12px;line-height:1.4}.device-onboarding-card-tags{display:flex;flex-wrap:wrap;gap:6px}.device-onboarding-card-tags span{display:inline-flex;align-items:center;border-radius:999px;padding:4px 10px;font-size:11px;border:1px solid var(--surface-elevated-border);background:var(--surface-elevated);color:var(--text)}.device-onboarding-card-actions{margin-top:auto;display:inline-flex;flex-wrap:wrap;gap:8px}.device-onboarding-missing{display:flex;justify-content:space-between;align-items:center;gap:12px}.device-onboarding-missing p{margin:6px 0 0;line-height:1.45}.device-onboarding-missing-actions{display:inline-flex;align-items:center}.device-onboarding-next-step{border-style:dashed;border-width:1px;border-color:var(--surface-elevated-border);text-align:center}@media (max-width: 980px){.inventory-header{flex-direction:column;align-items:stretch}.inventory-loading{flex-direction:column;align-items:flex-start}.inventory-loading .muted{white-space:normal}.inventory-table-loading{flex-direction:column;align-items:flex-start}.inventory-table-loading .muted{white-space:normal}.devices-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.device-onboarding-summary-grid{grid-template-columns:1fr}.device-onboarding-filter{align-items:flex-start}}@media (max-width: 820px){.devices-hero,.devices-table-header,.device-onboarding-hero,.device-onboarding-missing{flex-direction:column;align-items:flex-start}}@media (max-width: 640px){.devices-kpi-grid{grid-template-columns:1fr}}.inventory-name{display:flex;gap:10px;align-items:center}.device-dot{width:10px;height:10px;border-radius:999px;background:var(--accent);box-shadow:0 0 0 3px #0ea5a626}.device-dot.offline{background:#ef4444;box-shadow:0 0 0 3px #ef44442e}.table-sort{background:none;border:none;font-weight:600;display:inline-flex;align-items:center;gap:6px;color:inherit;cursor:pointer;padding:0}.sort-indicator{font-size:10px;opacity:.7}.table-row-5{grid-template-columns:repeat(5,1fr)}.table-row-6{grid-template-columns:repeat(6,1fr)}.table-head{background:var(--surface-strong);border-color:var(--surface-elevated-border);font-weight:600;color:var(--text)}.admin-login-history-table{max-height:420px;overflow-y:auto;scrollbar-gutter:stable}.admin-login-history-table .table-head{position:sticky;top:0;z-index:2}.admin-lockout-history-table{max-height:460px;overflow:auto;scrollbar-gutter:stable}.admin-lockout-header,.admin-lockout-row{display:grid;grid-template-columns:minmax(150px,1.2fr) minmax(170px,1.2fr) minmax(110px,.9fr) minmax(100px,.9fr) minmax(120px,.9fr) minmax(130px,1fr) minmax(160px,1.1fr) minmax(130px,.9fr);gap:10px;align-items:center}.admin-lockout-header{position:sticky;top:0;z-index:2}.admin-lockout-row button{white-space:nowrap}.admin-traffic-shield-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:8px;font-size:12px;color:var(--muted)}.admin-traffic-shield-manual{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px;align-items:center}.admin-traffic-shield-blocks-table,.admin-traffic-shield-events-table,.admin-demo-tracking-links-table,.admin-demo-tracking-paths-table,.admin-demo-tracking-visits-table{max-height:320px;overflow:auto;scrollbar-gutter:stable}.admin-demo-tracking-links-header,.admin-demo-tracking-links-row{display:grid;grid-template-columns:minmax(180px,1fr) minmax(280px,1.8fr) minmax(70px,.5fr) minmax(90px,.6fr) minmax(110px,.8fr) minmax(170px,1fr) minmax(210px,1.2fr);gap:10px;align-items:center}.admin-demo-tracking-links-header,.admin-demo-tracking-paths-header,.admin-demo-tracking-visits-header{position:sticky;top:0;z-index:2}.admin-demo-tracking-paths-header,.admin-demo-tracking-paths-row{display:grid;grid-template-columns:minmax(260px,1.6fr) minmax(90px,.5fr);gap:10px;align-items:center}.admin-demo-tracking-visits-header,.admin-demo-tracking-visits-row{display:grid;grid-template-columns:minmax(170px,1fr) minmax(90px,.6fr) minmax(180px,1fr) minmax(180px,1fr) minmax(140px,.9fr) minmax(80px,.5fr);gap:10px;align-items:center}.admin-demo-tracking-url{overflow-wrap:anywhere}.admin-demo-tracking-link-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.admin-demo-tracking-link-meta code{overflow-wrap:anywhere}.admin-demo-tracking-link-actions{display:flex;flex-wrap:wrap;gap:6px}.admin-demo-tracking-bulk-csv{display:grid;gap:8px}.admin-demo-tracking-bulk-csv code{overflow-wrap:anywhere}.admin-demo-tracking-bulk-csv button{justify-self:start}.admin-demo-tracking-bulk-table{max-height:320px;overflow:auto;scrollbar-gutter:stable}.admin-demo-tracking-bulk-header,.admin-demo-tracking-bulk-row{display:grid;grid-template-columns:minmax(220px,1fr) minmax(320px,2fr);gap:10px;align-items:center}.admin-demo-tracking-bulk-header{position:sticky;top:0;z-index:2}.admin-demo-tracking-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1501;background:#0f172a85;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:grid;place-items:center;padding:18px}.admin-demo-tracking-modal{width:min(1120px,96vw);max-height:min(90vh,860px);overflow:auto;display:grid;gap:14px}.admin-onboarding-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1502;background:#0f172a85;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:grid;place-items:center;padding:18px}.admin-onboarding-modal{width:min(1000px,96vw);max-height:min(90vh,900px);overflow:auto;display:grid;gap:14px}.admin-onboarding-modal-actions{justify-content:flex-end}.admin-onboarding-tb-admin-block{border:1px solid var(--panel-border);border-radius:12px;padding:12px;background:var(--panel-soft);display:grid;gap:10px}.admin-thingsboard-admin-panel{display:grid;gap:12px}.admin-readonly-note{border:1px solid color-mix(in oklab,var(--warning) 30%,var(--panel-border) 70%);background:color-mix(in oklab,var(--warning) 10%,var(--panel) 90%);color:var(--text);padding:10px 12px;border-radius:10px;font-size:13px}.admin-traffic-shield-blocks-header,.admin-traffic-shield-blocks-row{display:grid;grid-template-columns:minmax(220px,1.2fr) minmax(220px,1.2fr) 120px minmax(160px,1fr) 130px;gap:10px;align-items:center}.admin-traffic-shield-events-header,.admin-traffic-shield-events-row{display:grid;grid-template-columns:minmax(150px,1.1fr) 100px minmax(120px,1fr) minmax(260px,1.5fr) 90px minmax(260px,1.5fr);gap:10px;align-items:center}.admin-traffic-shield-blocks-header,.admin-traffic-shield-events-header{position:sticky;top:0;z-index:2}.admin-upgrades-table{display:grid;gap:8px;max-height:620px;overflow:auto;scrollbar-gutter:stable}.admin-upgrades-header,.admin-upgrades-row{display:grid;grid-template-columns:minmax(190px,1fr) 150px minmax(240px,1.3fr) minmax(220px,1.2fr) minmax(220px,1.2fr) minmax(160px,1fr);gap:10px;align-items:start}.admin-upgrades-header{position:sticky;top:0;z-index:2}.admin-upgrades-row{border:1px solid var(--border);border-radius:12px;padding:10px;background:var(--surface-elevated)}.admin-upgrade-state{display:grid;gap:8px}.admin-upgrade-edit{display:grid;gap:6px}.admin-upgrade-edit input{padding:8px 10px;border-radius:8px;border:1px solid var(--border);font-size:12px}.admin-upgrade-users-table{display:grid;gap:8px;max-height:560px;overflow:auto;scrollbar-gutter:stable}.admin-upgrade-users-header,.admin-upgrade-users-row{display:grid;grid-template-columns:minmax(220px,1.2fr) minmax(260px,1.1fr) minmax(320px,1.6fr) minmax(220px,1fr);gap:10px;align-items:start}.admin-upgrade-users-header{position:sticky;top:0;z-index:2}.admin-upgrade-users-row{border:1px solid var(--border);border-radius:12px;padding:10px;background:var(--surface-elevated)}.admin-upgrade-user-scope{display:grid;gap:4px;font-size:13px}.admin-upgrade-user-extensions{display:grid;gap:8px}.admin-upgrade-user-extension{border:1px solid var(--input-border);border-radius:10px;padding:8px;background:var(--panel-soft);display:grid;gap:6px}.admin-upgrade-user-extension-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.admin-upgrade-user-extension-actions{display:flex;gap:8px;flex-wrap:wrap}.admin-upgrade-user-extension-actions button{border:1px solid var(--input-border);border-radius:8px;background:var(--surface-elevated);color:var(--text);padding:6px 10px;font-size:12px;cursor:pointer}.admin-upgrade-user-actions{display:grid;gap:8px;align-content:start}.admin-upgrade-user-actions select{border-radius:8px;border:1px solid var(--input-border);background:var(--input-bg);color:var(--text);padding:8px 10px}.admin-upgrade-user-actions button{border:1px solid var(--input-border);border-radius:8px;background:var(--surface-elevated);color:var(--text);padding:8px 10px;cursor:pointer}.admin-identity-status-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;align-items:center}.admin-identity-overview-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:10px;margin-top:10px}.admin-identity-overview-card{border:1px solid var(--panel-border);border-radius:12px;padding:10px;background:var(--surface-elevated);display:grid;gap:4px}.admin-identity-overview-card strong{font-size:20px;line-height:1}.admin-onboarding-stepper{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:10px 0 12px}.admin-onboarding-step{border:1px solid var(--input-border);border-radius:10px;background:var(--surface-elevated);color:var(--text);padding:8px;display:grid;gap:2px;text-align:left;cursor:pointer}.admin-onboarding-step span{display:inline-flex;width:22px;height:22px;border-radius:999px;align-items:center;justify-content:center;font-size:12px;font-weight:700;background:var(--chip-bg);color:var(--chip-text)}.admin-onboarding-step small{color:var(--muted)}.admin-onboarding-step.active{border-color:var(--accent);background:color-mix(in oklab,var(--accent) 12%,var(--surface-elevated))}.admin-onboarding-step.active span{background:var(--accent);color:#fff}.admin-identity-toolbar{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.admin-identity-toolbar .table-search{width:min(420px,100%)}.admin-identity-filter-note{margin-left:auto}.admin-identity-user-list{display:grid;gap:12px}.admin-identity-user-card{border:1px solid var(--panel-border);border-radius:14px;padding:12px;background:var(--panel-soft);display:grid;gap:10px}.admin-identity-user-header{display:grid;gap:6px}.admin-identity-user-headline{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.admin-identity-2fa-panel{border:1px dashed var(--input-border);border-radius:12px;background:var(--surface-elevated);padding:10px;display:grid;gap:10px}.admin-identity-outcome{margin-top:10px;border:1px solid var(--panel-border);border-radius:12px;padding:10px;background:var(--surface-elevated);display:grid;gap:6px}.admin-identity-field-wide{grid-column:1 / -1}@media (max-width: 760px){.admin-onboarding-stepper{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-identity-filter-note{margin-left:0}}.table-search{border-radius:10px;border:1px solid var(--input-border);background:var(--input-bg);color:var(--text);padding:8px 12px}.table-filter{border-radius:10px;border:1px solid var(--input-border);padding:8px 12px;background:var(--input-bg);color:var(--text)}.table-search::placeholder{color:var(--input-placeholder)}.status-pill{display:inline-block;padding:4px 10px;border-radius:999px;border:1px solid transparent;background:var(--chip-bg);color:var(--chip-text);font-size:11px;font-weight:600;letter-spacing:.01em}.status-stack{display:flex;gap:6px;flex-wrap:wrap}.status-pill.online{background:var(--tone-online-bg);border-color:var(--tone-online-border);color:var(--tone-online-text)}.status-pill.offline{background:var(--tone-offline-bg);border-color:var(--tone-offline-border);color:var(--tone-offline-text)}.status-pill.degraded{background:var(--tone-degraded-bg);border-color:var(--tone-degraded-border);color:var(--tone-degraded-text)}.status-pill.ok{background:var(--tone-online-bg);border-color:var(--tone-online-border);color:var(--tone-online-text)}.status-pill.alarm{background:var(--tone-critical-bg);border-color:var(--tone-critical-border);color:var(--tone-critical-text)}.device-meta{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:16px}.device-map{height:240px}.device-map .map{height:100%}.line-chart{width:100%;display:block}.timeseries-chart-shell{width:100%;min-height:220px;height:clamp(220px,34vh,360px)}.timeseries-chart-shell .recharts-surface{overflow:visible}.timeseries-chart-shell .recharts-layer.recharts-cartesian-axis-tick text{fill:#64748b}.timeseries-chart-shell .recharts-tooltip-wrapper{z-index:20}.telemetry-controls{display:flex;gap:8px;align-items:center}.telemetry-controls select{border-radius:10px;border:1px solid var(--border);padding:6px 10px}.builder{display:grid;grid-template-columns:220px 1fr;gap:16px}.builder-sidebar{display:flex;flex-direction:column;gap:12px}.builder-canvas{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:120px;gap:12px;background:#f8fafc;border-radius:12px;padding:12px}.widget{background:#fff;border:1px solid var(--border);border-radius:12px;padding:12px;cursor:move}.widget-title{font-weight:600;margin-bottom:8px}.primary{background:var(--accent);color:#fff;border:none;border-radius:10px;padding:10px 14px;cursor:pointer}.warning{background:#fef3c7;color:#92400e;border:none;border-radius:10px;padding:10px 14px;cursor:pointer}.danger{background:#fee2e2;color:#b91c1c;border:none;border-radius:10px;padding:10px 14px;cursor:pointer}.button{display:inline-flex;align-items:center;gap:6px;padding:8px 12px;border-radius:10px;border:1px solid var(--border);background:var(--panel-soft);color:var(--text);font-size:13px;cursor:pointer}button:disabled,.button:disabled{cursor:not-allowed;opacity:.6}.button.primary{border:none;background:var(--accent);color:#fff}.button.danger{border:none;background:#fee2e2;color:#b91c1c}.error{color:var(--danger);font-size:12px}.muted{color:var(--muted)}.login{position:relative;isolation:isolate;min-height:100vh;min-height:100dvh;display:grid;place-items:center;padding:clamp(18px,4vw,42px);overflow:hidden;background:radial-gradient(circle at 14% 16%,#2dd4bf3d,#2dd4bf00 38%),radial-gradient(circle at 86% 82%,#38bdf83d,#38bdf800 40%),linear-gradient(140deg,#031a27,#062739 46%,#0a3541)}.login:before,.login:after{content:"";position:absolute;inset:auto;z-index:-1;pointer-events:none}.login:before{width:clamp(220px,36vw,540px);height:clamp(220px,36vw,540px);left:-8%;top:-12%;border-radius:999px;background:radial-gradient(circle,#14b8a642,#14b8a600)}.login:after{width:clamp(220px,34vw,500px);height:clamp(220px,34vw,500px);right:-7%;bottom:-11%;border-radius:999px;background:radial-gradient(circle,#0ea5e93d,#0ea5e900)}.login-card{--login-text: #0f172a;--login-muted: #5d718a;--login-input-bg: #f8fcff;--login-input-border: #b7c7d9;--login-input-placeholder: #89a0b9;background:linear-gradient(180deg,#fffffffa,#f8fcfffa 68%,#f1f8fcfa);border:1px solid rgba(148,163,184,.38);border-radius:24px;padding:clamp(22px,3.6vw,34px);width:min(480px,100%);max-width:100%;box-shadow:0 28px 72px #02061757,inset 0 1px #ffffffdb;color:var(--login-text);position:relative;overflow:visible}.login-header{position:relative;margin-bottom:4px}.login-lang{position:absolute;top:0;right:0}.login-card .lang-toggle{background:linear-gradient(180deg,#6b85a0,#49657f);border-color:#bfdbfe40;box-shadow:inset 0 1px #fff3}.login-card .lang-toggle button{color:#f1f5f9db;font-size:13px;font-weight:600}.login-card .lang-toggle button.active{background:linear-gradient(135deg,#3dd6c6,#2cbfb8);color:#f7fffe}.login-form label{display:grid;gap:6px;font-size:13px;font-weight:600;letter-spacing:.01em;color:var(--login-text, #0f172a)}.login-modes{display:grid;gap:8px;margin-bottom:12px}.mode-label{font-size:12px;color:var(--login-muted, #64748b)}.mode-toggle{display:inline-flex;gap:6px;background:#e2e8f0;padding:4px;border-radius:999px}.mode-toggle button{border:none;background:transparent;padding:6px 12px;border-radius:999px;cursor:pointer;font-size:12px}.mode-toggle button.active{background:#0b1f2a;color:#fff}.maintenance-banner{display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:12px;background:var(--maintenance-banner-bg);color:var(--maintenance-banner-text);border:1px solid var(--maintenance-banner-border);border-radius:14px;padding:12px 14px;margin-bottom:16px}.maintenance-banner-subtle{border-radius:12px;box-shadow:0 14px 30px #0b3e561f}.maintenance-banner-top{margin-bottom:0;border-radius:0 0 14px 14px;border-left:none;border-right:none;border-top:none;padding:13px 20px}.maintenance-banner-copy{display:grid;gap:6px}.maintenance-banner-kicker{font-size:10px;line-height:1.1;letter-spacing:.09em;text-transform:uppercase;color:var(--maintenance-banner-kicker);font-weight:700}.maintenance-banner-row{display:flex;flex-wrap:wrap;gap:10px;align-items:baseline;font-size:13px}.maintenance-banner-state{display:inline-flex;align-items:center;border-radius:999px;border:1px solid var(--maintenance-banner-state-border);background:var(--maintenance-banner-state-bg);color:var(--maintenance-banner-state-text);font-size:11px;font-weight:600;line-height:1.1;padding:4px 9px}.maintenance-banner-state.state-active{border-color:#4ade8073}.maintenance-banner-state.state-starts_soon{border-color:#7dd3fc80}.maintenance-banner-state.state-scheduled{border-color:var(--maintenance-banner-state-border)}.maintenance-banner-window{color:var(--maintenance-banner-muted);font-size:12px}.maintenance-banner-detail{font-size:12px;color:var(--maintenance-banner-muted)}.maintenance-banner-dismiss{border:1px solid var(--maintenance-banner-dismiss-border);background:var(--maintenance-banner-dismiss-bg);color:var(--maintenance-banner-text);font-size:12px;cursor:pointer;padding:5px 10px;border-radius:999px;line-height:1.2;white-space:nowrap}.maintenance-banner-dismiss:hover{filter:brightness(1.04)}.infra-banner{background:linear-gradient(135deg,#7f1d1d,#b91c1c);color:#fff7f7;border:1px solid rgba(255,255,255,.2);border-radius:16px;padding:16px 18px;margin-bottom:16px;box-shadow:0 12px 30px #7f1d1d59}.infra-banner-header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;font-size:16px;margin-bottom:8px}.infra-banner-code{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:#ffffffd9}.infra-banner-body{font-size:13px;margin-bottom:10px}.infra-banner-meta{display:flex;flex-wrap:wrap;gap:12px;font-size:11px;color:#ffffffd9}.infra-banner-details{margin-top:10px;font-size:12px;background:#0003;padding:8px 10px;border-radius:10px}.infra-banner-footer{margin-top:10px;font-size:11px;color:#fffc}.lang-toggle{display:inline-flex;align-items:center;gap:6px;background:var(--panel-soft);border:1px solid var(--border);padding:4px;border-radius:999px}.lang-label{font-size:12px;color:var(--muted);padding-left:6px}.lang-toggle button{border:none;background:transparent;color:var(--text);padding:6px 10px;border-radius:999px;cursor:pointer;font-size:12px}.lang-toggle button.active{background:var(--accent);color:#fff}.lang-menu{position:relative;display:inline-flex;align-items:center;gap:6px}.lang-menu-trigger{min-width:64px;height:36px;border:1px solid var(--border);border-radius:12px;background:var(--panel-soft);color:var(--text);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:0 10px}.lang-menu-trigger:hover{border-color:#0ea5a673;background:#0ea5a61a}.lang-menu-trigger svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.lang-menu-current{font-size:11px;font-weight:700;letter-spacing:.04em;line-height:1}.lang-menu-popup{position:absolute;top:calc(100% + 8px);right:0;min-width:140px;background:var(--panel);border:1px solid var(--border);border-radius:12px;box-shadow:var(--shadow);padding:6px;display:grid;gap:4px;z-index:120}.lang-menu-option{width:100%;border:none;border-radius:8px;background:transparent;color:inherit;text-align:left;padding:7px 10px;font-size:12px;cursor:pointer}.lang-menu-option:hover{background:#0ea5a61a}.lang-menu-option.active{background:var(--accent);color:#fff}.design-toggle{display:inline-flex;align-items:center;gap:8px;width:fit-content}.design-label{font-size:12px;color:var(--muted)}.design-switch{--switch-width: 74px;--switch-height: 40px;--switch-padding: 4px;--switch-knob-size: calc(var(--switch-height) - (var(--switch-padding) * 2));position:relative;display:inline-block;width:var(--switch-width);height:var(--switch-height);flex-shrink:0}.design-switch.compact{--switch-width: 52px;--switch-height: 32px;--switch-padding: 3px}.design-switch-input{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;width:100%;height:100%;margin:0;cursor:pointer;z-index:2}.design-switch-slider{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:999px;border:1px solid rgba(90,156,214,.55);background:linear-gradient(140deg,#79cdff,#4faef1 52%,#2f87d5);box-shadow:inset 0 1px #ffffff9e,0 8px 18px #0f172a24;overflow:hidden;transition:background .35s ease,border-color .35s ease,box-shadow .35s ease}.design-switch-input:checked+.design-switch-slider{border-color:#79a0dd8a;background:linear-gradient(145deg,#0b1731,#15284b 54%,#1d3460);box-shadow:inset 0 1px #ffffff17,0 8px 18px #020a1a66}body.app-design-modern .design-switch-slider{border-color:#70b1d473;box-shadow:inset 0 1px #e7f5ff29,0 10px 22px #02081459}body.app-design-modern .design-switch-input:checked+.design-switch-slider{border-color:#7bcbe575}.design-switch-input:focus-visible+.design-switch-slider{outline:2px solid rgba(37,99,235,.45);outline-offset:2px}body.app-design-modern .design-switch-input:focus-visible+.design-switch-slider{outline-color:#67e8f9b8}.design-switch-sun-moon{position:absolute;width:var(--switch-knob-size);height:var(--switch-knob-size);left:var(--switch-padding);top:50%;transform:translateY(-50%);border-radius:50%;background:radial-gradient(circle at 35% 35%,#fff7ab,#ffd642 56%,#f59e0b);box-shadow:0 0 0 1px #fef08aad,0 5px 12px #f59e0b59;transition:left .4s ease,transform .4s ease,background .4s ease,box-shadow .4s ease;overflow:visible}.design-switch-input:checked+.design-switch-slider .design-switch-sun-moon{left:calc(var(--switch-width) - var(--switch-padding) - var(--switch-knob-size));transform:translateY(-50%) rotate(-12deg);background:radial-gradient(circle at 28% 28%,#f8fafc,#dbeafe 60%,#cbd5e1);box-shadow:0 0 0 1px #bae6fd85,0 5px 12px #3b82f64d}.design-switch-moon-dot,.design-switch-light-ray,.design-switch-cloud,.design-switch-stars,.design-switch-star{pointer-events:none}.design-switch-moon-dot{position:absolute;fill:#94a3b8d9;opacity:0;transition:opacity .3s ease}.design-switch-moon-dot.dot-1{width:22%;left:38%;top:16%}.design-switch-moon-dot.dot-2{width:32%;left:9%;top:37%}.design-switch-moon-dot.dot-3{width:14%;left:64%;top:67%}.design-switch-input:checked+.design-switch-slider .design-switch-moon-dot{opacity:.94}.design-switch-light-ray{position:absolute;fill:#fff9;opacity:.28;transform:scale(1);transform-origin:50% 50%;transition:opacity .35s ease,transform .35s ease}.design-switch-light-ray.ray-1{width:165%;left:-32%;top:-32%}.design-switch-light-ray.ray-2{width:210%;left:-58%;top:-58%}.design-switch-light-ray.ray-3{width:235%;left:-70%;top:-70%}.design-switch-input:not(:checked)+.design-switch-slider .design-switch-light-ray{animation:design-switch-sun-ray-pulse 3.2s ease-in-out infinite}.design-switch-input:not(:checked)+.design-switch-slider .design-switch-light-ray.ray-2{animation-delay:.35s}.design-switch-input:not(:checked)+.design-switch-slider .design-switch-light-ray.ray-3{animation-delay:.7s}.design-switch-input:checked+.design-switch-slider .design-switch-light-ray{opacity:0;transform:scale(.72)}.design-switch-cloud{position:absolute;transition:opacity .35s ease,transform .35s ease}.design-switch-cloud.light{fill:#f8fafccc;opacity:.72}.design-switch-cloud.dark{fill:#cbd5e1a8;opacity:0;transform:translateY(8%)}.design-switch-cloud.cloud-1{left:56%;top:45%;width:44%}.design-switch-cloud.cloud-2{left:68%;top:34%;width:22%}.design-switch-cloud.cloud-3{left:42%;top:61%;width:30%}.design-switch-cloud.cloud-4{left:130%;top:56%;width:130%}.design-switch-cloud.cloud-5{left:172%;top:40%;width:72%}.design-switch-cloud.cloud-6{left:98%;top:76%;width:98%}.design-switch-input:not(:checked)+.design-switch-slider .design-switch-cloud.light{animation:design-switch-cloud-float-day 8s ease-in-out infinite}.design-switch-input:checked+.design-switch-slider .design-switch-cloud.light{opacity:0;transform:translateY(10%)}.design-switch-input:checked+.design-switch-slider .design-switch-cloud.dark{opacity:.9;transform:translateY(0)}.design-switch-stars{position:absolute;top:0;right:0;bottom:0;left:0;transform:translateY(-34%);opacity:0;transition:transform .35s ease,opacity .35s ease}.design-switch-star{position:absolute;fill:#f8fafc;animation:design-switch-star-twinkle 2s ease-in-out infinite}.design-switch-star.star-1{width:20%;left:10%;top:7%;animation-delay:.3s}.design-switch-star.star-2{width:8%;left:10%;top:48%}.design-switch-star.star-3{width:12%;left:20%;top:62%;animation-delay:.6s}.design-switch-star.star-4{width:18%;left:34%;top:2%;animation-delay:1.2s}.design-switch-input:checked+.design-switch-slider .design-switch-stars{transform:translateY(0);opacity:1}.design-toggle.compact .design-label{display:none}@keyframes design-switch-cloud-float-day{0%{transform:translate(0)}40%{transform:translate(2%)}80%{transform:translate(-2%)}to{transform:translate(0)}}@keyframes design-switch-sun-ray-pulse{0%{opacity:.26;transform:scale(1)}50%{opacity:.4;transform:scale(1.06)}to{opacity:.26;transform:scale(1)}}@keyframes design-switch-star-twinkle{0%{transform:scale(1)}40%{transform:scale(1.2)}80%{transform:scale(.82)}to{transform:scale(1)}}.admin-pill{background:#fde68a;color:#92400e}.admin-shell{display:grid;gap:18px}.admin-hero{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap;background:var(--panel);border:1px solid var(--panel-border);border-radius:18px;padding:18px 20px;box-shadow:var(--shadow)}.admin-title{font-family:Sora,sans-serif;font-size:22px;font-weight:600}.admin-subtitle{color:var(--muted);font-size:13px;margin-top:4px}.admin-actions{display:flex;gap:8px;flex-wrap:wrap}.admin-actions button{border:1px solid var(--border);background:#f8fafc;padding:8px 12px;border-radius:10px;cursor:pointer}.admin-actions .primary{border:none}.admin-alerts{display:grid;gap:6px}.admin-tls-status{display:grid;gap:6px;border-radius:12px;padding:10px 12px;border:1px solid var(--panel-border)}.admin-tls-status-row{display:flex;align-items:center;justify-content:space-between;gap:8px}.admin-tls-status-ok{background:#10b98114;border-color:#10b98147}.admin-tls-status-warn{background:#f59e0b1f;border-color:#d9770661}.admin-overview{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;background:var(--panel-soft);border:1px solid var(--panel-border);border-radius:16px;padding:14px}.overview-card{background:var(--panel);border-radius:14px;padding:12px;box-shadow:var(--shadow)}.overview-label{font-size:12px;color:var(--muted)}.admin-demo-tracking-quick{gap:10px}.admin-demo-tracking-quick-link{display:grid;gap:6px;padding:10px 12px;border:1px solid var(--panel-border);border-radius:12px;background:var(--panel-soft)}.overview-value{font-weight:600;margin-top:4px}.overview-meta{grid-column:1 / -1;display:flex;flex-wrap:wrap;gap:16px;font-size:12px;color:var(--muted)}.admin-body{display:grid;gap:16px;align-items:start}.admin-nav{display:flex;gap:8px;flex-wrap:wrap;align-items:center;background:var(--panel);border:1px solid var(--panel-border);border-radius:16px;padding:10px;box-shadow:var(--shadow)}.admin-tabs{display:flex;gap:8px;flex-wrap:wrap;flex:1 1 auto}.admin-onboarding-open-button{border:1px solid transparent;background:var(--accent);color:#fff;padding:8px 12px;border-radius:10px;font-weight:600;cursor:pointer;box-shadow:0 8px 18px #0f172a29}.admin-onboarding-open-button:hover{background:color-mix(in oklab,var(--accent) 84%,#000 16%)}.admin-tabs button{border:1px solid transparent;background:transparent;padding:8px 12px;border-radius:10px;color:var(--muted);font-weight:600;font-size:13px;cursor:pointer;transition:all .2s ease}.admin-tabs button:hover{border-color:var(--panel-border);background:var(--accent-soft);color:var(--text)}.admin-tabs button.active{color:#fff;background:var(--accent);border-color:transparent;box-shadow:0 8px 18px #0f172a29}.admin-content{display:grid;gap:16px}.admin-card{background:var(--panel);border-radius:18px;padding:16px 18px;border:1px solid var(--panel-border);box-shadow:var(--shadow);display:grid;gap:12px}.admin-card[hidden]{display:none!important}.card-header{display:flex;justify-content:space-between;align-items:center}.card-title{font-weight:600}.card-subtitle{font-weight:600;font-size:13px}.card-divider{height:1px;background:var(--panel-border)}.card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.admin-legal-editor{border:1px solid var(--panel-border);border-radius:12px;padding:12px;background:var(--panel-soft);display:grid;gap:10px}.card-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.admin-backup-list{display:grid;gap:8px;max-height:260px;overflow-y:auto;border:1px solid var(--panel-border);border-radius:12px;padding:8px;background:var(--panel-soft)}.admin-backup-item{display:flex;align-items:flex-start;gap:8px;padding:8px;border-radius:10px;cursor:pointer;border:1px solid transparent}.admin-backup-item:hover{background:var(--panel);border-color:var(--panel-border)}.admin-backup-item-content{min-width:0}.admin-backup-item-main{font-weight:600;word-break:break-all}.admin-footer-actions{display:flex;justify-content:flex-end;align-items:center;gap:8px;flex-wrap:wrap;background:var(--panel);border:1px solid var(--panel-border);border-radius:16px;padding:12px 14px;box-shadow:var(--shadow);position:sticky;bottom:12px;z-index:30}.admin-footer-actions button{border:1px solid var(--border);background:#f8fafc;padding:8px 12px;border-radius:10px;cursor:pointer}.admin-footer-actions .primary{border:none;background:var(--accent);color:#fff}.admin-card code{background:#f1f5f9;padding:4px 6px;border-radius:6px;font-size:12px}.lang-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}.icon-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px}.icon-list{display:grid;gap:10px}.icon-matrix-wrap{width:100%;overflow-x:auto}.icon-matrix{width:100%;min-width:780px;border-collapse:collapse}.icon-matrix th,.icon-matrix td{border:1px solid var(--border);padding:8px;vertical-align:top;background:#fff}.icon-matrix th{font-size:12px;font-weight:600;color:var(--muted);text-align:left}.icon-matrix-cell{display:grid;gap:6px}.icon-matrix-cell input[type=file]{padding:6px 0}.icon-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:8px;align-items:center}.icon-row input[type=file]{padding:6px 0}.icon-row select{padding:10px 12px;border-radius:10px;border:1px solid var(--border);font-size:13px}.icon-preview{width:48px;height:48px;border-radius:10px;object-fit:contain;background:#0f172a;padding:6px}.panel-title{font-weight:600}.field{display:grid;gap:6px;font-size:13px}.file-field input[type=file]{padding:8px 0}.logo-preview{width:80px;height:80px;border-radius:12px;object-fit:contain;background:#0f172a;padding:8px;margin-top:6px}.field input:not([type=checkbox]):not([type=radio]),.field select{padding:10px 12px;border-radius:10px;border:1px solid var(--border);background:var(--panel);color:var(--text);font-size:13px}.field select[multiple]{min-height:140px}.field.checkbox{display:flex;align-items:center;justify-content:space-between}.field.checkbox input[type=checkbox]{width:16px;height:16px;margin:0;accent-color:var(--accent)}.field textarea{padding:10px 12px;border-radius:10px;border:1px solid var(--border);background:var(--panel);color:var(--text);font-size:13px;font-family:IBM Plex Sans,sans-serif}.device-picker-inline{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center}.device-picker-inline button{border:1px solid var(--border);background:#f8fafc;border-radius:10px;padding:8px 10px;font-size:12px;cursor:pointer}.config-note{margin-top:6px}.login-brand{font-family:Sora,sans-serif;font-weight:700;font-size:clamp(28px,4.8vw,44px);line-height:1.06;letter-spacing:-.02em;color:var(--login-text, #0f172a);max-width:calc(100% - 110px)}.login-sub{color:var(--login-muted, #64748b);margin-top:8px;margin-bottom:24px;font-size:clamp(18px,2.2vw,22px);line-height:1.2}.login-form{display:grid;gap:14px}.login-captcha-panel{display:grid;gap:10px;justify-items:start;width:100%;padding:12px 14px;border:1px solid rgba(81,110,132,.34);border-radius:16px;background:linear-gradient(180deg,#e9f3faf0,#dfeef7f0);box-shadow:inset 0 1px #ffffffc2}.login-captcha-copy{font-size:12px;line-height:1.35;color:var(--login-muted, #64748b)}.login-captcha-panel altcha-widget{--altcha-border-radius: 12px;--altcha-border-width: 1px;--altcha-color-base: #fbfeff;--altcha-color-border: rgba(81, 110, 132, .42);--altcha-color-border-focus: var(--accent);--altcha-color-active: var(--accent);--altcha-color-footer-bg: transparent;--altcha-color-text: #12233d;width:100%;max-width:100%}.login-primary-action{display:flex;width:100%}.login-signin-button{width:100%;min-height:54px;padding:12px 20px;border-radius:14px;font-size:16px;font-weight:700;letter-spacing:.01em;border:none;color:#f8fffe;background:linear-gradient(135deg,#12b7a4,#0798a4);box-shadow:0 12px 24px #0891b23d,inset 0 1px #ffffff47}.login-signin-button:hover:not(:disabled){filter:brightness(1.03);transform:translateY(-.5px)}.login-demo-action{margin-top:2px}.login-demo-button{border:1px solid rgba(100,124,149,.55);background:linear-gradient(180deg,#5f7f9d,#476682);color:#f4faff;padding:9px 16px;border-radius:12px;font-size:14px;font-weight:600;cursor:pointer;box-shadow:inset 0 1px #ffffff3d}.login-demo-button:hover:not(:disabled){filter:brightness(1.04)}.login-form input{width:100%;min-height:52px;padding:12px 14px;border-radius:14px;border:1px solid var(--login-input-border, var(--border));background:var(--login-input-bg, #ffffff);color:var(--login-text, #0f172a);font-size:16px;box-shadow:inset 0 1px 2px #02061708}.login-form select{width:100%;min-height:52px;padding:12px 14px;border-radius:14px;border:1px solid var(--login-input-border, var(--border));background:var(--login-input-bg, #ffffff);color:var(--login-text, #0f172a);font-size:16px}.login-form input::placeholder{color:var(--login-input-placeholder, #94a3b8)}.login-form input:focus,.login-form select:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 4px #0ea5a633}.login-2fa-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1600;background:#0f172a7a;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:grid;place-items:center;padding:clamp(12px,3vw,24px)}.login-2fa-dialog{width:min(400px,94vw);border-radius:14px;border:1px solid var(--border);background:#fff;color:#0f172a;box-shadow:0 22px 40px #0f172a47;padding:16px;display:grid;gap:10px;max-height:min(86vh,620px);overflow-y:auto}.login-2fa-title{font-size:18px;font-weight:700;font-family:Sora,sans-serif}.login-2fa-subtitle{color:var(--login-muted, #64748b);font-size:13px}.login-2fa-help{font-size:12px;color:var(--login-muted, #64748b)}.login-2fa-enrollment{display:grid;gap:8px}.login-2fa-enrollment-qr{width:min(100%,320px);border-radius:10px;border:1px solid var(--border)}.login-2fa-enrollment-secret{display:grid;gap:4px;font-size:12px}.login-2fa-enrollment-secret code{padding:6px 8px;border-radius:8px;border:1px solid var(--border);background:#f8fafc;overflow-wrap:anywhere;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.login-2fa-provider-row{display:flex;flex-wrap:wrap;gap:8px}.login-2fa-provider-option{border:1px solid var(--border);background:#f8fafc;border-radius:999px;padding:8px 12px;font-size:12px;font-weight:600;color:#0f172a;cursor:pointer}.login-2fa-provider-option.active{border-color:#14b8a673;background:#14b8a624;color:#0f766e}.login-2fa-actions{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap}.login-lockout-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1700;background:#0f172a8f;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);display:grid;place-items:center;padding:clamp(12px,3vw,24px)}.login-lockout-dialog{width:min(560px,96vw)}.login-lockout-captcha-form{margin-top:6px}.login-lockout-details{display:grid;gap:10px;border:1px solid var(--border);border-radius:10px;background:#f8fafc;padding:10px 12px}.login-lockout-reason-title{font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:var(--login-muted, #64748b);font-weight:700}.login-lockout-details ul{margin:0;padding-left:18px;display:grid;gap:4px;color:#334155;font-size:13px}.login-lockout-metrics{display:grid;gap:4px;font-size:13px;color:#0f172a}.session-lockout-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2100;background:#021223ad;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);display:grid;place-items:center;padding:clamp(12px,3vw,28px)}.session-lockout-dialog{width:min(780px,97vw);border-radius:24px;border:1px solid rgba(147,197,253,.26);background:radial-gradient(120% 130% at 95% -12%,rgba(45,212,191,.18),transparent 65%),radial-gradient(120% 120% at -10% -20%,rgba(56,189,248,.15),transparent 68%),linear-gradient(180deg,#03172df5,#020d1ef7);box-shadow:0 26px 58px #02081785,inset 0 1px #cbd5e129;padding:clamp(20px,2.4vw,30px);color:#dbe9ff}.session-lockout-title{font-family:Sora,sans-serif;font-size:clamp(28px,3.4vw,60px);line-height:.97;letter-spacing:-.02em;margin-bottom:14px;font-weight:700}.session-lockout-subtitle{color:#e2ecfff2;font-size:clamp(16px,1.7vw,21px);max-width:820px;line-height:1.35;margin-bottom:14px}.session-lockout-retry{margin-bottom:16px;border-radius:16px;border:1px solid rgba(148,163,184,.32);background:#0a1527ad;color:#f1f5f9f2;padding:12px 14px;font-size:17px;line-height:1.25}.session-lockout-form{margin-top:4px;display:grid;gap:12px}.session-lockout-captcha-wrap{border-radius:14px;border:1px solid rgba(147,197,253,.28);background:#021226b8;padding:14px;width:min(100%,560px)}.session-lockout-captcha-wrap altcha-widget{width:100%;max-width:100%;--altcha-border-radius: 12px;--altcha-border-width: 1px;--altcha-color-base: #fbfeff;--altcha-color-border: rgba(81, 110, 132, .42);--altcha-color-border-focus: #31d1bf;--altcha-color-active: #31d1bf;--altcha-color-footer-bg: transparent;--altcha-color-text: #0f1f37}.session-lockout-form .login-2fa-actions{justify-content:flex-end;margin-top:4px}.login-hint{font-size:12px;color:var(--login-muted, #64748b);margin-top:-2px;padding:10px 12px;border-radius:12px;border:1px dashed rgba(148,163,184,.54);background:#f1f8fcc2}.login-hint a{color:var(--accent)}.setup-title{font-family:Sora,sans-serif;font-weight:600;margin-bottom:4px}.setup-subtitle{margin-bottom:8px}.login-foot{margin-top:18px;font-size:13px;color:var(--login-muted, #64748b)}.login-card .muted,.login-2fa-dialog .muted{color:var(--login-muted, #64748b)}@media (max-width: 640px){.login{padding:12px 10px}.login-card{width:100%;max-width:100%;border-radius:18px;padding:18px 16px}.login-brand{max-width:calc(100% - 96px);font-size:clamp(24px,9vw,34px)}.login-sub{font-size:16px;margin-bottom:18px}.login-signin-button{min-height:50px}.login-form input,.login-form select{min-height:48px;font-size:15px}.session-lockout-dialog{border-radius:18px;width:min(96vw,620px);padding:16px}.session-lockout-title{font-size:clamp(26px,12vw,48px)}.session-lockout-retry{font-size:15px;padding:10px 12px}.session-lockout-form .login-2fa-actions{flex-direction:column;align-items:stretch}.session-lockout-form .login-2fa-actions>.button,.session-lockout-form .login-2fa-actions>.primary{width:100%}}.loading{padding:40px}.loading-experience{position:relative;overflow:hidden;display:grid;justify-items:center;gap:14px;color:var(--text)}.loading-experience:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at 18% 16%,rgba(14,165,166,.15),transparent 44%),radial-gradient(circle at 84% 20%,rgba(34,197,94,.12),transparent 40%);pointer-events:none}.loading-experience-panel{width:100%;min-height:220px;padding:30px 20px;border:1px solid var(--surface-elevated-border);border-radius:16px;background:var(--surface-elevated);box-shadow:var(--shadow)}.loading-experience-screen{min-height:100vh;width:100%;padding:clamp(24px,4vw,56px);align-content:center;background:radial-gradient(circle at 15% 10%,rgba(14,165,166,.28),transparent 46%),radial-gradient(circle at 84% 16%,rgba(34,197,94,.2),transparent 44%),var(--bg-gradient)}.loading-experience-inline{display:inline-flex;align-items:center;justify-content:flex-start;grid-auto-flow:column;gap:10px;padding:6px 12px 6px 8px;border-radius:999px;border:1px solid var(--surface-elevated-border);background:var(--surface-elevated)}.loading-experience-inline:before{display:none}.loading-experience-scene{position:relative;width:120px;height:120px;isolation:isolate;display:grid;place-items:center}.loading-experience-inline .loading-experience-scene{width:28px;height:28px}.loading-aurora{position:absolute;border-radius:50%;animation:loading-orbit 4.6s linear infinite}.loading-aurora-a{top:0;right:0;bottom:0;left:0;border:1px solid rgba(14,165,166,.36);background:conic-gradient(from 220deg,#0ea5a600,#0ea5a680,#22c55e00)}.loading-aurora-b{top:14px;right:14px;bottom:14px;left:14px;border:1px solid rgba(15,118,110,.4);background:conic-gradient(from 140deg,#22c55e00,#22c55e73,#0ea5a600);animation-duration:3.2s;animation-direction:reverse}.loading-core{width:58px;height:58px;border-radius:50%;position:relative;display:grid;place-items:center;background:radial-gradient(circle at 30% 28%,#fff 5%,#d4fbf6 38%,#0ea5a6);box-shadow:0 0 0 9px #0ea5a61f,0 16px 30px #0f766e3d;animation:loading-breathe 1.8s ease-in-out infinite}.loading-experience-inline .loading-core{width:16px;height:16px;box-shadow:0 0 0 4px #0ea5a629}.loading-core span{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;border:1px solid rgba(14,165,166,.42);animation:loading-ripple 1.8s ease-out infinite}.loading-core span:nth-child(2){animation-delay:.45s}.loading-core span:nth-child(3){animation-delay:.9s}.loading-experience-inline .loading-core span{display:none}.loading-experience-copy{position:relative;z-index:1;display:grid;gap:4px;text-align:center;max-width:620px}.loading-experience-label{font-family:Sora,sans-serif;font-size:16px;font-weight:600;letter-spacing:.01em}.loading-experience-detail{font-size:13px;color:var(--muted)}.loading-experience-inline .loading-experience-copy{text-align:left}.loading-experience-inline .loading-experience-label{font-family:inherit;font-size:13px;font-weight:500}.loading-experience-inline .loading-experience-detail{display:none}@keyframes loading-orbit{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes loading-breathe{0%,to{transform:scale(.94)}50%{transform:scale(1)}}@keyframes loading-ripple{0%{transform:scale(.92);opacity:.7}to{transform:scale(1.46);opacity:0}}@media (prefers-reduced-motion: reduce){.loading-aurora,.loading-core,.loading-core span{animation:none}}.fatal-error{min-height:100vh;display:grid;place-items:center;background:linear-gradient(120deg,#0b1f2a,#0b3b45)}.fatal-card{background:#fff;border-radius:16px;padding:32px;width:min(520px,92vw);box-shadow:var(--shadow);display:grid;gap:12px}.fatal-title{font-family:Sora,sans-serif;font-size:20px;font-weight:700}.fatal-sub{color:var(--muted)}.fatal-details{background:#f8fafc;border-radius:10px;padding:12px;font-size:12px;overflow:auto}.dashboards-page{display:grid;gap:16px}.dashboards-header{display:grid;grid-template-columns:minmax(260px,max-content) minmax(0,1fr);gap:16px;align-items:start}.dashboards-title-row{display:flex;align-items:center;gap:8px}.dashboards-title{font-family:Sora,sans-serif;font-size:22px;font-weight:600}.dashboards-help-icon{width:22px;height:22px;border-radius:999px;border:1px solid var(--input-border);background:var(--surface-elevated);color:var(--text);font-size:12px;font-weight:700;line-height:1;cursor:pointer;display:inline-grid;place-items:center;padding:0;transition:border-color .2s ease,color .2s ease,background-color .2s ease,box-shadow .2s ease}.dashboards-help-icon:hover{border-color:var(--accent);color:var(--accent-2);background:var(--surface-elevated-hover);box-shadow:0 0 0 2px #0ea5a61f}.dashboards-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end;align-items:flex-start}.dashboard-builder-actions{width:100%;min-width:0;margin-left:0;align-items:center}.dashboards-actions-group{display:flex;gap:8px;flex-wrap:wrap;align-items:center;background:var(--surface-elevated);border:1px solid var(--surface-elevated-border);border-radius:12px;padding:6px}.dashboard-builder-actions .dashboards-actions-group-global{margin-right:auto}.dashboards-actions-group-emphasis{border-color:#0ea5a647;background:#0ea5a614}.dashboards-action-btn{border:1px solid var(--input-border);background:var(--surface-elevated);color:var(--text);padding:8px 12px;border-radius:9px;cursor:pointer;font-size:13px;font-weight:500;transition:border-color .2s ease,background-color .2s ease}.dashboard-builder-actions .dashboards-action-btn{display:inline-flex;align-items:center;gap:7px}.dashboards-action-symbol{width:12px;text-align:center;color:var(--muted);font-size:12px;line-height:1;font-weight:700}.dashboard-builder-actions .dashboards-action-btn.primary .dashboards-action-symbol,.dashboard-builder-actions .dashboards-action-btn.danger .dashboards-action-symbol{color:currentColor}.dashboards-action-btn:hover{border-color:var(--accent);background:#0ea5a614}.dashboards-action-btn:disabled{opacity:.55;cursor:not-allowed}.dashboards-action-btn.primary{border:none;background:var(--accent);color:#fff}.dashboards-action-btn.primary:hover{background:var(--accent-2)}.dashboards-action-btn.danger{border-color:#ef444459;color:#b91c1c}.dashboards-action-btn.danger:hover{background:#ef444414}@media (max-width: 1100px){.dashboards-header{grid-template-columns:1fr}.dashboard-builder-actions{width:100%}.dashboard-builder-actions .dashboards-actions-group-global{margin-right:0;width:100%}.dashboard-builder-actions .dashboards-actions-group-context,.dashboard-builder-actions .dashboards-actions-group-edit{margin-left:auto}}@media (max-width: 860px){.dashboard-builder-actions .dashboards-actions-group{width:100%;justify-content:flex-start}.dashboard-builder-actions .dashboards-actions-group-context,.dashboard-builder-actions .dashboards-actions-group-edit{margin-left:0}}.dashboards-body{display:grid;grid-template-columns:240px 1fr;gap:16px;align-items:start}.dashboards-body.editing{grid-template-columns:minmax(300px,340px) 1fr}.dashboards-body.editing.settings-collapsed{grid-template-columns:56px 1fr}.dashboards-widget-library-row{background:var(--panel);border-radius:16px;padding:16px;box-shadow:var(--shadow);display:grid;gap:8px;margin-bottom:16px}.dashboards-widget-library-row.collapsed{padding:12px 16px}.dashboards-widget-library-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(380px,760px) auto;gap:8px;align-items:center}.dashboards-widget-library-title{min-width:0}.dashboards-widget-library-tools{display:grid;grid-template-columns:auto minmax(240px,420px);gap:8px;align-items:center;justify-content:end}.dashboards-widget-library-meta{display:inline-flex;align-items:center;justify-content:flex-end;gap:8px;min-width:0;flex-wrap:nowrap}.dashboards-widget-library-count{color:var(--muted);font-size:12px;white-space:nowrap}.dashboards-widget-library-move-hint{color:var(--muted);font-size:11px;white-space:nowrap;opacity:.88}.dashboards-widget-library-toggle{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--muted);white-space:nowrap}.dashboards-widget-library-toggle input{width:14px;height:14px;margin:0}.dashboards-widget-library-addons-link{border:1px solid var(--input-border);border-radius:999px;background:var(--surface-elevated);color:var(--text);font-size:11px;font-weight:600;line-height:1;padding:6px 9px;text-decoration:none;white-space:nowrap}.dashboards-widget-library-addons-link:hover{border-color:var(--accent);background:#0ea5a614;color:#0f766e}.dashboards-widget-library-search{border:1px solid var(--input-border);border-radius:10px;background:var(--input-bg);color:var(--text);padding:8px 10px;min-width:0;font-size:13px;width:100%}.dashboards-widget-library-search::placeholder{color:var(--input-placeholder)}.widget-library-categories{display:flex;flex-wrap:wrap;gap:8px}.widget-library-category{border:1px solid var(--input-border);border-radius:999px;background:var(--surface-elevated);color:var(--text);padding:6px 12px;font-size:12px;font-weight:600;cursor:pointer}.widget-library-category:hover{border-color:var(--accent);background:#0ea5a614}.widget-library-category.active{border-color:#0ea5a666;color:var(--accent-2);background:#0ea5a624}.dashboards-sidebar,.dashboards-panel{background:var(--panel);border-radius:16px;padding:16px;box-shadow:var(--shadow);display:grid;gap:12px;min-height:0}.dashboards-panel.collapsed{padding:10px;justify-items:center}.dashboards-body.editing .dashboards-panel{order:1;align-content:start;overflow:auto}.dashboards-body.editing .dashboards-canvas{order:2}.dashboards-panel-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.dashboards-panel-toggle{width:30px;height:30px;border:1px solid var(--border);border-radius:9px;background:var(--surface-elevated);color:var(--text);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;line-height:1;flex-shrink:0;font-size:14px;font-weight:700;transition:border-color .2s ease,background-color .2s ease,transform .15s ease}.dashboards-panel-toggle:hover{border-color:var(--accent);background:#0ea5a614}.dashboards-canvas{background:var(--panel);border-radius:18px;padding:16px;box-shadow:var(--shadow);min-height:520px}.dashboard-empty-state{height:100%;min-height:320px;border:1px dashed var(--border);border-radius:16px;display:grid;place-items:center;text-align:center;padding:24px;color:var(--muted)}.dashboard-empty-state .panel-title{color:var(--text)}.widget-library{display:grid;gap:8px;max-height:min(52vh,460px);overflow:auto;padding-right:4px;scrollbar-gutter:stable}.widget-library-row{grid-template-columns:repeat(auto-fill,minmax(172px,1fr));max-height:min(38vh,360px)}.widget-library-item{border:1px dashed var(--border);border-radius:12px;padding:9px 10px;background:var(--surface-elevated);cursor:grab;display:grid;gap:4px;font-size:13px;align-content:start;min-height:74px;position:relative}.widget-library-item.requires-addon{border-color:#0ea5a659}.widget-library-title{display:flex;align-items:center;gap:8px;font-weight:600}.widget-library-icon{display:grid;place-items:center;width:26px;height:26px;border-radius:8px;background:#0ea5a61f;color:var(--text);font-size:12px;font-weight:700;line-height:1;padding:0;flex-shrink:0;text-align:center}.widget-library-description{color:var(--muted);font-size:12px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.widget-library-quick-row{display:flex;gap:8px;overflow:auto;padding-bottom:2px;scrollbar-gutter:stable}.widget-library-quick-item{border:1px solid var(--input-border);border-radius:10px;background:var(--surface-elevated);color:var(--text);padding:7px 10px;font-size:12px;display:inline-flex;align-items:center;gap:7px;cursor:pointer;white-space:nowrap;position:relative}.widget-library-quick-item:hover{border-color:var(--accent);background:#0ea5a614}.widget-library-quick-item.requires-addon{border-color:#0ea5a659}.widget-library-addon-badge{position:absolute;top:6px;right:7px;width:16px;height:16px;border-radius:999px;background:#0ea5a61f;border:1px solid rgba(14,165,166,.4);color:#0f766e;display:inline-flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;line-height:1;pointer-events:none}.widget-library-empty{padding:6px 4px}.dashboard-list{display:grid;gap:8px}.dashboard-list-item{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:stretch}.dashboard-list-select{border:1px solid transparent;background:var(--surface-elevated);color:var(--text);padding:10px 12px;border-radius:10px;text-align:left;cursor:pointer;display:grid;gap:4px;min-width:0}.dashboard-list-item.active .dashboard-list-select{border-color:var(--accent);background:#0ea5a61f}.dashboard-list-meta{color:var(--muted);font-size:12px}.dashboard-list-title{display:flex;align-items:center;gap:8px;min-width:0;color:var(--text)}.dashboard-overview-icon{width:16px;height:16px;display:inline-flex;align-items:center;justify-content:center;color:#d97706;flex-shrink:0}.dashboard-overview-icon svg{width:16px;height:16px;fill:currentColor}.dashboard-list-item.overview-dashboard .dashboard-list-select{border-color:#d9770626;background:#f59e0b0d}.dashboard-list-item.overview-dashboard.active .dashboard-list-select{border-color:var(--accent);background:#0ea5a61f}.dashboard-list-select.demo-flow{border-style:dashed}.dashboard-pin-button{width:38px;border:1px solid var(--input-border);border-radius:10px;background:var(--surface-elevated);color:var(--muted);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:border-color .2s ease,background-color .2s ease,color .2s ease}.dashboard-pin-button:hover:not(:disabled){border-color:#d97706;color:#b45309;background:#f59e0b14}.dashboard-pin-button svg{width:16px;height:16px;fill:currentColor}.dashboard-pin-button.pinned{border-color:#d977064d;color:#d97706;background:#f59e0b1f}.dashboard-pin-button:disabled{opacity:.55;cursor:not-allowed}.sidebar-editor-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1490;background:#02061785;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);display:flex;justify-content:flex-start}.sidebar-editor-panel{width:min(880px,96vw);height:100dvh;background:var(--panel);border-right:1px solid var(--border);box-shadow:0 18px 45px #0f172a3d;padding:18px;display:grid;gap:12px;overflow:auto}.sidebar-editor-header{display:flex;justify-content:space-between;gap:12px;align-items:center}.sidebar-editor-toggle{display:inline-flex;align-items:center;gap:8px;width:fit-content;margin:2px 0 0;padding:6px 10px;border:1px solid var(--border);border-radius:999px;background:var(--surface-elevated-hover);color:var(--text);font-size:12px;cursor:pointer}.sidebar-editor-toggle input[type=checkbox]{width:14px;height:14px;margin:0;accent-color:var(--accent)}.sidebar-editor-toggle.inline{margin:2px 0 0;padding:3px 7px;font-size:11px;background:#0ea5a614}.sidebar-editor-toggle.inline input[type=checkbox]{width:12px;height:12px}.sidebar-editor-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.sidebar-editor-section{border:1px solid var(--border);border-radius:14px;background:var(--surface-elevated);padding:10px;display:grid;gap:8px}.sidebar-editor-section-title{font-size:13px;font-weight:700}.sidebar-editor-hint{font-size:12px}.sidebar-editor-list{border:1px dashed var(--border);border-radius:12px;padding:8px;display:flex;flex-direction:column;gap:6px;min-height:120px;transition:border-color .2s ease,background-color .2s ease}.sidebar-editor-list.drag-active{border-color:#2dd4bfad;background:#0ea5a614}.sidebar-editor-drop-indicator-slot{height:0;margin:0;overflow:hidden;transition:height .2s ease,margin .2s ease}.sidebar-editor-drop-indicator-slot.active{height:8px;margin:2px 0}.sidebar-editor-drop-indicator{height:100%;border-radius:999px;background:linear-gradient(90deg,#2dd4bf33,#2dd4bfd9,#2dd4bf33);box-shadow:0 0 0 1px #2dd4bf59;animation:sidebarDropIndicatorPulse .8s ease-in-out infinite alternate;opacity:0;transform:scaleX(.92);transition:opacity .18s ease,transform .2s ease}.sidebar-editor-drop-indicator-slot.active .sidebar-editor-drop-indicator{opacity:1;transform:scaleX(1)}@keyframes sidebarDropIndicatorPulse{0%{opacity:.56;transform:scaleX(.96)}to{opacity:1;transform:scaleX(1)}}.sidebar-editor-list.available{border-color:#0ea5a673}.sidebar-editor-item{border:1px solid var(--border);border-radius:10px;background:var(--panel);padding:8px 10px;display:flex;align-items:flex-start;justify-content:space-between;gap:10px;min-height:52px;transition:transform .28s cubic-bezier(.22,1,.36,1),opacity .18s ease,border-color .18s ease,box-shadow .2s ease,background-color .2s ease;will-change:transform}.sidebar-editor-item.draggable{cursor:grab}.sidebar-editor-item.draggable:hover{border-color:#2dd4bf99;box-shadow:0 8px 20px #0f172a1f}.sidebar-editor-item.draggable:active{cursor:grabbing}.sidebar-editor-item.dragging{opacity:.42;transform:scale(.985)}.sidebar-editor-item.locked{border-style:dashed;background:#94a3b814;cursor:default}.sidebar-editor-item-main{display:flex;align-items:flex-start;gap:8px;min-width:0;flex:1}.sidebar-editor-item-copy{display:grid;gap:3px;min-width:0}.sidebar-editor-item-label{font-size:13px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-editor-item-actions{display:flex;flex-wrap:nowrap;align-items:center;gap:6px;flex-shrink:0}.sidebar-editor-item-actions .button{min-height:30px;height:30px;padding:0 9px;font-size:12px;border-radius:9px}.sidebar-editor-item-lock{display:inline-flex;align-items:center;border-radius:999px;border:1px solid var(--border);padding:0 8px;font-size:11px;color:var(--muted)}.sidebar-editor-footer{display:flex;justify-content:flex-end;gap:8px}.sidebar-editor-footer .button{height:40px;min-width:98px;justify-content:center}.dashboard-confirm-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1500;background:#0f172a73;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:grid;place-items:center;padding:24px}.dashboard-confirm-dialog{width:min(460px,96vw);background:var(--panel);border-radius:16px;border:1px solid var(--border);box-shadow:var(--shadow);padding:18px;display:grid;gap:12px}.dashboard-confirm-title{font-size:18px;font-weight:700}.dashboard-confirm-body{font-size:14px;color:var(--muted);line-height:1.45}.dashboard-confirm-actions{display:flex;justify-content:flex-end;gap:8px}.dashboard-confirm-actions button{border:1px solid var(--border);background:var(--surface-elevated);color:var(--text);padding:8px 12px;border-radius:10px;cursor:pointer;font-size:13px;transition:border-color .2s ease,background-color .2s ease,color .2s ease}.dashboard-confirm-actions button:hover:not(:disabled){border-color:var(--accent);background:var(--accent-soft)}.dashboard-confirm-actions button.primary{border:none;background:var(--accent);color:#fff}.dashboard-confirm-actions button.danger{border-color:#ef444459;color:#b91c1c}.demo-language-dialog{width:min(440px,96vw)}.demo-language-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.demo-language-option{border:1px solid var(--border);background:var(--surface-elevated);color:var(--text);border-radius:10px;padding:10px 12px;font-size:14px;font-weight:600;cursor:pointer;transition:border-color .2s ease,background .2s ease,color .2s ease}.demo-language-option:hover{border-color:var(--accent)}.demo-language-option.active{border-color:transparent;background:var(--accent);color:#fff}.demo-tour-dialog{width:min(520px,96vw)}.demo-tour-progress{font-size:12px;font-weight:600;color:var(--text)}.demo-tour-hint{font-size:12px;color:var(--muted)}.demo-tour-theme-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.demo-tour-theme-option{border:1px solid var(--border);background:var(--surface-elevated);color:var(--text);border-radius:10px;padding:10px 12px;font-size:13px;font-weight:600;cursor:pointer;transition:border-color .2s ease,background .2s ease,color .2s ease}.demo-tour-theme-option:hover{border-color:var(--accent)}.demo-tour-theme-option.active{border-color:transparent;background:var(--accent);color:#fff}.demo-tour-actions{flex-wrap:wrap}.dashboard-share-dialog{width:min(560px,96vw)}.dashboard-share-security{display:grid;gap:6px;padding:10px 12px;border:1px solid var(--border);border-radius:12px;background:var(--surface-elevated)}.dashboard-share-security .field.checkbox span{color:var(--text)}.dashboard-share-values{display:grid;gap:10px}.dashboard-share-inline{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center}.dashboard-share-inline.no-action{grid-template-columns:minmax(0,1fr)}.dashboard-share-inline input{font-family:JetBrains Mono,monospace;letter-spacing:.02em}.dashboard-share-inline button{border:1px solid var(--border);background:var(--surface-elevated);color:var(--text);border-radius:10px;padding:8px 10px;cursor:pointer;font-size:12px;white-space:nowrap}.dashboard-share-inline button:hover:not(:disabled){border-color:var(--accent);background:var(--accent-soft)}.dashboard-share-inline button:disabled{opacity:.55;cursor:not-allowed}.public-share-page{min-height:60vh;display:grid;place-items:center;padding:24px}.public-share-card{width:min(460px,96vw);background:var(--panel);border:1px solid var(--border);border-radius:16px;box-shadow:var(--shadow);padding:18px;display:grid;gap:10px}.dashboard-public-badge{border:1px solid rgba(14,165,166,.4);background:#0ea5a61f;color:#0f766e;padding:6px 10px;border-radius:999px;font-size:12px;font-weight:600}.autopilot-page{display:grid;gap:16px}.autopilot-validation-note{background:#fff7ed;border:1px solid #fed7aa;border-radius:10px;padding:8px 10px;color:#7c2d12!important;font-weight:600}.autopilot-run-queue-indicator{display:inline-flex;align-items:center}.autopilot-cooldown-note{background:#ecfeff;border:1px solid #a5f3fc;border-radius:10px;padding:8px 10px}.autopilot-trial-note{border:1px solid rgba(45,212,191,.4);border-radius:10px;padding:8px 10px;background:#0d94881a}.autopilot-addon-banner{display:grid;grid-template-columns:1fr auto;gap:14px;align-items:center}.autopilot-addon-banner-copy{display:grid;gap:6px}.autopilot-addon-features{margin:4px 0 0;padding-left:16px;display:grid;gap:4px;color:var(--muted);font-size:13px}.autopilot-addon-banner-actions{display:flex;align-items:center}.autopilot-addon-locked-btn{opacity:.65;filter:grayscale(.45)}.autopilot-addon-modal{width:min(540px,92vw);display:grid;gap:12px}.autopilot-header{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}.autopilot-actions{align-items:flex-start}.autopilot-shell{display:grid;grid-template-columns:260px 1fr 320px;gap:16px;align-items:start}.autopilot-sidebar,.autopilot-panel{background:var(--panel);border-radius:16px;padding:16px;box-shadow:var(--shadow);display:grid;gap:12px}.autopilot-canvas-wrap{background:var(--panel);border-radius:18px;padding:16px;box-shadow:var(--shadow);display:grid;gap:12px;min-height:640px}.autopilot-flow-meta{display:grid;grid-template-columns:1fr 1fr auto;gap:10px}.autopilot-canvas{position:relative;min-height:560px;border:1px dashed var(--border);border-radius:14px;background:linear-gradient(135deg,#f8fafc,#eef2f7);overflow:auto}.autopilot-canvas.is-connecting{cursor:crosshair}.autopilot-edges{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:none}.autopilot-edge-line{fill:none;stroke:#334155;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round;opacity:.7}.autopilot-edge-line.preview{stroke:var(--accent);stroke-dasharray:7 5;opacity:.9}.autopilot-node{position:absolute;width:220px;min-height:92px;border-radius:12px;border:1px solid #cbd5e1;background:#fff;padding:10px;box-shadow:0 8px 20px #0f172a14;cursor:grab;display:grid;gap:8px;overflow:visible;transition:left .14s ease-out,top .14s ease-out,box-shadow .18s ease,transform .18s ease}.autopilot-node.selected{border-color:var(--accent);box-shadow:0 0 0 1px #0ea5a68c,0 10px 26px #0f172a1f}.autopilot-node.dragging{transition:box-shadow .15s ease,transform .15s ease;transform:scale(1.02);cursor:grabbing;box-shadow:0 14px 30px #0f172a33;z-index:4}.autopilot-node.connect-target{border-color:var(--accent);box-shadow:0 0 0 2px #0ea5a647,0 12px 26px #0f172a24}.autopilot-node.trigger{background:linear-gradient(180deg,#ecfeff,#fff)}.autopilot-node.condition{background:linear-gradient(180deg,#fef9c3,#fff)}.autopilot-node.action{background:linear-gradient(180deg,#f1f5f9,#fff)}.autopilot-node-title{font-weight:700;font-size:13px}.autopilot-node-type{color:var(--muted);font-size:11px}.autopilot-node-actions{display:flex;justify-content:flex-end;gap:6px}.autopilot-node-actions button{border:1px solid var(--border);border-radius:8px;font-size:11px;padding:4px 8px;background:#f8fafc;cursor:pointer}.autopilot-node-connector{position:absolute;top:50%;transform:translateY(-50%);width:18px;height:18px;border-radius:50%;border:2px solid #334155;background:#fff;box-shadow:0 0 0 3px #0f172a0f;z-index:2}.autopilot-node-connector.output{right:-11px;cursor:crosshair}.autopilot-node-connector.input{left:-11px;border-color:#64748b;pointer-events:none}.autopilot-node-connector.output:hover{border-color:var(--accent);box-shadow:0 0 0 5px #0ea5a62e}.autopilot-node-connector.output:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.autopilot-node-connector.connected{background:#334155}.autopilot-node-connector.output.active{border-color:var(--accent);background:var(--accent)}.autopilot-node-connector.connect-target{border-color:var(--accent);box-shadow:0 0 0 6px #0ea5a63d}.autopilot-palette{display:grid;gap:10px;max-height:min(52vh,460px);overflow:auto;padding-right:4px;scrollbar-gutter:stable}.autopilot-palette-group{display:grid;gap:8px}.autopilot-palette-title{text-transform:uppercase;letter-spacing:.08em;font-size:11px;color:var(--muted);font-weight:700}.autopilot-template{border:1px dashed var(--border);border-radius:10px;background:#f8fafc;padding:8px 10px;cursor:grab;font-size:12px;display:grid;gap:4px}.autopilot-template-name{font-weight:700;font-size:12px}.autopilot-list{display:grid;gap:8px;max-height:200px;overflow:auto}.autopilot-list .dashboard-list-item{grid-template-columns:minmax(0,1fr)}.autopilot-list .dashboard-list-select>div{font-weight:600;color:var(--text)}.autopilot-edge-item{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:12px;border:1px solid var(--border);border-radius:10px;padding:8px 10px;background:#f8fafc}.autopilot-run-card{border:1px solid var(--border);border-radius:12px;background:#f8fafc;padding:10px;display:grid;gap:8px}.autopilot-run-head{display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:12px}.autopilot-run-log{display:grid;gap:4px;max-height:260px;overflow:auto}.autopilot-log-line{display:grid;grid-template-columns:48px 1fr;gap:8px;font-size:11px;align-items:start}.autopilot-log-line.info span:first-child{color:#0369a1}.autopilot-log-line.warn span:first-child{color:#b45309}.autopilot-log-line.error span:first-child{color:#b91c1c}body.app-design-modern .autopilot-canvas{border-color:#7fbfd859;background:linear-gradient(145deg,#051c29e0,#07293beb)}body.app-design-modern .autopilot-edge-line{stroke:#cbe6fb;opacity:.75}body.app-design-modern .autopilot-node{border-color:#80bed66b;background:#062333eb;color:#e6f4ff;box-shadow:0 10px 24px #00000052}body.app-design-modern .autopilot-node.trigger{background:linear-gradient(180deg,#073543f2,#062333e6)}body.app-design-modern .autopilot-node.condition{background:linear-gradient(180deg,#473b12e6,#23242df0)}body.app-design-modern .autopilot-node.action{background:linear-gradient(180deg,#23374ff0,#062333e6)}body.app-design-modern .autopilot-node-type{color:#b9d9ef}body.app-design-modern .autopilot-node-actions button,body.app-design-modern .autopilot-template,body.app-design-modern .autopilot-edge-item,body.app-design-modern .autopilot-run-card{background:#08293cc7;border-color:#78bcd552;color:#e1f0fb}body.app-design-modern .autopilot-node-connector{border-color:#d7ecff;background:#0b2435}body.app-design-modern .autopilot-node-connector.connected{background:#d7ecff}body.app-design-modern .autopilot-validation-note{background:#08293ceb;border-color:#7ec5df6b;color:#e2f2ff!important}.device-picker-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1400;background:#0f172a73;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:grid;place-items:center;padding:24px}.device-picker-dialog{width:min(860px,96vw);max-height:88vh;background:var(--panel);border-radius:16px;border:1px solid var(--border);box-shadow:var(--shadow);display:grid;grid-template-rows:auto auto minmax(0,1fr);overflow:hidden}.device-picker-header{display:flex;justify-content:space-between;align-items:center;padding:14px 16px;border-bottom:1px solid var(--border)}.device-picker-header button{border:1px solid var(--border);background:#f8fafc;border-radius:10px;padding:6px 10px;font-size:12px;cursor:pointer}.device-picker-tabs{display:flex;gap:8px;padding:10px 16px 0}.device-picker-tabs button{border:1px solid var(--border);background:#f8fafc;border-radius:999px;padding:6px 12px;font-size:12px;cursor:pointer}.device-picker-tabs button.active{background:var(--accent);border-color:var(--accent);color:#fff}.device-picker-body{display:grid;gap:12px;padding:14px 16px 16px;overflow:auto}.device-picker-results{display:grid;gap:8px;max-height:280px;overflow:auto;border:1px solid var(--border);border-radius:12px;padding:8px;background:#f8fafc}.location-picker-map{height:230px;border-radius:12px;border:1px solid var(--border);overflow:hidden}.location-picker-map .map{height:100%}.location-picker-coordinates{margin-top:8px;font-size:12px;color:var(--muted)}.device-picker-result{border:1px solid var(--border);background:#fff;border-radius:10px;padding:8px 10px;cursor:pointer;text-align:left;display:flex;justify-content:space-between;align-items:center;gap:8px}.device-picker-id{word-break:break-all}.device-picker-map-wrap{display:grid;gap:10px}.device-picker-map{height:360px;border-radius:12px;overflow:hidden;border:1px solid var(--border)}.device-picker-map .map{height:100%;min-height:280px}.device-picker-map-footer{border:1px solid var(--border);border-radius:12px;background:#f8fafc;padding:10px 12px;display:flex;align-items:center;justify-content:space-between;gap:10px}.device-picker-map-footer button{border:1px solid var(--border);background:#fff;border-radius:10px;padding:8px 10px;cursor:pointer;font-size:12px}.dashboard-grid{display:grid;gap:12px;background:var(--dashboard-grid-bg);border-radius:18px;padding:14px;border:1px solid var(--dashboard-grid-border);min-height:480px}.dashboard-viewer-grid-wrap{position:relative}.dashboard-viewer-controls{position:absolute;top:16px;right:16px;z-index:25;display:inline-flex;align-items:center;gap:8px}.dashboard-refresh-control{position:static}.dashboard-fullscreen-btn{width:32px;height:32px}.dashboard-viewer-loading-overlay{position:absolute;top:12px;right:12px;bottom:12px;left:12px;z-index:20;border-radius:14px;background:var(--dashboard-overlay);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center;pointer-events:none}.dashboard-grid.show-grid{background-image:linear-gradient(to right,var(--dashboard-grid-line) 1px,transparent 1px),linear-gradient(to bottom,var(--dashboard-grid-line) 1px,transparent 1px),var(--dashboard-grid-bg);background-size:calc(100% / var(--grid-cols)) var(--grid-row-height),calc(100% / var(--grid-cols)) var(--grid-row-height),100% 100%;background-position:0 0,0 0,0 0;background-repeat:repeat,repeat,no-repeat;box-shadow:inset 0 0 0 1px var(--dashboard-grid-inset)}.widget-card{background:var(--dashboard-widget-bg);border-radius:16px;padding:14px;border:1px solid var(--dashboard-widget-border);display:flex;flex-direction:column;gap:12px;box-shadow:0 12px 28px #0f172a12;position:relative;min-height:0;overflow:hidden;color:var(--dashboard-widget-text);transition:transform .12s ease,box-shadow .18s ease,border-color .18s ease,background .22s ease;will-change:transform}.dashboard-grid.editable .widget-card{cursor:grab;-webkit-user-select:none;user-select:none;touch-action:none}.dashboard-grid.editable .widget-card:active{cursor:grabbing}.dashboard-grid.editable .widget-card.interacting{cursor:grabbing;transition:none;box-shadow:0 18px 34px #0f172a33}.widget-card.selected{border-color:var(--accent);box-shadow:0 14px 32px var(--dashboard-selected-shadow)}.widget-card.not-owned{background:var(--dashboard-muted-widget-bg);border-color:var(--dashboard-muted-widget-border)}.widget-card.not-owned .widget-header{color:var(--dashboard-widget-muted)}.widget-header{display:flex;justify-content:space-between;align-items:center;font-weight:650;font-size:14px;color:var(--dashboard-widget-title);gap:8px;letter-spacing:.01em;min-height:24px}.widget-title-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.widget-delete{color:var(--dashboard-widget-muted);font-size:18px;line-height:1;border:none;background:transparent;cursor:pointer;padding:2px 6px;border-radius:8px;min-width:28px}.widget-delete:hover{color:#b91c1c;background:var(--dashboard-delete-hover-bg)}.widget-resize-handle{position:absolute;bottom:8px;right:8px;width:22px;height:22px;border-right:3px solid var(--border);border-bottom:3px solid var(--border);border-radius:2px;cursor:se-resize;opacity:.6}.widget-card:hover .widget-resize-handle{opacity:1}.widget-body{flex:1;display:flex;flex-direction:column;gap:10px;min-height:0;overflow:hidden}.widget-content-shell{flex:1;display:flex;flex-direction:column;min-height:0}.widget-content-shell>*{min-height:0}.widget-addon-lock{flex:1;border:1px dashed var(--dashboard-lock-border);border-radius:12px;background:var(--dashboard-lock-bg);display:grid;align-content:center;justify-items:center;gap:8px;padding:14px;text-align:center}.widget-addon-lock-title{font-size:13px;font-weight:700;color:var(--dashboard-widget-title)}.widget-addon-lock-body{font-size:12px;color:var(--dashboard-widget-muted);max-width:34ch}.widget-addon-lock-link{border:1px solid rgba(14,165,166,.4);border-radius:999px;background:#0ea5a61a;color:#0f766e;text-decoration:none;font-size:12px;font-weight:600;padding:5px 10px}.widget-addon-lock-link:hover{background:#0ea5a629;border-color:#0ea5a68c}.widget-map,.widget-map .map{height:100%;min-height:0}.widget-map{position:relative}.widget-map .leaflet-container{z-index:1}.widget-ev-map{display:flex;flex-direction:column;gap:8px;height:100%;min-height:0}.widget-ev-map .widget-map{flex:1;min-height:clamp(220px,34vh,560px)}.widget-content-shell.widget-size-compact .widget-ev-map .widget-map{min-height:160px}.widget-map-loading-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:4;background:var(--dashboard-map-overlay);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:flex;align-items:center;justify-content:center;pointer-events:none}.widget-loading-state{flex:1;display:flex;align-items:center;justify-content:center}.widget-kpi{display:grid;gap:8px;padding:4px;border-radius:12px;background:linear-gradient(155deg,rgba(14,165,166,.05),transparent 55%)}.widget-kpi-minimal{min-height:100%;align-content:center;justify-items:center}.widget-kpi-label{color:var(--dashboard-widget-muted);font-size:12px;letter-spacing:.01em}.widget-kpi-value{font-size:clamp(30px,3vw,40px);font-weight:650;line-height:1.04;color:var(--dashboard-widget-title)}.widget-kpi-unit{font-size:15px;margin-left:6px;color:var(--dashboard-widget-muted)}.widget-alarms{display:grid;gap:8px;min-height:0;overflow:auto;align-content:start;scrollbar-width:thin;scrollbar-color:var(--dashboard-scrollbar-thumb) var(--dashboard-scrollbar-track)}.alarm-widget-summary{display:flex;align-items:center;justify-content:space-between;gap:8px;color:var(--dashboard-widget-muted);font-size:12px}.alarm-chip{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:8px 11px;border-radius:11px;background:var(--dashboard-widget-row-bg);font-size:12px;text-decoration:none;color:inherit;border:1px solid var(--dashboard-widget-row-border);line-height:1.3;transition:transform .14s ease,border-color .16s ease,background .16s ease}.alarm-chip:hover{border-color:var(--accent);background:var(--dashboard-row-hover-bg);transform:translateY(-1px)}.alarm-chip.severity-critical{background:var(--tone-critical-bg);border-color:var(--tone-critical-border);color:var(--tone-critical-text)}.alarm-chip.severity-high{background:var(--tone-high-bg);border-color:var(--tone-high-border);color:var(--tone-high-text)}.alarm-chip.severity-medium{background:var(--tone-medium-bg);border-color:var(--tone-medium-border);color:var(--tone-medium-text)}.alarm-chip.severity-low{background:var(--tone-low-bg);border-color:var(--tone-low-border);color:var(--tone-low-text)}.alarm-chip .muted{color:inherit;opacity:.82}.alarm-chip-main{display:grid;gap:2px;min-width:0}.widget-device-list{display:grid;gap:8px;min-height:0;overflow:auto;align-content:start;scrollbar-width:thin;scrollbar-color:var(--dashboard-scrollbar-thumb) var(--dashboard-scrollbar-track)}.device-pill{display:flex;justify-content:space-between;align-items:center;padding:8px 11px;border-radius:11px;font-size:12px;border:1px solid var(--dashboard-widget-row-border);background:var(--dashboard-widget-row-bg);text-decoration:none;color:inherit;line-height:1.3;transition:transform .14s ease,border-color .16s ease,background .16s ease}.device-pill:hover{transform:translateY(-1px)}.device-pill.online{border-color:var(--tone-online-border);background:var(--tone-online-bg);color:var(--tone-online-text)}.device-pill.offline{border-color:var(--tone-offline-border);background:var(--tone-offline-bg);color:var(--tone-offline-text)}.device-pill.degraded{border-color:var(--tone-degraded-border);background:var(--tone-degraded-bg);color:var(--tone-degraded-text)}.widget-telemetry{display:grid;gap:8px;font-size:12px;min-height:0;overflow:auto;align-content:start;scrollbar-width:thin;scrollbar-color:var(--dashboard-scrollbar-thumb) var(--dashboard-scrollbar-track)}.telemetry-row{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:8px 10px;border-radius:10px;background:var(--dashboard-widget-row-bg);border:1px solid var(--dashboard-widget-row-border)}.telemetry-row strong{color:var(--dashboard-widget-title);font-weight:600}.widget-attributes{display:grid;gap:8px;font-size:12px;min-height:0;overflow:auto;align-content:start;scrollbar-width:thin;scrollbar-color:var(--dashboard-scrollbar-thumb) var(--dashboard-scrollbar-track)}.attribute-row{display:flex;justify-content:space-between;gap:8px;padding:8px 10px;border-radius:10px;background:var(--dashboard-widget-row-bg);border:1px solid var(--dashboard-widget-row-border);align-items:center}.attribute-row>div{display:grid;gap:2px}.attribute-key{font-weight:600}.attribute-value{color:var(--dashboard-widget-muted);word-break:break-word}.attribute-time{color:var(--dashboard-widget-muted);font-size:10px;white-space:nowrap}.widget-alarms::-webkit-scrollbar,.widget-device-list::-webkit-scrollbar,.widget-telemetry::-webkit-scrollbar,.widget-attributes::-webkit-scrollbar,.widget-trend::-webkit-scrollbar,.widget-aqi::-webkit-scrollbar,.insight-list::-webkit-scrollbar,.enviolux-list::-webkit-scrollbar{width:8px;height:8px}.widget-alarms::-webkit-scrollbar-track,.widget-device-list::-webkit-scrollbar-track,.widget-telemetry::-webkit-scrollbar-track,.widget-attributes::-webkit-scrollbar-track,.widget-trend::-webkit-scrollbar-track,.widget-aqi::-webkit-scrollbar-track,.insight-list::-webkit-scrollbar-track,.enviolux-list::-webkit-scrollbar-track{background:var(--dashboard-scrollbar-track);border-radius:999px}.widget-alarms::-webkit-scrollbar-thumb,.widget-device-list::-webkit-scrollbar-thumb,.widget-telemetry::-webkit-scrollbar-thumb,.widget-attributes::-webkit-scrollbar-thumb,.widget-trend::-webkit-scrollbar-thumb,.widget-aqi::-webkit-scrollbar-thumb,.insight-list::-webkit-scrollbar-thumb,.enviolux-list::-webkit-scrollbar-thumb{background:var(--dashboard-scrollbar-thumb);border-radius:999px}.widget-alarms::-webkit-scrollbar-thumb:hover,.widget-device-list::-webkit-scrollbar-thumb:hover,.widget-telemetry::-webkit-scrollbar-thumb:hover,.widget-attributes::-webkit-scrollbar-thumb:hover,.widget-trend::-webkit-scrollbar-thumb:hover,.widget-aqi::-webkit-scrollbar-thumb:hover,.insight-list::-webkit-scrollbar-thumb:hover,.enviolux-list::-webkit-scrollbar-thumb:hover{background:var(--dashboard-scrollbar-thumb-hover)}.widget-graph{display:flex;flex-direction:column;gap:8px;height:100%;min-height:0}.widget-timeseries-header{display:flex;align-items:center;justify-content:space-between;gap:8px;min-width:0}.widget-timeframe{position:relative;flex-shrink:0;z-index:3}.widget-timeframe-btn{border:1px solid var(--border);background:var(--dashboard-widget-row-bg);color:var(--dashboard-widget-text);border-radius:999px;height:28px;padding:0 10px;display:inline-flex;align-items:center;gap:6px;font-size:11px;cursor:pointer}.widget-timeframe-btn:hover{border-color:#0ea5a680}.widget-timeframe-btn svg{width:14px;height:14px}.widget-timeframe-menu{position:absolute;border:1px solid var(--border);background:var(--panel);border-radius:12px;box-shadow:0 10px 24px #0f172a24;display:grid;gap:4px;padding:6px;z-index:15;min-width:120px}.widget-timeframe-menu.floating{position:fixed;top:8px;left:8px}.widget-timeframe-menu button{border:1px solid transparent;background:transparent;border-radius:8px;padding:6px 8px;font-size:11px;text-align:left;cursor:pointer}.widget-timeframe-menu button:hover{background:var(--dashboard-row-hover-bg)}.widget-timeframe-menu button.active{border-color:var(--accent);background:var(--dashboard-row-hover-bg);color:var(--accent-2)}.widget-graph .line-chart,.widget-trend .line-chart{flex:1;min-height:0;height:100%}.widget-graph .timeseries-chart-shell,.widget-trend .timeseries-chart-shell{min-height:0;height:100%}.widget-graph .recharts-responsive-container,.widget-trend .recharts-responsive-container{min-height:0!important}.widget-stream{display:grid;gap:8px;height:100%;min-height:0}.stream-header{display:flex;align-items:baseline;justify-content:space-between;gap:8px}.stream-title{font-size:12px;font-weight:600;color:var(--dashboard-widget-title)}.stream-stats{display:inline-flex;align-items:center;gap:8px;font-size:11px;color:var(--dashboard-widget-muted)}.stream-river{position:relative;flex:1;min-height:92px;border-radius:12px;border:1px solid var(--dashboard-widget-row-border);background:radial-gradient(circle at 18% 22%,rgba(50,198,176,.2),transparent 48%),linear-gradient(180deg,#0ea5a614,#0ea5a605),var(--dashboard-widget-row-bg);overflow:hidden}.widget-content-shell.widget-size-compact .stream-river{min-height:78px}.stream-grid-lines{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.stream-grid-lines span{position:absolute;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,rgba(14,165,166,.32),transparent);opacity:.6}.stream-grid-lines span:nth-child(1){top:20%}.stream-grid-lines span:nth-child(2){top:40%}.stream-grid-lines span:nth-child(3){top:60%}.stream-grid-lines span:nth-child(4){top:80%}.stream-packet{position:absolute;left:100%;width:14px;height:8px;border-radius:999px;background:linear-gradient(90deg,#0ea5a659,#0ea5a6f2);box-shadow:0 0 12px #32c6b09e,0 0 0 1px #0ea5a638;opacity:0;animation:stream-flow 7.2s linear forwards}.stream-packet.lane-0{top:15%}.stream-packet.lane-1{top:36%}.stream-packet.lane-2{top:56%}.stream-packet.lane-3{top:76%}.stream-empty{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;font-size:12px;color:var(--dashboard-widget-muted);text-align:center;padding:8px}.stream-footer{font-size:11px;color:var(--dashboard-widget-muted);min-height:16px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@keyframes stream-flow{0%{left:100%;opacity:0;transform:scale(.72)}12%{opacity:.92}to{left:-12%;opacity:0;transform:scale(1)}}.widget-html{font-size:13px;color:var(--dashboard-widget-text)}.widget-sensor{display:grid;gap:6px}.widget-sensor-label{color:var(--dashboard-widget-muted);font-size:12px;text-transform:capitalize}.widget-sensor-value{font-size:26px;font-weight:650;color:var(--dashboard-widget-title)}.widget-sensor-unit{margin-left:6px;font-size:13px;color:var(--dashboard-widget-muted)}.widget-status-summary{display:grid;gap:8px;min-height:0;overflow:hidden;align-content:start;padding:2px 0}.widget-status-summary>div{display:flex;justify-content:space-between;font-size:13px;align-items:center}.status-summary-row{display:flex;justify-content:space-between;align-items:center;text-decoration:none;color:inherit;padding:9px 11px;border-radius:11px;border:1px solid var(--dashboard-widget-row-border);background:var(--dashboard-widget-row-bg);min-height:36px;line-height:1.2}.status-summary-row:hover{background:var(--dashboard-row-hover-bg)}.status-summary-row.online{border-color:var(--tone-online-border);background:var(--tone-online-bg);color:var(--tone-online-text)}.status-summary-row.degraded{border-color:var(--tone-degraded-border);background:var(--tone-degraded-bg);color:var(--tone-degraded-text)}.status-summary-row.offline{border-color:var(--tone-offline-border);background:var(--tone-offline-bg);color:var(--tone-offline-text)}.status-summary-row .muted{color:inherit;opacity:.9;font-weight:500}.widget-status-summary strong{font-size:16px;line-height:1;color:currentColor}.status-bar{display:flex;height:10px;border-radius:999px;overflow:hidden;background:var(--dashboard-status-track);margin-top:2px}.status-segment{height:100%}.status-segment.online{background:#22c55e}.status-segment.degraded{background:#f59e0b}.status-segment.offline{background:#ef4444}.widget-alarm-breakdown{display:grid;gap:8px;font-size:13px;min-height:0;overflow:hidden;align-content:start;padding:2px 0}.alarm-breakdown-row{display:flex;justify-content:space-between;padding:9px 11px;border-radius:11px;background:var(--dashboard-widget-row-bg);border:1px solid var(--dashboard-widget-row-border);text-decoration:none;color:inherit;align-items:center;min-height:36px;line-height:1.2}.alarm-breakdown-row:hover{box-shadow:inset 0 0 0 1px #94a3b859}.alarm-breakdown-row strong{font-size:16px;line-height:1;color:currentColor}.alarm-breakdown-row.severity-critical{border-color:var(--tone-critical-border);background:var(--tone-critical-bg);color:var(--tone-critical-text)}.alarm-breakdown-row.severity-high{border-color:var(--tone-high-border);background:var(--tone-high-bg);color:var(--tone-high-text)}.alarm-breakdown-row.severity-medium{border-color:var(--tone-medium-border);background:var(--tone-medium-bg);color:var(--tone-medium-text)}.alarm-breakdown-row.severity-low{border-color:var(--tone-low-border);background:var(--tone-low-bg);color:var(--tone-low-text)}.widget-notes{font-size:13px;line-height:1.5;padding:12px;border-radius:12px;border:1px solid var(--dashboard-widget-row-border);background:var(--dashboard-widget-row-bg);color:var(--dashboard-widget-text);white-space:pre-wrap}.widget-trend,.widget-aqi{display:grid;gap:10px;min-height:0;overflow:auto;align-content:start;scrollbar-width:thin;scrollbar-color:var(--dashboard-scrollbar-thumb) var(--dashboard-scrollbar-track)}.widget-trend{overflow:hidden}.widget-weather{display:grid;gap:9px;min-height:0;overflow:hidden;align-content:start}.weather-header,.aqi-header,.control-header{display:flex;justify-content:space-between;align-items:center}.weather-location,.aqi-location{font-weight:600;font-size:13px}.weather-updated,.aqi-updated{font-size:11px;color:var(--dashboard-widget-muted)}.weather-main{display:flex;align-items:center;gap:12px}.weather-temp{font-size:30px;font-weight:600;color:var(--dashboard-widget-title)}.weather-meta{display:grid;gap:2px;font-size:12px;color:var(--dashboard-widget-muted)}.weather-condition{color:var(--dashboard-widget-title);font-weight:600}.weather-glyph,.forecast-glyph{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;background:linear-gradient(135deg,#e2e8f0,#cbd5f5);box-shadow:inset 0 0 0 1px #94a3b859}.forecast-glyph{width:22px;height:22px;border-radius:8px}.weather-glyph-icon{font-size:20px;line-height:1}.forecast-glyph-icon{font-size:12px;line-height:1}.weather-glyph.clear,.forecast-glyph.clear{background:radial-gradient(circle at 30% 30%,#fef08a,#f59e0b)}.weather-glyph.partly,.forecast-glyph.partly{background:linear-gradient(135deg,#fde68a,#93c5fd)}.weather-glyph.cloudy,.forecast-glyph.cloudy{background:linear-gradient(135deg,#e2e8f0,#94a3b8)}.weather-glyph.fog,.forecast-glyph.fog{background:linear-gradient(135deg,#e5e7eb,#9ca3af)}.weather-glyph.rain,.forecast-glyph.rain{background:linear-gradient(135deg,#7dd3fc,#2563eb)}.weather-glyph.snow,.forecast-glyph.snow{background:linear-gradient(135deg,#f1f5f9,#93c5fd)}.weather-glyph.storm,.forecast-glyph.storm{background:linear-gradient(135deg,#c4b5fd,#4c1d95)}.weather-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.weather-detail{display:flex;justify-content:space-between;align-items:center;padding:6px 8px;border-radius:10px;background:var(--dashboard-widget-row-bg);border:1px solid var(--dashboard-widget-row-border);font-size:11px}.weather-detail strong,.forecast-item strong,.forecast-day-item strong{color:var(--dashboard-widget-title)}.weather-forecast{display:grid;gap:6px}.widget-weather.compact .weather-main{gap:10px}.widget-weather.compact .weather-temp{font-size:29px;line-height:1.05}.widget-weather.compact .weather-detail{padding:5px 8px}.widget-weather.compact .forecast-item{padding:5px}.widget-weather.compact .forecast-day-item{padding:7px 6px}.widget-weather.dense{gap:6px}.widget-weather.dense .weather-main{gap:8px}.widget-weather.dense .weather-temp{font-size:27px;line-height:1.05}.widget-weather.dense .weather-details{gap:6px}.widget-weather.dense .weather-detail{padding:4px 7px;font-size:10px}.widget-weather.dense .forecast-item{gap:2px;padding:4px;font-size:9px}.widget-weather.dense .forecast-day-item{gap:2px;padding:6px 5px}.widget-weather.dense .forecast-glyph{width:20px;height:20px}.widget-weather.dense .forecast-glyph-icon{font-size:11px}.forecast-title{font-size:11px;color:var(--dashboard-widget-muted)}.forecast-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:6px}.forecast-days-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:6px}.forecast-item{display:grid;gap:4px;text-align:center;padding:6px;border-radius:10px;background:var(--dashboard-widget-row-bg);border:1px solid var(--dashboard-widget-row-border);font-size:10px}.forecast-day-item{display:grid;gap:4px;text-align:center;padding:8px 6px;border-radius:10px;background:var(--dashboard-widget-row-bg);border:1px solid var(--dashboard-widget-row-border);font-size:10px}.forecast-precip{color:var(--muted)}.aqi-main{display:flex;align-items:baseline;gap:10px}.aqi-value{font-size:30px;font-weight:600;color:var(--dashboard-widget-title)}.aqi-label{font-size:12px;color:var(--dashboard-widget-muted)}.aqi-badge{font-size:10px;text-transform:uppercase;letter-spacing:.04em;padding:4px 8px;border-radius:999px;background:var(--dashboard-widget-row-bg);color:var(--dashboard-widget-title)}.aqi-badge.good{background:#dcfce7;color:#166534}.aqi-badge.fair{background:#dbeafe;color:#1d4ed8}.aqi-badge.moderate{background:#fef9c3;color:#92400e}.aqi-badge.poor{background:#fed7aa;color:#9a3412}.aqi-badge.very-poor{background:#fecaca;color:#b91c1c}.aqi-badge.extreme,.aqi-badge.hazardous{background:#fee2e2;color:#7f1d1d}.aqi-badge.usg{background:#fde68a;color:#92400e}.aqi-badge.unhealthy{background:#fca5a5;color:#7f1d1d}.aqi-badge.very-unhealthy{background:#e9d5ff;color:#6b21a8}.aqi-details{display:grid;gap:6px}.aqi-bar{margin-top:-2px}.aqi-bar-track{position:relative;height:8px;border-radius:999px;background:linear-gradient(90deg,#22c55e,#eab308,#ef4444);overflow:hidden}.aqi-bar-track.relaxed{background:linear-gradient(90deg,#bbf7d0,#86efac 45%,#fde68a 74%,#fb923c 90%,#ef4444)}.aqi-bar-marker{position:absolute;top:50%;width:10px;height:10px;border-radius:999px;border:2px solid #fff;background:#0f172a;transform:translate(-50%,-50%);box-shadow:0 2px 4px #0f172a4d}.aqi-main-pollutant{font-size:11px;color:var(--dashboard-widget-muted);line-height:1.35}.aqi-subtitle{font-size:11px;color:var(--dashboard-widget-muted)}.aqi-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.aqi-chip{display:flex;justify-content:space-between;gap:6px;align-items:center;padding:6px 8px;border-radius:10px;background:var(--dashboard-widget-row-bg);border:1px solid var(--dashboard-widget-row-border);font-size:10px}.widget-data-link{margin-top:auto;font-size:10px;color:var(--dashboard-widget-muted);text-decoration:none;opacity:.8;justify-self:end}.widget-data-link:hover{opacity:1;text-decoration:underline}.widget-control{display:grid;gap:10px;min-height:0;overflow:hidden;align-content:start;grid-template-rows:auto auto auto}.control-header{font-size:12px;color:var(--dashboard-widget-muted)}.control-slider{width:100%;accent-color:var(--accent)}.control-meta{display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap;min-width:0;font-size:12px;color:var(--dashboard-widget-muted)}.control-header>div,.control-meta>span{min-width:0}.control-header>div{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.control-mapping{font-size:11px;color:var(--dashboard-widget-muted);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.control-status{font-size:11px;color:var(--dashboard-widget-muted)}.control-status.ok{color:#16a34a}.control-status.error{color:#b91c1c}.widget-general-insight{display:grid;gap:8px;min-height:0;overflow:hidden;align-content:start}.insight-hero{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}.insight-hero.compact{align-items:flex-start}.insight-hero-main{display:grid;gap:2px}.insight-hero-main strong{font-size:28px;line-height:1;color:var(--dashboard-widget-title)}.insight-hero-main span{font-size:11px;color:var(--dashboard-widget-muted)}.insight-chip-row{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.insight-chip{border-radius:999px;padding:4px 8px;font-size:10px;border:1px solid var(--dashboard-widget-row-border);background:var(--dashboard-widget-row-bg);color:var(--dashboard-widget-text);white-space:nowrap}.insight-chip.healthy{border-color:var(--tone-online-border);background:var(--tone-online-bg);color:var(--tone-online-text)}.insight-chip.warning{border-color:var(--tone-degraded-border);background:var(--tone-degraded-bg);color:var(--tone-degraded-text)}.insight-chip.critical{border-color:var(--tone-critical-border);background:var(--tone-critical-bg);color:var(--tone-critical-text)}.insight-chip.neutral{color:var(--dashboard-widget-muted)}.insight-track{display:flex;height:8px;border-radius:999px;overflow:hidden;background:var(--dashboard-status-track)}.insight-track span{height:100%}.insight-track span.healthy{background:#22c55e}.insight-track span.warning{background:#f59e0b}.insight-track span.critical{background:#ef4444}.insight-list{display:grid;gap:6px;overflow:auto;min-height:0;align-content:start;scrollbar-width:thin;scrollbar-color:var(--dashboard-scrollbar-thumb) var(--dashboard-scrollbar-track)}.insight-row{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 10px;border-radius:10px;border:1px solid var(--dashboard-widget-row-border);background:var(--dashboard-widget-row-bg);text-decoration:none;color:inherit}.insight-row:hover{border-color:var(--accent);background:var(--dashboard-row-hover-bg)}.insight-row.healthy{border-color:var(--tone-online-border);background:var(--tone-online-bg)}.insight-row.warning{border-color:var(--tone-degraded-border);background:var(--tone-degraded-bg)}.insight-row.critical{border-color:var(--tone-critical-border);background:var(--tone-critical-bg)}.insight-row-main{display:grid;gap:2px;min-width:0}.insight-row-main strong{font-size:12px;color:var(--dashboard-widget-title);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.insight-row-main .muted{font-size:10px;color:var(--dashboard-widget-muted)}.insight-row-meta{display:grid;gap:2px;justify-items:end;font-size:10px;color:var(--dashboard-widget-muted);flex-shrink:0}.insight-rank{display:inline-grid;place-items:center;min-width:16px;height:16px;border-radius:999px;background:#0f172a1f;font-size:10px;margin-right:4px}.widget-enviolux{display:grid;gap:8px;min-height:0;overflow:hidden;align-content:start}.enviolux-hero{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}.enviolux-hero-main{display:grid;gap:2px}.enviolux-hero-main strong{font-size:28px;line-height:1;color:var(--dashboard-widget-title)}.enviolux-hero-main span{font-size:11px;color:var(--dashboard-widget-muted)}.enviolux-chip-row{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.enviolux-chip{border-radius:999px;padding:4px 8px;font-size:10px;border:1px solid var(--dashboard-widget-row-border);background:var(--dashboard-widget-row-bg);color:var(--dashboard-widget-text);white-space:nowrap}.enviolux-chip.healthy{border-color:var(--tone-online-border);background:var(--tone-online-bg);color:var(--tone-online-text)}.enviolux-chip.warning{border-color:var(--tone-degraded-border);background:var(--tone-degraded-bg);color:var(--tone-degraded-text)}.enviolux-chip.critical{border-color:var(--tone-critical-border);background:var(--tone-critical-bg);color:var(--tone-critical-text)}.enviolux-chip.neutral{color:var(--dashboard-widget-muted)}.enviolux-track{display:flex;height:8px;border-radius:999px;overflow:hidden;background:var(--dashboard-status-track)}.enviolux-track.single{background:var(--dashboard-widget-row-bg)}.enviolux-track span{height:100%}.enviolux-track span.healthy{background:#22c55e}.enviolux-track span.warning{background:#f59e0b}.enviolux-track span.critical{background:#ef4444}.enviolux-micro{font-size:11px;color:var(--dashboard-widget-muted)}.enviolux-list{display:grid;gap:6px;overflow:auto;min-height:0;align-content:start;scrollbar-width:thin;scrollbar-color:var(--dashboard-scrollbar-thumb) var(--dashboard-scrollbar-track)}.enviolux-row{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 10px;border-radius:10px;border:1px solid var(--dashboard-widget-row-border);background:var(--dashboard-widget-row-bg)}.enviolux-row.healthy{border-color:var(--tone-online-border);background:var(--tone-online-bg)}.enviolux-row.warning{border-color:var(--tone-degraded-border);background:var(--tone-degraded-bg)}.enviolux-row.critical{border-color:var(--tone-critical-border);background:var(--tone-critical-bg)}.enviolux-row-main{display:grid;gap:2px;min-width:0}.enviolux-row-main strong{font-size:12px;color:var(--dashboard-widget-title);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.enviolux-row-main .muted{font-size:10px;color:var(--dashboard-widget-muted)}.enviolux-row-meta{display:grid;gap:2px;justify-items:end;font-size:10px;color:var(--dashboard-widget-muted);flex-shrink:0}.widget-content-shell.widget-size-compact .widget-kpi-value,.widget-content-shell.widget-size-compact .aqi-value,.widget-content-shell.widget-size-compact .weather-temp{font-size:clamp(24px,2.4vw,31px)}.widget-content-shell.widget-size-compact .widget-timeframe-btn{height:26px;font-size:10px}.widget-content-shell.widget-size-large .widget-kpi-value{font-size:clamp(34px,3.1vw,44px)}.widget-content-shell.widget-design-modern .widget-data-link{color:var(--dashboard-data-link)}.size-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.panel-section{display:grid;gap:12px}.dashboards-tutorial{margin-top:12px;padding:14px 16px;border-radius:16px;background:var(--panel-soft);border:1px solid var(--border);box-shadow:var(--shadow)}.tutorial-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.tutorial-header button{border:none;background:transparent;color:var(--muted);cursor:pointer}.tutorial-body{display:grid;gap:8px;font-size:13px}.tutorial-body ol{margin:0;padding-left:18px;display:grid;gap:6px}.dashboard-tutorial-dialog{width:min(620px,calc(100vw - 36px))}.dashboard-tutorial-dialog .tutorial-body{max-height:min(60vh,430px);overflow:auto}.dashboard-viewer{display:grid;gap:16px;background:var(--dashboard-bg, var(--bg-gradient));padding:18px;border-radius:20px;border:1px solid var(--dashboard-viewer-border);position:relative;overflow:hidden}.dashboard-viewer-header{background:var(--dashboard-header-bg);border-radius:18px;padding:16px 18px;border:1px solid var(--dashboard-header-border);display:flex;justify-content:space-between;align-items:center;gap:16px;box-shadow:var(--shadow);background-size:cover;background-position:center}.dashboard-viewer-header-actions{display:inline-flex;align-items:center;gap:10px}.dashboard-refresh-btn{width:32px;height:32px;border-radius:999px;border:1px solid var(--dashboard-widget-border);background:var(--dashboard-refresh-bg);color:var(--dashboard-widget-muted);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:background .16s ease,color .16s ease,border-color .16s ease}.dashboard-refresh-btn:hover:not(:disabled){background:var(--dashboard-refresh-hover-bg);border-color:var(--dashboard-refresh-hover-border);color:var(--dashboard-widget-title)}.dashboard-refresh-btn:disabled{cursor:default;opacity:.56}.dashboard-refresh-btn svg{width:16px;height:16px;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.dashboard-refresh-btn.refreshing svg{animation:dashboard-refresh-spin .85s linear infinite}.dashboard-refresh-btn.refreshing svg circle{opacity:.3}@keyframes dashboard-refresh-spin{to{transform:rotate(360deg)}}.dashboard-brand{display:flex;gap:12px;align-items:center}.dashboard-logo{width:clamp(42px,6vw,60px);aspect-ratio:1 / 1;border-radius:14px;display:grid;place-items:center;font-weight:700;color:#fff;background:var(--dashboard-accent, var(--accent));overflow:hidden}.dashboard-logo.has-image{background:#ffffffe6;border:1px solid rgba(15,23,42,.08)}.dashboard-logo img{width:100%;height:100%;object-fit:contain}.dashboard-brand-title{font-family:Sora,sans-serif;font-weight:600;color:var(--dashboard-widget-title)}.dashboard-brand-subtitle-row{display:inline-flex;align-items:center;gap:8px}.dashboard-public-refresh{width:30px;height:30px}body.app-design-modern .dashboard-viewer{background:radial-gradient(circle at 8% 12%,rgba(24,168,186,.22),transparent 36%),radial-gradient(circle at 88% 10%,rgba(94,215,120,.16),transparent 40%),linear-gradient(146deg,#021826eb,#073149d1 54%,#04242ce6);border-color:#71b7d352;box-shadow:0 24px 58px #030b128c,inset 0 0 0 1px #79bcd814}body.app-design-modern .dashboard-viewer:before{content:"";position:absolute;top:-20%;right:-25%;bottom:-20%;left:-25%;pointer-events:none;background:radial-gradient(circle at 28% 35%,rgba(54,199,200,.2),transparent 34%),radial-gradient(circle at 74% 66%,rgba(120,227,110,.14),transparent 40%);opacity:.8;animation:dashboardModernShift 16s ease-in-out infinite alternate}body.app-design-modern .dashboard-viewer:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:linear-gradient(170deg,rgba(255,255,255,.04),transparent 38%)}body.app-design-modern .dashboard-viewer>*{position:relative;z-index:1}body.app-design-modern .dashboard-viewer-header{background:linear-gradient(156deg,#0b39529e,#082a3fc7 66%,#0938439e);border-color:#6eb8d357;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}body.app-design-modern .dashboard-grid{box-shadow:inset 0 0 0 1px #7ec2da29,0 12px 30px #020a1157}body.app-design-modern .widget-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}body.app-design-modern .weather-glyph,body.app-design-modern .forecast-glyph{box-shadow:inset 0 0 0 1px #9cd6e547}body.app-design-modern .aqi-bar-marker{border-color:#051a28e6;background:#d8f5ff}@keyframes dashboardModernShift{0%{transform:translateZ(0) scale(1)}to{transform:translate3d(-3%,2%,0) scale(1.07)}}.device-dashboard{display:grid;gap:16px;background:var(--dashboard-bg, transparent);padding:12px;border-radius:18px}.device-dashboard-header{display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px}.device-dashboard-header .title{font-family:Sora,sans-serif;font-size:20px;font-weight:600}.dashboard-tabs{display:flex;gap:8px;flex-wrap:wrap}.dashboard-tabs button{border:1px solid var(--border);background:var(--panel-soft);padding:6px 12px;border-radius:999px;cursor:pointer;font-size:12px;color:var(--text)}.dashboard-tabs button.active{background:var(--accent);color:#fff;border-color:var(--accent)}.overview-dashboard-tabs{gap:10px}.overview-dashboard-tabs button{padding:10px 18px;min-height:42px;font-size:14px;font-weight:600}.overview-dashboard-tabs-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.overview-dashboard-refresh{width:36px;height:36px;border-color:#64748b57;box-shadow:0 2px 10px #0f172a14}.device-dashboard-empty{display:grid;gap:12px}.device-dashboard-actions{display:flex;gap:8px;flex-wrap:wrap}.device-detail{display:grid;gap:16px}.device-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.tab-bar{display:flex;gap:8px}.tab-bar button{border:1px solid var(--input-border);background:var(--surface-elevated);padding:8px 12px;border-radius:999px;cursor:pointer;font-size:12px;color:var(--text)}.tab-bar button:hover:not(:disabled){background:var(--surface-elevated-hover)}.tab-bar button.active{background:var(--accent);color:#fff;border-color:var(--accent)}.device-detail .telemetry-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:12px;align-content:start}.device-detail .telemetry-tile{background:var(--surface-elevated);border:1px solid var(--surface-elevated-border);border-radius:14px;padding:11px 12px;display:grid;gap:7px;box-shadow:0 2px 8px #0f172a0a;min-height:110px}.device-detail .telemetry-tile-button{width:100%;text-align:left;cursor:pointer;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}.device-detail .telemetry-tile-button:hover{border-color:#9db1c5;box-shadow:0 6px 16px #0f172a14}.device-detail .telemetry-tile-button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.device-detail .telemetry-header{display:flex;justify-content:space-between;gap:8px;align-items:flex-start;font-size:12px}.device-detail .telemetry-key{font-weight:600;color:var(--text);overflow-wrap:anywhere;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.device-detail .telemetry-value{font-size:clamp(20px,1.35vw,28px);font-weight:600;line-height:1.1;margin-top:0;color:var(--text);word-break:break-word;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:4;overflow:hidden}.device-detail .telemetry-updated{font-size:11px;color:var(--muted);border-top:1px solid var(--surface-elevated-border);margin-top:2px;padding-top:6px}.device-detail .value-source{padding:2px 8px;border-radius:999px;font-size:10px;background:var(--chip-bg);color:var(--chip-text);text-transform:uppercase;letter-spacing:.04em;font-weight:600}.device-detail .value-source.shared{background:var(--tone-low-bg);color:var(--tone-low-text);border:1px solid var(--tone-low-border)}.device-overview{display:grid;grid-template-columns:minmax(340px,1fr) minmax(0,2fr);gap:16px;align-items:start}.overview-summary,.overview-values{display:grid;gap:10px;border:1px solid var(--surface-elevated-border);border-radius:14px;background:var(--surface-elevated);padding:12px}.overview-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px;align-content:start}.device-detail .overview-card{background:var(--panel);border:1px solid var(--surface-elevated-border);border-radius:11px;padding:10px 11px;display:grid;gap:6px}.device-detail .overview-value{font-weight:600;color:var(--text);line-height:1.35}.device-history-dialog{width:min(920px,96vw);gap:14px}.device-history-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.device-history-key{font-size:12px;color:var(--muted);overflow-wrap:anywhere}.device-history-toolbar{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.device-history-toolbar select{border-radius:10px;border:1px solid var(--input-border);padding:6px 10px;background:var(--input-bg);color:var(--text)}.device-history-chart{border:1px solid var(--input-border);border-radius:12px;padding:10px;background:var(--panel)}.device-history-list{display:grid;gap:8px}.device-history-row{display:grid;grid-template-columns:210px 1fr;gap:10px;align-items:start;padding:8px 10px;border-radius:8px;background:var(--surface-elevated);border:1px solid var(--surface-elevated-border)}.device-history-row span{color:var(--muted);font-size:12px}.device-history-row strong{overflow-wrap:anywhere}.mono{font-family:SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;font-size:12px}.attribute-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}@media (max-width: 900px){.device-overview,.device-history-row{grid-template-columns:1fr}}.attribute-row{display:flex;justify-content:space-between;padding:6px 8px;border-radius:8px;background:var(--surface-elevated);border:1px solid var(--surface-elevated-border);font-size:12px;color:var(--text)}.attribute-form{margin-top:16px;display:grid;gap:8px}.attribute-form-row{display:grid;grid-template-columns:140px 1fr 1fr auto;gap:8px}.panel-subtitle{font-weight:600;font-size:13px}.alarms-page{display:grid;gap:16px}.alarms-grid{display:grid;grid-template-columns:2fr 1fr;gap:16px}.alarm-header-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.alarm-severity-filter{display:flex;align-items:center;gap:8px}.alarm-severity-filter>span{font-size:12px;color:var(--muted)}.alarm-severity-filter>select{min-width:150px}.alarm-center-history.is-history{max-height:440px;overflow-y:auto;scrollbar-gutter:stable}.alarm-center-history.is-history .table-head{position:sticky;top:0;z-index:2}.alarm-form{display:grid;gap:10px}.alarm-selected-devices{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.alarm-device-chip{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--border);background:#f8fafc;padding:4px 8px;border-radius:999px;font-size:12px}.alarm-device-chip button{border:none;background:transparent;color:var(--muted);padding:0;line-height:1;cursor:pointer}.alarm-device-count{margin-top:6px}.alarm-template-section{display:grid;gap:8px}.alarm-template-header{display:flex;align-items:center;justify-content:space-between;gap:8px}.alarm-template-toggle{border:1px solid var(--border);background:#f8fafc;border-radius:8px;padding:4px 8px;font-size:12px;cursor:pointer}.alarm-template-grid{display:grid;gap:8px}.alarm-template-card{border:1px solid var(--border);background:#f8fafc;border-radius:10px;padding:10px;text-align:left;display:grid;gap:4px;cursor:pointer}.alarm-template-card strong{font-size:13px}.alarm-template-card span{color:var(--muted);font-size:12px}.alarm-template-card code{font-size:11px;color:#0f172a}.alarm-template-card:hover{border-color:var(--accent)}.field.split{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.table-actions{display:flex;gap:6px}.table-actions button{border:1px solid var(--input-border);background:var(--surface-elevated);color:var(--text);padding:4px 8px;border-radius:8px;font-size:11px;cursor:pointer}.button-row{display:flex;flex-wrap:wrap;gap:8px}.button-row button{border:1px solid var(--input-border);background:var(--surface-elevated);color:var(--text);padding:6px 10px;border-radius:10px;font-size:12px;cursor:pointer}.button-row button.primary{border:none;background:var(--accent);color:#fff}.table-actions .danger{border:none;background:var(--tone-critical-bg);color:var(--tone-critical-text)}.alarm-active-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px}.alarm-active-card{padding:12px;border-radius:12px;border:1px solid var(--border);background:var(--surface-elevated);display:grid;gap:4px}.alarm-active-card.severity-high,.alarm-active-card.severity-critical{border-color:var(--tone-critical-border);background:var(--tone-critical-bg);color:var(--tone-critical-text)}.alarm-rules .table-row.active{border-color:var(--accent)}.hotspot-select{border:1px solid var(--border);background:#f8fafc;padding:6px 10px;border-radius:8px;font-size:12px}.bounds-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.simulation-actions{display:flex;gap:8px;flex-wrap:wrap}.simulation-summary{display:grid;gap:8px;font-size:12px;color:var(--muted)}.simulation-sample{display:flex;flex-wrap:wrap;gap:6px}.simulation-chip{padding:4px 8px;border-radius:999px;background:#e2e8f0;font-size:11px}.ctrl-page{display:grid;gap:16px}.ctrl-loading-inline{display:inline-flex;align-items:center}.ctrl-hero{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;flex-wrap:wrap}.ctrl-hero-meta{display:flex;gap:8px;flex-wrap:wrap}.ctrl-hero-meta span{border:1px solid var(--input-border);border-radius:999px;background:var(--surface-elevated);font-size:12px;color:var(--text);padding:5px 10px}.ctrl-app-tabs,.ctrl-sub-tabs{flex-wrap:wrap}.ctrl-app-tabs button:disabled{opacity:.55}.ctrl-layout{display:grid;grid-template-columns:minmax(280px,360px) 1fr;gap:16px;align-items:start}.ctrl-side,.ctrl-main{display:grid;gap:12px}.ctrl-device-list{display:grid;gap:8px;max-height:420px;overflow-y:auto;scrollbar-gutter:stable}.ctrl-device-row{border:1px solid var(--surface-elevated-border);background:var(--surface-elevated);border-radius:10px;padding:8px 10px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:8px;align-items:center}.ctrl-device-row.selected{border-color:var(--accent);box-shadow:0 0 0 1px #0ea5a63d}.ctrl-device-main{display:grid;gap:2px;min-width:0}.ctrl-device-main strong{font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ctrl-device-main span{font-size:11px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ctrl-device-tags{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.ctrl-zone-pill{display:inline-block;padding:4px 9px;border-radius:999px;border:1px solid var(--input-border);background:var(--chip-bg);font-size:11px;color:var(--chip-text)}.ctrl-zone-manager,.ctrl-manual-controls{display:grid;gap:8px}.ctrl-status{border-radius:10px;padding:8px 10px;font-size:12px}.ctrl-status.ok{border:1px solid var(--tone-online-border);background:var(--tone-online-bg);color:var(--tone-online-text)}.ctrl-status.error{border:1px solid var(--tone-critical-border);background:var(--tone-critical-bg);color:var(--tone-critical-text)}.ctrl-zone-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px}.ctrl-map{position:relative;min-height:540px}.ctrl-map .map{height:520px}.ctrl-map-loading-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:4;border-radius:12px;background:var(--surface-overlay);-webkit-backdrop-filter:blur(1.5px);backdrop-filter:blur(1.5px);display:flex;align-items:center;justify-content:center;pointer-events:none}.ctrl-zone-catalog{display:grid;gap:8px}.ctrl-zone-row{border:1px solid var(--surface-elevated-border);border-left:5px solid var(--accent);border-radius:12px;background:var(--surface-elevated);padding:10px 12px;display:flex;justify-content:space-between;gap:12px;align-items:center;flex-wrap:wrap}.ctrl-form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px}.ctrl-manual-preview{display:grid;gap:8px}.ctrl-preview-card{border:1px solid var(--surface-elevated-border);border-radius:10px;background:var(--surface-elevated);padding:10px;display:grid;gap:8px}.ctrl-preview-head{display:flex;justify-content:space-between;gap:10px;align-items:center}.ctrl-preview-meta{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:6px;font-size:12px;color:var(--muted)}@media (max-width: 1200px){.dashboards-body,.dashboards-body.editing,.dashboards-body.editing.settings-collapsed,.autopilot-shell{grid-template-columns:1fr}.autopilot-sidebar,.autopilot-panel,.dashboards-sidebar,.dashboards-panel{order:2}.ctrl-layout{grid-template-columns:1fr}}@media (max-width: 980px){.dashboards-widget-library-head{grid-template-columns:1fr auto}.dashboards-widget-library-tools{grid-column:1 / -1;grid-template-columns:minmax(0,1fr);gap:8px;justify-content:stretch}.dashboards-widget-library-meta{justify-content:flex-start;flex-wrap:wrap;gap:8px}.dashboards-widget-library-move-hint{white-space:normal}.dashboards-widget-library-search{min-width:0}.widget-library-categories{gap:6px}.widget-library-row{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}.alarms-grid,.attribute-form-row,.autopilot-flow-meta,.autopilot-addon-banner{grid-template-columns:1fr}.device-picker-overlay{padding:10px}.device-picker-map{height:260px}.device-picker-map-footer{flex-direction:column;align-items:flex-start}.ctrl-map{min-height:360px}.ctrl-map .map{height:340px}}.upgrade-center-page{display:grid;gap:16px}.upgrade-center-hero{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}.upgrade-center-onboarding-hint{margin-top:10px;font-size:13px;color:var(--muted);max-width:780px}.upgrade-center-sections{display:inline-flex;flex-wrap:wrap;gap:6px;padding:6px;width:fit-content;max-width:100%;border:1px solid var(--surface-elevated-border);background:var(--surface-strong);border-radius:14px}.upgrade-center-sections button{border:1px solid var(--input-border);background:var(--surface-elevated);border-radius:999px;padding:11px 20px;min-height:44px;min-width:164px;font-size:16px;display:inline-flex;gap:8px;align-items:center;justify-content:center;font-weight:700;white-space:nowrap;cursor:pointer;color:var(--text);transition:border-color .2s ease,background-color .2s ease,color .2s ease}.upgrade-center-sections button span{border-radius:999px;background:var(--chip-bg);color:var(--chip-text);padding:1px 7px;font-size:12px}.upgrade-center-sections button.active{color:#fff;border-color:transparent}.upgrade-center-sections button.section-tab.store.active{background:linear-gradient(135deg,#0f766e,#14b8a6)}.upgrade-center-sections button.section-tab.inventory.active{background:linear-gradient(135deg,#334155,#1e293b)}.upgrade-center-sections button.active span{background:#fff3;color:#fff}.upgrade-center-toolbar{display:grid;gap:12px}.upgrade-center-store-top{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:22px;align-items:start}.upgrade-center-toolbar-label{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.07em;color:var(--muted)}.upgrade-center-toolbar input{border:1px solid var(--input-border);border-radius:10px;background:var(--input-bg);color:var(--text);padding:10px 12px;font-size:14px}.upgrade-center-toolbar input::placeholder{color:var(--input-placeholder)}.upgrade-center-availability-toggle{display:inline-flex;align-items:center;gap:8px;width:fit-content;font-size:13px;font-weight:600;color:var(--text)}.upgrade-center-availability-toggle input{width:16px;height:16px;accent-color:var(--accent)}.upgrade-center-categories{display:flex;flex-wrap:wrap;gap:8px}.upgrade-center-categories button{border:1px solid var(--input-border);background:var(--surface-elevated);color:var(--text);border-radius:999px;padding:7px 11px;font-size:12px;display:inline-flex;gap:8px;align-items:center;cursor:pointer;transition:border-color .2s ease,background .2s ease,transform .2s ease}.upgrade-center-categories button.priority{font-weight:700;border-color:var(--surface-elevated-border);background:var(--chip-bg)}.upgrade-center-categories button span{background:var(--chip-bg);color:var(--chip-text);border-radius:999px;padding:1px 7px}.upgrade-center-categories button.priority span{padding:2px 8px}.upgrade-center-categories button.active{border-color:#0f766e;background:#14b8a624;color:var(--accent-2);box-shadow:0 0 0 1px #0f766e40 inset}.upgrade-center-categories button.priority.active{background:#0f766e;border-color:#0f766e;color:#fff}.upgrade-center-categories button.active span{background:#0f172a1f}.upgrade-center-categories button.priority.active span{background:#ffffff38;color:#fff}.upgrade-center-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:0;align-items:start}.upgrade-catalog-stack{display:grid;gap:28px}.upgrade-category-block{display:grid;gap:20px}.upgrade-category-block.featured .upgrade-category-section{padding:20px}.upgrade-category-block.featured .upgrade-center-grid{grid-template-columns:repeat(auto-fill,minmax(360px,1fr));gap:20px}.upgrade-category-block.featured .upgrade-center-grid.upgrade-center-grid-carousel{grid-auto-columns:minmax(360px,420px)}.upgrade-category-section{display:grid;gap:16px;padding:18px}.upgrade-category-header h2{margin:0;font-size:20px;font-family:Sora,sans-serif}.upgrade-category-header p{margin:8px 0 0;color:var(--muted);font-size:14px;max-width:920px;line-height:1.45}.upgrade-center-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:18px}.upgrade-category-carousel{display:grid;grid-template-columns:40px minmax(0,1fr) 40px;gap:10px;align-items:stretch}.upgrade-category-nav{border:1px solid var(--input-border);border-radius:10px;background:var(--surface-elevated);color:var(--text);font-size:18px;font-weight:700;cursor:pointer;transition:border-color .18s ease,background-color .18s ease}.upgrade-category-nav:hover:not(:disabled){border-color:#0ea5a666;background:var(--surface-elevated-hover)}.upgrade-category-nav:disabled{opacity:.4;cursor:default}.upgrade-category-viewport{overflow-x:auto;overflow-y:hidden;padding:2px 2px 14px;scrollbar-width:thin;scroll-snap-type:x proximity}.upgrade-center-grid.upgrade-center-grid-carousel{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(320px,360px);gap:18px}.upgrade-center-grid.upgrade-center-grid-carousel .upgrade-card{scroll-snap-align:start;height:100%}.upgrade-card{padding:12px;display:grid;gap:12px;position:relative}.upgrade-card.featured{padding:14px;gap:14px}.upgrade-card.partner-integration-card{grid-template-rows:auto minmax(0,1fr)}.upgrade-card-cover{border:0;border-radius:12px;min-height:184px;padding:16px;color:#ecfeff;text-align:left;cursor:pointer;display:grid;align-content:space-between;gap:12px;overflow:hidden;position:relative;isolation:isolate;transition:transform .18s ease,box-shadow .2s ease}.upgrade-card-cover.partner-card{color:#0f172a;background:linear-gradient(145deg,#f8fafcfa,#e2e8f0f5);border:1px solid rgba(148,163,184,.26);box-shadow:inset 0 1px #ffffffc7,0 18px 34px #0f172a14}.upgrade-card-cover.partner-card:before{content:"";position:absolute;top:-14%;right:-14%;bottom:-14%;left:-14%;background:radial-gradient(circle at 14% 18%,var(--partner-accent-a, #38bdf8) 0%,transparent 34%),radial-gradient(circle at 86% 22%,var(--partner-accent-b, #22c55e) 0%,transparent 30%),radial-gradient(circle at 74% 88%,rgba(255,255,255,.96) 0%,transparent 26%);opacity:.28;z-index:0;pointer-events:none}.upgrade-card-cover:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(170deg,#0716261a,#07162657 65%,#07162680);z-index:1;pointer-events:none}.upgrade-card-cover.partner-logo:after{background:linear-gradient(170deg,#07162614,#0716263d 65%,#07162661)}.upgrade-card-cover.partner-card:after{background:linear-gradient(180deg,#ffffff47,#ffffff0a 44%,#0f172a24)}.upgrade-card.featured .upgrade-card-cover{min-height:204px;padding:18px}.upgrade-card-cover:hover{transform:translateY(-2px);box-shadow:0 12px 30px #0f172a2e}.upgrade-card.obscured{overflow:hidden}.upgrade-card.obscured:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:4;pointer-events:none;background:linear-gradient(125deg,#0206172e,#02061714 44%,#0206172e)}.upgrade-card-cover.obscured{cursor:default}.upgrade-card-cover.obscured:hover{transform:none;box-shadow:none}.upgrade-card.obscured .upgrade-card-cover,.upgrade-card.obscured .upgrade-card-body{filter:blur(4px);-webkit-user-select:none;user-select:none}.upgrade-card-cover img{width:100%;height:100%;object-fit:cover;border-radius:8px;position:absolute;top:0;right:0;bottom:0;left:0;z-index:0}.upgrade-card-cover.partner-logo .upgrade-card-partner-logo{position:absolute;inset:auto;left:50%;top:50%;transform:translate(-50%,-50%);width:min(78%,248px);max-height:46%;height:auto;object-fit:contain;object-position:center;border-radius:0;z-index:2;filter:drop-shadow(0 8px 22px rgba(7,22,38,.38));pointer-events:none}.upgrade-card-partner-hero{position:relative;z-index:2;display:grid;gap:14px;height:100%;align-content:start}.upgrade-card-partner-stage{min-height:112px;display:grid;place-items:center;padding:18px 20px;border-radius:24px;background:linear-gradient(180deg,#fffffff5,#f1f5f9ed);border:1px solid rgba(148,163,184,.32);box-shadow:0 20px 40px #0f172a24,inset 0 1px #ffffffd9}.upgrade-card-cover.partner-card .upgrade-card-partner-logo{position:relative;inset:auto;left:auto;top:auto;width:min(100%,220px);max-height:72px;height:auto;transform:none;padding:0;box-sizing:border-box;background:none;border:0;border-radius:0;box-shadow:none;filter:none;object-fit:contain;object-position:center;pointer-events:none}.upgrade-card-cover>span:not(.upgrade-card-status-badge){font-size:22px;font-weight:700;letter-spacing:.05em;z-index:3}.upgrade-card-cover .upgrade-card-company-label{display:inline-flex;align-items:center;max-width:min(92%,240px);padding:4px 9px;border-radius:999px;background:#07162657;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);font-size:13px;line-height:1.15;letter-spacing:.01em;text-transform:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.upgrade-card-cover.partner-card .upgrade-card-company-label{width:fit-content;max-width:100%;background:#ffffffe0;border:1px solid rgba(148,163,184,.28);box-shadow:0 10px 20px #0f172a14;font-weight:700}.upgrade-card-symbol-icon{display:inline-flex;align-items:center;justify-content:center}.upgrade-card-symbol-icon svg,.upgrade-gallery-symbol svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:2.15;stroke-linecap:round;stroke-linejoin:round}.upgrade-card-background-glyph,.upgrade-card-autopilot-plane{display:block;z-index:0;pointer-events:none}.upgrade-card-cover.partner-logo .upgrade-card-background-glyph,.upgrade-card-cover.partner-logo .upgrade-card-autopilot-plane{width:min(65%,140px);max-height:74%}.upgrade-card-background-glyph svg,.upgrade-card-autopilot-plane svg{width:100%;height:auto;aspect-ratio:1 / 1;fill:none;stroke:#f1f5f9eb;stroke-width:2.35;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 12px 28px rgba(8,47,73,.35))}.upgrade-card-cover.partner-card .upgrade-card-background-glyph svg,.upgrade-card-cover.partner-card .upgrade-card-autopilot-plane svg{stroke:#0f172a6b;filter:drop-shadow(0 10px 20px rgba(255,255,255,.45))}.upgrade-card-partner-stage .upgrade-card-background-glyph,.upgrade-card-partner-stage .upgrade-card-autopilot-plane{width:min(100%,104px);max-height:72px}.upgrade-card-background-glyph svg path,.upgrade-card-autopilot-plane svg path{fill:none}.upgrade-card-cover-copy{display:grid;gap:3px;position:relative;z-index:3}.upgrade-card-cover-copy strong{display:inline-flex;width:fit-content;padding:4px 8px;border-radius:8px;background:#07162657;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);font-size:16px;letter-spacing:.02em}.upgrade-card-cover.partner-card .upgrade-card-cover-copy strong,.upgrade-card-cover.partner-card .upgrade-card-cover-copy small{color:#0f172a;background:#fffc;border:1px solid rgba(148,163,184,.24);box-shadow:0 10px 24px #0f172a14}.upgrade-card-cover-copy small{display:inline-flex;width:fit-content;padding:3px 7px;border-radius:7px;background:#07162642;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);font-size:12px;opacity:.9}.upgrade-card-cover.partner-card .upgrade-card-cover-copy small{color:#0f172ab3}.upgrade-card-partner-fallback{color:#0f172a;font-size:20px;font-weight:700;line-height:1.1;text-align:center}.upgrade-card-status-badge{position:absolute;top:11px;right:11px;z-index:3;border:1px solid rgba(148,163,184,.38);border-radius:999px;background:var(--surface-elevated);color:var(--text);padding:2px 8px;font-size:15px;line-height:1.15;font-weight:600;letter-spacing:0}.upgrade-card-body{display:grid;gap:8px}.upgrade-card.partner-integration-card .upgrade-card-body{height:100%;grid-template-rows:auto minmax(3.8em,auto) minmax(5.5em,1fr) auto auto;align-content:start}.upgrade-card.featured .upgrade-card-body{gap:10px}.upgrade-card-body h3{margin:0;font-size:17px}.upgrade-card.partner-integration-card .upgrade-card-body h3{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.upgrade-card.featured .upgrade-card-body h3{font-size:20px}.upgrade-card-body p{margin:0;color:var(--muted);font-size:14px;line-height:1.35}.upgrade-card.partner-integration-card .upgrade-card-body p{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden}.upgrade-card.featured .upgrade-card-body p{font-size:15px;line-height:1.42}.upgrade-card-applications{display:flex;flex-wrap:nowrap;gap:5px;align-items:center;overflow:hidden;min-height:20px}.upgrade-card-applications span{display:inline-flex;align-items:center;border-radius:999px;border:1px solid var(--surface-elevated-border);background:var(--surface-elevated);color:var(--muted);font-size:10px;line-height:1;padding:3px 7px;white-space:nowrap}.upgrade-card-applications-obscured{min-width:58px;justify-content:center}.upgrade-card-meta{display:flex;justify-content:space-between;gap:10px;font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}.upgrade-card-meta .price{border-radius:999px;padding:3px 8px;border:1px solid transparent;text-transform:none;letter-spacing:normal}.upgrade-card-meta .price.free{border-color:#22c55e59;color:#166534;background:#16a34a14}.upgrade-card-meta .price.paid{border-color:#2563eb59;color:#1d4ed8;background:#3b82f614}.upgrade-card-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.upgrade-card.partner-integration-card .upgrade-card-actions{margin-top:auto}.upgrade-card-actions button,.upgrade-card-body .link-button{border:1px solid var(--input-border);border-radius:9px;background:var(--surface-elevated);color:var(--text);padding:10px 12px;cursor:pointer;font-size:13px;font-weight:600}.upgrade-card-actions .primary{background:var(--accent);border-color:var(--accent);color:#fff}.upgrade-card-actions button:disabled,.upgrade-card-body .link-button:disabled{opacity:.6;cursor:not-allowed}.upgrade-card-body .link-button{justify-self:flex-start;font-size:12px}.upgrade-cart{display:grid;gap:12px;position:static;height:fit-content}.upgrade-store-banner{padding:20px;border:1px solid rgba(148,163,184,.28);background:linear-gradient(125deg,#0e7490,#0369a1 42%,#0f766e);color:#ecfeff}.upgrade-store-banner.tone-featured{background:linear-gradient(125deg,#0f766e,#0891b2 45%,#155e75)}.upgrade-store-banner.tone-free{background:linear-gradient(125deg,#047857,#0f766e 46%,#065f46)}.upgrade-store-banner.tone-partner{background:linear-gradient(125deg,#0f766e,#2563eb 52%,#1e3a8a)}.upgrade-store-banner.tone-mobility{background:linear-gradient(125deg,#0f766e,#0ea5e9 46%,#0f172a)}.upgrade-store-banner.tone-climate{background:linear-gradient(125deg,#166534,#0f766e 48%,#0f172a)}.upgrade-store-banner.tone-energy{background:linear-gradient(125deg,#0f766e,#eab308 52%,#334155)}.upgrade-store-banner.tone-traffic{background:linear-gradient(125deg,#1d4ed8,#0ea5e9 44%,#334155)}.upgrade-store-banner.tone-safety{background:linear-gradient(125deg,#0f172a,#334155 42%,#dc2626)}.upgrade-store-banner.tone-geo{background:linear-gradient(125deg,#155e75,#0e7490 44%,#1e3a8a)}.upgrade-store-banner.tone-automation{background:linear-gradient(125deg,#0f172a,#0369a1 44%,#0f766e)}.upgrade-store-banner.tone-enterprise{background:linear-gradient(125deg,#334155,#1e293b 45%,#0f766e)}.upgrade-store-banner.tone-citizen{background:linear-gradient(125deg,#0369a1,#0f766e 46%,#1d4ed8)}.upgrade-store-banner-copy{max-width:960px}.upgrade-store-banner-kicker{display:inline-flex;align-items:center;margin-bottom:6px;padding:2px 9px;border-radius:999px;font-size:11px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;background:#fff3;color:#fff}.upgrade-store-banner-copy strong{display:block;font-size:20px;font-family:Sora,sans-serif}.upgrade-store-banner-copy p{margin:8px 0 0;font-size:14px;line-height:1.45;opacity:.95}.upgrade-cart-list{display:grid;gap:8px}.upgrade-cart-item{display:flex;justify-content:space-between;gap:8px;border:1px solid var(--border);border-radius:10px;padding:10px;background:var(--panel-soft)}.upgrade-cart-item strong{font-size:13px}.upgrade-cart-item button{border:0;background:transparent;font-size:20px;line-height:1;color:var(--muted);cursor:pointer}.upgrade-cart textarea{width:100%;min-height:92px;border:1px solid var(--input-border);border-radius:10px;background:var(--input-bg);color:var(--text);padding:8px 10px;resize:vertical;font:inherit}.upgrade-cart .button.primary{width:100%}.upgrade-cart-meta{display:flex;justify-content:space-between;font-size:12px;color:var(--muted)}.upgrade-inventory{display:grid;gap:10px}.upgrade-inventory-header{display:flex;justify-content:space-between;align-items:center;gap:10px}.upgrade-inventory-sort{display:inline-flex;align-items:center;gap:8px;font-size:12px;color:var(--muted)}.upgrade-inventory-sort select{border:1px solid var(--input-border);border-radius:9px;background:var(--input-bg);color:var(--text);padding:6px 10px;font-size:13px}.upgrade-inventory-list{display:grid;gap:10px}.upgrade-inventory-item{display:flex;justify-content:space-between;gap:12px;align-items:center;border:1px solid var(--border);border-radius:10px;padding:12px}.upgrade-inventory-main{display:flex;align-items:center;gap:10px;width:100%;min-width:0}.upgrade-inventory-icon{width:44px;height:44px;border-radius:10px;position:relative;overflow:hidden;flex:0 0 auto;display:grid;place-items:center;color:#ecfeff}.upgrade-inventory-icon.partner-card{color:#0f172a;background:linear-gradient(145deg,#f8fafcfa,#e2e8f0f0);border:1px solid rgba(148,163,184,.28);box-shadow:inset 0 1px #ffffffc7,0 10px 18px #0f172a14}.upgrade-inventory-icon.partner-card:before{content:"";position:absolute;top:-18%;right:-18%;bottom:-18%;left:-18%;background:radial-gradient(circle at 18% 16%,var(--partner-accent-a, #38bdf8) 0%,transparent 36%),radial-gradient(circle at 82% 22%,var(--partner-accent-b, #22c55e) 0%,transparent 34%);opacity:.24}.upgrade-inventory-icon img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover}.upgrade-inventory-icon.partner-logo img{width:calc(100% - 12px);height:calc(100% - 12px);object-fit:contain;top:6px;right:6px;bottom:6px;left:6px;position:absolute;z-index:1;padding:5px;box-sizing:border-box;background:linear-gradient(180deg,#fffffff5,#f1f5f9f0);border:1px solid rgba(148,163,184,.28);border-radius:8px;filter:none}.upgrade-inventory-icon span{position:relative;z-index:1;font-size:21px;font-weight:700;letter-spacing:.03em}.upgrade-inventory-content{flex:1;min-width:0}.upgrade-inventory-content strong{display:block}.upgrade-inventory-content .muted{margin-top:2px}.upgrade-inventory-item.focused{border-color:#0ea5a673;box-shadow:0 8px 24px #0f172a14}.upgrade-inventory-item.recently-added{border-color:#0ea5a685;animation:upgrade-inventory-pulse 1.8s ease-in-out infinite}@keyframes upgrade-inventory-pulse{0%{box-shadow:0 0 #0ea5a638,0 8px 22px #0f172a0f}50%{box-shadow:0 0 0 5px #0ea5a629,0 12px 26px #0f172a1f}to{box-shadow:0 0 #0ea5a60f,0 8px 22px #0f172a0f}}.upgrade-inventory-meta-row{display:flex;gap:6px;margin:8px 0;flex-wrap:wrap}.upgrade-chip.active{border-color:#16a34a59;color:#166534;background:#16a34a14}.upgrade-chip.inactive{border-color:#dc262659;color:#b91c1c;background:#dc262614}.upgrade-inventory-actions{display:grid;gap:8px;min-width:180px}.upgrade-inventory-actions button{border:1px solid var(--input-border);border-radius:9px;background:var(--surface-elevated);color:var(--text);padding:8px 10px;cursor:pointer}.upgrade-inventory-actions button.danger,.upgrade-settings-state button.danger{border-color:#dc262659;color:#b91c1c;background:#dc262614}.upgrade-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a9e;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:grid;place-items:center;padding:20px;z-index:140;overscroll-behavior:contain}.upgrade-modal,.upgrade-settings-modal{width:min(1060px,96vw);max-height:min(90vh,820px);overflow:auto;scrollbar-width:thin;scrollbar-color:var(--dashboard-scrollbar-thumb) var(--dashboard-scrollbar-track);overscroll-behavior:contain;padding:20px;display:grid;gap:16px}.upgrade-settings-modal{width:min(560px,94vw)}.upgrade-activation-modal{width:min(620px,94vw);max-height:min(86vh,740px);overflow:auto;scrollbar-width:thin;scrollbar-color:var(--dashboard-scrollbar-thumb) var(--dashboard-scrollbar-track);overscroll-behavior:contain;padding:18px;display:grid;gap:14px}.upgrade-delete-modal{width:min(560px,94vw);max-height:min(86vh,620px);overflow:auto;scrollbar-width:thin;scrollbar-color:var(--dashboard-scrollbar-thumb) var(--dashboard-scrollbar-track);overscroll-behavior:contain;padding:20px;display:grid;gap:14px}.upgrade-modal::-webkit-scrollbar,.upgrade-activation-modal::-webkit-scrollbar,.upgrade-settings-modal::-webkit-scrollbar,.upgrade-delete-modal::-webkit-scrollbar,.upgrade-modal-long-description::-webkit-scrollbar{width:10px;height:10px}.upgrade-modal::-webkit-scrollbar-track,.upgrade-activation-modal::-webkit-scrollbar-track,.upgrade-settings-modal::-webkit-scrollbar-track,.upgrade-delete-modal::-webkit-scrollbar-track,.upgrade-modal-long-description::-webkit-scrollbar-track{background:var(--dashboard-scrollbar-track)}.upgrade-modal::-webkit-scrollbar-thumb,.upgrade-activation-modal::-webkit-scrollbar-thumb,.upgrade-settings-modal::-webkit-scrollbar-thumb,.upgrade-delete-modal::-webkit-scrollbar-thumb,.upgrade-modal-long-description::-webkit-scrollbar-thumb{background:var(--dashboard-scrollbar-thumb);border-radius:999px;border:2px solid transparent;background-clip:padding-box}.upgrade-modal::-webkit-scrollbar-thumb:hover,.upgrade-activation-modal::-webkit-scrollbar-thumb:hover,.upgrade-settings-modal::-webkit-scrollbar-thumb:hover,.upgrade-delete-modal::-webkit-scrollbar-thumb:hover,.upgrade-modal-long-description::-webkit-scrollbar-thumb:hover{background:var(--dashboard-scrollbar-thumb-hover)}.upgrade-activation-copy{display:grid;gap:8px}.upgrade-activation-copy p{margin:0;line-height:1.5}.upgrade-activation-agreements{display:grid;gap:8px;border-top:1px solid var(--border);border-bottom:1px solid var(--border);padding:10px 0}.upgrade-modal-link{color:var(--accent);font-weight:600}.upgrade-modal-header{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;border-bottom:1px solid var(--border);padding-bottom:14px}.upgrade-modal-header>div{display:grid;gap:5px}.upgrade-modal-header button{border:1px solid var(--input-border);border-radius:10px;background:var(--surface-elevated);color:var(--text);padding:7px 12px;font-size:13px;font-weight:600;cursor:pointer}.upgrade-modal-title{font-size:30px;line-height:1.1;font-weight:700;color:var(--text)}.upgrade-modal-subtitle{color:var(--muted);max-width:76ch;line-height:1.45}.upgrade-dev-tag{justify-self:flex-start;font-size:11px;letter-spacing:.04em;text-transform:uppercase;font-weight:600;color:var(--tone-medium-text);border:1px solid var(--tone-medium-border);background:var(--tone-medium-bg);border-radius:999px;padding:4px 9px}.upgrade-owned-banner{border:1px solid rgba(14,165,166,.35);background:#0ea5a614;border-radius:10px;padding:9px 11px;display:flex;justify-content:space-between;gap:10px;align-items:center}.upgrade-owned-banner button{border:1px solid rgba(15,23,42,.14);border-radius:8px;background:var(--surface-elevated);color:var(--text);padding:6px 10px;cursor:pointer}.upgrade-gallery{display:block}.upgrade-gallery-nav{border:1px solid rgba(241,245,249,.65);border-radius:10px;background:#0f172a59;width:38px;height:38px;font-size:22px;font-weight:500;color:#e2e8f0;line-height:1;cursor:pointer;transition:border-color .18s ease,background-color .18s ease,color .18s ease;position:absolute;top:50%;transform:translateY(-50%);z-index:2;display:inline-flex;align-items:center;justify-content:center}.upgrade-gallery-nav:hover:not(:disabled){border-color:#f1f5f9f2;background:#0f172a8c;color:#f8fafc}.upgrade-gallery-nav.inside.prev{left:12px}.upgrade-gallery-nav.inside.next{right:12px}.upgrade-gallery-nav:disabled{opacity:.38;cursor:default}.upgrade-gallery-viewport{border:1px solid var(--border);border-radius:12px;overflow:hidden;position:relative}.upgrade-gallery-track{display:flex;width:100%;transition:transform .28s ease}.upgrade-gallery-slide{position:relative;width:100%;flex:0 0 100%;min-height:220px;padding:20px 62px;display:grid;align-content:flex-start;gap:10px;background:var(--surface-elevated);color:var(--text)}.upgrade-gallery-slide.cover{overflow:hidden;color:#e2e8f0}.upgrade-gallery-slide.cover:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(120deg,#0f172a80,#0f172a1f)}.upgrade-gallery-slide>*{position:relative;z-index:1}.upgrade-gallery-symbol{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:12px;background:#ffffff2e;border:1px solid rgba(255,255,255,.24);font-size:22px;font-weight:700;color:#f8fafc}.upgrade-gallery-slide h4{margin:0;font-size:24px;line-height:1.15}.upgrade-gallery-slide p{margin:0;white-space:pre-line;color:var(--muted);font-size:17px;line-height:1.5;max-width:78ch}.upgrade-gallery-slide.cover p{color:#f1f5f9eb}.upgrade-gallery-indicators{display:flex;justify-content:center;align-items:center;gap:8px}.upgrade-gallery-indicator{width:8px;height:8px;border-radius:999px;border:none;padding:0;background:var(--input-border);cursor:pointer;transition:width .18s ease,background-color .18s ease}.upgrade-gallery-indicator.active{width:28px;background:var(--accent)}.upgrade-modal-grid{display:grid;gap:14px;grid-template-columns:repeat(2,minmax(0,1fr))}.upgrade-modal-stat{border:1px solid var(--border);border-radius:12px;background:var(--surface-elevated);padding:12px 14px;display:grid;gap:6px}.upgrade-modal-label{color:var(--muted);font-size:12px;letter-spacing:.03em;text-transform:uppercase;font-weight:600}.upgrade-modal-value{color:var(--text);font-size:17px;line-height:1.35}.upgrade-modal-grid ul{margin:4px 0 0;padding-left:20px;display:grid;gap:5px}.upgrade-chip-row{display:flex;flex-wrap:wrap;gap:6px}.upgrade-chip{border:1px solid var(--border);border-radius:999px;padding:3px 9px;font-size:12px;color:var(--muted);background:var(--surface-elevated)}.upgrade-modal-long-description{grid-column:1 / -1;border:1px solid var(--border);border-radius:12px;background:var(--surface-elevated);padding:14px;color:var(--text);line-height:1.62;scrollbar-width:thin;scrollbar-color:var(--dashboard-scrollbar-thumb) var(--dashboard-scrollbar-track);overscroll-behavior:contain}.upgrade-modal-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;border-top:1px solid var(--border);padding-top:12px}.upgrade-modal .upgrade-modal-actions{position:sticky;bottom:0;z-index:3;margin-top:10px;padding:14px;min-height:72px;border:1px solid var(--border);border-radius:12px;background:var(--panel);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);box-shadow:0 -10px 22px #0f172a14}.upgrade-settings-modal .upgrade-modal-actions{min-height:0;padding:12px 0 0;border:0;border-top:1px solid var(--border);border-radius:0;background:transparent;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}.upgrade-delete-warning{border:1px solid var(--tone-critical-border);border-radius:10px;background:var(--tone-critical-bg);color:var(--tone-critical-text);padding:11px 12px;line-height:1.45}.upgrade-delete-modal .upgrade-modal-actions{margin-top:0}.upgrade-settings-grid{display:grid;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr))}.upgrade-settings-grid.readonly{opacity:.72}.upgrade-settings-readonly-hint{border:1px solid rgba(100,116,139,.35);border-radius:10px;padding:9px 11px;background:#94a3b81f;color:#334155;font-size:13px}.upgrade-settings-section{border:1px solid var(--border);border-radius:10px;padding:10px;display:grid;gap:9px}.upgrade-settings-section h4{margin:0;font-size:13px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}.upgrade-settings-section input{border:1px solid var(--input-border);border-radius:8px;background:var(--input-bg);color:var(--text);padding:8px 10px;font:inherit}.upgrade-settings-section input:disabled{background:#e5e7eb;color:#4b5563}.upgrade-settings-state{display:flex;justify-content:space-between;align-items:center;gap:10px}.upgrade-settings-state button{border:1px solid var(--input-border);border-radius:9px;background:var(--surface-elevated);color:var(--text);padding:8px 10px;cursor:pointer}@media (max-width: 1280px){.upgrade-center-store-top{grid-template-columns:1fr}}body.app-design-modern .upgrade-center-sections{background:linear-gradient(160deg,#07293ce6,#08324ae6);border-color:#78bcd557}body.app-design-modern .upgrade-center-sections button{background:#0a3a54d1;border-color:#7bbed65c;color:#dbeeff}body.app-design-modern .upgrade-center-sections button span{background:#7abed52e;color:#d9ecfa}body.app-design-modern .upgrade-center-categories button.active{color:#d8fff2}body.app-design-modern .upgrade-card-meta .price.free{border-color:#4ade8094;color:#c8ffdf;background:#10b98133}body.app-design-modern .upgrade-card-meta .price.paid{border-color:#93c5fd94;color:#dbeafe;background:#3b82f633}body.app-design-modern .upgrade-chip.active{border-color:#4ade8094;color:#c8ffdf;background:#10b98133}body.app-design-modern .upgrade-chip.inactive{border-color:#f8717194;color:#ffdcdc;background:#ef444433}body.app-design-modern .upgrade-settings-readonly-hint{border-color:#79bdd45c;background:#092d42b8;color:#d6e9f7}body.app-design-modern .upgrade-gallery-slide.cover:before{background:linear-gradient(130deg,#040d1499,#08172333)}body.app-design-modern .upgrade-modal-label{color:#cee4f3}body.app-design-modern .upgrade-activation-modal{background:linear-gradient(155deg,#062436fa,#083148fa);border:1px solid rgba(118,186,211,.38)}body.app-design-modern .upgrade-activation-agreements{border-top-color:#75b8d247;border-bottom-color:#75b8d247}@media (max-width: 980px){.app-shell{grid-template-columns:1fr;min-height:100dvh}.app-shell.sidebar-collapsed,.app-shell.sidebar-hover-mode{grid-template-columns:1fr}.sidebar{position:fixed;top:auto;left:0;right:0;bottom:0;height:auto;z-index:40;padding:8px 12px calc(8px + env(safe-area-inset-bottom));gap:8px;flex-direction:row;align-items:center;border-top:1px solid rgba(148,163,184,.3);background:#0b1f2af7;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);overflow:visible}.sidebar-header,.sidebar-toggle{display:none}.sidebar.collapsed .nav-label{display:block}.nav{width:100%;flex-direction:row;gap:6px;overflow-x:auto;justify-content:flex-start}.nav-primary{width:100%;flex:1}.sidebar-pinned-dashboards{display:none}.nav-utility{width:auto;flex:0 0 auto;margin-top:0;padding-top:0;padding-left:8px;border-top:0;border-left:1px solid rgba(148,163,184,.25)}.nav-utility a{min-width:72px}.sidebar-edit-trigger{display:none}.nav a{min-width:74px;padding:8px 10px;border-radius:12px;flex-direction:column;justify-content:center;gap:4px;font-size:11px}.nav-label{font-size:11px;line-height:1.2;text-align:center;overflow:hidden;text-overflow:ellipsis;max-width:100%}.nav-addon-pill{display:none}.nav-icon{width:18px;height:18px}.nav-icon svg{width:18px;height:18px;stroke-width:2}.main{padding-bottom:calc(86px + env(safe-area-inset-bottom))}.panel-row{grid-template-columns:1fr}.topbar{flex-direction:column;align-items:stretch;gap:12px;padding:12px 16px}.sidebar-editor-panel{width:100vw;border-right:0;padding:16px}.sidebar-editor-grid{grid-template-columns:1fr}.sidebar-editor-item{flex-direction:column;align-items:stretch}.sidebar-editor-item-actions{flex-wrap:wrap;justify-content:flex-end}.sidebar-editor-footer{justify-content:stretch}.sidebar-editor-footer .button{flex:1}.content{padding:16px}.search{width:100%}.topbar-search-group{flex:1 1 auto;width:100%;max-width:none}.search-box{max-width:none}.topbar-actions{width:100%;justify-content:space-between;align-items:center;flex-wrap:wrap}.topbar-context-pills{flex-wrap:wrap}.topbar-tools{margin-left:auto}.design-toggle.compact .design-switch{--switch-width: 50px;--switch-height: 30px;--switch-padding: 3px}.notifications-panel{left:0;right:0;width:auto}.overview-dashboard-tabs-row{align-items:stretch}.overview-dashboard-tabs{flex-wrap:nowrap;overflow-x:auto;width:100%;padding-bottom:2px}.overview-dashboard-tabs button{flex:0 0 auto}.dashboard-grid.compact-readonly{min-height:0;gap:10px;padding:10px}.dashboard-confirm-overlay{padding:14px;align-items:center}.dashboard-confirm-dialog{width:min(640px,100%);max-height:min(92dvh,760px);overflow:auto}.dashboard-confirm-actions{flex-wrap:wrap;justify-content:stretch}.dashboard-confirm-actions button{flex:1 1 calc(50% - 4px);min-height:44px;text-align:center}.support-dialog{width:min(640px,100%)}.admin-body{grid-template-columns:1fr}.admin-nav{position:static;display:flex;flex-wrap:wrap}.admin-upgrades-header,.admin-upgrades-row,.admin-upgrade-users-header,.admin-upgrade-users-row,.upgrade-center-layout,.upgrade-center-store-top{grid-template-columns:1fr}.upgrade-center-toolbar input{font-size:16px}.upgrade-center-categories{flex-wrap:nowrap;overflow-x:auto;padding-bottom:2px;scrollbar-width:thin}.upgrade-center-categories button{flex:0 0 auto}.upgrade-center-grid{grid-template-columns:1fr}.upgrade-category-carousel{grid-template-columns:34px minmax(0,1fr) 34px;gap:8px}.upgrade-center-grid.upgrade-center-grid-carousel{grid-auto-columns:minmax(260px,82vw);gap:12px}.upgrade-category-block.featured .upgrade-center-grid.upgrade-center-grid-carousel{grid-auto-columns:minmax(280px,86vw)}.upgrade-card-actions button,.upgrade-card-body .link-button{min-height:42px}.upgrade-modal-backdrop{padding:12px}.upgrade-modal-grid{grid-template-columns:1fr}.upgrade-modal,.upgrade-activation-modal,.upgrade-settings-modal{width:min(100%,96vw);max-height:92vh;padding:14px;gap:12px}.upgrade-modal-header{gap:10px;padding-bottom:10px}.upgrade-modal-title{font-size:24px}.upgrade-gallery-nav{width:34px;height:34px;font-size:20px}.upgrade-gallery-nav.inside.prev{left:8px}.upgrade-gallery-nav.inside.next{right:8px}.upgrade-gallery-slide{min-height:180px;padding:14px 52px}.upgrade-gallery-slide h4{font-size:20px}.upgrade-gallery-slide p{font-size:15px;overflow-wrap:anywhere}.upgrade-modal-actions{flex-wrap:wrap}.upgrade-modal .upgrade-modal-actions{min-height:64px;padding:12px}.upgrade-modal-actions .button{flex:1 1 calc(50% - 5px);justify-content:center;min-height:44px}.upgrade-settings-grid{grid-template-columns:1fr}.upgrade-inventory-item,.upgrade-inventory-header{flex-direction:column;align-items:flex-start}.upgrade-inventory-sort{width:100%;justify-content:space-between}.upgrade-inventory-actions{width:100%;min-width:0;grid-template-columns:1fr}.upgrade-center-sections{width:100%;justify-content:flex-start;flex-wrap:wrap}.upgrade-center-hero{flex-direction:column;align-items:flex-start}}@media (max-width: 760px){.content{padding:12px}.topbar{padding:10px 12px;gap:10px}.topbar-actions{gap:8px}.design-toggle.compact .design-switch{--switch-width: 50px;--switch-height: 30px;--switch-padding: 3px}.lang-menu-trigger{width:auto;min-width:56px;height:34px;padding:0 8px}.pill{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-trigger{width:100%;justify-content:space-between}.user-identity-box{min-width:0;max-width:min(62vw,260px)}.app-footer{padding:8px 12px calc(10px + env(safe-area-inset-bottom))}.overview-dashboard-tabs-row{gap:8px}.overview-dashboard-tabs button{padding:9px 14px;min-height:40px}.dashboard-grid.compact-readonly{gap:8px;padding:8px;border-radius:14px}.upgrade-center-sections{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.upgrade-center-sections button{width:100%;justify-content:space-between;min-width:0}.upgrade-category-carousel{grid-template-columns:minmax(0,1fr)}.upgrade-category-nav{display:none}.upgrade-center-grid.upgrade-center-grid-carousel,.upgrade-category-block.featured .upgrade-center-grid.upgrade-center-grid-carousel{grid-auto-columns:100%}.upgrade-category-viewport{padding:0 0 12px}.upgrade-card-actions{grid-template-columns:1fr}.upgrade-modal-backdrop{padding:0;align-items:flex-end}.upgrade-modal,.upgrade-activation-modal,.upgrade-settings-modal,.upgrade-delete-modal{width:100%;max-height:92dvh;border-bottom-left-radius:0;border-bottom-right-radius:0;padding:14px 12px calc(14px + env(safe-area-inset-bottom))}.upgrade-modal-header{position:sticky;top:0;z-index:2;background:var(--panel)}.upgrade-gallery-slide{min-height:164px;padding:12px 14px}.upgrade-gallery-nav.inside{display:none}.upgrade-gallery-slide h4{font-size:19px}.upgrade-gallery-slide p{font-size:14px;line-height:1.4}.upgrade-modal-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.upgrade-modal-actions .button{width:100%;flex:initial}}@media (max-width: 560px){.nav{gap:4px}.nav a{min-width:66px;padding:7px 6px}.nav-label{font-size:10px}.dashboard-confirm-actions button{flex:1 1 100%}.upgrade-center-sections,.upgrade-modal-actions{grid-template-columns:1fr}.upgrade-modal-title{font-size:21px}.upgrade-card-body h3,.upgrade-card.featured .upgrade-card-body h3{font-size:18px}}@media (max-width: 980px){.upgrade-category-carousel{grid-template-columns:minmax(0,1fr);gap:0}.upgrade-category-nav{display:none}.upgrade-category-viewport{overflow:visible;padding:0}.upgrade-center-grid.upgrade-center-grid-carousel,.upgrade-category-block.featured .upgrade-center-grid.upgrade-center-grid-carousel{grid-auto-flow:row;grid-auto-columns:auto;grid-template-columns:minmax(0,1fr);gap:12px}.upgrade-center-grid.upgrade-center-grid-carousel .upgrade-card,.upgrade-category-block.featured .upgrade-center-grid.upgrade-center-grid-carousel .upgrade-card{min-width:0;width:100%}.upgrade-category-block.featured .upgrade-center-grid{grid-template-columns:minmax(0,1fr);gap:14px}.upgrade-card{gap:10px}.upgrade-card-cover{min-height:170px;padding:14px}.upgrade-card.featured .upgrade-card-cover{min-height:180px;padding:14px}.upgrade-card-cover-copy strong,.upgrade-card-cover-copy small{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.upgrade-card-body h3,.upgrade-card.featured .upgrade-card-body h3{font-size:18px;line-height:1.18;overflow-wrap:anywhere}.upgrade-card-body p,.upgrade-card.featured .upgrade-card-body p{font-size:14px;line-height:1.42;overflow-wrap:anywhere}.upgrade-card-applications{flex-wrap:wrap;overflow:visible;min-height:0}.upgrade-card-applications span{max-width:100%}.upgrade-card-actions{grid-template-columns:minmax(0,1fr)}.upgrade-card-actions button,.upgrade-card-body .link-button{min-height:44px;width:100%;justify-content:center}.app-shell.mobile-shell{grid-template-columns:1fr;min-height:100dvh}.app-shell.mobile-shell .sidebar{position:fixed;inset:0 0 0 auto;width:min(86vw,360px);height:100dvh;padding:calc(16px + env(safe-area-inset-top)) 12px calc(16px + env(safe-area-inset-bottom));flex-direction:column;align-items:stretch;gap:14px;border-top:0;border-left:1px solid rgba(148,163,184,.3);background:#0b1f2afb;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);overflow-y:auto;overflow-x:hidden;transform:translate3d(104%,0,0);visibility:hidden;pointer-events:none;transition:transform .24s ease;z-index:80}body.app-design-modern .app-shell.mobile-shell .sidebar{border-left-color:#6eb1d057;background:linear-gradient(180deg,#051d2cfa,#041724fc),radial-gradient(circle at 18% 10%,rgba(55,194,183,.24),transparent 45%)}.app-shell.mobile-shell.mobile-sidebar-open .sidebar{transform:translateZ(0);visibility:visible;pointer-events:auto}.app-shell.mobile-shell .sidebar-header{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.app-shell.mobile-shell .sidebar-mode-controls{width:auto;display:flex;flex-direction:row;align-items:center;align-self:auto;padding:0;border:0;background:transparent;box-shadow:none}.app-shell.mobile-shell .sidebar-toggle{display:inline-flex}.app-shell.mobile-shell .sidebar-toggle-collapse,.app-shell.mobile-shell .sidebar-toggle-mode{display:none}.app-shell.mobile-shell .nav{width:100%;flex-direction:column;gap:6px;overflow:visible}.app-shell.mobile-shell .nav-primary{width:100%;flex:1 1 auto}.app-shell.mobile-shell .nav-utility{width:100%;margin-top:auto;padding-top:10px;padding-left:0;border-top:1px solid rgba(148,163,184,.25);border-left:0}.app-shell.mobile-shell .nav a,.app-shell.mobile-shell .nav-locked-button{min-width:0;flex-direction:row;justify-content:flex-start;gap:10px;padding:10px 12px;font-size:14px}.app-shell.mobile-shell .nav-label{font-size:13px;text-align:left;line-height:1.3}.app-shell.mobile-shell .nav-label-wrap{justify-content:flex-start}.app-shell.mobile-shell .sidebar-edit-trigger{display:flex;margin-bottom:0}.app-shell.mobile-shell .sidebar-pinned-dashboards,.app-shell.mobile-shell .sidebar-upgrade-sections{display:grid;margin-left:30px;padding-left:0;padding-right:0}.app-shell.mobile-shell .main{min-height:100dvh;padding-bottom:0}.topbar{position:sticky;top:0;z-index:50;padding-top:calc(10px + env(safe-area-inset-top))}.mobile-nav-trigger{display:inline-flex}.search{gap:8px;align-items:center}.topbar-search-group{flex:1 1 auto;width:100%;max-width:none}.topbar-mobile-identity{display:inline-flex;align-items:center;max-width:min(56vw,260px)}.search-box input{min-height:42px;font-size:15px}.topbar-actions{width:100%;gap:10px;justify-content:space-between;flex-wrap:nowrap}.topbar-context-pills{min-width:0;overflow:hidden}.topbar-tools{margin-left:auto;gap:8px;padding-left:8px}.topbar-secondary-actions{margin-left:0;gap:8px}.content{padding:14px}.app-footer{padding:8px 14px calc(10px + env(safe-area-inset-bottom))}.panel-map{min-height:360px}.map{height:320px}.dashboards-widget-library-row,.dashboards-sidebar,.dashboards-panel{padding:12px}.dashboards-canvas{padding:12px;min-height:380px}.dashboard-viewer-controls{position:static;margin:0 0 10px;width:100%;justify-content:flex-end;z-index:auto}.dashboard-grid{border-radius:14px;padding:10px;gap:10px}.widget-card{border-radius:13px;padding:12px;gap:10px}.widget-header{font-size:13px}.table{overflow-x:auto;padding-bottom:2px;scrollbar-width:thin}.table-row{min-width:720px}}@media (max-width: 760px){.upgrade-category-section{padding:14px;gap:12px}.upgrade-category-header h2{font-size:20px;line-height:1.2}.upgrade-category-header p{font-size:13px;margin-top:6px}.upgrade-store-banner{padding:14px}.upgrade-store-banner-copy strong{font-size:18px;line-height:1.2;overflow-wrap:anywhere}.upgrade-store-banner-copy p{font-size:13px;line-height:1.4;overflow-wrap:anywhere}.app-shell.mobile-shell .sidebar{width:min(92vw,340px)}.topbar-actions{justify-content:flex-end;flex-wrap:wrap;row-gap:8px}.topbar-mobile-identity{max-width:min(58vw,220px);font-size:13px}.topbar-context-pills{display:none}.topbar-tools{margin-left:auto;padding-left:0;border-left:0}.topbar-secondary-actions{display:none}.search{align-items:stretch}.search-results{max-height:min(58dvh,420px)}.notifications-panel{top:44px;left:0;right:0;width:auto;max-height:min(70dvh,500px)}.user-identity-box{display:none}.user-trigger{width:auto}.search-box{min-width:0}.dashboard-viewer-controls{margin-bottom:8px}.dashboard-refresh-control,.dashboard-fullscreen-btn{width:34px;height:34px}.dashboard-grid{padding:8px;gap:8px}.widget-card{padding:10px;gap:8px}.widget-title-text{white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.panel-map{min-height:320px}.map{height:270px}.table{overflow:visible}.table-row{min-width:0;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:10px}.table-head{display:none}.table-row>*{min-width:0;overflow-wrap:anywhere}.table-actions{flex-wrap:wrap}}@media (max-width: 560px){.upgrade-category-section{padding:12px}.upgrade-card{padding:10px}.upgrade-card-cover{min-height:156px;padding:12px}.upgrade-card.featured .upgrade-card-cover{min-height:164px;padding:12px}.upgrade-card-cover-copy strong{font-size:14px}.upgrade-card-cover-copy small{font-size:11px}.upgrade-card-body h3,.upgrade-card.featured .upgrade-card-body h3{font-size:17px}.upgrade-card-body p,.upgrade-card.featured .upgrade-card-body p{font-size:13px;line-height:1.36}.upgrade-card-applications span{font-size:11px}.app-shell.mobile-shell .sidebar{width:min(94vw,320px)}.search{gap:6px}.mobile-nav-trigger{width:34px;height:34px;border-radius:10px}.search-box input{min-height:40px;font-size:14px}.widget-header{font-size:12px}.table-row{grid-template-columns:1fr}}.gateway-page{display:flex;flex-direction:column;gap:18px;width:100%;max-width:1760px;margin:0 auto;padding-inline:clamp(12px,1.8vw,28px);box-sizing:border-box}.gateway-hero{display:flex;flex-direction:column;gap:10px}.gateway-workbench-hero{background:radial-gradient(circle at top right,rgba(45,212,191,.2),transparent 30%),radial-gradient(circle at left center,rgba(56,189,248,.12),transparent 28%),linear-gradient(145deg,#07121c47,#05152214 55%);border-radius:22px;border:1px solid rgba(45,212,191,.16);box-shadow:0 18px 50px #02080e2e}.gateway-hero-title-row{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.gateway-hero-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end;align-items:stretch}.gateway-hero-meta{font-size:.92rem}.gateway-user-card{min-width:220px;padding:10px 12px;border-radius:14px;border:1px solid rgba(45,212,191,.22);background:linear-gradient(145deg,#091f2de0,#071622a3);box-shadow:inset 0 1px #ffffff08}.gateway-user-eyebrow{font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.gateway-user-name{margin-top:4px;font-size:.98rem;font-weight:700;color:var(--text)}.gateway-user-subline{margin-top:2px;font-size:.82rem;color:var(--muted);word-break:break-word}.gateway-chip-row{display:flex;flex-wrap:wrap;gap:8px}.gateway-chip{border:1px solid var(--panel-border);background:var(--panel-soft);color:var(--muted);padding:6px 10px;border-radius:999px;font-size:.8rem}.gateway-status-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.gateway-stat{border:1px solid var(--panel-border);border-radius:10px;padding:10px;background:var(--panel-soft)}.gateway-stat-label{color:var(--muted);font-size:.78rem}.gateway-stat-value{color:var(--text);font-size:1.12rem;font-weight:700;margin-top:4px}.gateway-tab-row{display:flex;flex-wrap:wrap;gap:8px}.gateway-banner{border:1px solid rgba(14,165,166,.32);background:linear-gradient(135deg,#0ea5a629,#0ea5a614),#0ea5a61f;color:var(--text);border-radius:14px;padding:12px 14px}.gateway-quickstart-cta{display:flex;flex-direction:column;align-items:flex-start;gap:10px;width:100%;border:1px solid rgba(45,212,191,.42);border-radius:24px;padding:20px 22px;color:var(--text);text-align:left;cursor:pointer;background:radial-gradient(circle at top right,rgba(45,212,191,.24),transparent 30%),radial-gradient(circle at bottom left,rgba(14,165,166,.16),transparent 35%),linear-gradient(135deg,#051825fa,#07202ceb);box-shadow:0 20px 50px #030c1452;transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}.gateway-quickstart-cta:hover{transform:translateY(-2px);border-color:#5eead48f;box-shadow:0 26px 60px #030c1466}.gateway-quickstart-cta strong{font-size:1.45rem;font-weight:700}.gateway-quickstart-cta-meta{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.gateway-quickstart-cta-note{color:var(--muted);font-size:.9rem}.gateway-launchpad{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr);gap:16px;background:radial-gradient(circle at top left,rgba(14,165,166,.16),transparent 36%),linear-gradient(135deg,#06131d24,#06131d0a)}.gateway-launchpad-copy h2,.gateway-quickstart-panel h2{margin:6px 0 8px}.gateway-launchpad-status{display:flex;flex-direction:column;gap:12px}.gateway-quickstart-panel{display:flex;flex-direction:column;gap:16px;border:1px solid rgba(14,165,166,.32);border-radius:24px;background:linear-gradient(135deg,#04121d38,#04121d14),radial-gradient(circle at top right,rgba(14,165,166,.16),transparent 28%)}.gateway-quickstart-inline{box-shadow:0 22px 60px #02080e2e}.gateway-quickstart-header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.gateway-quickstart-guidance{display:flex;flex-direction:column;gap:10px;padding:14px 16px;border:1px solid rgba(148,163,184,.14);border-radius:16px;background:#06121c66}.gateway-quickstart-guidance-header{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}.gateway-quickstart-stepper{gap:10px}.gateway-quickstart-step{justify-content:space-between;align-items:flex-start;padding:10px 12px;border:1px solid rgba(148,163,184,.14);border-radius:12px;background:#08141f42}.gateway-quickstart-step-active{border-color:#2dd4bf6b;box-shadow:0 12px 28px #0ea5a61f}.gateway-preview-actions{display:flex;gap:10px;flex-wrap:wrap}.gateway-quickstart-preview-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.gateway-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.gateway-admin-console{display:grid;gap:16px;border-radius:24px;border:1px solid rgba(56,189,248,.18);background:radial-gradient(circle at top left,rgba(56,189,248,.12),transparent 24%),linear-gradient(135deg,#08142047,#08142014)}.gateway-admin-filter-grid{align-items:end}.gateway-admin-work-item{min-height:132px;margin-bottom:0;border-radius:16px;background:linear-gradient(180deg,#06121c8a,#06121c33),var(--panel-soft)}.gateway-admin-work-value{font-size:1.9rem;font-weight:700;line-height:1;margin:6px 0 8px}.gateway-workbench-grid{align-items:start}.gateway-stack{display:flex;flex-direction:column;gap:14px}.gateway-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.gateway-form{display:flex;flex-direction:column;gap:10px}.gateway-form-inline{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.gateway-compact-form{margin-bottom:10px}.gateway-form textarea{width:100%;font-family:IBM Plex Sans,sans-serif;border-radius:10px;border:1px solid var(--input-border);background:var(--input-bg);color:var(--text);padding:12px;resize:vertical}.gateway-form-actions{display:flex;gap:8px;flex-wrap:wrap}.gateway-checkbox-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.gateway-checkbox-row{display:flex;align-items:center;gap:8px;color:var(--muted)}.gateway-item{border:1px solid var(--panel-border);border-radius:14px;padding:12px;margin-bottom:10px;background:linear-gradient(180deg,#06121c57,#06121c14),var(--panel-soft)}.gateway-select-card{width:100%;text-align:left;cursor:pointer;color:var(--text);transition:border-color .16s ease,transform .16s ease,box-shadow .16s ease}.gateway-select-card:hover{border-color:#0ea5a673;transform:translateY(-1px)}.gateway-select-card .gateway-item-title{color:var(--text)}.gateway-select-card .muted,.gateway-select-card .gateway-inline-meta{color:var(--muted)}.gateway-item-selected{border-color:#0ea5a6a6;box-shadow:0 10px 24px #0ea5a61f}.gateway-item-title{font-weight:600;margin-bottom:6px}.gateway-inline-meta{display:flex;flex-wrap:wrap;gap:10px;color:var(--muted);font-size:.85rem;margin-top:6px}.gateway-inline-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px}.gateway-secret{border:1px solid rgba(34,197,94,.35);background:#22c55e14;color:var(--text);border-radius:8px;padding:10px;word-break:break-all}.gateway-result-block{margin-top:12px}.gateway-result-block pre{background:var(--surface-elevated);border:1px solid var(--panel-border);border-radius:10px;padding:10px;max-height:320px;overflow:auto}.gateway-code-block{background:var(--surface-elevated);border:1px solid var(--panel-border);border-radius:10px;padding:10px;overflow:auto;max-height:360px;white-space:pre-wrap;word-break:break-word}.gateway-code-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.gateway-tag{display:inline-flex;align-items:center;margin-left:8px;padding:2px 8px;border-radius:999px;border:1px solid rgba(14,165,166,.42);background:#0ea5a629;color:var(--muted);font-size:.74rem;font-weight:600}.gateway-warning,.gateway-success{margin-top:8px;border-radius:8px;padding:8px 10px;font-size:.86rem}.gateway-warning{border:1px solid rgba(245,158,11,.4);background:#f59e0b1f;color:var(--text)}.gateway-success{border:1px solid rgba(34,197,94,.35);background:#22c55e1a;color:var(--text)}.gateway-checklist{display:flex;flex-direction:column;gap:6px;margin-top:8px}.gateway-checklist-item{display:flex;gap:8px;align-items:center;color:var(--muted)}.gateway-guide-list{margin:8px 0 12px;padding-left:18px;color:var(--muted);display:grid;gap:6px}.gateway-details{margin-top:8px}.gateway-details summary{cursor:pointer;color:var(--muted)}.gateway-routing-note{display:flex;align-items:center;padding:0 4px}.gateway-details pre{background:var(--surface-elevated);border:1px solid var(--panel-border);border-radius:8px;padding:8px;max-height:220px;overflow:auto;margin-top:8px}@media (max-width: 980px){.gateway-hero-title-row{flex-direction:column;align-items:stretch}.gateway-hero-actions{justify-content:flex-start}.gateway-user-card{width:100%;min-width:0}.gateway-status-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.gateway-grid,.gateway-launchpad,.gateway-card-grid,.gateway-checkbox-grid,.gateway-form-inline,.gateway-code-grid{grid-template-columns:minmax(0,1fr)}.gateway-quickstart-header,.gateway-quickstart-guidance-header{flex-direction:column;align-items:stretch}.gateway-quickstart-preview-grid{grid-template-columns:minmax(0,1fr)}}.ims-demo-page{display:flex;flex-direction:column;gap:14px}.ims-demo-hero{display:flex;flex-direction:column;gap:10px}.ims-demo-banner{border:1px solid rgba(245,158,11,.35);background:#f59e0b24;border-radius:10px;padding:10px;color:var(--text)}.ims-demo-controls{display:grid;grid-template-columns:minmax(0,2fr) minmax(120px,180px) auto auto;gap:8px}.ims-demo-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.ims-demo-metric-label{color:var(--muted);font-size:.82rem}.ims-demo-metric-value{color:var(--text);font-size:1.3rem;font-weight:700;margin-top:4px}.ims-demo-metric-value-small{color:var(--text);font-size:.95rem;font-weight:600;margin-top:4px}@media (max-width: 980px){.ims-demo-controls{grid-template-columns:minmax(0,1fr)}.ims-demo-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}.leaflet-pane,.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-tile-container,.leaflet-pane>svg,.leaflet-pane>canvas,.leaflet-zoom-box,.leaflet-image-layer,.leaflet-layer{position:absolute;left:0;top:0}.leaflet-container{overflow:hidden}.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow{-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-user-drag:none}.leaflet-tile::selection{background:transparent}.leaflet-safari .leaflet-tile{image-rendering:-webkit-optimize-contrast}.leaflet-safari .leaflet-tile-container{width:1600px;height:1600px;-webkit-transform-origin:0 0}.leaflet-marker-icon,.leaflet-marker-shadow{display:block}.leaflet-container .leaflet-overlay-pane svg{max-width:none!important;max-height:none!important}.leaflet-container .leaflet-marker-pane img,.leaflet-container .leaflet-shadow-pane img,.leaflet-container .leaflet-tile-pane img,.leaflet-container img.leaflet-image-layer,.leaflet-container .leaflet-tile{max-width:none!important;max-height:none!important;width:auto;padding:0}.leaflet-container img.leaflet-tile{mix-blend-mode:plus-lighter}.leaflet-container.leaflet-touch-zoom{-ms-touch-action:pan-x pan-y;touch-action:pan-x pan-y}.leaflet-container.leaflet-touch-drag{-ms-touch-action:pinch-zoom;touch-action:none;touch-action:pinch-zoom}.leaflet-container.leaflet-touch-drag.leaflet-touch-zoom{-ms-touch-action:none;touch-action:none}.leaflet-container{-webkit-tap-highlight-color:transparent}.leaflet-container a{-webkit-tap-highlight-color:rgba(51,181,229,.4)}.leaflet-tile{filter:inherit;visibility:hidden}.leaflet-tile-loaded{visibility:inherit}.leaflet-zoom-box{width:0;height:0;-moz-box-sizing:border-box;box-sizing:border-box;z-index:800}.leaflet-overlay-pane svg{-moz-user-select:none}.leaflet-pane{z-index:400}.leaflet-tile-pane{z-index:200}.leaflet-overlay-pane{z-index:400}.leaflet-shadow-pane{z-index:500}.leaflet-marker-pane{z-index:600}.leaflet-tooltip-pane{z-index:650}.leaflet-popup-pane{z-index:700}.leaflet-map-pane canvas{z-index:100}.leaflet-map-pane svg{z-index:200}.leaflet-vml-shape{width:1px;height:1px}.lvml{behavior:url(#default#VML);display:inline-block;position:absolute}.leaflet-control{position:relative;z-index:800;pointer-events:visiblePainted;pointer-events:auto}.leaflet-top,.leaflet-bottom{position:absolute;z-index:1000;pointer-events:none}.leaflet-top{top:0}.leaflet-right{right:0}.leaflet-bottom{bottom:0}.leaflet-left{left:0}.leaflet-control{float:left;clear:both}.leaflet-right .leaflet-control{float:right}.leaflet-top .leaflet-control{margin-top:10px}.leaflet-bottom .leaflet-control{margin-bottom:10px}.leaflet-left .leaflet-control{margin-left:10px}.leaflet-right .leaflet-control{margin-right:10px}.leaflet-fade-anim .leaflet-popup{opacity:0;-webkit-transition:opacity .2s linear;-moz-transition:opacity .2s linear;transition:opacity .2s linear}.leaflet-fade-anim .leaflet-map-pane .leaflet-popup{opacity:1}.leaflet-zoom-animated{-webkit-transform-origin:0 0;-ms-transform-origin:0 0;transform-origin:0 0}svg.leaflet-zoom-animated{will-change:transform}.leaflet-zoom-anim .leaflet-zoom-animated{-webkit-transition:-webkit-transform .25s cubic-bezier(0,0,.25,1);-moz-transition:-moz-transform .25s cubic-bezier(0,0,.25,1);transition:transform .25s cubic-bezier(0,0,.25,1)}.leaflet-zoom-anim .leaflet-tile,.leaflet-pan-anim .leaflet-tile{-webkit-transition:none;-moz-transition:none;transition:none}.leaflet-zoom-anim .leaflet-zoom-hide{visibility:hidden}.leaflet-interactive{cursor:pointer}.leaflet-grab{cursor:-webkit-grab;cursor:-moz-grab;cursor:grab}.leaflet-crosshair,.leaflet-crosshair .leaflet-interactive{cursor:crosshair}.leaflet-popup-pane,.leaflet-control{cursor:auto}.leaflet-dragging .leaflet-grab,.leaflet-dragging .leaflet-grab .leaflet-interactive,.leaflet-dragging .leaflet-marker-draggable{cursor:move;cursor:-webkit-grabbing;cursor:-moz-grabbing;cursor:grabbing}.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-image-layer,.leaflet-pane>svg path,.leaflet-tile-container{pointer-events:none}.leaflet-marker-icon.leaflet-interactive,.leaflet-image-layer.leaflet-interactive,.leaflet-pane>svg path.leaflet-interactive,svg.leaflet-image-layer.leaflet-interactive path{pointer-events:visiblePainted;pointer-events:auto}.leaflet-container{background:#ddd;outline-offset:1px}.leaflet-container a{color:#0078a8}.leaflet-zoom-box{border:2px dotted #38f;background:#ffffff80}.leaflet-container{font-family:Helvetica Neue,Arial,Helvetica,sans-serif;font-size:12px;font-size:.75rem;line-height:1.5}.leaflet-bar{box-shadow:0 1px 5px #000000a6;border-radius:4px}.leaflet-bar a{background-color:#fff;border-bottom:1px solid #ccc;width:26px;height:26px;line-height:26px;display:block;text-align:center;text-decoration:none;color:#000}.leaflet-bar a,.leaflet-control-layers-toggle{background-position:50% 50%;background-repeat:no-repeat;display:block}.leaflet-bar a:hover,.leaflet-bar a:focus{background-color:#f4f4f4}.leaflet-bar a:first-child{border-top-left-radius:4px;border-top-right-radius:4px}.leaflet-bar a:last-child{border-bottom-left-radius:4px;border-bottom-right-radius:4px;border-bottom:none}.leaflet-bar a.leaflet-disabled{cursor:default;background-color:#f4f4f4;color:#bbb}.leaflet-touch .leaflet-bar a{width:30px;height:30px;line-height:30px}.leaflet-touch .leaflet-bar a:first-child{border-top-left-radius:2px;border-top-right-radius:2px}.leaflet-touch .leaflet-bar a:last-child{border-bottom-left-radius:2px;border-bottom-right-radius:2px}.leaflet-control-zoom-in,.leaflet-control-zoom-out{font:700 18px Lucida Console,Monaco,monospace;text-indent:1px}.leaflet-touch .leaflet-control-zoom-in,.leaflet-touch .leaflet-control-zoom-out{font-size:22px}.leaflet-control-layers{box-shadow:0 1px 5px #0006;background:#fff;border-radius:5px}.leaflet-control-layers-toggle{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABoAAAAaCAQAAAADQ4RFAAACf0lEQVR4AY1UM3gkARTePdvdoTxXKc+qTl3aU5U6b2Kbkz3Gtq3Zw6ziLGNPzrYx7946Tr6/ee/XeCQ4D3ykPtL5tHno4n0d/h3+xfuWHGLX81cn7r0iTNzjr7LrlxCqPtkbTQEHeqOrTy4Yyt3VCi/IOB0v7rVC7q45Q3Gr5K6jt+3Gl5nCoDD4MtO+j96Wu8atmhGqcNGHObuf8OM/x3AMx38+4Z2sPqzCxRFK2aF2e5Jol56XTLyggAMTL56XOMoS1W4pOyjUcGGQdZxU6qRh7B9Zp+PfpOFlqt0zyDZckPi1ttmIp03jX8gyJ8a/PG2yutpS/Vol7peZIbZcKBAEEheEIAgFbDkz5H6Zrkm2hVWGiXKiF4Ycw0RWKdtC16Q7qe3X4iOMxruonzegJzWaXFrU9utOSsLUmrc0YjeWYjCW4PDMADElpJSSQ0vQvA1Tm6/JlKnqFs1EGyZiFCqnRZTEJJJiKRYzVYzJck2Rm6P4iH+cmSY0YzimYa8l0EtTODFWhcMIMVqdsI2uiTvKmTisIDHJ3od5GILVhBCarCfVRmo4uTjkhrhzkiBV7SsaqS+TzrzM1qpGGUFt28pIySQHR6h7F6KSwGWm97ay+Z+ZqMcEjEWebE7wxCSQwpkhJqoZA5ivCdZDjJepuJ9IQjGGUmuXJdBFUygxVqVsxFsLMbDe8ZbDYVCGKxs+W080max1hFCarCfV+C1KATwcnvE9gRRuMP2prdbWGowm1KB1y+zwMMENkM755cJ2yPDtqhTI6ED1M/82yIDtC/4j4BijjeObflpO9I9MwXTCsSX8jWAFeHr05WoLTJ5G8IQVS/7vwR6ohirYM7f6HzYpogfS3R2OAAAAAElFTkSuQmCC);width:36px;height:36px}.leaflet-retina .leaflet-control-layers-toggle{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADQAAAA0CAQAAABvcdNgAAAEsklEQVR4AWL4TydIhpZK1kpWOlg0w3ZXP6D2soBtG42jeI6ZmQTHzAxiTbSJsYLjO9HhP+WOmcuhciVnmHVQcJnp7DFvScowZorad/+V/fVzMdMT2g9Cv9guXGv/7pYOrXh2U+RRR3dSd9JRx6bIFc/ekqHI29JC6pJ5ZEh1yWkhkbcFeSjxgx3L2m1cb1C7bceyxA+CNjT/Ifff+/kDk2u/w/33/IeCMOSaWZ4glosqT3DNnNZQ7Cs58/3Ce5HL78iZH/vKVIaYlqzfdLu8Vi7dnvUbEza5Idt36tquZFldl6N5Z/POLof0XLK61mZCmJSWjVF9tEjUluu74IUXvgttuVIHE7YxSkaYhJZam7yiM9Pv82JYfl9nptxZaxMJE4YSPty+vF0+Y2up9d3wwijfjZbabqm/3bZ9ecKHsiGmRflnn1MW4pjHf9oLufyn2z3y1D6n8g8TZhxyzipLNPnAUpsOiuWimg52psrTZYnOWYNDTMuWBWa0tJb4rgq1UvmutpaYEbZlwU3CLJm/ayYjHW5/h7xWLn9Hh1vepDkyf7dE7MtT5LR4e7yYpHrkhOUpEfssBLq2pPhAqoSWKUkk7EDqkmK6RrCEzqDjhNDWNE+XSMvkJRDWlZTmCW0l0PHQGRZY5t1L83kT0Y3l2SItk5JAWHl2dCOBm+fPu3fo5/3v61RMCO9Jx2EEYYhb0rmNQMX/vm7gqOEJLcXTGw3CAuRNeyaPWwjR8PRqKQ1PDA/dpv+on9Shox52WFnx0KY8onHayrJzm87i5h9xGw/tfkev0jGsQizqezUKjk12hBMKJ4kbCqGPVNXudyyrShovGw5CgxsRICxF6aRmSjlBnHRzg7Gx8fKqEubI2rahQYdR1YgDIRQO7JvQyD52hoIQx0mxa0ODtW2Iozn1le2iIRdzwWewedyZzewidueOGqlsn1MvcnQpuVwLGG3/IR1hIKxCjelIDZ8ldqWz25jWAsnldEnK0Zxro19TGVb2ffIZEsIO89EIEDvKMPrzmBOQcKQ+rroye6NgRRxqR4U8EAkz0CL6uSGOm6KQCdWjvjRiSP1BPalCRS5iQYiEIvxuBMJEWgzSoHADcVMuN7IuqqTeyUPq22qFimFtxDyBBJEwNyt6TM88blFHao/6tWWhuuOM4SAK4EI4QmFHA+SEyWlp4EQoJ13cYGzMu7yszEIBOm2rVmHUNqwAIQabISNMRstmdhNWcFLsSm+0tjJH1MdRxO5Nx0WDMhCtgD6OKgZeljJqJKc9po8juskR9XN0Y1lZ3mWjLR9JCO1jRDMd0fpYC2VnvjBSEFg7wBENc0R9HFlb0xvF1+TBEpF68d+DHR6IOWVv2BECtxo46hOFUBd/APU57WIoEwJhIi2CdpyZX0m93BZicktMj1AS9dClteUFAUNUIEygRZCtik5zSxI9MubTBH1GOiHsiLJ3OCoSZkILa9PxiN0EbvhsAo8tdAf9Seepd36lGWHmtNANTv5Jd0z4QYyeo/UEJqxKRpg5LZx6btLPsOaEmdMyxYdlc8LMaJnikDlhclqmPiQnTEpLUIZEwkRagjYkEibQErwhkTAKCLQEbUgkzJQWc/0PstHHcfEdQ+UAAAAASUVORK5CYII=);background-size:26px 26px}.leaflet-touch .leaflet-control-layers-toggle{width:44px;height:44px}.leaflet-control-layers .leaflet-control-layers-list,.leaflet-control-layers-expanded .leaflet-control-layers-toggle{display:none}.leaflet-control-layers-expanded .leaflet-control-layers-list{display:block;position:relative}.leaflet-control-layers-expanded{padding:6px 10px 6px 6px;color:#333;background:#fff}.leaflet-control-layers-scrollbar{overflow-y:scroll;overflow-x:hidden;padding-right:5px}.leaflet-control-layers-selector{margin-top:2px;position:relative;top:1px}.leaflet-control-layers label{display:block;font-size:13px;font-size:1.08333em}.leaflet-control-layers-separator{height:0;border-top:1px solid #ddd;margin:5px -10px 5px -6px}.leaflet-default-icon-path{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABkAAAApCAYAAADAk4LOAAAFgUlEQVR4Aa1XA5BjWRTN2oW17d3YaZtr2962HUzbDNpjszW24mRt28p47v7zq/bXZtrp/lWnXr337j3nPCe85NcypgSFdugCpW5YoDAMRaIMqRi6aKq5E3YqDQO3qAwjVWrD8Ncq/RBpykd8oZUb/kaJutow8r1aP9II0WmLKLIsJyv1w/kqw9Ch2MYdB++12Onxee/QMwvf4/Dk/Lfp/i4nxTXtOoQ4pW5Aj7wpici1A9erdAN2OH64x8OSP9j3Ft3b7aWkTg/Fm91siTra0f9on5sQr9INejH6CUUUpavjFNq1B+Oadhxmnfa8RfEmN8VNAsQhPqF55xHkMzz3jSmChWU6f7/XZKNH+9+hBLOHYozuKQPxyMPUKkrX/K0uWnfFaJGS1QPRtZsOPtr3NsW0uyh6NNCOkU3Yz+bXbT3I8G3xE5EXLXtCXbbqwCO9zPQYPRTZ5vIDXD7U+w7rFDEoUUf7ibHIR4y6bLVPXrz8JVZEql13trxwue/uDivd3fkWRbS6/IA2bID4uk0UpF1N8qLlbBlXs4Ee7HLTfV1j54APvODnSfOWBqtKVvjgLKzF5YdEk5ewRkGlK0i33Eofffc7HT56jD7/6U+qH3Cx7SBLNntH5YIPvODnyfIXZYRVDPqgHtLs5ABHD3YzLuespb7t79FY34DjMwrVrcTuwlT55YMPvOBnRrJ4VXTdNnYug5ucHLBjEpt30701A3Ts+HEa73u6dT3FNWwflY86eMHPk+Yu+i6pzUpRrW7SNDg5JHR4KapmM5Wv2E8Tfcb1HoqqHMHU+uWDD7zg54mz5/2BSnizi9T1Dg4QQXLToGNCkb6tb1NU+QAlGr1++eADrzhn/u8Q2YZhQVlZ5+CAOtqfbhmaUCS1ezNFVm2imDbPmPng5wmz+gwh+oHDce0eUtQ6OGDIyR0uUhUsoO3vfDmmgOezH0mZN59x7MBi++WDL1g/eEiU3avlidO671bkLfwbw5XV2P8Pzo0ydy4t2/0eu33xYSOMOD8hTf4CrBtGMSoXfPLchX+J0ruSePw3LZeK0juPJbYzrhkH0io7B3k164hiGvawhOKMLkrQLyVpZg8rHFW7E2uHOL888IBPlNZ1FPzstSJM694fWr6RwpvcJK60+0HCILTBzZLFNdtAzJaohze60T8qBzyh5ZuOg5e7uwQppofEmf2++DYvmySqGBuKaicF1blQjhuHdvCIMvp8whTTfZzI7RldpwtSzL+F1+wkdZ2TBOW2gIF88PBTzD/gpeREAMEbxnJcaJHNHrpzji0gQCS6hdkEeYt9DF/2qPcEC8RM28Hwmr3sdNyht00byAut2k3gufWNtgtOEOFGUwcXWNDbdNbpgBGxEvKkOQsxivJx33iow0Vw5S6SVTrpVq11ysA2Rp7gTfPfktc6zhtXBBC+adRLshf6sG2RfHPZ5EAc4sVZ83yCN00Fk/4kggu40ZTvIEm5g24qtU4KjBrx/BTTH8ifVASAG7gKrnWxJDcU7x8X6Ecczhm3o6YicvsLXWfh3Ch1W0k8x0nXF+0fFxgt4phz8QvypiwCCFKMqXCnqXExjq10beH+UUA7+nG6mdG/Pu0f3LgFcGrl2s0kNNjpmoJ9o4B29CMO8dMT4Q5ox8uitF6fqsrJOr8qnwNbRzv6hSnG5wP+64C7h9lp30hKNtKdWjtdkbuPA19nJ7Tz3zR/ibgARbhb4AlhavcBebmTHcFl2fvYEnW0ox9xMxKBS8btJ+KiEbq9zA4RthQXDhPa0T9TEe69gWupwc6uBUphquXgf+/FrIjweHQS4/pduMe5ERUMHUd9xv8ZR98CxkS4F2n3EUrUZ10EYNw7BWm9x1GiPssi3GgiGRDKWRYZfXlON+dfNbM+GgIwYdwAAAAASUVORK5CYII=)}.leaflet-container .leaflet-control-attribution{background:#fff;background:#fffc;margin:0}.leaflet-control-attribution,.leaflet-control-scale-line{padding:0 5px;color:#333;line-height:1.4}.leaflet-control-attribution a{text-decoration:none}.leaflet-control-attribution a:hover,.leaflet-control-attribution a:focus{text-decoration:underline}.leaflet-attribution-flag{display:inline!important;vertical-align:baseline!important;width:1em;height:.6669em}.leaflet-left .leaflet-control-scale{margin-left:5px}.leaflet-bottom .leaflet-control-scale{margin-bottom:5px}.leaflet-control-scale-line{border:2px solid #777;border-top:none;line-height:1.1;padding:2px 5px 1px;white-space:nowrap;-moz-box-sizing:border-box;box-sizing:border-box;background:#fffc;text-shadow:1px 1px #fff}.leaflet-control-scale-line:not(:first-child){border-top:2px solid #777;border-bottom:none;margin-top:-2px}.leaflet-control-scale-line:not(:first-child):not(:last-child){border-bottom:2px solid #777}.leaflet-touch .leaflet-control-attribution,.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{box-shadow:none}.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{border:2px solid rgba(0,0,0,.2);background-clip:padding-box}.leaflet-popup{position:absolute;text-align:center;margin-bottom:20px}.leaflet-popup-content-wrapper{padding:1px;text-align:left;border-radius:12px}.leaflet-popup-content{margin:13px 24px 13px 20px;line-height:1.3;font-size:13px;font-size:1.08333em;min-height:1px}.leaflet-popup-content p{margin:1.3em 0}.leaflet-popup-tip-container{width:40px;height:20px;position:absolute;left:50%;margin-top:-1px;margin-left:-20px;overflow:hidden;pointer-events:none}.leaflet-popup-tip{width:17px;height:17px;padding:1px;margin:-10px auto 0;pointer-events:auto;-webkit-transform:rotate(45deg);-moz-transform:rotate(45deg);-ms-transform:rotate(45deg);transform:rotate(45deg)}.leaflet-popup-content-wrapper,.leaflet-popup-tip{background:#fff;color:#333;box-shadow:0 3px 14px #0006}.leaflet-container a.leaflet-popup-close-button{position:absolute;top:0;right:0;border:none;text-align:center;width:24px;height:24px;font:16px/24px Tahoma,Verdana,sans-serif;color:#757575;text-decoration:none;background:transparent}.leaflet-container a.leaflet-popup-close-button:hover,.leaflet-container a.leaflet-popup-close-button:focus{color:#585858}.leaflet-popup-scrolled{overflow:auto}.leaflet-oldie .leaflet-popup-content-wrapper{-ms-zoom:1}.leaflet-oldie .leaflet-popup-tip{width:24px;margin:0 auto;-ms-filter:"progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678)";filter:progid:DXImageTransform.Microsoft.Matrix(M11=.70710678,M12=.70710678,M21=-.70710678,M22=.70710678)}.leaflet-oldie .leaflet-control-zoom,.leaflet-oldie .leaflet-control-layers,.leaflet-oldie .leaflet-popup-content-wrapper,.leaflet-oldie .leaflet-popup-tip{border:1px solid #999}.leaflet-div-icon{background:#fff;border:1px solid #666}.leaflet-tooltip{position:absolute;padding:6px;background-color:#fff;border:1px solid #fff;border-radius:3px;color:#222;white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;pointer-events:none;box-shadow:0 1px 3px #0006}.leaflet-tooltip.leaflet-interactive{cursor:pointer;pointer-events:auto}.leaflet-tooltip-top:before,.leaflet-tooltip-bottom:before,.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{position:absolute;pointer-events:none;border:6px solid transparent;background:transparent;content:""}.leaflet-tooltip-bottom{margin-top:6px}.leaflet-tooltip-top{margin-top:-6px}.leaflet-tooltip-bottom:before,.leaflet-tooltip-top:before{left:50%;margin-left:-6px}.leaflet-tooltip-top:before{bottom:0;margin-bottom:-12px;border-top-color:#fff}.leaflet-tooltip-bottom:before{top:0;margin-top:-12px;margin-left:-6px;border-bottom-color:#fff}.leaflet-tooltip-left{margin-left:-6px}.leaflet-tooltip-right{margin-left:6px}.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{top:50%;margin-top:-6px}.leaflet-tooltip-left:before{right:0;margin-right:-12px;border-left-color:#fff}.leaflet-tooltip-right:before{left:0;margin-left:-12px;border-right-color:#fff}@media print{.leaflet-control{-webkit-print-color-adjust:exact;print-color-adjust:exact}}
