.login-card form{gap:8px}.login-card [data-slot=label]{display:block;font-size:14px;font-weight:600;color:var(--ink);margin-top:8px}.login-card [data-slot=input]{display:block;width:100%;min-height:44px;padding:10px 12px;border:1px solid #c9d5e1;border-radius:8px;background:#fff;color:var(--ink);font-size:15px;transition:border-color .15s,box-shadow .15s}.login-card [data-slot=input]:hover{border-color:#9fb3c6}.login-card [data-slot=input]:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 3px #175ee026}.login-card [data-slot=input][name=code]{font-size:20px;letter-spacing:.3em;text-align:center;font-variant-numeric:tabular-nums}.login-card [data-slot=button]{display:flex;align-items:center;justify-content:center;width:100%;min-height:46px;margin-top:14px;padding:11px 16px;border-radius:8px;border:1px solid transparent;background:var(--blue);color:#fff;font-size:15px;font-weight:600;box-shadow:0 2px 3px #173a7012;transition:background .15s}.login-card [data-slot=button]:hover:not(:disabled){background:#124fbe}.login-card [data-slot=button]:disabled{opacity:.65;cursor:progress}.login-card [data-slot=button][data-variant=ghost]{margin-top:4px;background:transparent;color:#425a70;box-shadow:none}.login-card [data-slot=button][data-variant=ghost]:hover:not(:disabled){background:#eef3f8}.login-card .error-box{margin:6px 0 0;padding:10px 12px;border-radius:8px;background:#fdecec;border:1px solid #f3c4c4;color:#9b1c1c;font-size:14px}.login-card .field-note{color:#647687;font-size:12px}.client-brand{display:inline-flex;align-items:center;gap:11px;color:var(--ink);text-decoration:none}.client-brand .client-brand-mark{display:grid;margin:0;place-items:center;width:38px;height:38px;border-radius:10px;background:var(--navy);color:#67cbd4;flex-shrink:0}.client-brand .client-brand-text{display:flex;flex-direction:column;line-height:1.05;margin:0;font-size:inherit;color:inherit;letter-spacing:inherit}.ux-client-shell .client-brand-text>span{font-size:12px;font-weight:600;letter-spacing:.02em;color:#526c81;margin-top:4px}.ux-client-shell .client-brand>.client-brand-text{color:var(--navy)}.ux-client-shell .client-brand>.client-brand-mark{color:#67cbd4}.ux-staff-shell .brand-small{letter-spacing:.12em;white-space:nowrap}.ux-client-shell .client-main,.ux-staff-shell main{display:flex;flex-direction:column}.ux-client-shell .client-main{min-height:calc(100vh - 76px)}.ux-staff-shell main{min-height:calc(100vh - 74px)}.ux-client-shell .client-main>*,.ux-staff-shell main>*{flex-shrink:0}.ux-client-shell .client-main>footer,.ux-staff-shell main>footer{margin-top:auto;padding-top:24px}.ux-client-shell .client-main>:not(footer):nth-last-child(2),.ux-staff-shell main>:not(footer):nth-last-child(2){margin-bottom:40px}.ux-staff-shell main>:where(button,a){align-self:flex-start}.ux-client-shell .client-context select{min-height:42px;padding:9px 12px;border-color:#d6e0ea;border-radius:8px;color:var(--ink)}.ux-staff-shell .notice-band{padding:9px 14px;font-size:13px;margin-bottom:20px}@media(min-width:641px){.badge{white-space:nowrap}}.service-dashboard-links strong{overflow-wrap:normal;word-break:normal;hyphens:none}.service-dashboard-links{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.ux-client-shell .client-summary button{padding:16px 18px}.ux-client-shell .client-summary strong{font-size:24px;margin:8px 0 2px}.site-workspace-tabs button{padding:8px 14px;font-size:14px}.discovery-workspace>.section-line h2{font-size:18px}.discovery-workspace>.section-line p{font-size:13px;color:var(--muted);margin-top:4px}.discovery-workspace section.panel:has(>h3:first-child){padding:20px 22px}.discovery-workspace section.panel>h3:first-child{font-size:16px;margin:0 0 6px}.discovery-workspace section.panel>h3:first-child~p{font-size:14px;color:#526c81}@media(max-width:900px){.ux-client-shell .client-main,.ux-staff-shell main{min-height:0}.client-brand .client-brand-mark{width:34px;height:34px}}.people-dialog.people-dialog-wide{width:min(760px,calc(100vw - 32px))}.people-dialog fieldset{border:1px solid var(--line);border-radius:10px;padding:14px 16px;margin:14px 0 0;min-width:0}.people-dialog legend{display:flex;align-items:center;gap:7px;padding:0 6px;font-weight:650;font-size:14px;color:var(--ink)}.people-dialog .check-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:6px 14px}.people-choice-list .check-row span small,.people-dialog .check-row span small{display:block;font-size:12px;color:var(--muted);font-weight:400}.people-dialog .people-choice-list{max-height:220px;overflow:auto}.compact-search{max-width:280px;margin:0 0 8px}.segmented{display:inline-flex;flex-wrap:wrap;border:1px solid #cbd6e0;border-radius:8px;overflow:hidden;margin:2px 0 10px}.segmented label{display:flex;align-items:center;gap:6px;padding:8px 14px;font-size:14px;cursor:pointer;border-right:1px solid #cbd6e0;color:#425a70;background:#fff}.segmented label:last-child{border-right:0}.segmented label.selected{background:#e8efff;color:#174fb4;font-weight:600}.segmented input{position:absolute;opacity:0;pointer-events:none}.segmented label:has(input:focus-visible){outline:3px solid #60a5fa;outline-offset:-3px}.directory-picker{display:grid;gap:4px;max-height:240px;overflow:auto}.directory-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:2px 0;border-bottom:1px solid #eef2f6}.directory-row:last-child{border-bottom:0}.directory-edit{display:flex;flex-wrap:wrap;gap:8px;width:100%;padding:6px 0}.directory-edit input{flex:1 1 180px;min-width:0;border:1px solid #cbd6e0;border-radius:6px;padding:8px 10px}.directory-edit .primary,.directory-edit .secondary{padding:8px 12px}.sync-state{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:#526c81;flex-wrap:wrap}.sync-state small{flex-basis:100%;font-size:12px;color:#9b1c1c;max-width:260px}.sync-state.ok{color:#107b6b}.sync-state.busy{color:#175ee0}.sync-state.busy svg{animation:people-spin 1.2s linear infinite}.sync-state.failed{color:#9b1c1c}@keyframes people-spin{to{transform:rotate(1turn)}}@media(prefers-reduced-motion:reduce){.sync-state.busy svg{animation:none}}.people-summary-warn{color:#9b1c1c}.people-table td{vertical-align:top}.people-delete{padding:4px 0}.people-delete p{margin:0 0 10px}.primary.danger-fill{background:#b42318}.primary.danger-fill:hover{background:#912018}.people-dialog .segmented label{display:flex;margin:0;min-height:0;grid-template-columns:none}.feature-entitlement-form .check-row{display:flex;align-items:center;gap:10px}.feature-entitlement-form .check-row input{width:16px;height:16px;flex-shrink:0}.client-admin-workspace+.module-grid{margin-top:28px}.people-dialog label.compact-search{display:flex;flex-direction:row;align-items:center;gap:8px;max-width:300px;margin:0 0 10px;padding:6px 10px;border:1px solid #cbd6e0;border-radius:8px;background:#fff}.people-dialog label.compact-search input{border:0;padding:4px 0;margin:0;outline:none;min-width:0;width:100%}.people-dialog .check-row{display:flex;flex-direction:row;align-items:flex-start;gap:10px;margin:0;padding:6px 2px;font-weight:500}.people-dialog .check-row input{width:16px;height:16px;margin:3px 0 0;flex-shrink:0}.people-dialog .check-row span{min-width:0}.people-dialog .directory-row .check-row{flex:1}.service-dashboard-links .service-site-count{display:block;margin-top:3px;font-size:12px;font-weight:500;color:var(--muted)}.bench-provisioning{padding:20px;display:grid;gap:16px}.bench-provisioning .section-line{margin:0}.bench-provisioning fieldset{border:1px solid var(--line);border-radius:8px;padding:12px;display:grid;gap:10px}.bench-camera-row{display:grid;grid-template-columns:2fr 2fr 1fr auto;gap:10px;align-items:end}.bench-provisioning td small{display:block;color:var(--muted);margin-top:4px}.bench-provisioning pre{font-size:11px;white-space:pre-wrap;max-width:360px}.bench-provisioning textarea{padding:10px;border:1px solid var(--line);border-radius:7px}.camera-setup-form{padding:6px 0}.camera-setup-form .ops-actions{display:flex;gap:10px}@media(max-width:650px){.bench-camera-row{grid-template-columns:1fr}}.admin-dialog input[type=color]{height:44px;padding:4px 6px;cursor:pointer}.vms-rates{align-items:flex-end;flex-wrap:wrap;justify-content:flex-start;margin:12px 0}.vms-rates label{display:flex;flex-direction:column;gap:6px;font-size:.8125rem;font-weight:550}.vms-rates input,.vms-rates select{border:1px solid #cbd6e0;border-radius:6px;padding:8px 10px;background:white;color:var(--ink);min-width:120px;font-weight:400}.cctv-rename{display:flex;flex-wrap:wrap;align-items:flex-end;gap:10px;margin-top:12px}.cctv-rename label{display:flex;flex-direction:column;gap:6px;font-size:.8125rem;font-weight:550}.cctv-rename input{border:1px solid #cbd6e0;border-radius:6px;padding:8px 10px;min-width:260px;max-width:100%;font-weight:400}.cctv-rename small{flex-basis:100%;color:var(--muted)}.site-status-bar{justify-content:space-between;gap:12px 20px;padding:14px 18px;margin:0}.site-status-bar,.site-status-main{display:flex;flex-wrap:wrap;align-items:center}.site-status-main{gap:8px 18px;font-size:14px;color:#425a70}.site-status-main strong{color:var(--ink);font-size:16px;margin-right:3px}.site-status-meta{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.site-status-meta small{color:var(--muted);font-size:12px}.site-status-meta .secondary{padding:7px 12px}.site-provider-line{flex-basis:100%;display:flex;flex-wrap:wrap;align-items:center;gap:8px;border-top:1px solid var(--line);padding-top:10px;font-size:13px;color:#526c81}.site-provider-line h3{font-size:13px;margin:0;color:var(--ink)}.device-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px}.device-kind-chips{display:flex;flex-wrap:wrap;gap:6px}.device-kind-chips button{display:inline-flex;align-items:center;gap:6px;padding:6px 11px;border:1px solid #d3deea;border-radius:999px;background:#fff;color:#36546e;font-size:13px}.device-kind-chips button span{font-size:12px;color:var(--muted)}.device-kind-chips button[aria-pressed=true]{background:#e6f1fe;border-color:#3480d1;color:#195ea9;font-weight:600}.device-search{max-width:260px;flex:1 1 200px}.device-table td,.device-table th{padding-top:8px;padding-bottom:8px;vertical-align:middle}.device-table td small{display:block}.device-table td .muted,.device-table td small{font-size:12px;color:var(--muted)}.device-table td.device-nowrap{white-space:nowrap}.device-table td small.firmware-older,.device-tree-label small.firmware-older,.router-facts small.firmware-older{color:var(--amber);font-weight:550}.device-kind-chips button.device-firmware-chip{border-color:#e8c98f;color:var(--amber)}.device-kind-chips button.device-firmware-chip[aria-pressed=true]{background:#fff2d9;border-color:#c98a2b;color:#7a4a0c}.device-table td small.device-mac{font-variant-numeric:tabular-nums;letter-spacing:.01em}.device-inactive-toggle{align-self:flex-start}.provider-report{margin-top:8px}.provider-report summary{cursor:pointer;font-size:13px;color:#175ee0}.site-setup-rows{gap:8px}.site-setup-rows details{padding:10px 16px}@media(max-width:640px){.site-status-bar{padding:12px}.device-search{max-width:none}.device-table table,.device-table tbody,.device-table td,.device-table tr{display:block;width:100%}.device-table thead{display:none}.device-table tr{padding:10px 14px;border-bottom:1px solid var(--line)}.device-table td{padding:1px 0;border:0;word-break:normal;overflow-wrap:anywhere}.device-table td:nth-child(2),.device-table td:nth-child(3),.device-table td:nth-child(4){display:inline;font-size:12px;color:var(--muted)}.device-table td:nth-child(3):before,.device-table td:nth-child(4):before{content:" · "}.device-table td:nth-child(5){margin-top:6px;display:flex;flex-wrap:wrap;align-items:center;gap:6px}.device-table td[colspan]{display:block}}.invite-link-box{border:1px solid #c9d8ea;background:#f5f9ff;border-radius:10px;padding:12px 14px;margin:10px 0;display:grid;gap:8px}.invite-link-head{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:14px;color:var(--ink)}.invite-link-row{display:flex;gap:8px;flex-wrap:wrap}.invite-link-row input{flex:1 1 260px;min-width:0;font:13px/1.4 ui-monospace,Menlo,Consolas,monospace;border:1px solid #cbd6e0;border-radius:7px;padding:8px 10px;background:#fff;color:var(--ink)}.invite-link-row .primary{display:inline-flex;align-items:center;gap:6px;padding:8px 14px}.invite-link-box .field-note{margin:0;font-size:12px}.signin-status{display:inline-flex;flex-wrap:wrap;align-items:center;gap:6px 10px}.site-location-map{padding:18px 20px;display:grid;gap:12px;margin-bottom:28px}.site-location-head{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:10px 16px}.site-location-head h2{display:flex;align-items:center;gap:7px;font-size:18px;margin:0}.site-location-head p{margin:4px 0 0;font-size:13px;color:var(--muted)}.segmented.map-modes{margin:0}.segmented.map-modes button{padding:7px 13px;font-size:13px;border:0;border-right:1px solid #cbd6e0;background:#fff;color:#425a70;cursor:pointer}.segmented.map-modes button:last-child{border-right:0}.segmented.map-modes button[aria-pressed=true]{background:#e8efff;color:#174fb4;font-weight:600}.segmented.map-modes button:disabled{color:#a7b4c2;cursor:not-allowed}.site-location-frame{width:100%;height:360px;border:0;border-radius:10px;background:#e7edf3}.site-location-foot{display:flex;flex-wrap:wrap;gap:6px 18px;align-items:center}.site-location-foot a{display:inline-flex;align-items:center;gap:5px}.site-location-edit{display:grid;gap:8px;border-top:1px solid var(--line);padding-top:12px}.site-location-edit label{display:grid;gap:6px;font-size:14px;font-weight:600}.site-location-edit input{border:1px solid #cbd6e0;border-radius:8px;padding:9px 11px;font-weight:400}@media(max-width:640px){.site-location-frame{height:260px}.site-location-map{padding:14px}}.set-password-box{border:1px solid #c9d8ea;background:#f5f9ff;border-radius:10px;padding:12px 14px;margin:10px 0;display:grid;gap:8px}.set-password-box .invite-link-head strong{display:inline-flex;align-items:center;gap:6px}.set-password-row{display:flex;flex-wrap:wrap;gap:8px}.set-password-row input{flex:1 1 200px;min-width:0;border:1px solid #cbd6e0;border-radius:7px;padding:8px 10px;font:14px ui-monospace,Menlo,Consolas,monospace}.set-password-actions{display:flex;flex-wrap:wrap;align-items:center;gap:6px 14px}.set-password-actions .spacer{flex:1}.set-password-actions .text-button{display:inline-flex;align-items:center;gap:4px}.set-password-box .field-note{margin:0;font-size:12px}.sign-in-security{max-width:440px}.sign-in-security-body{display:grid;gap:12px;padding:20px 24px 24px}.sign-in-security-body form{display:grid;gap:12px;padding:0}.sign-in-security-body .dialog-actions{margin-top:8px}.sign-in-security-body label{display:grid;gap:6px;font-weight:600}.totp-qr{width:200px;height:200px;margin:0 auto;padding:8px;background:#fff;border-radius:8px}.totp-qr svg{width:100%;height:100%;display:block}.totp-secret{display:inline-block;font-size:.95em;letter-spacing:.06em;word-break:break-all;user-select:all}.signin-status .badge+.text-button{margin-left:4px}.vms-user-list{list-style:none;margin:0 0 16px;padding:0;display:grid;gap:10px}.vms-user-row{display:grid;gap:10px;padding:12px 14px;border:1px solid var(--line);border-radius:10px}.vms-user-main{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:8px 16px}.vms-user-who{display:grid;gap:2px;min-width:0}.vms-user-who small{overflow-wrap:anywhere;color:var(--muted)}.vms-user-meta{display:flex;flex-wrap:wrap;align-items:center;gap:6px 8px}.vms-user-meta small{color:var(--muted)}.vms-user-actions{display:flex;flex-wrap:wrap;gap:8px}.vms-user-actions button{white-space:nowrap}.network-client-summary.wireless-summary{grid-template-columns:repeat(3,minmax(0,1fr))}@media(max-width:640px){.network-client-summary.wireless-summary{grid-template-columns:minmax(0,1fr)}}.address-picker{position:relative;display:grid;gap:8px}.address-picker>label{font-weight:600;font-size:.875rem}.address-picker-field{display:flex;align-items:center;gap:8px;border:1px solid #cbd6e0;border-radius:6px;padding:0 12px;background:white;color:var(--muted)}.address-picker-field:focus-within{outline:3px solid #60a5fa;outline-offset:1px}.address-picker-field input{border:0;outline:none;padding:10px 0;width:100%;min-width:0;font:inherit;color:var(--ink);background:transparent}.address-suggestions{list-style:none;margin:0;padding:4px;border:1px solid var(--line);border-radius:8px;background:white;box-shadow:0 10px 30px #102b3f1f;display:grid;gap:2px;max-height:320px;overflow:auto}.address-suggestions li[role=option]{display:flex;gap:10px;align-items:flex-start;padding:9px 10px;border-radius:6px;cursor:pointer}.address-suggestions li[role=option] svg{flex-shrink:0;margin-top:3px;color:var(--muted)}.address-suggestions li[role=option] span{display:grid;gap:2px;min-width:0}.address-suggestions li[role=option] small{color:var(--muted);overflow-wrap:anywhere}.address-suggestions li.active,.address-suggestions li[role=option]:hover{background:#eaf1fb}.address-attribution{font-size:.7rem;color:var(--muted);text-align:right;padding:4px 8px 2px}.address-paste{display:grid;gap:8px;padding:0}.address-paste label{display:grid;gap:6px;font-size:.875rem;font-weight:600}.address-paste input{border:1px solid #cbd6e0;border-radius:6px;padding:10px 12px;font:inherit}.address-paste .primary{justify-self:start}.address-picker .dialog-actions{align-items:center;flex-wrap:wrap;margin-top:4px}.admin-site-grid{grid-template-columns:repeat(auto-fill,minmax(210px,1fr));grid-auto-rows:1fr}.admin-site-grid>.admin-site-card,.admin-site-grid>.new-site-tile{aspect-ratio:1/1;min-width:0}.admin-site-card h3{-webkit-line-clamp:3;margin-top:10px}.admin-site-card .site-router-list span,.admin-site-card h3{display:-webkit-box;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere}.admin-site-card .site-router-list span{-webkit-line-clamp:2}.admin-site-card .site-card-state{font-size:.8125rem;color:var(--muted);margin:6px 0 0}@media(max-width:650px){.admin-site-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:420px){.admin-site-grid{grid-template-columns:minmax(0,1fr);grid-auto-rows:auto}.admin-site-grid>.admin-site-card,.admin-site-grid>.new-site-tile{aspect-ratio:auto}}.connected-devices{padding:18px 20px;display:grid;gap:12px;margin-top:16px}.connected-devices-head{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;flex-wrap:wrap}.connected-devices-head h3{display:flex;align-items:center;gap:8px;margin:0}.connected-devices-head h3 small{font-size:.75rem;font-weight:600;background:#eef2f7;color:var(--muted);border-radius:999px;padding:2px 8px}.connected-devices-head p{margin:4px 0 0;font-size:.8125rem;color:var(--muted)}.connected-devices-head input{border:1px solid #cbd6e0;border-radius:6px;padding:8px 10px;font:inherit;min-width:220px}.connected-device-kinds{display:flex;flex-wrap:wrap;gap:6px}.connected-device-kinds button{border:1px solid var(--line);background:white;border-radius:999px;padding:5px 11px;font-size:.8125rem;color:var(--ink)}.connected-device-kinds button span{color:var(--muted);margin-left:2px}.connected-device-kinds button[aria-pressed=true]{background:#eaf1fb;border-color:#9fbde8;color:#1b4f9c}.connected-device-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:8px}.connected-device-list button{display:flex;align-items:center;gap:10px;text-align:left;border:1px solid var(--line);background:white;border-radius:8px;padding:9px 11px;min-width:0}.connected-device-list button.selected,.connected-device-list button:hover{border-color:var(--blue)}.connected-device-list button>span:last-child{display:grid;min-width:0}.connected-device-list strong{font-size:.8125rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.connected-device-list small{font-size:.75rem;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.device-dot{width:9px;height:9px;border-radius:50%;flex-shrink:0;background:#a9b6c3}.device-dot.online{background:#1f9d6b}.device-dot.offline{background:#c2413a}@media(max-width:650px){.connected-devices-head input{min-width:0;width:100%}}button.svc-icon{border:0;padding:0;font:inherit;cursor:pointer}button.svc-icon.openable:hover{background:#dbe8f7;color:#1b4f9c}.site-service-icons>li:not(.svc-icon){display:contents}.overview-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px;align-items:start}.overview-services{display:grid;gap:12px;min-width:0}.overview-services .overview-section-heading{margin:0}.overview-services .client-service-shortcuts{grid-template-columns:1fr;gap:8px}.ux-client-shell .overview-services .service-launcher{align-items:center;gap:14px;padding:12px 16px;min-height:0}.overview-services .service-launcher-icon{width:38px;height:38px;border-radius:9px}.ux-client-shell .overview-services .service-launcher strong{margin:0 0 2px;font-size:15px}.overview-services .service-launcher small{line-height:1.45;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}.overview-services .service-launcher .service-connection{margin-top:6px}.overview-services .service-launcher-link{display:none}.overview-side{display:grid;gap:14px;min-width:0}.overview-side .site-location-map{margin:0}.overview-side .site-location-frame{height:210px}.overview-side .client-summary{grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:10px;margin:0}.overview-side .client-summary button{padding:12px 14px;gap:4px}.overview-side .client-summary strong{font-size:22px;margin:2px 0 0}.overview-side .client-summary span{font-size:12.5px}.overview-side .client-attention{margin:0;padding:16px 18px}.overview-side .client-attention>div{padding:10px 0}@media(max-width:1000px){.overview-layout{grid-template-columns:minmax(0,1fr)}.overview-side .site-location-frame{height:220px}}@media(max-width:520px){.overview-side .client-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.overview-services .service-launcher small{display:none}}.site-card.site-card-openable{position:relative;cursor:pointer}.site-card-openable .site-card-link:after{border-radius:10px}.site-card-openable .site-modules{position:relative;z-index:1}.site-module-link{display:flex;align-items:center;gap:5px;font-size:.75rem;color:#1f5f9e;background:#eef4fa;border:0;border-radius:6px;padding:3px 7px;cursor:pointer}.site-module-link:hover{background:#dbe8f7}.site-module-link:focus-visible{outline:2px solid var(--blue);outline-offset:2px}.live-video{position:relative;aspect-ratio:16/9}.live-video,.live-video video{display:block;width:100%;background:#101820}.live-video video{height:100%;object-fit:contain}.live-video-badge{position:absolute;top:6px;right:6px;padding:1px 6px;border-radius:4px;font-size:10px;font-weight:600;letter-spacing:.02em;color:#fff;background:#0b5394cc}.live-video-sub{background:#7a4d00cc}.live-video-state{position:absolute;inset:0;display:grid;place-items:center;font-size:12px;color:#d5dee6}.media-camera-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px 14px;margin-top:12px}.media-camera-form label{display:flex;flex-direction:column;gap:6px;font-size:.8125rem;font-weight:550}.media-camera-form input,.media-camera-form select{border:1px solid #cbd6e0;border-radius:6px;padding:8px 10px;background:white;font-weight:400}.media-camera-form .dialog-actions{grid-column:1/-1}.site-edit-button{margin-left:12px;font-size:.8125rem;font-weight:600;vertical-align:middle}.edit-site-dialog{max-width:560px}.edit-site-dialog form{display:grid;gap:10px}.edit-site-dialog label,.edit-site-label{font-weight:600;font-size:.875rem;margin:0}.edit-site-name{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.edit-site-name input{flex:1;min-width:160px}.edit-site-location{display:grid;gap:6px;margin-top:6px}.edit-site-location .address-picker{padding:0}.admin-site-card .site-card-edit{position:absolute;top:10px;right:10px;z-index:1;opacity:.75}.admin-site-card .site-card-edit:focus-visible,.admin-site-card .site-card-edit:hover{opacity:1}.media-playback{display:grid;gap:12px}.media-playback .cctv-search select{border:1px solid #cbd6e0;border-radius:6px;padding:8px 10px;background:white}.media-timeline{position:relative;height:28px;border:1px solid var(--line);border-radius:6px;background:#eef2f6;cursor:pointer;overflow:hidden}.media-timeline-cached,.media-timeline-device{position:absolute;top:4px;bottom:4px;border-radius:3px}.media-timeline-device{background:#f2c879}.media-timeline-cached{background:var(--teal)}.media-timeline-head{position:absolute;top:0;bottom:0;width:2px;margin-left:-1px;background:var(--navy)}.media-timeline-scale{display:flex;justify-content:space-between;font-size:.75rem;color:var(--muted);margin-top:-6px}.media-timeline-key{display:flex;flex-wrap:wrap;align-items:center;gap:6px 8px;font-size:.8125rem;color:var(--muted)}.media-key-cached,.media-key-device{display:inline-block;width:14px;height:10px;border-radius:2px;background:var(--teal)}.media-key-device{background:#f2c879;margin-left:8px}.media-copy{display:grid;gap:6px;font-size:.875rem}.media-copy progress{width:100%;height:8px}.media-player{position:relative;background:#101820;border-radius:6px;overflow:hidden}.media-player video{display:block;width:100%;max-height:70vh;aspect-ratio:16/9;object-fit:contain;background:#101820}.media-badge-cache{background:#107b6bcc}.media-badge-camera{background:#925a10cc}.media-player-clock{position:absolute;top:6px;left:6px;padding:1px 6px;border-radius:4px;font-size:11px;font-variant-numeric:tabular-nums;color:#fff;background:#101820b3}.media-exports{display:grid;gap:10px;padding-top:12px;border-top:1px solid var(--line)}.media-exports h4{margin:0;font-size:.9375rem}.media-export-reason{flex:1 1 260px}.media-export-reason input{width:100%}.media-export-hash{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.75rem}.customer-workspaces{display:grid;gap:14px}.customer-workspaces-toolbar{display:flex;gap:16px;align-items:center;flex-wrap:wrap}.customer-workspaces-toolbar .search{max-width:320px;flex:1}.customer-workspaces td small{display:block;color:var(--muted);font-size:.75rem;margin-top:3px}.customer-workspaces tr.current td:first-child{box-shadow:inset 3px 0 var(--blue)}.customer-workspaces .workspace-name{font-weight:600;font-size:.9375rem}.customer-workspaces .workspace-name:disabled{color:var(--ink);opacity:.7;cursor:default}.workspace-actions{display:flex;gap:2px;justify-content:flex-end;flex-wrap:wrap}.workspace-effects{list-style:none;padding:0;margin:8px 0;display:grid;gap:6px;font-size:.875rem}.workspace-effects li{display:flex;gap:8px;align-items:center}.primary.danger-fill{background:#b4372f}.primary.danger-fill:hover{background:#9a2e27}.cctv-camera-grid-25{grid-template-columns:repeat(5,minmax(0,1fr))}.cctv-camera-grid-6{grid-template-columns:repeat(3,minmax(0,1fr))}.cctv-camera-grid-6>.cctv-camera-tile:first-child{grid-column:span 2;grid-row:span 2}.cctv-camera-grid-8{grid-template-columns:repeat(4,minmax(0,1fr))}.cctv-camera-grid-8>.cctv-camera-tile:first-child{grid-column:span 3;grid-row:span 3}.cctv-camera-grid-6>.cctv-camera-tile:first-child img,.cctv-camera-grid-8>.cctv-camera-tile:first-child img{height:100%}.cctv-camera-grid-25 .cctv-camera-tile>span:last-child{padding:4px 6px}@media(max-width:700px){.cctv-camera-grid-25,.cctv-camera-grid-6,.cctv-camera-grid-8{grid-template-columns:repeat(2,minmax(0,1fr))}.cctv-camera-grid-6>.cctv-camera-tile:first-child,.cctv-camera-grid-8>.cctv-camera-tile:first-child{grid-column:span 2;grid-row:auto}}.media-timeline-event{position:absolute;top:0;bottom:0;width:2px;margin-left:-1px;background:#c2410c;pointer-events:none}.media-event-intrusion,.media-event-line{background:#7c3aed}.media-event-tamper{background:#be123c}.media-key-event{display:inline-block;width:3px;height:12px;background:#c2410c;margin-left:8px}.media-timeline-mark{position:absolute;top:-1px;margin-left:-5px;pointer-events:none}.media-key-mark,.media-timeline-mark{width:0;height:0;border-left:5px solid transparent;border-right:5px solid transparent;border-top:9px solid var(--blue)}.media-key-mark{display:inline-block;margin-left:8px}.media-bookmarks{display:grid;gap:10px;padding-top:12px;border-top:1px solid var(--line)}.media-bookmarks h4{margin:0;font-size:.9375rem}.synced-timeline{display:grid;gap:4px;cursor:pointer}.synced-row{display:grid;grid-template-columns:140px minmax(0,1fr);align-items:center}.synced-row-name{font-size:.75rem;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding-right:8px}.synced-row .media-timeline{height:18px;pointer-events:none}.synced-scale{margin-left:140px}.synced-clock{font-variant-numeric:tabular-nums;align-self:center}.synced-tile{cursor:default}.synced-tile .live-video video{width:100%;height:100%;object-fit:contain}.recorded-video{display:grid;grid-template-columns:230px minmax(0,1fr);gap:16px;align-items:start}.recorded-cameras{position:sticky;top:12px;display:grid;gap:8px;padding:12px;border:1px solid var(--line);border-radius:8px;background:#fff}.recorded-search{display:flex;align-items:center;gap:6px;border:1px solid #cbd6e0;border-radius:6px;padding:6px 8px;color:var(--muted)}.recorded-search input{border:0;outline:0;min-width:0;flex:1;font-size:.8125rem;color:var(--ink)}.recorded-cameras ul{list-style:none;margin:0;padding:0;display:grid;gap:2px;max-height:60vh;overflow:auto}.recorded-cameras label{display:flex;gap:8px;align-items:flex-start;padding:7px 8px;border-radius:6px;font-size:.8125rem;cursor:pointer}.recorded-cameras label:hover{background:#f1f5f9}.recorded-cameras label.is-focused{background:#e8f0fe}.recorded-cameras label small{display:block}.recorded-cameras label small,.recorded-cameras>small{color:var(--muted);font-size:.6875rem}.recorded-main{display:grid;gap:10px;min-width:0}.recorded-day{display:flex;flex-wrap:wrap;align-items:flex-end;gap:8px}.recorded-day label{display:grid;gap:4px;font-size:.75rem;font-weight:600}.recorded-day input{border:1px solid #cbd6e0;border-radius:6px;padding:7px 9px;background:#fff;font-weight:400}.recorded-day>button,.recorded-goto button{height:36px}.recorded-goto{display:flex;align-items:flex-end;gap:6px;margin-left:8px}.recorded-zoom{display:flex;gap:2px;margin-left:auto;border:1px solid #cbd6e0;border-radius:7px;padding:2px;background:#fff}.recorded-zoom button{padding:6px 9px;border-radius:5px;background:transparent;font-size:.75rem;color:var(--ink)}.recorded-zoom button[aria-pressed=true]{background:var(--navy);color:#fff}.recorded-timeline{display:grid;gap:4px;cursor:pointer;user-select:none}.recorded-row{display:grid;grid-template-columns:150px minmax(0,1fr);align-items:center}.recorded-row-name{text-align:left;background:transparent;font-size:.75rem;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:0 8px 0 0}.recorded-row.is-focused .recorded-row-name{color:var(--ink);font-weight:650}.recorded-row .media-timeline{height:22px}.recorded-ticks{position:relative;height:16px;font-size:.6875rem;color:var(--muted)}.recorded-ticks span{position:absolute;transform:translateX(-50%);white-space:nowrap}.recorded-range{position:absolute;top:0;bottom:0;background:#175ee033;border-left:2px solid var(--blue);border-right:2px solid var(--blue);pointer-events:none}.recorded-controls{align-items:center}.recorded-download{display:grid;gap:10px;padding-top:12px;border-top:1px solid var(--line)}.recorded-download h4{margin:0;font-size:.9375rem}.synced-tile.is-focused{border-color:var(--blue)}@media(max-width:900px){.recorded-video{grid-template-columns:1fr}.recorded-cameras{position:static}.recorded-cameras ul{max-height:180px}.recorded-zoom{margin-left:0}.recorded-row{grid-template-columns:90px minmax(0,1fr)}}.camera-view-none{display:inline-block;padding:4px 8px;border-radius:6px;background:#f1f5f9;color:var(--muted);font-size:.75rem;white-space:nowrap;cursor:help}.media-share{grid-column:1/-1;display:grid;gap:8px;padding:10px;border:1px dashed var(--line);border-radius:8px;background:#fafcfe}.media-share select{border:1px solid #cbd6e0;border-radius:6px;padding:8px 10px;background:#fff}.media-share-url{display:flex;gap:6px}.media-share-url input{flex:1;min-width:0;border:1px solid #cbd6e0;border-radius:6px;padding:7px 9px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.75rem}.media-share-list{list-style:none;margin:0;padding:0;display:grid;gap:4px}.media-share-list li{display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:.8125rem}.media-share-list small{display:block;color:var(--muted)}.cctv-camera-grid-auto{display:grid;gap:8px}.cctv-grid-search{margin:8px 10px 0;width:calc(100% - 20px);border:1px solid #cbd7e1;border-radius:6px;padding:7px 9px;font-size:12px}.cctv-grid-sites{display:grid;gap:4px;padding:8px 10px;border-top:1px solid #e1e8ef}.cctv-grid-sites>strong{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}.cctv-grid-sites details{border:1px solid #e1e8ef;border-radius:6px;background:#fff}.cctv-grid-sites summary{padding:7px 9px;font-size:12px}.cctv-grid-sites details>small{display:block;padding:6px 9px;color:var(--muted);font-size:10px}@media(max-width:700px){.cctv-camera-grid-auto{grid-template-columns:repeat(2,minmax(0,1fr))!important}.cctv-camera-grid-auto.cctv-camera-grid-1{grid-template-columns:1fr!important}}.admin-section .section-line{flex-wrap:wrap}.admin-site-search{margin-left:auto;min-width:220px;max-width:320px;flex:1}@media(max-width:650px){.admin-site-search{max-width:none;margin-left:0;width:100%}}th.sortable-th{padding:0}th.sortable-th .sort-button{all:unset;box-sizing:border-box;display:flex;align-items:center;gap:6px;width:100%;padding:13px 20px;cursor:pointer;font:inherit;color:inherit;font-weight:inherit;white-space:nowrap}th.sortable-th .sort-button:hover{color:var(--ink);background:#eef3f8}th.sortable-th .sort-button:focus-visible{outline:2px solid var(--blue);outline-offset:-2px}th.sortable-th .sort-arrow{font-size:.65rem;opacity:.35}th.sortable-th.sorted .sort-arrow{opacity:1;color:var(--blue)}.device-table .device-move{display:block;font-size:.75rem;margin-top:4px}.ops-dialog.move-equipment-dialog>:not(.dialog-header){margin-left:24px;margin-right:24px}.ops-dialog.move-equipment-dialog>.dialog-header+*{margin-top:22px}.ops-dialog.move-equipment-dialog>:last-child{margin-bottom:22px}.workspace-nav-subgroup{display:grid}.workspace-nav-subgroup-toggle{all:unset;box-sizing:border-box;display:flex;align-items:center;gap:6px;width:100%;padding:7px 12px;border-radius:7px;cursor:pointer;font-size:.78rem;font-weight:650;letter-spacing:.02em;color:inherit;opacity:.85}.workspace-nav-subgroup-toggle:hover{opacity:1;background:rgba(127,127,127,.12)}.workspace-nav-subgroup-toggle:focus-visible{outline:2px solid var(--blue);outline-offset:1px}.workspace-nav-subgroup-toggle .subtle{margin-left:auto;opacity:.7}.workspace-nav-subitems{display:grid;padding-left:10px}.menu-layout-editor{padding:18px 20px;display:grid;gap:12px}.menu-layout-scope{display:flex;gap:14px;flex-wrap:wrap}.menu-layout-scope label{display:grid;gap:6px;font-weight:600;font-size:.875rem}.menu-layout-editor td select,.menu-layout-scope select{border:1px solid #cbd6e0;border-radius:6px;padding:8px 10px;font:inherit;background:white;color:var(--ink)}.ftp-overview-grid>[role=button],.ftp-overview-single>[role=button]{display:block;text-decoration:none;color:#33475b;font-size:12px;cursor:zoom-in}.ftp-event [role=button],.retail-review-console figure [role=button]{cursor:zoom-in}[role=button]:has(>img):focus-visible{outline:2px solid var(--blue);outline-offset:2px;border-radius:6px}.live-site-status{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px;padding:18px 20px;margin-bottom:18px}.live-site-status>div{display:flex;gap:12px;align-items:flex-start}.live-site-status .live-site-icon{display:grid;place-items:center;width:40px;height:40px;border-radius:10px;background:#eef4fa;color:#365872;flex-shrink:0}.live-site-status strong{display:block;font-size:1rem;margin:2px 0}.live-site-status p{margin:0;font-size:.85rem;color:var(--muted)}.live-site-status small{color:var(--muted)}.live-site-status .live-good{color:#13795b}.live-site-status .live-bad{color:#b4372f}.key-monitoring{padding:16px 20px;margin-bottom:18px;width:100%;box-sizing:border-box}.site-widget .key-monitoring{margin-bottom:0}.key-monitoring-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:12px 18px;margin:0}.key-monitoring-field{display:grid;gap:4px;min-width:0}.key-monitoring-field dt{display:flex;align-items:center;gap:6px;color:var(--muted);font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em}.key-monitoring-field dd{margin:0;display:grid;gap:2px;min-width:0}.key-monitoring-field dd strong{font-size:.95rem;overflow-wrap:anywhere}.key-monitoring-field dd small{color:var(--muted);font-size:.78rem}.key-monitoring-field.off dd strong{color:var(--muted);font-weight:500}.key-monitoring .km-good{color:var(--teal)}.key-monitoring .km-warn{color:var(--amber)}.key-monitoring .km-bad{color:#b42318}.site-settings{display:grid;gap:22px}.site-settings-sections{position:sticky;top:0;z-index:5;display:flex;flex-wrap:wrap;gap:4px 14px;padding:10px 0;background:var(--canvas,#f6f7f9);border-bottom:1px solid var(--line,#e2e5ea)}.site-settings-section{scroll-margin-top:56px;display:grid;gap:10px}.site-settings-section>h2{margin:0;font-size:1.05rem}.site-settings-panel{padding:16px}.edit-site-form{display:grid;gap:12px;max-width:640px}.edit-site-form label{display:grid;gap:4px}.site-general-readonly{display:grid;grid-template-columns:max-content 1fr;gap:6px 18px;margin:0}.site-general-readonly>div{display:contents}.site-general-readonly dt{font-weight:600}.site-general-readonly dd{margin:0}.site-setup-rows{display:grid;gap:10px}@media (max-width:640px){.site-general-readonly{grid-template-columns:1fr}.site-general-readonly dd{margin-bottom:6px}}.site-general-panel{padding:20px 22px}.site-settings .site-location-map{margin-bottom:0}.discovery-workspace section.panel:has(>.section-line:first-child),.discovery-workspace section.panel:has(>h2:first-child){padding:20px 22px}.discovery-workspace section.panel>.section-line:first-child{margin-bottom:16px}.site-settings-dialog{width:min(1100px,calc(100% - 32px));max-width:none;height:min(860px,calc(100% - 40px));display:none;padding:0}.site-settings-dialog[open]{display:grid;grid-template-rows:auto auto minmax(0,1fr)}.site-settings-dialog .dialog-header h2{display:flex;align-items:center;gap:8px;font-size:1.05rem}.site-settings-tabs{display:flex;gap:4px;padding:0 20px;border-bottom:1px solid var(--line);overflow-x:auto}.site-settings-tabs button{background:none;padding:12px 14px;color:var(--muted);font-size:.875rem;font-weight:550;border-bottom:2px solid transparent;margin-bottom:-1px;white-space:nowrap}.site-settings-tabs button[aria-selected=true]{color:var(--blue);border-bottom-color:var(--blue)}.site-settings-panel{overflow:auto;padding:20px 24px 28px;display:grid;gap:22px;align-content:start;background:var(--canvas)}.site-settings-panel .site-settings-section{display:grid;gap:12px}.site-settings-panel .site-settings-section>h3{margin:0}.settings-popup .dialog-header h2 small{font-size:.8rem;font-weight:500;color:var(--muted);margin-left:6px}.settings-popup .site-settings-panel>*{min-width:0}.setup-wizard{width:min(980px,calc(100% - 32px));max-width:none;padding:0}.setup-wizard[open]{display:grid;grid-template-rows:auto minmax(0,1fr) auto;max-height:calc(100% - 40px)}.setup-wizard .dialog-header{padding:16px 20px;border-bottom:1px solid var(--line)}.setup-wizard .dialog-header h2{display:flex;align-items:center;gap:8px;font-size:1.05rem;margin:0}.setup-wizard-body{display:grid;grid-template-columns:220px minmax(0,1fr);min-height:0;overflow:hidden}.setup-wizard-steps{list-style:none;margin:0;padding:16px 10px;border-right:1px solid var(--line);background:var(--canvas);display:grid;gap:2px;align-content:start}.setup-wizard-steps button{display:flex;align-items:center;gap:8px;width:100%;text-align:left;background:none;border:0;border-radius:8px;padding:9px 10px;color:var(--ink);font-size:.875rem}.setup-wizard-steps button[aria-current=step]{background:#fff;color:var(--blue);font-weight:600;box-shadow:0 0 0 1px var(--line)}.setup-wizard-steps button:disabled{opacity:.55}.setup-wizard-panel{overflow:auto;padding:20px 24px;display:grid;gap:12px;align-content:start}.setup-wizard-panel h3{margin:0;font-size:1rem}.setup-wizard-panel h4{margin:10px 0 0;font-size:.9rem}.setup-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px 16px;align-items:end}.setup-fields .check-row,.setup-fields .field-note{grid-column:1/-1}.setup-new-site>button{justify-self:start}.ops-dialog.setup-wizard label.check-row{display:flex;align-items:center;gap:8px;text-align:left}.ops-dialog.setup-wizard label.check-row input{width:auto;margin:0}.setup-services{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:6px 14px;border:0;padding:0;margin:0}.setup-services legend{font-weight:600;margin-bottom:6px}.setup-row,.setup-rows{display:grid;gap:8px}.setup-row{grid-template-columns:150px repeat(3,minmax(0,1fr)) auto;align-items:center}.setup-row.invite{grid-template-columns:minmax(0,2fr) minmax(0,1fr) auto auto}.setup-site-list{list-style:none;margin:0;padding:0;display:grid;gap:6px}.setup-site-list li{display:flex;align-items:center;gap:10px;padding:8px 12px;border:1px solid var(--line);border-radius:8px;background:#fff}.setup-site-list li span{color:var(--muted);font-size:.85rem;margin-right:auto}.setup-review{list-style:none;margin:0;padding:0;display:grid;gap:8px}.setup-review li{display:flex;gap:10px;align-items:flex-start;padding:10px 12px;border:1px solid var(--line);border-radius:8px}.setup-review li>svg{flex-shrink:0;margin-top:2px}.setup-review li span{display:grid;gap:2px}.setup-review li.ok>svg{color:var(--teal)}.setup-review li.missing{border-color:#e7c58a;background:#fff8ec}.setup-wizard-actions{display:flex;gap:8px;padding:12px 20px;border-top:1px solid var(--line);margin:0}.setup-wizard-spacer{flex:1}@media(max-width:720px){.setup-wizard-body{grid-template-columns:1fr}.setup-wizard-steps{border-right:0;border-bottom:1px solid var(--line);grid-auto-flow:column;overflow-x:auto;padding:8px}.setup-wizard-steps button{white-space:nowrap}.setup-row,.setup-row.invite{grid-template-columns:1fr 1fr}}.site-settings-dialog label{font-weight:550}.page-heading-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.site-move-equipment{display:grid;gap:8px}@media (max-width:640px){.site-settings-dialog{width:100%;height:100%;max-height:100%;border-radius:0}.site-settings-panel{padding:16px}}.site-settings-panel form:not(.discovery-form){padding:0}.site-settings-panel label{margin-bottom:0}.site-settings-panel label.check-row{flex-direction:row;align-items:center}.site-settings-panel input[type=checkbox],.site-settings-panel input[type=radio]{width:auto}.site-detected dl{display:grid;grid-template-columns:max-content 1fr;gap:6px 18px;margin:8px 0 0}.site-detected dl>div{display:contents}.site-detected dt{color:var(--muted);font-size:.875rem}.site-detected dd{margin:0;font-size:.875rem}.site-overview{display:grid;gap:14px}.site-overview-bar{display:flex;align-items:center;justify-content:flex-end;gap:12px;flex-wrap:wrap}.site-overview.editing .site-overview-bar{justify-content:flex-start;background:white;border:1px solid var(--line);border-radius:10px;padding:10px 14px;position:sticky;top:0;z-index:6}.site-overview-bar-title{display:flex;align-items:center;gap:6px;font-weight:650}.site-overview-bar label{display:flex;align-items:center;gap:8px;font-size:.875rem}.site-overview-bar select{padding:7px 9px;border:1px solid var(--line);border-radius:7px;background:white}.site-overview-bar-actions{margin-left:auto;display:flex;gap:8px;align-items:center}.site-overview-sites{display:flex;flex-wrap:wrap;gap:6px 16px;padding:12px 16px;max-height:220px;overflow:auto}.site-overview-sites legend{font-weight:600;font-size:.875rem}.site-overview-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.site-widget{min-width:0;display:grid;gap:8px}.site-widget.size-full{grid-column:1/-1}.site-widget>.site-widget-body>*{margin-bottom:0}.site-overview.editing .site-widget{outline:2px dashed #b9cbe0;outline-offset:4px;border-radius:10px;cursor:grab}.site-overview.editing .site-widget.dragging{opacity:.5}.site-overview.editing .site-widget-body{opacity:.75}.site-widget-edit{display:flex;align-items:center;gap:8px;flex-wrap:wrap;background:#eef4fb;border-radius:8px;padding:6px 10px;font-size:.875rem}.site-widget-edit-actions{margin-left:auto;display:flex;align-items:center;gap:4px}.site-widget-edit .segmented button{padding:4px 9px;font-size:.75rem}.site-widget-options{flex-basis:100%;display:flex;flex-wrap:wrap;gap:10px 18px;padding:6px 0 2px}.site-widget-options label{display:flex;align-items:center;gap:8px}.site-widget-options fieldset{border:0;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:4px 14px}.site-widget-options legend{font-weight:600;margin-bottom:4px}.site-overview-hidden{display:flex;align-items:center;gap:6px}.site-overview .overview-section-heading{margin-bottom:10px}.site-overview .overview-section-heading h2{font-size:1rem}.site-overview .client-service-shortcuts{margin-bottom:0}.client-service-shortcuts.services-compact{grid-template-columns:repeat(auto-fill,minmax(min(170px,100%),1fr));gap:10px}.services-compact .service-launcher{padding:12px;gap:10px;align-items:center}.services-compact .service-launcher-icon{width:34px;height:34px;border-radius:9px}.services-compact .service-launcher strong{font-size:.9rem;margin:0 0 4px}.client-service-shortcuts.services-list{grid-template-columns:1fr;gap:0;border:1px solid var(--line);border-radius:10px;overflow:hidden;background:white}.services-list .service-launcher{border:0;border-radius:0;border-bottom:1px solid var(--line);padding:10px 14px;align-items:center;gap:12px}.services-list .service-launcher:last-child{border-bottom:0}.services-list .service-launcher>span:last-child{display:flex;align-items:center;justify-content:space-between;gap:10px;flex:1}.services-list .service-launcher strong{margin:0;font-size:.9rem}.services-list .service-launcher-icon{width:30px;height:30px;border-radius:8px}.overview-links{padding:16px 18px;display:grid;gap:10px}.overview-links h2{font-size:1rem}.overview-links>div{display:flex;flex-wrap:wrap;gap:8px}.site-overview .client-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}@media (max-width:900px){.site-overview-grid{grid-template-columns:1fr}.site-widget.size-full{grid-column:auto}.site-overview-bar-actions{margin-left:0}}.site-overview-sites .check-row{display:flex;align-items:center;gap:6px}.former-cameras{margin-top:16px;border-top:1px solid var(--line);padding-top:12px}.former-cameras>summary{cursor:pointer;font-weight:600}.former-cameras>summary span{margin-left:8px;font-weight:400;color:var(--muted);font-size:.85em}.former-cameras h4{margin:14px 0 6px}.former-camera-bookmarks{margin:6px 0 0;padding-left:18px;font-size:.875rem}.former-camera-bookmarks small{color:var(--muted)}.site-overview-grid{display:flex;flex-direction:column;gap:18px;align-items:stretch}.site-overview-band.band-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;align-items:start}.site-overview-column{display:flex;flex-direction:column;gap:18px;min-width:0;min-height:20px}.site-overview.editing .site-overview-column{min-height:80px;border-radius:12px}.site-overview-drop{border:2px dashed #b9cbe0;border-radius:10px;padding:22px;text-align:center;color:var(--muted);font-size:.875rem;margin:0}@media (max-width:900px){.site-overview-band.band-columns{grid-template-columns:1fr}}.overview-connection{display:grid;gap:14px}.overview-connection>.panel,.overview-connection>section{margin:0}.overview-connection-sim{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 16px;font-size:.875rem}.overview-connection .monitoring-connection{padding:20px 22px}.overview-connection .monitoring-connection>.section-line:first-child{margin-bottom:12px}.overview-connection .monitoring-connection-grid{grid-template-columns:1fr;gap:16px}.overview-connection .monitoring-speed{border-left:0;padding-left:0;border-top:1px solid var(--line);padding-top:14px}.overview-connection .monitoring-metrics{grid-template-columns:repeat(4,minmax(0,1fr))}.overview-connection .monitoring-speed .ops-actions{flex-wrap:wrap}@media (max-width:480px){.overview-connection .monitoring-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}.overview-connection .monitoring-connection .section-line,.overview-connection .monitoring-speed .section-line{flex-wrap:wrap;gap:8px}.mobile-data-totals.compact{grid-template-columns:repeat(2,minmax(0,1fr))}.site-widget-grip{cursor:grab;touch-action:none}.site-widget-grip:active{cursor:grabbing}.site-overview.editing .site-widget{cursor:default;position:relative}.site-widget.drop-after:after,.site-widget.drop-before:before{content:"";position:absolute;left:0;right:0;height:4px;border-radius:2px;background:var(--blue);z-index:3}.site-widget.drop-before:before{top:-11px}.site-widget.drop-after:after{bottom:-11px}.site-overview-column.drop-end{box-shadow:inset 0 -4px 0 var(--blue)}.site-widget-banner{display:flex;align-items:center;gap:8px;margin:0;font-size:.95rem;font-weight:650;color:var(--ink)}.site-widget-banner svg,.site-widget-edit svg{color:#2b5878}.overview-widget-actions{display:flex;justify-content:flex-end;margin-bottom:6px}.overview-connection .monitoring-connection>.section-line:first-child>h3{display:none}.overview-connection .monitoring-connection>.section-line:first-child:not(:has(select)){display:none}.site-widget .site-location-head h2{font-size:1.05rem}.parking-tabs{display:flex;gap:6px;margin:0 0 14px;flex-wrap:wrap}.parking-tabs button{padding:8px 16px;border-radius:999px;border:1px solid var(--line);background:white;color:var(--ink);font-size:.875rem;font-weight:550}.parking-tabs button[aria-pressed=true]{background:#e7f1fd;border-color:#4383c8;color:#175ca4}.edit-site-address-fields{display:flex;gap:12px;flex-wrap:wrap;margin-top:10px}.edit-site-address-fields label{display:grid;gap:4px;flex:1;min-width:160px}.countries-settings{padding:20px 22px;display:grid;gap:10px;margin-bottom:22px}.countries-settings h2{display:flex;align-items:center;gap:8px;font-size:1.05rem}.overview-connection-tile{padding:16px 18px;display:grid;gap:12px}.overview-connection-tile .conn-row{display:flex;align-items:center;gap:10px;min-width:0}.overview-connection-tile .conn-row>svg{color:#2b5878;flex-shrink:0}.overview-connection-tile .conn-row>span:not(.device-dot):not(.conn-bars){display:grid;min-width:0;flex:1}.overview-connection-tile .conn-row small{color:var(--muted);font-size:.78rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.overview-connection-tile .conn-row .text-button{margin-left:auto}.overview-connection-tile .conn-sim{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:10px 0}.conn-bars{display:inline-flex;align-items:flex-end;gap:2px;height:16px;flex-shrink:0}.conn-bars i{display:block;width:4px;border-radius:1px;background:#d4dde7}.conn-bars i:first-child{height:20%}.conn-bars i:nth-child(2){height:40%}.conn-bars i:nth-child(3){height:60%}.conn-bars i:nth-child(4){height:80%}.conn-bars i:nth-child(5){height:100%}.conn-bars i.on{background:#1f8a5b}.overview-connection-tile .conn-sim:empty{display:none}.site-view-controls{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.site-view-controls label{display:flex;align-items:center;gap:6px;font-size:.85rem;color:var(--muted);margin:0;font-weight:500}.site-view-controls select{padding:7px 9px;border:1px solid var(--line);border-radius:7px;background:white;color:var(--ink);font-size:.85rem}.site-directory-tools{display:flex;gap:12px;flex-wrap:wrap;align-items:center}.site-group-heading{grid-column:1/-1;margin:10px 0 0;font-size:.95rem;font-weight:650;display:flex;align-items:center;gap:8px}.site-group-heading span{font-size:.75rem;font-weight:550;background:#e5ebf2;color:#5f7285;border-radius:5px;padding:1px 6px}.site-group-heading:first-child{margin-top:0}.admin-site-groups,.site-groups{display:grid;gap:14px}.admin-site-groups>.site-group-heading,.site-groups>.site-group-heading{margin:6px 0 -4px}@media(min-width:901px){.sidebar .account{flex-wrap:wrap;row-gap:8px}.sidebar .account-name{flex:1 1 calc(100% - 42px);min-width:0;overflow-wrap:break-word}.sidebar .account-name+*{margin-left:42px}}.intercom-call-filters{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-end;margin:0 0 12px}.intercom-call-filters label{display:grid;gap:4px;min-width:150px}.intercom-call-row{cursor:pointer}.intercom-call-thumb{width:72px;height:48px;object-fit:cover;border-radius:6px;display:block}.intercom-call-dialog{width:min(760px,calc(100vw - 32px))}.intercom-call-body{padding:0 24px 24px}.intercom-call-picture{width:100%;max-height:60vh;object-fit:contain;border-radius:8px;background:#000}.intercom-call-facts{display:grid;grid-template-columns:max-content 1fr;gap:6px 16px;margin:12px 0 0}.intercom-call-facts dt{font-weight:600}.site-settings-panel form.intercom-call-setting,.site-settings-section .intercom-call-setting{margin:0 0 12px;padding:16px}.intercom-call-setting h4{margin:0 0 10px}.intercom-call-setting fieldset{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px;border:0;padding:0;margin:0}.vms-station-form{display:grid;gap:12px;margin-top:8px}.vms-station-form-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}@media(max-width:700px){.vms-station-form-row{grid-template-columns:1fr}}.vms-station-code{align-items:flex-start;margin:0 0 14px}.vms-station-code p{margin:0 0 6px}.vms-station-code code{font-size:20px;letter-spacing:.08em;font-weight:650;user-select:all}.vms-user-who strong svg{vertical-align:-2px}.vms-stations-body{display:grid;gap:10px;padding:22px 24px}.vms-stations-body form{padding:0}.key-monitoring .km-open{display:grid;gap:2px;justify-items:start;text-align:left;background:none;border:0;padding:2px 6px;margin:-2px -6px;border-radius:6px;color:inherit;cursor:pointer}.key-monitoring .km-open:hover{background:#eef3f8}.key-monitoring .km-open small{color:var(--blue);font-size:.78rem;text-decoration:underline;text-underline-offset:2px}.km-problems-dialog{width:min(880px,calc(100vw - 32px))}.km-problems-empty{margin:22px 24px;color:var(--muted)}.km-problems-wrap{overflow-x:auto;margin:16px 24px 22px}.km-problems{width:100%;border-collapse:collapse;font-size:.875rem}.km-problems th{text-align:left;font-size:.72rem;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);font-weight:600;padding:6px 10px;border-bottom:1px solid var(--line);white-space:nowrap}.km-problems td{padding:9px 10px;border-bottom:1px solid #edf1f5;vertical-align:top}.km-problems td small{display:block;color:var(--muted);font-size:.75rem}.km-problems .km-device{display:block;font-size:.78rem;margin-top:2px}.km-sev{display:inline-block;border-radius:999px;padding:2px 9px;font-size:.75rem;font-weight:600;white-space:nowrap;background:#eef1f4;color:#4a5b6b}.km-sev-5{background:#fde2e2;color:#8f1c1c}.km-sev-4{background:#fde9e9;color:#b42318}.km-sev-3{background:#fff1dc;color:#8a540c}.km-sev-2{background:#fef7d6;color:#7a5f06}.km-sev-1{background:#e7effd;color:#1a55c4}.helpdesk-sections{margin:0 0 18px;flex-wrap:wrap}.area-tabs{margin:-12px 0 20px;flex-wrap:wrap;border-bottom:1px solid var(--line);padding-bottom:6px}.area-tabs button{display:inline-flex;align-items:center;gap:6px}.area-tabs .workspace-nav-count{margin:0;font-size:.72rem;background:#e5ebf2;color:#46617a;padding:1px 6px;border-radius:4px}.helpdesk-sections+.area-tabs{display:none}.camera-controls{display:grid;gap:8px;margin:10px 0;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:var(--surface,#fff)}.camera-controls-row{gap:12px 18px}.camera-controls-group,.camera-controls-row{display:flex;flex-wrap:wrap;align-items:center}.camera-controls-group{gap:6px}.camera-controls-group>span{font-size:12px;font-weight:650;color:var(--muted);margin-right:2px}.camera-controls .secondary{padding:7px 10px;font-size:.8125rem;touch-action:none;user-select:none}.camera-controls-pad{display:grid;grid-template-columns:repeat(3,36px);grid-template-rows:repeat(3,36px);gap:3px}.camera-controls-pad .secondary{padding:0;width:36px;height:36px}.pad-up{grid-column:2;grid-row:1}.pad-left{grid-column:1;grid-row:2}.pad-home{grid-column:2;grid-row:2}.pad-right{grid-column:3;grid-row:2}.pad-down{grid-column:2;grid-row:3}.camera-controls input[type=range]{width:120px}.camera-controls select{min-width:140px;padding:6px 8px;border:1px solid var(--line,#cbd7e1);border-radius:7px;background:#fff;color:var(--ink,#122)}.camera-controls-plate{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:0;padding:6px 10px;border-radius:6px;background:#fff6e0;color:#6b4a00;font-size:.8125rem}.camera-controls-confirm{padding:10px 12px;border:1px solid #e0b84a;border-radius:8px;background:#fffaf0}.camera-controls-confirm p{margin:0 0 8px}.camera-controls-message{margin:0;font-size:.8125rem;color:var(--muted)}.camera-controls-compact .camera-controls-plate{background:#3a2c00;color:#ffd77a}.camera-controls-note{margin:10px 0;padding:8px 12px;border:1px dashed var(--line,#cbd7e1);border-radius:8px;font-size:.8125rem;color:var(--muted,#5b6b7a);background:var(--surface,#fff)}.camera-controls-note .text-button{font-size:inherit}.camera-workbench{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,340px);gap:14px;align-items:start}.camera-workbench-picture{min-width:0}.camera-workbench-side{display:grid;gap:12px;align-content:start;min-width:0}.camera-workbench-side .ops-actions{margin:0}.camera-workbench-image{display:block;width:100%;height:auto;max-height:min(60vh,520px);object-fit:contain;background:#101820;border-radius:8px}@media(max-width:900px){.camera-workbench{grid-template-columns:1fr}}.camera-controls-side{margin:0}.camera-controls-side .camera-controls-row{flex-direction:column;align-items:flex-start}.camera-controls [data-moving]{background:#e8f0fe;border-color:var(--blue,#1d4ed8);color:var(--blue,#1d4ed8)}.camera-controls .secondary:active{transform:translateY(1px)}.camera-read-age{display:inline-flex;align-items:center;gap:4px;color:var(--muted);font-size:.8125rem}.camera-read-age .camera-refresh,.camera-refresh{margin-left:0;padding:5px}.camera-refresh .spinning{animation:spin 1s linear infinite}.camera-edit-panel{margin-bottom:14px}.camera-view-workbench{min-height:0}.camera-view-workbench .camera-workbench-side{color:var(--ink,#122)}.cctv-grid-controls:has(>.cctv-grid-dropdown),.cctv-live-toolbar:has(.cctv-grid-dropdown){position:relative}.cctv-live-toolbar .cctv-grid-controls:has(>.cctv-grid-dropdown){position:static}.cctv-grid-controls>details.cctv-grid-dropdown{position:static;align-self:flex-end;min-width:200px}.cctv-grid-dropdown>summary:after{content:"";width:7px;height:7px;border:solid #5b7186;border-width:0 1.5px 1.5px 0;transform:translateY(-2px) rotate(45deg);flex:none}.cctv-grid-dropdown>summary>span{margin-left:auto}.cctv-grid-dropdown[open]>summary:after{transform:translateY(2px) rotate(225deg)}.cctv-grid-dropdown[open]{border-color:var(--blue)}.cctv-grid-dropdown-panel{position:absolute;top:calc(100% + 4px);left:0;z-index:30;width:min(820px,100%);border:1px solid #cbd7e1;border-radius:8px;background:#fff;box-shadow:0 12px 28px #15345126;overflow:hidden}.cctv-grid-dropdown-panel>.cctv-grid-picker{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));max-height:70vh;border-top:0}.cctv-grid-dropdown-panel>.cctv-grid-picker label{padding:6px 9px;align-items:center}.cctv-grid-dropdown-panel>.cctv-grid-picker input{margin-top:0}.cctv-grid-dropdown-foot{display:flex;align-items:center;gap:8px;padding:8px 10px;border-top:1px solid #e1e8ef}.cctv-grid-dropdown-foot small{flex:1;color:var(--muted);font-size:10px}.cctv-grid-dropdown-foot .secondary{padding:5px 12px;font-size:12px}@media(max-width:700px){.cctv-grid-controls>details.cctv-grid-dropdown{align-self:stretch}.cctv-grid-dropdown-panel>.cctv-grid-picker{grid-template-columns:repeat(2,minmax(0,1fr))}}[data-drag-tile]{cursor:grab}[data-drag-tile]:active{cursor:grabbing}[data-drag-tile].is-drop-target{outline:3px dashed var(--blue);outline-offset:-3px}.recorder-search .cctv-search{margin-top:0}.recorder-search .cctv-search .primary{display:inline-flex;align-items:center;gap:6px;white-space:nowrap}.recorder-search>.field-note{display:block;margin:-8px 0 14px;color:var(--muted);font-size:11px}.recorder-master{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin:4px 0 12px;padding:10px 12px;border:1px solid #d8e2eb;border-radius:9px;background:#f6f9fc}.recorder-master>strong{margin-right:4px;font-size:13px}.recorder-master button{padding:7px 10px}.recorder-master button,.recorder-master label{display:inline-flex;align-items:center;gap:6px;font-size:12px}.recorder-master label{color:#53677d}.recorder-master input,.recorder-master select{padding:6px 8px;border:1px solid #cbd7e1;border-radius:6px;background:#fff;font-size:12px}.recorder-master .recorder-goto{margin-left:auto}.recorder-tile{display:flex!important;flex-direction:column;cursor:default}.recorder-tile-view{position:relative;display:block;background:#101820}.recorder-tile-view video{display:block;width:100%;aspect-ratio:16/9;object-fit:contain;background:#101820}.recorder-tile-view .cctv-camera-unavailable{display:grid}.recorder-tile-name{display:block;padding:7px 10px;background:#172738}.recorder-tile-name strong{display:block;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.recorder-tile-wait{position:absolute;top:8px;left:8px;padding:4px 8px;border-radius:6px;background:#000a;color:#fff;font-size:11px}.recorder-tile-controls{display:flex;align-items:center;gap:4px;padding:5px 8px 7px;background:#172738}.recorder-tile-controls a,.recorder-tile-controls button{display:inline-grid;place-items:center;width:28px;height:26px;padding:0;border:1px solid #33506b;border-radius:5px;background:#21384e;color:#fff}.recorder-tile-controls button[aria-pressed=true]{background:var(--blue);border-color:var(--blue)}.recorder-tile-controls a:hover,.recorder-tile-controls button:hover{background:#2c4a66}.recorder-tile-controls select{min-width:0;padding:3px 4px;border:1px solid #33506b;border-radius:5px;background:#21384e;color:#fff;font-size:11px}.recorder-tile-controls a{margin-left:auto}.recorder-downloads{margin-top:14px}.recorder-downloads>summary{cursor:pointer;font-weight:650;font-size:13px}.recorder-downloads h4{margin:12px 0 6px;font-size:13px}@media(max-width:700px){.recorder-master .recorder-goto{margin-left:0}.recorder-tile-controls select[aria-label^=Segment]{max-width:92px}}.synced-tile .recorder-tile-controls{margin-top:auto}.synced-tile.is-own-clock{border-color:#d9a400}.recorded-speed{display:inline-flex;align-items:center;gap:6px;font-size:13px}.recorded-speed select{padding:4px 6px}.recorded-controls button[aria-pressed=true]{background:var(--blue);color:#fff;border-color:var(--blue)}.cctv-camera-tile{position:relative}.live-tile-tools{position:absolute;top:6px;left:6px;z-index:2;display:flex;gap:4px;opacity:.85}.cctv-camera-tile:focus-within .live-tile-tools,.cctv-camera-tile:hover .live-tile-tools{opacity:1}.live-tile-tools>span{display:inline-grid;place-items:center;min-width:26px;height:22px;padding:0 6px;border-radius:4px;font-size:10px;font-weight:700;letter-spacing:.03em;color:#fff;background:#0b1620cc;border:1px solid #ffffff33;cursor:pointer}.live-tile-tools>.live-tile-main{background:#0b5394e6}.live-tile-tools>.live-tile-sub{background:#7a4d00e6}.live-tile-tools>.live-tile-note{cursor:default;font-weight:600;letter-spacing:0;max-width:min(260px,60vw);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;place-items:center start;background:#0b1620e6}.live-tile-tools>span:focus-visible{outline:2px solid #fff;outline-offset:1px}.cctv-camera-tile>.live-tile-note-hd{position:absolute;top:34px;left:6px;z-index:2;max-width:min(320px,80%);padding:3px 7px;border-radius:4px;font-size:10px;font-weight:600;color:#fff;background:#0b1620e6;border:1px solid #ffffff33;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cctv-camera-tile .live-video .live-video-badge{left:auto}.cctv-camera-tile:fullscreen{display:flex;flex-direction:column;justify-content:center;width:100vw;height:100vh;border:0;border-radius:0;background:#000}.cctv-camera-tile:fullscreen>.cctv-camera-unavailable,.cctv-camera-tile:fullscreen>.live-video,.cctv-camera-tile:fullscreen>img{flex:1;min-height:0;width:100%;height:auto;aspect-ratio:auto;object-fit:contain;background:#000}.cctv-camera-tile:fullscreen>.live-video video{height:100%;object-fit:contain;background:#000}.cctv-camera-tile:fullscreen>span:last-child{flex:none}.cctv-camera-grid-6>.cctv-camera-tile:first-child .live-video,.cctv-camera-grid-8>.cctv-camera-tile:first-child .live-video{height:100%}.camera-picture-unavailable{display:grid;place-content:center;justify-items:center;gap:6px;aspect-ratio:16/9;width:100%;padding:18px;text-align:center;border-radius:8px;background:#182633;color:#fff}.camera-picture-unavailable small{max-width:52ch;color:#c9d5e0;font-size:12px;line-height:1.4}.camera-picture-unavailable button{margin-top:4px}@media(min-width:641px){.device-table td:first-child{min-width:180px}.device-table td.device-actions-cell{min-width:200px}.device-table td.device-nowrap small.firmware-older{white-space:normal;min-width:9em}.device-table td:nth-child(6){min-width:110px}.device-table td:nth-child(6),.device-table td:nth-child(7){word-break:normal;overflow-wrap:normal}}@media(min-width:1600px){.device-table td:first-child{min-width:230px}}.device-actions{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.device-actions .sd-format,.device-actions .video-stream,.device-actions .zp-camera-status{display:contents}.device-actions button.secondary{order:1;margin:0;min-height:32px;padding:5px 12px;font-size:13px;line-height:1.2;white-space:nowrap}.device-actions:before{content:"";order:2;flex-basis:100%;height:0;margin-bottom:-6px}.device-actions .badge,.device-actions .device-chip,.device-actions .text-button,.device-actions .zp-chip,.device-actions .zp-read{order:3}.device-actions .camera-sd-confirm,.device-actions .job-progress,.device-actions .video-stream-form,.device-actions small:not(.device-chip):not(.zp-chip):not(.zp-read){order:4;flex-basis:100%}.device-actions .device-chip,.device-actions .zp-chip{max-width:100%;white-space:normal;overflow-wrap:anywhere}.site-address-field .address-picker{border-top:0;padding-top:0}.bench-steps{display:grid;gap:6px;margin-top:10px}.bench-steps h4{margin:0;font-size:.9rem}.bench-steps h4 small{font-weight:400;color:var(--muted)}.bench-step{border:1px solid var(--line);border-radius:8px;background:white}.bench-step>summary{display:flex;align-items:center;gap:10px;padding:8px 12px;cursor:pointer;font-weight:600}.bench-step>summary small{margin-left:auto;color:var(--muted);font-weight:400}.bench-step ol{list-style:none;margin:0;padding:4px 12px 10px;display:grid;gap:4px;font-size:.85rem}.bench-step li{display:flex;gap:8px;align-items:baseline;min-width:0}.bench-step li>span:not(.bench-step-dot){overflow-wrap:anywhere}.bench-step li time{color:var(--muted);font-variant-numeric:tabular-nums;flex:none}.bench-step li small{margin-left:auto;color:var(--muted);flex:none}.bench-step-dot{width:8px;height:8px;border-radius:50%;background:#94a3b8;flex:none;align-self:center}.bench-step-dot.ok{background:#16a34a}.bench-step-dot.failed{background:#dc2626}.bench-step-dot.warning{background:#d97706}.bench-step-dot.running{background:#2563eb}.bench-step.failed>summary{color:#b91c1c}.bench-steps-row{margin-top:6px}.bench-steps-row>summary{cursor:pointer;font-size:.85rem;color:var(--muted)}.bench-run-head{padding:10px 12px;border-radius:8px;border:1px solid #cbd5e1;background:#f1f5f9}.bench-run.tone-ok .bench-run-head{background:#ecfdf3;border-color:#86efac}.bench-run.tone-warning .bench-run-head{background:#fffbeb;border-color:#fcd34d}.bench-run.tone-failed .bench-run-head{background:#fef2f2;border-color:#fca5a5}.bench-run.tone-queued .bench-run-head{background:#f1f5f9;border-color:#cbd5e1}.bench-progress{display:grid;gap:4px;margin:10px 0 4px}.bench-progress small{color:var(--muted);overflow-wrap:anywhere}.bench-progress small strong{color:inherit;font-weight:600}.bench-progress-track{height:8px;border-radius:999px;background:#e2e8f0;overflow:hidden}.bench-progress-track>span{display:block;height:100%;border-radius:inherit;background:#64748b;transition:width .4s ease}.bench-run.tone-ok .bench-progress-track>span{background:#16a34a}.bench-run.tone-warning .bench-progress-track>span{background:#d97706}.bench-run.tone-failed .bench-progress-track>span{background:#dc2626}.bench-step>summary{border-radius:7px}.bench-step[open]>summary{border-radius:7px 7px 0 0}.bench-step.tone-ok{border-color:#86efac}.bench-step.tone-ok>summary{background:#ecfdf3;color:#166534}.bench-step.tone-warning{border-color:#fcd34d}.bench-step.tone-warning>summary{background:#fffbeb;color:#92400e}.bench-step.tone-failed{border-color:#fca5a5}.bench-step.tone-failed>summary{background:#fef2f2;color:#b91c1c}.bench-step.tone-running{border-color:#93c5fd}.bench-step.tone-running>summary{background:#eff6ff;color:#1e40af}.bench-step.tone-queued{border-color:#cbd5e1}.bench-step.tone-queued>summary{background:#f1f5f9;color:#334155}@media (prefers-reduced-motion:reduce){.bench-progress-track>span{transition:none}}.bench-sim-read{display:grid;gap:4px;margin-top:8px}.bench-sim-read small{color:var(--muted)}.bench-blocks{border:0;padding:0;margin:4px 0;display:grid;gap:6px;min-width:0}.bench-blocks legend{font-weight:600;font-size:.9rem;margin-bottom:4px}.bench-block-options{display:flex;flex-wrap:wrap;gap:8px}.bench-block{display:flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:8px;padding:8px 12px;background:white;cursor:pointer}.bench-block.chosen{border-color:#2563eb;box-shadow:0 0 0 1px #2563eb}.bench-block.busy{opacity:.55;cursor:not-allowed}.bench-block span{display:grid}.bench-block small{color:var(--muted)}@media(min-width:901px){.camera-workbench:not(.camera-view-workbench){grid-template-columns:auto minmax(260px,360px);justify-content:start}}.camera-workbench-image{width:auto;max-width:100%}.camera-edit-form .camera-edit-fields{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:14px 20px;max-width:1080px}.camera-edit-form .camera-edit-fields>label{align-content:start}.camera-edit-form .camera-edit-fields input,.camera-edit-form .camera-edit-fields select{width:100%;min-width:0}.camera-edit-form .camera-change-results{max-width:1080px}.camera-edit-form>.ops-actions{justify-content:flex-start;gap:10px}.device-table td small.device-status-time{white-space:normal}.retail-case-picker{display:none}@media(max-width:1400px){.parking-case-layout{grid-template-columns:minmax(0,1fr);grid-template-rows:auto minmax(0,1fr);height:auto;min-height:0;gap:8px}.parking-case-layout>.retail-case-detail{height:clamp(520px,calc(100dvh - 330px),820px)}.parking-case-layout>.retail-case-queue{flex-direction:row;flex-wrap:wrap;align-items:center;gap:8px 12px;padding:8px 12px;max-height:none;overflow:visible}.parking-case-layout>.retail-case-queue>.retail-pane-head{padding:0;border:0;background:none;flex:0 0 auto;gap:10px}.parking-case-layout>.retail-case-queue>.retail-queue-tools{padding:0;flex:1 1 520px;flex-wrap:wrap;align-items:center}.parking-case-layout>.retail-case-queue>.retail-queue-tools label{flex:0 1 220px}.parking-case-layout>.retail-case-queue>.retail-queue-tools input[type=search]{flex:0 1 160px}.parking-case-layout>.retail-case-queue>.retail-case-list{display:none}.parking-case-layout>.retail-case-queue>.retail-queue-tools label{display:flex;align-items:center;gap:6px;white-space:nowrap}.parking-case-layout>.retail-case-queue .retail-place-filter{display:grid;grid-template-columns:repeat(4,auto);flex:0 0 auto;width:auto}.parking-case-layout>.retail-case-queue .retail-place-filter button{padding:5px 10px}.retail-case-picker{display:flex;align-items:center;gap:8px;flex:1 1 100%;order:-1;min-width:0;max-width:100%;font-size:13px;font-weight:650}.retail-case-picker select{flex:1 1 0;width:100%;min-width:0;padding:8px 10px;border:1px solid #cbd6e0;border-radius:6px;background:#fff;color:var(--ink);font-size:14px;font-weight:600}.parking-case-layout .retail-evidence-review-grid{grid-template-columns:minmax(0,1fr) minmax(220px,260px)}.parking-case-layout .retail-player-row{grid-template-columns:minmax(0,2.6fr) minmax(170px,1fr)!important}}@media(max-width:1100px){.parking-case-layout .retail-evidence-review-grid{grid-template-columns:1fr}}@media(max-width:760px){.parking-case-layout>.retail-case-detail{height:calc(100dvh - 290px);min-height:460px}.parking-case-layout>.retail-case-queue{gap:6px 8px;padding:7px 9px}.parking-case-layout>.retail-case-queue>.retail-pane-head small{display:none}.parking-case-layout>.retail-case-queue>.retail-queue-tools{gap:6px}.parking-case-layout>.retail-case-queue>.retail-queue-tools label{flex:1 1 0;min-width:0;font-size:0;gap:0}.parking-case-layout>.retail-case-queue>.retail-queue-tools label input{font-size:13px;min-width:0;width:100%}.parking-case-layout>.retail-case-queue>.retail-queue-tools input[type=search]{flex:1 1 0;min-width:0}.parking-case-layout>.retail-case-queue .retail-place-filter{grid-template-columns:repeat(4,minmax(0,1fr));flex:1 1 100%}.parking-case-layout>.retail-case-queue .retail-place-filter button{padding:4px;font-size:11px}}.device-table tr:has(+tr.device-actions-row)>td{border-bottom:0;padding-bottom:6px}.device-table tr.device-actions-row>td{padding-top:0}.device-table tr.device-actions-row .device-actions{min-width:0}.vms-device-name{display:inline-flex;align-items:center;gap:6px;white-space:nowrap}tr.muted-row td{opacity:.6}.vms-device-actions{flex-wrap:nowrap;justify-content:flex-end}.client-topology-groups.links-only{grid-template-columns:1fr}.client-topology-groups.links-only:before,.client-topology-groups.links-only>div:before{display:none}.client-topology-groups.links-only>div{padding-top:0}.client-topology-groups.links-only h3{justify-content:flex-start}.client-topology-groups.links-only .client-topology-nodes{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));max-height:none;overflow:visible}.radio-facts h4{font-size:13px;margin:16px 0 6px;color:#3c5871;text-transform:uppercase;letter-spacing:.04em}.radio-facts dd.not-collected{color:#8796a5;font-style:italic}.portal-update-notice{position:fixed;left:50%;bottom:18px;transform:translateX(-50%);z-index:60;display:flex;align-items:center;gap:12px;padding:10px 14px;background:#fff;border:1px solid #c9d6e2;border-radius:10px;box-shadow:0 8px 24px rgba(20,40,60,.18);font-size:14px;max-width:calc(100vw - 32px)}@media(max-width:520px){.portal-update-notice{flex-wrap:wrap;justify-content:center;text-align:center}}.device-tree-label small.firmware-older,.router-facts small.firmware-older{display:block;margin-top:2px}.cctv-live-stage{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-start}.cctv-live-stage>.cctv-camera-grid{flex:1 1 100%;min-width:0}.cctv-live-stage>.camera-controls,.cctv-live-stage>.camera-controls-note{flex:1 1 100%}.cctv-live-stage-side{flex-wrap:nowrap}.cctv-live-stage-side>.cctv-camera-grid{flex:1 1 0}.cctv-live-stage-side>.camera-controls,.cctv-live-stage-side>.camera-controls-note{flex:0 0 230px;margin:0}.device-channels-row>td{padding:0 12px 10px 34px;border-top:0}.recorder-channels>summary{cursor:pointer;font-size:12px;font-weight:600;color:var(--muted,#5b6773);padding:4px 0}.recorder-channels>ul{list-style:none;margin:4px 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:6px}.recorder-channels li{display:flex;align-items:center;gap:8px;min-width:0;padding:6px 8px;border:1px solid var(--line,#dfe4ea);border-radius:6px}.recorder-channel-name{display:flex;flex-direction:column;min-width:0;flex:1}.recorder-channel-name>small,.recorder-channel-name>strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.recorder-channel-name>small{font-size:11px;color:var(--muted,#5b6773)}.camera-live-view,.instant-playback{position:relative;width:100%;aspect-ratio:16/9;background:#0b1620;border-radius:6px;overflow:hidden;display:flex;align-items:center;justify-content:center}.camera-live-view .live-video,.camera-live-view video,.camera-live-view>img,.instant-playback>video{width:100%;height:100%;object-fit:contain;display:block}.camera-live-view>.cctv-camera-unavailable{color:#fff}.camera-live-view-state{color:#dfe6ec;font-size:12px;padding:12px;text-align:center}.camera-live-view-bar{position:absolute;left:0;right:0;bottom:0;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:4px 8px;font-size:11px;color:#fff;background:linear-gradient(transparent,#0b1620cc);pointer-events:none}.camera-live-view-bar>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.camera-live-view-bar button{pointer-events:auto;font:inherit;font-weight:600;color:#fff;background:#ffffff26;border:1px solid #ffffff40;border-radius:4px;padding:1px 6px;cursor:pointer}.camera-live-view-bar button[aria-pressed=true]{background:#ffffff59}.instant-playback .camera-live-view-bar{bottom:auto;top:0;background:linear-gradient(#0b1620cc,transparent)}.instant-playback-spans{display:flex;gap:4px}.camera-live-view-note{position:absolute;top:6px;left:6px;right:6px;font-size:10px;font-weight:600;color:#fff;background:#0b1620e6;border-radius:4px;padding:3px 6px}.camera-preview{padding:8px;max-width:960px;margin:0 auto}.camera-preview-tabs{display:flex;gap:6px;margin-bottom:6px}.camera-preview-tabs>button{font:inherit;font-size:12px;padding:3px 10px;border-radius:4px;border:1px solid var(--line,#dfe4ea);background:transparent;cursor:pointer}.camera-preview-tabs>button[aria-selected=true]{background:var(--accent-soft,#e7eef6);font-weight:600}.door-quick-actions{display:flex;flex-direction:column;gap:10px;min-width:0;font-size:13px}.door-quick-head{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.door-quick-head>strong{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.door-quick-actions h4{margin:0 0 4px;font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted,#5b6773)}.door-quick-calls,.door-quick-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}.door-quick-calls>li,.door-quick-list>li{display:flex;align-items:center;gap:8px;min-width:0}.door-quick-calls>li>span,.door-quick-list>li>span{display:flex;flex-direction:column;min-width:0;flex:1}.door-quick-calls small,.door-quick-list small{color:var(--muted,#5b6773);font-size:11px}.door-quick-calls img,.door-quick-nopic{width:64px;height:36px;object-fit:cover;border-radius:4px;background:#0b1620;display:flex;align-items:center;justify-content:center;color:#fff;flex:none}.door-quick-add{display:flex;flex-direction:column;gap:2px;font-size:12px}.boundary-toggle{display:inline-flex;align-items:center;gap:6px;font-size:13px;padding:6px 11px}.boundary-toggle[aria-pressed=true]{background:#e8efff;color:#174fb4;border-color:#b9cdf5}.site-location-js{background:#e7edf3}.overview-connection-tile .conn-row.conn-stale small{color:#8a5a00}.suggest-bays{margin:8px 0}.suggest-bays,.suggest-bays-list{display:grid;gap:6px}.suggest-bays-list ul{list-style:none;margin:0;padding:0;display:grid;gap:4px;max-height:260px;overflow:auto}.suggest-bays-list li{display:flex;align-items:center;gap:8px;border:1px solid var(--line,#dde5ec);border-radius:8px;padding:4px 8px}.suggest-bays-list li>span:nth-child(2){display:grid;flex:1;min-width:0}.suggest-bays-list li small{color:var(--muted,#647687)}.suggest-dot{width:10px;height:10px;border-radius:50%;flex:none}.suggest-bays-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.cctv-live-stage-side{flex-wrap:wrap}.cctv-live-stage-side>.camera-controls-note{flex:1 1 100%}.people-tools{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}.people-tools .search{max-width:240px}.people-search{margin:0 0 12px;max-width:320px}.client-admin-workspace>.collapsible-section,.client-admin-workspace>details{margin-bottom:16px}@media(max-width:700px){.people-tools{width:100%;justify-content:stretch}.people-tools .search{max-width:none;flex:1 1 100%}.people-tools .primary{flex:1 1 auto}.people-search{max-width:none}.people-team .table-scroll table{min-width:820px}.people-team .table-scroll td:first-child{overflow-wrap:normal;word-break:normal;white-space:nowrap}}.sims-history .sims-stalled{color:#8a5a00}.sims-history .sims-stalled-close{margin:.4rem 0 .6rem;max-width:34rem}html dialog label:where(:has(>input[type=checkbox]:first-child),:has(>input[type=radio]:first-child)){flex-direction:row;align-items:center;justify-content:flex-start;gap:8px;text-align:left}html dialog label:where(:has(>input[type=checkbox]:first-child),:has(>input[type=radio]:first-child))>input{width:auto;flex:0 0 auto;margin:0}.bench-provisioning .table-scroll>table{min-width:880px}.bench-provisioning .table-scroll>table td:first-child{min-width:150px}.bench-provisioning .table-scroll>table td:nth-child(2){min-width:240px}.bench-provisioning .table-scroll>table td:nth-child(4){min-width:130px}@media(max-width:900px){.client-main>.customer-navigation{background:transparent;border:0;padding:0;margin:12px 0 16px}input:not([type=checkbox]):not([type=radio]),select,textarea{font-size:max(16px,1em)}}.retail-stream-picker{flex-wrap:wrap;justify-content:flex-start;gap:8px 10px}.retail-stream-picker>.retail-segmented{flex:0 1 auto;flex-wrap:wrap;max-width:100%;overflow:visible}.retail-stream-picker>.retail-box-toggle{flex:0 0 auto;flex-wrap:wrap;gap:5px 8px;white-space:normal;font-size:11px}.retail-stream-picker>.retail-box-toggle input{width:15px;height:15px}.retail-box-key{flex-wrap:wrap;gap:4px 8px}.retail-box-key i{margin-right:-3px}.retail-stream-picker>.retail-following-badge{flex:1 1 100%;min-width:0;overflow:visible;border-radius:7px;white-space:normal;text-overflow:clip;font-size:11px}.copy-chip{position:fixed;z-index:2147483000;display:inline-flex;align-items:center;justify-content:center;gap:4px;min-width:22px;height:22px;padding:0 4px;border:1px solid var(--line,#dde5ec);border-radius:6px;background:#fff;color:var(--muted,#647687);box-shadow:0 1px 3px rgba(16,43,63,.14);cursor:pointer;font-size:.72rem;font-weight:600;line-height:1}.copy-chip[hidden]{display:none}.copy-chip:focus-visible,.copy-chip:hover{color:var(--blue,#175ee0);border-color:var(--blue,#175ee0);outline:none}.copy-chip:focus-visible{box-shadow:0 0 0 3px rgba(23,94,224,.25)}.copy-chip .copy-chip-done{display:none}.copy-chip.done{color:var(--teal,#107b6b);border-color:var(--teal,#107b6b);padding:0 6px}.copy-chip.done svg{display:none}.copy-chip.done .copy-chip-done{display:inline}.copy-target{border-radius:4px;background:rgba(23,94,224,.06);outline:1px solid rgba(23,94,224,.18);outline-offset:1px}[data-copy][tabindex]:focus-visible{outline:2px solid var(--blue,#175ee0);outline-offset:2px;border-radius:4px}@media (hover:none){.copy-chip{min-width:32px;height:32px}}@media print{.copy-chip{display:none!important}}@media(min-width:901px){.ux-client-shell{grid-template-rows:56px minmax(0,1fr)}.ux-client-shell>.client-header{height:56px;min-height:0}.ux-client-shell .client-brand{gap:9px}.ux-client-shell .client-brand .client-brand-mark{width:32px;height:32px;border-radius:8px}.ux-client-shell .client-brand .client-brand-mark svg{width:18px;height:18px}.ux-client-shell .client-brand-text{font-size:21px}.ux-client-shell .client-brand-text>span{font-size:11px;margin-top:2px}.ux-client-shell .client-account form>button,.ux-client-shell .client-account>button{min-height:36px}.ux-client-shell>.customer-navigation{top:56px;height:calc(100dvh - 56px);padding:12px}.ux-client-shell>.client-layout{min-height:calc(100dvh - 56px)}.ux-client-shell .client-main{min-height:calc(100vh - 56px)}.customer-navigation .workspace-nav-group{margin-bottom:12px}.customer-navigation .workspace-nav-group>p{margin:0 0 3px}.customer-navigation .workspace-nav-item{min-height:34px;padding:7px 12px;margin:1px 0}.ux-client-shell .client-main,.ux-client-shell .hub-layout .client-main{padding-top:10px}main.client-main>.client-topbar{gap:12px;padding-bottom:8px;margin-bottom:10px}main.client-main>.client-topbar .portal-site-field button,main.client-main>.client-topbar .portal-site-field input,main.client-main>.client-topbar select{min-height:38px;height:auto;padding-top:6px;padding-bottom:6px}.ux-staff-shell .topbar{min-height:52px;padding-top:6px;padding-bottom:6px}.ux-staff-shell .topbar button.secondary{padding-top:7px;padding-bottom:7px}.ux-staff-shell .workspace>main{padding-top:12px}.ux-staff-shell .sidebar{padding-top:14px}.ux-staff-shell .sidebar .brand{margin-bottom:12px}.ux-staff-shell .client-select{padding-top:7px;padding-bottom:7px;margin-bottom:10px}.ux-staff-shell .workspace-nav-group{margin-bottom:12px}.ux-staff-shell .workspace-nav-group>p{margin-bottom:3px}.ux-staff-shell .workspace-nav-item{min-height:34px;padding:7px 12px;margin:1px 0}#staff-content>.notice-band,.ux-staff-shell .notice-band{padding:6px 12px;margin-bottom:10px}.ux-staff-shell .assistant-dock{margin-bottom:8px}}:root .assistant-bar{padding-top:8px;padding-bottom:8px}:root .compact-section{margin:8px 0;padding:7px 14px}:root .compact-section[open]>summary{margin-bottom:10px}:is(main.client-main,#staff-content)>.page-heading{margin-bottom:10px;align-items:center}:is(main.client-main,#staff-content)>.page-heading>div:first-child:not(.page-heading-actions){display:flex;flex-wrap:wrap;align-items:baseline;column-gap:12px;row-gap:0;min-width:0}:is(main.client-main,#staff-content)>.page-heading>div:first-child:not(.page-heading-actions)>.eyebrow{flex-basis:100%;margin:0 0 1px;font-size:11px}:is(main.client-main,#staff-content)>.page-heading>div:first-child:not(.page-heading-actions)>h1{font-size:22px;line-height:1.25;margin:0}:is(main.client-main,#staff-content)>.page-heading>div:first-child:not(.page-heading-actions)>p{margin:0;font-size:13px;line-height:1.4;color:var(--muted)}@media(max-width:900px){.ux-client-shell .client-header{min-height:0;padding:8px 14px;row-gap:2px}.ux-client-shell .client-brand .client-brand-mark{width:30px;height:30px;border-radius:8px}.ux-client-shell .client-brand-text{font-size:20px}.ux-client-shell .client-brand-text>span{font-size:11px;margin-top:1px}.ux-client-shell .client-account form>button,.ux-client-shell .client-account>button{min-height:34px}.ux-client-shell .client-main{padding-top:10px}.ux-client-shell .client-context{gap:8px;padding-bottom:10px;margin-bottom:10px}.ux-client-shell .client-context>.portal-site-field>label{margin-bottom:4px}}