*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.container{width:100%}@media (min-width: 640px){.container{max-width:640px}}@media (min-width: 768px){.container{max-width:768px}}@media (min-width: 1024px){.container{max-width:1024px}}@media (min-width: 1280px){.container{max-width:1280px}}@media (min-width: 1536px){.container{max-width:1536px}}.visible{visibility:visible}.table{display:table}.hidden{display:none}.resize{resize:both}.rounded{border-radius:.25rem}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}:root{--bg: #eef3eb;--panel: #fbfdf9;--line: #cdd8c6;--line-strong: #aebeaf;--ink: #18261f;--ink-soft: #576a60;--brand: #137a67;--brand-2: #1f936e;--brand-ink: #ecfdf7;--danger: #b42337;--focus-ring: rgba(19, 122, 103, .3);--heat-0: #eef3f0;--heat-1: #d0eadf;--heat-2: #92d5bb;--heat-3: #4ab88d;--heat-4: #1c7b5d}*{box-sizing:border-box}html,body,#root{width:100%;max-width:100%}html,body{overflow-x:hidden}body{margin:0;color:var(--ink);font-family:IBM Plex Sans,Avenir Next,Trebuchet MS,sans-serif;overflow-x:hidden;background:radial-gradient(circle at 94% -8%,#d7ecdf 0%,transparent 42%),radial-gradient(circle at 8% 112%,#d4e8ef 0%,transparent 35%),linear-gradient(145deg,#f7fbf3,var(--bg))}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;background-image:repeating-linear-gradient(125deg,rgba(19,122,103,.028) 0,rgba(19,122,103,.028) 1px,transparent 1px,transparent 20px);opacity:.34;z-index:-1}.particles-backdrop{pointer-events:none}.particles-backdrop.is-global{position:fixed;top:0;right:0;bottom:0;left:0;width:100vw;height:100vh;z-index:0;opacity:.97}.dark body .particles-backdrop.is-global{opacity:.9}.particles-backdrop.is-contained{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;z-index:0;opacity:.78}.dark body .particles-backdrop.is-contained{opacity:.7}@media (prefers-reduced-motion: reduce){.particles-backdrop.is-global{opacity:.68}.particles-backdrop.is-contained{opacity:.58}}.dark body{--bg: #0e1713;--panel: #13211c;--line: #2a3c33;--line-strong: #3b5448;--ink: #ebf5f1;--ink-soft: #a3b8ad;--brand: #2bb89a;--brand-2: #1f9f83;--brand-ink: #04261f;--danger: #ff7b90;--focus-ring: rgba(43, 184, 154, .35);--heat-0: #15231e;--heat-1: #1d352b;--heat-2: #235440;--heat-3: #238061;--heat-4: #35bb8f;background:radial-gradient(circle at 88% -6%,#164639 0%,transparent 44%),radial-gradient(circle at -8% 112%,#1d3b44 0%,transparent 42%),linear-gradient(145deg,#101b17,var(--bg))}.dark body .card{box-shadow:0 14px 32px #0409086b}.dark body .sidebar-panel{background:#13211c;border-color:#2f4439;box-shadow:0 14px 32px #04090866}.dark body .sidebar-brand-btn{border-color:#3a564a;background:linear-gradient(140deg,#2bb89a33,#2283ab2e);color:#eaf6f1}.dark body .sidebar-brand-btn:hover{border-color:#4a6c5d;background:linear-gradient(140deg,#2bb89a47,#2283ab3d)}.dark body .sidebar-brand-logo{border-color:#4ccbaa73;background:#0c221cb8}.dark body .sidebar-brand-copy small{color:#bdd2c8}.dark body .sidebar-head strong{color:#bfd7cd}.dark body .sidebar-link{color:#eaf6f1}.dark body .sidebar-link:hover{border-color:#4a6c5d;background:#2bb89a24}.dark body .sidebar-link.is-active{border-color:#4ccbaa8c;background:#2bb89a38;color:#d7fff2}.dark body .sidebar-link-icon{border-color:#48ba9d73;background:#2bb89a29}.dark body .sidebar-mobile-backdrop{background:#0308079e}.dark body .app-header{background:#13211c;border-color:#2f4439}.dark body .app-header.is-desktop-hero{background:linear-gradient(124deg,#0e5f4b,#0e4745 55%,#123a5f);border-color:#3d7a679e}.dark body .particles-backdrop.app-header-particles{opacity:.88;filter:saturate(1.16) contrast(1.08)}.dark body .overflow-menu-trigger:after{background:linear-gradient(135deg,#ffffff38,#fff0)}.dark body .overflow-menu-backdrop{background:#030807a8}.dark body .overflow-menu-panel{background:linear-gradient(178deg,#15221dfa,#13211c);border-color:#355247;box-shadow:0 20px 42px #03080785}.dark body .overflow-menu-panel.is-mobile:before{background:#a4d2c17a}.dark body .overflow-menu-item{background:linear-gradient(160deg,#1b2e26f5,#17261ffa);border-color:#355247;color:#e7f3ee}.dark body .overflow-menu-item .muted{color:#b7cfc4}.dark body .overflow-menu-item:hover:not(:disabled){background:#2bb89a2e;border-color:#4d7061}.dark body .overflow-menu-item.is-danger{border-color:#ff7b9080;color:#ff9fb0;background:#4a1d28bd}.dark body .overflow-menu-item.is-danger:hover:not(:disabled){border-color:#ff7b90b8;background:#ff7b9038}.dark body .overflow-menu-head{border-bottom-color:#355247}.dark body .overflow-menu-close{border-color:#3e6052;background:#1a2d25;color:#d3e9e0}.dark body .overflow-menu-close:hover{border-color:#4f7364;background:#224236;color:#ecfff8}.dark body .overflow-menu-extra{border-top-color:#355247}.dark body .header-session-field{color:#b0d4c5}.dark body .header-session-box .status-chip,.dark body .app-header-status .status-chip{color:#d7fff2;border-color:#4ccbaa73;background:#2bb89a2e}.dark body .account-card,.dark body .settings-section,.dark body .overview-kv>div,.dark body .capture-card,.dark body .heat-wrap,.dark body .table-wrap,.dark body .settings-preview,.dark body .settings-field,.dark body .settings-readonly-item,.dark body .config-group,.dark body th,.dark body pre{background:#172822}.dark body .settings-field.readonly,.dark body .capture-image-fallback{background:#1f352c}.dark body .capture-kpi-card,.dark body .capture-toolbar{border-color:#355247}.dark body .capture-kpi-card{background:linear-gradient(150deg,#1b2d26,#172822)}.dark body .capture-toolbar{background:linear-gradient(180deg,#1a2d25,#182821)}.dark body .accounts-kpi-card,.dark body .accounts-toolbar,.dark body .account-create,.dark body .account-meta-item,.dark body .account-auth-panel{border-color:#355247}.dark body .accounts-kpi-card{background:linear-gradient(150deg,#1b2d26,#172822)}.dark body .accounts-toolbar,.dark body .account-create{background:linear-gradient(180deg,#1a2d25,#182821)}.dark body .account-meta-item,.dark body .account-auth-panel{background:#1a2d25}.dark body .account-rename-backdrop{background:#0308079e}.dark body .account-rename-modal{border-color:#355247;background:#13211c;box-shadow:0 22px 44px #03080785}.dark body .capture-chip{border-color:#9ddec861;background:#060e0bad;color:#e9fff6}.dark body .capture-preview-backdrop{background:#030807b3}.dark body .capture-preview-modal{border-color:#355247;background:#13211c;box-shadow:0 24px 48px #0308078f}.dark body .capture-preview-media{border-color:#355247;background:#12211b}.dark body .capture-card:hover{box-shadow:0 16px 30px #0409086b}.dark body .settings-field.is-dependent{border-left-color:#4fb296;background:linear-gradient(90deg,#2bb89a29,#2bb89a00 44%),#1a2d25}.dark body .settings-warning{border-color:#ea9c5d;background:#5a3a1f;color:#fff5e9}.dark body .settings-sync-trigger-note{border-color:#3c5b4f;background:#1c312a;color:#e6f4ee}.dark body .settings-sync-trigger-note.is-active{border-color:#4a8f74;background:#1f3f34}.dark body .settings-sync-trigger-note code{background:#ffffff1a;color:#dcfff3}.dark body .settings-section-danger{border-color:#6e3f4a;background:#2d1f24}.dark body .settings-reset-callout{border-color:#8b4c59;background:#4c2632;color:#ffe7ed}.dark body .settings-reset-option{border-color:#64414a;background:#23161a}.dark body .settings-reset-summary{border-color:#575041;background:#2c281e}.dark body .settings-reset-summary-item{border-color:#645b4a;background:#221f18}.dark body .settings-section-toggle{color:#e7f3ee}.dark body .settings-section-toggle:hover{background:#2bb89a29}.dark body .settings-section-toggle.is-open{background:#2bb89a33;color:#d7fff2}.dark body .settings-section.is-collapsible .settings-section-content.is-open{border-top-color:#355247}.dark body th,.dark body td,.dark body .table-wrap,.dark body .settings-field,.dark body .settings-readonly-item,.dark body pre{border-color:#355247}.dark body .table-wrap{background:#14211cbd}.dark body tbody tr:nth-child(2n){background:#1527209e}.dark body .data-table th{color:#cde7dc}.dark body .sort-th-btn:hover{background:#2bb89a2e}.dark body .sort-th-btn-asc .sort-icon,.dark body .sort-th-btn-desc .sort-icon{color:#4dd4b5}.dark body .data-table tbody tr:hover{background:#29493c73}.dark body .sticky-first-col th:first-child,.dark body .sticky-first-col td:first-child{background:#1a2d25;box-shadow:1px 0 #355247}.dark body .overview-error-banner{border-color:#b95f72;background:#4f2631;color:#ffe8ed}.dark body .overview-row-issue td{background:#792f3f38}.dark body .overview-row-new td{box-shadow:inset 0 -2px #3ead9173}.dark body .overview-detail-row td{background:#1a2d25bd}.dark body .overview-detail-drawer>div,.dark body .alarm-group,.dark body .alarm-item-new,.dark body .command-palette-item{background:#192a24}.dark body .command-palette-backdrop{background:#040a088c}.dark body .command-palette-list{background:#101e18cc}.dark body .command-palette-item.is-active{border-color:#4fb296;background:#1f3c32}.dark body .shortcuts-help-item{background:#192a24;border-color:#355247}.dark body .shortcuts-help-kbd{border-color:#4d7061;background:#223a31;color:#d7fff2}.dark body .badge.ok{background:#204e3f;color:#c9f6e6}.dark body .badge.warn{background:#663341;color:#ffd6de}.dark body .badge.error{background:#6f1f2f;color:#ffdbe4}.dark body .badge.neutral{background:#213a33;color:#d8ece4}.app{max-width:1660px;margin:0 auto;padding:18px;min-height:100vh}.app-shell{--sidebar-width: 272px;--sticky-edge-gap: 10px;--app-top-padding: 18px;width:100%;min-height:100vh;position:relative;isolation:isolate}.app-shell-content{position:relative;z-index:1}.app-shell.sidebar-is-collapsed{--sidebar-width: 84px}.app-frame{display:grid;grid-template-columns:var(--sidebar-width) minmax(0,1fr);gap:12px;align-items:start;min-height:calc(100vh - 36px);transition:grid-template-columns .24s ease}.app-main{min-width:0;display:grid;gap:10px;min-height:calc(100vh - 36px);align-content:start;overflow-x:clip}.app-content{min-width:0;overflow-x:clip}.global-feedback{position:fixed;right:18px;bottom:18px;z-index:260;max-width:min(560px,calc(100vw - 36px));border:1px solid #9fd8c5;border-radius:12px;background:#f2fbf7;color:#15463a;box-shadow:0 14px 30px #162a2033;padding:10px 12px;display:flex;align-items:flex-start;gap:10px}.global-feedback-text{flex:1 1 auto;min-width:0;overflow-wrap:anywhere}.global-feedback-dismiss{border:1px solid #8bcdb4;border-radius:10px;background:#fff;color:#1f6d58;padding:5px 9px;cursor:pointer;font:inherit;transition:border-color .16s ease,background .16s ease,color .16s ease}.global-feedback-dismiss:hover{border-color:#2f9d75;background:#ecf8f2;color:#185847}.dark body .global-feedback{border-color:#2b5f51;background:#1a2b24;color:#d7fff2}.dark body .global-feedback-dismiss{border-color:#3c7b68;background:#21382f;color:#d1fff0}.dark body .global-feedback-dismiss:hover{border-color:#5cae91;background:#275141;color:#e6fff7}@media (min-width: 768px){.app-shell{--sticky-edge-gap: 10px}.app-frame>.app-main{grid-column:2 / -1}}@media (min-width: 768px){.app-sidebar{position:fixed;top:10px;bottom:10px;width:var(--sidebar-width);left:max(18px,calc((100vw - 1660px)/2 + 18px));z-index:50;height:auto;max-height:none}}.sidebar-panel{border:1px solid var(--line);background:var(--panel);border-radius:18px;box-shadow:0 10px 28px #14221a17;padding:10px;display:flex;flex-direction:column;gap:8px;overflow:hidden}.sidebar-nav{display:grid;gap:5px;flex:1 1 auto;min-height:0;align-content:start;overflow-y:auto;padding-right:2px}.sidebar-brand-btn{border:1px solid var(--line);background:linear-gradient(140deg,#137a671f,#165f7f1f);color:var(--ink);border-radius:14px;padding:10px;width:100%;display:flex;align-items:center;gap:10px;text-align:left;cursor:pointer;transition:border-color .16s ease,background .16s ease,transform .14s ease}.sidebar-brand-btn:hover{border-color:var(--line-strong);background:linear-gradient(140deg,#137a6733,#165f7f2e);transform:translateY(-1px)}.sidebar-brand-logo{width:44px;height:44px;border-radius:12px;border:1px solid rgba(19,122,103,.3);background:#fff9;padding:4px;flex:0 0 auto}.sidebar-brand-copy{min-width:0;display:grid;gap:2px}.sidebar-brand-copy strong{font-size:19px;line-height:1}.sidebar-brand-copy small{color:var(--ink-soft);font-size:11px}.sidebar-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.sidebar-head strong{font-size:12px;text-transform:uppercase;letter-spacing:.07em;color:var(--ink-soft)}.sidebar-link{border:1px solid transparent;border-radius:12px;background:transparent;color:var(--ink);display:flex;align-items:center;gap:10px;text-align:left;padding:7px;cursor:pointer;transition:border-color .16s ease,background .16s ease,color .16s ease,transform .14s ease}.sidebar-link:hover{border-color:var(--line-strong);background:#137a6714;transform:translate(1px)}.sidebar-link.is-active{border-color:#137a6766;background:#137a6724;color:var(--brand)}.sidebar-link-icon{width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center;border-radius:10px;border:1px solid rgba(19,122,103,.2);background:#137a6717;flex:0 0 auto}.sidebar-link-label{font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:opacity .18s ease,transform .18s ease}.sidebar-panel.is-collapsed .sidebar-head strong{display:none}.sidebar-panel.is-collapsed .sidebar-brand-btn{justify-content:center;padding:8px}.sidebar-panel.is-collapsed .sidebar-brand-copy{display:none}.sidebar-panel.is-collapsed .sidebar-brand-logo{width:38px;height:38px}.sidebar-panel.is-collapsed .sidebar-link{justify-content:center;padding:6px}.sidebar-panel.is-collapsed .sidebar-link-label{opacity:0;width:0;transform:translate(-4px);pointer-events:none}.sidebar-panel.is-collapsed .sidebar-link-icon{width:36px;height:36px}.sidebar-mobile-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:70;background:#08120e6b;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:flex;align-items:stretch}.sidebar-mobile-drawer{width:min(86vw,320px);max-width:320px;border-radius:0 16px 16px 0;border-left:0;border-top:0;border-bottom:0;height:100vh;max-height:100vh;overflow:auto}.app-header{padding:10px 12px;display:grid;gap:8px;position:fixed;top:calc(var(--sticky-edge-gap) - var(--app-top-padding));z-index:65;min-height:74px}.app-header.is-desktop-hero{color:#f4fff9;background:linear-gradient(124deg,#0f8d68,#0d6a58 55%,#16577f);border-color:#0d5b4bb3;position:relative;overflow:visible;padding:18px 16px 16px;gap:10px}.particles-backdrop.app-header-particles{border-radius:inherit;mix-blend-mode:screen;opacity:.96;filter:saturate(1.22) contrast(1.1)}.app-header.is-desktop-hero .app-header-main{position:relative;z-index:1;gap:12px}@media (min-width: 768px){.app-header.is-desktop-hero{min-height:96px;max-height:96px}}.app-header.is-desktop-hero .app-header-status .status-chip{color:#f1fff8;border-color:#e4fff473;background:#e4fff429}.app-header.is-desktop-hero .app-header-primary-actions .btn,.app-header.is-desktop-hero .overflow-menu>.btn{border-color:#e1fff366;background:#ffffff29;color:#f6fff8}.app-header.is-desktop-hero .app-header-primary-actions .btn:hover,.app-header.is-desktop-hero .overflow-menu>.btn:hover{border-color:#e1fff3ad;background:#ffffff3d}.app-header-main{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px}.app-header-left,.app-header-center,.app-header-right{min-width:0;display:flex;align-items:center;gap:8px}.app-header-center{justify-content:center;overflow:hidden}.app-header-page-title{margin:0;font-size:clamp(1rem,2.2vw,1.35rem);font-weight:800;line-height:1.1;color:inherit;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.app-header-right{justify-content:flex-end}.app-header-nav-controls{display:inline-flex;align-items:center}.app-header-status .status-chip{color:var(--brand);border-color:#137a673d;background:#137a6717}.app-header-primary-actions{display:inline-flex;align-items:center;gap:6px}.overflow-menu{position:relative}.overflow-menu-trigger{position:relative;overflow:hidden}.overflow-menu-trigger:after{content:"";position:absolute;inset:-35% auto auto -28%;width:68%;height:84%;pointer-events:none;border-radius:999px;opacity:.3;background:linear-gradient(135deg,#ffffffdb,#fff0)}.overflow-menu-panel{position:absolute;top:calc(100% + 8px);right:0;width:min(92vw,380px);max-height:min(84vh,660px);overflow-y:auto;z-index:140;border:1px solid var(--line);border-radius:14px;background:linear-gradient(178deg,color-mix(in srgb,var(--panel) 94%,#ffffff),var(--panel));box-shadow:0 18px 36px #0a140f33;padding:10px;display:grid;gap:10px;animation:overflow-menu-in .16s ease-out}@keyframes overflow-menu-in{0%{opacity:0;transform:translateY(-4px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}.overflow-menu-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1210;background:#08120e75;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);display:flex;align-items:flex-end;justify-content:center;padding:max(10px,env(safe-area-inset-top)) 10px max(10px,env(safe-area-inset-bottom));animation:overflow-menu-backdrop-in .16s ease-out}@keyframes overflow-menu-backdrop-in{0%{opacity:0}to{opacity:1}}.overflow-menu-panel.is-mobile{position:relative;top:auto;right:auto;width:min(100%,560px);max-height:min(86vh,740px);border-radius:20px;animation:overflow-menu-sheet-in .2s cubic-bezier(.2,.86,.28,1)}.overflow-menu-panel.is-mobile:before{content:"";display:block;width:44px;height:4px;border-radius:999px;margin:0 auto 2px;background:color-mix(in srgb,var(--line-strong) 72%,#ffffff)}@keyframes overflow-menu-sheet-in{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.overflow-menu-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;border-bottom:1px solid var(--line);padding-bottom:10px}.overflow-menu-head-copy{display:grid;gap:2px}.overflow-menu-head-copy>strong{line-height:1.2}.overflow-menu-close{flex:0 0 auto;min-width:36px;min-height:36px}.overflow-menu-actions{display:grid;gap:7px}.overflow-menu-item{width:100%;border:1px solid var(--line);border-radius:11px;background:linear-gradient(165deg,#fff,color-mix(in srgb,var(--panel) 92%,#ffffff));color:var(--ink);text-align:left;cursor:pointer;padding:9px 10px;display:grid;gap:3px;transition:border-color .14s ease,background .16s ease,transform .14s ease}.overflow-menu-item .muted{color:var(--ink-soft);font-size:11px;line-height:1.35}.overflow-menu-item:hover:not(:disabled){border-color:var(--line-strong);background:#137a671a;transform:translateY(-1px)}.overflow-menu-item:disabled{opacity:.58;cursor:not-allowed;transform:none}.overflow-menu-item-main{display:inline-flex;align-items:center;gap:8px;font-weight:700;min-width:0}.overflow-menu-item-main>span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.overflow-menu-item.is-danger{border-color:#b4233766;background:#fff3f5;color:#9f2438}.overflow-menu-item.is-danger:hover:not(:disabled){border-color:#b423378c;background:#fde8ed}.overflow-menu-extra{border-top:1px dashed var(--line);padding-top:10px;display:grid;gap:8px}.header-session-box{display:grid;gap:8px}.header-session-box .status-chip{color:var(--brand);border-color:#137a673d;background:#137a6717}.header-session-field{display:grid;gap:4px;font-size:12px;font-weight:700;color:var(--ink-soft)}.header-session-field>span{display:block}.header-session-field>input{width:100%}.card{border:1px solid var(--line);background:var(--panel);border-radius:18px;box-shadow:0 10px 28px #14221a17;transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease}.status-chip{display:inline-flex;align-items:center;border:1px solid rgba(228,255,244,.45);background:#e4fff429;color:#effff8;border-radius:999px;padding:4px 10px;font-size:12px;font-weight:700}.status-chip.is-on{border-color:#cbffe699;background:#cbffe633}.status-chip.is-off{border-color:#ffdee494;background:#ffdee429}.command-palette-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;background:#09140f59;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:grid;place-items:start center;padding:70px 16px 16px}.command-palette{width:min(760px,100%);max-height:calc(100vh - 96px);padding:14px;display:grid;gap:10px}.command-palette-head{display:flex;justify-content:space-between;gap:8px;align-items:center}.command-palette-head h2{margin:0}.command-palette-list{border:1px solid var(--line);border-radius:12px;background:#ffffff8f;padding:6px;max-height:50vh;overflow:auto;display:grid;gap:6px}.command-palette-item{border:1px solid transparent;border-radius:10px;background:#f8fcfa;text-align:left;padding:9px 10px;display:grid;gap:2px;cursor:pointer}.command-palette-item.is-active{border-color:#78b8a1;background:#ebf9f2}.shortcuts-help-backdrop{z-index:84}.shortcuts-help-modal{width:min(760px,100%);max-height:calc(100vh - 96px);padding:14px;display:grid;gap:10px}.shortcuts-help-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.shortcuts-help-head h2{margin:0}.shortcuts-help-list{border:1px solid var(--line);border-radius:12px;background:#ffffff8f;padding:8px;max-height:56vh;overflow:auto;display:grid;gap:8px}.shortcuts-help-item{border:1px solid var(--line);border-radius:10px;background:#f8fcfa;padding:8px 10px;display:grid;gap:4px;grid-template-columns:minmax(120px,150px) minmax(0,1fr);align-items:center}.shortcuts-help-kbd{display:inline-flex;align-items:center;justify-content:center;border:1px solid #b9ccc0;border-radius:8px;background:#edf6f2;color:#255447;padding:5px 8px;font-size:12px;font-weight:700;font-family:Cascadia Code,Consolas,monospace;letter-spacing:.02em}.shortcuts-help-item>div{display:grid;gap:2px}.skeleton-block{position:relative;overflow:hidden;min-height:72px}.skeleton-block:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,#fff0,#ffffff8c,#fff0);transform:translate(-100%);animation:skeleton-sweep 1.15s ease-in-out infinite}@keyframes skeleton-sweep{to{transform:translate(100%)}}.kpi-grid{margin-top:14px;display:grid;grid-template-columns:repeat(4,minmax(150px,1fr));gap:12px}.kpi{padding:14px;display:flex;flex-direction:column;gap:6px;border:1px solid var(--line);background:linear-gradient(180deg,#137a670f,#137a6700 40%),var(--panel)}.kpi span{color:var(--ink-soft);font-size:12px;text-transform:uppercase;letter-spacing:.08em}.kpi strong{font-size:31px;line-height:1.05;font-family:Sora,Avenir Next,Trebuchet MS,sans-serif}.home-head-grid{margin-top:12px;display:grid;grid-template-columns:minmax(0,1.45fr) minmax(260px,.95fr);gap:12px;align-items:stretch}.home-hero-panel{position:relative;overflow:hidden;background:linear-gradient(180deg,#137a670f,#137a6700 48%),var(--panel)}.home-hero-panel h2{margin:0 0 4px}.home-hero-panel p{margin:0}.home-hero-meta{margin-top:12px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;position:relative;z-index:1}.home-hero-meta>div{border:1px solid var(--line);border-radius:10px;background:#fff9;padding:8px;display:grid;gap:4px}.home-hero-meta strong{font-size:15px;line-height:1.2}.home-focus-panel{align-content:start}.home-focus-panel h3{margin:0}.home-focus-list{display:grid;gap:8px}.home-focus-item{border:1px solid var(--line);border-radius:10px;background:#f8fcf7;padding:8px 9px;display:flex;align-items:center;justify-content:space-between;gap:10px}.home-focus-item .badge{min-width:48px;justify-content:center}.layout-top{margin-top:14px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px}.home-main-grid{grid-template-columns:minmax(340px,.95fr) minmax(0,1.45fr)}.layout-top>*{min-width:0}.layout-bottom{margin-top:10px}.layout-bottom>*{min-width:0}.panel{padding:14px}.panel h2{margin:0 0 10px;font-family:Sora,Avenir Next,Trebuchet MS,sans-serif;letter-spacing:-.01em}.home-health-grid{margin-top:12px;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:10px}.home-shell{margin-top:12px;display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,420px);gap:12px;align-items:start}.home-shell-main{display:grid;gap:12px}.home-ops-rail{position:sticky;top:12px;display:grid;gap:10px;align-content:start}.home-summary-shell{display:grid;gap:12px}.home-summary-hero{background:linear-gradient(165deg,#137a671a,#137a6700 55%),var(--panel)}.home-summary-hero-head h2{margin:0 0 4px}.home-summary-hero-head p{margin:0}.home-summary-hero-meta{margin-top:12px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.home-summary-hero-meta>div{border:1px solid var(--line);border-radius:10px;background:#ffffff9e;padding:9px;display:grid;gap:3px}.home-summary-hero-meta strong{font-size:15px;line-height:1.25}.home-summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.home-summary-card{display:grid;gap:10px;align-content:start}.home-summary-card-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.home-summary-card-head h3{margin:0;font-size:17px}.home-summary-link{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:4px 10px;min-height:30px;border-radius:999px;border:1px solid var(--line);background:#f4fbf7;color:var(--ink-soft);text-decoration:none;font-weight:700;font-size:12px}.home-summary-link:hover{border-color:#82c8ae;color:var(--ink);background:#e9f8f1}.home-summary-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.home-summary-metrics>div{border:1px solid var(--line);border-radius:10px;padding:8px;display:grid;gap:3px;background:#f8fcf8;min-width:0}.home-summary-metrics strong{font-size:19px;line-height:1.1}.home-summary-attention h3{margin:0}.home-summary-attention-list{margin-top:10px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.home-summary-attention-item{border:1px solid var(--line);border-radius:10px;background:#f8fcf7;padding:9px;display:grid;gap:5px}.home-summary-attention-item .badge{width:-moz-max-content;width:max-content}.card:hover{border-color:var(--line-strong);box-shadow:0 14px 32px #14221a24}@keyframes card-enter{0%{opacity:0;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}.hero,.kpi,.overview-root>.card,.home-health-grid>.card,.layout-top>.card,.heat-panel,.captures-grid>.capture-card,.map-form-panel,.map-view-panel,.settings-section{animation:card-enter .4s ease-out both}.stack{margin-top:8px;display:grid;gap:8px}.accounts-auth-scroll{max-height:none;overflow:visible;padding-right:0}.accounts-page{display:grid;gap:12px}.accounts-page-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,440px);gap:10px;align-items:start}.accounts-page-copy h2{margin:0}.accounts-page-copy small{display:block;margin-top:4px}.accounts-page-kpis{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.accounts-kpi-card{border:1px solid var(--line);border-radius:12px;padding:8px 10px;background:linear-gradient(150deg,#f7fcf8,#edf6f1);display:grid;gap:3px}.accounts-kpi-card small{font-size:11px;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-soft);font-weight:700}.accounts-kpi-card strong{font-size:15px}.accounts-toolbar{border:1px solid var(--line);border-radius:12px;background:linear-gradient(180deg,#f8fcf9,#f2f7f3);padding:10px;display:grid;gap:10px}.accounts-filters-grid{display:grid;gap:8px 10px;grid-template-columns:repeat(4,minmax(0,1fr))}.accounts-filter-field{display:grid;gap:4px;min-width:0}.accounts-filter-field>span{font-size:11px;letter-spacing:.02em;text-transform:uppercase;color:var(--ink-soft);font-weight:700}.accounts-filter-field>select,.accounts-filter-field>input{width:100%;min-width:0}.accounts-filter-field.is-wide{grid-column:span 2}.accounts-toolbar-foot{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}.accounts-card-grid{display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}.accounts-path-text{display:block;max-width:100%;overflow-wrap:anywhere;word-break:break-word}.account-card{border:1px solid var(--line);border-radius:12px;padding:10px;background:linear-gradient(155deg,#f8fcf7,#f0f7f2);display:grid;gap:10px;min-width:0;transition:border-color .18s ease,background .18s ease,box-shadow .18s ease}.account-card.is-selectable{cursor:pointer}.account-card.is-selectable:hover{border-color:#8ac8b1;background:#f1faf5}.account-card.is-selected{border-color:#2f9d75;background:#eaf8f1;box-shadow:inset 0 0 0 1px #2f9d7538}.account-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;flex-wrap:wrap}.account-head-copy{min-width:0;display:grid;gap:3px}.account-status-row{display:inline-flex;gap:6px;align-items:center;flex-wrap:wrap}.account-title-row{display:flex;align-items:center;gap:6px}.account-card h4{margin:0;line-height:1.2}.account-icon-btn{min-width:36px;min-height:36px}.account-icon-btn.is-enabled{border-color:#7ec9ab;background:#e8f8f0;color:#196d4f}.account-icon-btn.is-disabled{border-color:#f0b7c4;background:#fff3f6;color:#9b2b42}.account-meta-grid{margin-top:0;display:grid;gap:8px;grid-template-columns:repeat(2,minmax(0,1fr))}.account-meta-item{border:1px solid var(--line);border-radius:10px;background:color-mix(in srgb,var(--panel) 92%,#edf6f0);padding:7px 8px;display:grid;gap:4px;min-width:0}.account-meta-item.is-wide{grid-column:1 / -1}.account-meta-item>strong{min-width:0;overflow-wrap:anywhere}.account-meta-inline{display:inline-flex;align-items:center;justify-content:flex-start;gap:6px;flex-wrap:wrap}.account-schedule-note{display:block;margin-top:-2px}.account-chip-list{display:flex;flex-wrap:wrap;gap:6px;min-width:0}.account-chip-list .badge{max-width:100%}.account-auth-panel{border:1px dashed var(--line);border-radius:10px;padding:8px;display:grid;gap:8px;background:color-mix(in srgb,var(--panel) 90%,#ffffff);min-width:0}.account-auth-note{display:block;line-height:1.35}.account-auth-verify-row{align-items:stretch}.account-rename-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:190;background:#09140f61;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:grid;place-items:center;padding:16px}.account-rename-modal{width:min(100%,520px);border:1px solid var(--line);border-radius:14px;background:var(--panel);box-shadow:0 18px 40px #0a140f47;padding:14px;display:grid;gap:10px}.account-rename-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.account-rename-head h3{margin:0}.account-rename-form{display:grid;gap:10px}.account-rename-field{display:grid;gap:4px}.account-rename-field>span{color:var(--ink-soft);font-size:12px;font-weight:700}.account-rename-actions{display:flex;justify-content:flex-end;align-items:center;gap:8px;flex-wrap:wrap}.badge{display:inline-flex;align-items:center;padding:2px 8px;border-radius:999px;font-size:11px;font-weight:700}.badge.ok{background:#ddf6ea;color:#155d45}.badge.warn{background:#f9e9ec;color:#8c2e3f}.badge.error{background:#fce4ea;color:#93283d}.badge.neutral{background:#ebf0f8;color:#4a556f}.map-location-count-badge{border-style:solid;border-width:1px;min-width:0;white-space:nowrap}.row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.row.spread{justify-content:space-between}.filters-row{align-items:center;gap:8px 10px}.filters-row>label{font-size:12px;font-weight:700;color:var(--ink-soft)}.filters-row>select,.filters-row>input{min-width:128px}.cameras-filter-row{margin:10px 0 8px}.cameras-filters-grid{display:grid;gap:8px;grid-template-columns:minmax(240px,1.6fr) repeat(4,minmax(130px,1fr)) auto;align-items:end}.cameras-filter-field{display:grid;gap:4px;min-width:0}.cameras-filter-field>span{font-size:11px;letter-spacing:.03em;text-transform:uppercase;color:var(--ink-soft);font-weight:700}.cameras-filter-field>input,.cameras-filter-field>select{width:100%;min-width:0}.cameras-filter-actions{display:flex;align-items:end;justify-content:flex-end}.cameras-table-wrap{overflow-x:hidden}.cameras-table{table-layout:fixed}.cameras-table th:nth-child(1),.cameras-table td:nth-child(1){width:33%}.cameras-table th:nth-child(2),.cameras-table td:nth-child(2){width:18%}.cameras-table th:nth-child(3),.cameras-table td:nth-child(3){width:20%}.cameras-table th:nth-child(4),.cameras-table td:nth-child(4){width:9%}.cameras-table th:nth-child(5),.cameras-table td:nth-child(5){width:10%}.cameras-table th:nth-child(6),.cameras-table td:nth-child(6){width:10%}.camera-primary-cell{display:grid;gap:2px}.camera-primary-title-row{display:flex;align-items:center;gap:6px;min-width:0}.camera-primary-title{font-size:13px;line-height:1.25}.camera-rename-btn{min-width:32px;min-height:32px}.camera-primary-meta{display:block;font-size:11px;line-height:1.25;color:var(--ink-soft);overflow-wrap:anywhere}.camera-last-capture-cell{display:grid;gap:2px}.camera-outcome-cell{display:grid;gap:4px;align-content:start;justify-items:start}.camera-outcome-badge{display:inline-flex!important;width:-moz-fit-content!important;width:fit-content!important;min-width:0;max-width:-moz-max-content;max-width:max-content;justify-self:start!important;align-self:start;white-space:nowrap}.camera-outcome-detail{font-size:11px;line-height:1.25;color:var(--ink-soft);overflow-wrap:anywhere}.cameras-table td{vertical-align:top;overflow-wrap:anywhere}.battery-cell{display:grid;gap:4px;min-width:100px;justify-items:start}.battery-cell .badge{width:-moz-fit-content;width:fit-content}.battery-meter{display:inline-flex;width:100%;max-width:108px;height:7px;border-radius:999px;border:1px solid var(--line);overflow:hidden;background:#edf3ee}.battery-meter>span{display:block;height:100%;border-radius:999px}.battery-meter-ok>span{background:#2ca06a}.battery-meter-warn>span{background:#d1922e}.battery-meter-error>span{background:#c4475a}.battery-meter-neutral>span{background:#8ea0b2}.btn,input,select{font:inherit}.btn{border:1px solid var(--line);background:#fff;color:var(--ink);border-radius:11px;padding:8px 11px;font-weight:650;letter-spacing:.01em;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:transform .14s ease,box-shadow .16s ease,border-color .16s ease,background .16s ease,color .16s ease}.btn:hover{border-color:var(--line-strong);box-shadow:0 6px 14px #16261c1a;transform:translateY(-1px)}.btn:active{transform:translateY(0);box-shadow:none}.btn-with-icon{display:inline-flex;align-items:center;gap:6px}.btn-icon-only{display:inline-flex;align-items:center;min-width:38px;min-height:38px;justify-content:center;gap:0;padding:8px;line-height:0}.ui-icon{display:block;width:16px;height:16px;flex:0 0 auto}.toggle-switch{border:1px solid var(--line);background:#fff;color:var(--ink-soft);border-radius:999px;padding:4px 9px;font-size:12px;font-weight:600;line-height:1;min-height:26px;display:inline-flex;align-items:center;gap:7px;cursor:pointer;transition:all .15s ease}.toggle-switch .toggle-dot{width:8px;height:8px;border-radius:999px;background:#94a3b8;flex:0 0 auto;transition:all .15s ease}.toggle-switch.is-on{color:#0f6a4e;border-color:#86efac;background:#ecfdf3}.toggle-switch.is-on .toggle-dot{background:#16a34a}.toggle-switch.is-off{color:var(--ink-soft)}.toggle-switch.is-disabled{opacity:.55;cursor:not-allowed}.btn.btn-primary{color:#f6fffc;border-color:#0f6957;background:linear-gradient(180deg,var(--brand-2),var(--brand))}.hero .btn.btn-primary{border-color:#c2ffe49e;background:#0a594bcc;color:#ecfff7}.btn.btn-danger{color:#941f31;border-color:#f0b2be;background:#fff3f5}.btn.btn-alt{color:#0c5d71;border-color:#9fc7d3;background:#eaf6fa}.btn.btn-success{color:#0e6a4f;border-color:#9ed8bf;background:#ecfbf4}.btn.btn-ghost{color:var(--ink-soft);border-style:solid;background:transparent}.dark body .btn{border-color:#355247;background:#1a2a24;color:#e7f3ee}.dark body .toggle-switch{border-color:#355247;background:#1a2a24;color:#bdd2c8}.dark body .toggle-switch .toggle-dot{background:#9dc0b2}.dark body .toggle-switch.is-on{border-color:#2bb89a;background:#1f3f35;color:#e7fff6}.dark body .toggle-switch.is-on .toggle-dot{background:#4dd4b5}.dark body .config-field input[type=checkbox]{accent-color:#2bb89a}.dark body .btn.btn-primary{color:#f2fffb;border-color:#2bb89a;background:linear-gradient(180deg,#23997e,#177660)}.dark body .hero .btn.btn-primary{border-color:#c5ffe98c;background:#08382eb8}.dark body .btn.btn-danger{color:#ffe8ed;border-color:#ba556a;background:#4c2632}.dark body .btn.btn-alt{color:#d5edf5;border-color:#4f8090;background:#1f3640}.dark body .btn.btn-success{color:#def9ef;border-color:#4b8b74;background:#1e4738}.dark body .btn.btn-ghost{color:#bbd5ca;border-color:#4a6a5d;background:transparent}.dark body .battery-meter{border-color:#355247;background:#1a2b24}input,select{border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--ink);padding:8px 10px;transition:border-color .16s ease,box-shadow .16s ease}input[type=checkbox]{accent-color:#16a34a}.dark body input,.dark body select{border-color:#355247;background:#1a2a24;color:#e7f3ee}.dark body input[type=checkbox]{accent-color:#2bb89a}.btn:focus-visible,input:focus-visible,select:focus-visible{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px var(--focus-ring)}.muted,small{color:var(--ink-soft)}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.table-wrap{max-height:490px;overflow:auto;border:1px solid var(--line);border-radius:12px;background:#ffffffad;box-shadow:inset 0 1px #fff6}.desktop-only{display:block}.mobile-only{display:none!important}.mobile-data-list{display:grid;gap:10px}.mobile-data-card{border:1px solid var(--line);border-radius:12px;background:#f8fcf7;padding:10px;display:grid;gap:6px}.mobile-data-title{font-size:15px}.mobile-data-row{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.mobile-data-row>small{color:var(--ink-soft)}.mobile-data-row>strong{text-align:right;overflow-wrap:anywhere}.overview-desktop-table{display:block}.overview-mobile-list{display:none}table{width:100%;border-collapse:collapse;font-size:13px;line-height:1.38}th,td{padding:9px 10px;border-bottom:1px solid #deeadf;text-align:left}th{position:sticky;top:0;background:#e8f2ea;z-index:1}.sortable-th{padding:0}.sort-th-btn{width:100%;border:0;background:transparent;color:inherit;font:inherit;font-size:inherit;font-weight:inherit;line-height:inherit;padding:9px 10px;display:flex;align-items:center;justify-content:space-between;gap:8px;text-align:left;cursor:pointer;transition:background .16s ease,color .16s ease}.sort-th-btn:hover{background:#137a671f}.sort-th-btn:focus-visible{outline:none;box-shadow:inset 0 0 0 2px var(--focus-ring)}.sort-icon{font-size:12px;opacity:.6;line-height:1;flex:0 0 auto}.sort-th-btn-asc .sort-icon,.sort-th-btn-desc .sort-icon{opacity:1;color:var(--brand)}tbody tr:nth-child(2n){background:#ecf4ed9e}.data-table{min-width:0;table-layout:fixed}.data-table th{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:#30453a}.data-table td{vertical-align:top;overflow-wrap:anywhere}.data-table th{overflow-wrap:anywhere}.data-table tbody tr:hover{background:#c5e1d161}.sticky-first-col th:first-child,.sticky-first-col td:first-child{position:sticky;left:0;z-index:2;background:#edf5ee;box-shadow:1px 0 #d8e4d8}.sticky-first-col th:first-child{z-index:3}pre{margin-top:10px;max-height:500px;width:100%;overflow:auto;border:1px solid var(--line);border-radius:10px;background:#f6faf5;padding:9px;font-family:Cascadia Code,Consolas,monospace;font-size:12px;white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word}.form-grid{display:grid;gap:7px;grid-template-columns:1fr 1fr}.runtime-config h3,.runtime-config h4{margin:0}.runtime-config{display:grid;gap:10px}.config-group{border:1px solid var(--line);border-radius:10px;background:#f8fcf7;padding:9px;display:grid;gap:8px}.config-grid{display:grid;gap:8px;grid-template-columns:repeat(3,minmax(0,1fr))}.config-field{display:grid;gap:4px;align-content:start}.config-field input[type=checkbox]{width:18px;height:18px;accent-color:#16a34a}.config-separator{margin:11px 0;border-top:1px dashed var(--line)}.settings-root{display:grid;gap:10px}.settings-preview{border:1px solid var(--line);border-radius:10px;border-color:#7ec9ab;background:#e8f8f0;color:#196d4f;padding:8px 10px}.settings-warning{border:1px solid #f3c2c9;background:#fff2f4;color:#8c2e3f;border-radius:10px;padding:8px 10px;display:grid;gap:4px}.settings-sync-trigger-note{border:1px solid #b8d7ca;background:#eef8f2;color:#1f4e3c;border-radius:10px;padding:9px 10px;display:grid;gap:6px}.settings-sync-trigger-note.is-active{border-color:#7fc2a6;background:#e5f5ec}.settings-sync-trigger-note-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.settings-sync-trigger-note ul{margin:0;padding-left:18px;display:grid;gap:4px}.settings-sync-trigger-note li{line-height:1.35}.settings-sync-trigger-note code{font-family:IBM Plex Mono,Fira Mono,SFMono-Regular,Consolas,monospace;font-size:12px;border-radius:6px;padding:1px 5px;background:#137a6724;color:#0d5e4b}.settings-sections{display:grid;gap:10px}.settings-section{border:1px solid var(--line);background:#f8fcf7;border-radius:10px;padding:10px;display:grid;gap:8px}.settings-section h3,.settings-section-title{margin:0}.settings-section-content{display:grid;gap:8px}.settings-section-content[hidden]{display:none}.settings-section.is-collapsible{padding:0;gap:0;overflow:hidden}.settings-section-toggle{width:100%;border:0;border-radius:10px;background:transparent;color:var(--ink);padding:9px 10px;font:inherit;display:flex;align-items:center;justify-content:space-between;gap:10px;text-align:left;cursor:pointer;transition:background .16s ease,color .16s ease}.settings-section-toggle:hover{background:#137a6714}.settings-section-toggle:focus-visible{outline:none;box-shadow:0 0 0 2px var(--focus-ring)}.settings-section-toggle.is-open{background:#137a671f;color:var(--brand)}.settings-section-toggle-main{min-width:0;display:grid;gap:2px}.settings-section-toggle-main>.muted{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.settings-section-toggle-meta{display:inline-flex;align-items:center;gap:8px;flex-shrink:0}.settings-section-chevron{width:16px;height:16px;transform:rotate(90deg);transition:transform .22s ease}.settings-section-toggle.is-open .settings-section-chevron{transform:rotate(270deg)}.settings-section.is-collapsible .settings-section-content.is-open{border-top:1px dashed var(--line);padding:10px}.account-actions{display:grid;gap:8px;min-width:0;border-top:1px dashed var(--line);padding-top:8px}.account-action-row{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.account-actions input{width:100%}.account-override-hint{display:block;margin-top:4px;line-height:1.3}.account-create{border:1px solid var(--line);border-radius:12px;padding:10px;background:linear-gradient(180deg,#f8fcf9,#f2f7f3);display:grid;gap:8px}.account-create h3{margin:0}.account-create .row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr) auto;align-items:end;gap:8px}.account-create .row input{width:100%;min-width:0}.danger-text{color:#b91c1c;font-size:12px}.dark body .danger-text{color:#fca5a5}.settings-field-grid{display:grid;gap:8px;grid-template-columns:repeat(3,minmax(0,1fr))}.settings-field{border:1px solid #dce7db;border-radius:8px;background:#fff;padding:8px;display:grid;gap:6px}.settings-field.is-dependent{border-left:3px solid #8bc8b0;padding-left:10px;background:linear-gradient(90deg,#137a6714,#137a6700 44%),#fff}.settings-field.readonly{background:#f4f7fb}.settings-dependent-hint{margin-top:2px}.settings-readonly-grid{display:grid;gap:8px;grid-template-columns:repeat(3,minmax(0,1fr))}.settings-readonly-item{border:1px solid #dce7db;border-radius:8px;padding:8px;display:grid;gap:4px;background:#fff}.checkbox-row{display:inline-flex;align-items:center;gap:8px}.settings-section-danger{border-color:#f0b2be;background:#fff7f8}.settings-reset-callout{border:1px solid #f0b2be;border-radius:10px;background:#fff1f4;color:#8b1d30;padding:8px 10px}.settings-reset-options{display:grid;gap:8px;grid-template-columns:repeat(2,minmax(0,1fr))}.settings-reset-option{border:1px solid #f1c4ce;border-radius:10px;background:#fff;padding:8px 10px;display:grid;grid-template-columns:auto minmax(0,1fr);gap:8px;align-items:start}.settings-reset-option input[type=checkbox]{width:18px;height:18px;margin:2px 0 0}.settings-reset-option>div{display:grid;gap:2px}.settings-reset-actions{display:grid;gap:8px;grid-template-columns:minmax(0,280px) auto;align-items:end}.settings-reset-summary{border:1px solid #e2dfd5;border-radius:10px;background:#fffdf4;padding:8px 10px;display:grid;gap:8px}.settings-reset-summary-grid{display:grid;gap:8px;grid-template-columns:repeat(2,minmax(0,1fr))}.settings-reset-summary-item{border:1px dashed #e4dfcd;border-radius:8px;background:#fff;padding:6px 8px;display:grid;gap:2px}.overview-root{margin-top:12px;display:grid;gap:10px}.overview-kv{display:grid;gap:8px;grid-template-columns:repeat(4,minmax(0,1fr))}.overview-kv.overview-kv-scan{grid-template-columns:repeat(3,minmax(0,1fr))}.overview-quick-grid{display:grid;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.overview-quick-panel{border:1px solid var(--line);border-radius:12px;background:#f8fcf7;padding:10px;display:grid;gap:8px;align-self:start;height:-moz-fit-content;height:fit-content}.overview-quick-panel h3{margin:0}.overview-quick-list{display:grid;gap:8px}.overview-quick-list-scroll{max-height:min(52vh,620px);overflow-y:auto;padding-right:4px}.overview-quick-item{border:1px solid var(--line);border-radius:10px;background:#fff;padding:8px;display:grid;gap:6px}.subpage-shell{margin-top:12px;display:grid;gap:10px}.subpage-header{display:grid;gap:4px}.subpage-header p{margin:0}.overview-kv>div{border:1px solid var(--line);border-radius:10px;background:#f8fcf7;padding:8px;display:grid;gap:4px}.overview-error-banner{margin:0 0 10px;border:1px solid #f1b9c4;border-radius:10px;background:#fff2f5;color:#8f2f42;padding:8px 10px}.overview-table-toolbar{margin-bottom:8px;display:grid;gap:8px;grid-template-columns:minmax(220px,1fr) repeat(2,minmax(180px,220px)) auto;align-items:center}.overview-account-cell{display:inline-flex;align-items:center;gap:6px}.overview-row-issue td{background:#ffd6e233}.overview-row-new td{box-shadow:inset 0 -2px #137a6733}.overview-detail-row td{background:#e2f4ed8c;border-top:0}.overview-detail-drawer{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.overview-detail-drawer>div{border:1px solid var(--line);border-radius:10px;background:#f7fbf8;padding:8px;display:grid;gap:4px}.mobile-data-card-issue{border-color:#e4adb9}.capture-page{display:grid;gap:12px}.capture-page-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,440px);gap:10px;align-items:start}.capture-page-copy h2{margin:0}.capture-page-copy small{display:block;margin-top:4px}.capture-page-kpis{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.camera-status-page .capture-page-head{grid-template-columns:minmax(220px,.55fr) minmax(520px,1.45fr);gap:12px}.camera-status-page .capture-page-copy{display:grid;align-content:center;gap:6px}.camera-status-page .capture-page-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}.capture-kpi-card{border:1px solid var(--line);border-radius:12px;padding:8px 10px;background:linear-gradient(150deg,#f7fcf8,#edf6f1);display:grid;gap:3px}.capture-kpi-card small{font-size:11px;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-soft);font-weight:700}.capture-kpi-card strong{font-size:15px}.capture-toolbar{border:1px solid var(--line);border-radius:12px;background:linear-gradient(180deg,#f8fcf9,#f2f7f3);padding:10px;display:grid;gap:10px}.capture-filters-grid{display:grid;gap:8px 10px;grid-template-columns:repeat(4,minmax(0,1fr))}.capture-filter-field{display:grid;gap:4px;min-width:0}.capture-filter-field>span{font-size:11px;letter-spacing:.02em;text-transform:uppercase;color:var(--ink-soft);font-weight:700}.capture-filter-field>select,.capture-filter-field>input{width:100%;min-width:0}.capture-filter-field.is-wide{grid-column:span 2}.capture-filter-field-preset .heat-preset-row{width:100%}.capture-filter-field-preset .heat-preset-row>select{flex:1 1 auto;min-width:0}.capture-filter-field-preset .heat-preset-row .overflow-menu>.btn{min-width:42px}.capture-toolbar-foot{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}.capture-active-hint{display:block}.capture-reset-btn:disabled{opacity:.66}.captures-grid{margin-top:2px;display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}.capture-card{border:1px solid var(--line);border-radius:12px;background:#f8fcf7;overflow:hidden;display:grid;grid-template-rows:auto 1fr;min-height:100%;transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease}.capture-card:hover{border-color:var(--line-strong);box-shadow:0 12px 24px #0e1e161f;transform:translateY(-1px)}.capture-card-media{position:relative}.capture-preview-trigger{width:100%;padding:0;border:0;margin:0;display:block;background:transparent;text-align:left;cursor:zoom-in}.capture-preview-trigger:focus-visible{outline:3px solid var(--focus-ring);outline-offset:0}.capture-preview-trigger .capture-image{transition:transform .2s ease}.capture-preview-trigger:hover .capture-image{transform:scale(1.015)}.capture-image{width:100%;aspect-ratio:16 / 10;height:auto;-o-object-fit:cover;object-fit:cover;background:#eaf2ea;display:block}.capture-image-fallback{min-height:170px;aspect-ratio:16 / 10;display:flex;align-items:center;justify-content:center;color:var(--ink-soft);background:#eef4ef;padding:10px;text-align:center}.capture-card-overlay{position:absolute;inset:auto 8px 8px 8px;display:flex;gap:6px;flex-wrap:wrap;pointer-events:none}.capture-chip{display:inline-flex;align-items:center;max-width:100%;padding:2px 8px;border-radius:999px;border:1px solid rgba(255,255,255,.46);background:#111f1894;color:#f4fbf7;font-size:11px;font-weight:700;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.capture-meta{padding:10px;display:grid;gap:8px}.capture-meta-head{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.capture-meta-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 8px}.capture-meta-item{display:grid;gap:2px;min-width:0}.capture-meta-item small{font-size:11px;color:var(--ink-soft)}.capture-meta-item strong{font-size:12px}.capture-empty-state{border-style:dashed}.capture-empty-state .capture-image-fallback{font-weight:600}.capture-preview-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:210;background:#09140f8c;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:grid;place-items:center;padding:clamp(10px,2vw,22px)}.capture-preview-modal{width:min(1120px,100%);max-height:calc(100vh - 22px);border:1px solid var(--line);border-radius:14px;background:var(--panel);box-shadow:0 20px 44px #0a140f59;padding:12px;display:grid;gap:10px}.capture-preview-head{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.capture-preview-head-copy{min-width:0;display:grid;gap:2px}.capture-preview-media{min-height:0;border:1px solid var(--line);border-radius:10px;background:#eaf2ea;overflow:auto;overscroll-behavior:contain;scrollbar-gutter:stable both-edges;display:grid;place-items:center;padding:clamp(6px,1vw,12px);box-shadow:inset 0 1px #ffffff73}.capture-preview-media .capture-image{width:auto;max-width:100%;max-height:calc(100vh - 180px);aspect-ratio:auto;-o-object-fit:contain;object-fit:contain;background:transparent}.capture-preview-media .capture-image-fallback{width:100%;min-height:min(55vh,440px)}@media (prefers-reduced-motion: reduce){.capture-card,.capture-card:hover,.capture-preview-trigger .capture-image{transition:none;transform:none}.capture-preview-backdrop{-webkit-backdrop-filter:none;backdrop-filter:none}}.health-panel,.alarm-panel{display:grid;gap:8px}.health-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.health-grid>div{border:1px solid var(--line);border-radius:10px;padding:8px;background:#f8fbf7;display:grid;gap:3px}.health-grid-loading>div{position:relative;overflow:hidden}.health-grid-loading>div:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,#fff0,#ffffff85,#fff0);transform:translate(-100%);animation:skeleton-sweep 1.1s ease-in-out infinite}.alarm-item{border:1px solid var(--line);border-radius:10px;background:#f8fbf7;padding:8px;display:grid;gap:4px}.alarm-meta-row{display:flex;align-items:center;justify-content:space-between;gap:8px}.alarm-group{border:1px solid var(--line);border-radius:12px;background:#f3faf6;padding:8px;display:grid;gap:8px}.alarm-group-head{border-bottom:1px dashed var(--line);padding-bottom:6px}.alarm-item-new{border-color:#6cb9a5;background:#eefbf5}.alarm-item-acked{opacity:.72}.account-bulk-bar{margin-top:8px;border:1px dashed var(--line);border-radius:10px;padding:8px;display:grid;gap:8px}.account-bulk-wrap{margin-top:8px;display:grid;gap:8px}.account-bulk-controls{align-items:center;gap:8px}.account-bulk-action-label{font-size:12px;font-weight:700;color:var(--ink-soft)}.account-bulk-controls>select{min-width:170px}.map-root{margin-top:12px;display:grid;grid-template-columns:minmax(0,1fr);gap:0;position:relative;align-items:start}.map-root.is-mobile-layout{gap:10px}.map-view-panel-modern{grid-column:1 / -1;grid-row:1;min-height:clamp(640px,calc(100vh - 170px),940px);position:relative;z-index:1;padding:8px}.map-view-panel-modern .camera-map-canvas{height:clamp(640px,calc(100vh - 250px),900px)}.map-overlay-top{position:absolute;top:12px;left:12px;right:12px;z-index:635;pointer-events:none}.map-overlay-top-row{display:grid;grid-template-columns:minmax(320px,560px) auto;align-items:start;gap:10px}.map-panel-shell{pointer-events:auto;width:min(560px,100%);display:grid;gap:0}.map-overlay-actions{pointer-events:auto;display:inline-flex;align-items:center;justify-self:end;gap:8px}.map-inmap-controls{position:absolute;top:10px;right:10px;z-index:621;display:grid;gap:8px;justify-items:end;pointer-events:auto;max-width:calc(100% - 20px)}.map-inmap-controls .map-quick-filters{justify-content:flex-end}.map-inmap-controls-actions{display:inline-flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.map-inmap-controls .map-toolbar-btn{min-height:36px}.map-inmap-controls .map-locate-inmap-btn{position:static;right:auto;bottom:auto}.map-searchbar-wrap{display:grid;gap:6px}.map-searchbar{border:1px solid var(--line);border-radius:14px;background:color-mix(in srgb,var(--panel) 92%,#ffffff);box-shadow:0 10px 24px #0a181233;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:6px;padding:6px;transition:border-color .18s ease,box-shadow .18s ease,background .18s ease}.map-searchbar.is-panel-open{border-bottom-left-radius:0;border-bottom-right-radius:0;box-shadow:0 12px 26px #0a18123d}.map-searchbar:focus-within{border-color:var(--line-strong);box-shadow:0 0 0 3px var(--focus-ring)}.map-searchbar-input-wrap{min-width:0;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:6px;border:1px solid transparent;border-radius:10px;padding:0 2px}.map-searchbar-input-wrap>input{width:100%;min-height:34px;border:0;padding:6px 4px;background:transparent}.map-searchbar-input-wrap>input:focus{box-shadow:none;outline:none}.map-searchbar-leading-icon{color:var(--ink-soft)}.map-searchbar-icon-btn,.map-searchbar-clear-btn{width:34px;height:34px;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--ink-soft);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:border-color .16s ease,background .16s ease,color .16s ease,transform .16s ease}.map-searchbar-icon-btn:hover:not(:disabled),.map-searchbar-clear-btn:hover:not(:disabled){border-color:var(--line-strong);background:#137a671a;color:var(--brand);transform:translateY(-1px)}.map-searchbar-icon-btn.is-active{border-color:#137a6780;background:#137a6726;color:var(--brand)}.map-searchbar-icon-btn:focus-visible,.map-searchbar-clear-btn:focus-visible{outline:none;box-shadow:0 0 0 3px var(--focus-ring)}.map-searchbar-icon-btn:disabled{opacity:.55;cursor:not-allowed}.map-searchbar-summary{color:var(--ink-soft);font-size:12px;margin-left:2px}.map-quick-filters{display:inline-flex;align-items:center;gap:6px;flex-wrap:wrap}.map-quick-filter-btn{min-height:34px;border:1px solid var(--line);border-radius:999px;background:color-mix(in srgb,var(--panel) 92%,#ffffff);color:var(--ink-soft);padding:6px 11px;display:inline-flex;align-items:center;gap:6px;font:inherit;font-size:12px;font-weight:700;cursor:pointer;transition:border-color .16s ease,background .16s ease,color .16s ease}.map-quick-filter-btn:hover{border-color:var(--line-strong);background:#137a6714}.map-quick-filter-btn.is-active{border-color:#137a6780;background:#137a6724;color:var(--brand)}.map-quick-filter-btn:focus-visible{outline:none;box-shadow:0 0 0 3px var(--focus-ring)}.map-side-panel{border:1px solid var(--line);border-top:0;border-radius:0 0 14px 14px;background:color-mix(in srgb,var(--panel) 96%,#ffffff);box-shadow:0 16px 30px #0a18123d;padding:10px;display:grid;gap:10px;max-height:min(68vh,680px);overflow:auto;animation:map-side-panel-in .18s ease}@keyframes map-side-panel-in{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.map-side-panel-head{display:flex;align-items:baseline;justify-content:space-between;gap:8px;flex-wrap:wrap}.map-side-panel-head h3{margin:0}.map-side-panel-section-title{margin:0;font-size:13px;color:var(--ink-soft);letter-spacing:.01em}.map-mobile-controls{margin-top:10px;display:grid;gap:8px}.map-mobile-controls .map-panel-shell,.map-mobile-controls .map-searchbar-wrap{width:100%}.map-mobile-controls .map-side-panel{border-top:1px solid var(--line);border-radius:12px;max-height:none}.map-view-status-pill{color:var(--ink-soft);font-size:12px}.map-form-panel,.map-view-panel{display:grid;gap:8px;align-content:start}.map-view-panel{grid-column:1 / -1;grid-row:1;min-height:clamp(620px,calc(100vh - 180px),920px);position:relative;z-index:1}.map-view-panel>h2{margin-bottom:0}.map-view-panel>h2,.map-view-panel>small.muted{display:none}.map-form-panel{grid-column:1 / -1;grid-row:1;z-index:12;width:min(420px,calc(100% - 24px));max-height:calc(100% - 24px);margin:12px;padding:10px;overflow:auto;border-radius:16px;-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px);background:color-mix(in srgb,var(--panel) 88%,#ffffff);box-shadow:0 16px 36px #081a143d}.map-form-panel.is-mobile-open{grid-row:auto;position:relative;z-index:2;width:100%;max-height:none;margin:0;border-radius:14px;-webkit-backdrop-filter:none;backdrop-filter:none}.map-form-panel>h2,.map-form-panel>small.muted{margin:0}.map-form-panel .row.spread h2,.map-form-panel .row.spread small{margin:0}.map-root.is-desktop-layout .map-form-panel input,.map-root.is-desktop-layout .map-form-panel select{min-height:34px;padding:6px 9px;font-size:13px}.map-root.is-desktop-layout .map-form-panel .btn{min-height:34px;padding:6px 10px;font-size:12px}.map-desktop-toolbar{position:absolute;left:14px;top:14px;z-index:621;display:inline-flex;align-items:center;gap:8px;flex-wrap:wrap;max-width:calc(100% - 28px)}.map-toolbar-btn{min-height:34px;padding:6px 10px;border-radius:10px;border-color:#bfd0c5;background:#ffffffeb;box-shadow:0 8px 18px #0a18122e}.map-toolbar-btn.is-active{border-color:#75b59d;background:#eaf8f2;color:#126a53}.map-legend-close-btn{min-width:30px;min-height:30px;padding:4px}.map-legend-toggle-btn,.map-legend-close-btn{min-width:36px;min-height:36px;padding:7px}.map-form{display:grid;gap:6px}.map-segmented-control{display:inline-flex;border:1px solid var(--line);border-radius:10px;overflow:hidden;width:-moz-fit-content;width:fit-content;max-width:100%}.map-segmented-btn{border:0;background:#fff;color:var(--ink-soft);font:inherit;font-size:12px;font-weight:700;padding:7px 12px;cursor:pointer;transition:background .16s ease,color .16s ease}.map-segmented-btn+.map-segmented-btn{border-left:1px solid var(--line)}.map-segmented-btn.is-active{background:#137a671f;color:var(--brand)}.map-segmented-btn:focus-visible{outline:none;box-shadow:inset 0 0 0 2px var(--focus-ring)}.map-edit-mode-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.map-accordion{border:1px dashed var(--line);border-radius:12px;background:#f8fcf7;padding:6px;display:grid;gap:6px}.map-accordion-toggle{width:100%;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--ink);padding:9px 10px;font:inherit;font-weight:700;display:flex;align-items:center;justify-content:space-between;gap:8px;text-align:left;cursor:pointer;transition:border-color .16s ease,background .16s ease,color .16s ease}.map-accordion-toggle:hover{border-color:var(--line-strong);background:#137a6714}.map-accordion-toggle:focus-visible{outline:none;box-shadow:0 0 0 2px var(--focus-ring)}.map-accordion-toggle.is-open{border-color:#137a6773;background:#137a671f;color:var(--brand)}.map-accordion-chevron{width:16px;height:16px;display:inline-flex;align-items:center;justify-content:center;transition:transform .2s ease}.map-accordion-toggle.is-open .map-accordion-chevron{transform:rotate(90deg)}.map-accordion-content{overflow:hidden;max-height:0;opacity:0;padding:0 2px;transition:max-height .28s ease,opacity .2s ease,padding .2s ease}.map-accordion-content.is-open{max-height:2200px;opacity:1;padding:4px 2px 2px}.map-helper-text{color:var(--ink-soft);font-size:12px}.map-view-panel>.map-helper-text{position:absolute;right:14px;top:14px;z-index:604;margin:0;padding:5px 8px;border-radius:999px;border:1px solid rgba(138,172,156,.55);background:#f7fcf8e6;max-width:min(520px,calc(100% - 28px));overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.map-view-panel>.map-helper-text+.map-helper-text{top:44px}.map-geolocate-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:180;background:#08120e6b;display:grid;place-items:center;padding:16px}.map-geolocate-modal{width:min(100%,460px);border:1px solid var(--line);border-radius:14px;background:var(--panel);box-shadow:0 18px 40px #0a140f47;padding:14px;display:grid;gap:10px}.map-geolocate-head{display:flex;align-items:center;gap:10px}.map-geolocate-head h3{margin:0}.map-geolocate-icon{width:34px;height:34px;border-radius:999px;border:1px solid rgba(19,122,103,.32);background:#137a671f;color:var(--brand);display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto}.map-filters{display:grid;gap:6px}.map-filters h3{margin:2px 0 0}.map-filter-grid{display:grid;gap:6px}.map-label{color:var(--ink-soft);font-size:12px;font-weight:700}.map-account-picker-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center}.map-account-chip-list{display:flex;flex-wrap:wrap;gap:6px}.map-account-chip{border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--ink);display:inline-flex;align-items:center;gap:6px;padding:4px 8px;max-width:100%}.map-account-chip>span{font-size:12px;font-weight:600;max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.map-account-chip-remove{width:18px;height:18px;border:1px solid var(--line);border-radius:999px;background:#f3f8f1;color:var(--ink-soft);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;font:inherit;font-size:11px;line-height:1;padding:0;transition:border-color .16s ease,background .16s ease,color .16s ease}.map-account-chip-remove:hover:not(:disabled){border-color:var(--line-strong);background:#137a671f;color:var(--brand)}.map-account-chip-remove:disabled{opacity:.55;cursor:not-allowed}.camera-map-canvas{border:1px solid var(--line);border-radius:12px;height:clamp(620px,calc(100vh - 240px),860px);overflow:hidden}.map-location-list{display:grid;gap:8px}.map-location-list h3{margin:2px 0 0}.map-location-item{border:1px solid var(--line);border-radius:10px;padding:8px;background:#f7fcf6;display:grid;gap:6px}.map-location-group{display:grid;gap:6px}.map-location-group-summary{display:flex;align-items:center;justify-content:space-between;gap:8px;cursor:pointer;list-style:none}.map-location-group-summary::-webkit-details-marker{display:none}.map-location-group-list{display:grid;gap:8px}.map-location-group-list.is-scrollable{max-height:260px;overflow-y:auto;padding-right:4px}.map-location-entry{border:1px solid var(--line);border-radius:8px;padding:8px;background:#fff;display:grid;gap:6px}.map-location-entry-main{border:0;background:transparent;padding:0;text-align:left;color:inherit;font:inherit;display:grid;gap:2px;cursor:pointer}.map-location-entry-main strong{font-size:13px}.map-location-entry-actions{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.map-popup{display:grid;gap:6px;min-width:220px}.map-popup-title{display:block;font-size:13px}.map-popup-subtitle{display:block;font-size:12px}.map-popup-row{font-size:12px;color:#374151}.map-popup-list{display:grid;gap:6px}.map-popup-list.map-popup-list-scroll{max-height:180px;overflow-y:auto;padding-right:4px}.map-popup-location-item{border-top:1px dashed #cbd5e1;padding-top:6px}.map-popup-location-item:first-child{border-top:0;padding-top:0}.map-sync-legend{border:1px dashed var(--line);border-radius:10px;background:#f8fcf7;padding:8px;display:grid;gap:6px}.map-sync-legend.is-desktop-floating{position:absolute;left:14px;bottom:14px;width:min(300px,calc(100% - 28px));max-height:220px;overflow:auto;z-index:605;background:color-mix(in srgb,#f8fcf7 92%,#ffffff);box-shadow:0 12px 26px #0a181233}.map-sync-legend.is-mobile-inline{position:static;width:100%;max-height:none;box-shadow:none}.map-sync-legend h3{margin:0}.map-sync-legend-grid{display:grid;gap:6px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.map-sync-legend-item{display:inline-flex;align-items:center;gap:8px;min-width:0}.map-hardware-legend-item{display:inline-flex;align-items:center;gap:8px}.map-sync-legend-text{display:grid;gap:2px;min-width:0}.map-sync-legend-swatch{width:14px;height:14px;border-radius:999px;border:2px solid transparent;flex:0 0 auto}.map-hardware-pin-wrapper{background:transparent;border:0}.map-hardware-pin{width:24px;height:24px;border-radius:999px;border:2px solid #92400e;background:#fbbf24;color:#4a2304;display:inline-flex;align-items:center;justify-content:center;font-size:13px;line-height:1;box-shadow:0 1px 3px #081a1440}.map-hardware-pin-inline{width:18px;height:18px;font-size:10px}.map-canvas-wrap{position:relative;isolation:isolate;--map-control-edge: 10px;--map-zoom-stack-height: 52px;--map-control-gap: 8px}.map-user-pin{width:18px;height:18px;border-radius:999px;border:2px solid #1d4ed8;background:#60a5fa;display:inline-flex;box-shadow:0 0 0 2px #3b82f640}.map-locate-inmap-btn{position:absolute;right:var(--map-control-edge);bottom:calc(var(--map-control-edge) + var(--map-zoom-stack-height) + var(--map-control-gap) + 25px);z-index:620;width:42px;height:42px;border:1px solid #c8d7ce;border-radius:12px;background:#fffffff0;color:#185f87;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 6px 16px #0f2a1f38;transition:transform .16s ease,border-color .16s ease,background .16s ease,color .16s ease}.map-locate-inmap-btn:hover:not(:disabled){transform:translateY(-1px);border-color:#7db4c9;background:#fff}.map-locate-inmap-btn:disabled{opacity:.78;cursor:progress}.map-locate-inmap-btn.is-active{border-color:#4f9f84;color:#0f6f56;background:#e7f7f1}.map-locate-inmap-btn.is-loading{animation:map-locate-pulse .9s ease-in-out infinite alternate}@keyframes map-locate-pulse{0%{transform:scale(1)}to{transform:scale(1.04)}}.dark body .camera-map-canvas{border-color:#355247;background:#0f1915}.dark body .map-root.map-base-street .camera-map-canvas .leaflet-tile{filter:brightness(.58) invert(1) hue-rotate(185deg) saturate(.35) contrast(1.08)}.dark body .map-root.map-base-satellite .camera-map-canvas .leaflet-tile{filter:brightness(.72) saturate(.82) contrast(1.04)}.dark body .camera-map-canvas .leaflet-control-attribution{background:#0f1915db;color:#b0d4c5}.dark body .camera-map-canvas .leaflet-control-attribution a{color:#8ed8be}.dark body .camera-map-canvas .leaflet-control-zoom,.dark body .camera-map-canvas .leaflet-bar{border-color:#3f5d4f;box-shadow:0 8px 18px #040a0880}.dark body .camera-map-canvas .leaflet-control-zoom a,.dark body .camera-map-canvas .leaflet-bar a{border-color:#3f5d4f;background:#1a2d25;color:#d7eee5}.dark body .camera-map-canvas .leaflet-control-zoom a:hover,.dark body .camera-map-canvas .leaflet-bar a:hover{background:#214136;color:#e8fff7}.dark body .camera-map-canvas .leaflet-control-zoom a.leaflet-disabled,.dark body .camera-map-canvas .leaflet-bar a.leaflet-disabled{background:#18261f;color:#6f8a7d}.dark body .map-form-panel{background:color-mix(in srgb,#13211c 88%,#1f2f28);box-shadow:0 18px 36px #040a0880}.dark body .map-searchbar{border-color:#3a584b;background:color-mix(in srgb,#13211c 90%,#1c2d26);box-shadow:0 12px 24px #040a087a}.dark body .map-searchbar.is-panel-open{box-shadow:0 14px 28px #040a088f}.dark body .map-searchbar-leading-icon{color:#b0d4c5}.dark body .map-searchbar-icon-btn,.dark body .map-searchbar-clear-btn{border-color:#4b6d5e;background:#1b3027;color:#b7d3c7}.dark body .map-searchbar-icon-btn:hover:not(:disabled),.dark body .map-searchbar-clear-btn:hover:not(:disabled){border-color:#5f8b77;background:#214136;color:#d7fff2}.dark body .map-searchbar-icon-btn.is-active{border-color:#58ba99;background:#2bb89a38;color:#d7fff2}.dark body .map-searchbar-summary,.dark body .map-view-status-pill{color:#b0d4c5}.dark body .map-quick-filter-btn{border-color:#3f5d4f;background:#14231df0;color:#c0dbcf}.dark body .map-quick-filter-btn:hover{border-color:#5e8874;background:#203930eb}.dark body .map-quick-filter-btn.is-active{border-color:#58ba99;background:#2bb89a38;color:#d7fff2}.dark body .map-root.is-mobile-layout .map-inmap-controls .map-quick-filters{background:#14231de6;box-shadow:0 10px 20px #03080766}.dark body .map-side-panel{border-color:#355247;background:color-mix(in srgb,#172822 90%,#20332b);box-shadow:0 20px 38px #0308078f}.dark body .map-toolbar-btn{border-color:#3f5d4f;background:#14231deb;color:#d7eee5}.dark body .map-toolbar-btn.is-active{border-color:#58ba99;background:#143c2fe6;color:#a5f0d8}.dark body .map-location-item{background:#172822}.dark body .map-location-entry{background:#1a2d25;border-color:#355247}.dark body .map-popup-row{color:#d7eee5}.dark body .map-helper-text{color:#b0d4c5}.dark body .map-view-panel>.map-helper-text{border-color:#496c5eb3;background:#14241ee6}.dark body .map-account-chip{border-color:#355247;background:#1a2d25;color:#d7eee5}.dark body .map-account-chip-remove{border-color:#4d7061;background:#233a31;color:#d7eee5}.dark body .map-account-chip-remove:hover:not(:disabled){background:#2a473c}.dark body .map-geolocate-backdrop{background:#0308079e}.dark body .map-geolocate-modal{border-color:#355247;background:#13211c;box-shadow:0 22px 44px #03080785}.dark body .map-geolocate-icon{border-color:#4ccbaa75;background:#2bb89a33;color:#d7fff2}.dark body .map-popup-location-item{border-top-color:#3d5f51}.dark body .map-sync-legend{background:#172822;border-color:#355247}.dark body .map-sync-legend.is-desktop-floating{background:color-mix(in srgb,#172822 88%,#20332b)}.dark body .map-accordion{background:#172822;border-color:#355247}.dark body .map-accordion-toggle{background:#1a2d25;border-color:#355247;color:#e7f3ee}.dark body .map-accordion-toggle:hover{border-color:#4d7061;background:#2bb89a29}.dark body .map-accordion-toggle.is-open{border-color:#4ccbaa8f;background:#2bb89a33;color:#d7fff2}.dark body .map-segmented-control{border-color:#355247}.dark body .map-segmented-btn{background:#1a2d25;color:#b7d3c7}.dark body .map-segmented-btn+.map-segmented-btn{border-left-color:#355247}.dark body .map-segmented-btn.is-active{background:#2bb89a33;color:#d7fff2}.dark body .map-hardware-pin{border-color:#eab308;background:#854d0e;color:#fff7cc}.dark body .map-user-pin{border-color:#93c5fd;background:#1d4ed8;box-shadow:0 0 0 2px #60a5fa47}.dark body .map-locate-inmap-btn{border-color:#3f5d4f;background:#14231deb;color:#9ad7ff;box-shadow:0 8px 18px #04090880}.dark body .map-locate-inmap-btn:hover:not(:disabled){border-color:#6fa3ba;background:#182c25f5}.dark body .map-locate-inmap-btn.is-active{border-color:#58ba99;color:#a5f0d8;background:#143c2fe6}.dark body .overview-quick-panel{background:#172822;border-color:#355247}.dark body .overview-quick-item{background:#1a2d25;border-color:#355247}.dark body .home-hero-panel{background:linear-gradient(180deg,#2bb89a17,#2bb89a00 48%),#172822}.dark body .home-hero-meta>div,.dark body .home-focus-item{background:#1a2d25;border-color:#355247}.dark body .home-summary-hero{background:linear-gradient(165deg,#2bb89a1f,#2bb89a00 55%),#172822}.dark body .home-summary-hero-meta>div,.dark body .home-summary-metrics>div,.dark body .home-summary-attention-item{background:#1a2d25;border-color:#355247}.dark body .home-summary-link{border-color:#3f5f50;background:#1b2f27;color:#bdd6cb}.dark body .home-summary-link:hover{border-color:#52a98b;background:#234338;color:#e6fff5}.dark body .health-grid>div,.dark body .alarm-item{background:#172822}.dark body .mobile-data-card,.dark body .anomaly-subpanel,.dark body .anomaly-top-item,.dark body .anomaly-boxplot-item{background:#172822;border-color:#355247}.dark body .anomaly-chart-wrap{background:#1a2d25;border-color:#355247}.dark body .account-card.is-selectable:hover{border-color:#4d8771;background:#1b3027}.dark body .account-card.is-selected{border-color:#2bb89a;background:#1f3b31;box-shadow:inset 0 0 0 1px #2bb89a47}.dark body .account-icon-btn.is-enabled{border-color:#3ea987;background:#1d3f33;color:#c9f6e6}.dark body .account-icon-btn.is-disabled{border-color:#b86a7e;background:#4a2832;color:#ffdbe4}.dark body .anomaly-grid-line{stroke:#85ad9d38}.dark body .anomaly-line-main{stroke:#42be97}.dark body .anomaly-line-center{stroke:#8eb6c8}.dark body .anomaly-line-upper,.dark body .anomaly-line-lower,.dark body .anomaly-point{stroke:#ff7f93;fill:#ff7f93}.dark body .boxplot-box{fill:#42be9738;stroke:#42be97}.dark body .boxplot-whisker,.dark body .boxplot-cap,.dark body .boxplot-median{stroke:#bfd7cd}.heat-panel{margin-top:12px}.anomaly-panel{margin-top:12px;display:grid;gap:10px}.anomaly-subpanel{border:1px solid var(--line);border-radius:12px;background:#f8fcf7;padding:10px;display:grid;gap:8px}.anomaly-subpanel h3{margin:0}.anomaly-chart-wrap{border:1px solid var(--line);border-radius:10px;background:#fff;overflow-x:auto}.anomaly-chart{width:100%;min-width:760px;height:auto;display:block}.anomaly-grid-line{stroke:#4a655833;stroke-width:1}.anomaly-axis-text{fill:var(--ink-soft);font-size:10px}.anomaly-axis-x{text-anchor:middle}.anomaly-line{fill:none;stroke-width:1.8}.anomaly-line-main{stroke:#0f8d68;stroke-width:2.2}.anomaly-line-center{stroke:#6d8ca0;stroke-dasharray:4 3}.anomaly-line-upper,.anomaly-line-lower{stroke:#c4465b;stroke-dasharray:5 4}.anomaly-point{fill:#c4465b;stroke:#fff;stroke-width:1.2}.anomaly-top-list{display:grid;gap:8px}.anomaly-top-item{border:1px solid var(--line);border-radius:10px;background:#fff;padding:8px;display:grid;gap:4px}.anomaly-boxplot-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;align-items:start}.anomaly-boxplot-grid>.anomaly-subpanel{align-self:start;height:-moz-fit-content;height:fit-content}.anomaly-boxplot-list{display:grid;gap:8px;max-height:min(56vh,660px);overflow-y:auto;padding-right:4px}.anomaly-boxplot-item{border:1px solid var(--line);border-radius:10px;background:#fff;padding:8px;display:grid;gap:6px}.boxplot-mini{width:100%;max-width:220px;height:24px}.boxplot-whisker,.boxplot-cap{stroke:#637b6f;stroke-width:1.5}.boxplot-box{fill:#0f8d6833;stroke:#0f8d68;stroke-width:1.4}.boxplot-median{stroke:#0f5f4f;stroke-width:1.5}.heat-filter-row{margin-top:6px}.heat-preset-row{display:inline-flex;align-items:center;gap:6px}.heat-preset-row>select{min-width:170px}.analytics-filters-grid{margin-top:8px;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:8px;align-items:end}.analytics-filters-grid-date{margin-top:8px;grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}.analytics-filter-field{display:grid;gap:4px;min-width:0}.analytics-filter-field>label{font-size:12px;font-weight:700;color:var(--ink-soft)}.analytics-filter-field>select,.analytics-filter-field>input{width:100%;min-width:0}.analytics-filter-field-preset{min-width:0}.analytics-filter-field-preset .heat-preset-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px;align-items:center}.analytics-filter-field-reset{align-self:end;justify-items:start}.analytics-weekday-row{margin-top:8px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:8px;align-items:center}.analytics-weekday-row>label{font-size:12px;font-weight:700;color:var(--ink-soft)}.analysis-no-data-hint{margin-top:8px;border:1px solid #efc08f;border-radius:10px;background:#fff7ed;color:#8a4b08;padding:8px 10px;display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}.dark body .analysis-no-data-hint{border-color:#9b6a2c;background:#4a3317;color:#ffe6c8}.weekday-chips{display:inline-flex;align-items:center;gap:6px;flex-wrap:wrap}.weekday-chip{border:1px solid var(--line);background:#fff;color:var(--ink-soft);border-radius:999px;padding:4px 9px;min-width:34px;font:inherit;font-size:12px;font-weight:700;cursor:pointer}.weekday-chip.is-active{border-color:#8fd3bf;background:#eafaf3;color:var(--brand)}.dark body .weekday-chip{border-color:#355247;background:#1a2a24;color:#bdd2c8}.dark body .weekday-chip.is-active{border-color:#2bb89a;background:#1f3f35;color:#ecfffa}.legend{margin:6px 0}.sw{width:15px;height:11px;border-radius:2px;border:1px solid #d1d7d2}.heat-wrap{border:1px solid var(--line);border-radius:10px;background:#f8fbf7;overflow:auto;max-height:62vh}.heat-grid{display:grid;grid-template-columns:130px repeat(24,minmax(18px,1fr));gap:3px;min-width:900px;padding:8px}.hhead,.hday{font-size:11px;color:var(--ink-soft)}.hhead{text-align:center}.hday{white-space:nowrap}.hcell{height:16px;border-radius:3px;border:1px solid rgba(22,42,32,.1);transition:transform .08s ease}.hcell:hover{transform:scale(1.3);z-index:3}@media (max-width: 1300px){.home-head-grid{grid-template-columns:minmax(0,1fr)}.home-shell{grid-template-columns:minmax(0,1fr) minmax(260px,340px)}.layout-top{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.home-main-grid{grid-template-columns:minmax(300px,1fr) minmax(0,1fr)}.home-summary-grid,.home-summary-hero-meta{grid-template-columns:repeat(2,minmax(0,1fr))}.capture-page-head,.camera-status-page .capture-page-head,.accounts-page-head{grid-template-columns:minmax(0,1fr)}.capture-page-kpis{grid-template-columns:repeat(4,minmax(0,1fr))}.camera-status-page .capture-page-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}.accounts-page-kpis{grid-template-columns:repeat(4,minmax(0,1fr))}.capture-filters-grid,.accounts-filters-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.capture-filter-field.is-wide,.accounts-filter-field.is-wide{grid-column:span 3}.cameras-filters-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.cameras-filter-field:first-child{grid-column:span 3}.cameras-filter-actions{justify-content:flex-start}.map-overlay-top-row{grid-template-columns:minmax(280px,1fr);gap:8px}.map-overlay-actions{justify-self:start}.map-panel-shell{width:min(620px,100%)}.captures-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.account-create .row{grid-template-columns:1fr 1fr}.account-create .row .btn{grid-column:1 / -1}}@media (max-width: 767px){.sidebar-mobile-backdrop{z-index:900}.app-shell{--app-top-padding: 12px}.app{padding:12px}.app-main{min-height:auto}.desktop-sidebar{display:none!important}.app-frame{grid-template-columns:minmax(0,1fr);min-height:auto}.app-header{padding:10px 11px;min-height:68px;z-index:700}.app-header.is-desktop-hero{overflow:visible}.overflow-menu-backdrop{z-index:1210;padding:max(10px,env(safe-area-inset-top)) 10px max(10px,env(safe-area-inset-bottom))}.overflow-menu-panel.is-mobile{width:min(100%,680px);max-height:min(88vh,760px)}.overflow-menu-panel.is-mobile .overflow-menu-item{min-height:50px}.overflow-menu-panel.is-mobile .overflow-menu-extra{padding-bottom:max(2px,env(safe-area-inset-bottom))}.command-palette-backdrop{z-index:1200}.shortcuts-help-backdrop{z-index:1204}.app-header-main{grid-template-columns:auto minmax(0,1fr) auto;align-items:center}.app-header-right{justify-self:end}.app-header-primary-actions .btn{min-width:44px;min-height:44px}.btn,input,select,.sidebar-link,.overflow-menu-item,.map-accordion-toggle,.shortcuts-help-kbd{min-height:44px}.btn-icon-only{min-width:44px;padding:9px}.global-feedback{left:12px;right:12px;bottom:12px;max-width:none}.kpi-grid{grid-template-columns:1fr 1fr}.camera-status-page .capture-page-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.home-head-grid,.home-hero-meta,.home-health-grid,.home-shell,.layout-top{grid-template-columns:1fr}.home-ops-rail{position:static}.home-summary-grid,.home-summary-hero-meta{grid-template-columns:1fr}.home-summary-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.home-summary-attention-list,.form-grid,.config-grid,.settings-field-grid,.settings-readonly-grid{grid-template-columns:1fr}.settings-root>.row.spread{align-items:flex-start;gap:10px}.settings-root>.row.spread>.row{width:100%;justify-content:flex-start}.settings-section-toggle-main>.muted{white-space:normal;overflow:visible;text-overflow:clip}.settings-section-content>.row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.settings-section-content>.row>.btn{width:100%}.cameras-filters-grid{grid-template-columns:1fr}.cameras-filter-field:first-child{grid-column:auto}.settings-reset-options,.settings-reset-summary-grid,.settings-reset-actions,.overview-kv,.overview-table-toolbar,.overview-detail-drawer{grid-template-columns:1fr}.overview-desktop-table{display:none!important}.overview-mobile-list{display:grid}.health-grid,.captures-grid{grid-template-columns:1fr}.capture-page-kpis,.accounts-page-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.capture-filters-grid,.accounts-filters-grid{grid-template-columns:1fr}.capture-filter-field.is-wide,.accounts-filter-field.is-wide{grid-column:auto}.capture-toolbar-foot,.accounts-toolbar-foot{display:grid;grid-template-columns:1fr}.capture-toolbar-foot .btn,.accounts-toolbar-foot .btn{width:100%}.capture-meta-grid{grid-template-columns:1fr}.capture-image-fallback{min-height:150px}.capture-preview-modal{max-height:calc(100vh - 14px);padding:10px}.capture-preview-head{flex-wrap:wrap}.capture-preview-head .btn{width:100%}.capture-preview-media .capture-image{max-height:calc(100vh - 230px)}.anomaly-boxplot-grid{grid-template-columns:1fr}.overview-quick-list-scroll,.anomaly-boxplot-list{max-height:none;overflow:visible;padding-right:0}.desktop-only{display:none!important}.mobile-only{display:block!important}.mobile-only.mobile-data-list{display:grid!important}.account-actions{min-width:0}.accounts-card-grid,.account-meta-grid{grid-template-columns:1fr}.account-create .row{display:grid;grid-template-columns:1fr;gap:8px}.account-actions .row:not(.account-action-row){display:grid;grid-template-columns:1fr;gap:8px}.account-rename-actions{display:grid;grid-template-columns:1fr}.account-rename-actions .btn{width:100%}.account-bulk-bar .row,.account-bulk-controls,.account-create .row{display:grid;grid-template-columns:1fr}.map-root{grid-template-columns:1fr}.map-root.is-mobile-layout{gap:10px}.map-root.is-mobile-layout .map-view-panel{order:1;grid-row:auto;min-height:auto;padding:10px}.map-root.is-mobile-layout .map-form-panel{order:2;grid-row:auto;width:100%;margin:0;align-self:auto;justify-self:stretch;border-radius:14px;max-height:none;padding:10px;background:color-mix(in srgb,var(--panel) 94%,#ffffff)}.map-root.is-mobile-layout .camera-map-canvas{height:clamp(300px,48vh,440px);min-height:280px;border-radius:12px}.map-root.is-mobile-layout .map-view-panel-modern{padding:10px}.map-root.is-mobile-layout .map-overlay-top{display:none}.map-root.is-mobile-layout .map-mobile-controls{margin-top:10px;display:grid;gap:8px}.map-root.is-mobile-layout .map-inmap-controls{top:8px;left:8px;right:8px;bottom:8px;max-width:none;pointer-events:none}.map-root.is-mobile-layout .map-inmap-controls .map-quick-filters{position:absolute;top:0;left:0;max-width:calc(100% - 118px);justify-content:flex-start;flex-wrap:nowrap;overflow-x:auto;padding:4px;border-radius:12px;background:#f8fcfae6;box-shadow:0 8px 16px #0a18122e;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);pointer-events:auto}.map-root.is-mobile-layout .map-inmap-controls .map-quick-filter-btn{white-space:nowrap;min-height:36px;padding:6px 10px}.map-root.is-mobile-layout .map-inmap-controls-actions{position:absolute;top:0;right:0;display:grid;justify-items:end;gap:6px;pointer-events:auto}.map-root.is-mobile-layout .map-inmap-controls-actions .map-toolbar-btn{min-width:42px;min-height:42px;padding:8px;border-radius:12px}.map-root.is-mobile-layout .map-inmap-controls-actions .map-toolbar-btn span{display:none}.map-root.is-mobile-layout .map-inmap-controls .map-locate-inmap-btn{width:42px;height:42px;border-radius:12px}.map-root.is-mobile-layout .map-mobile-controls .map-searchbar{border-radius:12px}.map-root.is-mobile-layout .map-mobile-controls .map-side-panel{max-height:min(56vh,430px);overflow:auto;-webkit-overflow-scrolling:touch}.map-root.is-mobile-layout .map-searchbar-icon-btn,.map-root.is-mobile-layout .map-searchbar-clear-btn{width:40px;height:40px}.map-root.is-mobile-layout .map-searchbar-input-wrap>input{min-height:40px;font-size:16px}.map-root.is-mobile-layout .map-view-panel>.map-helper-text{position:static;top:auto;left:auto;right:auto;max-width:none;white-space:normal;border-radius:10px;margin:0}.map-root.is-mobile-layout .map-view-panel>.map-helper-text+.map-helper-text{top:auto}.map-root.is-mobile-layout .map-view-status-pill{display:block;border:1px solid var(--line);border-radius:10px;background:color-mix(in srgb,var(--panel) 94%,#ffffff);padding:6px 8px}.map-root.is-mobile-layout .map-sync-legend.is-mobile-inline{width:auto;max-height:none;border-radius:12px}.shortcuts-help-item{grid-template-columns:1fr;align-items:start}.map-account-picker-row,.analytics-filters-grid,.analytics-filters-grid-date,.analytics-filter-field-preset .heat-preset-row{grid-template-columns:1fr}.analytics-filter-field-preset .heat-preset-row>select{min-width:0}.analytics-filter-field-preset .heat-preset-row .overflow-menu>.btn{width:100%}.analytics-weekday-row{grid-template-columns:1fr;align-items:start}.analytics-weekday-row .btn{width:100%}.analytics-page{gap:12px}.analytics-page .analytics-filter-panel{padding:12px;border-radius:14px}.analytics-page>.card.panel{padding:12px;border-radius:12px}.analytics-page .analytics-filters-grid,.analytics-page .analytics-filters-grid-date{gap:10px;margin-top:10px}.analytics-page .analytics-filter-field>label{font-size:13px}.analytics-page .analytics-filter-field>select,.analytics-page .analytics-filter-field>input{min-height:44px;font-size:16px}.analytics-page .analytics-filter-field-reset{justify-items:stretch}.analytics-page .analytics-filter-field-reset .btn{width:100%}.analytics-page .analytics-weekday-row{gap:6px}.analytics-page .weekday-chips{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;width:100%}.analytics-page .weekday-chip{min-width:0;min-height:40px;padding:6px 0}.analytics-page .legend{margin:8px 0;display:flex;flex-wrap:wrap;align-items:center;gap:6px 8px}.analytics-page .analysis-no-data-hint{align-items:stretch}.analytics-page .analysis-no-data-hint .btn{width:100%}.analytics-page .heat-wrap,.analytics-page .anomaly-chart-wrap{-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain}.analytics-page .anomaly-subpanel{padding:9px;gap:7px}.analytics-page .anomaly-top-item .row.spread{align-items:flex-start;gap:4px}.analytics-page .anomaly-top-item .badge{align-self:flex-start}.analytics-page .anomaly-chart{min-width:560px}.analytics-page .heat-wrap{max-height:56vh}.analytics-page .heat-grid{min-width:760px;grid-template-columns:104px repeat(24,minmax(16px,1fr))}.analytics-page .boxplot-mini{max-width:none}.accounts-auth-scroll{max-height:none;overflow:visible;padding-right:0}}@media (max-width: 479px){.kpi-grid,.accounts-page-kpis,.overview-quick-grid{grid-template-columns:1fr}.filters-row>select,.filters-row>input{min-width:100%}.account-actions .row:not(.account-action-row){grid-template-columns:1fr}.command-palette-backdrop{padding-top:16px}.command-palette{max-height:calc(100vh - 24px)}.overflow-menu-backdrop{padding:max(8px,env(safe-area-inset-top)) 8px max(8px,env(safe-area-inset-bottom))}.overflow-menu-panel.is-mobile{width:100%;border-radius:18px;padding:10px}.overflow-menu-head{padding-bottom:8px}.analytics-page .weekday-chips{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (max-width: 374px){.app-shell{--app-top-padding: 8px}.app{padding:8px}.card{border-radius:14px}.panel{padding:10px}.overflow-menu-panel.is-mobile{border-radius:16px;padding:9px}.overflow-menu-head-copy>strong{font-size:14px}}
