@font-face{font-family:Source Sans Pro;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/source-sans-pro-cyrillic-ext-400-normal-BZJRkJ55.woff2) format("woff2"),url(/assets/source-sans-pro-cyrillic-ext-400-normal-DtD_g0fW.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C88,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Source Sans Pro;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/source-sans-pro-cyrillic-400-normal-Bo6gnWEs.woff2) format("woff2"),url(/assets/source-sans-pro-cyrillic-400-normal-h6inArLS.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Source Sans Pro;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/source-sans-pro-greek-ext-400-normal-DurV-KM9.woff2) format("woff2"),url(/assets/source-sans-pro-greek-ext-400-normal-BfIWL1p1.woff) format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:Source Sans Pro;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/source-sans-pro-greek-400-normal-CZJmCPdY.woff2) format("woff2"),url(/assets/source-sans-pro-greek-400-normal-C-qB9CTB.woff) format("woff");unicode-range:U+0370-03FF}@font-face{font-family:Source Sans Pro;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/source-sans-pro-vietnamese-400-normal-DmpbtSrx.woff2) format("woff2"),url(/assets/source-sans-pro-vietnamese-400-normal-C_X2WPHN.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Source Sans Pro;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/source-sans-pro-latin-ext-400-normal-b0izRs8p.woff2) format("woff2"),url(/assets/source-sans-pro-latin-ext-400-normal-B4yavu5O.woff) format("woff");unicode-range:U+0100-02AF,U+0304,U+0308,U+0329,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20CF,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Source Sans Pro;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/source-sans-pro-latin-400-normal-tpsLXCSJ.woff2) format("woff2"),url(/assets/source-sans-pro-latin-400-normal-R7DZS9ko.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Source Sans Pro;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/source-sans-pro-cyrillic-ext-600-normal-qEDpwGRt.woff2) format("woff2"),url(/assets/source-sans-pro-cyrillic-ext-600-normal-BLUySEgx.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C88,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Source Sans Pro;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/source-sans-pro-cyrillic-600-normal-7IW-0rI7.woff2) format("woff2"),url(/assets/source-sans-pro-cyrillic-600-normal-C6gpv_4y.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Source Sans Pro;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/source-sans-pro-greek-ext-600-normal-Bk3oygDb.woff2) format("woff2"),url(/assets/source-sans-pro-greek-ext-600-normal-Bk3wWfL4.woff) format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:Source Sans Pro;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/source-sans-pro-greek-600-normal-DufzpiO_.woff2) format("woff2"),url(/assets/source-sans-pro-greek-600-normal-CNXbxSoy.woff) format("woff");unicode-range:U+0370-03FF}@font-face{font-family:Source Sans Pro;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/source-sans-pro-vietnamese-600-normal-B_7vbVAt.woff2) format("woff2"),url(/assets/source-sans-pro-vietnamese-600-normal-DJqX7dzL.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Source Sans Pro;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/source-sans-pro-latin-ext-600-normal-XGkkjFz7.woff2) format("woff2"),url(/assets/source-sans-pro-latin-ext-600-normal-BgwKN7TX.woff) format("woff");unicode-range:U+0100-02AF,U+0304,U+0308,U+0329,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20CF,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Source Sans Pro;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/source-sans-pro-latin-600-normal-BM2CBz6W.woff2) format("woff2"),url(/assets/source-sans-pro-latin-600-normal-CjV2-MXP.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Source Sans Pro;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/source-sans-pro-cyrillic-ext-700-normal-CMNOJ5Qm.woff2) format("woff2"),url(/assets/source-sans-pro-cyrillic-ext-700-normal-C6lq_OUW.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C88,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Source Sans Pro;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/source-sans-pro-cyrillic-700-normal-CkdS6a5a.woff2) format("woff2"),url(/assets/source-sans-pro-cyrillic-700-normal-DCJL43JV.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Source Sans Pro;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/source-sans-pro-greek-ext-700-normal-sY5KVvyA.woff2) format("woff2"),url(/assets/source-sans-pro-greek-ext-700-normal-BXPp6Eqx.woff) format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:Source Sans Pro;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/source-sans-pro-greek-700-normal-Bq-mRDqF.woff2) format("woff2"),url(/assets/source-sans-pro-greek-700-normal-BCz9b4qF.woff) format("woff");unicode-range:U+0370-03FF}@font-face{font-family:Source Sans Pro;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/source-sans-pro-vietnamese-700-normal-f-Bm14rw.woff2) format("woff2"),url(/assets/source-sans-pro-vietnamese-700-normal-CwqTh6JM.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Source Sans Pro;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/source-sans-pro-latin-ext-700-normal-Cf8nNWsm.woff2) format("woff2"),url(/assets/source-sans-pro-latin-ext-700-normal-yj0w5CKO.woff) format("woff");unicode-range:U+0100-02AF,U+0304,U+0308,U+0329,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20CF,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Source Sans Pro;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/source-sans-pro-latin-700-normal-DL7J4422.woff2) format("woff2"),url(/assets/source-sans-pro-latin-700-normal-BNdTgDH_.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Sora;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/sora-latin-600-normal-Cdg4DaK0.woff2) format("woff2"),url(/assets/sora-latin-600-normal-1_7fyUAY.woff) format("woff")}.an-page{display:grid;gap:16px;min-width:0;color:var(--ink, #23253f)}.an-toolbar{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap}.an-title h2{margin:0;font-size:26px;letter-spacing:-.4px}.an-title p{margin:4px 0 0;color:var(--muted, #5b607f);font-size:14px}.an-sites{display:flex;gap:8px;overflow-x:auto;padding:2px;max-width:100%;scrollbar-width:thin}.an-sites button{display:grid;gap:1px;min-width:150px;padding:9px 14px;text-align:left;cursor:pointer;border:1px solid #dcd9f7;border-radius:14px;background:#fff;color:var(--ink, #23253f)}.an-sites button span{font-weight:700;font-size:14px}.an-sites button small{color:var(--muted, #5b607f);font-size:12px}.an-sites button[aria-selected=true]{border-color:var(--accent, #5b4fe8);box-shadow:0 0 0 3px #5b4fe81f}.an-site-single{display:inline-flex;align-items:center;gap:7px;padding:8px 13px;border:1px solid #dcd9f7;border-radius:999px;background:#fff;font-weight:700;font-size:14px}.an-toolbar-controls{display:flex;align-items:center;gap:10px;flex-wrap:wrap;min-width:0}.an-mode{display:inline-flex;gap:2px;padding:3px;border:1px solid #dcd9f7;border-radius:999px;background:#fff}.an-mode button{min-height:34px;padding:0 14px;border:0;border-radius:999px;background:transparent;color:var(--muted, #5b607f);font-size:14px;font-weight:700;cursor:pointer}.an-mode button[aria-pressed=true]{background:var(--accent, #5b4fe8);color:#fff}.an-sim-note{display:flex;align-items:center;gap:7px;margin:-4px 0 0;padding:9px 12px;border-radius:12px;background:#fff6e5;border:1px solid #f0d9a8;color:#6b4f16;font-size:13.5px;font-weight:600}.an-sim-note.is-live{background:#ecebfd;border-color:#d3cff8;color:#3a34a8}.an-sim-note svg{flex:none}.an-body{display:grid;gap:16px;transition:opacity .2s}.an-body.is-refreshing{opacity:.6}.an-card{position:relative;min-width:0;padding:18px 18px 16px;border:1px solid var(--line, #e3e5f1);border-radius:18px;background:#fff;box-shadow:0 8px 24px #282c500d}.an-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.an-card-head h3{margin:0;font-size:16px}.an-card-head p{margin:3px 0 0;color:var(--muted, #5b607f);font-size:13px}.an-table-toggle{flex:none;min-height:30px;padding:4px 11px;border:1px solid var(--line, #e3e5f1);border-radius:999px;background:#fff;color:var(--muted, #5b607f);font-size:12px;font-weight:700;cursor:pointer}.an-table-toggle[aria-pressed=true]{color:#fff;background:var(--accent, #5b4fe8);border-color:var(--accent, #5b4fe8)}.an-message{display:grid;justify-items:start;gap:10px}.an-message p{margin:0}.an-legend{display:flex;gap:14px;margin:10px 0 0;padding:0;list-style:none;color:var(--muted, #5b607f);font-size:12px;font-weight:600}.an-legend li{display:inline-flex;align-items:center;gap:6px}.an-legend i{width:10px;height:10px;border-radius:3px}.an-plot{position:relative;margin-top:8px}.an-plot svg{display:block;width:100%;height:auto;overflow:visible}.an-axis{fill:#6a6f8c;font-size:11px;font-family:inherit}.an-axis-strong{fill:var(--ink, #23253f);font-weight:700}.an-value{fill:var(--ink, #23253f);font-size:12px;font-weight:700;font-family:inherit}.an-hit{cursor:pointer;outline:none}.an-hit:hover path,.an-hit:focus-visible path{filter:brightness(1.08)}.an-hit:focus-visible rect:first-child{stroke:var(--accent, #5b4fe8);stroke-width:1.5}.an-cell{cursor:pointer;outline:none}.an-cell:hover,.an-cell:focus-visible{stroke:var(--ink, #23253f);stroke-width:1.5}.an-tooltip{position:absolute;top:-6px;z-index:3;transform:translate(-50%,-100%);display:grid;gap:3px;min-width:120px;padding:8px 10px;border-radius:10px;background:#23253f;color:#fff;box-shadow:0 8px 20px #1c1d3040;pointer-events:none;font-size:12px}.an-tooltip-title{color:#c9cbe0;font-weight:600}.an-tooltip-row{display:flex;align-items:center;gap:6px}.an-tooltip-row i{width:12px;height:2px;border-radius:1px}.an-tooltip-row strong{font-size:14px}.an-tooltip-row small{color:#c9cbe0}.an-ramp{display:flex;align-items:center;justify-content:flex-end;gap:3px;margin-top:6px;color:var(--muted, #5b607f);font-size:11px}.an-ramp i{width:16px;height:10px;border-radius:3px}.an-ramp span{margin:0 4px}.an-table-wrap{max-height:320px;overflow:auto;margin-top:10px}.an-table{width:100%;border-collapse:collapse;font-size:13px}.an-table th,.an-table td{padding:7px 8px;border-bottom:1px solid var(--line, #e3e5f1);text-align:right;font-variant-numeric:tabular-nums}.an-table th:first-child{text-align:left;font-weight:600}.an-table thead th{color:var(--muted, #5b607f);font-size:12px}.an-kpis{display:grid;grid-template-columns:1.3fr repeat(3,1fr);gap:12px}.an-hero,.an-kpi{display:grid;align-content:start;gap:4px;min-width:0;padding:16px 18px;border:1px solid var(--line, #e3e5f1);border-radius:18px;background:#fff;box-shadow:0 8px 24px #282c500d}.an-hero{background:linear-gradient(160deg,#fff,#f3f1fe);border-color:#dcd9f7}.an-kpi-label{display:inline-flex;align-items:center;gap:6px;color:var(--muted, #5b607f);font-size:13px;font-weight:600}.an-hero-value{font-size:52px;line-height:1;letter-spacing:-1.5px;font-weight:700}.an-kpi strong{overflow:hidden;font-size:24px;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}.an-kpi-note{color:var(--muted, #5b607f);font-size:12px}.an-delta{display:inline-flex;align-items:center;gap:4px;color:var(--muted, #5b607f);font-size:12px;font-weight:700}.an-delta.good{color:#1f7a45}.an-delta.bad{color:#b4232c}.an-insight{position:relative;display:grid;gap:10px;padding:18px 20px;border:1px solid #d7d2fb;border-radius:18px;background:radial-gradient(120% 140% at 100% 0%,#efeafe,#f8f7ff 45%,#fff)}.an-insight.is-busy{opacity:.75}.an-insight>header{display:flex;align-items:center;justify-content:space-between;gap:10px}.an-insight-badge{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;color:#3f35c9;background:#e8e4fd;font-size:12px;font-weight:700}.an-insight-refresh{display:inline-flex;align-items:center;gap:6px;min-height:32px;padding:4px 12px;border:1px solid #d7d2fb;border-radius:999px;background:#fff;color:#3f35c9;font-size:13px;font-weight:700;cursor:pointer}.an-insight h3{margin:0;font-size:20px;line-height:1.25;letter-spacing:-.2px}.an-insight-summary{margin:0;color:#3a3e5c;font-size:15px;line-height:1.55}.an-insight-points{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;margin:2px 0 0;padding:0;list-style:none}.an-insight-points li{display:flex;gap:9px;padding:11px 12px;border:1px solid #e6e3fb;border-radius:12px;background:#ffffffd9;font-size:13px;line-height:1.45}.an-insight-points li span{display:grid;gap:2px}.an-insight-points li strong{font-size:14px}.an-insight-points li>svg{flex:none;margin-top:2px;color:var(--muted, #5b607f)}.an-insight-points .trend-up>svg{color:#1f7a45}.an-insight-points .trend-down>svg{color:#b4232c}.an-insight-action{margin:0;padding:11px 13px;border-radius:12px;background:#5b4fe814;color:#2c2873;font-size:14px;line-height:1.5}.an-insight footer{color:var(--muted, #5b607f);font-size:12px}.an-insight-check{display:flex;align-items:center;gap:6px;margin:0;color:#1e6b45;font-size:12px}.an-insight-check.is-fallback{color:#8a5a00}.an-insight-empty{display:grid;justify-items:start;gap:8px}.an-insight-empty p{margin:0;color:#4b5070;font-size:14px;max-width:620px}.an-primary{display:inline-flex;align-items:center;gap:7px;min-height:40px;padding:8px 16px;border:0;border-radius:12px;background:var(--accent, #5b4fe8);color:#fff;font-weight:700;cursor:pointer;box-shadow:0 8px 18px #5b4fe833}.an-error{margin:0;color:#b4232c;font-size:13px}.an-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.an-span{grid-column:1 / -1}.an-ranked{display:grid;gap:10px;margin:14px 0 0;padding:0;list-style:none}.an-ranked li{display:grid;grid-template-columns:minmax(80px,34%) 1fr auto;align-items:center;gap:4px 10px;font-size:14px}.an-ranked-name{overflow:hidden;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.an-ranked-track{height:12px;border-radius:0 4px 4px 0;background:#f1f0fb;overflow:hidden}.an-ranked-track span{display:block;height:100%;border-radius:0 4px 4px 0;background:#9d92f2}.an-ranked li.is-top .an-ranked-track span{background:var(--accent, #5b4fe8)}.an-ranked li.is-quiet .an-ranked-name{color:var(--muted, #5b607f)}.an-ranked-value{display:grid;justify-items:end;line-height:1.15}.an-ranked-value strong{font-size:15px}.an-ranked-value small{color:var(--muted, #5b607f);font-size:11px;white-space:nowrap}.an-ranked-value small.up{color:#1f7a45}.an-ranked-value small.down{color:#b4232c}.an-ranked-note{grid-column:2 / -1;margin-top:-4px;color:var(--muted, #5b607f);font-size:12px}.an-empty{margin:14px 0 0;color:var(--muted, #5b607f);font-size:14px}.an-footnote{display:flex;align-items:center;gap:6px;margin:14px 0 0;color:var(--muted, #5b607f);font-size:12px}.an-quality{display:flex;align-items:flex-start;gap:7px;margin:0;color:var(--muted, #5b607f);font-size:12px;line-height:1.5}.an-quality svg{flex:none;margin-top:2px}@media(max-width:1100px){.an-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){.an-page{gap:12px}.an-title h2{font-size:22px}.an-grid{grid-template-columns:minmax(0,1fr);gap:12px}.an-kpis{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.an-hero{grid-column:1 / -1}.an-kpi{padding:12px 10px;border-radius:14px;gap:3px}.an-kpi .an-kpi-label{font-size:11px;gap:4px}.an-kpi .an-kpi-label svg{display:none}.an-kpi strong{font-size:17px}.an-kpi .an-kpi-note,.an-kpi .an-delta{font-size:11px}.an-hero-value{font-size:48px}.an-card{padding:14px 14px 12px;border-radius:16px}.an-kpi strong{font-size:20px}.an-insight{padding:16px}.an-insight h3{font-size:18px}}@media(prefers-reduced-motion:reduce){.an-body{transition:none}}.an-alerts.is-saving{opacity:.7}.an-alerts h3{display:inline-flex;align-items:center;gap:7px}.an-alerts h3 svg{color:var(--accent, #5b4fe8)}.an-alerts h4{display:flex;align-items:baseline;gap:6px;margin:14px 0 8px;font-size:13px}.an-alerts h4 small{color:var(--muted, #5b607f);font-weight:600;font-size:12px}.an-alerts-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 22px}.an-switch{position:relative;display:inline-flex;align-items:center;gap:8px;cursor:pointer;flex:none}.an-switch input{position:absolute;opacity:0;width:1px;height:1px}.an-switch>span[aria-hidden]{width:42px;height:24px;border-radius:999px;background:#c9cbe0;transition:background .15s;position:relative}.an-switch>span[aria-hidden]:after{content:"";position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #0003;transition:transform .15s}.an-switch input:checked+span{background:var(--accent, #5b4fe8)}.an-switch input:checked+span:after{transform:translate(18px)}.an-switch input:focus-visible+span{outline:2px solid var(--accent, #5b4fe8);outline-offset:2px}.an-switch-label{font-size:13px;font-weight:700;color:var(--muted, #5b607f)}.an-live,.an-alert-list,.an-limits-body ul{display:grid;gap:8px;margin:0;padding:0;list-style:none}.an-live li{display:grid;grid-template-columns:minmax(80px,38%) 1fr auto;align-items:center;gap:10px;font-size:14px}.an-live-name{display:grid;overflow:hidden;font-weight:600;white-space:nowrap;text-overflow:ellipsis}.an-live-name small{color:var(--muted, #5b607f);font-size:11px;font-weight:600}.an-live-meter{height:10px;border-radius:0 4px 4px 0;background:#f1f0fb;overflow:hidden}.an-live-meter span{display:block;height:100%;border-radius:0 4px 4px 0;background:#9d92f2}.an-live li.is-over .an-live-meter span{background:#d9480f}.an-live-count{display:inline-flex;align-items:center;gap:4px;color:var(--muted, #5b607f);font-size:13px;white-space:nowrap}.an-live-count strong{color:var(--ink, #23253f);font-size:15px}.an-live li.is-over .an-live-count{color:#b3400b;font-weight:700}.an-alert-list li{display:flex;align-items:center;gap:10px;padding:9px 10px;border:1px solid #f3d5c4;border-radius:12px;background:#fff8f3}.an-alert-list li.is-done{border-color:var(--line, #e3e5f1);background:#fff}.an-alert-icon{display:grid;place-items:center;flex:none;width:30px;height:30px;border-radius:50%;color:#b3400b;background:#fde6d8}.an-alert-list li.is-done .an-alert-icon{color:var(--muted, #5b607f);background:#f1f0fb}.an-alert-copy{display:grid;flex:1;min-width:0;font-size:14px}.an-alert-copy small{color:var(--muted, #5b607f);font-size:12px}.an-alert-list button{flex:none;min-height:32px;padding:4px 12px;border:1px solid #f0c6ad;border-radius:999px;background:#fff;color:#b3400b;font-weight:700;cursor:pointer}.an-alert-done{display:inline-flex;align-items:center;gap:4px;flex:none;color:var(--muted, #5b607f);font-size:12px;font-weight:600}.an-limits{margin-top:14px;border-top:1px solid var(--line, #e3e5f1)}.an-limits-toggle{display:inline-flex;align-items:center;gap:6px;min-height:40px;padding:8px 0 0;border:0;background:none;color:var(--accent, #5b4fe8);font-weight:700;cursor:pointer}.an-limits-toggle[aria-expanded=true] svg{transform:rotate(180deg)}.an-limits-body{display:grid;gap:10px;margin-top:6px}.an-limits-body li{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:14px}.an-window{display:inline-flex;align-items:center;gap:8px;color:var(--muted, #5b607f);font-size:13px;font-weight:600}.an-window select{min-height:34px;padding:4px 8px;border:1px solid var(--line, #e3e5f1);border-radius:10px;background:#fff;font:inherit;color:var(--ink, #23253f)}.an-stepper{display:inline-flex;align-items:center;border:1px solid var(--line, #e3e5f1);border-radius:999px;overflow:hidden}.an-stepper button{display:grid;place-items:center;width:36px;height:34px;border:0;background:#fff;color:var(--accent, #5b4fe8);cursor:pointer}.an-stepper button:disabled{color:#b8bbd0;cursor:default}.an-stepper output{min-width:38px;text-align:center;font-weight:700;font-size:14px}@media(max-width:760px){.an-alerts-grid{grid-template-columns:minmax(0,1fr)}}.an-actions{display:grid;gap:10px}.an-actions-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px;flex-wrap:wrap}.an-actions-head h3{margin:0;font-size:16px}.an-actions-head span{color:var(--muted, #5b607f);font-size:12px}.an-actions-list{display:grid;gap:8px;margin:0;padding:0;list-style:none}.an-actions-list li{display:flex;gap:10px;align-items:flex-start;padding:11px 12px;border:1px solid #e6e3fb;border-radius:12px;background:#faf9ff}.an-actions-icon{flex:none;display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#e8e4fd;color:#3f35c9}.an-actions-text{display:grid;gap:3px;min-width:0}.an-actions-text strong{font-size:14px;color:var(--ink, #1d2033)}.an-actions-text small{color:#4b5070;font-size:13px;line-height:1.45}.an-actions-empty{margin:0;color:#4b5070;font-size:14px}.an-actions-foot{margin:0;color:var(--muted, #5b607f);font-size:12px}.an-impact{display:grid;gap:12px}.an-impact-head{display:flex;align-items:flex-start;gap:10px}.an-impact-head h3{margin:0;font-size:16px}.an-impact-head p{margin:2px 0 0;color:var(--muted, #5b607f);font-size:13px}.an-impact-icon{flex:none;display:grid;place-items:center;width:32px;height:32px;border-radius:10px;color:#4a3fd0;background:#eceafd}.an-impact-grid{display:grid;gap:2px}.an-impact-row{display:grid;grid-template-columns:minmax(130px,1.3fr) minmax(0,1fr) minmax(0,1fr) 64px;align-items:center;gap:12px;padding:8px 0;border-top:1px solid #ecebf5;font-size:14px}.an-impact-labels{padding:0 0 4px;border-top:0;color:var(--muted, #5b607f);font-size:12px}.an-impact-row>span[role=cell]{display:grid;gap:4px;min-width:0}.an-impact-row b{font-weight:700;font-variant-numeric:tabular-nums}.an-impact-row i{display:block;height:6px;border-radius:999px}.an-impact-row i.was{background:#c9cbe0}.an-impact-row i.now{background:var(--accent, #5b4fe8)}.an-impact-delta{justify-self:end;font-weight:700;font-variant-numeric:tabular-nums;color:var(--muted, #5b607f)}.an-impact-delta.good{color:#1e7a3c}.an-impact-delta.bad{color:#b4232c}.an-impact-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.an-impact-foot{margin:0;color:var(--muted, #5b607f);font-size:12px}@media(max-width:560px){.an-impact-row{grid-template-columns:minmax(0,1fr) 56px 56px 48px;gap:8px;font-size:13px}.an-impact-row>span[role=rowheader]{font-size:12.5px}}body.landing-body{padding:0;background:var(--surface)}.sg-auth-page{min-height:100svh;display:grid;grid-template-columns:minmax(420px,1.08fr) minmax(420px,.92fr);color:#25263b;background:#f7f7fb;font-family:Source Sans Pro,sans-serif}.sg-auth-page *{box-sizing:border-box}.sg-auth-page a{color:inherit}.sg-auth-visual{position:relative;min-height:100svh;overflow:hidden;padding:38px clamp(32px,5vw,76px);color:#f7f7ff;background:#272940}.sg-auth-brand{position:relative;z-index:2;display:inline-flex;align-items:center;gap:10px;font-size:21px;font-weight:700;text-decoration:none}.sg-auth-brand>span{width:36px;height:38px;display:grid;place-items:center;border:1px solid #8e88e0;border-radius:8px;color:#bdb8ff}.sg-auth-art{position:absolute;top:12%;right:-5%;bottom:24%;left:2%;display:grid;place-items:center}.sg-auth-art img{position:relative;z-index:1;width:min(760px,102%);filter:drop-shadow(0 28px 25px #08091680);animation:sg-auth-float 8s ease-in-out infinite}.sg-auth-orbit{position:absolute;border:1px solid #8179e5;border-radius:50%;opacity:.32;transform:rotate(-12deg)}.sg-auth-orbit-one{width:74%;aspect-ratio:1.7}.sg-auth-orbit-two{width:92%;aspect-ratio:1.8;border-style:dashed}.sg-auth-signal,.sg-auth-event{position:absolute;z-index:2;border:1px solid #ffffff35;border-radius:8px;background:#353750e8;box-shadow:0 12px 30px #1112213d;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.sg-auth-signal{top:17%;right:9%;padding:8px 12px;font-size:12px}.sg-auth-signal span{display:inline-block;width:7px;height:7px;margin-right:7px;border-radius:50%;background:#62d492;box-shadow:0 0 0 4px #62d49225}.sg-auth-event{left:8%;bottom:12%;display:flex;align-items:center;gap:10px;padding:10px 13px}.sg-auth-event>svg{color:#f0ba62}.sg-auth-event strong,.sg-auth-event small{display:block}.sg-auth-event strong{font-size:12px}.sg-auth-event small{margin-top:2px;color:#c8c9dc;font-size:10px}.sg-auth-visual-copy{position:absolute;z-index:2;right:clamp(32px,5vw,76px);bottom:46px;left:clamp(32px,5vw,76px)}.sg-auth-visual-copy p{margin:0 0 10px;color:#aaa5ef;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.sg-auth-visual-copy h1{max-width:580px;margin:0;font-size:clamp(25px,2.5vw,38px);line-height:1.14;letter-spacing:-1px}.sg-auth-panel{display:grid;place-items:center;min-height:100svh;padding:42px clamp(26px,6vw,94px);background:#f8f8fc}.sg-auth-form-wrap{width:min(420px,100%)}.sg-auth-back{display:inline-flex;align-items:center;gap:7px;margin-bottom:46px;color:#666b84!important;font-size:13px;text-decoration:none}.sg-auth-eyebrow{margin:0 0 7px;color:#5b4fe8;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.sg-auth-form-wrap h2{margin:0;font-size:clamp(31px,3vw,42px);line-height:1.1;letter-spacing:-1.1px}.sg-auth-intro{margin:13px 0 28px;color:#656981;font-size:15px;line-height:1.55}.sg-auth-form{display:grid;gap:8px}.sg-auth-form>label{margin-top:7px;color:#3e425a;font-size:13px;font-weight:700}.sg-auth-input{min-height:48px;display:flex;align-items:center;gap:9px;padding:0 13px;border:1px solid #c8cad9;border-radius:8px;color:#777b91;background:#fff}.sg-auth-input:focus-within{border-color:#5b4fe8;box-shadow:0 0 0 3px #5b4fe820}.sg-auth-input input{width:100%;min-width:0;padding:12px 0;border:0;outline:0;color:#25263b;background:transparent;font:inherit}.sg-auth-input button{width:34px;min-height:34px;display:grid;place-items:center;padding:0;border:0;border-radius:6px;color:#666b84;background:transparent}.sg-auth-submit{min-height:49px;display:flex;align-items:center;justify-content:center;gap:9px;margin-top:17px;border:1px solid #5b4fe8;border-radius:8px;color:#fff;background:#5b4fe8;font:inherit;font-weight:700;cursor:pointer}.sg-auth-submit:hover{background:#4f43df}.sg-auth-submit:disabled{cursor:default;opacity:.55}.sg-auth-error{margin:6px 0 0;color:#a02e3d;font-size:13px}.sg-auth-switch{margin:24px 0 0;color:#656981;font-size:14px;text-align:center}.sg-auth-switch a{color:#5045ce;font-weight:700;text-underline-offset:3px}.sg-auth-privacy{margin:22px 0 0;color:#62677f;font-size:11px;line-height:1.5;text-align:center}@keyframes sg-auth-float{50%{transform:translateY(-12px)}}@media(max-width:820px){.sg-auth-page{display:block;min-height:100svh;background:#292b44}.sg-auth-visual{min-height:230px;height:29svh;display:grid;place-items:center;padding:22px 24px;background:linear-gradient(155deg,#695ff1,#5649e1 48%,#3e36b8)}.sg-auth-brand{flex-direction:column;gap:12px;font-size:25px}.sg-auth-brand>span{width:82px;height:82px;border-radius:25px;color:#fff;background:#ffffff24;box-shadow:inset 0 1px #ffffff4d,0 18px 42px #1a146940}.sg-auth-brand>span svg{width:50px;height:50px}.sg-auth-art,.sg-auth-event,.sg-auth-visual-copy{display:none}.sg-auth-panel{position:relative;z-index:3;min-height:71svh;margin-top:-14px;padding:26px 24px 34px;border-radius:24px 24px 0 0}.sg-auth-back{margin-bottom:24px}.sg-auth-form-wrap h2{font-size:32px}.sg-auth-intro{margin-bottom:20px}}@media(prefers-reduced-motion:reduce){.sg-auth-art img{animation:none}}.lp{--lp-ink: var(--ink);--lp-muted: #555a75;--accent: #4c42c8;--lp-line: var(--line);color:var(--lp-ink);font-family:Source Sans Pro,sans-serif}.lp *{box-sizing:border-box}.lp a{color:inherit;text-decoration:none}.lp button{font:inherit;color:inherit;cursor:pointer;border-radius:0;background:none;box-shadow:none}.lp button:hover{background:none}.lp a:focus-visible,.lp button:focus-visible,.lp summary:focus-visible{outline:2px solid #6354cc;outline-offset:5px}.lp-first-fold{background:#e9eaf6;min-height:min(900px,100svh);overflow:hidden}.lp-nav{height:106px;max-width:1600px;padding:0 5.5%;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:32px}.lp-brand{display:inline-flex;gap:10px;align-items:center;font-size:22px;font-weight:600;letter-spacing:-.65px}.lp-brand-mark{width:34px;height:38px;border:1px solid currentColor;border-radius:9px;display:grid;place-items:center}.lp-brand-dot{font-size:10px;align-self:flex-start;margin-left:-7px;margin-top:4px}.lp-nav nav{display:flex;gap:35px;font-size:14px}.lp-nav nav a:hover{text-decoration:underline;text-underline-offset:6px}.lp-nav-cta{display:flex;gap:10px;align-items:center;font-size:14px;border-bottom:1px solid #aaa5d9;padding:7px 0}.lp-hero{max-width:1600px;min-height:710px;height:calc(100svh - 106px);max-height:850px;position:relative;margin:auto;padding:76px 5.5% 46px;display:grid;grid-template-columns:44% 56%;grid-template-rows:1fr auto}.lp-copy{position:relative;z-index:2;padding-top:14px}.lp-copy a,.lp-copy button{pointer-events:auto}.lp-intro{font-size:13px;display:flex;align-items:center;gap:10px;margin-bottom:25px;color:#555a75}.lp-intro-line{height:1px;width:25px;background:#5b4fe8}.lp h1{font-family:Source Sans Pro,sans-serif;font-size:clamp(52px,4.7vw,76px);line-height:1.04;font-weight:600;letter-spacing:-2.8px;margin:0 0 27px}.lp h1 em{font-weight:600;font-style:normal;color:var(--accent)}.lp h2 em{font-weight:600;font-style:normal}.lp-description{font-size:19px;line-height:1.48;margin:0 0 13px;max-width:375px}.lp-description-detail{font-size:15px;line-height:1.65;color:var(--lp-muted);max-width:330px;margin:0}.lp-actions{display:flex;align-items:center;gap:22px;margin-top:30px;flex-wrap:wrap}.lp-primary{background:#5b4fe8;color:#fff!important;border:1px solid #5b4fe8;border-radius:28px;padding:8px 22px 8px 8px;display:inline-flex;align-items:center;gap:13px;font-size:14px;transition:background .18s}.lp-primary:hover{background:#4f43df}.lp-primary>span{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#7469eb}.lp .lp-tour{padding:9px 0;border:0;gap:7px;font-size:13px;display:inline-flex;align-items:center}.lp-local-note{display:block;font-size:11px;color:var(--lp-muted);margin-top:17px}.lp-visual{position:absolute;width:66%;right:-2%;top:0;bottom:62px;perspective:1200px;--tilt: 0deg;--lift: 0deg}.lp-house-perspective{position:absolute;top:28px;right:-10px;bottom:0;left:-20px;display:flex;align-items:center;transform:rotateY(var(--tilt)) rotateX(var(--lift));transition:transform .8s ease-out}.lp-house-float{position:relative;width:100%;transform:translateY(0)}.lp-house{width:100%;height:auto;display:block;filter:drop-shadow(0 20px 15px #34345316)}.lp-house-shadow{width:54%;height:10%;position:absolute;left:26%;bottom:7%;background:#777ea8;opacity:.22;border-radius:50%;filter:blur(24px);transform:scaleX(1) rotate(-12deg)}.lp-moving .lp-house-float{animation:lp-float 8s ease-in-out infinite}.lp-moving .lp-house-shadow{animation:lp-shadow 8s ease-in-out infinite}@keyframes lp-float{0%,to{transform:translateY(0) rotate(-.4deg)}50%{transform:translateY(-16px) rotate(.4deg)}}@keyframes lp-shadow{0%,to{opacity:.22;transform:scaleX(1) rotate(-12deg)}50%{opacity:.13;transform:scaleX(.92) rotate(-12deg)}}.lp-house-overlay{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.lp-guard-cameras{width:100%;height:100%;overflow:visible;position:absolute;top:0;right:0;bottom:0;left:0}.lp-guard-beam{stroke:#6252db;stroke-opacity:.8;stroke-width:1.8}.lp-guard-range{fill:none;stroke:#eeebff;stroke-width:1.4;stroke-dasharray:5 5;opacity:.8}.lp-guard-aim{fill:none;stroke:#5b4fe8;stroke-width:1.2;stroke-dasharray:4 5;opacity:.75}.lp-guard-ring{fill:#5b4fe814;stroke:#5b4fe844;stroke-width:1}.lp-guard-disc{fill:var(--accent);stroke:#fff;stroke-width:2}.lp-guard-camera>svg{color:#fff}.lp-guard-camera text{font-size:12px;font-weight:600;fill:#373156;stroke:#f2f3fa;stroke-width:3px;stroke-linejoin:round;paint-order:stroke}.lp-demo-route{position:absolute;width:100%;height:100%;opacity:0;transition:opacity .4s;fill:#dca343}.lp-demo-route path{fill:none;stroke:#d39638;stroke-width:3;stroke-dasharray:5 7}.lp-chapter-2 .lp-demo-route{opacity:1}.lp-moving .lp-demo-route path{animation:lp-route 3s linear infinite}@keyframes lp-route{to{stroke-dashoffset:-48}}.lp-visual-caption{position:absolute;bottom:0;right:12%;left:24%;display:flex;justify-content:space-between;gap:12px;align-items:center;font-size:10px;color:#555a75}.lp .lp-visual-caption button{padding:4px;min-height:28px;font-size:10px;border:0;gap:5px;white-space:nowrap}.lp-steps{grid-row:2;display:flex;position:relative;z-index:4;width:450px;gap:10px;margin-top:58px}.lp .lp-steps button{width:105px;padding:0;border:0;display:block;text-align:left}.lp-step-box{height:78px;border:1px solid #c4c4e0;padding:12px 10px 9px;display:grid;grid-template-columns:1fr auto;gap:10px;transition:background .16s,border .16s}.lp-step-box>span{grid-column:1 / -1;font-size:10px;white-space:nowrap}.lp-step-box>svg:last-child{grid-column:2;grid-row:1;opacity:.55}.lp-steps button[aria-pressed=true] .lp-step-box{border-color:#5b4fe8;background:#fff}.lp-step-index{font-size:10px;margin-top:11px;display:flex;gap:9px;align-items:center;color:#555a75}.lp-step-progress{height:1px;flex:1;background:#aaa5d960}.lp-steps button[aria-pressed=true] .lp-step-progress{background:#5b4fe8}.lp-scroll{position:absolute;right:5.5%;bottom:34px;display:flex;gap:9px;align-items:center;font-size:11px}.lp-explainer{display:grid;grid-template-columns:1fr 1.1fr;gap:12%;padding:110px 8%;max-width:1500px;margin:auto}.lp-section-number{font-size:12px;color:#555a75}.lp h2{font-family:Source Sans Pro,sans-serif;font-size:42px;line-height:1.13;letter-spacing:-1.3px;font-weight:600;margin:28px 0 22px}.lp-section-intro>p{max-width:335px;line-height:1.8;color:#555a75;font-size:15px}.lp-section-intro>a{display:inline-flex;align-items:center;gap:16px;margin-top:20px;border-bottom:1px solid #aaa5d9;padding-bottom:7px;font-size:14px}.lp-feature-list{padding-top:10px}.lp-feature-list details{border-top:1px solid #d7d9e9;padding:25px 0}.lp-feature-list details:last-child{border-bottom:1px solid #d7d9e9}.lp-feature-list summary{list-style:none;display:flex;align-items:center;gap:17px;cursor:pointer}.lp-feature-list summary::-webkit-details-marker{display:none}.lp-feature-list summary>span:first-child{font-size:10px;color:#555a75}.lp-feature-list h3{font-size:16px;font-weight:600;margin:0;flex:1}.lp-plus{font-size:20px;font-weight:400}.lp-feature-list details[open] .lp-plus{transform:rotate(45deg)}.lp-feature-list details p{padding-left:70px;margin:15px 0 0;font-size:14px;line-height:1.8;color:#555a75}.lp-privacy{background:#23253f;color:#f2f3fa;padding:75px 8%;display:grid;grid-template-columns:1fr 1.1fr;gap:12%}.lp-privacy h2{margin-bottom:0}.lp-privacy-copy{max-width:480px;padding-top:5px}.lp-privacy-copy p{font-size:15px;line-height:1.85;color:#d4d5eb}.lp-privacy-copy a{display:inline-flex;align-items:center;gap:18px;font-size:14px;padding:13px 0 6px;border-bottom:1px solid #8b85c0}.lp-footer{display:flex;justify-content:space-between;align-items:center;padding:35px 5.5%;gap:25px}.lp-footer .lp-brand{font-size:18px}.lp-footer p{font-size:12px;color:#555a75}.lp-footer>a{display:inline-flex;align-items:center;gap:10px;font-size:12px}.lp-skip{position:absolute;top:-100px;z-index:10;padding:12px;background:#fff}.lp-skip:focus{top:8px;left:8px}.lp-demo-section{padding:85px 5.5% 55px;max-width:1600px;margin:auto;scroll-margin-top:24px}.lp-section-heading{display:flex;justify-content:space-between;align-items:end;gap:35px;margin-bottom:32px}.lp-section-heading h2{margin:0 0 18px}.lp-section-heading h2 span{color:var(--accent)}.lp-section-heading p{color:var(--lp-muted);max-width:600px;font-size:17px;line-height:1.6;margin:0}.lp-demo-disclosure{flex:none;font-size:12px;line-height:1.7;text-align:right;color:var(--lp-muted)}.lp-workspace{border:1px solid #d1d3e8;border-radius:12px;background:var(--card);overflow:hidden}.lp-demo-bar{display:flex;align-items:center;justify-content:space-between;padding:14px 22px;border-bottom:1px solid var(--line)}.lp-demo-bar>span{display:flex;align-items:center;gap:12px;font-weight:600}.lp-demo-bar small{font-size:12px;font-weight:400;color:var(--lp-muted);border-left:1px solid var(--line);padding-left:12px}.lp-demo-logo{color:var(--accent);display:inline-flex}.lp-demo-bar [role=group]{display:flex;border:1px solid var(--line);border-radius:6px;overflow:hidden}.lp .lp-demo-bar button{min-height:34px;border:0;font-size:13px;padding:6px 16px}.lp .lp-demo-bar button[aria-pressed=true]{background:var(--accent);color:#fff}.lp-demo-content{display:grid;grid-template-columns:1fr 310px}.lp-demo-map{position:relative;min-width:0;height:425px;background:#cfe0c2}.lp-demo-map .spatial-map{padding:0}.lp-map-note{position:absolute;bottom:10px;left:12px;max-width:calc(100% - 24px);font-size:11px;background:#fffffff2;padding:6px 10px;border:1px solid var(--line);pointer-events:none}.lp-demo-evidence{border-left:1px solid var(--line);display:flex;flex-direction:column;min-width:0}.lp-camera-tabs{display:flex;border-bottom:1px solid var(--line)}.lp .lp-camera-tabs button{flex:1;min-height:42px;border:0;font-size:12px;padding:8px}.lp .lp-camera-tabs button[aria-pressed=true]{color:var(--accent);background:var(--accent-soft);box-shadow:inset 0 -2px var(--accent)}.lp-evidence-art{position:relative;background:#e1e3f1}.lp-evidence-art>svg{display:block;width:100%;height:150px}.lp-evidence-art>span{position:absolute;top:8px;left:9px;font-size:10px;background:#ffffffed;padding:2px 6px}.lp-no-evidence{height:150px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:10px;color:#555a75;font-size:12px}.lp-evidence-copy{padding:15px 18px 8px}.lp-evidence-label{color:var(--accent);font-size:12px}.lp-evidence-copy h3{font-size:19px;margin:4px 0 7px}.lp-evidence-copy p{font-size:13px;line-height:1.5;color:var(--lp-muted);margin:0}.lp .lp-review{align-self:flex-start;border:1px solid var(--line);border-radius:6px;margin:auto 18px 14px;padding:6px 10px;min-height:34px;font-size:12px;color:var(--accent)}.lp-replay-controls{display:flex;gap:18px;align-items:center;border-top:1px solid var(--line);padding:17px 20px}.lp .lp-replay-controls>button{border:0;font-size:13px;padding:5px 8px;flex:none}.lp-timeline{display:flex;flex:1;gap:4px;min-width:0}.lp .lp-timeline button{display:flex;flex-direction:column;align-items:start;gap:3px;flex:1;font-size:11px;padding:9px 7px 0;border:0;border-top:2px solid var(--line);min-width:0}.lp-timeline time{color:var(--lp-muted)}.lp .lp-timeline button[aria-pressed=true]{border-color:var(--accent);color:var(--accent)}.lp-demo-foot{display:flex;align-items:start;justify-content:space-between;gap:28px;margin-top:20px;font-size:12px;color:var(--lp-muted)}.lp-demo-foot>span{display:flex;gap:6px;align-items:center;flex:none}.lp-demo-foot p{max-width:550px;margin:0;line-height:1.5}.lp-demo-foot a{color:var(--accent);flex:none;display:inline-flex;align-items:center}.lp .lp-feature-tour{border:1px solid var(--line);border-radius:6px;font-size:13px;margin:5px 20px 0 0;padding:7px 12px}.lp-explainer{padding-top:65px;padding-bottom:85px}.lp-comparison{padding:75px 8%;background:#fff}.lp-comparison>*{max-width:1300px;margin-left:auto;margin-right:auto}.lp-comparison table{width:100%;border-collapse:collapse;table-layout:fixed;font-size:15px;line-height:1.55}.lp-comparison caption{text-align:left;font-size:13px;color:var(--lp-muted);margin-bottom:16px}.lp-comparison th,.lp-comparison td{padding:23px;border-top:1px solid var(--line);vertical-align:top;text-align:left}.lp-comparison th:first-child{width:23%;padding-left:0}.lp-comparison thead th{font-weight:600;font-size:15px}.lp-comparison thead th:last-child{color:var(--accent)}.lp-comparison td{color:var(--lp-muted)}.lp-comparison td:last-child{background:#f6f5fe;color:var(--ink)}.lp-comparison td strong{display:block;color:var(--accent);font-weight:600;margin-bottom:5px}.lp-comparison td a{display:flex;align-items:center;gap:5px;width:fit-content;margin-top:9px;font-size:12px;text-decoration:underline;text-underline-offset:3px}.lp-comparison-note{font-size:12px;color:var(--lp-muted);line-height:1.7;margin-top:23px}@media(max-width:1100px){.lp-demo-foot{flex-wrap:wrap;gap:12px 25px}.lp-demo-content{grid-template-columns:1fr 285px}.lp-replay-controls{gap:7px;padding:15px 10px}}@media(max-width:760px){.lp-demo-section{padding:55px 20px 30px}.lp-section-heading{align-items:start;flex-direction:column;gap:15px}.lp-section-heading p{font-size:15px}.lp-demo-disclosure{text-align:left}.lp-demo-content{grid-template-columns:1fr}.lp-demo-map{height:330px}.lp-demo-bar{padding:12px}.lp-demo-bar small{display:none}.lp-demo-bar>span{font-size:14px;gap:7px}.lp-demo-evidence{border-left:0;border-top:1px solid var(--line)}.lp-evidence-copy{padding-bottom:15px}.lp-replay-controls{flex-wrap:wrap;justify-content:space-between}.lp-timeline{order:3;flex:0 0 100%;flex-wrap:wrap;gap:8px}.lp .lp-timeline button{min-width:28%;font-size:12px}.lp-demo-foot{flex-direction:column}.lp-comparison{padding:55px 24px}.lp-comparison table,.lp-comparison tbody,.lp-comparison caption{display:block}.lp-comparison thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.lp-comparison tr{display:block;padding-bottom:22px}.lp-comparison th:first-child{width:auto;display:block;padding:22px 0 12px;font-size:18px}.lp-comparison td{display:block;padding:16px;border-top:0}.lp-comparison td:before{display:block;font-size:12px;font-weight:600;margin-bottom:8px}.lp-comparison td:nth-child(2):before{content:"Ring offers"}.lp-comparison td:nth-child(3):before{content:"Pathlight adds";color:var(--accent)}}@media(min-width:1700px){.lp-hero{height:850px}}@media(max-width:1100px){.lp-nav{height:88px;padding:0 5%}.lp-nav nav{gap:20px}.lp-hero{min-height:710px;height:calc(100svh - 88px);padding:65px 5% 38px}.lp h1{font-size:54px;letter-spacing:-2px}.lp-description{font-size:17px}.lp-visual{width:68%;right:-9%;top:32px;bottom:135px}.lp-visual-caption{bottom:-33px;right:18%;left:17%}.lp-steps{width:430px}.lp-actions{gap:15px}}@media(max-width:760px){.lp-nav{height:80px;gap:15px;padding:0 22px}.lp-brand{font-size:20px}.lp-nav nav{display:none}.lp-nav-cta{font-size:12px;gap:5px}.lp-nav-cta svg{width:12px}.lp-hero{height:auto;max-height:none;min-height:0;display:flex;flex-direction:column;padding:35px 24px 32px}.lp-copy{padding:0}.lp-intro{font-size:11px;margin-bottom:23px}.lp h1{font-size:clamp(42px,8vw,60px);letter-spacing:-1.5px;margin-bottom:22px}.lp-description{font-size:17px}.lp-description-detail{max-width:360px;font-size:14px}.lp-actions{margin-top:24px;gap:20px}.lp-local-note{font-size:10px}.lp-visual{position:relative;width:calc(100% + 48px);margin-left:-24px;height:385px;right:auto;top:auto;bottom:auto;margin-top:15px}.lp-house-perspective{top:-20px;right:-8px;bottom:25px;left:-8px}.lp-house-shadow{bottom:20%}.lp-visual-caption{bottom:2px;left:24px;right:24px;font-size:9px}.lp-steps{width:100%;gap:7px;margin-top:28px}.lp .lp-steps button{width:25%}.lp-step-box{height:73px;padding:10px 7px}.lp-step-box>span{font-size:9px}.lp-step-index{margin-top:8px;font-size:9px}.lp-scroll{position:static;justify-content:flex-end;margin-top:27px;font-size:10px}.lp-explainer,.lp-privacy{grid-template-columns:1fr;padding:60px 26px;gap:35px}.lp h2{font-size:37px}.lp-feature-list summary{gap:12px}.lp-feature-list h3{font-size:14px}.lp-feature-list details p{padding-left:56px}.lp-footer{padding:30px 26px;align-items:flex-start;flex-direction:column;gap:12px}.lp-footer p{margin:0}}@media(prefers-reduced-motion:reduce){.lp *,.lp *:before,.lp *:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.lp-house-perspective{transform:none!important}}@media(max-width:760px){.landing-body{background:#e9ebf3}.lp{--lp-muted: #50566f;color:#191a2f;background:#e9ebf3}.lp-nav{position:sticky;top:0;z-index:20;border-bottom:1px solid rgba(194,199,219,.82);background:#f9f9fdd6;backdrop-filter:blur(18px) saturate(120%);-webkit-backdrop-filter:blur(18px) saturate(120%)}.lp-brand-mark{border-color:#aaaee0;background:#ffffffb8}.lp-nav-cta{padding:8px 10px;border:1px solid #bfc3d8;border-radius:8px;background:#ffffffb8}.lp-hero{padding-top:20px}.lp-copy{padding:20px;border:1px solid rgba(205,208,225,.9);border-radius:12px;background:#ffffffad;box-shadow:0 2px 8px #22244214;backdrop-filter:blur(14px) saturate(115%);-webkit-backdrop-filter:blur(14px) saturate(115%)}.lp-intro,.lp-description-detail,.lp-local-note,.lp-step-index{color:#50566f}.lp-primary{min-height:44px;padding:7px 16px 7px 7px;border-radius:9px}.lp-primary>span{border-radius:7px}.lp .lp-tour{min-height:42px;padding:8px 10px;border:1px solid #c6cada;border-radius:8px;background:#ffffffad}.lp-visual{margin-top:8px}.lp-step-box{border-color:#b5b9d1eb;border-radius:8px;background:#ffffff94;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.lp-steps button[aria-pressed=true] .lp-step-box{border-color:#6a5ded;background:#ffffffe6}.lp-workspace{border-color:#bec2d8eb;background:#ffffffc7;box-shadow:0 2px 8px #22244217;backdrop-filter:blur(12px) saturate(110%);-webkit-backdrop-filter:blur(12px) saturate(110%)}.lp-demo-bar,.lp-demo-evidence,.lp-evidence-copy{background:#ffffffb8}.lp-explainer{background:#f8f9fdc2}.lp-feature-list details{border-color:#c9cddb;background:#ffffff6b}.lp-feature-list summary{padding-inline:10px}.lp-feature-list details p{padding-right:10px}.lp-comparison{background:#ffffffbd}.lp-comparison td{border:1px solid #d1d4e2;background:#ffffffb8}.lp-comparison td:last-child{border-color:#c3bff1;background:#efedfde6}.lp-footer{border-top:1px solid #c9cddb;background:#f9f9fdc2}}body.landing-body{min-height:100dvh;overflow-x:hidden;overflow-y:auto;background:#dfe2ed}.sg-entry,.sg-entry *{box-sizing:border-box}.sg-mobile-entry,.sg-mobile-welcome{display:none}.sg-brand-symbol{display:block;overflow:visible}.sg-brand-symbol path{fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.sg-brand-symbol path:first-child{stroke-width:2.6}.sg-brand-symbol circle{fill:#d49431;stroke:currentColor;stroke-width:1.1}.sg-entry{width:100%;height:100dvh;min-height:560px;display:grid;grid-template-rows:76px minmax(0,1fr) 42px;overflow:hidden;color:#191a2f;background:#e6e8f1;font-family:Source Sans Pro,sans-serif}.sg-entry button,.sg-entry a{min-height:42px;display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:8px;color:inherit;font:inherit;font-weight:600;text-decoration:none}.sg-entry button{cursor:pointer}.sg-entry button:focus-visible,.sg-entry a:focus-visible{outline:3px solid #8b80ed;outline-offset:2px}.sg-entry-nav{width:min(1440px,100%);margin:auto;padding:0 32px;display:flex;align-items:center;justify-content:space-between;gap:20px}.sg-entry-brand{display:inline-flex;align-items:center;gap:10px;font-size:22px;font-weight:700;letter-spacing:-.5px}.sg-entry-brand-mark{width:36px;height:36px;display:grid;place-items:center;border:1px solid #a9add0;border-radius:9px;color:#5b4fe8;background:#ffffffa3;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.sg-entry-auth{display:flex;gap:8px}.sg-entry-auth button{padding:8px 13px;border:1px solid #bec2d6;background:#ffffff94;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.sg-entry-auth .sg-entry-signup{border-color:#5b4fe8;color:#fff;background:#5b4fe8}.sg-entry-main{width:min(1440px,100%);min-height:0;margin:auto;padding:22px 32px 26px;display:grid;grid-template-columns:minmax(330px,.78fr) minmax(500px,1.22fr);align-items:center;gap:clamp(28px,5vw,74px)}.sg-entry-copy{min-width:0;padding:clamp(22px,3vw,40px);border:1px solid rgba(194,198,216,.88);border-radius:12px;background:#ffffff94;box-shadow:0 2px 8px #22244214;backdrop-filter:blur(16px) saturate(115%);-webkit-backdrop-filter:blur(16px) saturate(115%)}.sg-entry-kicker{display:flex;align-items:center;gap:8px;margin-bottom:18px;color:#555b78;font-size:14px;font-weight:600}.sg-entry-copy h1{margin:0;color:#191a2f;font-size:clamp(46px,5vw,72px);line-height:.98;letter-spacing:-2.3px}.sg-entry-copy h1 span{color:#5b4fe8}.sg-entry-copy>p{max-width:520px;margin:22px 0 0;color:#4e546f;font-size:17px;line-height:1.55}.sg-entry-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}.sg-entry-actions a,.sg-entry-actions button{padding:9px 16px;border:1px solid #bfc3d7;background:#ffffffb8}.sg-entry-actions .sg-entry-primary{border-color:#5b4fe8;color:#fff;background:#5b4fe8}.sg-entry-benefits{margin-top:24px;padding-top:18px;display:grid;gap:10px;border-top:1px solid #cdd0df;color:#454b68;font-size:14px}.sg-entry-benefits span{display:flex;align-items:center;gap:9px}.sg-entry-benefits svg{color:#5b4fe8}.sg-entry-visual{min-width:0;height:min(620px,100%);min-height:420px;display:grid;grid-template-rows:62px minmax(0,1fr);overflow:hidden;border:1px solid rgba(184,189,211,.9);border-radius:12px;background:#ffffff94;box-shadow:0 2px 8px #22244217;backdrop-filter:blur(16px) saturate(115%);-webkit-backdrop-filter:blur(16px) saturate(115%)}.sg-entry-visual>header{padding:0 18px;display:flex;align-items:center;justify-content:space-between;gap:16px;border-bottom:1px solid rgba(194,198,216,.9);background:#ffffff85}.sg-entry-visual>header div span,.sg-entry-visual>header div strong{display:block}.sg-entry-visual>header div strong{font-size:16px}.sg-entry-visual>header div span{margin-top:2px;color:#616783;font-size:12px}.sg-entry-protected{display:inline-flex;align-items:center;gap:5px;color:#276846;font-size:13px;font-weight:700}.sg-entry-map{position:relative;min-height:0;overflow:hidden;background:#cfe0c2}.sg-entry-map>svg{width:100%;height:100%;display:block}.sg-entry-ground{fill:#cfe0c2}.sg-entry-coverage{fill:#5b4fe818;stroke:#6f64e0;stroke-width:1.5;stroke-dasharray:5 5}.sg-entry-floor rect{fill:#f4f5fb;stroke:#858dd0;stroke-width:2}.sg-entry-floor line{stroke:#858dd0;stroke-width:2}.sg-entry-room-labels{fill:#3f4563;font-size:15px;text-anchor:middle}.sg-entry-route{fill:none;stroke:#d08b2b;stroke-width:4;stroke-linecap:round;stroke-dasharray:6 8}.sg-entry-person circle{fill:#5b4fe8;stroke:#fff;stroke-width:3}.sg-entry-person rect{fill:#d09a4f;stroke:#fff;stroke-width:2}.sg-entry-camera .sg-camera-ring{fill:#fff;stroke:var(--sg-camera, #5b4fe8);stroke-width:4.5;filter:drop-shadow(0 2px 4px rgba(35,37,63,.25))}.sg-entry-camera .sg-camera-dot{fill:var(--sg-camera, #5b4fe8)}.sg-entry-camera-card,.sg-entry-incident{position:absolute;display:flex;align-items:center;gap:10px;border:1px solid rgba(193,197,216,.94);border-radius:10px;background:#ffffffc2;box-shadow:0 2px 8px #22244217;backdrop-filter:blur(13px) saturate(120%);-webkit-backdrop-filter:blur(13px) saturate(120%)}.sg-entry-camera-card{top:18px;left:18px;padding:9px 10px}.sg-entry-camera-card>span:nth-child(2){min-width:110px}.sg-entry-camera-card strong,.sg-entry-camera-card small,.sg-entry-incident strong,.sg-entry-incident small{display:block}.sg-entry-camera-card strong{font-size:13px}.sg-entry-camera-card small{color:#5d637d;font-size:11px}.sg-entry-camera-thumb{width:38px;height:38px;display:grid;place-items:center;border-radius:7px;color:#fff;background:#25263b}.sg-entry-live{padding-left:10px;border-left:1px solid #cdd0df;color:#276846;font-size:12px;font-weight:700}.sg-entry-incident{right:18px;bottom:18px;max-width:320px;padding:11px 13px}.sg-entry-incident>span:nth-child(2){flex:1}.sg-entry-incident small{color:#7a5625;font-size:11px;font-weight:700}.sg-entry-incident strong{margin-top:2px;font-size:13px}.sg-entry-incident-icon{width:38px;height:38px;display:grid;place-items:center;border-radius:7px;color:#76501e;background:#f4d89e}.sg-entry-footer{width:min(1440px,100%);margin:auto;padding:0 32px;display:flex;align-items:center;justify-content:space-between;gap:20px;color:#5d637c;font-size:11px}.landing-legal-links{display:flex;align-items:center;gap:14px}.landing-legal-links a{color:inherit;text-decoration:none}.landing-legal-links a:hover{color:#4e45ca}.lp-footer .landing-legal-links{font-size:12px}.sg-access-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:grid;place-items:center;padding:20px;background:#191a2f57;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.sg-access-dialog{position:relative;width:min(440px,100%);padding:26px;border:1px solid rgba(255,255,255,.82);border-radius:12px;background:#fafafde6;box-shadow:0 8px 24px #191a2f2e;backdrop-filter:blur(20px) saturate(120%);-webkit-backdrop-filter:blur(20px) saturate(120%)}.sg-access-dialog>svg{color:#5b4fe8}.sg-access-dialog h2{margin:15px 38px 8px 0;font-size:24px}.sg-access-dialog p{margin:0;color:#50566f;line-height:1.6}.sg-access-form{display:grid;gap:11px}.sg-access-form label{color:#343954;font-size:13px;font-weight:700}.sg-access-form input{width:100%;min-height:42px;padding:8px 10px;border:1px solid #bfc3d7;border-radius:8px;color:#191a2f;background:#fff;font:inherit}.sg-access-form input:focus{outline:3px solid #d9d5ff;border-color:#5b4fe8}.sg-access-error{color:#a83636!important;font-size:13px}.sg-access-close{position:absolute;top:14px;right:14px;width:38px;min-height:38px!important;padding:0;border:0;background:transparent}.sg-access-actions{margin-top:22px;display:flex;justify-content:flex-end;gap:8px}.sg-access-actions button,.sg-access-actions a{padding:8px 13px;border:1px solid #bfc3d7;background:#fff}.sg-access-actions a,.sg-access-actions .sg-access-submit{border-color:#5b4fe8;color:#fff;background:#5b4fe8}.sg-access-dialog button,.sg-access-dialog a{min-height:42px;display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:8px;color:inherit;font:inherit;font-weight:600;text-decoration:none}.lp .lp-local-note{padding:0;border:0;text-align:left}@media(max-width:900px){.sg-entry{grid-template-rows:68px minmax(0,1fr) 38px}.sg-entry-nav{padding:0 18px}.sg-entry-main{margin:0 auto;padding:12px 18px 14px;grid-template-columns:1fr;grid-template-rows:auto minmax(0,1fr);align-items:stretch;gap:12px}.sg-entry-copy{padding:18px}.sg-entry-kicker{margin-bottom:9px;font-size:12px}.sg-entry-copy h1{font-size:clamp(34px,8.8vw,48px);line-height:1;letter-spacing:-1.4px}.sg-entry-copy>p{margin-top:11px;font-size:14px;line-height:1.42}.sg-entry-actions{margin-top:14px}.sg-entry-actions a,.sg-entry-actions button{flex:1;padding-inline:10px}.sg-entry-benefits{margin-top:13px;padding-top:11px;grid-template-columns:repeat(3,1fr);gap:7px;font-size:11px}.sg-entry-benefits span{align-items:flex-start;gap:5px}.sg-entry-benefits svg{flex:none;width:15px;height:15px}.sg-entry-visual{height:auto;min-height:0;grid-template-rows:48px minmax(0,1fr)}.sg-entry-visual>header{padding-inline:13px}.sg-entry-camera-card{top:10px;left:10px;transform:scale(.88);transform-origin:top left}.sg-entry-incident{right:10px;bottom:10px;max-width:calc(100% - 20px)}.sg-entry-footer{padding:0 18px}.sg-entry-footer span:nth-child(2){display:none}}@media(max-width:520px){body.landing-body{height:100dvh;overflow:hidden}.lp-desktop{display:none}.sg-mobile-entry{display:block}.sg-entry{position:relative;display:block;min-height:0;background:#5b4fe8}.sg-entry-nav,.sg-entry-main,.sg-entry-footer{display:none}.sg-mobile-welcome{position:relative;isolation:isolate;width:100%;height:100%;display:grid;grid-template-rows:minmax(0,48%) minmax(0,52%);overflow:hidden;background:radial-gradient(circle at 88% 20%,rgba(255,255,255,.17) 0 7%,transparent 7.4%),linear-gradient(155deg,#695ff1,#5649e1 46%,#3e36b8)}.sg-mobile-glow{position:absolute;z-index:-1;border-radius:50%;background:#ffffff1a;filter:blur(1px)}.sg-mobile-glow-one{width:220px;height:220px;top:76px;left:-110px}.sg-mobile-glow-two{width:168px;height:168px;top:182px;right:-88px}.sg-mobile-brand{position:absolute;z-index:3;top:max(18px,env(safe-area-inset-top));left:0;right:0;display:flex;align-items:center;justify-content:center;gap:9px;color:#fff;font-size:19px;font-weight:700;letter-spacing:-.4px}.sg-mobile-brand-mark{width:38px;height:38px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.46);border-radius:12px;background:#ffffff26;box-shadow:inset 0 1px #ffffff38;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.sg-mobile-logo-stage{align-self:stretch;display:grid;place-content:center;justify-items:center;gap:14px;color:#fff}.sg-mobile-logo-mark{width:142px;height:142px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.42);border-radius:42px;color:#fff;background:#ffffff24;box-shadow:inset 0 1px #ffffff4d,0 24px 55px #18116645;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}.sg-mobile-logo-stage>strong{font-size:27px;letter-spacing:-.7px}.sg-mobile-scene{position:relative;align-self:end;justify-self:center;width:min(340px,calc(100% - 34px));height:min(270px,34dvh);margin-bottom:4px;border:1px solid rgba(255,255,255,.32);border-radius:28px;background:#ffffff1f;box-shadow:0 20px 46px #17126338,inset 0 1px #ffffff2e;backdrop-filter:blur(18px) saturate(120%);-webkit-backdrop-filter:blur(18px) saturate(120%)}.sg-mobile-scene>svg{width:100%;height:100%;display:block;padding:27px 8px 3px}.sg-mobile-status{position:absolute;z-index:2;top:13px;left:15px;display:inline-flex;align-items:center;gap:6px;color:#ffffffeb;font-size:11px;font-weight:600}.sg-mobile-status>span{width:7px;height:7px;border-radius:50%;background:#9bf0bd;box-shadow:0 0 0 4px #9bf0bd24}.sg-mobile-lawn{fill:#c0deb294}.sg-mobile-walkway{fill:#e7dccad1}.sg-mobile-home-shadow{fill:#1d167342;transform:translateY(7px)}.sg-mobile-home{fill:url(#sg-house-face);stroke:#ffffffd9;stroke-width:2}.sg-mobile-roof{fill:url(#sg-roof-face);stroke:#fff;stroke-width:2;stroke-linejoin:round}.sg-mobile-chimney{fill:#333753;stroke:#fff;stroke-width:1.5}.sg-mobile-siding{fill:none;stroke:#d7d7ed;stroke-width:1;opacity:.78}.sg-mobile-garage rect{fill:#e9eaf5;stroke:#9d9ed0;stroke-width:2}.sg-mobile-garage path{fill:none;stroke:#c2c3dc;stroke-width:1.2}.sg-mobile-garage circle{fill:#77799b}.sg-mobile-window rect{fill:#9ed6ed;stroke:#696db4;stroke-width:2}.sg-mobile-window path{fill:none;stroke:#ffffffe0;stroke-width:2}.sg-mobile-door rect:first-child{fill:#b98654;stroke:#76502f;stroke-width:2}.sg-mobile-door rect:nth-child(2){fill:#9dd3e8;stroke:#ffffffe6;stroke-width:1.5}.sg-mobile-door circle{fill:#f0c46a;stroke:#6f482b;stroke-width:1}.sg-mobile-door path{fill:none;stroke:#8487b6;stroke-width:3;stroke-linecap:round}.sg-mobile-plant path{fill:#b9814d}.sg-mobile-plant circle{fill:#6d9d63;stroke:#e4f0dd;stroke-width:1}.sg-mobile-coverage-cone{fill:#7f73ee2b;stroke:#ffffffa3;stroke-width:1.2;stroke-dasharray:4 5}.sg-mobile-path{fill:none;stroke:#d48d28;stroke-width:4;stroke-linecap:round;stroke-dasharray:5 7}.sg-mobile-camera .sg-camera-ring{fill:#fff;stroke:#5b4fe8;stroke-width:4.2}.sg-mobile-camera .sg-camera-dot{fill:#5b4fe8}.sg-mobile-parcel path{stroke:#fff5df;stroke-width:1.2;stroke-linejoin:round}.sg-mobile-parcel-top{fill:#e8ad4b}.sg-mobile-parcel-left{fill:#b9722e}.sg-mobile-parcel-right{fill:#d88e36}.sg-mobile-parcel .sg-mobile-parcel-tape{fill:none;stroke:#7a4b22;stroke-width:2.2}.sg-mobile-event{position:absolute;right:12px;bottom:12px;display:inline-flex;align-items:center;gap:6px;padding:7px 10px;border:1px solid rgba(255,255,255,.62);border-radius:999px;color:#3d2e15;background:#fff4d8e6;box-shadow:0 5px 14px #251f622b;font-size:11px;font-weight:700}.sg-mobile-sheet{position:relative;z-index:4;min-height:0;padding:clamp(24px,4dvh,38px) 24px max(15px,env(safe-area-inset-bottom));display:flex;flex-direction:column;align-items:center;justify-content:center;color:#191a2f;text-align:center;border-radius:52% 52% 0 0/34px 34px 0 0;background:#fafafdf5;box-shadow:0 -12px 40px #1f1a692e;backdrop-filter:blur(20px) saturate(120%);-webkit-backdrop-filter:blur(20px) saturate(120%)}.sg-mobile-sheet-icon{width:42px;height:42px;flex:0 0 auto;display:grid;place-items:center;margin-bottom:9px;border-radius:14px;color:#5b4fe8;background:#ebe9ff}.sg-mobile-eyebrow{margin:0 0 5px;color:#5b6079;font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.sg-mobile-sheet h1{margin:0;font-size:clamp(29px,8.8vw,38px);line-height:1.03;letter-spacing:-1.2px}.sg-mobile-sheet h1 span{color:#5b4fe8}.sg-mobile-intro{max-width:330px;margin:10px 0 0;color:#575d76;font-size:14px;line-height:1.4}.sg-mobile-actions{width:100%;max-width:340px;margin-top:17px}.sg-mobile-actions .sg-mobile-try{width:100%;min-height:48px;border-radius:12px;color:#fff;background:#5b4fe8;box-shadow:0 8px 18px #5b4fe83b}.sg-mobile-actions>div{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:9px}.sg-mobile-actions button{min-height:44px;border:1px solid #c8cbe0;border-radius:12px;color:#292b43;background:#ffffffd6}.sg-mobile-actions button:last-child{border-color:#cac6f7;color:#5044d0;background:#f0efff}.sg-mobile-sheet>small{margin-top:11px;color:#797e94;font-size:10px}.sg-entry-brand{gap:7px;font-size:18px}.sg-entry-brand-mark{width:32px;height:32px}.sg-entry-auth button{min-height:38px;padding:6px 9px;font-size:12px}.sg-entry-auth svg{display:none}.sg-entry-auth .sg-entry-signup{font-size:0}.sg-entry-auth .sg-entry-signup:after{content:"Sign up";font-size:12px}.sg-entry-copy{padding:15px}.sg-entry-kicker{margin-bottom:7px}.sg-entry-copy h1{font-size:clamp(32px,9.7vw,42px)}.sg-entry-copy>p{display:-webkit-box;overflow:hidden;-webkit-line-clamp:3;-webkit-box-orient:vertical}.sg-entry-benefits{display:none}.sg-entry-visual>header div span{display:none}.sg-entry-camera-card{display:none}.sg-entry-incident{padding:9px 10px}.sg-entry-incident-icon{width:34px;height:34px}.sg-entry-footer{justify-content:center}.sg-entry-footer span:last-child{display:none}.sg-access-dialog{padding:22px}.sg-access-actions{flex-direction:column-reverse}.sg-access-actions>*{width:100%}}.sg-entry.sg-mobile-entry{display:none}.sg-auth-success{padding:10px 12px;border-radius:10px;color:#24603d;background:#e7f5ec}.deletion-receipt{position:fixed;z-index:1000;top:16px;left:50%;transform:translate(-50%);width:min(520px,calc(100% - 28px));display:flex;align-items:center;gap:10px;padding:12px 14px;border:1px solid rgba(97,84,220,.35);border-radius:12px;color:#272446;background:#fffffff5;box-shadow:0 12px 32px #221d5b2e}.deletion-receipt span{display:grid;flex:1}.deletion-receipt small{color:#666984}.deletion-receipt button{border:0;background:transparent;font-size:22px}@media(max-width:520px){.sg-entry.sg-mobile-entry{display:block}}.lp-privacy .lp-section-number{color:#c5c7df}.sg-brand-symbol circle:last-child{fill:currentColor;stroke:none}.sg-mobile-shopfront rect:first-child{fill:#dfe8f7;stroke:#3b3f66;stroke-width:2}.sg-mobile-shopfront path{fill:none;stroke:#3b3f66;stroke-width:2}.sg-mobile-shopfront .sg-mobile-open{fill:#5b4fe8;stroke:none}.sg-mobile-shopfront text{fill:#fff;font:700 9px "Source Sans 3",Source Sans Pro,sans-serif;letter-spacing:.08em}.sg-mobile-awning{fill:#e8752a;stroke:#b9541a;stroke-width:1.2;stroke-linejoin:round}.sg-mobile-awning-stripes{fill:none;stroke:#fff4ea;stroke-width:5;opacity:.75}.sg-mobile-heat circle:first-child{animation:sg-heat-pulse 3.6s ease-in-out infinite;transform-origin:226px 202px}.sg-entry-heat circle:first-child{animation:sg-heat-pulse 4.2s ease-in-out infinite;transform-origin:548px 176px}@keyframes sg-heat-pulse{50%{opacity:.75;transform:scale(1.08)}}@media(prefers-reduced-motion:reduce){.sg-mobile-heat circle:first-child,.sg-entry-heat circle:first-child{animation:none}}.sg-auth-input input:focus,.sg-auth-input input:focus-visible{outline:none!important;box-shadow:none!important}.sg-auth-input:focus-within{border-color:#5b4fe8;box-shadow:0 0 0 4px #5b4fe826}.sg-auth-input{transition:border-color .15s,box-shadow .15s}.sg-auth-submit{box-shadow:0 10px 24px #5b4fe833;transition:background .15s,transform .15s}.sg-auth-submit:not(:disabled):active{transform:translateY(1px)}.sg-auth-floor{position:relative;z-index:1;width:min(760px,102%);animation:sg-auth-float 8s ease-in-out infinite}.sg-auth-floor img{width:100%;animation:none}.sg-auth-heat{position:absolute;z-index:2;border-radius:50%;pointer-events:none;mix-blend-mode:multiply;background:radial-gradient(circle,#e5322dd9,#ff8a1fa8 30%,#ffd6406b 55%,#42aaff00 75%);animation:sg-auth-heat 4.5s ease-in-out infinite}.sg-auth-heat-one{left:50%;top:52%;width:22%;aspect-ratio:1}.sg-auth-heat-two{left:30%;top:40%;width:16%;aspect-ratio:1;animation-delay:-1.5s}.sg-auth-heat-three{left:62%;top:30%;width:13%;aspect-ratio:1;animation-delay:-3s}@keyframes sg-auth-heat{50%{opacity:.72;transform:scale(1.1)}}.sg-auth-points{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0 0;padding:0;list-style:none}.sg-auth-points li{display:inline-flex;align-items:center;gap:6px;padding:6px 11px;border:1px solid #ffffff2e;border-radius:999px;color:#e4e3fb;background:#ffffff12;font-size:13px;font-weight:600}.sg-auth-points svg{color:#f0ba62}@media(max-width:820px){.sg-auth-page{background:#f8f8fc}.sg-auth-panel{min-height:calc(71svh + 14px);align-items:start}}@media(prefers-reduced-motion:reduce){.sg-auth-floor,.sg-auth-heat{animation:none}}.sg-auth-brand>.pl-wordmark,.sg-entry-brand .pl-wordmark{width:auto;height:auto;display:inline;border:0;background:none;box-shadow:none;color:inherit}.sg-auth-brand>span:first-child,.sg-entry-brand-mark{width:auto;height:auto;border:0;background:none;box-shadow:none}.sg-auth-brand{gap:12px;font-size:24px}.sg-auth-brand .pl-mark{height:30px;width:auto}.sg-entry-brand .pl-mark{height:28px;width:auto}.sg-mobile-brand-mark,.sg-mobile-sheet-icon{background:#fff!important;border-color:#fff!important}.sg-mobile-brand-mark .pl-mark,.sg-mobile-sheet-icon .pl-mark{height:24px;width:auto}@media(max-width:820px){.sg-auth-brand>span:first-child{width:82px;height:82px;background:#fff;box-shadow:0 18px 42px #1a146947}.sg-auth-brand>span:first-child svg.pl-mark{width:auto;height:46px}.sg-auth-brand{font-size:26px}}.pl-auth{min-height:100svh;display:flex;flex-direction:column;align-items:center;padding:0 20px 28px;color:#23253f;font-family:Source Sans Pro,sans-serif;background:radial-gradient(900px 420px at 50% -120px,#ecebfd,#ecebfd00 70%),#f6f6fb}.pl-auth-top{width:100%;max-width:1120px;display:flex;align-items:center;justify-content:space-between;padding:22px 4px}.pl-auth-logo{display:inline-flex;align-items:center;gap:10px;color:#1e1b4b;text-decoration:none}.pl-auth-logo .pl-mark{height:26px;width:auto}.pl-auth-logo .pl-wordmark{font-size:22px}.pl-auth-back{display:inline-flex;align-items:center;gap:6px;min-height:40px;padding:0 12px;border-radius:10px;color:#4b5070;font-size:14px;font-weight:600;text-decoration:none}.pl-auth-back:hover{background:#ecebfd;color:#3a34a8}.pl-auth-card{width:min(420px,100%);margin-top:clamp(20px,8vh,88px);padding:36px 32px 30px;border:1px solid #e4e5f0;border-radius:16px;background:#fff;box-shadow:0 1px 2px #23253f0a,0 12px 32px #23253f12}.pl-auth-card h1{margin:0;font-size:26px;line-height:1.2;letter-spacing:-.4px}.pl-auth-intro{margin:8px 0 24px;color:#5b607f;font-size:15px;line-height:1.5}.pl-auth .sg-auth-form{display:grid;gap:6px}.pl-auth .sg-auth-form>label,.pl-auth-label-row label{margin-top:10px;color:#3e425a;font-size:14px;font-weight:600}.pl-auth-label-row{display:flex;align-items:baseline;justify-content:space-between;gap:10px}.pl-auth-label-row a{color:#4c42c8;font-size:13px;font-weight:600;text-decoration:none}.pl-auth-label-row a:hover{text-decoration:underline}.pl-auth .sg-auth-input{min-height:46px;border-radius:10px;border-color:#d3d5e6}.pl-auth .sg-auth-submit{width:100%;min-height:46px;margin-top:18px;border-radius:10px;font-size:15px;box-shadow:none}.pl-auth .sg-auth-submit:disabled{opacity:1;color:#fff;background:#a8a3f0;border-color:#a8a3f0}.pl-auth .sg-auth-error{margin:8px 0 0;padding:10px 12px;border-radius:10px;background:#fdecee;color:#8f1f2a}.pl-auth .sg-auth-success{margin:8px 0 0}.pl-auth-legal{margin:16px 0 0;color:#5b607f;font-size:13px;line-height:1.5;text-align:center}.pl-auth-legal a,.pl-auth-switch a{color:#4c42c8;font-weight:700;text-decoration:none}.pl-auth-legal a:hover,.pl-auth-switch a:hover{text-decoration:underline}.pl-auth-switch{margin:20px 0 0;color:#4b5070;font-size:15px}.pl-auth-footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:6px 18px;margin-top:auto;padding-top:40px;color:#6a6f8c;font-size:13px}.pl-auth-footer a{color:#4b5070;text-decoration:none}.pl-auth-footer a:hover{text-decoration:underline}.pl-auth-secure{display:inline-flex;align-items:center;gap:5px}@media(max-width:520px){.pl-auth{padding:0 14px 22px}.pl-auth-top{padding:16px 0}.pl-auth-back span,.pl-auth-back{font-size:13px}.pl-auth-card{margin-top:12px;padding:28px 20px 24px}.pl-auth-card h1{font-size:24px}}@font-face{font-family:"Source Sans 3";font-style:normal;font-weight:400;font-display:swap;src:url(/assets/source-sans-3-400-C-sLfUTp.ttf) format("truetype")}@font-face{font-family:"Source Sans 3";font-style:normal;font-weight:500;font-display:swap;src:url(/assets/source-sans-3-500-Dsp8lkVV.ttf) format("truetype")}@font-face{font-family:"Source Sans 3";font-style:normal;font-weight:600;font-display:swap;src:url(/assets/source-sans-3-600-d14iYoTw.ttf) format("truetype")}@font-face{font-family:"Source Sans 3";font-style:normal;font-weight:700;font-display:swap;src:url(/assets/source-sans-3-700-Dy69hp6a.ttf) format("truetype")}.sg-concept{--concept-accent:#5B4FE8;--concept-courier:#E8752A;background:#e9eaf6;color:#23253f;font-family:"Source Sans 3",sans-serif;-webkit-font-smoothing:antialiased;line-height:normal}.sg-concept *{box-sizing:content-box}.sg-concept button{box-sizing:border-box}.sg-concept a{color:#23253f;text-decoration:none}.sg-concept a:hover{color:#4c42c8}.sg-concept button{font:inherit;min-height:0;box-shadow:none;letter-spacing:normal}.sg-concept a:focus-visible,.sg-concept button:focus-visible{outline:2px solid #5B4FE8;outline-offset:3px}.sg-concept .concept-page{width:1440px;height:3380px;box-sizing:border-box;background:#e9eaf6;color:#23253f;position:relative;overflow:hidden;font-family:"Source Sans 3",Segoe UI,sans-serif}.sg-concept .concept-hero{position:relative;height:980px;box-sizing:border-box;padding:24px 64px 0;background:radial-gradient(ellipse 420px 380px at 50% 46%,#d9d6fb,#e9eaf600 72%),radial-gradient(ellipse 520px 420px at 92% 6%,#e0ddfa,#e9eaf600 70%),#e9eaf6}.sg-concept .concept-nav{display:flex;align-items:center;justify-content:space-between;height:56px}.sg-concept .concept-brand{display:flex;align-items:center;gap:12px;font-weight:700;font-size:22px;letter-spacing:-.01em;color:#23253f}.sg-concept .concept-brand-mark{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:10px;border:1.5px solid #23253F}.sg-concept .concept-brand-dot{font-size:10px;color:#5b4fe8}.sg-concept .concept-nav-links{display:flex;align-items:center;gap:4px;padding:5px;border:1px solid #D3D4E8;border-radius:999px;background:#ffffffb3}.sg-concept .concept-nav-home{padding:10px 18px;border-radius:999px;background:#23253f;color:#fff;font-size:15px;font-weight:600}.sg-concept .concept-nav-link{padding:10px 18px;border-radius:999px;font-size:15px;font-weight:500}.sg-concept .concept-sign-in{padding:13px 24px;border-radius:999px;background:var(--concept-accent);color:#fff;font-size:15px;font-weight:600}.sg-concept .concept-hero-grid{display:grid;grid-template-columns:392px 1fr 288px;gap:28px;margin-top:40px;align-items:start}.sg-concept .concept-intro{display:flex;flex-direction:column;gap:22px}.sg-concept .concept-section-label{display:flex;align-items:center;gap:12px;font-size:14px;color:#55587a}.sg-concept .concept-label-rule{width:28px;height:2px;background:var(--concept-accent)}.sg-concept .concept-title{margin:0;font-size:66px;line-height:1;font-weight:700;letter-spacing:-.03em;color:#23253f}.sg-concept .concept-accent-text{color:#4c42c8}.sg-concept .concept-lead{margin:0;font-size:19px;line-height:1.5;color:#23253f}.sg-concept .concept-description{margin:0;font-size:15px;line-height:1.6;color:#5b5e78}.sg-concept .concept-intro-actions{display:flex;align-items:center;gap:22px;margin-top:4px}.sg-concept .concept-try-link{display:flex;align-items:center;gap:14px;padding:7px 26px 7px 7px;border-radius:999px;background:var(--concept-accent);color:#fff;font-size:16px;font-weight:600}.sg-concept .concept-play-symbol{display:flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:999px;background:#ffffff2e}.sg-concept .concept-replay-link{display:flex;align-items:center;gap:8px;font-size:15px;font-weight:500}.sg-concept .concept-access-note{font-size:14px;color:#55587a}.sg-concept .concept-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:6px}.sg-concept .concept-stat-card{background:#fff;border:1px solid #D3D4E8;border-radius:16px;padding:16px 16px 18px;display:flex;flex-direction:column;gap:22px}.sg-concept .concept-stat-heading{display:flex;align-items:baseline;gap:8px}.sg-concept .concept-stat-value{font-size:34px;font-weight:700;letter-spacing:-.02em;color:#4c42c8}.sg-concept .concept-stat-unit{font-size:15px;font-weight:600}.sg-concept .concept-stat-description{margin:0;font-size:14px;line-height:1.45;color:#5b5e78}.sg-concept .concept-stat-highlight{background:var(--concept-accent);color:#fff;border-radius:16px;padding:16px 16px 18px;display:flex;flex-direction:column;gap:22px}.sg-concept .concept-stat-highlight-value{font-size:34px;font-weight:700;letter-spacing:-.02em}.sg-concept .concept-stat-highlight-description{margin:0;font-size:14px;line-height:1.45;color:#edebff}.sg-concept .concept-hero-map{position:relative;height:620px}.sg-concept .concept-hero-svg{display:block;margin:10px auto 0;overflow:visible}.sg-concept .concept-demo-badge{position:absolute;left:0;top:10px;display:flex;align-items:center;gap:8px;padding:8px 14px;border-radius:999px;background:#fff;border:1px solid #D3D4E8;font-size:14px;font-weight:500}.sg-concept .concept-demo-dot{width:8px;height:8px;border-radius:999px;background:var(--concept-accent)}.sg-concept .concept-handoff-label{position:absolute;left:0;bottom:40px;padding:10px 14px;border-radius:14px;background:#fff;border:1px solid #D3D4E8;font-size:13px;color:#5b5e78;line-height:1.45}.sg-concept .concept-handoff-cameras{color:#23253f;font-weight:600}.sg-concept .concept-map-modes{position:absolute;right:-6px;top:250px;display:flex;flex-direction:column;gap:10px}.sg-concept .concept-map-mode-2d{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:12px;background:#23253f;color:#fff;font-size:13px;font-weight:700}.sg-concept .concept-map-mode-3d{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:12px;background:#fff;border:1px solid #D3D4E8;font-size:13px;font-weight:700}.sg-concept .concept-evidence{display:flex;flex-direction:column;gap:14px;padding-top:10px}.sg-concept .concept-evidence-description{margin:0;font-size:15px;line-height:1.55;color:#5b5e78}.sg-concept .concept-evidence-card{border-radius:16px;overflow:hidden;border:1px solid #D3D4E8;background:#fff}.sg-concept .concept-evidence-image{position:relative;height:150px}.sg-concept .concept-svg{display:block}.sg-concept .concept-camera-caption{position:absolute;left:10px;top:10px;padding:4px 10px;border-radius:999px;background:#23253fcc;font-size:12px;color:#fff}.sg-concept .concept-evidence-caption{padding:12px 14px;display:flex;justify-content:space-between;align-items:center;font-size:14px}.sg-concept .concept-semibold{font-weight:600}.sg-concept .concept-muted{color:#5b5e78}.sg-concept .concept-visit-card{border-radius:16px;border:1.5px solid var(--concept-accent);background:#fff;padding:16px 18px}.sg-concept .concept-visit-count{font-size:28px;font-weight:700;letter-spacing:-.02em;color:#4c42c8}.sg-concept .concept-visit-description{font-size:14px;color:#5b5e78;margin-top:2px}.sg-concept .concept-integration-note{margin:0;font-size:14px;line-height:1.5;color:#5b5e78}.sg-concept .concept-statement{position:absolute;left:484px;right:64px;bottom:54px;margin:0;font-size:36px;line-height:1.2;letter-spacing:-.02em;font-weight:500;color:#23253f}.sg-concept .concept-replay{box-sizing:border-box;height:1000px;padding:100px 64px 0;border-top:1px solid #D3D4E8}.sg-concept .concept-section-heading{display:flex;justify-content:space-between;align-items:end;gap:48px}.sg-concept .concept-section-heading-copy{display:flex;flex-direction:column;gap:16px}.sg-concept .concept-replay-title{margin:0;font-size:54px;line-height:1.02;font-weight:700;letter-spacing:-.03em;max-width:640px}.sg-concept .concept-replay-description{margin:0;font-size:17px;line-height:1.6;color:#5b5e78;max-width:420px}.sg-concept .concept-replay-grid{display:grid;grid-template-columns:620px 1fr;gap:40px;margin-top:52px}.sg-concept .concept-replay-map{border-radius:24px;border:1px solid #D3D4E8;background:#fff;padding:10px;position:relative}.sg-concept .concept-track-caption{position:absolute;left:26px;top:26px;padding:8px 14px;border-radius:999px;background:#23253f;color:#fff;font-size:14px;font-weight:600}.sg-concept .concept-timeline{display:flex;flex-direction:column;gap:12px}.sg-concept .concept-moment{display:grid;grid-template-columns:40px 1fr auto;gap:16px;align-items:start;text-align:left;width:100%;padding:18px 20px;border-radius:16px;border:1.5px solid var(--s-border);background:var(--s-bg);color:#23253f;font-family:"Source Sans 3",sans-serif;cursor:pointer}.sg-concept .concept-moment-number{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:999px;border:1px solid var(--s-dotBorder);background:var(--s-dotBg);color:var(--s-dotText);font-size:15px;font-weight:700}.sg-concept .concept-moment-copy{display:flex;flex-direction:column;gap:4px}.sg-concept .concept-moment-title{font-size:20px;font-weight:600}.sg-concept .concept-moment-description{font-size:15px;line-height:1.5;color:#5b5e78}.sg-concept .concept-moment-meta{display:flex;flex-direction:column;align-items:end;gap:6px;font-size:13px;color:#5b5e78;white-space:nowrap}.sg-concept .concept-moment-camera{padding:3px 10px;border-radius:999px;border:1px solid #C4C5DF;color:#23253f}.sg-concept .concept-camera-tiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:8px}.sg-concept .concept-camera-tile{border-radius:14px;overflow:hidden;border:1.5px solid var(--t-border);background:#fff}.sg-concept .concept-tile-caption{display:flex;justify-content:space-between;padding:9px 12px;font-size:13px}.sg-concept .concept-tile-status{color:var(--t-statusColor);font-weight:600}.sg-concept .concept-how{box-sizing:border-box;height:540px;padding:100px 64px 0;border-top:1px solid #D3D4E8}.sg-concept .concept-how-title{margin:0;font-size:46px;line-height:1.05;font-weight:700;letter-spacing:-.03em;max-width:620px}.sg-concept .concept-how-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:52px}.sg-concept .concept-how-step{padding-top:22px;border-top:2px solid #C4C5DF;display:flex;flex-direction:column;gap:12px}.sg-concept .concept-how-number{font-size:16px;font-weight:700;color:#4c42c8}.sg-concept .concept-how-step-title{margin:0;font-size:25px;font-weight:600}.sg-concept .concept-how-description{margin:0;font-size:16px;line-height:1.6;color:#5b5e78;max-width:360px}.sg-concept .concept-how-step-last{padding-top:22px;border-top:2px solid var(--concept-accent);display:flex;flex-direction:column;gap:12px}.sg-concept .concept-uses{box-sizing:border-box;height:440px;padding:20px 64px 0}.sg-concept .concept-use-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.sg-concept .concept-use-card{border-radius:20px;background:#fff;border:1px solid #D3D4E8;padding:28px;display:flex;flex-direction:column;gap:14px;min-height:250px}.sg-concept .concept-use-title{margin:0;font-size:23px;font-weight:600}.sg-concept .concept-use-description{margin:0;font-size:16px;line-height:1.6;color:#5b5e78}.sg-concept .concept-start{box-sizing:border-box;height:300px;margin:0 64px;border-radius:28px;background:radial-gradient(ellipse 520px 300px at 88% 10%,#8b82f5,#8b82f500 70%),var(--concept-accent);color:#fff;padding:56px 60px;display:flex;justify-content:space-between;align-items:center;gap:40px}.sg-concept .concept-cta-copy{display:flex;flex-direction:column;gap:14px;max-width:620px}.sg-concept .concept-cta-title{margin:0;font-size:50px;line-height:1.02;font-weight:700;letter-spacing:-.03em}.sg-concept .concept-cta-description{margin:0;font-size:18px;line-height:1.5;color:#edebff}.sg-concept .concept-cta-actions{display:flex;flex-direction:column;gap:12px;align-items:stretch}.sg-concept .concept-cta-primary{padding:17px 30px;border-radius:999px;background:#fff;color:#23253f;font-size:17px;font-weight:600;text-align:center}.sg-concept .concept-cta-secondary{padding:16px 30px;border-radius:999px;border:1.5px solid #FFFFFF;color:#fff;font-size:17px;font-weight:600;text-align:center}.sg-concept .concept-footer{box-sizing:border-box;height:120px;padding:0 64px;display:flex;align-items:center;justify-content:space-between;font-size:15px;color:#5b5e78;position:absolute;left:0;right:0;bottom:0;border-top:1px solid #D3D4E8}.sg-concept .concept-footer-links{display:flex;gap:28px}.sg-concept .concept-page{width:100%;max-width:1440px;margin:0 auto}.sg-concept .concept-hero-map{perspective:1000px}.sg-concept[data-map-mode="3D"] .concept-hero-map>svg{transform:rotateX(38deg) rotate(-12deg) scale(.9);filter:drop-shadow(0 16px 12px #23253f22)}.sg-concept .concept-hero-map button{padding:0;border:1px solid #D3D4E8}.sg-concept .concept-hero-map button[aria-pressed=true]{background:#23253f;color:#fff}.sg-concept .concept-hero-map button[aria-pressed=false]{background:#fff;color:#23253f}.sg-concept .concept-demo-controls{max-width:1440px;margin:auto;padding:16px 64px;display:flex;align-items:center;justify-content:space-between;gap:24px;color:#5b5e78;font-size:13px}.sg-concept .concept-demo-controls button{flex-shrink:0;color:#4c42c8;border:1px solid #C4C5DF;background:transparent;padding:8px 14px}.sg-concept .concept-dialog{position:fixed;top:0;right:0;bottom:0;left:0;width:min(560px,calc(100% - 40px));max-height:80dvh;margin:auto;padding:28px;border:1px solid #C4C5DF;border-radius:16px;background:#e9eaf6;color:#23253f;font:16px/1.6 "Source Sans 3",sans-serif}.sg-concept .concept-dialog::backdrop{background:#23253f88}.sg-concept .concept-dialog h2{margin:0 0 20px;font-size:28px}.sg-concept .concept-dialog h3{font-size:18px;margin:16px 0 6px}.sg-concept .concept-dialog p{margin:0 0 12px}.sg-concept .concept-dialog button{padding:10px 20px;background:#5b4fe8;color:#fff}.sg-concept .concept-dialog form{margin-top:20px}@media(min-width:521px)and (max-width:1439px){.sg-concept .concept-page{height:auto;overflow:clip}.sg-concept .concept-hero{height:auto;padding:24px 32px 56px}.sg-concept .concept-hero-grid{grid-template-columns:minmax(280px,1fr) minmax(320px,1.5fr) minmax(200px,.8fr);gap:20px}.sg-concept .concept-hero-map{height:auto;min-height:460px}.sg-concept .concept-hero-map>svg{width:100%;height:auto}.sg-concept .concept-intro h1{font-size:clamp(44px,4.58vw,66px)}.sg-concept .concept-intro-actions{flex-wrap:wrap;gap:14px}.sg-concept .concept-statement{position:static;margin:64px 0 0 32%}.sg-concept .concept-replay,.sg-concept .concept-how,.sg-concept .concept-uses{height:auto;padding:70px 32px}.sg-concept .concept-replay-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px}.sg-concept .concept-replay-map{align-self:start;box-sizing:border-box}.sg-concept .concept-replay-map>svg{width:100%;height:auto}.sg-concept .concept-moment{grid-template-columns:32px 1fr;gap:12px;padding:16px}.sg-concept .concept-moment-meta{grid-column:2;flex-direction:row;justify-content:space-between}.sg-concept .concept-tile-caption{flex-wrap:wrap;gap:4px}.sg-concept .concept-start{height:auto;min-height:300px;margin:0 32px 60px;padding:40px}.sg-concept .concept-footer{position:static;padding:0 32px}.sg-concept .concept-demo-controls{padding:16px 32px}}@media(min-width:521px)and (max-width:1100px){.sg-concept .concept-nav{height:auto;flex-wrap:wrap;gap:20px}.sg-concept .concept-nav>div{order:3;margin:auto}.sg-concept .concept-hero-grid{grid-template-columns:minmax(0,1fr) minmax(0,1.2fr)}.sg-concept .concept-evidence{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;align-items:center}.sg-concept .concept-statement{margin:48px 0 0}.sg-concept .concept-section-heading{flex-direction:column;align-items:start;gap:24px}.sg-concept .concept-how-grid,.sg-concept .concept-use-grid{gap:16px}.sg-concept .concept-use-card{padding:20px}}@media(min-width:521px)and (max-width:760px){.sg-concept .concept-nav>div{flex-wrap:wrap;justify-content:center;border-radius:16px}.sg-concept .concept-hero-grid,.sg-concept .concept-replay-grid,.sg-concept .concept-how-grid,.sg-concept .concept-use-grid{grid-template-columns:1fr}.sg-concept .concept-hero-map{max-width:540px;width:100%;margin:auto}.sg-concept .concept-start{flex-direction:column;align-items:stretch}.sg-concept .concept-footer{gap:20px;flex-wrap:wrap;padding:24px 32px;height:auto}.sg-concept .concept-demo-controls{flex-direction:column;align-items:start}}.sg-concept .concept-brand-mark{width:auto;height:auto;border:0;border-radius:0}.sg-concept .concept-brand{gap:11px;font-size:25px}:root{font-family:Source Sans Pro,Segoe UI,system-ui,sans-serif;color:var(--ink);background:var(--page);font-synthesis:none;color-scheme:light;font-size:16px;--page: #b9c1de;--surface: #f2f3fa;--card: #ffffff;--ink: #23253f;--muted: #5b607f;--accent: #5b4fe8;--accent-soft: #eceafd;--alert: #e0575f;--line: #e3e5f1;--shadow: 0 8px 24px rgba(40, 44, 80, .07);--radius: 18px}*{box-sizing:border-box}body{margin:0;padding:16px;min-height:100dvh}button,input{font:inherit}button,a,input{touch-action:manipulation}button{cursor:pointer;color:inherit;background:var(--card);border:1px solid var(--line);border-radius:999px;padding:10px 16px;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;font-weight:600}@media(hover:hover){html :where(button:hover:not(:disabled)){background:#f6f6fd;border-color:#cfd2e8}}button:disabled{opacity:.5;cursor:default}button.primary{background:var(--accent);color:#fff;border-color:var(--accent);font-weight:600;box-shadow:0 6px 16px #5b4fe847}button.primary:hover:not(:disabled),button.primary:active:not(:disabled){background:#4f43df;border-color:#4f43df;color:#fff}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #a99ff5;outline-offset:3px}h1,h2,h3,p{margin-top:0}h1{font-size:28px;margin-bottom:0;font-weight:600}h2{font-size:20px;font-weight:600;margin-bottom:14px}h3{font-size:17px;font-weight:600;margin-bottom:8px}p{line-height:1.6}small{display:block;color:var(--muted);font-size:12px;line-height:1.6}.muted{color:var(--muted)}.app-shell{min-height:calc(100dvh - 32px);display:grid;grid-template-columns:116px minmax(0,1fr);background:var(--surface);border-radius:26px;overflow:hidden;box-shadow:0 18px 50px #24284e29}.sidebar{background:transparent;color:var(--ink);padding:22px 10px 24px;display:flex;flex-direction:column;align-items:center;border-right:0}.brand{display:grid;place-items:center;width:52px;height:52px;border-radius:16px;background:var(--accent-soft);color:var(--accent);text-decoration:none;margin-bottom:30px;font-size:0}.brand svg{color:var(--accent)}.sidebar nav{display:grid;gap:18px;justify-items:center}.sidebar nav button{flex-direction:column;gap:7px;border:0;background:transparent;border-radius:14px;padding:0;min-height:0;width:72px;font-size:12px;font-weight:400;color:var(--muted)}.sidebar nav button svg{width:46px;height:46px;padding:13px;border-radius:50%;background:var(--card);border:1px solid var(--line);box-sizing:border-box}.sidebar nav button:hover:not(:disabled){background:transparent;color:var(--ink)}.sidebar nav button:hover svg{border-color:#c9cbe6}.sidebar nav button[aria-current]{color:var(--ink);font-weight:600}.sidebar nav button[aria-current] svg{background:var(--accent);border-color:var(--accent);color:#fff;box-shadow:0 8px 18px #5b4fe84d}.sidebar-foot{margin-top:auto;padding-top:40px;font-size:10px;line-height:1.35;text-align:center;color:var(--muted)}.sidebar-foot small{color:var(--muted)}.workspace{min-width:0}.topbar{display:flex;align-items:center;justify-content:space-between;padding:26px 30px 12px;gap:16px}.site-name{font-size:27px;font-weight:700;color:var(--ink);letter-spacing:-.02em}.topbar h1{font-size:14px;font-weight:600;color:var(--muted);margin:2px 0 0;letter-spacing:.02em}.top-actions{display:flex;align-items:center;gap:12px}.mode{border:1px solid #d9d5f7;background:var(--accent-soft);padding:5px 11px;border-radius:999px;font-size:12px;font-weight:600;white-space:nowrap;color:var(--accent)}.connection{font-size:12px;color:var(--muted);padding:0 30px 14px;border-bottom:0}.content{padding:8px 30px 30px;max-width:1680px;margin:0 auto}.monitor-bar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px}.monitor-bar strong{display:block;font-weight:600}.monitor-bar span:not(button span){display:block;color:var(--muted);font-size:13px;margin-top:3px}.button-row{display:flex;gap:10px}.run-status{font-size:13px;color:var(--alert)}.home-layout,.review-layout{display:grid;grid-template-columns:minmax(0,1.9fr) minmax(300px,.85fr);gap:24px;align-items:start}.map-panel{background:var(--card);color:var(--ink);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow)}.panel-heading{padding:18px 22px;display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid var(--line)}.panel-heading h2{margin:0}.panel-heading>span:not(.mode){font-size:12px}.map-panel .panel-heading{border-color:var(--line)}.view-toggle{display:flex;gap:4px}.view-toggle button{border-color:var(--line);padding:6px 10px;min-height:36px}.view-toggle button[aria-pressed=true]{background:var(--accent);border-color:var(--accent);color:#fff}.map-area{height:min(62vh,640px);background:#f5f7fd;display:flex;align-items:center;justify-content:center}.map-area-2d{background:#cfe0c2}.map-area-2d .spatial-map{padding:0}.spatial-map{width:100%;height:100%;padding:10px}.spatial-map g[role=button]{cursor:pointer}.spatial-scene{position:relative;overflow:hidden;height:100%;width:100%;touch-action:none}.spatial-scene canvas{display:block}.spatial-scene-canvas,.scene-camera-pins{position:absolute;top:0;right:0;bottom:0;left:0}.scene-camera-pins{pointer-events:none}.spatial-scene .scene-camera-pin{position:absolute;top:0;left:0;z-index:1;display:flex;flex-direction:column;align-items:center;gap:0;width:44px;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;color:#fff;pointer-events:auto;cursor:pointer}.scene-camera-pin-name{max-width:145px;width:max-content;margin-bottom:5px;padding:3px 7px;border:1px solid #d5d0ef;border-radius:4px;background:#fff;color:#4338a5;font-size:12px;line-height:16px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.scene-camera-pin-face{display:grid;place-items:center;width:36px;height:36px;border:2px solid #fff;border-radius:50%;background:var(--accent, #5b4fe8);box-shadow:0 2px 5px #24263833}.scene-camera-pin-stem{width:2px;height:17px;background:var(--accent, #5b4fe8)}.scene-camera-pin-stem:after{content:"";display:block;width:6px;height:6px;margin:14px 0 0 -2px;border-radius:50%;background:inherit}.spatial-scene .scene-camera-pin[aria-pressed=true],.spatial-scene .scene-camera-pin:focus-visible,.spatial-scene .scene-camera-pin:hover{z-index:2;outline:none;background:transparent}.scene-camera-pin[aria-pressed=true] .scene-camera-pin-name{background:var(--accent, #5b4fe8);border-color:var(--accent, #5b4fe8);color:#fff}.scene-camera-pin:focus-visible .scene-camera-pin-face,.scene-camera-pin:hover .scene-camera-pin-face,.scene-camera-pin[aria-pressed=true] .scene-camera-pin-face{outline:2px solid #4338a5;outline-offset:2px}.map-caption{padding:14px 22px;border-top:1px solid var(--line);display:flex;flex-direction:column;gap:6px;font-size:12px;color:var(--muted)}.map-caption span{display:flex;align-items:center;gap:6px}.incident-list,.detail{border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:var(--card);box-shadow:var(--shadow)}.incident-scroll{min-height:0}.home-dashboard{height:calc(100dvh - 258px);min-height:430px;display:grid;grid-template-columns:minmax(0,1fr) minmax(290px,340px);gap:14px;overflow:hidden}.home-dashboard .map-panel{min-width:0;min-height:0;height:100%;display:flex;flex-direction:column;border-radius:12px}.home-dashboard .map-area{flex:1;min-height:0;height:auto}.home-dashboard .map-camera-panel,.home-dashboard .map-caption{flex:none}.home-side-rail{min-width:0;min-height:0;display:grid;grid-template-rows:minmax(190px,34%) minmax(0,1fr);background:var(--card);border:1px solid var(--line);border-radius:12px;overflow:hidden;box-shadow:var(--shadow)}.home-side-rail.camera-selected{grid-template-rows:minmax(350px,62%) minmax(0,1fr)}@media(min-width:1101px){.home-side-rail.camera-selected:has(.test-video-replay){grid-template-rows:minmax(390px,72%) minmax(0,1fr)}}.home-cctv,.home-side-rail .incident-list{min-width:0;width:100%;min-height:0;display:grid;grid-template-rows:auto minmax(0,1fr)}.home-cctv{border-bottom:1px solid var(--line);overflow:hidden}.home-cctv.home-cctv-open{grid-template-rows:auto auto minmax(0,1fr)}.home-side-rail .incident-list{border:0;border-radius:0;box-shadow:none}.home-cctv .panel-heading,.home-side-rail .incident-list .panel-heading{min-width:0;min-height:55px;padding:10px 12px}.home-cctv .panel-heading>div,.home-side-rail .incident-list .panel-heading>*{min-width:0}.home-cctv .panel-heading h2,.home-side-rail .incident-list .panel-heading h2{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.home-cctv .panel-heading>div span{display:block;color:var(--muted);font-size:11px}.home-cctv .panel-heading button{flex:none;min-height:32px;padding:5px 9px;border:1px solid var(--accent);border-radius:6px;color:#fff;background:var(--accent);font-size:12px;white-space:nowrap}.home-camera-scroll,.home-side-rail .incident-scroll{min-width:0;min-height:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable}.home-camera-scroll{padding:6px}.home-camera-row{width:100%;min-height:60px;padding:6px;display:grid;grid-template-columns:minmax(0,1fr) auto;justify-content:stretch;text-align:left;border:1px solid transparent;border-radius:9px;background:#f6f5fc}.home-camera-select{min-width:0;min-height:46px;padding:0;display:grid;grid-template-columns:44px minmax(0,1fr);align-items:center;text-align:left;border:0;background:transparent}.home-camera-select>span{min-width:0}.pair-camera-button{min-height:32px;align-self:center;padding:5px 10px;border-color:var(--accent);color:#fff;background:var(--accent);font-size:11px}.home-camera-row+.home-camera-row{margin-top:5px}.home-camera-row:hover:not(:disabled){border-color:#c9c5f3;background:#efedfc}.home-camera-row.selected{border-color:#8c84df;background:#e8e5fa;box-shadow:inset 3px 0 0 var(--accent)}.home-camera-row>span:last-child{min-width:0}.home-camera-row strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px}.home-camera-row em{display:block;margin-top:1px;color:var(--accent);font-size:10px;font-style:normal}.home-camera-thumb{width:40px;height:40px;display:grid;place-items:center;border-radius:7px;color:#5f6382;background:linear-gradient(145deg,#d9dbea,#f3f2fa);overflow:hidden}.home-camera-thumb img,.cctv-thumb img{width:100%;height:100%;display:block;object-fit:cover}.home-cctv-stage{min-width:0;min-height:0;overflow:hidden;background:#202230;color:#fff}.cctv-source-tabs,.test-video-tabs{display:flex;gap:4px;padding:5px 8px;background:#f5f5f8;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.cctv-source-tabs button,.test-video-tabs button{min-height:28px;padding:4px 8px;border:0;border-radius:4px;color:#606278;background:transparent;font-size:10px}.cctv-source-tabs button[aria-pressed=true],.test-video-tabs button[aria-pressed=true]{color:#fff;background:#4f46c7}.test-video-replay{height:100%;min-height:0;display:grid;grid-template-rows:auto minmax(90px,1fr) auto auto;overflow-x:hidden;overflow-y:auto;background:#202230}.test-video-tabs{border:0;background:#292b3a}.test-video-stage{position:relative;min-height:0;display:grid;place-items:center;overflow:hidden;background:#11131b}.test-video-stage video{width:100%;height:100%;min-height:0;object-fit:contain}.test-video-status{min-width:0;display:flex;align-items:center;gap:7px;padding:6px 9px;color:#f3d7a9;background:#292b3a}.test-video-status span{min-width:0}.classification-icon{width:38px;height:38px;flex:none;vertical-align:middle}.test-video-status .classification-icon{width:30px;height:30px}.classification-card>div>.classification-icon{float:left;margin-right:10px}.test-video-status strong,.test-video-status small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.test-video-status strong{font-size:10px}.test-video-status small{color:#aeb2c8;font-size:9px}.test-video-status-routine{box-shadow:inset 4px 0 #3d8ad4}.test-video-status-review{box-shadow:inset 4px 0 #d05b67}.test-video-status-urgent{box-shadow:inset 4px 0 #f2c94c}.test-video-analyze{margin:6px 8px 8px;min-height:30px;color:#252637;background:#fff;font-size:10px}.test-video-classification{max-height:94px;padding:7px 9px 9px;overflow-y:auto;color:#ececf3;background:#292b3a;font-size:10px}.test-video-classification span{color:#f6bf6a;font-weight:700}.test-video-classification strong{float:right;color:#c8cad7;font-size:9px}.test-video-classification p{margin:4px 0;line-height:1.3}.test-video-classification small{color:#aeb2c8}.test-video-error{margin:0;padding:6px 10px;color:#ffd1d5;background:#4a252b;font-size:9px}.classification-review{margin:-7px -9px 7px;padding:6px 9px;color:#fff;font-weight:700}.classification-review-routine{background:#2563a9}.classification-review-review{background:#a33642}.classification-review-urgent{background:#111;color:#f5cf67}.test-video-empty{padding:16px;color:#d9dbea}.home-cctv-stage .ring-video.embedded{min-width:0;max-width:100%;width:100%;height:100%;padding:0;display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr) auto auto;gap:0}.home-cctv-stage .ring-video.embedded h3{display:none}.home-cctv-stage .ring-video.embedded .ring-video-viewport{width:100%;height:100%;min-height:0;aspect-ratio:auto}.home-cctv-stage .ring-video.embedded video{width:100%;height:100%;max-height:none;object-fit:cover;object-position:center;background:#15161f}.home-cctv-stage .ring-video.embedded p{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin:0;padding:6px 10px;align-self:center;color:#c8cad7;font-size:10px;line-height:1.2}.home-cctv-stage .ring-video.embedded button,.home-cctv-empty button{max-width:100%;min-height:28px;padding:4px 8px;font-size:10px;color:#fff;white-space:nowrap}.home-cctv-empty button{color:var(--ink)}.home-cctv-stage .ring-video-actions{width:100%;padding:7px 10px 9px;border-top:1px solid #343646;background:#202230}.home-cctv-empty{height:100%;display:grid;place-content:center;justify-items:center;gap:5px;padding:12px;text-align:center;color:#d9dbea}.home-cctv-empty span{color:#aeb2c8;font-size:10px}.home-cctv-controls{min-width:0;width:100%;min-height:0;border-top:1px solid var(--line);background:var(--card)}.home-cctv-controls .camera-controls{min-width:0;width:100%;padding:7px 10px 9px;gap:5px}.home-cctv-controls .camera-slider{min-width:0;grid-template-columns:minmax(0,1fr) auto;gap:1px 8px;font-size:11px}.home-cctv-controls .camera-slider input{min-width:0;width:100%;min-height:18px}.home-cctv-controls .camera-lens{font-size:10px}.home-cctv-controls .button-row{min-width:0;width:100%;margin-top:0;display:grid;grid-template-columns:1fr 1fr 1fr;gap:6px}.home-cctv-controls .camera-controls .button-row button{max-width:100%;min-width:0;min-height:30px;padding:4px;font-size:10px;gap:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.home-side-rail .incident-row{min-width:0;min-height:64px;padding:10px 12px;gap:9px}.home-side-rail .incident-row-main>span:nth-child(2),.home-side-rail .incident-row-main small,.home-side-rail .incident-row-main strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.home-side-rail .incident-row-main strong{margin-bottom:2px;font-size:13px}.home-side-rail .status-chip{margin-top:2px}.home-side-rail .incident-symbol{align-self:center}.incident-delete{flex:0 0 auto;width:40px;min-height:40px;padding:0;border-radius:12px;color:var(--muted);background:transparent;border-color:transparent}.incident-delete:focus-visible,.incident-delete:active:not(:disabled){color:#b4232c;background:#fdecee}@media(hover:hover){.incident-delete:hover:not(:disabled){color:#b4232c;background:#fdecee;border-color:transparent}}.incident-delete:disabled{opacity:.55;cursor:wait}.status-chip{justify-self:start;width:fit-content;margin-top:4px;padding:2px 8px;border-radius:999px;background:var(--accent-soft);color:#4338ca;font-size:11px;font-style:normal;font-weight:700}.status-chip.done{background:#eef0f6;color:var(--muted)}.incident-symbol{align-self:center}.incident-page{max-width:960px}@media(max-width:1100px){.home-dashboard{height:auto;min-height:0;grid-template-columns:1fr;overflow:visible}.home-dashboard .map-area{height:min(56vh,480px);flex:none}.home-side-rail{min-height:500px;grid-template-rows:210px minmax(280px,1fr)}.home-side-rail.camera-selected{min-height:690px;grid-template-rows:minmax(400px,auto) minmax(270px,1fr)}}@media(max-width:640px){.home-side-rail{min-height:460px;grid-template-rows:190px minmax(270px,1fr)}.home-side-rail.camera-selected{min-height:650px;grid-template-rows:minmax(380px,auto) minmax(250px,1fr)}}.incident-row{display:flex;width:100%;align-items:center;border:0;border-radius:0;border-bottom:1px solid var(--line);text-align:left;justify-content:flex-start;gap:12px;padding:20px 16px}.incident-row:last-child{border-bottom:0}.incident-row-main{display:flex;flex:1;min-width:0;align-items:center;gap:12px;border:0;padding:0;background:transparent;color:inherit;text-align:left}.incident-row-main>span:nth-child(2){min-width:0;flex:1}.incident-row-main strong{font-size:15px;font-weight:600;display:block;margin-bottom:6px}.incident-symbol{color:#eea3a3}.empty{padding:40px 24px;max-width:460px}.empty svg{color:#e79797;margin-bottom:20px}.empty p{color:var(--muted);font-size:14px}.detail>h2,.detail>p{margin:20px 20px 12px}.detail>p{font-size:13px}.text-button{border:none;padding:0;min-height:32px}.classification-card{margin:16px 20px;padding:14px 16px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 12px;border:1px solid #d9d5ef;border-left:4px solid var(--accent);border-radius:8px;background:#f7f6fd;color:#302d3e}.classification-card>div strong,.classification-card>div span{display:block}.classification-card>div strong{margin-top:3px;font-size:15px}.classification-card p,.classification-card ul,.classification-card small,.classification-card>button{grid-column:1 / -1}.classification-card p,.classification-card ul{margin:0;font-size:12px}.classification-card ul{padding-left:18px;color:#565168}.classification-card small{color:#6c687a;line-height:1.45}.classification-card>button{justify-self:start}.classification-empty{border-left-color:#9a96aa}.confidence{align-self:start;padding:4px 7px;border-radius:999px;background:#e6e3f7;color:#4c466d;font-size:10px;text-transform:capitalize;white-space:nowrap}.confidence-low{background:#f4e3dc;color:#82402f}.confidence-high{background:#dcebdd;color:#315e39}.evidence-view{margin:16px 20px 0;background:#292727;min-height:180px;display:grid;place-items:center}.evidence-view img{display:block;width:100%;height:auto}.evidence-view p{padding:22px;color:var(--muted)}.evidence-view .incident-recording p{margin:0;padding:8px 12px;font-size:13px;line-height:1.4;color:#eee}.incident-recording video{display:block}.evidence-caption{margin:12px 20px 20px;display:flex;flex-direction:column;gap:5px;font-size:13px}.evidence-caption span{color:var(--muted)}.evidence-inspector,.evidence-comparison{margin:16px 20px;padding:18px;border:1px solid var(--line);border-radius:14px;background:color-mix(in srgb,var(--panel) 94%,var(--accent) 6%)}.evidence-inspector h3,.evidence-comparison h3{margin:0 0 12px}.evidence-inspector dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 18px;margin:0}.evidence-inspector dl>div{min-width:0}.evidence-inspector dt{color:var(--muted);font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.evidence-inspector dd{margin:3px 0 0;line-height:1.45;overflow-wrap:anywhere}.uncertainty-inspector{margin-top:8px}.uncertainty-inspector summary{cursor:pointer;font-weight:700;color:var(--accent)}.uncertainty-inspector p{margin:7px 0 0;line-height:1.45}.comparison-heading .eyebrow{display:block;margin-bottom:4px}.comparison-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.comparison-grid article{padding:15px;border:1px solid var(--line);border-radius:11px;background:var(--panel)}.comparison-grid article h4{margin:0 0 7px}.comparison-grid article p{color:var(--muted);line-height:1.45}.comparison-grid ol{margin:12px 0 0;padding-left:20px}.comparison-grid li{margin:8px 0}.comparison-grid li small{display:block;color:var(--muted);margin-top:3px}.comparison-spatial{box-shadow:inset 3px 0 var(--accent)}@media(max-width:640px){.evidence-inspector dl,.comparison-grid{grid-template-columns:1fr}.evidence-inspector,.evidence-comparison{margin-inline:12px;padding:14px}}.timeline{list-style:none;padding:0 20px;margin:0;max-height:330px;overflow:auto}.timeline button{width:100%;justify-content:flex-start;text-align:left;border:0;border-bottom:1px solid var(--line);border-radius:0;padding:12px 8px;font-size:13px;gap:14px}.timeline button[aria-pressed=true]{background:var(--accent-soft);color:var(--ink);font-weight:600;box-shadow:inset 3px 0 0 var(--accent)}.timeline time{font-variant-numeric:tabular-nums;white-space:nowrap;color:var(--muted)}.handoff{display:flex;align-items:flex-start;gap:8px;color:#efb2b2;padding:16px 8px;border-left:2px dashed #d08d8d;margin:8px 0;font-size:13px}.handoff small{margin-top:6px}.review-footer{padding:20px;display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid var(--line);font-size:12px}.review-footer>span{color:var(--muted)}.camera-page,.settings-page{max-width:960px}.camera-row{display:flex;align-items:flex-start;gap:18px;padding:24px 0;border-bottom:1px solid var(--line)}.camera-row>div{flex:1}.camera-row p{margin-bottom:8px;font-size:14px}.camera-row label{display:flex;align-items:center;gap:8px;font-size:13px}.camera-row input{width:20px;height:20px;accent-color:var(--accent)}.settings-page section{padding:8px 0 28px;margin-bottom:24px;border-bottom:1px solid var(--line)}.settings-page p{max-width:650px;color:var(--muted);font-size:14px}.session-row{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:14px 0;border-top:1px solid #565050}.pair-code{margin-top:16px}.pair-code output{font-size:26px;letter-spacing:3px;color:#f1b7b7}.notice{padding:16px 24px;background:var(--accent);color:#fff;border-radius:12px;box-shadow:0 6px 16px #5b4fe847;display:flex;justify-content:space-between;align-items:center;gap:16px;margin:16px 32px 0}.notice button{background:#fff;color:var(--accent);border-color:#fff;flex:none}.notice button:hover:not(:disabled){background:var(--accent-soft);border-color:var(--accent-soft)}.welcome{max-width:480px;margin:12vh auto;padding:28px}.welcome>svg{color:#e58c8c;margin-bottom:20px}.welcome h1{margin-bottom:12px}.welcome p{color:var(--muted)}.welcome form{display:grid;gap:12px;margin-top:24px}.welcome input{background:#39406b;border:1px solid #a99d9d;border-radius:6px;padding:14px;color:#fff;font-size:20px}.welcome [role=alert]{color:var(--alert)}code{overflow-wrap:anywhere;font-size:12px}@media(min-width:1500px){.map-area{height:min(68vh,760px)}}@media(max-width:1100px){.app-shell{grid-template-columns:175px minmax(0,1fr)}.sidebar{padding:26px 12px}.brand{font-size:17px;gap:6px}.content{padding:20px}.topbar{padding-left:20px;padding-right:20px}.connection{padding-left:20px}.home-layout,.review-layout{grid-template-columns:1fr}.map-area{height:min(56vh,480px)}.detail .timeline{max-height:none}.home-layout .incident-list{min-height:220px}}@media(max-width:640px){.app-shell{display:block}.sidebar{position:fixed;z-index:10;bottom:0;left:0;right:0;padding:0 4px max(8px,env(safe-area-inset-bottom));border:0;border-top:1px solid var(--line);background:var(--card)}.brand,.sidebar-foot{display:none}.sidebar nav{display:grid;grid-template-columns:repeat(4,1fr);gap:0}.sidebar nav button{flex-direction:column;gap:4px;padding:10px 4px 4px;min-height:60px;font-size:11px;border-radius:0}.sidebar nav button[aria-current]{border-left:0;border-top:3px solid var(--accent);padding-top:7px;background:transparent}.workspace{padding-top:env(safe-area-inset-top);padding-bottom:calc(84px + env(safe-area-inset-bottom))}.topbar{padding:14px 16px 8px}.site-name,select.site-name{font-size:19px}.connection{padding:0 16px 10px}.connection{padding:0 16px 14px;font-size:11px}.content{padding:18px 14px}.monitor-bar{align-items:center;gap:10px;margin-bottom:14px}.monitor-bar .button-row button{min-height:40px;padding:8px 12px;font-size:13px;white-space:nowrap;flex:none}.monitor-bar>div:first-child{min-width:0}.monitor-bar strong{font-size:14px}.camera-controls .button-row{width:100%}.home-layout,.review-layout{gap:18px}.map-area{height:min(52vh,430px)}.panel-heading{padding:14px 16px}.panel-heading h2{font-size:17px}.map-caption{padding:12px 16px;font-size:11px}.camera-row{flex-wrap:wrap;gap:12px}.camera-row>div{min-width:220px}.camera-row label{padding-left:36px}.review-footer{padding:16px;gap:8px}.review-footer button{padding:10px}.notice{margin:14px 14px 0;padding:12px;font-size:13px}.timeline{padding:0 12px}.timeline button{font-size:12px;gap:10px}.settings-page section{padding-top:0}.evidence-view{margin-left:14px;margin-right:14px}.view-toggle button{min-height:44px}.welcome{margin:7vh auto}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.app-shell.low-power *,.app-shell.low-power *:before,.app-shell.low-power *:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.spatial-map g:focus{outline:none}.spatial-map g:focus-visible polygon{stroke:var(--alert);stroke-width:.1}.spatial-map .camera-marker:focus-visible circle:first-child,.spatial-map .camera-aim:focus-visible .camera-aim-handle{fill:#ffffff8c;stroke:var(--alert);stroke-width:.06}.map-tools{display:flex;align-items:center;gap:10px}.map-tools>button{border-color:var(--line);padding:6px 12px;min-height:36px;font-size:13px}.map-tools>button:hover:not(:disabled){background:#eef0f9}.map-tools>button.primary:hover:not(:disabled){background:#4f43df}.spatial-map.editable,.spatial-map.placing{touch-action:none}.spatial-map.placing{cursor:crosshair}.spatial-map.editable .camera-marker,.spatial-map.editable .camera-aim{cursor:grab}.map-camera-panel{border-top:1px solid var(--line);background:#f4f5fb;color:var(--ink)}.map-camera-panel .panel-heading{border-color:var(--line);padding:12px 18px}.map-camera-panel h3{margin:0;font-size:15px}.map-camera-panel .panel-heading span{font-size:12px;color:var(--muted)}.camera-controls{padding:4px 18px 16px;display:grid;gap:10px}.camera-slider{display:grid;grid-template-columns:1fr auto;align-items:center;gap:4px 10px;font-size:13px}.camera-slider output{font-variant-numeric:tabular-nums;font-weight:600;white-space:nowrap}.camera-slider input{grid-column:1 / -1;width:100%;accent-color:var(--accent);margin:0;min-height:24px}.camera-controls .button-row{flex-wrap:wrap;margin-top:2px}.camera-controls .button-row button{flex:1;min-width:108px;min-height:40px;padding:8px 10px;font-size:13px;border-color:var(--line)}.map-camera-panel .camera-controls .button-row button:hover:not(:disabled){background:#eef0f9}button.danger{border-color:var(--alert);color:#7c1f1f}button.danger:hover:not(:disabled){background:var(--accent)!important;color:#fff}.camera-page .panel-heading{border:0;padding:0 0 4px}.camera-row .camera-controls{padding:14px 0 0;max-width:420px}.camera-row .camera-controls .button-row button{border-color:var(--line)}.camera-row button.danger{border-color:var(--accent);color:#a99ff5}@media(max-width:760px){.map-tools{gap:6px}.map-tools>button{padding:6px 8px}.camera-controls{padding:4px 16px 14px}}.camera-lens{margin:0;font-size:13px;color:var(--muted)}.camera-row .camera-lens{color:var(--muted)}select.site-name{font-size:27px;font-weight:700;color:var(--ink);background:transparent;border:0;border-radius:5px;padding:0 24px 0 0;max-width:320px;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--muted) 50%),linear-gradient(135deg,var(--muted) 50%,transparent 50%);background-position:right 9px center,right 4px center;background-size:5px 5px,5px 5px;background-repeat:no-repeat}select.site-name:hover{color:var(--accent)}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#14121299;display:flex;align-items:center;justify-content:center;padding:20px;z-index:1000}.evidence-map-legend{position:absolute;left:14px;bottom:14px;z-index:4;display:flex;flex-wrap:wrap;gap:10px 14px;padding:9px 11px;border:1px solid #d2d0cc;border-radius:7px;background:#faf8f4f0;box-shadow:0 5px 18px #27252c1f;color:#343238;font-size:11px;font-weight:600;pointer-events:none}.evidence-map-legend span,.onboarding-evidence>span{display:flex;align-items:center;gap:7px}.evidence-observed,.evidence-possible,.evidence-unknown{display:inline-grid;place-items:center;flex:0 0 auto;width:15px;height:15px}.evidence-observed{border:2px solid #b86c18;border-radius:50%;background:#f6d39e}.evidence-possible{width:22px;height:0;border-top:2px dashed #b86c18}.evidence-unknown{border:1px solid #69707c;border-radius:50%;color:#555b65;background:#f7f3ed;font-size:10px;font-style:normal}.onboarding-backdrop{z-index:60;background:#18171cb8}.onboarding-dialog,.delete-account-dialog{position:relative;width:min(650px,100%);border:1px solid #56515b;border-radius:10px;background:#2d2c30;box-shadow:0 24px 70px #00000061;color:#f8f5f1}.onboarding-dialog>header,.onboarding-dialog>footer{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:15px 22px;border-bottom:1px solid #4b474f;color:#c8c3cb;font-size:12px;font-weight:700}.onboarding-dialog>footer{border-top:1px solid #4b474f;border-bottom:0}.onboarding-copy{min-height:340px;padding:34px 42px 28px}.onboarding-copy h2{max-width:520px;margin:8px 0 14px;font-size:clamp(25px,4vw,36px);line-height:1.08}.onboarding-copy>p:not(.eyebrow){max-width:555px;color:#cec9d1;line-height:1.6}.onboarding-copy ul{display:grid;gap:11px;padding:0;margin:22px 0 0;list-style:none}.onboarding-copy li{display:flex;gap:10px;color:#ded9e1}.onboarding-copy li svg{color:#a99ff7;margin-top:2px}.onboarding-icon{display:grid;place-items:center;width:45px;height:45px;border-radius:8px;color:#f7f5ff;background:#5b4fe8}.onboarding-map-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}.onboarding-evidence{display:grid;gap:12px;margin:22px 0}.onboarding-evidence>span{display:grid;grid-template-columns:24px 145px 1fr}.onboarding-evidence small{color:#bdb8c2;line-height:1.4}.consent-choice{display:grid;grid-template-columns:22px 1fr;align-items:start;gap:11px;max-width:650px;padding:14px 0;border-top:1px solid #4b474f}.consent-choice input{width:18px;height:18px;margin-top:2px;accent-color:var(--accent)}.consent-choice span,.consent-choice small{display:block}.consent-choice small{margin-top:4px;color:var(--muted);line-height:1.45}.privacy-controls{display:grid;gap:10px}.retention-grid{display:grid;grid-template-columns:repeat(2,minmax(0,260px));gap:14px;margin:8px 0}.retention-grid label{display:grid;gap:7px;color:#e1dce3;font-size:13px;font-weight:600}.retention-grid select,.delete-account-dialog input{width:100%;min-height:42px;padding:8px 11px;border:1px solid #5b5660;border-radius:6px;color:#f7f4f0;background:#37353a}.legal-links,.landing-legal-links{display:flex;flex-wrap:wrap;gap:14px}.legal-links a{color:#b7affb}.danger-zone{border-bottom-color:#8d4545!important}.delete-account-dialog{padding:28px}.delete-account-dialog h2{margin:6px 0 10px}.delete-account-dialog>p{color:#c9c4cc;line-height:1.5}.delete-account-dialog label{display:grid;gap:7px;margin-top:15px;font-size:13px;font-weight:700}.delete-account-dialog .button-row{justify-content:flex-end;margin-top:22px}.modal-close{position:absolute;top:14px;right:14px;padding:5px;min-height:32px}.form-error{color:#ffb4b4!important}.legal-page{min-height:100vh;color:#222337;background:#f2f2f8}.legal-page>header{display:flex;justify-content:space-between;align-items:center;padding:22px clamp(20px,5vw,70px);border-bottom:1px solid #d8d9e5;background:#fff}.legal-page>header a,.legal-brand{display:inline-flex;align-items:center;gap:8px;color:#343551;text-decoration:none;font-weight:700}.legal-brand span{display:grid;place-items:center;width:32px;height:32px;border-radius:7px;color:#fff;background:#5b4fe8}.legal-page article{width:min(760px,calc(100% - 40px));margin:0 auto;padding:70px 0 45px}.legal-page h1{margin:8px 0 14px;font-size:clamp(38px,7vw,66px);line-height:.98;letter-spacing:-.04em}.legal-intro{max-width:650px;margin:0 0 48px;color:#64667e;font-size:18px;line-height:1.6}.legal-page article section{padding:26px 0;border-top:1px solid #d5d6e1}.legal-page article h2{margin:0 0 9px;font-size:19px}.legal-page article section p{margin:0;color:#55586f;line-height:1.7}.legal-page>nav{display:flex;justify-content:center;gap:22px;padding:28px 20px 42px;border-top:1px solid #d8d9e5}.legal-page>nav a{color:#4b43b4}@media(max-width:650px){.evidence-map-legend{right:9px;left:9px;bottom:9px;justify-content:center}.onboarding-backdrop{align-items:flex-end;padding:0}.onboarding-dialog{max-height:94dvh;overflow-y:auto;border-radius:14px 14px 0 0}.onboarding-copy{min-height:0;padding:26px 22px}.onboarding-dialog>footer{align-items:stretch;flex-direction:column-reverse}.onboarding-dialog>footer .button-row{display:grid;grid-template-columns:repeat(2,1fr)}.onboarding-evidence>span{grid-template-columns:24px 1fr}.onboarding-evidence small{grid-column:2}.retention-grid{grid-template-columns:1fr}.delete-account-dialog{width:100%;border-radius:12px;padding:24px 20px}.legal-page article{padding-top:45px}}.modal{background:var(--card);color:var(--ink);border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 24px 60px #23253f47;width:min(780px,100%);max-height:92vh;overflow:auto}.modal .panel-heading h2,.modal .panel-heading h3{margin:0;font-size:18px;color:var(--ink)}.modal .panel-heading h3{font-size:15px;font-weight:600}.modal .panel-heading>button{min-height:36px;padding:6px 10px;color:var(--muted)}.plan-form,.plan-progress,.plan-review{padding:20px 22px 22px;display:grid;gap:16px}.plan-form p,.plan-review p,.plan-progress p{margin:0;line-height:1.5}.plan-form>p.muted{color:var(--muted);font-size:15px}.plan-drop{position:relative;display:flex;align-items:center;gap:14px;padding:18px 20px;border:1.5px dashed #b7b0f4;border-radius:12px;background:var(--accent-soft);color:var(--ink);cursor:pointer;transition:background .15s,border-color .15s}.plan-drop:hover{background:#e3e0fc;border-color:var(--accent)}.plan-drop.has-file{border-style:solid;border-color:var(--accent);background:var(--card)}.plan-drop-icon{flex:none;display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:var(--accent);color:#fff}.plan-drop-text{display:grid;gap:2px;min-width:0}.plan-drop-text strong{font-size:15px;font-weight:600;overflow-wrap:anywhere}.plan-drop-text small{font-size:13px;color:var(--muted)}.plan-drop input{position:absolute;width:1px;height:1px;opacity:0}.plan-drop:focus-within{outline:3px solid #a99ff5;outline-offset:3px}.plan-preview{max-height:220px;width:100%;object-fit:contain;background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:8px}.plan-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}.plan-fields label,.plan-form label:not(.plan-drop){display:grid;gap:6px;font-size:13px;font-weight:600;color:var(--ink)}.plan-fields input{background:var(--card);color:var(--ink);border:1px solid #cfd2e8;border-radius:10px;padding:9px 12px;min-height:44px;font-weight:400}.plan-fields input:focus-visible{outline:3px solid #a99ff5;outline-offset:1px;border-color:var(--accent)}.fine{font-size:12px;color:var(--muted)}.modal .fine{font-size:13px}.modal [role=alert]{color:var(--alert);font-size:13px}.plan-progress progress{width:100%;accent-color:var(--accent)}.plan-review .panel-heading{padding:0 0 4px;border:0}.plan-review .map-area{height:340px;background:var(--surface);border:1px solid var(--line);border-radius:12px;overflow:hidden}.modal .button-row{justify-content:flex-end;padding-top:4px}@media(max-width:760px){.modal-backdrop{padding:0}.modal{max-height:100vh;height:100%;border-radius:0}.plan-fields{grid-template-columns:1fr}.modal .button-row{flex-direction:column-reverse;align-items:stretch}.plan-review .map-area{height:240px}.wide-only{display:none}select.site-name{max-width:150px}}.plan-scale{display:grid;gap:10px;padding:16px;border:1px solid #d8d4fb;border-radius:12px;background:var(--accent-soft);font-size:14px}.plan-scale strong{color:var(--accent)}.plan-form label.plan-vision{display:flex;align-items:flex-start;gap:12px;padding:14px 16px;border:1px solid var(--line);border-radius:12px;background:var(--surface);font-size:14px;font-weight:400;cursor:pointer}.plan-vision input{width:20px;height:20px;margin:1px 0 0;accent-color:var(--accent);flex:none}.plan-disclosure{display:flex;gap:10px;padding:12px 14px;border:1px solid #efd9a6;border-radius:12px;background:#fdf6e7;color:#6b4f16}.plan-disclosure svg{flex:none;margin-top:2px;color:#b7791f}.plan-source{color:var(--accent);font-weight:600}.empty-workspace h2{margin:4px 0 0;font-size:20px;font-weight:600}.empty-workspace .button-row{justify-content:center;flex-wrap:wrap;margin-top:4px}.empty-workspace .fine{max-width:460px;margin:0 auto}.map-empty{display:grid;justify-items:center;gap:12px;text-align:center;padding:44px 24px;color:var(--muted)}.map-empty h3{margin:0;font-size:17px;color:var(--ink)}.map-empty p{margin:0;max-width:380px;font-size:14px}.map-empty small{max-width:380px;font-size:12px;color:var(--muted)}.map-empty .button-row{flex-wrap:wrap;justify-content:center}.map-empty button{border-color:var(--line)}.map-empty button:hover:not(:disabled){background:#eef0f9}.map-empty button.primary:hover:not(:disabled){background:#4f43df}.ring-endpoints{font-size:14px}.ring-endpoints div{margin:14px 0}.ring-endpoints dd{margin:4px 0;overflow-wrap:anywhere;color:var(--card)}.ring-device{padding:18px 0;border-top:1px solid #777}.ring-device label{display:block;margin:12px 0}.ring-device select{display:block;max-width:100%;width:100%;margin-top:8px;padding:12px;color:var(--card);background:var(--ink);border:1px solid #aaa}.ring-video video{display:block;width:100%;max-height:420px;background:#222}.camera-page{max-width:none;height:calc(100dvh - 194px);min-height:430px;display:grid;grid-template-rows:auto minmax(0,1fr);gap:12px;overflow:hidden}.camera-feed-workspace>.cctv-display{min-height:0}.cctv-toolbar{display:flex;align-items:center;justify-content:space-between;gap:18px}.cctv-toolbar h2,.cctv-toolbar p{margin:0}.cctv-toolbar p{color:var(--muted);font-size:13px}.cctv-toolbar button,.cctv-workspace button{border-radius:8px}.cctv-workspace{min-height:0;display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,340px);gap:14px}.cctv-main{min-width:0;min-height:0;display:grid;grid-template-rows:minmax(0,1fr) minmax(145px,32%);gap:14px}.cctv-display,.cctv-incidents,.cctv-sidebar{min-height:0;background:var(--card);border:1px solid var(--line);border-radius:12px;overflow:hidden}.cctv-display,.cctv-incidents,.cctv-sidebar{display:grid;grid-template-rows:auto minmax(0,1fr)}.cctv-display>header,.cctv-incidents>header,.cctv-sidebar>header{min-height:58px;padding:11px 14px;display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid var(--line)}.cctv-display h3,.cctv-incidents h3,.cctv-sidebar h3{margin:1px 0 0;font-size:16px}.cctv-sidebar>header span,.eyebrow{display:block;color:var(--muted);font-size:11px;line-height:1.25}.cctv-sidebar>header .provider-up,.live-indicator{color:#3f39b8}.provider-up,.provider-down,.live-indicator{font-size:11px;font-weight:700;white-space:nowrap}.live-indicator{display:inline-flex;align-items:center;gap:5px}.cctv-stage{min-height:0;background:#202230;color:#fff;overflow:hidden}.cctv-empty{width:100%;height:100%;display:grid;place-content:center;justify-items:center;gap:7px;padding:24px;text-align:center;color:#d9dbea}.cctv-empty svg{color:#8f93ac}.cctv-empty span{max-width:360px;color:#aeb2c8;font-size:12px}.cctv-stage .ring-video.embedded{width:100%;height:100%;padding:0;display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr) auto auto;gap:0}.cctv-stage .ring-video.embedded h3{display:none}.cctv-stage .ring-video.embedded .ring-video-viewport{width:100%;height:100%;min-height:0;aspect-ratio:auto}.cctv-stage .ring-video.embedded video{width:100%;height:100%;max-height:none;object-fit:cover;object-position:center;background:#15161f}.cctv-stage .ring-video.embedded p{margin:0;padding:7px 12px 4px;align-self:center;color:#c8cad7;font-size:11px;line-height:1.3}.cctv-stage .ring-video.embedded button{min-height:32px;padding:5px 10px;color:#fff;font-size:11px}.cctv-stage .ring-video-actions{width:100%;padding:6px 12px 10px;background:#202230}.cctv-incident-scroll,.cctv-camera-scroll{min-height:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable}.cctv-incident-row{width:100%;min-height:52px;padding:9px 14px;display:grid;grid-template-columns:auto minmax(0,1fr);justify-content:start;text-align:left;border:0;border-bottom:1px solid var(--line);background:transparent}.cctv-incident-row>span{min-width:0}.cctv-incident-row strong,.cctv-camera-row strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px}.cctv-no-incidents,.cctv-no-cameras{min-height:100%;display:grid;place-content:center;justify-items:center;gap:7px;padding:18px;color:var(--muted);font-size:12px;text-align:center}.cctv-camera-row{margin:8px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:6px;border:1px solid transparent;border-radius:10px;background:#f6f5fc}.cctv-camera-row.selected{border-color:#bdb8f1;background:#efedfc}.cctv-camera-select{min-width:0;min-height:72px;padding:8px;display:grid;grid-template-columns:54px minmax(0,1fr);justify-content:stretch;text-align:left;border:0;background:transparent}.cctv-camera-select:hover:not(:disabled){background:transparent}.cctv-camera-select>span:last-child{min-width:0}.cctv-camera-select em{display:block;margin-top:3px;color:var(--accent);font-size:11px;font-style:normal}.cctv-thumb{width:50px;height:50px;display:grid;place-items:center;border-radius:7px;color:#5f6382;background:linear-gradient(145deg,#d9dbea,#f3f2fa);overflow:hidden}.monitor-switch{position:relative;width:34px;height:20px;margin-right:10px;flex:none}.monitor-switch input{position:absolute;opacity:0}.monitor-switch span{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:10px;background:#bfc2d1;transition:background .12s ease}.monitor-switch span:after{content:"";position:absolute;top:3px;left:3px;width:14px;height:14px;border-radius:50%;background:#fff;transition:transform .12s ease}.monitor-switch input:checked+span{background:var(--accent)}.monitor-switch input:checked+span:after{transform:translate(14px)}.monitor-switch input:focus-visible+span{outline:3px solid #a99ff5;outline-offset:2px}.cctv-provider-error{margin:0;padding:7px 12px;color:#8f3038;background:#fff2f2;font-size:11px;line-height:1.35}.cctv-placement{margin:12px 10px 18px;padding-top:12px;border-top:1px solid var(--line)}.cctv-placement h4{margin:0 0 8px;font-size:13px}.cctv-placement .camera-controls{padding:0}.cctv-placement .camera-controls .button-row{display:grid;grid-template-columns:1fr 1fr}.cctv-placement .camera-controls .button-row .danger{grid-column:1 / -1}.cctv-placement .camera-controls button{min-width:0;min-height:34px;padding:6px;font-size:11px}@media(max-width:760px){.camera-page{height:calc(100dvh - 270px - env(safe-area-inset-bottom));min-height:430px}.cctv-toolbar p{display:none}.cctv-workspace{grid-template-columns:1fr;grid-template-rows:minmax(0,72%) minmax(0,28%);gap:9px}.cctv-main{grid-template-rows:minmax(0,62%) minmax(0,38%);gap:9px}.cctv-display>header,.cctv-incidents>header,.cctv-sidebar>header{min-height:44px;padding:7px 10px}.cctv-display h3,.cctv-incidents h3,.cctv-sidebar h3{font-size:14px}.cctv-camera-scroll{display:flex;overflow-x:auto;overflow-y:hidden}.cctv-camera-row{min-width:250px}.cctv-placement{min-width:300px;margin:8px 12px;padding:4px 0 0 12px;border-top:0;border-left:1px solid var(--line)}}.mobile-ring-setup{display:none}.ring-setup-page{max-width:760px;margin:0 auto}.ring-setup-page>header{margin:16px 0 20px}.ring-setup-page>header h2{margin:0 0 5px}.ring-setup-page>header p{margin:0;color:var(--muted)}.ring-setup-page .ring-connection,.ring-consent-required{padding:20px;border:1px solid var(--line);border-radius:10px;background:var(--card)}.back-button{display:inline-flex;align-items:center;gap:6px}.settings-mobile-menu{display:grid;overflow:hidden;border:1px solid var(--line);border-radius:10px;background:var(--card)}.settings-mobile-menu button{min-height:48px;padding:10px 14px;display:flex;align-items:center;justify-content:space-between;border:0;border-bottom:1px solid var(--line);border-radius:0;background:transparent;text-align:left;font-weight:600}.settings-mobile-menu button:last-child{border-bottom:0}.settings-mobile-menu .danger-row{color:#a23039}.settings-back{width:fit-content;display:inline-flex;align-items:center;gap:6px}.spatial-map,.spatial-scene{overscroll-behavior:contain}@media(max-width:760px){.topbar .site-name{display:none}.topbar h1{margin:0;color:var(--ink);font-size:20px;font-weight:700}.mobile-ring-setup{width:100%;min-height:62px;margin-bottom:12px;padding:10px 12px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;text-align:left;border-color:#c8c3f3;background:#eeecff}.mobile-ring-setup>span{min-width:0}.mobile-ring-setup strong,.mobile-ring-setup small{display:block}.mobile-ring-setup strong{color:#312a8a;font-size:14px}.mobile-ring-setup small{margin-top:2px;color:#5c6280;font-size:11px}.ring-setup-page>header{margin:14px 2px 16px}.ring-setup-page .ring-connection,.ring-consent-required{padding:14px}.ring-setup-page .ring-device{padding:13px 0;border-top:1px solid var(--line)}.ring-setup-page .ring-device select{width:100%;min-height:44px}.camera-page{height:calc(100dvh - 180px - env(safe-area-inset-bottom))}.cctv-toolbar{justify-content:flex-end}.cctv-toolbar-actions,.cctv-toolbar>.view-toggle{width:100%}.cctv-toolbar .view-toggle button{flex:1}.camera-feed-workspace{grid-template-rows:minmax(300px,1fr) 310px}.cctv-stage .ring-video.embedded video{object-fit:contain}.cctv-camera-row{min-width:280px}.cctv-camera-row .pair-camera-button{margin-right:4px}.settings-page{display:grid;gap:12px}.settings-mobile-menu{display:grid;overflow:hidden;border:1px solid #d2d6e6;border-radius:11px;background:#fff}.settings-mobile-menu button{min-height:48px;padding:10px 13px;display:flex;align-items:center;justify-content:space-between;border:0;border-bottom:1px solid #e1e3ed;border-radius:0;background:#fff;font-weight:600}.settings-mobile-menu button:last-child{border-bottom:0}.settings-page>section,.settings-page>div[id=settings-ring],.settings-page>.account-security{margin:0;padding:15px;border:1px solid #d2d6e6;border-radius:11px;background:#fff}.settings-page section h2{margin-top:0;font-size:18px}.settings-page .session-row{border-top-color:#e1e3ed}}.ring-connection .button-row{flex-wrap:wrap}.rename{display:inline-flex;align-items:center;gap:6px;min-width:0}.rename strong{font-weight:inherit;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rename button{border:0;padding:4px;min-height:28px;border-radius:4px;color:var(--muted);opacity:.55}.rename button:hover:not(:disabled){background:#eef0f9;opacity:1}.rename.editing input{font:inherit;color:var(--ink);background:#fff;border:1px solid var(--line);border-radius:5px;padding:4px 8px;min-width:0;width:100%;max-width:220px}.map-camera-panel .panel-heading h3{min-width:0;flex:1}.operations-page{max-width:1500px;margin:0 auto;display:grid;gap:18px}.operations-heading,.section-title,.project-head,.wall-tile-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.operations-heading h2{margin:3px 0 6px;font-size:clamp(24px,3vw,38px);letter-spacing:-.035em}.operations-heading p,.section-title p,.project-head p{margin:0;color:var(--muted)}.operations-heading p{max-width:760px}.eyebrow{color:var(--accent);font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.operations-tabs{display:flex;gap:4px;width:fit-content;padding:4px;border:1px solid var(--line);border-radius:12px;background:#e9eaf4}.operations-tabs button{min-height:38px;padding:7px 13px;border:0;border-radius:8px;background:transparent;box-shadow:none}.operations-tabs button[aria-selected=true]{color:var(--accent);background:#fff;box-shadow:0 2px 8px #282c5014}.operations-error{margin:0;padding:12px 14px;border:1px solid #efb9bd;border-radius:10px;color:#8f3038;background:#fff2f2}.recovery-notice{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:12px;align-items:start;margin:0;padding:14px 16px;border:1px solid #f3c4c9;border-radius:14px;background:#fff4f5;color:#7c1d26}.recovery-notice>svg{color:#c2323d;margin-top:1px}.recovery-notice strong,.recovery-notice p,.recovery-notice small{display:block;margin:0}.recovery-notice strong{font-size:15px}.recovery-notice small{margin-top:3px;color:#6e2a31;font-size:13px}.recovery-notice details{margin-top:6px;color:#6e2a31}.recovery-notice summary{cursor:pointer;font-size:12px}.recovery-notice code{display:block;margin-top:5px;white-space:normal;overflow-wrap:anywhere;font-size:12px}.recovery-notice button{display:inline-flex;gap:6px;align-items:center;min-height:38px;padding:8px 14px;background:#fff;color:#7c1d26;border-color:#e9b3b9}@media(max-width:640px){.recovery-notice{grid-template-columns:auto minmax(0,1fr)}.recovery-notice button{grid-column:2;justify-self:start}}.health-layout,.timelapse-layout{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(280px,.7fr);gap:16px;align-items:start}.health-main,.ops-card,.camera-wall-section,.timelapse-main,.motion-history{border:1px solid var(--line);border-radius:16px;background:var(--card);box-shadow:0 5px 18px #282c500b}.health-main,.camera-wall-section,.timelapse-main{padding:20px}.section-title h3{margin-bottom:4px}.section-title>span{flex:none;padding:5px 9px;border-radius:7px;color:var(--accent);background:var(--accent-soft);font-size:12px;font-weight:700}.health-list{margin-top:15px;border-top:1px solid var(--line)}.health-device{display:grid;grid-template-columns:38px minmax(150px,1fr) minmax(140px,220px) 54px;align-items:center;gap:12px;padding:15px 2px;border-bottom:1px solid var(--line)}.health-device:last-child{border-bottom:0}.health-light{width:34px;height:34px;display:grid;place-items:center;border-radius:50%}.health-light.online{color:#216b4a;background:#dff3e8}.health-light.offline{color:#a23d44;background:#fbe3e5}.health-copy h4{margin:0 0 3px;font-size:15px}.health-copy p{margin:0;color:var(--muted);font-size:12px;line-height:1.35}.uptime-strip{display:grid;grid-template-columns:repeat(7,1fr);gap:3px}.uptime-strip span{height:24px;border-radius:3px;background:#d8dae6}.uptime-strip .online{background:#45a477}.uptime-strip .offline{background:var(--alert)}.health-device>strong{text-align:right;font-size:13px}.health-side{display:grid;gap:16px}.ops-card{padding:18px}.ops-card h3{display:flex;align-items:center;gap:7px}.ops-card label{display:grid;gap:6px;margin:14px 0;color:#4f5272;font-size:13px;font-weight:600}.ops-card input,.ops-card select{width:100%;min-height:42px;padding:9px 10px;border:1px solid var(--line);border-radius:8px;color:var(--ink);background:#fff}.ops-card .check-row{display:flex;align-items:flex-start;gap:9px;font-weight:400}.ops-card .check-row input{width:17px;min-height:17px;margin-top:1px}.health-alert{display:grid;grid-template-columns:26px minmax(0,1fr) auto;gap:8px;align-items:center;padding:10px 0;border-top:1px solid var(--line)}.health-alert>span{color:var(--alert)}.health-alert.recovered>span{color:#27805a}.health-alert strong,.health-alert small{display:block}.health-alert button{min-height:30px;padding:4px 8px;border-radius:7px}.wall-picker{display:flex;flex-wrap:wrap;gap:7px;margin:16px 0}.wall-picker label{display:flex;gap:7px;align-items:center;padding:7px 10px;border:1px solid var(--line);border-radius:8px;font-size:13px}.camera-wall-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr));gap:12px}.camera-wall-tile{min-width:0;overflow:hidden;border:1px solid #d9dbea;border-radius:12px;background:#11121a}.wall-tile-head{padding:8px 10px;color:#fff;background:#222432;font-size:12px}.wall-tile-head span{margin-left:auto}.wall-tile-head .online{color:#78ddb0}.wall-tile-head .offline{color:#ff9399}.wall-tile-head .wall-order-actions{display:flex;gap:5px;margin-left:0}.wall-order-actions button{min-height:28px;padding:3px 8px;border-color:#7770df;background:#5b4fe8;color:#fff;font-size:11px}.wall-order-actions button:disabled{opacity:.42}.camera-wall-tile .ring-video{color:#fff}.camera-wall-tile .ring-video h3{margin:0;padding:10px 12px 7px;font-size:15px}.ring-video-viewport{position:relative;width:100%;aspect-ratio:16 / 9;overflow:hidden;background:#08090e}.ring-video-viewport video{width:100%;height:100%;max-height:none;object-fit:contain;transform-origin:center;transition:transform .1s ease-out}.ring-video-actions{display:flex;flex-wrap:wrap;gap:6px;padding:0 10px 10px}.ring-video-actions button{min-height:32px;padding:5px 9px;border-color:var(--accent);border-radius:7px;color:#fff;background:var(--accent);font-size:11px;box-shadow:0 4px 10px #5b4fe838}.ring-video-actions button:hover:not(:disabled){color:#fff;background:#4f43df;border-color:#4f43df}.ring-video-actions span{align-self:center;min-width:38px;text-align:center;font-size:11px}.ring-video.fullscreen-player,.ring-video.embedded.fullscreen-player{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;width:100%;height:100%;padding:0;display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:auto minmax(0,1fr) auto auto;gap:0;color:#fff;background:#08090e}.ring-video.embedded.fullscreen-player h3,.ring-video.fullscreen-player h3{display:block;margin:0;padding:12px 16px;color:#fff;background:#161722}.ring-video.fullscreen-player .ring-video-viewport{width:100%;height:100%;min-height:0;aspect-ratio:auto}.ring-video.fullscreen-player>p{margin:0;padding:7px 14px;color:#c8cad7;background:#202230}.ring-video.fullscreen-player .ring-video-actions{width:100%;padding:8px 14px 12px;background:#202230}.camera-wall-tile .ring-video>p{margin:0;padding:7px 10px;color:#bbbfd0;font-size:11px}.wall-paused{min-height:250px;display:grid;place-content:center;justify-items:center;gap:8px;color:#c7cada}.wall-paused p{margin:0}.motion-history{margin-top:15px;padding:16px;background:#f8f8fc;box-shadow:none}.motion-history p{margin:0;color:var(--muted)}.motion-event-list{margin-top:12px;border-top:1px solid var(--line)}.motion-event-list article{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid var(--line)}.motion-event-list strong,.motion-event-list small{display:block}.motion-event-list button{min-height:34px;padding:6px 10px;border-radius:8px;font-size:11px}.camera-wall-view{min-height:0;padding:18px;overflow:auto;border:1px solid var(--line);border-radius:14px;background:var(--card)}.camera-wall-heading,.camera-wall-heading-actions,.cctv-toolbar-actions{display:flex;align-items:center;justify-content:space-between;gap:12px}.camera-wall-heading h3{margin:2px 0 3px;font-size:20px}.camera-wall-heading p{margin:0;color:var(--muted);font-size:13px}.camera-wall-heading-actions{justify-content:flex-end}.camera-wall-heading-actions>span{color:var(--accent);font-size:12px;font-weight:700}.camera-wall-heading-actions button{min-height:34px;padding:6px 9px;border-radius:8px}.camera-page>.camera-wall-view{height:100%}.camera-wall-view.compact{width:100%;height:100%;padding:12px;border:0;border-radius:0;box-shadow:none}.camera-wall-view.compact .camera-wall-heading p,.camera-wall-view.compact .motion-history{display:none}.camera-wall-view.compact .camera-wall-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr))}.map-area-camera-wall{display:block;overflow:hidden;background:#eceef7}.view-toggle button{white-space:nowrap}.operations-empty{min-height:180px;display:grid;place-content:center;justify-items:center;gap:5px;text-align:center;color:var(--muted)}.operations-empty h3,.operations-empty p{margin:0}.project-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:12px;margin-top:16px}.timelapse-project{padding:15px;border:1px solid var(--line);border-radius:12px;background:#fbfbfe}.project-head h4{margin:0 0 3px}.project-head p{font-size:12px}.project-head button{min-height:30px;padding:4px 8px;border-radius:7px}.frame-strip{height:120px;display:grid;grid-template-columns:repeat(4,1fr);gap:3px;margin:12px 0;overflow:hidden;border-radius:8px;background:#e7e8f1}.frame-strip img{width:100%;height:100%;object-fit:cover}.frame-strip>div{grid-column:1 / -1;display:grid;place-content:center;justify-items:center;gap:5px;color:var(--muted)}.project-actions{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:7px}.project-actions button,.button-link{min-height:36px;padding:7px 10px;border:1px solid var(--line);border-radius:8px;display:inline-flex;align-items:center;gap:6px;color:var(--ink);background:#fff;text-decoration:none;font-size:12px;font-weight:600}.button-link.disabled{pointer-events:none;opacity:.45}.hour-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}@media(max-width:980px){.health-layout,.timelapse-layout{grid-template-columns:1fr}.health-side{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.operations-page{gap:12px}.operations-heading{display:grid}.operations-heading button,.operations-tabs{width:100%}.operations-tabs button{flex:1;padding-inline:7px;font-size:12px}.health-main,.camera-wall-section,.timelapse-main{padding:14px}.health-side{grid-template-columns:1fr}.health-device{grid-template-columns:34px minmax(0,1fr) 46px}.health-device .uptime-strip{grid-column:2 / -1}.camera-wall-grid{grid-template-columns:1fr}.hour-row{grid-template-columns:1fr;gap:0}.cctv-toolbar-actions{width:100%;align-items:stretch}.cctv-toolbar-actions .view-toggle,.cctv-toolbar-actions .view-toggle button{flex:1}.camera-wall-view{padding:12px}.camera-wall-heading{align-items:flex-start}}:root{--radius: 10px;--shadow: 0 2px 8px rgba(35, 37, 63, .08)}body{padding:0;background:#eef0f8}button{border-radius:8px;box-shadow:none}.app-shell{min-height:100dvh;grid-template-columns:232px minmax(0,1fr);border-radius:0;box-shadow:none;background:#f7f8fc}.sidebar{align-items:stretch;padding:20px 12px;background:#fff;border-right:1px solid var(--line)}.brand{width:auto;height:auto;justify-content:flex-start;gap:10px;margin:0 4px 26px;padding:5px 6px;border:0;border-radius:0;color:var(--ink);background:transparent;font-size:18px;font-weight:700;letter-spacing:-.02em}.brand span{display:inline}.brand svg{width:23px;height:23px}.sidebar nav{gap:3px;justify-items:stretch}.sidebar nav button{width:100%;min-height:42px;justify-content:flex-start;flex-direction:row;gap:11px;padding:9px 11px;border-radius:8px;color:#666b88;font-size:14px;font-weight:600;text-align:left}.sidebar nav button svg{width:20px;height:20px;padding:0;border:0;border-radius:0;background:transparent}.sidebar nav button:hover:not(:disabled){background:#f4f3fc;color:var(--accent)}.sidebar nav button:hover svg{border-color:transparent}.sidebar nav button[aria-current]{color:var(--accent);background:var(--accent-soft);font-weight:700}.sidebar nav button[aria-current] svg{color:var(--accent);background:transparent;border-color:transparent;box-shadow:none}.sidebar-foot{align-items:flex-start;margin:auto 6px 4px;padding-top:16px;border-top:1px solid var(--line);text-align:left}.topbar{min-height:74px;padding:16px 28px;background:#fff;border-bottom:1px solid var(--line)}.site-name,select.site-name{font-size:21px}.topbar h1{margin-top:3px;color:var(--muted);font-size:13px;font-weight:600;letter-spacing:0}.top-actions{gap:9px}.mode{border-radius:6px}.connection{padding:8px 28px;border-bottom:1px solid var(--line);border-radius:0;background:#f9f9fd}.content{max-width:1680px;padding:22px 28px 28px}.monitor-bar,.map-panel,.home-side-rail,.incident-list,.cctv-display,.cctv-incidents,.cctv-sidebar,.camera-wall-view,.health-main,.health-device,.camera-wall-section,.timelapse-main{border-radius:10px;box-shadow:var(--shadow)}.home-dashboard{grid-template-columns:minmax(0,1fr) minmax(310px,356px);gap:16px}.home-side-rail{border-radius:10px}.panel-heading,.cctv-display>header,.cctv-incidents>header,.cctv-sidebar>header{padding-inline:16px}.map-tools,.cctv-toolbar-actions{gap:8px}.view-toggle{gap:2px;padding:2px;border:1px solid var(--line);border-radius:8px;background:#fff}.view-toggle button{min-height:32px;padding:5px 10px;border:0;border-radius:6px;color:var(--muted);background:transparent}.view-toggle button[aria-pressed=true]{color:#fff;background:var(--accent)}.cctv-toolbar{min-height:54px}.cctv-workspace{grid-template-columns:minmax(0,1fr) minmax(300px,356px);gap:16px}.cctv-main{gap:16px}.camera-wall-view{border-radius:10px}@media(min-width:761px)and (max-width:1100px){.app-shell{grid-template-columns:68px minmax(0,1fr)}.sidebar{align-items:center;padding-inline:9px}.brand{justify-content:center;margin-inline:0}.brand span,.sidebar-foot{display:none}.sidebar nav{width:100%}.sidebar nav button{justify-content:center;padding-inline:0}.sidebar nav button svg{width:21px;height:21px}}@media(max-width:760px){:root{--ink: #191a2f;--muted: #5c6280;--line: #d4d8e8;--card: #ffffff;--surface: #f1f2f8;--shadow: 0 2px 8px rgba(30, 32, 62, .09)}body{background:#eceef5}.app-shell{display:block;background:#f3f4f9}.sidebar{display:block;height:calc(70px + env(safe-area-inset-bottom));padding:0 3px env(safe-area-inset-bottom);border-top:1px solid #cfd3e4;background:#fffffff5;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}.sidebar nav{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);grid-template-columns:none;height:70px;gap:0}.sidebar nav button{min-width:0;min-height:70px;justify-content:center;flex-direction:column;gap:3px;padding:7px 1px 6px;border-radius:0;color:#565d7a;font-size:10px;font-weight:600;line-height:1.05;text-align:center}.sidebar nav button svg{width:20px;height:20px}.sidebar nav button[aria-current]{padding-top:5px;border-top:2px solid var(--accent);color:var(--accent);background:transparent}.sidebar nav button:hover:not(:disabled){background:transparent}.workspace{padding-bottom:calc(78px + env(safe-area-inset-bottom))}.topbar{min-height:62px;padding:12px 16px;background:#fffffff5;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.site-name,select.site-name{font-size:18px}.topbar h1{display:block;margin-top:1px;font-size:11px}.top-actions{gap:6px}.top-actions .mode{display:none}.connection{padding:8px 16px;color:#555d7e;background:#f8f9fdf5;font-size:11px}.content{padding:14px 12px 20px}button{min-height:42px;border-color:#cfd3e4;color:var(--ink);background:#fffffff5}button.primary{border-color:var(--accent);color:#fff;background:var(--accent)}.monitor-bar,.map-panel,.home-side-rail,.incident-list,.cctv-display,.cctv-incidents,.cctv-sidebar,.camera-wall-view,.health-main,.camera-wall-section,.timelapse-main{border-color:#d2d6e6;background:#fff;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.monitor-bar{gap:10px;padding:10px 12px}.monitor-copy p,.panel-heading span,.camera-wall-heading p,.cctv-toolbar p{color:#5c6280}.home-dashboard{height:auto;min-height:0;grid-template-columns:1fr;gap:12px;overflow:visible}.home-dashboard .map-area{height:clamp(280px,39dvh,380px)}.home-side-rail{min-height:0;grid-template-rows:auto minmax(230px,310px)}.home-side-rail.camera-selected{min-height:0;grid-template-rows:clamp(320px,48dvh,430px) minmax(230px,310px)}.home-cctv{grid-template-rows:auto auto}.home-cctv .panel-heading,.home-side-rail .incident-list .panel-heading{min-height:58px}.home-camera-scroll{max-height:154px;padding:8px;overflow-y:auto}.home-camera-row{min-height:64px;border-color:#e0e2ed;background:#f7f7fb}.home-camera-row strong{color:var(--ink)}.home-cctv.home-cctv-open{grid-template-rows:auto auto minmax(0,1fr)}.home-side-rail .incident-scroll{max-height:252px}.home-dashboard .map-panel .panel-heading{align-items:flex-start;gap:10px}.home-dashboard .map-tools{flex:1;flex-wrap:wrap;justify-content:flex-end}.home-dashboard .map-tools .view-toggle{flex:1 1 205px}.home-dashboard .map-tools .view-toggle button{flex:1}.map-caption{padding:11px 14px;color:#5a617e}.panel-heading,.cctv-display>header,.cctv-incidents>header,.cctv-sidebar>header{padding-inline:12px}.camera-page{height:calc(100dvh - 210px - env(safe-area-inset-bottom));min-height:450px}.cctv-workspace{grid-template-columns:1fr;grid-template-rows:minmax(0,62%) minmax(0,38%);gap:10px}.cctv-main{grid-template-rows:minmax(0,62%) minmax(0,38%);gap:10px}.cctv-display,.cctv-incidents,.cctv-sidebar{border-color:#cfd3e4}.cctv-camera-row{border-color:#dde0ec;background:#f7f7fb}.cctv-camera-row.selected{border-color:#8177ec;background:#eceafd}.cctv-stage,.ring-video-viewport{background:#11131c}.cctv-toolbar{gap:10px}.camera-wall-view{padding:12px}}.settings-checks{display:grid;gap:9px;margin:12px 0 16px}.settings-checks label{display:flex;align-items:center;gap:9px}.access-history{display:grid;gap:0;padding:0;margin:12px 0 0;list-style:none;border-top:1px solid var(--line)}.access-history li{display:grid;grid-template-columns:minmax(130px,.7fr) minmax(180px,1fr);gap:4px 14px;padding:11px 0;border-bottom:1px solid var(--line)}.access-history li strong{text-transform:capitalize}.access-history li small{grid-column:1 / -1;color:var(--muted)}.account-verification{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:12px 0;padding:12px;border:1px solid #d7b573;border-radius:10px;background:#fff7e5}.account-verification.verified{border-color:#9bcbae;background:#edf8f1}.account-verification span{display:grid}.account-verification small{color:var(--muted)}@media(max-width:620px){.access-history li{grid-template-columns:1fr}.access-history li small{grid-column:auto}}@media(max-width:760px){.topbar .site-name{display:none}.topbar h1{display:block;margin:0;color:var(--ink);font-size:20px;font-weight:700}.camera-page{height:calc(100dvh - 180px - env(safe-area-inset-bottom))}.camera-feed-workspace{grid-template-rows:minmax(0,74%) minmax(0,26%)}.camera-feed-workspace .cctv-display{min-height:360px}.cctv-camera-scroll{display:grid;overflow-x:hidden;overflow-y:auto}.cctv-camera-row{width:auto;min-width:0}.cctv-stage .ring-video.embedded video{object-fit:contain}.settings-page>section,.settings-page>div[id=settings-ring]{margin:0;padding:15px;border:1px solid #d2d6e6;border-radius:11px;background:#fff}}.pair-sheet{width:min(460px,100%)}.pair-sheet .panel-heading>div{display:grid;gap:2px}.pair-sheet .panel-heading span{color:var(--muted);font-size:13px}.pair-sheet-body{display:grid;gap:12px;padding:16px 20px 20px}.pair-sheet-state{display:grid;justify-items:center;gap:8px;padding:18px 8px 6px;text-align:center;color:var(--ink)}.pair-sheet-state>svg{color:var(--accent)}.pair-sheet-state strong{font-size:16px}.pair-sheet-state span{color:var(--muted);font-size:14px;max-width:30ch}.pair-sheet-state button{margin-top:6px;min-width:200px}.pair-sheet-loading{margin:0;padding:24px 0;text-align:center;color:var(--muted)}.pair-device-list{list-style:none;margin:0;padding:0;display:grid;gap:8px}.pair-device{width:100%;justify-content:flex-start;gap:12px;padding:12px 14px;border-radius:14px;border:1px solid var(--line);background:var(--card);color:var(--ink);text-align:left;font-weight:400}.pair-device[aria-pressed=true]{border-color:var(--accent);background:var(--accent-soft);opacity:1}.pair-device[aria-pressed=true]>svg{color:var(--accent);margin-left:auto}@media(hover:hover){.pair-device:hover:not(:disabled){border-color:var(--accent);background:var(--accent-soft)}}.pair-device-icon{flex:none;display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:var(--accent-soft);color:var(--accent)}.pair-device-text{display:grid;gap:2px;min-width:0}.pair-device-text strong{font-size:15px;font-weight:600}.pair-device-text small{color:var(--muted);font-size:13px}.pair-sheet-error{margin:0;color:#b4232c;font-size:13px}.pair-sheet-refresh{justify-self:center;min-height:36px;padding:6px 14px;font-size:14px;color:var(--muted)}.pair-model{display:grid;gap:8px;margin:0;padding:0;border:0;min-width:0}.pair-model legend{padding:0 0 4px;font-size:14px;font-weight:600;color:var(--ink)}.pair-model-option{display:flex;align-items:center;cursor:pointer}.pair-model-option input{flex:none;width:18px;height:18px;margin:0;accent-color:var(--accent)}.pair-model-option[data-checked=true]{border-color:var(--accent);background:var(--accent-soft)}.pair-model-option:focus-within{outline:2px solid var(--accent);outline-offset:2px}@media(hover:hover){.pair-model-option:hover{border-color:var(--accent)}}.pair-model-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:4px}.pair-model-actions .primary{min-width:150px}@media(max-width:760px){.sheet-backdrop{align-items:flex-end}.sheet-backdrop .modal.pair-sheet{height:auto;max-height:85vh;border-radius:22px 22px 0 0;padding-bottom:env(safe-area-inset-bottom)}}.plan-vision>span{display:grid;gap:2px}.plan-vision strong{font-weight:600}.plan-vision small{color:var(--muted);font-size:13px;font-weight:400}.plan-scale strong{margin-right:6px}.monitor-switch{width:auto;height:auto;display:inline-flex;align-items:center;gap:8px;cursor:pointer}.monitor-switch em{font-style:normal;font-size:12px;font-weight:600;color:var(--muted)}.monitor-switch span{position:relative;inset:auto;display:inline-block;width:34px;height:20px;flex:none}.cctv-display-sub{display:block;margin-top:2px;color:var(--muted);font-size:13px}.cctv-camera-row .monitor-switch{grid-column:1 / -1;justify-self:stretch;justify-content:space-between;margin:0;padding:8px 12px 10px;border-top:1px solid #e4e2f6}.cctv-camera-row .pair-camera-button{margin-right:10px}@media(max-width:760px){.camera-feed-workspace{grid-template-rows:auto minmax(0,1fr)}.camera-feed-workspace>.cctv-display{display:block;height:auto}.camera-feed-workspace .cctv-stage{display:grid;aspect-ratio:16 / 10;min-height:200px}.camera-feed-workspace .cctv-sidebar{min-height:0}.camera-feed-workspace .cctv-camera-scroll{min-height:0;overflow-y:auto}}@media(max-width:760px){.camera-page .camera-feed-workspace>.cctv-display{min-height:0}.camera-page .camera-feed-workspace>.cctv-sidebar{grid-template-rows:auto minmax(0,1fr)}.camera-page .camera-feed-workspace .cctv-camera-scroll{height:auto;grid-auto-rows:max-content;grid-template-rows:none;align-content:start}}.onboarding-dialog,.delete-account-dialog{border:1px solid var(--line);border-radius:var(--radius);background:#fff;box-shadow:0 24px 60px #23253f47;color:var(--ink)}.onboarding-dialog>header,.onboarding-dialog>footer{border-color:var(--line);color:var(--muted)}.onboarding-copy{min-height:0;padding:28px 28px 24px}.onboarding-copy h2{font-size:clamp(24px,4vw,30px);color:var(--ink)}.onboarding-copy>p:not(.eyebrow){color:var(--muted)}.onboarding-copy li{color:var(--ink)}.onboarding-copy li svg{color:var(--accent)}.onboarding-icon{border-radius:12px;color:#fff;background:var(--accent)}.onboarding-dialog button.quiet{color:var(--muted);background:transparent;border-color:transparent}.consent-choice{border-top-color:var(--line);color:var(--ink)}.retention-grid label{color:var(--ink)}.retention-grid select,.delete-account-dialog input{border:1px solid #cfd2e8;border-radius:10px;color:var(--ink);background:#fff}.legal-links a{color:var(--accent);font-weight:600}.delete-account-dialog>p{color:var(--muted)}.delete-account-dialog label{color:var(--ink)}.form-error{color:#b4232c!important}.monitor-bar{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;margin-bottom:16px;padding:14px 16px 14px 18px;border:1px solid var(--line);border-radius:14px;background:var(--card);box-shadow:var(--shadow)}.monitor-dot{width:12px;height:12px;border-radius:50%;background:#a3a8c0;box-shadow:0 0 0 4px #eef0f6}.monitor-bar.on .monitor-dot{background:#22a05b;box-shadow:0 0 0 4px #e3f5ea}.monitor-text{min-width:0}.monitor-bar .monitor-text strong{display:block;font-size:16px;font-weight:700;color:var(--ink)}.monitor-bar .monitor-text span{display:block;margin-top:2px;color:var(--muted);font-size:13px}.monitor-bar .button-row{flex-wrap:wrap;justify-content:flex-end}.incident-page{max-width:1040px}@media(max-width:760px){.monitor-bar{grid-template-columns:auto minmax(0,1fr);padding:14px}.monitor-bar .button-row{grid-column:1 / -1;display:grid;grid-template-columns:repeat(auto-fit,minmax(0,1fr))}}.camera-remove{flex:none;width:36px;min-height:36px;padding:0;margin-right:6px;border-radius:10px;border-color:transparent;background:transparent;color:var(--muted)}.camera-remove:active:not(:disabled),.camera-remove:focus-visible{color:#b4232c;background:#fdecee}@media(hover:hover){.camera-remove:hover:not(:disabled){color:#b4232c;background:#fdecee;border-color:transparent}}.cctv-camera-row{grid-template-columns:minmax(0,1fr) auto auto}.cctv-camera-row>.pair-camera-button{grid-column:2}.cctv-camera-row>.camera-remove{grid-column:3}.home-camera-row{grid-template-columns:minmax(0,1fr) auto auto;align-items:center}.home-camera-row>.pair-camera-button{grid-column:2}.home-camera-row>.camera-remove{grid-column:3;margin-right:0}.security-page{display:grid;gap:14px;max-width:760px}.settings-page .settings-card,.settings-card{display:grid;gap:14px;padding:20px;margin:0;border:1px solid var(--line);border-radius:16px;background:var(--card);box-shadow:var(--shadow)}.settings-card h2{display:flex;align-items:center;gap:9px;margin:0;font-size:18px;color:var(--ink)}.settings-card h2 svg{color:var(--accent)}.settings-card .button-row{flex-wrap:wrap}.settings-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.settings-row span,.toggle-row span,.activity-list span{display:grid;gap:2px;min-width:0}.settings-row small,.toggle-row small,.activity-list small{color:var(--muted);font-size:13px}.settings-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.settings-fields label{display:grid;gap:6px;font-size:13px;font-weight:600;color:var(--ink)}.settings-fields input{min-height:44px;padding:9px 12px;border:1px solid #cfd2e8;border-radius:10px;background:#fff;color:var(--ink);font:inherit;font-weight:400}.settings-fields input:focus-visible{outline:3px solid #a99ff5;outline-offset:1px;border-color:var(--accent)}.status-pill{flex:none;padding:3px 10px;border-radius:999px;font-style:normal;font-size:12px;font-weight:700;background:#eef0f6;color:var(--muted)}.status-pill.ok{background:#e3f5ea;color:#1f7a45}.status-pill.bad{background:#fdecee;color:#b4232c}.toggle-list{display:grid;border-top:1px solid var(--line)}.toggle-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 0;border-bottom:1px solid var(--line);cursor:pointer}.toggle-row input[role=switch]{-webkit-appearance:none;-moz-appearance:none;appearance:none;flex:none;position:relative;width:42px;height:24px;margin:0;border-radius:999px;background:#bfc2d1;cursor:pointer;transition:background .15s}.toggle-row input[role=switch]:after{content:"";position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #0003;transition:transform .15s}.toggle-row input[role=switch]:checked{background:var(--accent)}.toggle-row input[role=switch]:checked:after{transform:translate(18px)}.toggle-row input[role=switch]:focus-visible{outline:3px solid #a99ff5;outline-offset:2px}.activity-tabs{justify-self:start;flex-wrap:wrap}.activity-list{display:grid;margin:0;padding:0;list-style:none;border-top:1px solid var(--line)}.activity-list li{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 0;border-bottom:1px solid var(--line)}.activity-list strong{font-weight:600}.activity-empty{margin:0;padding:18px 0;text-align:center;color:var(--muted)}.data-facts{display:grid;gap:8px;margin:0;padding:0;list-style:none}.data-facts li{position:relative;padding-left:22px;color:var(--ink)}.data-facts li:before{content:"";position:absolute;left:4px;top:8px;width:8px;height:8px;border-radius:50%;background:var(--accent)}.app-version{margin:16px 0 0;color:var(--muted);font-size:12px}@media(max-width:760px){.settings-fields{grid-template-columns:1fr}.settings-card{padding:16px}}.ring-connection .settings-row h2{margin:0}.ring-status-line{margin:-6px 0 0;color:var(--muted)}.ring-steps{margin:0;padding-left:20px;display:grid;gap:6px;color:var(--ink)}.ring-plan{padding:12px 14px;border-radius:12px;background:var(--surface)}.ring-plan span{display:grid;gap:2px}.ring-plan small{color:var(--muted);font-size:13px}.ring-history{margin-top:14px;padding:12px 14px;border-radius:12px;background:var(--surface);gap:12px}.ring-history span{display:grid;gap:2px}.ring-history small{color:var(--muted);font-size:13px;line-height:1.45}.ring-history button{flex-shrink:0}.ring-history-result{margin-top:8px;font-size:13px}.ring-history-result p{margin:0 0 4px}.ring-history-result ul{margin:0;padding-left:18px;color:var(--muted)}@media(max-width:520px){.ring-history{flex-direction:column;align-items:stretch}}.ring-count{color:var(--muted);font-size:13px}button.quiet-danger{color:#b4232c;border-color:#f0c2c7;background:#fff}.ring-device-list{display:grid;gap:10px}.ring-connection .ring-device{display:grid;gap:12px;margin:0;padding:14px;border:1px solid var(--line);border-radius:14px;background:#fbfbfe}.ring-device-head{display:flex;align-items:center;gap:12px}.ring-device-icon{flex:none;display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:var(--accent-soft)}.ring-device-icon span{width:18px;height:18px;border-radius:50%;border:3px solid var(--accent);box-sizing:border-box;background:radial-gradient(circle,var(--accent) 0 3px,transparent 3.5px)}.ring-device-text{flex:1;display:grid;gap:2px;min-width:0}.ring-device-text h3{margin:0;font-size:16px}.ring-device-text small{color:var(--muted);font-size:13px}.ring-device-actions{display:flex;align-items:flex-end;gap:10px;flex-wrap:wrap}.ring-device-actions label{flex:1 1 220px;display:grid;gap:6px;font-size:13px;font-weight:600;color:var(--ink)}.ring-connection select{width:100%;min-height:44px;padding:8px 12px;border:1px solid #cfd2e8;border-radius:10px;background:#fff;color:var(--ink);font:inherit;font-weight:400}.ring-connection select:disabled{background:#f3f4f9;color:var(--muted)}.ring-guidance{padding:10px 12px;border:1px solid #efd9a6;border-radius:12px;background:#fdf6e7;color:#6b4f16}.ring-guidance ul{margin:6px 0 0;padding-left:18px}.map-area{position:relative}.spatial-map{touch-action:pan-y}.spatial-map.zoomed{touch-action:none;cursor:grab}.spatial-map.zoomed:active{cursor:grabbing}.map-controls{position:absolute;right:14px;bottom:14px;z-index:5;display:flex;flex-direction:column;align-items:center;gap:10px}.map-controls button{width:44px;height:44px;min-height:44px;padding:0;border-radius:50%;display:grid;place-items:center;color:var(--accent);background:#fff;border:1px solid #dcd9f7;box-shadow:0 4px 12px #23253f24}.map-controls .map-control-round[aria-pressed=true]{color:#fff;background:var(--accent);border-color:var(--accent);box-shadow:0 6px 16px #5b4fe859}.map-control-stack{display:grid;overflow:hidden;border:1px solid #dcd9f7;border-radius:999px;background:#fff;box-shadow:0 4px 12px #23253f24}.map-control-stack button{border:0;border-radius:0;box-shadow:none}.map-control-stack button+button{border-top:1px solid #eceafd}.map-controls button:active:not(:disabled){transform:scale(.96)}@media(hover:hover){.map-controls .map-control-round:hover:not(:disabled):not([aria-pressed=true]),.map-control-stack button:hover:not(:disabled){background:var(--accent-soft);border-color:#dcd9f7}}@media(max-width:760px){.map-controls{right:10px;bottom:10px;gap:8px}.map-controls button{width:40px;height:40px;min-height:40px}}.heatmap-panel{position:absolute;top:12px;left:12px;z-index:5;max-width:min(360px,calc(100% - 90px));display:grid;gap:6px;padding:10px 12px;border:1px solid #dcd9f7;border-radius:14px;background:#fffffff5;box-shadow:0 6px 18px #23253f24}.heatmap-head{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.heatmap-head strong{font-size:14px;color:var(--ink)}.heatmap-range{display:flex;gap:2px;padding:2px;border:1px solid var(--line);border-radius:999px;background:#fff}.heatmap-range button{min-height:30px;padding:4px 10px;border:0;border-radius:999px;font-size:13px;color:var(--muted);background:transparent}.heatmap-range button[aria-pressed=true]{color:#fff;background:var(--accent)}.heatmap-summary{margin:0;font-size:13px;color:var(--ink)}.heatmap-note{margin:0;font-size:12px;color:#6b4f16}.heatmap-estimate{color:var(--muted)}.heatmap-legend{position:absolute;left:12px;bottom:12px;z-index:5;display:grid;justify-items:center;gap:6px;padding:8px 6px;border:1px solid #dcd9f7;border-radius:999px;background:#fffffff5;color:var(--accent);box-shadow:0 4px 12px #23253f24}.heatmap-legend-bar{width:10px;height:120px;border-radius:6px}.people-heatmap{mix-blend-mode:multiply}@media(max-width:760px){.heatmap-panel{top:auto;bottom:8px;left:8px;right:62px;max-width:none;gap:4px;padding:6px 8px;border-radius:12px}.heatmap-head{flex-wrap:nowrap;gap:6px}.heatmap-head strong{font-size:13px;white-space:nowrap}.heatmap-range button{min-height:28px;padding:3px 8px;font-size:12px}.heatmap-summary{font-size:12px}.heatmap-note{font-size:11px}.heatmap-legend{left:8px;top:8px;bottom:auto;padding:6px 4px;gap:4px}.heatmap-legend-bar{height:64px;width:8px}}@media(max-width:380px){.heatmap-head strong{display:none}}.heatmap-panel.heatmap-panel-compact{top:8px;right:8px;bottom:auto;left:auto;max-width:none;padding:0;border:0;border-radius:0;background:none;box-shadow:none}.heatmap-panel-compact .heatmap-range{box-shadow:0 2px 8px #23253f29}.heatmap-panel-compact .heatmap-range button{min-height:28px;padding:3px 9px;font-size:12px}.motion-status{position:absolute;top:12px;left:12px;z-index:5;margin:0;max-width:calc(100% - 90px);display:inline-flex;align-items:center;gap:8px;padding:7px 12px;border:1px solid #dcd9f7;border-radius:999px;background:#fffffff5;color:var(--ink);font-size:13px;font-weight:600;box-shadow:0 4px 12px #23253f24}.motion-status span{width:8px;height:8px;border-radius:50%;background:#8a86b8;flex:none}.motion-status-live span{background:var(--accent);animation:motion-dot 1.2s ease-in-out infinite}@keyframes motion-dot{50%{box-shadow:0 0 0 5px #5b4fe838}}@media(prefers-reduced-motion:reduce){.motion-status-live span{animation:none}}@media(max-width:760px){.motion-status{top:8px;left:8px}}.crowd-banner{position:fixed;right:20px;bottom:20px;z-index:50;width:min(460px,calc(100% - 40px));display:flex;align-items:center;gap:12px;margin:0;padding:12px 14px;border:1px solid #f0c6ad;border-left:4px solid #d9480f;border-radius:14px;background:#fff8f3;color:var(--ink);box-shadow:0 10px 26px #d9480f24;animation:crowd-in .25s ease-out}.crowd-banner-icon{display:grid;place-items:center;flex:none;width:34px;height:34px;border-radius:50%;color:#b3400b;background:#fde6d8}.crowd-banner-copy{display:grid;flex:1;min-width:0}.crowd-banner-copy strong{font-size:15px}.crowd-banner-copy small{color:#7a4a2e;font-size:13px}.crowd-banner-view{min-height:36px;padding:6px 14px;border:0;border-radius:999px;background:#b3400b;color:#fff;font-weight:700;cursor:pointer}.crowd-banner-dismiss{display:grid;place-items:center;width:36px;height:36px;padding:0;border:0;border-radius:50%;background:transparent;color:#7a4a2e;cursor:pointer}.crowd-banner-dismiss:hover{background:#fde6d8}@keyframes crowd-in{0%{opacity:0;transform:translateY(8px)}}@media(max-width:760px){.crowd-banner{right:12px;bottom:calc(82px + env(safe-area-inset-bottom));width:calc(100% - 24px);padding:10px 12px;gap:10px}}@media(prefers-reduced-motion:reduce){.crowd-banner{animation:none}}.pl-mark{display:block;flex:none}.pl-wordmark{font-family:Sora,Source Sans Pro,system-ui,sans-serif;font-weight:600;letter-spacing:-.035em}.brand{display:flex;flex-direction:row;align-items:center}.brand svg.pl-mark{width:auto;height:27px}.brand .pl-wordmark{font-size:21px}@media(max-width:640px){.brand{display:none}}.legal-brand>span:first-child{width:auto;height:auto;background:none}.legal-brand>.pl-wordmark{display:inline;width:auto;height:auto;background:none;color:#1e1b4b;font-size:18px}.demo-tools p{margin:0 0 10px}.demo-status{font-weight:700;color:var(--ink)}.demo-actions{display:flex;flex-wrap:wrap;gap:10px;margin:6px 0 10px}.demo-actions button{display:inline-flex;align-items:center;gap:7px}.danger-quiet{color:#a12a2a}.demo-message{color:#1f6b3a;font-weight:600}.sim-chip{color:#8a5a00}.scene-camera-pin-sim{font-weight:800;color:#8a5a00}.sim-camera{position:relative;overflow:hidden;background:#1c1d22;border-radius:12px;aspect-ratio:16 / 9;width:100%}.sim-camera img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover}.sim-camera-name,.sim-camera-clock{position:absolute;left:12px;color:#fff;font:600 13px/1.2 "Source Sans 3",sans-serif;text-shadow:0 1px 2px rgba(0,0,0,.75);font-variant-numeric:tabular-nums}.sim-camera-name{top:10px}.sim-camera-clock{bottom:10px}.sim-camera-tag{position:absolute;top:8px;right:8px;padding:2px 6px;border-radius:6px;background:#14141899;color:#f1d38a;font:800 10px/1.3 "Source Sans 3",sans-serif;letter-spacing:.5px}.sim-camera-compact{aspect-ratio:auto;border-radius:10px}.sim-camera-compact .sim-camera-tag{top:3px;right:3px;padding:1px 4px;font-size:8px}.sim-camera.home-camera-thumb{width:40px;height:40px;flex:none}.map-heat-bar{display:none}@media(max-width:760px){.map-heat-bar{display:grid;gap:10px;padding:10px 12px 12px;border-top:1px solid var(--line)}.map-heat-toggle{display:flex;align-items:center;gap:8px;width:100%;min-height:40px;padding:6px 12px;border:1px solid #dcd9f7;border-radius:12px;color:var(--accent);background:#fff;font-weight:600;text-align:left}.map-heat-toggle span{flex:1;color:var(--ink)}.map-heat-switch{position:relative;width:36px;height:20px;border-radius:999px;background:#d4d8e8;flex:none;transition:background .15s ease}.map-heat-switch:after{content:"";position:absolute;top:2px;left:2px;width:16px;height:16px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #1e203e40;transition:transform .15s ease}.map-heat-toggle[aria-pressed=true] .map-heat-switch{background:var(--accent)}.map-heat-toggle[aria-pressed=true] .map-heat-switch:after{transform:translate(16px)}.map-heat-bar .heatmap-panel{position:static;max-width:none;padding:0;border:0;border-radius:0;background:none;box-shadow:none}.map-heat-bar .heatmap-head{flex-wrap:wrap}.map-heat-bar .heatmap-head strong{display:none}.map-heat-bar .heatmap-range{width:100%}.map-heat-bar .heatmap-range button{flex:1;min-height:32px;font-size:13px}.map-heat-bar .heatmap-summary{font-size:13px}.map-area>.heatmap-panel:not(.heatmap-panel-compact),.map-area .map-controls .map-control-round{display:none}.map-caption .map-caption-hint,.map-caption.is-hint{display:none}.home-dashboard .map-panel .panel-heading{flex-wrap:wrap;align-items:center}.home-dashboard .map-panel .panel-heading h2{flex:1 0 100%}.home-dashboard .map-tools{flex:1 0 100%;flex-wrap:nowrap;justify-content:flex-start}.home-dashboard .map-tools>button{flex:none;white-space:nowrap;padding-inline:10px}.home-dashboard .map-tools .view-toggle{flex:1 1 auto;min-width:0}.home-dashboard .map-tools .view-toggle button{flex:1;padding-inline:6px}}.home-glance{display:none}@media(min-width:1101px){.monitor-bar.home-monitor{grid-template-columns:auto minmax(150px,210px) minmax(0,1fr) auto;padding:12px 16px 12px 18px}.home-glance{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:0;min-width:0;border-left:1px solid var(--line)}.home-glance>div{min-width:0;padding:1px 18px;border-right:1px solid var(--line)}.home-glance>div:last-child{border-right:0}.home-glance dt{color:var(--muted);font-size:12px}.home-glance dd{display:grid;margin:1px 0 0}.monitor-bar .home-glance strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:Sora,Source Sans Pro,system-ui,sans-serif;font-size:22px;font-weight:600;line-height:1.2;letter-spacing:-.025em;color:var(--ink)}.home-glance small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted);font-size:12px}.home-glance small.is-up{color:#1e7a3c}.home-glance small.is-down{color:#b4232c}.home-side-rail{grid-template-rows:minmax(250px,46%) minmax(0,1fr)}.home-camera-scroll{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:max-content;align-content:start;gap:8px;padding:8px}.home-camera-row+.home-camera-row{margin-top:0}.home-camera-row{position:relative;display:block;min-height:0;padding:0;border-radius:10px;overflow:hidden}.home-camera-row.selected{box-shadow:0 0 0 2px var(--accent)}.home-camera-select{display:block;width:100%;min-height:0}.home-camera-select .home-camera-thumb{width:100%;height:auto;aspect-ratio:16 / 10;border-radius:0}.home-camera-select>span{display:block;padding:7px 9px 8px}.home-camera-select small{display:none}.home-camera-row>.pair-camera-button{position:absolute;top:6px;left:6px}.home-camera-row>.camera-remove{position:absolute;top:6px;right:6px;width:30px;min-height:30px;border-radius:8px;background:#ffffffeb}}@media(min-width:1101px)and (hover:hover){.home-camera-row>.camera-remove,.incident-row .incident-delete{opacity:0;transition:opacity .12s ease}.home-camera-row:hover>.camera-remove,.home-camera-row:focus-within>.camera-remove,.incident-row:hover .incident-delete,.incident-row:focus-within .incident-delete{opacity:1}}@media(prefers-reduced-motion:reduce){.home-camera-row>.camera-remove,.incident-row .incident-delete{transition:none}}.visit-icon{position:relative;flex:none;display:inline-grid;place-items:center;border-radius:12px;vertical-align:middle}.visit-icon.tone-review{color:#4a3fd0;background:#eceafd}.visit-icon.tone-routine{color:#1e7a3c;background:#e3f5ea}.visit-icon.tone-urgent{color:#b4232c;background:#fdecee}.visit-icon.tone-quiet{color:#5c6280;background:#eef0f6}.visit-icon-count{position:absolute;right:-5px;bottom:-5px;min-width:18px;height:18px;padding:0 4px;display:grid;place-items:center;border:2px solid var(--card, #fff);border-radius:999px;color:#fff;background:var(--accent);font-size:10px;font-weight:700;line-height:1}.incident-symbol .visit-icon{margin-right:2px}.classification-card>div>.visit-icon{float:left;margin-right:10px}.incident-classification-heading .visit-icon{margin-right:8px}@media(min-width:1101px)and (max-width:1439px){.monitor-bar.home-monitor{grid-template-columns:auto minmax(0,1fr) auto;row-gap:10px}.monitor-bar.home-monitor .button-row{grid-column:3;grid-row:1}.home-glance{grid-column:1 / -1;grid-row:2;padding-top:10px;border-left:0;border-top:1px solid var(--line)}.home-glance>div:first-child{padding-left:0}}@media(min-width:1101px){.map-panel .panel-heading h2{white-space:nowrap}.map-tools>button{white-space:nowrap}}.incident-review{grid-template-columns:minmax(0,1fr) minmax(340px,400px);gap:20px;align-items:stretch;height:max(510px,calc(100dvh - 208px));min-width:0}.incident-spatial-column{min-height:0;min-width:0;display:grid;grid-template-rows:minmax(240px,1fr) auto;gap:16px}.incident-spatial-column .map-panel{min-height:0;display:flex;flex-direction:column}.incident-spatial-column .map-area{flex:1;height:auto;min-height:0}.incident-spatial-column .panel-heading{padding:12px 18px}.incident-spatial-column .map-caption{padding:10px 16px}.incident-review .incident-review-detail{display:flex;flex-direction:column;min-height:0;min-width:0;border:1px solid #e3e4ef;border-radius:12px;background:#fff;box-shadow:none}.incident-review-header{flex:none;padding:14px 18px;border-bottom:1px solid #e3e4ef}.incident-review-nav{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:10px}.incident-review .incident-back{padding:0;min-height:32px;border:0;border-radius:6px;color:#23253f;background:transparent;font-size:13px}.incident-title-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.incident-title-row>div{min-width:0}.incident-title-row h2{margin:0 0 5px;font-size:20px;font-weight:700;line-height:1.2;overflow-wrap:anywhere}.incident-title-row h2:focus{outline:none}.incident-title-row p{margin:0;font-size:13px;color:#5b5e78;line-height:1.4}.incident-review .incident-review-action{min-height:44px;padding:10px 12px;font-size:13px;border-radius:8px;white-space:nowrap;box-shadow:none}.incident-review-scroll{overflow:auto;overscroll-behavior:contain;min-height:0;padding:16px 18px 20px;scrollbar-gutter:stable}.incident-review .incident-media{margin:0 0 14px;min-height:180px;border-radius:12px;overflow:hidden;background:#343654;color:#fff}.incident-review .incident-media>p{color:#fff;padding:24px;font-size:14px}.incident-review .incident-media img{width:100%;max-height:260px;object-fit:contain}.incident-review .incident-media .incident-media-note{font-size:12px;margin:0;padding:10px 12px}.incident-recording video{width:100%;max-height:36vh;aspect-ratio:16 / 9;object-fit:contain;background:#202236}.incident-recording .incident-recording-status{padding:9px 12px;background:#292c47}.incident-review .incident-recording .incident-recording-status p{padding:0;margin:0;color:#e4e5f3;font-size:12px;line-height:1.5}.incident-recording .incident-recording-status p+p{margin-top:5px}.incident-recording-status button{margin-top:10px;background:#5b4fe8;color:#fff;border-color:#5b4fe8}.incident-review .classification-card{margin:0 0 16px;padding:14px;gap:10px;border:1px solid #d9d6fb;border-radius:12px;background:#f6f5ff;color:#23253f}.incident-review .classification-card p,.incident-review .classification-card ul{font-size:13px;color:#5b5e78;line-height:1.5}.incident-review .classification-card details{grid-column:1 / -1;font-size:13px}.incident-review .classification-card summary{cursor:pointer;color:#4439b7;font-weight:600}.incident-review .classification-card details p{margin:8px 0 0}.incident-review .incident-classification-heading{display:flex;align-items:center;gap:8px}.incident-review .incident-classification-heading strong{margin:0}.incident-review .classification-empty{grid-template-columns:minmax(0,1fr) auto;align-items:center}.incident-review .classification-empty>button{grid-column:auto;padding:8px 10px;font-size:13px;min-height:40px;color:#4439b7;border-color:#c9c5f5}.incident-review .evidence-inspector{margin:0;padding:0;border:0;background:transparent;border-radius:0}.incident-review .evidence-inspector h3{font-size:15px;margin:0 0 8px}.incident-review .evidence-inspector dl{display:block}.incident-review .evidence-inspector dl>div{display:grid;grid-template-columns:104px minmax(0,1fr);gap:12px;padding:11px 0;border-bottom:1px solid #edeef5;font-size:14px}.incident-review .evidence-inspector dl>div:last-child{border-bottom:0}.incident-review .evidence-inspector dt{text-transform:none;letter-spacing:0;font-weight:400;font-size:14px;color:#5b5e78}.incident-review .evidence-inspector dd{margin:0;color:#23253f}.incident-review-notice{margin:0 0 14px;border-left:3px solid #aa4d14;background:#fff4e8;color:#7a430e;padding:10px;font-size:13px}.incident-event-timeline{min-width:0;padding:16px 18px;border:1px solid #e3e4ef;border-radius:12px;background:#fff;max-height:260px;overflow:auto}.incident-timeline-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px}.incident-timeline-heading h3{margin:0;font-size:17px}.playback-clock{color:#5b5e78;font-size:12px;font-variant-numeric:tabular-nums}.incident-timeline-legend{display:flex;gap:14px;flex-wrap:wrap;font-size:12px;color:#5b5e78;margin-bottom:16px}.incident-timeline-legend span{display:inline-flex;align-items:center;gap:5px}.timeline-observed-key{width:12px;height:12px;border:2px solid #b86c18;background:#f2c07f;border-radius:50%}.timeline-possible-key{width:18px;border-top:2px dashed #b86c18}.incident-timeline-scroll{overflow-x:auto;padding:0 2px 4px}.incident-timeline-chart{min-width:450px}.timeline-axis,.timeline-lane{display:grid;grid-template-columns:116px minmax(0,1fr);gap:12px}.timeline-axis{height:22px;padding-right:22px;font-size:10px;color:#5b5e78}.timeline-axis>div{position:relative;margin-inline:8px}.timeline-axis time{position:absolute;transform:translate(-50%);white-space:nowrap}.timeline-axis time:first-child{transform:none}.timeline-axis time:last-child{transform:translate(-100%)}.timeline-lane{min-height:40px;align-items:center}.timeline-lane-title{font-size:13px;font-weight:600;overflow-wrap:anywhere}.timeline-lane-title span{display:block;font-size:11px;font-weight:400;color:#5b5e78}.timeline-track{height:40px;position:relative;margin-right:22px;border-top:1px solid #edeef5}.position-track{border:0}.timeline-unknown-strip{position:absolute;top:5px;right:0;bottom:5px;left:0;background:repeating-linear-gradient(135deg,#ecedf5 0,#ecedf5 5px,#f8f8fc 5px,#f8f8fc 10px);border:1px dashed #b9bbd6;border-radius:5px;font-size:11px;line-height:28px;text-align:center;color:#555873;overflow:hidden;white-space:nowrap}.timeline-association-line{position:absolute;top:20px;border-top:2px dashed #b86c18;z-index:1}.incident-event-timeline .timeline-event-dot{position:absolute;top:9px;transform:translate(-50%);z-index:2;min-height:22px;width:22px;padding:0;border-radius:50%;background:#f2c07f;border:2px solid #b86c18;color:#5b5e78;font-size:12px}.incident-event-timeline .timeline-event-dot:after{content:"";position:absolute;top:-8px;right:-8px;bottom:-8px;left:-8px}.incident-event-timeline .timeline-event-dot.is-gap{border:1px dashed #797d9d;background:#f4f5fa}.incident-event-timeline button[aria-pressed=true]{outline:2px solid #5b4fe8;outline-offset:2px}.incident-event-timeline .timeline-camera-event{position:absolute;top:5px;min-height:30px;max-width:210px;padding:5px 8px;border-radius:6px;border:1px solid #edc593;background:#fcebd9;color:#7a430e;font-size:12px;transform:translate(-12px);white-space:nowrap}.timeline-camera-event span{overflow:hidden;text-overflow:ellipsis}.timeline-camera-event svg{flex-shrink:0}.incident-event-timeline .timeline-camera-event.is-dense{width:28px;padding:5px}.timeline-camera-event.is-dense span,.timeline-camera-event.is-dense>svg:last-child{display:none}.incident-event-timeline .timeline-event-dot:hover{background:#f2c07f;border-color:#b86c18}.timeline-selected-caption{margin:8px 0 0;color:#5b5e78;font-size:12px;line-height:1.4}.timeline-no-activity{font-size:12px;color:#5b5e78;line-height:40px}.timeline-playhead{position:absolute;top:-3px;bottom:-3px;width:2px;background:#5b4fe8;pointer-events:none;z-index:3}.timeline-reason{font-size:12px;margin-top:10px;color:#5b5e78}.timeline-reason summary{cursor:pointer;color:#4439b7}.timeline-reason p{margin:8px 0 0}.timeline-empty{margin:8px 0;color:#5b5e78}@media(min-width:761px)and (max-width:1100px){.incident-review{grid-template-columns:minmax(0,1fr) 320px;gap:12px}.incident-title-row{flex-wrap:wrap}}@media(max-width:760px){.app-shell:has(.incident-review)>.sidebar,.app-shell:has(.incident-review) .topbar,.app-shell:has(.incident-review) .monitor-bar,.app-shell:has(.incident-review) .run-status{display:none}.incident-review{position:fixed;top:0;right:0;bottom:0;left:0;z-index:20;display:block;height:100dvh;padding-top:env(safe-area-inset-top);background:#f4f5fa}.incident-review .incident-review-detail{height:100%;border:0;border-radius:0;background:#f4f5fa}.incident-review-header{background:#fff;padding:10px 16px 12px}.incident-review-nav{margin-bottom:4px}.incident-review .incident-back{min-height:36px}.incident-title-row h2{font-size:18px;margin:0 0 3px}.incident-title-row p{font-size:13px}.desktop-review-action{display:none}.incident-review-scroll{flex:1;padding:14px 16px 16px;scrollbar-gutter:auto}.incident-review .incident-media{min-height:140px;margin-bottom:12px}.incident-recording video{max-height:30dvh}.incident-review-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding:4px;border-radius:10px;background:#e7e8f3;margin-bottom:12px}.incident-review-tabs button{border:0;border-radius:7px;min-height:40px;padding:6px;background:transparent;font-size:15px;color:#454860}.incident-review-tabs button[aria-selected=true]{background:#fff;color:#23253f}.incident-review .classification-card{margin-bottom:12px}.incident-review .classification-empty{grid-template-columns:1fr}.incident-review .classification-empty>button{grid-row:3;width:100%;min-height:44px}.incident-review .evidence-inspector{background:#fff;border:1px solid #e3e4ef;border-radius:12px;padding:4px 14px}.incident-review .evidence-inspector h3{margin:10px 0 0}.incident-review .review-footer{flex:none;padding:12px 16px max(16px,env(safe-area-inset-bottom));background:#fff;border-top:1px solid #e3e4ef}.incident-review .review-footer>span{font-size:12px;line-height:1.4;color:#5b5e78}.incident-review .incident-review-action{min-height:50px;padding:12px 18px;font-size:15px;border-radius:10px}.incident-event-timeline.is-compact{max-height:none;overflow:visible;padding:14px}.incident-event-list{margin:18px 0 0;padding:0;list-style:none}.incident-event-list>li{display:grid;grid-template-columns:26px minmax(0,1fr);gap:10px;position:relative;padding-bottom:20px}.incident-event-list>li:not(:last-child):before{content:"";position:absolute;top:24px;bottom:0;left:10px;border-left:2px solid #e3e4ef}.incident-event-list>li>svg{margin-top:2px;color:#636781}.incident-event-list strong,.incident-event-list span,.incident-event-list time{display:block}.incident-event-list strong{font-size:15px;line-height:1.4}.incident-event-list span,.incident-event-list time,.incident-event-list small{font-size:13px;color:#5b5e78;line-height:1.5}.incident-event-list .event-observed-dot{width:22px;height:22px;margin-top:3px;border:3px solid #b86c18;border-radius:50%;background:#f2c07f}.incident-event-list button{display:block;width:100%;text-align:left;border:0;padding:6px 8px;margin:-6px -8px 0;border-radius:6px;background:transparent}.incident-event-list button[aria-pressed=true]{background:#f6f5ff;outline-offset:0}.incident-event-list .event-recording-link{display:inline-flex;align-items:center;gap:6px;margin-top:6px;padding:4px 8px;border-radius:6px;background:#fcebd9;color:#7a430e}.incident-event-list .event-association{color:#7a430e}.event-association details{font-size:13px;margin-top:5px}.event-association summary{cursor:pointer}.event-association p{margin:6px 0 0}.incident-camera-summary{padding-top:12px;border-top:1px solid #e3e4ef}.incident-camera-summary h4{margin:0 0 8px;font-size:14px}.incident-camera-summary>div{display:flex;gap:12px;justify-content:space-between;padding:6px 0;font-size:13px}.incident-camera-summary>div span:last-child{color:#5b5e78;text-align:right}#incident-pane-Map .map-area{height:320px}#incident-pane-Map .map-panel{border:1px solid #e3e4ef;border-radius:12px;box-shadow:none}#incident-pane-Map .panel-heading{padding:10px;flex-wrap:wrap}#incident-pane-Map .map-caption{padding:10px;font-size:12px}}
