:root{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Open Sans,Helvetica Neue,sans-serif;line-height:1.5;--bg-body: #111318;--bg-card: #1a1d24;--bg-card-hover: #22262e;--bg-input: #1e2028;--bg-nav: linear-gradient(135deg, #08090b 0%, #111318 100%);--border-subtle: #2d3139;--border-input: #3b4049;--text-primary: #e5e7eb;--text-secondary: #9ca3af;--text-muted: #8b95a7;--text-on-nav: #b0b5bf;--accent: #3b82f6;--accent-hover: #2563eb;--shadow-card: 0 1px 4px rgba(0, 0, 0, .3);color-scheme:dark}[data-theme=light]{--bg-body: #f6f7f9;--bg-card: #fff;--bg-input: #fff;--border-subtle: #e5e7eb;--border-input: #d1d5db;--text-primary: #1f2024;--text-secondary: #4b5563;--text-muted: #6b7280;--accent: #2563eb;--accent-hover: #1d4ed8;color-scheme:light}[data-theme=light-blue]{--bg-body: #e8f4fd;--bg-card: #f0f9ff;--bg-input: #fff;--border-subtle: #bae6fd;--border-input: #7dd3fc;--text-primary: #0c4a6e;--text-secondary: #075985;--text-muted: #0369a1;--accent: #0284c7;--accent-hover: #0369a1;color-scheme:light}[data-theme=light-warm]{--bg-body: #fdf6ec;--bg-card: #fffbf5;--bg-input: #fff;--border-subtle: #fde68a;--border-input: #fbbf24;--text-primary: #451a03;--text-secondary: #78350f;--text-muted: #92400e;--accent: #d97706;--accent-hover: #b45309;color-scheme:light}[data-theme=dark]{--bg-body: #111318;--bg-card: #1a1d24;--bg-card-hover: #22262e;--bg-input: #1e2028;--bg-nav: linear-gradient(135deg, #08090b 0%, #111318 100%);--border-subtle: #2d3139;--border-input: #3b4049;--text-primary: #e5e7eb;--text-secondary: #9ca3af;--text-muted: #8b95a7;--accent: #3b82f6;--accent-hover: #2563eb;--shadow-card: 0 1px 4px rgba(0, 0, 0, .3);color-scheme:dark}[data-theme=dark-blue]{--bg-body: #0a1128;--bg-card: #0f1729;--bg-card-hover: #152035;--bg-input: #0d1422;--bg-nav: linear-gradient(135deg, #050a18 0%, #0a1128 100%);--border-subtle: #1e3a5f;--border-input: #264573;--text-primary: #e0ecff;--text-secondary: #93b4d4;--text-muted: #7aa4c9;--accent: #38bdf8;--accent-hover: #0ea5e9;--shadow-card: 0 1px 4px rgba(0, 0, 0, .4);color-scheme:dark}[data-theme=dark-green]{--bg-body: #0a1510;--bg-card: #0f1f17;--bg-card-hover: #15291f;--bg-input: #0d1a13;--bg-nav: linear-gradient(135deg, #050d09 0%, #0a1510 100%);--border-subtle: #1a3d2a;--border-input: #235c3b;--text-primary: #dcfce7;--text-secondary: #86efac;--text-muted: #4ade80;--accent: #22c55e;--accent-hover: #16a34a;--shadow-card: 0 1px 4px rgba(0, 0, 0, .4);color-scheme:dark}*,*:before,*:after{box-sizing:border-box}body{margin:0;min-height:100vh;background:var(--bg-body);color:var(--text-primary);transition:background .3s ease,color .3s ease}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}.app-shell{min-height:100vh;display:flex;flex-direction:column}.nav{display:flex;align-items:center;justify-content:space-between;padding:0 1.5rem;height:3.25rem;background:var(--bg-nav);border-bottom:1px solid rgba(255,255,255,.06);color:#e2e4e9;position:sticky;top:0;z-index:90;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.company-switcher{position:relative}.company-switcher-trigger{display:inline-flex!important;align-items:center;gap:.3rem}.company-switcher-chevron{width:12px;height:12px;opacity:.7;transition:transform .15s ease}.company-switcher-trigger.is-open .company-switcher-chevron{transform:rotate(180deg)}.company-switcher-menu{position:absolute;top:calc(100% + .45rem);right:0;z-index:200;width:min(18.5rem,80vw);padding:.4rem;background:var(--bg-card);color:var(--text-primary);border:1px solid var(--border-subtle);border-radius:10px;box-shadow:0 16px 40px #00000047;animation:theme-dd-enter .15s ease both}.company-switcher-heading{margin:0;padding:.4rem .55rem .2rem;font-size:.68rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted)}.company-switcher-list{display:flex;flex-direction:column;gap:.1rem}.company-switcher-list+.company-switcher-list{margin-top:.25rem;padding-top:.25rem;border-top:1px solid var(--border-subtle)}.company-switcher-option{display:flex;align-items:center;gap:.65rem;width:100%;margin:0;padding:.4rem .45rem;border:none;border-radius:8px;background:transparent;color:var(--text-primary);font:inherit;text-align:left;cursor:pointer;transition:background .12s ease}.company-switcher-option:hover:not(:disabled){background:color-mix(in srgb,var(--text-primary) 7%,transparent)}.company-switcher-option.active{background:color-mix(in srgb,var(--accent) 14%,transparent)}.company-switcher-option.active:hover:not(:disabled){background:color-mix(in srgb,var(--accent) 22%,transparent)}.company-switcher-option:disabled{opacity:.6;cursor:default}.company-switcher-mark{width:1.85rem;height:1.85rem;border-radius:8px;display:grid;place-items:center;flex-shrink:0;font-size:.68rem;font-weight:700;letter-spacing:.02em;background:color-mix(in srgb,var(--text-muted) 18%,transparent);color:var(--text-primary)}.company-switcher-mark--all{font-size:.58rem;letter-spacing:.04em}.company-switcher-option.active .company-switcher-mark{background:var(--accent);color:#fff}.company-switcher-copy{display:flex;flex-direction:column;min-width:0;flex:1}.company-switcher-name{font-size:.86rem;font-weight:600;line-height:1.25;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.company-switcher-meta{margin-top:.08rem;font-size:.72rem;font-weight:500;color:var(--text-muted)}.company-switcher-check{width:16px;height:16px;flex-shrink:0;color:var(--accent)}.company-switcher-error{margin:.45rem .4rem .2rem}.nav .brand{font-weight:700;font-size:1rem;color:#fff;letter-spacing:-.01em;text-decoration:none;display:flex;align-items:center;gap:.45rem}.nav .brand:hover{text-decoration:none;opacity:.9}.nav ul{display:flex;align-items:center;gap:.25rem;list-style:none;margin:0;padding:0}.nav li{display:flex;align-items:center}.nav a,.nav button.linklike,.nav .nav-link-button{color:#b0b5bf;background:none;border:none;cursor:pointer;padding:.35rem .65rem;font:inherit;font-size:.85rem;font-weight:500;border-radius:5px;transition:color .15s,background .15s;text-decoration:none}.nav a:hover,.nav button.linklike:hover,.nav .nav-link-button:hover{color:#fff;background:#ffffff14;text-decoration:none}.nav a:active,.nav .nav-link-button:active{background:#ffffff1f}.nav .nav-auth-name{color:#c5cad3;font-size:.8rem;padding:0 .4rem}.nav .nav-separator{width:1px;height:1.1rem;background:#ffffff1a;margin:0 .3rem}.nav a.nav-signin,.nav a.nav-register{color:#fff;font-weight:600;padding:.32rem .85rem}.nav a.nav-signin{border:1px solid rgba(255,255,255,.55)}.nav a.nav-signin:hover{color:#fff;background:#ffffff1f;border-color:#fff}.nav a.nav-register{background:var(--accent);border:1px solid transparent}.nav a.nav-register:hover{color:#fff;background:var(--accent-hover)}.main{flex:1;padding:1.5rem;max-width:1100px;margin:0 auto;width:100%}.main:has(.dashboard-page),.main:has(.dashboard-expanded){max-width:none;padding:.5rem}.app-shell:has(.detections-page){height:100dvh;overflow:hidden}.main:has(.detections-page){max-width:none;display:flex;flex-direction:column;min-height:0;overflow:hidden}.detections-page{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.detections-page>.subsection{flex:1;min-height:0;display:flex;flex-direction:column;margin-top:.5rem;padding-top:0;border-top:none;overflow:hidden}.detections-page .det-tl{flex:1 1 auto;min-height:0;max-height:none}.detections-page .det-tl-scroll{overflow:hidden}.detections-page .det-tl-lanes{flex:1 1 auto;min-height:0;overflow:hidden}.detections-page .event-grid{flex:1;min-height:0;overflow:auto;align-content:start}.main:has(.landing),.main:has(.invite-page){max-width:none;padding:0;margin:0}.app-shell:has(.dashboard-page--theater){height:100vh;height:100dvh;overflow:hidden}.main:has(.dashboard-page--theater){max-width:none;padding:.5rem .75rem;overflow:hidden;display:flex;flex-direction:column;flex:1;min-height:0}.visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;border:0;clip:rect(0 0 0 0);overflow:hidden;white-space:nowrap}.card{background:var(--bg-card);border-radius:6px;padding:1rem 1.25rem;box-shadow:var(--shadow-card)}.page-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:.75rem}.page-header h1{margin:0;font-size:1.4rem}.alert.error{background:color-mix(in srgb,#dc2626 12%,var(--bg-card));border:1px solid color-mix(in srgb,#dc2626 35%,var(--border-subtle));color:#991b1b;padding:.5rem .75rem;border-radius:4px;margin-bottom:.75rem;font-size:.9rem}.alert.info{background:color-mix(in srgb,var(--accent) 12%,var(--bg-card));border:1px solid color-mix(in srgb,var(--accent) 35%,var(--border-subtle));color:#1e3a8a;padding:.5rem .75rem;border-radius:4px;margin-bottom:.75rem;font-size:.9rem}[data-theme^=dark] .alert.error{color:#fecaca}[data-theme^=dark] .alert.info{color:#bfdbfe}button.primary{background:var(--accent);color:#fff;border:none;padding:.45rem .9rem;border-radius:4px;cursor:pointer;font:inherit}button.primary:hover:not(:disabled){background:var(--accent-hover)}button.primary:disabled{opacity:.5;cursor:not-allowed}button.secondary{background:var(--bg-input);color:var(--text-primary);border:1px solid var(--border-input);padding:.45rem .9rem;border-radius:4px;cursor:pointer;font:inherit;white-space:nowrap}button.secondary:hover:not(:disabled){background:var(--bg-card-hover)}button.secondary:disabled{opacity:.5;cursor:not-allowed}button.linklike{background:none;border:none;padding:0;color:var(--accent);cursor:pointer;font:inherit}button.linklike.danger{color:#dc2626}button.linklike.active{color:#16a34a;font-weight:600}[data-theme^=dark] button.linklike.danger{color:#fca5a5}[data-theme^=dark] button.linklike.active{color:#4ade80}button.linklike:hover:not(:disabled){text-decoration:underline}.page-header-actions{display:flex;align-items:center;gap:.75rem}.edge-page-header{align-items:center;flex-wrap:wrap}.edge-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem}.edge-download{display:flex;align-items:center;flex-wrap:wrap;gap:.75rem 1rem;width:max-content;max-width:min(40rem,100%);margin:0 0 1.15rem;padding:.7rem .8rem;border:1px solid var(--border-subtle);border-radius:8px;background:color-mix(in srgb,var(--bg-card-hover) 55%,var(--bg-card))}.edge-download-mark{display:inline-flex;align-items:center;justify-content:center;width:2.25rem;height:2.25rem;flex:0 0 auto;border-radius:8px;background:color-mix(in srgb,var(--accent) 16%,transparent);color:var(--accent)}.edge-download-mark .edge-btn__icon{width:1.05rem;height:1.05rem}.edge-download-copy{min-width:0;flex:1 1 12rem}.edge-download-title{display:flex;align-items:baseline;flex-wrap:wrap;gap:.35rem .6rem}.edge-download-title h2{margin:0;font-size:.95rem;font-weight:650;letter-spacing:-.011em;color:var(--text-primary)}.edge-download-version{font-size:.75rem;font-weight:600;color:var(--text-muted)}.edge-download-copy p{margin:.15rem 0 0;font-size:.8rem;line-height:1.4;color:var(--text-secondary)}.edge-download-copy a{color:var(--accent)}.edge-download>.edge-btn{margin-left:auto}.edge-download-error{flex:1 0 100%;margin:.15rem 0 0}.edge-download .edge-skel-mark{width:2.25rem;height:2.25rem;flex:0 0 auto;border-radius:8px}@media (max-width: 640px){.edge-download{width:100%;max-width:none}.edge-download>.edge-btn{margin-left:0}}.edge-btn{-moz-appearance:none;appearance:none;-webkit-appearance:none;display:inline-flex;align-items:center;justify-content:center;gap:.4rem;height:2.125rem;margin:0;padding:0 .85rem;border-radius:6px;font:inherit;font-size:.875rem;font-weight:600;letter-spacing:-.011em;line-height:1;white-space:nowrap;cursor:pointer;-webkit-user-select:none;user-select:none;flex-shrink:0;transition:background .15s ease,border-color .15s ease,color .15s ease}.edge-btn__icon{width:15px;height:15px;flex:none;display:block}.edge-btn__icon.is-spinning{animation:edge-btn-spin .7s linear infinite}@keyframes edge-btn-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion: reduce){.edge-btn__icon.is-spinning{animation:none}}.edge-btn--secondary{background:var(--bg-card);color:var(--text-secondary);border:1px solid var(--border-input)}.edge-btn--secondary:hover:not(:disabled){background:var(--bg-card-hover);color:var(--text-primary);border-color:var(--text-muted)}.edge-btn--primary{background:var(--accent);color:#fff;border:1px solid transparent}.edge-btn--primary:hover:not(:disabled){background:var(--accent-hover)}.edge-btn:active:not(:disabled){transform:translateY(.5px)}.edge-btn:disabled{opacity:.48;cursor:not-allowed}.edge-btn[aria-busy=true]{opacity:1;cursor:progress}.edge-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.edge-btn--sm{height:1.75rem;padding:0 .6rem;border-radius:6px;font-size:.75rem}.table{width:100%;border-collapse:collapse;font-size:.95rem}.table th,.table td{text-align:left;padding:.5rem .75rem;border-bottom:1px solid var(--border-subtle);vertical-align:middle}.table th{background:var(--bg-card-hover);color:var(--text-primary);font-weight:600}.row-actions{text-align:right;white-space:nowrap;width:1%}.row-actions button+button,.row-actions a+button,.row-actions button+a,.row-actions a+a{margin-left:1rem}.form-grid{display:grid;gap:1rem;max-width:540px}.form-grid label{display:flex;flex-direction:column;gap:.35rem}.form-grid label span{font-weight:600;font-size:.8125rem;letter-spacing:-.011em;color:var(--text-primary)}.form-grid input[type=text],.form-grid input[type=number],.form-grid select{display:block;width:100%;height:2.5rem;margin:0;padding:0 .75rem;font:inherit;font-size:.9375rem;line-height:calc(2.5rem - 2px);color:var(--text-primary);background-color:var(--bg-input);border:1px solid var(--border-input);border-radius:6px;box-shadow:none;-moz-appearance:none;appearance:none;-webkit-appearance:none}.form-grid input[type=text]::placeholder,.form-grid input[type=number]::placeholder{color:var(--text-muted)}.form-grid select{padding-right:2.25rem;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .7rem center;background-size:1rem}[data-theme^=dark] .form-grid select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%239ca3af' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E")}.form-grid select.is-placeholder{color:var(--text-muted)}.form-grid select option{color:var(--text-primary)}.form-grid select option:disabled{color:var(--text-muted)}.form-grid input[type=text]:hover:not(:disabled):not(:focus),.form-grid input[type=number]:hover:not(:disabled):not(:focus),.form-grid select:hover:not(:disabled):not(:focus){border-color:var(--text-muted)}.form-grid input[type=text]:focus,.form-grid input[type=number]:focus,.form-grid select:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 16%,transparent)}.form-grid input[type=text]:disabled,.form-grid input[type=number]:disabled,.form-grid select:disabled{background-color:var(--bg-card-hover);color:var(--text-muted);cursor:not-allowed}.form-grid label.checkbox{flex-direction:row;align-items:center;gap:.55rem;margin-top:.15rem}.form-grid label.checkbox input{width:1rem;height:1rem;margin:0;accent-color:var(--accent);flex:none}.form-grid label.checkbox span{font-weight:500;font-size:.9rem}.form-grid small{color:var(--text-muted);font-size:.8rem;line-height:1.45}.form-btn{-moz-appearance:none;appearance:none;-webkit-appearance:none;display:inline-flex;align-items:center;justify-content:center;align-self:flex-start;height:2.25rem;margin:.1rem 0 0;padding:0 .85rem;border-radius:6px;font:inherit;font-size:.8125rem;font-weight:600;letter-spacing:-.011em;line-height:1;cursor:pointer;width:auto}.form-btn--secondary{background:var(--bg-card);color:var(--text-primary);border:1px solid var(--border-input)}.form-btn--secondary:hover:not(:disabled){background:var(--bg-card-hover);border-color:var(--text-muted)}.form-btn:disabled{opacity:.48;cursor:not-allowed}.form-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.form-actions button.primary{height:2.5rem;padding:0 1rem;border-radius:6px;font-size:.875rem;font-weight:600}.form-actions{display:flex;gap:.75rem}.subsection{margin-top:2rem;padding-top:1.25rem;border-top:1px solid var(--border-subtle)}.subsection h2{margin:0 0 .5rem;font-size:1.1rem}.hint{color:var(--text-secondary);font-size:.9rem}.inline-form{display:flex;gap:.5rem;align-items:center;margin:.75rem 0 1rem;flex-wrap:wrap}.inline-form input[type=email],.inline-form select,.table select{font:inherit;padding:.4rem .55rem;border:1px solid var(--border-input);border-radius:4px;background:var(--bg-input);color:var(--text-primary)}.inline-form input[type=email]{flex:1;min-width:220px}.form-grid textarea{font:inherit;width:100%;padding:.6rem .75rem;color:var(--text-primary);background:var(--bg-input);border:1px solid var(--border-input);border-radius:6px}.form-grid textarea{font-family:SFMono-Regular,Menlo,Consolas,monospace;font-size:.85rem;resize:vertical}.form-grid .row-2{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.form-grid .form-title{margin:.5rem 0 0;font-size:1rem;font-weight:600}.row-selected{background:color-mix(in srgb,var(--accent) 14%,transparent)}.live-wrap{position:relative;display:inline-block;width:100%;max-width:960px}.live-img,.live-video,.live-wrap .live-player{display:block;width:100%;height:auto;background:#1f2024;border-radius:4px}.live-video{min-height:300px;object-fit:contain}.live-loading,.live-connecting{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.75rem;background:#000000b3;color:#fff;font-size:.9rem;border-radius:4px}.live-chip{position:absolute;top:.5rem;right:.5rem;padding:.2rem .5rem;background:#dc2626;color:#fff;font-size:.7rem;font-weight:700;border-radius:3px;text-transform:uppercase;letter-spacing:.05em}.live-overlay{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;border-radius:4px}.table-wrap{overflow-x:auto}.detection-table{width:100%;border-collapse:collapse;font-size:.875rem}.detection-table th,.detection-table td{padding:.45rem .75rem;text-align:left;border-bottom:1px solid var(--border-subtle)}.detection-table th{font-weight:600;color:var(--text-muted);font-size:.75rem;text-transform:uppercase;letter-spacing:.04em}.detection-table tbody tr:hover{background:var(--bg-card-hover)}.detection-time{white-space:nowrap;color:var(--text-muted)}.detection-roi{font-weight:500}.detection-classes{color:var(--text-secondary)}.detection-conf{font-weight:600;color:var(--accent);white-space:nowrap}@keyframes row-flash{0%{background:color-mix(in srgb,var(--accent) 16%,transparent)}to{background:transparent}}.detection-row--new{animation:row-flash 1.2s ease-out forwards}.roi-canvas-wrap{display:flex;flex-direction:column;gap:.375rem}.roi-canvas{display:block;border:1px solid #e5e7eb;border-radius:4px;background:#1a1c20;touch-action:none;-webkit-user-select:none;user-select:none}.roi-canvas-status{display:flex;align-items:center;gap:.75rem;font-size:.8rem;min-height:1.5rem}.event-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:.75rem}.event-card{display:flex;flex-direction:column;background:var(--bg-card);color:var(--text-primary);border:1px solid var(--border-subtle);border-radius:6px;overflow:hidden;transition:border-color .12s ease,box-shadow .12s ease}.event-card--selected{border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 28%,transparent)}.event-select-badge{position:absolute;top:.4rem;left:.4rem;display:flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:4px;background:#ffffffeb;border:1.5px solid #9ca3af;color:#111827;font-size:.8rem;line-height:1;font-weight:700;pointer-events:none;transition:background .12s ease,border-color .12s ease,color .12s ease}.event-select-badge--on{background:#2563eb;border-color:#2563eb;color:#fff}.event-thumb{position:relative;display:block;width:100%;aspect-ratio:16 / 9;padding:0;border:0;background:#1a1c20;cursor:pointer;overflow:hidden}.event-thumb:disabled{cursor:default}.event-thumb img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .18s ease}.event-thumb:hover:not(:disabled) img{transform:scale(1.02)}.event-thumb-empty{display:flex;align-items:center;justify-content:center;width:100%;height:100%;color:#9ca3af;font-size:.8rem}.event-thumb-play{position:absolute;right:.4rem;bottom:.4rem;display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;background:#000000a6;color:#fff;font-size:.75rem;line-height:1;pointer-events:none}.event-body{display:flex;flex-direction:column;gap:.25rem;padding:.5rem .6rem .6rem;font-size:.85rem}.event-camera{display:flex;align-items:baseline;gap:.4rem}.event-camera .hint{font-size:.72rem}.event-top{display:flex;justify-content:space-between;align-items:baseline;gap:.5rem}.event-roi{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.event-time{color:var(--text-muted);font-size:.75rem;white-space:nowrap}.event-meta{display:flex;justify-content:space-between;gap:.5rem;color:var(--text-secondary)}.event-classes{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.event-conf{font-weight:600;color:var(--accent)}.event-actions{display:flex;justify-content:flex-end;gap:.75rem;margin-top:.25rem;min-height:1.25rem}.event-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f1114b3;display:flex;align-items:center;justify-content:center;padding:1rem;z-index:100}.event-modal{background:var(--bg-card);color:var(--text-primary);border-radius:10px;max-width:1100px;width:100%;max-height:90vh;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 16px 48px #00000059,0 0 0 1px #0000000d}.event-modal-header{display:flex;justify-content:space-between;align-items:center;padding:.85rem 1.1rem;border-bottom:1px solid var(--border-subtle)}.event-modal-img{display:block;max-width:100%;max-height:calc(90vh - 7rem);margin:0 auto;background:#1a1c20}video.event-modal-img{width:100%;max-width:960px;outline:none}.event-modal-media{position:relative;min-height:120px;display:flex;align-items:center;justify-content:center}.event-modal-meta{display:flex;flex-wrap:wrap;gap:1.5rem;padding:.6rem .9rem;border-top:1px solid var(--border-subtle);font-size:.85rem;color:var(--text-secondary)}.camera-edit-modal{max-width:960px}.camera-edit-body{flex:1;min-height:0;overflow:auto;padding:1rem 1.25rem 1.5rem}.camera-edit-actions{align-items:center;justify-content:space-between}.camera-edit-modal .camera-access-panel{margin-top:2rem;box-shadow:none;border:1px solid var(--border-subtle)}.toast-host{position:fixed;top:4.5rem;right:1rem;display:flex;flex-direction:column;gap:.5rem;z-index:80;pointer-events:none;max-width:min(360px,calc(100vw - 2rem))}.toast-card{pointer-events:auto;display:grid;grid-template-columns:auto 1fr auto;gap:.6rem;align-items:center;padding:.55rem .6rem;background:var(--bg-card);color:var(--text-primary);border:1px solid var(--border-subtle);border-left:3px solid var(--accent);border-radius:6px;box-shadow:0 4px 14px #0f111429;cursor:pointer;font-size:.85rem;animation:toast-slide-in .22s cubic-bezier(.2,.8,.2,1)}.toast-card:hover{box-shadow:0 6px 18px #0f111438}.toast-card:focus-visible{outline:2px solid #2563eb;outline-offset:2px}.toast-thumb{width:72px;height:48px;object-fit:cover;border-radius:4px;background:#1a1c20;display:block}.toast-thumb-empty{background:linear-gradient(135deg,#1f2024,#2d2f36)}.toast-body{display:flex;flex-direction:column;gap:.1rem;min-width:0}.toast-title{display:flex;justify-content:space-between;gap:.5rem;align-items:baseline}.toast-title strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.toast-conf{color:var(--accent);font-weight:600;font-size:.8rem}.toast-meta{display:flex;gap:.35rem;font-size:.8rem;color:var(--text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.toast-roi{color:var(--text-muted)}.toast-close{background:none;border:none;color:var(--text-muted);font-size:.9rem;line-height:1;padding:.25rem .35rem;cursor:pointer;border-radius:3px}.toast-close:hover{color:var(--text-primary);background:var(--bg-card-hover)}@keyframes toast-slide-in{0%{opacity:0;transform:translate(16px)}to{opacity:1;transform:translate(0)}}.dashboard-page{display:flex;flex-direction:column;gap:1rem}.dashboard-header{display:flex;flex-wrap:wrap;align-items:flex-end;gap:1rem;justify-content:space-between}.dashboard-header-main{display:flex;align-items:baseline;gap:1.25rem;flex-wrap:wrap}.dashboard-header h1{margin:0;font-size:1.5rem;letter-spacing:-.01em}.dashboard-stats{display:flex;gap:.75rem}.dashboard-stat{display:flex;flex-direction:column;align-items:center;min-width:54px;padding:.15rem .5rem;background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:6px;box-shadow:var(--shadow-card);line-height:1.15}.dashboard-stat strong{font-size:1.05rem;color:var(--text-primary)}.dashboard-stat span{font-size:.7rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}.dashboard-header-actions{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}.dashboard-segmented{display:inline-flex;background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:6px;padding:2px;gap:0}.dash-seg-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:transparent;font:inherit;color:var(--text-secondary);padding:.28rem .65rem;border-radius:4px;cursor:pointer;transition:background .12s ease,color .12s ease;line-height:1}.dash-seg-btn:hover{color:var(--text-primary)}.dash-seg-btn--active{background:var(--accent);color:#fff}.dash-seg-btn--active:hover{color:#fff}.dash-chip{display:inline-flex;align-items:center;gap:.3rem;padding:.3rem .7rem;background:var(--bg-card);border:1px solid var(--border-input);border-radius:999px;color:var(--text-primary);font:inherit;font-size:.82rem;cursor:pointer;transition:background .12s ease,border-color .12s ease,color .12s ease,transform .12s ease;text-decoration:none;line-height:1.1}.dash-chip:hover:not(:disabled){background:var(--bg-card-hover);border-color:var(--text-muted);text-decoration:none}.dash-chip:disabled{color:#9ca3af;cursor:not-allowed}.dash-chip--on{background:#064e3b;color:#ecfdf5;border-color:#064e3b}.dash-chip--on:hover:not(:disabled){background:#065f46;border-color:#065f46;color:#ecfdf5}.dash-chip--link{color:var(--accent)}.dash-focus-switcher select{font:inherit;padding:.3rem .5rem;border:1px solid var(--border-input);border-radius:999px;background:var(--bg-input);color:var(--text-primary);max-width:220px}.dashboard-grid{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));transition:gap .3s ease,grid-template-columns .3s ease}.dashboard-grid--comfy[data-count="1"]{height:calc(100vh - 9.25rem)}.dashboard-grid--comfy[data-count="1"] .dash-card{max-height:100%}.dashboard-grid--comfy[data-count="1"] .dash-card-preview{flex:1 1 auto;min-height:0}.dashboard-grid--comfy[data-count="1"] .dash-card-img,.dashboard-grid--comfy[data-count="1"] .dash-card-video{object-fit:contain}.dashboard-grid--theater{--theater-cols: 2;--theater-rows: 2;flex:1;min-height:0;grid-template-columns:repeat(var(--theater-cols),minmax(0,1fr));grid-template-rows:repeat(var(--theater-rows),minmax(0,1fr));grid-auto-rows:minmax(0,1fr);gap:.4rem;animation:theater-enter .35s ease both;overflow:hidden}.dashboard-grid--theater .dash-card-info{display:none}.dashboard-grid--theater .dash-card{height:100%;min-height:0;overflow:hidden;border-radius:6px}.dashboard-grid--theater .dash-card:hover{transform:none;box-shadow:0 4px 16px #0f111414}.dashboard-grid--theater .dash-card-preview{aspect-ratio:auto;flex:1 1 auto;min-height:0;height:100%;border-radius:6px}.dashboard-grid--theater .dash-card-img,.dashboard-grid--theater .dash-card-video,.dashboard-grid--theater .dash-card-video .hls-player-video{object-fit:contain}.dashboard-grid--theater[data-count="1"]{--theater-cols: 1;--theater-rows: 1}.dashboard-grid--theater[data-count="2"]{--theater-cols: 2;--theater-rows: 1}.dashboard-grid--theater[data-count="3"]{--theater-cols: 3;--theater-rows: 1}.dashboard-grid--theater[data-count="4"]{--theater-cols: 2;--theater-rows: 2}.dashboard-grid--theater[data-count="5"],.dashboard-grid--theater[data-count="6"]{--theater-cols: 3;--theater-rows: 2}.dashboard-grid--theater[data-count="7"],.dashboard-grid--theater[data-count="8"],.dashboard-grid--theater[data-count="9"]{--theater-cols: 3;--theater-rows: 3}.dashboard-grid--theater[data-count="10"],.dashboard-grid--theater[data-count="11"],.dashboard-grid--theater[data-count="12"]{--theater-cols: 4;--theater-rows: 3}.dashboard-grid--theater[data-count="13"],.dashboard-grid--theater[data-count="14"],.dashboard-grid--theater[data-count="15"],.dashboard-grid--theater[data-count="16"]{--theater-cols: 4;--theater-rows: 4}@keyframes theater-enter{0%{opacity:0;transform:scale(.97)}to{opacity:1;transform:scale(1)}}.dashboard-page--theater .dashboard-header{flex:0 0 auto;padding:.25rem 0;margin-bottom:0}.dashboard-page--theater{display:flex;flex-direction:column;flex:1;min-height:0;height:100%;gap:.35rem;overflow:hidden}.dash-card{position:relative;display:flex;flex-direction:column;background:#111827;color:#e5e7eb;border:1px solid #1f2937;border-radius:10px;box-shadow:0 4px 16px #0f111414;transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}.dash-card:hover{transform:translateY(-2px);box-shadow:0 10px 28px #0f11142e;border-color:#374151}.dash-card--selected,.dash-card--selected:hover{border-color:var(--accent, #2563eb);box-shadow:0 0 0 2px var(--accent, #2563eb),0 4px 16px #2563eb26}.dash-card--flash{animation:dash-flash 1.2s ease-out;border-color:#2563eb}@keyframes dash-flash{0%{box-shadow:0 0 #2563eb8c;border-color:#3b82f6}60%{box-shadow:0 0 0 10px #2563eb00}to{box-shadow:0 4px 16px #0f111414}}.dash-card-preview{position:relative;display:block;width:100%;aspect-ratio:16 / 9;background:#0f1317;padding:0;border:0;cursor:pointer;overflow:hidden;border-radius:10px 10px 0 0}.dash-card-preview:focus-visible{outline:2px solid #3b82f6;outline-offset:-2px}.dash-card-img,.dash-card-video{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:contain;display:block;background:#000}.dash-card-preview .live-player.dash-card-video{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;border-radius:0;min-height:0;background:#000}.dash-card-preview .dash-card-video .hls-player-video{object-fit:contain}.dash-card-preview .dash-card-video .hls-player-container{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%}.dash-card-preview .dash-card-video .live-player-loading,.dash-card-preview .dash-card-video .live-player-error,.dash-card-preview .dash-card-video .live-player-placeholder{min-height:0;position:absolute;top:0;right:0;bottom:0;left:0}.dash-card-overlay{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:none}.dash-card-live-chip{position:absolute;top:.5rem;left:.5rem;font-size:.65rem;letter-spacing:.08em;font-weight:700;padding:.15rem .4rem;border-radius:3px;background:#dc2626e6;color:#fff;text-transform:uppercase}.dash-card-idle{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.35rem;color:#9ca3af;font-size:.85rem}.dash-card-idle-icon{font-size:1.4rem;opacity:.75}.dash-card-connecting{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;color:#9ca3af;font-size:.85rem;background:#030712d9;z-index:2}.dash-card-spinner{width:1.5rem;height:1.5rem;border:2px solid rgba(156,163,175,.3);border-top-color:#60a5fa;border-radius:50%;animation:spin .8s linear infinite}.dash-card-info{display:flex;flex-direction:column;gap:.4rem;padding:.7rem .85rem .85rem;background:linear-gradient(180deg,#111827,#0b101a)}.dash-card-title{display:flex;align-items:center;gap:.5rem;font-size:.95rem}.dash-card-title strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600}.dash-card-meta{display:flex;align-items:center;gap:.4rem;font-size:.78rem;color:#9ca3af}.dash-card-meta-dot{opacity:.5}.dash-card-actions{display:flex;gap:.4rem;flex-wrap:wrap;margin-top:.1rem}.dash-card-actions .dash-chip{background:#ffffff0f;color:#e5e7eb;border-color:#ffffff1a;font-size:.75rem;padding:.22rem .55rem}.dash-card-actions .dash-chip:hover:not(:disabled){background:#ffffff1f;border-color:#ffffff40}.dash-card-actions .dash-chip--on{background:#059669;border-color:#059669;color:#ecfdf5}.dash-card-actions .dash-chip--on:hover:not(:disabled){background:#10b981;border-color:#10b981}.dash-card-actions .dash-chip--link{color:#93c5fd}.dash-card-alarm{display:flex;align-items:center;gap:.35rem;padding-top:.4rem;margin-top:.15rem;border-top:1px solid rgba(255,255,255,.06);flex-wrap:wrap}.dash-chip--alarm{background:#ffffff0f;color:#e5e7eb;border-color:#ffffff1a;font-size:.75rem;padding:.22rem .55rem}.dash-chip--alarm:hover:not(:disabled){background:#ffffff1f;border-color:#ffffff40}.dash-chip--alarm.dash-chip--on{background:#b45309;border-color:#b45309;color:#fffbeb}.dash-chip--alarm.dash-chip--on:hover:not(:disabled){background:#d97706;border-color:#d97706}.dash-alarm-icon{font-size:.9rem;line-height:1}.dash-alarm-select{flex:1;min-width:0;font:inherit;font-size:.75rem;padding:.2rem .4rem;background:#ffffff0f;color:#e5e7eb;border:1px solid rgba(255,255,255,.1);border-radius:4px}.dash-alarm-select:disabled{opacity:.4;cursor:not-allowed}.dash-alarm-select option{background:#111827;color:#e5e7eb}.dash-alarm-duration{flex:0 0 auto;font:inherit;font-size:.75rem;padding:.2rem .4rem;background:#ffffff0f;color:#e5e7eb;border:1px solid rgba(255,255,255,.1);border-radius:4px}.dash-alarm-duration:disabled{opacity:.4;cursor:not-allowed}.dash-alarm-duration option{background:#111827;color:#e5e7eb}.dash-chip--mini{padding:.22rem .5rem;min-width:auto;background:#ffffff14;color:#e5e7eb;border-color:#ffffff26;font-size:.75rem}.dash-chip--mini:hover:not(:disabled){background:#ffffff2e}.dash-master-alarm{display:inline-flex;align-items:center;gap:.45rem;padding:.15rem .5rem .15rem .15rem;background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:999px}.dash-master-alarm .dash-chip{border:0;background:transparent;padding:.2rem .5rem}.dash-master-alarm .dash-chip.dash-chip--on{background:#b45309;color:#fffbeb}.dash-master-alarm input[type=range]{width:90px;accent-color:#b45309}.dash-master-alarm input[type=range]:disabled{opacity:.35;cursor:not-allowed}.dash-status{display:inline-block;width:9px;height:9px;border-radius:50%;flex-shrink:0;box-shadow:0 0 0 2px #ffffff26}.dash-status--live{background:#22c55e;box-shadow:0 0 0 2px #22c55e33,0 0 8px #22c55e80}.dash-status--idle{background:#fbbf24}.dash-status--stale{background:#f97316}.dash-status--off{background:#6b7280}.dashboard-empty{display:flex;flex-direction:column;align-items:flex-start;gap:.5rem;padding:2rem;background:var(--bg-card);color:var(--text-primary);border:1px dashed var(--border-input);border-radius:8px}.dashboard-empty h2{margin:0;font-size:1.15rem}.dashboard-expanded{position:relative;display:flex;flex-direction:column;height:calc(100vh - 4.75rem);background:#000;border-radius:8px;overflow:hidden;animation:expand-enter .3s ease both}@keyframes expand-enter{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.dashboard-expanded-feed{flex:1;min-height:0;position:relative;overflow:hidden}.dashboard-expanded-feed .subsection{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;border:none;border-radius:0;border-top:none;padding:0;margin:0;display:flex;flex-direction:column}.dashboard-expanded-feed .subsection>header,.dashboard-expanded-feed .subsection>p.hint{display:none}.dashboard-expanded-feed .live-wrap{display:block;position:relative;flex:1;min-height:0;max-width:none;width:100%;height:100%}.dashboard-expanded-feed .live-img,.dashboard-expanded-feed .live-video,.dashboard-expanded-feed .live-wrap .live-player{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:contain;border-radius:0;background:#000;min-height:unset}.dashboard-expanded-feed .live-overlay{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:none}.dashboard-expanded-close{position:absolute;top:.75rem;right:.75rem;width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:50%;border:none;background:#0009;color:#fff;cursor:pointer;transition:background .15s,transform .15s;z-index:5}.dashboard-expanded-close:hover{background:#000000d9;transform:scale(1.1)}.dashboard-expanded-label{position:absolute;bottom:.75rem;left:.75rem;display:flex;align-items:center;gap:.5rem;background:#0009;color:#fff;padding:.35rem .75rem;border-radius:5px;font-size:.85rem;font-weight:500;z-index:5}.email-settings-modal{max-width:480px;color:var(--text-primary)}.alert-settings-tabs{display:flex;gap:.25rem;padding:0 1.25rem;border-bottom:1px solid var(--border)}.alert-settings-tabs button{margin:0;padding:.65rem .85rem;border:0;border-bottom:2px solid transparent;background:transparent;color:var(--text-secondary);font:inherit;font-size:.85rem;font-weight:600;cursor:pointer}.alert-settings-tabs button.is-on{color:var(--text-primary);border-bottom-color:var(--accent)}.email-settings-modal input:not([type=checkbox]):not([type=radio]):not([type=range]),.email-settings-modal textarea,.email-settings-modal select{color:var(--text-primary);background:var(--bg-input);border:1px solid var(--border-input);border-radius:5px;padding:.5rem .65rem;font:inherit;width:100%}.email-settings-modal input:not([type=checkbox]):not([type=radio]):not([type=range])::placeholder,.email-settings-modal textarea::placeholder{color:var(--text-muted)}.email-settings-modal select option{background:var(--bg-input);color:var(--text-primary)}.email-settings-modal input:not([type=checkbox]):not([type=radio]):not([type=range]):focus,.email-settings-modal textarea:focus,.email-settings-modal select:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 2px #2563eb26}.email-settings-body{padding:1.1rem 1.25rem;display:flex;flex-direction:column;gap:1rem;overflow-y:auto}.email-settings-lede{margin:0;font-size:.85rem;color:var(--text-secondary);line-height:1.4}.email-settings-row{display:flex;flex-direction:column;gap:.35rem}.email-settings-label{font-weight:600;font-size:.85rem;color:var(--text-primary)}.invite-page{min-height:calc(100vh - 3.25rem);display:flex;align-items:center;justify-content:center;padding:2.5rem 1.25rem;background:radial-gradient(1000px 520px at 85% -10%,rgba(37,99,235,.22),transparent 60%),radial-gradient(700px 420px at -10% 30%,rgba(14,165,233,.12),transparent 60%),linear-gradient(160deg,#0f1114,#12161f 45%,#0d1a2e);color:#e5e7eb}.invite-page .invite-card{width:min(34rem,100%);margin:0;padding:1.6rem 1.5rem 1.4rem;background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:14px;box-shadow:0 24px 60px #00000059;color:#e5e7eb}.invite-page h1{margin:0 0 .75rem;font-size:1.45rem;letter-spacing:-.02em;color:#fff}.invite-page p{margin:0 0 .75rem;line-height:1.55;color:#c5cad3}.invite-page .hint{color:#8b95a5;font-size:.85rem}.invite-page .invite-facts th,.invite-page .invite-facts td{border-bottom-color:#ffffff14}.invite-page .invite-facts th{color:#8b95a5}.invite-page .invite-facts td{color:#e5e7eb}.invite-page .alert.error{background:#ef5b5b1f;border-color:#ef5b5b59;color:#ffc9c9}.invite-page .alert.info{background:#2f6fed24;border-color:#2f6fed59;color:#c9dbff}.invite-page .form-actions{margin-top:.35rem}.invite-page button.lp-btn{border:none;font:inherit;cursor:pointer}.invite-page button.lp-btn:disabled{opacity:.55;cursor:not-allowed;transform:none}.invite-facts{width:100%;border-collapse:collapse;margin:.75rem 0 1rem;font-size:.9rem}.invite-facts th,.invite-facts td{text-align:left;padding:.45rem .6rem;border-bottom:1px solid var(--border-subtle);vertical-align:top}.invite-facts th{width:7rem;font-weight:600;color:var(--text-muted)}.invite-expiry{margin-top:.75rem}a.button{display:inline-block;text-decoration:none;line-height:1.2}a.button.primary{background:var(--accent);color:#fff;padding:.5rem .95rem;border-radius:4px}a.button.primary:hover{background:var(--accent-hover);text-decoration:none}a.button.linklike{color:var(--accent);padding:.5rem .25rem}.pending-invites{margin-top:1.75rem;padding-top:1.25rem;border-top:1px solid var(--border-subtle)}.pending-invites h2{margin:0 0 .2rem;font-size:1.05rem}.pending-invites>.hint{margin:0 0 .75rem}.invite-expired{color:#b45309;font-weight:600}[data-theme^=dark] .invite-expired{color:#fbbf24}.invite-link-row{display:flex;gap:.5rem;align-items:stretch}.invite-link-row input{flex:1;min-width:0;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.8rem}.email-settings-toggle{display:flex;align-items:flex-start;gap:.6rem;cursor:pointer}.email-settings-toggle input[type=checkbox]{margin-top:.2rem;width:1rem;height:1rem;flex-shrink:0}.email-settings-toggle span{display:flex;flex-direction:column}.email-settings-toggle span small,.email-settings-help{color:var(--text-muted);font-size:.78rem}.email-settings-error{color:#b91c1c;font-size:.78rem}[data-theme^=dark] .email-settings-error{color:#fca5a5}.email-chip-field{display:flex;flex-wrap:wrap;gap:.35rem;padding:.35rem .45rem;min-height:2.25rem;border:1px solid var(--border-input);border-radius:6px;background:var(--bg-input);cursor:text}.email-chip-field:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px #2563eb26}.email-chip-field input,.email-chip-field input:focus{flex:1 1 10ch;min-width:10ch;border:none!important;outline:none;background:transparent!important;font-size:.9rem;padding:.15rem;box-shadow:none!important;width:auto;border-radius:0}.email-chip{display:inline-flex;align-items:center;gap:.3rem;padding:.15rem .5rem;background:#eff6ff;border:1px solid #bfdbfe;border-radius:999px;color:#1e40af;font-size:.82rem}[data-theme^=dark] .email-chip{background:#3b82f62e;border-color:#3b82f673;color:#93c5fd}.email-chip-remove{background:transparent;border:none;color:inherit;cursor:pointer;font-size:1rem;line-height:1;padding:0 .1rem;opacity:.7}.email-chip-remove:hover{opacity:1}.email-settings-footer{display:flex;justify-content:space-between;align-items:center;gap:.75rem;padding:.75rem 1.1rem;border-top:1px solid var(--border-subtle)}.email-settings-updated{color:var(--text-muted);font-size:.78rem}.email-settings-footer-actions{display:flex;gap:.5rem}.channel-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.4rem}.channel-row{display:flex;align-items:center;justify-content:space-between;gap:.6rem;padding:.45rem .6rem;background:var(--bg-card-hover);border:1px solid var(--border-subtle);border-radius:6px;font-size:.9rem;color:var(--text-primary)}.channel-row-main{display:flex;align-items:center;gap:.4rem;flex:1 1 auto;min-width:0}.channel-address{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.85rem}.channel-pill{display:inline-block;padding:.05rem .4rem;font-size:.7rem;border-radius:999px;text-transform:uppercase;letter-spacing:.04em;font-weight:600}.channel-pill.warn{background:color-mix(in srgb,#d97706 16%,var(--bg-card));color:#92400e;border:1px solid color-mix(in srgb,#d97706 40%,var(--border-subtle))}.channel-pill.muted{background:var(--bg-card-hover);color:var(--text-secondary);border:1px solid var(--border-subtle)}[data-theme^=dark] .channel-pill.warn{color:#fcd34d}.channel-row-actions{display:flex;gap:.35rem;flex-shrink:0}.channel-row-actions .dash-chip.danger{color:#b91c1c;border-color:color-mix(in srgb,#dc2626 40%,var(--border-subtle))}.channel-row-actions .dash-chip.danger:hover:not(:disabled){background:color-mix(in srgb,#dc2626 12%,var(--bg-card))}[data-theme^=dark] .channel-row-actions .dash-chip.danger{color:#fca5a5}.auth-spinner-wrap{display:flex;align-items:center;justify-content:center;min-height:calc(100vh - 3.25rem);animation:auth-fadein .4s ease both;animation-delay:.15s}@keyframes auth-fadein{0%{opacity:0}to{opacity:1}}.auth-spinner{width:36px;height:36px;border:3px solid var(--border-subtle);border-top-color:var(--accent);border-radius:50%;animation:auth-spin .7s linear infinite}@keyframes auth-spin{to{transform:rotate(360deg)}}.landing.lp{min-height:calc(100vh - 3.25rem);margin:0;background:#0a0d13;color:#e5e7eb;font-size:1rem;overflow-x:hidden}.lp section{margin:0}.lp-hero{position:relative;padding:clamp(3rem,8vw,6.5rem) 1.5rem clamp(3rem,7vw,5.5rem);background:radial-gradient(1000px 520px at 85% -10%,rgba(37,99,235,.22),transparent 60%),radial-gradient(700px 420px at -10% 30%,rgba(14,165,233,.12),transparent 60%),linear-gradient(160deg,#0f1114,#12161f 45%,#0d1a2e)}.lp-hero-inner{max-width:1120px;margin:0 auto;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:clamp(2rem,5vw,4rem);align-items:center}.lp-eyebrow{display:inline-flex;align-items:center;gap:.5rem;font-size:.8rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:#7dd3fc;background:#38bdf814;border:1px solid rgba(56,189,248,.25);border-radius:999px;padding:.35rem .85rem;margin-bottom:1.25rem}.lp-live-dot{width:7px;height:7px;border-radius:50%;background:#34d399;box-shadow:0 0 #34d39999;animation:lp-pulse 2s ease-out infinite}@keyframes lp-pulse{0%{box-shadow:0 0 #34d3998c}70%{box-shadow:0 0 0 8px #34d39900}to{box-shadow:0 0 #34d39900}}.lp-title{color:#fff;font-size:clamp(2.2rem,5vw,3.4rem);font-weight:800;letter-spacing:-.035em;line-height:1.08;margin:0 0 1.1rem}.lp-title-accent{background:linear-gradient(90deg,#60a5fa,#38bdf8 55%,#34d399);-webkit-background-clip:text;background-clip:text;color:transparent}.lp-subtitle{color:#9aa6b8;font-size:1.1rem;line-height:1.65;margin:0 0 1.75rem;max-width:34rem}.lp-actions{display:flex;gap:.75rem;flex-wrap:wrap}.lp-btn{display:inline-flex;align-items:center;justify-content:center;padding:.7rem 1.5rem;border-radius:8px;font-size:.95rem;font-weight:600;text-decoration:none;transition:transform .15s,box-shadow .15s,background .15s;white-space:nowrap}.lp-btn:hover{text-decoration:none;transform:translateY(-1px)}.lp-btn--primary{background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff;box-shadow:0 4px 18px #2563eb66}.lp-btn--primary:hover{background:linear-gradient(135deg,#1d4ed8,#1e40af);box-shadow:0 6px 24px #2563eb80;color:#fff}.lp-btn--ghost{background:#ffffff0f;color:#e2e4e9;border:1px solid rgba(255,255,255,.16)}.lp-btn--ghost:hover{background:#ffffff1c;color:#fff}.lp-btn--lg{padding:.85rem 2rem;font-size:1.05rem}.lp-trust{list-style:none;display:flex;flex-wrap:wrap;gap:.4rem 1.4rem;padding:0;margin:1.4rem 0 0;color:#7c8798;font-size:.85rem}.lp-trust li{display:flex;align-items:center;gap:.4rem}.lp-trust li:before{content:"✓";color:#34d399;font-weight:700}.lp-hero-visual{position:relative}.lp-cam-glow{position:absolute;top:-8%;right:-6%;bottom:-8%;left:-6%;background:radial-gradient(closest-side,rgba(37,99,235,.22),transparent 70%);z-index:0;pointer-events:none}.lp-cam{position:relative;z-index:1;border-radius:14px;overflow:hidden;border:1px solid rgba(255,255,255,.1);background:#0b0f16;box-shadow:0 24px 60px #0000008c}.lp-cam-topbar{display:flex;align-items:center;gap:.75rem;padding:.55rem .9rem;font-size:.72rem;font-weight:600;letter-spacing:.04em;color:#93a0b4;background:#ffffff08;border-bottom:1px solid rgba(255,255,255,.07)}.lp-cam-rec{display:inline-flex;align-items:center;gap:.35rem;color:#f87171}.lp-cam-rec-dot{width:7px;height:7px;border-radius:50%;background:#ef4444;animation:lp-blink 1.4s steps(2,start) infinite}@keyframes lp-blink{to{visibility:hidden}}.lp-cam-name{flex:1;text-align:center}.lp-cam-time{color:#34d399}.lp-cam-scene{position:relative;aspect-ratio:16 / 9;overflow:hidden;background:radial-gradient(420px 200px at 78% 18%,rgba(148,163,184,.14),transparent 65%),linear-gradient(180deg,#141b28,#10151f 55%,#0c1017)}.lp-cam-scene:after{content:"";position:absolute;top:55%;right:0;bottom:0;left:0;background:repeating-linear-gradient(0deg,rgba(148,163,184,.08) 0 1px,transparent 1px 22%),repeating-linear-gradient(90deg,rgba(148,163,184,.06) 0 1px,transparent 1px 12%);transform:perspective(300px) rotateX(45deg);transform-origin:top;opacity:.7}.lp-scan{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,transparent 0%,rgba(56,189,248,.07) 48%,rgba(56,189,248,.16) 50%,rgba(56,189,248,.07) 52%,transparent 100%);background-size:100% 260%;animation:lp-scan 5.5s linear infinite;pointer-events:none;z-index:1}@keyframes lp-scan{0%{background-position:0 130%}to{background-position:0 -130%}}.lp-box{position:absolute;border:2px solid;border-radius:4px;z-index:2}.lp-box-label{position:absolute;top:-1.45rem;left:-2px;font-size:.66rem;font-weight:700;font-family:ui-monospace,Cascadia Code,Consolas,monospace;padding:.14rem .4rem;border-radius:3px 3px 3px 0;color:#0b0f16;white-space:nowrap}.lp-box--person{left:18%;top:30%;width:13%;height:48%;border-color:#34d399;box-shadow:0 0 0 1px #34d39940,inset 0 0 24px #34d3991f;animation:lp-drift-person 7s ease-in-out infinite alternate}.lp-box--person .lp-box-label{background:#34d399}.lp-box--car{right:12%;bottom:14%;width:30%;height:26%;border-color:#60a5fa;box-shadow:0 0 0 1px #60a5fa40,inset 0 0 24px #60a5fa1a;animation:lp-drift-car 9s ease-in-out infinite alternate}.lp-box--car .lp-box-label{background:#60a5fa}@keyframes lp-drift-person{0%{transform:translate(0)}to{transform:translate(26%)}}@keyframes lp-drift-car{0%{transform:translate(0)}to{transform:translate(-10%)}}.lp-zone{position:absolute;left:8%;right:34%;top:22%;bottom:10%;border:1.5px dashed rgba(251,191,36,.55);border-radius:6px;background:#fbbf240d;z-index:1}.lp-zone-label{position:absolute;top:.35rem;left:.5rem;font-size:.62rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#fbbf24d9}.lp-cam-footer{display:flex;gap:.5rem;flex-wrap:wrap;padding:.6rem .9rem;background:#ffffff08;border-top:1px solid rgba(255,255,255,.07)}.lp-chip{display:inline-flex;align-items:center;gap:.4rem;font-size:.72rem;font-weight:600;color:#9aa6b8;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:999px;padding:.28rem .7rem}.lp-chip svg{width:13px;height:13px}.lp-chip--alert{color:#fbbf24;background:#fbbf2414;border-color:#fbbf244d}.lp-section{padding:clamp(3rem,7vw,5rem) 1.5rem;background:#0a0d13}.lp-section--alt{background:#0d1119;border-top:1px solid rgba(255,255,255,.05);border-bottom:1px solid rgba(255,255,255,.05)}.lp-section-head{max-width:700px;margin:0 auto clamp(2rem,5vw,3rem);text-align:center}.lp-section-head h2{color:#fff;font-size:clamp(1.5rem,3.2vw,2.1rem);font-weight:750;letter-spacing:-.02em;margin:0 0 .75rem}.lp-section-head p{color:#9aa6b8;font-size:1.02rem;line-height:1.65;margin:0}.lp-grid{max-width:1120px;margin:0 auto;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.1rem}.lp-card{background:#ffffff07;border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:1.5rem 1.4rem;transition:transform .18s,border-color .18s,background .18s}.lp-card:hover{transform:translateY(-3px);border-color:#60a5fa59;background:#ffffff0b}.lp-card h3{color:#f1f5f9;font-size:1.05rem;font-weight:700;margin:0 0 .5rem}.lp-card p{color:#93a0b4;font-size:.9rem;line-height:1.6;margin:0}.lp-card-icon{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:10px;margin-bottom:1rem;flex:none}.lp-card-icon svg{width:22px;height:22px}.lp-tint-blue{color:#60a5fa;background:#60a5fa1f;border:1px solid rgba(96,165,250,.25)}.lp-tint-green{color:#34d399;background:#34d3991f;border:1px solid rgba(52,211,153,.25)}.lp-tint-amber{color:#fbbf24;background:#fbbf241f;border:1px solid rgba(251,191,36,.25)}.lp-tint-purple{color:#c084fc;background:#c084fc1f;border:1px solid rgba(192,132,252,.25)}.lp-tint-red{color:#f87171;background:#f871711f;border:1px solid rgba(248,113,113,.25)}.lp-tint-cyan{color:#22d3ee;background:#22d3ee1f;border:1px solid rgba(34,211,238,.25)}.lp-steps{max-width:1000px;margin:0 auto;padding:0;list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem}.lp-step{text-align:center;padding:0 .5rem}.lp-step-num{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;font-weight:800;font-size:1.1rem;color:#7dd3fc;background:#38bdf81a;border:1px solid rgba(56,189,248,.3);margin-bottom:1rem}.lp-step h3{color:#f1f5f9;font-size:1.02rem;font-weight:700;margin:0 0 .45rem}.lp-step p{color:#93a0b4;font-size:.9rem;line-height:1.6;margin:0}.lp-compare{max-width:950px;margin:0 auto;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem}.lp-compare-card{background:#ffffff07;border:1px solid rgba(255,255,255,.09);border-radius:14px;padding:1.7rem 1.6rem}.lp-compare-card--featured{border-color:#34d39959;background:linear-gradient(160deg,#34d3990f,#ffffff05 55%)}.lp-compare-head{display:flex;align-items:center;gap:.9rem;margin-bottom:1.1rem}.lp-compare-head .lp-card-icon{margin-bottom:0}.lp-compare-head h3{color:#f1f5f9;font-size:1.12rem;font-weight:750;margin:0 0 .2rem}.lp-compare-tag{font-size:.72rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:#7c8798}.lp-compare-tag--green{color:#34d399}.lp-check-list{list-style:none;margin:0;padding:0;display:grid;gap:.6rem}.lp-check-list li{position:relative;padding-left:1.55rem;color:#a8b2c3;font-size:.92rem;line-height:1.55}.lp-check-list li:before{content:"✓";position:absolute;left:0;top:0;color:#34d399;font-weight:800}.lp-pricing{max-width:1000px;margin:0 auto;display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,.7fr);gap:2rem;align-items:center;background:radial-gradient(600px 260px at 0% 0%,rgba(37,99,235,.14),transparent 65%),#ffffff08;border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:clamp(1.75rem,4vw,2.75rem)}.lp-pricing-copy h2{color:#fff;font-size:clamp(1.4rem,2.8vw,1.9rem);font-weight:750;letter-spacing:-.02em;margin:0 0 .7rem}.lp-pricing-copy p{color:#9aa6b8;font-size:1rem;line-height:1.65;margin:0}.lp-pricing-cta{display:flex;flex-direction:column;align-items:center;gap:.6rem}.lp-pricing-note{color:#7c8798;font-size:.82rem}.lp-footer{padding:clamp(2.5rem,5vw,3.5rem) 1.5rem 2rem;background:#080a0f;border-top:1px solid rgba(255,255,255,.06)}.lp-footer-inner{max-width:1120px;margin:0 auto 2rem;display:flex;justify-content:space-between;align-items:center;gap:1.5rem;flex-wrap:wrap}.lp-footer-brand strong{color:#fff;font-size:1.1rem;letter-spacing:-.01em}.lp-footer-brand p{color:#7c8798;font-size:.88rem;margin:.35rem 0 0}.lp-footer-actions{display:flex;gap:.75rem;flex-wrap:wrap}.lp-footer-fineprint{max-width:1120px;margin:0 auto;padding-top:1.5rem;border-top:1px solid rgba(255,255,255,.05);color:#5b6472;font-size:.78rem;line-height:1.6;text-align:center}@media (max-width: 960px){.lp-hero-inner{grid-template-columns:1fr}.lp-hero-visual{max-width:560px;margin:0 auto;width:100%}.lp-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.lp-pricing{grid-template-columns:1fr;text-align:center}}@media (max-width: 640px){.lp-grid,.lp-steps,.lp-compare{grid-template-columns:1fr}.lp-actions .lp-btn{flex:1}.lp-footer-inner{flex-direction:column;text-align:center}}@media (prefers-reduced-motion: reduce){.lp-scan,.lp-box--person,.lp-box--car,.lp-live-dot,.lp-cam-rec-dot{animation:none}}.account-page{display:grid;grid-template-columns:260px minmax(0,1fr);gap:1.5rem;min-height:0}@media (max-width: 720px){.account-page{grid-template-columns:1fr}}.account-sidebar{padding:1.25rem 0}.account-sidebar-title{font-size:1.15rem;font-weight:700;margin:0 0 1rem;padding:0 .75rem;color:var(--text-primary)}.account-nav{display:flex;flex-direction:column;gap:.2rem}.account-nav-item{display:flex;align-items:center;gap:.6rem;padding:.55rem .75rem;border:none;background:transparent;border-radius:6px;font:inherit;font-size:.9rem;color:var(--text-secondary);cursor:pointer;transition:background .15s,color .15s;text-align:left}.account-nav-item:hover{background:var(--bg-card-hover);color:var(--text-primary)}.account-nav-item--active{background:color-mix(in srgb,var(--accent) 16%,transparent);color:var(--accent);font-weight:600}.account-nav-item--active:hover{background:color-mix(in srgb,var(--accent) 24%,transparent);color:var(--accent)}.account-nav-icon{font-size:1rem;width:1.4rem;text-align:center;flex-shrink:0}.account-content{padding:1.25rem 0;max-width:none;min-width:0}.app-shell:has(.account-page){height:100dvh;overflow:hidden}.main:has(.account-page){max-width:none;display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden;padding:1rem 1.25rem}.account-page{flex:1;min-height:0;overflow:hidden}.account-content:has(.account-section--subscription){min-height:0;overflow:hidden;display:flex;flex-direction:column;padding:.15rem 0 0}.account-section:not(.account-section--subscription) .account-input{width:100%;max-width:36rem}.account-section--subscription{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.account-section--subscription>.account-section-desc{margin-bottom:.7rem}.account-section--subscription>.alert{flex-shrink:0}.account-section--subscription>.account-checkout{flex:1;min-height:0;overflow:auto}.account-sub-board{flex:1;min-height:0;display:grid;grid-template-columns:minmax(0,1.35fr) minmax(17.5rem,.8fr);gap:1rem;overflow:hidden}.account-sub-middle{min-width:0;min-height:0;display:flex;flex-direction:column;gap:.85rem;overflow:hidden}.account-pay-card{flex-shrink:0;max-height:42%;overflow:auto;border:1px solid var(--border-subtle);border-radius:8px;padding:.95rem 1.1rem .85rem;background:var(--bg-card);color:var(--text-primary)}.account-pay-card h4{margin:0 0 .2rem;font-size:1.05rem}.account-pay-card .account-section-desc{margin-bottom:.35rem}.account-pay-card .account-pay-list{margin:.4rem 0 .55rem}.account-section{animation:acct-fadein .25s ease both}@keyframes acct-fadein{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.account-section-loading{color:var(--text-muted);padding:2rem 0}.account-section-title{font-size:1.1rem;font-weight:700;margin:0 0 .3rem;color:var(--text-primary)}.account-section-desc{font-size:.88rem;color:var(--text-muted);margin:0 0 1.25rem;line-height:1.5}.account-field{display:flex;flex-direction:column;gap:.3rem;margin-bottom:1rem}.account-label{font-size:.82rem;font-weight:600;color:var(--text-secondary)}.account-input{padding:.5rem .7rem;border:1px solid var(--border-input);border-radius:6px;font:inherit;font-size:.9rem;color:var(--text-primary);background:var(--bg-input);transition:border-color .15s,box-shadow .15s}.account-input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 18%,transparent)}.account-input:disabled{background:var(--bg-card-hover);color:var(--text-muted);cursor:not-allowed}.account-help{font-size:.78rem;color:var(--text-muted)}.account-actions{margin-top:1rem}.account-environment-list{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;align-items:stretch;gap:.55rem}.account-environment-list>li{display:flex;flex:1 1 16rem;min-width:min(100%,16rem)}.account-environment-card{position:relative;display:flex;flex:1;flex-direction:column;border:1px solid var(--border-subtle);border-radius:8px;padding:.6rem .7rem;background:var(--bg-card)}.account-environment-card--open{border-color:color-mix(in srgb,var(--accent) 55%,var(--border-subtle))}.account-environment-open-hit{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;margin:0;padding:0;border:0;border-radius:inherit;background:transparent;cursor:pointer}.account-environment-open-hit:disabled{cursor:default}.account-environment-open-hit:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.account-environment-card:has(.account-environment-open-hit:hover:not(:disabled)){border-color:var(--accent);background:var(--bg-card-hover)}.account-environment-body{position:relative;z-index:1;pointer-events:none}.account-environment-body .account-environment-icon,.account-environment-body .account-environment-rename{pointer-events:auto}.account-environment-card .account-help{margin:.15rem 0 0}.account-environment-head{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.account-environment-head h4,.account-environment-create-title{margin:0;font-size:1rem;font-weight:700;color:var(--text-primary)}.account-environment-title{display:flex;align-items:center;gap:.15rem;min-width:0;flex:1}.account-environment-title h4{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.account-environment-rename{display:flex;align-items:center;gap:.35rem;flex:1;min-width:0}.account-environment-rename .account-input{flex:1;min-width:0}.account-environment-icon{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:1.75rem;height:1.75rem;padding:0;border:none;border-radius:6px;background:transparent;color:var(--text-muted);cursor:pointer}.account-environment-icon:hover:not(:disabled){background:var(--bg-card-hover);color:var(--text-primary)}.account-environment-icon--save{color:var(--accent)}.account-environment-icon:disabled{opacity:.5;cursor:not-allowed}.account-environment-open{font-size:.72rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--accent)}.account-environment-stat{margin:.1rem 0 .35rem;font-size:.82rem;color:var(--text-secondary)}.account-environment-label{margin:0;font-size:.75rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted)}.account-environment-devices{list-style:none;margin:.2rem 0 0;padding:0;display:flex;flex-direction:column;gap:.15rem}.account-environment-device{display:flex;flex-wrap:wrap;gap:.25rem .75rem;font-size:.85rem;color:var(--text-secondary)}.account-environment-device strong{color:var(--text-primary);font-weight:600}.account-environment-online{color:#16a34a}.account-environment-offline{color:var(--text-muted)}.account-environment-create{margin:0 0 1.5rem;padding-bottom:1.25rem;border-bottom:1px solid var(--border-subtle)}.account-environment-create .account-section-desc{margin-top:.3rem}.account-environment-name-row{display:flex;align-items:flex-end;gap:.6rem}.account-environment-name-row .account-field{flex:1;min-width:0;margin-bottom:0}.account-environment-name-row button.primary{flex-shrink:0;min-width:6.5rem;padding:.5rem .9rem;border:1px solid transparent;border-radius:6px}.edge-environment{margin:.35rem 0 1.35rem;padding-bottom:1.25rem;border-bottom:1px solid var(--border-subtle)}.edge-environment .account-environment-name-row{max-width:36rem}.edge-environment .account-environment-name-row .edge-btn{flex-shrink:0;min-width:6.5rem;margin-bottom:0}.edge-environment>.account-section-desc{margin-bottom:.65rem}.account-plan-card{border:1px solid var(--border-subtle);border-radius:8px;padding:1.25rem;background:var(--bg-card);color:var(--text-primary);min-width:0;min-height:0;display:flex;flex-direction:column;overflow:hidden}.account-plan-header{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem;margin-bottom:.75rem;flex-shrink:0}.account-plan-body{flex:1;min-height:0;overflow:hidden;display:flex;flex-direction:column}.account-plan-body .account-invoices{flex:1;min-height:0;display:flex;flex-direction:column;margin:0 0 .75rem}.account-plan-body .account-invoices h5{flex-shrink:0}.account-plan-body .account-invoices ul{flex:1;min-height:0;overflow-y:auto}.account-plan-body .account-plan-footer{flex-shrink:0}.account-plan-info-anchor{position:relative;flex-shrink:0}.account-info-btn{display:inline-flex;align-items:center;justify-content:center;width:1.75rem;height:1.75rem;margin:0;padding:0;border:none;border-radius:50%;background:transparent;color:var(--text-muted);cursor:pointer}.account-info-btn:hover,.account-info-btn[aria-expanded=true]{color:var(--accent);background:color-mix(in srgb,var(--accent) 14%,transparent)}.account-plan-info{position:fixed;z-index:80;width:18.5rem;padding:.85rem .95rem .65rem;border:1px solid var(--border-subtle);border-radius:8px;background:var(--bg-elevated, var(--bg-card));box-shadow:0 12px 32px #00000061}.account-plan-info-title{margin:0 0 .55rem;font-size:.72rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--text-muted)}.account-plan-info .account-plan-features{margin:0}.account-plan-body .account-invoices li{grid-template-columns:8.6rem 4.4rem 3.4rem minmax(0,1fr);gap:.4rem}.account-plan-body .account-invoices li span:nth-child(-n+3){white-space:nowrap}.account-plan-body .account-invoices li span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.account-plan-badge{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted)}.account-plan-name{margin:.2rem 0 0;font-size:1.15rem;font-weight:700;color:var(--text-primary)}.account-invoices{margin:0 0 1rem}.account-invoices h5{margin:0 0 .4rem;font-size:.75rem;letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted)}.account-invoices ul{list-style:none;margin:0;padding:0}.account-invoices li{display:grid;grid-template-columns:9.5rem 5.5rem 4.5rem 1fr;gap:.75rem;padding:.35rem 0;border-top:1px solid var(--border-subtle);font-size:.9rem;color:var(--text-secondary)}.account-invoice-status--paid{color:#047857}[data-theme^=dark] .account-invoice-status--paid{color:#34d399}.account-plan-features{list-style:none;padding:0;margin:0 0 1rem;display:flex;flex-direction:column;gap:.35rem}.account-plan-features li{font-size:.88rem;color:var(--text-secondary);padding-left:1.3rem;position:relative}.account-plan-features li:before{content:"✓";position:absolute;left:0;color:#059669;font-weight:700}.account-plan-footer{display:flex;flex-direction:column;gap:.5rem}.account-pay{margin:.25rem 0 1rem}.account-pay h5{margin:0 0 .25rem;font-size:.78rem;letter-spacing:.04em;text-transform:uppercase;color:var(--text-secondary)}.account-pay-list{list-style:none;margin:.75rem 0;padding:0;display:flex;flex-direction:column;gap:.5rem}.account-pay-row{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.65rem .75rem;border:1px solid var(--border, #2a3544);border-radius:8px}.account-pay-row--selected{border-color:var(--accent, #3b82f6)}.account-pay-choice{display:flex;align-items:center;gap:.55rem;margin:0}.account-pay-actions{display:flex;align-items:center;gap:.75rem;flex-shrink:0}.account-pay-remove{display:inline-flex;align-items:center;justify-content:center;padding:.15rem;border:0;background:none;color:#dc2626;cursor:pointer;line-height:0}.account-pay-remove svg{stroke-width:1.5}.account-pay-remove:hover:not(:disabled) svg{stroke-width:2.5}.account-pay-remove:disabled{opacity:.45;cursor:default}.account-pay-used{color:var(--text-secondary);font-size:.85rem}.account-sub-envs{flex:1;min-height:0;display:flex;flex-direction:column;gap:.85rem;margin:0;overflow:auto}.account-sub-env{flex-shrink:0;border:1px solid var(--border-subtle);border-radius:8px;padding:1.1rem 1.15rem 1rem;background:var(--bg-card);color:var(--text-primary)}.account-sub-env-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.account-sub-env-head h4{margin:0;font-size:1.05rem}.account-sub-env-plan{margin:.2rem 0 0;font-size:.78rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted)}.account-sub-env-renew{margin:.2rem 0 0;font-size:.85rem;color:var(--text-secondary)}.account-sub-env-charge{margin:0;font-size:1.05rem;font-weight:600;font-variant-numeric:tabular-nums;white-space:nowrap}.account-sub-env-pay{display:flex;flex-wrap:wrap;align-items:flex-end;gap:.65rem .75rem;margin-top:.9rem}.account-sub-env-pay .account-field{flex:1 1 12rem;margin-bottom:0}.account-sub-env-pay .account-input{width:100%}.account-sub-env-pay .account-section-desc,.account-sub-env-pay .account-pay-used{margin:0}.account-sub-env-actions{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}.account-sub-env-pay button.primary,.account-sub-env-pay button.secondary{height:2.4rem}.account-sub-env{cursor:pointer}.account-sub-env--selected{border-color:var(--accent, #3b82f6);box-shadow:0 0 0 1px var(--accent, #3b82f6)}.account-sub-skeleton{grid-template-rows:minmax(0,1fr)}.account-skel-card{display:flex;flex-direction:column;gap:.7rem;cursor:default}.account-skel-split{display:flex;align-items:center;justify-content:space-between;gap:1rem}.account-skel{position:relative;display:block;overflow:hidden;height:.72rem;border-radius:6px;background:color-mix(in srgb,var(--text-muted) 16%,var(--bg-card))}.account-skel:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;transform:translate(-100%);background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--accent) 34%,transparent),transparent);animation:account-skel 1.6s ease-in-out infinite}.account-skel--title{width:9.5rem;height:.95rem}.account-skel--line{width:72%}.account-skel--short{width:42%}.account-skel--amount{width:5.5rem;height:.95rem;flex-shrink:0}.account-skel--row{width:100%;height:2.35rem;border-radius:8px}.account-skel--narrow{width:68%}.account-skel--field{width:100%;height:2.15rem;margin-top:.25rem;border-radius:8px}.account-skel--badge{width:7rem;height:.7rem;border-radius:999px}.account-skel--block{flex:1;width:100%;min-height:8rem;margin-top:.35rem;border-radius:8px}@keyframes account-skel{to{transform:translate(100%)}}@media (prefers-reduced-motion: reduce){.account-skel:after{animation:none}}.edge-skel-btn{width:6.75rem;height:2.125rem;flex:0 0 auto;border-radius:6px}.edge-skel-btn--wide{width:13.5rem}.edge-skel-input{flex:1 1 auto;width:auto;min-width:0;height:2.4rem;border-radius:6px}.edge-skel-env{min-height:7.5rem;gap:.55rem}.edge-skel-note{margin:.15rem 0 .85rem}.edge-skel-device{width:78%;height:.7rem;margin-top:.35rem}.edge-skel-cell{width:72%;max-width:9rem;height:.72rem}.edge-skel-cell--name{width:58%}.edge-skel-cell--short{width:42%}.account-plan-body>.account-plan-features{flex-shrink:0}@media (max-width: 960px){.app-shell:has(.account-page){height:auto;overflow:auto}.main:has(.account-page),.account-page,.account-content:has(.account-section--subscription),.account-section--subscription,.account-sub-board,.account-sub-middle,.account-sub-envs,.account-plan-card,.account-plan-body{overflow:visible;min-height:0}.account-sub-board{grid-template-columns:1fr}}.account-env-charges{list-style:none;margin:.85rem 0 .25rem;padding:0;display:flex;flex-direction:column;gap:.45rem}.account-env-charges li{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;font-size:.95rem}.account-env-charges li span:last-child{font-variant-numeric:tabular-nums;white-space:nowrap}.account-environment-charge{margin:.35rem 0 .15rem;font-size:.95rem;font-variant-numeric:tabular-nums}.account-checkout{border:1px solid var(--border, #2a3544);border-radius:10px;background:var(--bg-elevated, #151c27);padding:1rem 1.1rem 1.25rem}.account-checkout-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:.85rem}.account-checkout-title{margin:0 0 .25rem;font-size:1.05rem}.account-checkout-desc{margin:0;font-size:.85rem;color:var(--text-muted, #9aa4b2);max-width:42rem}.account-checkout-frame{min-height:320px}.account-btn-danger{background:#dc2626;color:#fff;border:none;padding:.5rem 1rem;border-radius:6px;font:inherit;font-size:.88rem;font-weight:600;cursor:pointer;transition:background .15s}.account-btn-danger:hover:not(:disabled){background:#b91c1c}.account-btn-danger:disabled{opacity:.5;cursor:not-allowed}.dialog-actions{display:flex;justify-content:flex-end;align-items:center;gap:.75rem;margin-top:1.25rem}.dialog-actions button{-moz-appearance:none;appearance:none;-webkit-appearance:none;display:inline-flex;align-items:center;justify-content:center;height:2.25rem;min-width:10.25rem;margin:0;padding:0 1rem;border:1px solid transparent;border-radius:6px;font:inherit;font-size:.875rem;font-weight:600;line-height:1;letter-spacing:-.011em;white-space:nowrap;cursor:pointer}.dialog-actions button.secondary{background:var(--bg-input);color:var(--text-primary);border-color:var(--border-input)}.dialog-actions button.secondary:hover:not(:disabled){background:var(--bg-card-hover)}.dialog-actions button:disabled{opacity:.5;cursor:not-allowed}.dialog-actions button.danger{background:#dc2626;color:#fff;border-color:transparent}.dialog-actions button.danger:hover:not(:disabled){background:#b91c1c}.account-environment-icon--danger:hover:not(:disabled){color:#dc2626;background:color-mix(in srgb,#dc2626 12%,var(--bg-card))}[data-theme^=dark] .account-environment-icon--danger:hover:not(:disabled){color:#fca5a5}.rtsp-builder-header{display:flex;align-items:center;justify-content:space-between}.rtsp-builder-toggle{background:none;border:none;color:var(--accent);font-size:.78rem;font-weight:500;cursor:pointer;padding:0}.rtsp-builder-toggle:hover{text-decoration:underline}.rtsp-builder-fields{display:flex;flex-direction:column;gap:.6rem;padding:.75rem;border:1px solid var(--border-subtle);border-radius:6px;background:var(--bg-card)}.rtsp-builder-row{display:flex;gap:.5rem}.rtsp-builder-field{display:flex;flex-direction:column;gap:.2rem;flex:1}.rtsp-builder-field--sm{flex:0 0 80px}.rtsp-builder-field label{font-size:.75rem;font-weight:600;color:var(--text-secondary)}.rtsp-builder-field input{padding:.4rem .55rem;border:1px solid var(--border-input);border-radius:5px;font:inherit;font-size:.85rem;color:var(--text-primary);background:var(--bg-input)}.rtsp-builder-field input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 18%,transparent)}.rtsp-pass-wrap{position:relative;display:flex}.rtsp-pass-wrap input{flex:1;padding-right:2.2rem}.rtsp-pass-eye{position:absolute;right:.4rem;top:50%;transform:translateY(-50%);background:none;border:none;cursor:pointer;padding:.2rem;line-height:0;color:var(--text-muted);display:flex;align-items:center;justify-content:center;transition:color .15s}.rtsp-pass-eye:hover{color:var(--text-primary)}.rtsp-builder-preview{display:flex;flex-direction:column;gap:.2rem;margin-top:.25rem}.rtsp-builder-preview-uri{font-size:.78rem;font-family:ui-monospace,Cascadia Code,Fira Code,monospace;background:#1f2937;color:#a5f3fc;padding:.4rem .6rem;border-radius:4px;word-break:break-all;line-height:1.4}.theme-picker{position:relative;display:flex;align-items:center}.theme-picker-trigger{display:flex!important;align-items:center;gap:.3rem}.theme-picker-trigger svg{display:block}.theme-picker-dropdown{position:absolute;top:calc(100% + .5rem);right:0;min-width:180px;background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:8px;box-shadow:0 10px 32px #00000026;padding:.4rem;z-index:200;animation:theme-dd-enter .15s ease both}@keyframes theme-dd-enter{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.theme-picker-group{display:flex;flex-direction:column}.theme-picker-group+.theme-picker-group{border-top:1px solid var(--border-subtle);margin-top:.3rem;padding-top:.3rem}.theme-picker-group-label{font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);padding:.25rem .5rem}.theme-picker-option{display:flex;align-items:center;gap:.55rem;padding:.4rem .5rem;border:none;background:transparent;border-radius:5px;font:inherit;font-size:.82rem;color:var(--text-primary);cursor:pointer;text-align:left;width:100%;transition:background .1s}.theme-picker-option:hover{background:var(--bg-card-hover, rgba(0, 0, 0, .04))}.theme-picker-option--active{background:color-mix(in srgb,var(--accent) 15%,transparent);color:var(--accent);font-weight:600}.theme-picker-option--active:hover{background:color-mix(in srgb,var(--accent) 22%,transparent)}.theme-picker-swatch{width:16px;height:16px;border-radius:4px;border:1px solid rgba(0,0,0,.12);flex-shrink:0}.class-picker{position:relative;width:100%}.class-picker-display{display:flex;align-items:center;gap:.5rem;min-height:38px;padding:.35rem .5rem;border:1px solid var(--border-input);border-radius:6px;background:var(--bg-input);color:var(--text-primary);cursor:pointer;transition:border-color .15s}.class-picker-display:focus,.class-picker-display:hover{border-color:var(--accent);outline:none}.class-picker-placeholder{color:var(--text-muted);font-size:.85rem}.class-picker-tags{display:flex;flex-wrap:wrap;gap:4px;flex:1}.class-picker-tag{display:inline-flex;align-items:center;gap:3px;padding:2px 8px;background:color-mix(in srgb,var(--accent) 15%,transparent);color:var(--accent);border-radius:12px;font-size:.75rem;font-weight:500;white-space:nowrap}.class-picker-tag-x{border:none;background:transparent;color:var(--accent);font-size:.9rem;line-height:1;cursor:pointer;padding:0 2px;border-radius:50%}.class-picker-tag-x:hover{background:color-mix(in srgb,var(--accent) 30%,transparent);color:var(--text-primary)}.class-picker-chevron{margin-left:auto;font-size:.6rem;color:var(--text-muted)}.class-picker-dropdown{z-index:2000;background:var(--bg-card);color:var(--text-primary);border:1px solid var(--border-subtle);border-radius:8px;box-shadow:0 8px 24px #0000001f;max-height:320px;display:flex;flex-direction:column}.class-picker-search{border:none;border-bottom:1px solid var(--border-subtle);padding:.5rem .75rem;font:inherit;font-size:.85rem;outline:none;border-radius:8px 8px 0 0;background:var(--bg-input);color:var(--text-primary)}.class-picker-list{overflow-y:auto;padding:.25rem 0;flex:1}.class-picker-category{padding:.25rem 0}.class-picker-cat-header{display:flex;align-items:center;justify-content:space-between;padding:.35rem .75rem;position:sticky;top:0;background:var(--bg-card);z-index:1}.class-picker-cat-header strong{font-size:.72rem;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted)}.class-picker-cat-actions{display:flex;gap:4px}.class-picker-cat-btn{border:none;background:transparent;color:var(--accent);font-size:.7rem;font-weight:600;cursor:pointer;padding:2px 6px;border-radius:4px}.class-picker-cat-btn:hover{background:color-mix(in srgb,var(--accent) 12%,transparent)}.class-picker-items{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:1px 0;padding:0 .5rem}.class-picker-item{display:flex;align-items:center;gap:6px;padding:4px 6px;border-radius:4px;cursor:pointer;font-size:.82rem;color:var(--text-primary);transition:background .1s}.class-picker-item:hover{background:var(--bg-card-hover, rgba(0, 0, 0, .04))}.class-picker-item input[type=checkbox]{accent-color:var(--accent);width:14px;height:14px}.class-picker-item-label{display:flex;align-items:baseline;gap:4px}.class-picker-item-id{font-size:.68rem;color:var(--text-muted)}.roi-quick-edit{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:200;width:min(420px,92vw);max-height:80vh;background:var(--bg-card);color:var(--text-primary);border-radius:12px;box-shadow:0 20px 60px #00000040,0 0 0 1px #0000000d;display:flex;flex-direction:column;overflow:hidden}.roi-quick-edit-header{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;border-bottom:1px solid var(--border-subtle)}.roi-quick-edit-header h4{margin:0;font-size:.9rem;font-weight:600;color:var(--text-primary)}.roi-quick-edit-close{border:none;background:transparent;font-size:1.4rem;color:var(--text-muted);cursor:pointer;padding:0 4px;line-height:1;border-radius:4px}.roi-quick-edit-close:hover{background:var(--bg-card-hover, rgba(0, 0, 0, .04));color:var(--text-primary)}.roi-quick-edit-body{padding:.5rem;overflow-y:auto;flex:1;display:flex;flex-direction:column;gap:.4rem}.roi-quick-edit-card{border:1px solid var(--border-subtle);border-radius:8px;overflow:hidden;transition:border-color .15s}.roi-quick-edit-card.expanded{border-color:var(--accent)}.roi-quick-edit-card-header{display:flex;align-items:center;gap:.5rem;width:100%;padding:.55rem .75rem;border:none;background:var(--bg-body);color:var(--text-primary);cursor:pointer;font:inherit;text-align:left;transition:background .1s}.roi-quick-edit-card-header:hover{background:var(--bg-card-hover, rgba(0, 0, 0, .04))}.roi-quick-edit-dot{width:8px;height:8px;border-radius:50%;background:var(--border-input);flex-shrink:0}.roi-quick-edit-dot.on{background:#22c55e}.roi-quick-edit-card-name{font-weight:600;font-size:.82rem;color:var(--text-primary)}.roi-quick-edit-card-summary{margin-left:auto;font-size:.72rem;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:140px}.roi-quick-edit-chevron{font-size:.55rem;color:var(--text-muted);flex-shrink:0}.roi-quick-edit-card-body{padding:.75rem;display:flex;flex-direction:column;gap:.6rem;border-top:1px solid var(--border-subtle)}.roi-quick-edit-toggle{display:flex;align-items:center;gap:.5rem;font-size:.82rem;color:var(--text-primary);cursor:pointer}.roi-quick-edit-toggle input[type=checkbox]{accent-color:var(--accent)}.roi-quick-edit-field{display:flex;flex-direction:column;gap:4px}.roi-quick-edit-field>span:first-child{font-size:.75rem;font-weight:500;color:var(--text-muted)}.roi-quick-edit-field input[type=range]{accent-color:var(--accent)}.roi-quick-edit-conf-value{font-size:.72rem;color:var(--text-secondary);font-weight:600;min-width:32px;text-align:right}.dash-chip--zones{display:inline-flex;align-items:center;gap:4px}.dash-chip-icon{width:14px;height:14px}.form-field{display:flex;flex-direction:column;gap:4px}.form-field-label{font-size:.82rem;font-weight:500;color:var(--text-secondary)}.detection-feed-fab{position:fixed;bottom:24px;right:24px;z-index:900;display:flex;align-items:center;justify-content:center;width:52px;height:52px;border:none;border-radius:50%;background:#4f46e5;color:#fff;cursor:pointer;box-shadow:0 4px 16px #4f46e566;transition:transform .15s,box-shadow .15s}.detection-feed-fab:hover{transform:scale(1.08);box-shadow:0 6px 24px #4f46e580}.detection-feed-fab-icon{width:24px;height:24px}.detection-feed-fab-badge{position:absolute;top:-4px;right:-4px;min-width:20px;height:20px;padding:0 5px;border-radius:10px;background:#ef4444;color:#fff;font-size:.7rem;font-weight:700;display:flex;align-items:center;justify-content:center;line-height:1}.detection-feed-panel{position:fixed;bottom:24px;right:24px;z-index:950;width:min(400px,calc(100vw - 48px));max-height:min(520px,calc(100vh - 100px));background:var(--bg-card);color:var(--text-primary);border-radius:14px;box-shadow:0 20px 60px #0003,0 0 0 1px #0000000d;display:flex;flex-direction:column;overflow:hidden}.detection-feed-header{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;border-bottom:1px solid var(--border-subtle);flex-shrink:0}.detection-feed-header h4{margin:0;font-size:.9rem;font-weight:600;color:var(--text-primary)}.detection-feed-count{background:color-mix(in srgb,var(--accent) 15%,transparent);color:var(--accent);font-size:.7rem;font-weight:700;padding:2px 7px;border-radius:10px}.detection-feed-dismiss-all{margin-left:auto;border:none;background:transparent;color:var(--accent);font-size:.75rem;font-weight:600;cursor:pointer;padding:4px 8px;border-radius:4px}.detection-feed-dismiss-all:hover{background:color-mix(in srgb,var(--accent) 12%,transparent)}.detection-feed-close{border:none;background:transparent;font-size:1.3rem;color:var(--text-muted);cursor:pointer;padding:0 4px;line-height:1;border-radius:4px}.detection-feed-close:hover{background:var(--bg-card-hover, rgba(0, 0, 0, .04));color:var(--text-primary)}.detection-feed-list{overflow-y:auto;flex:1;padding:.25rem}.detection-feed-card{display:flex;align-items:center;gap:.6rem;padding:.55rem .6rem;border-radius:8px;color:var(--text-primary);cursor:pointer;transition:background .1s}.detection-feed-card:hover{background:var(--bg-card-hover, rgba(0, 0, 0, .04))}.detection-feed-card+.detection-feed-card{border-top:1px solid var(--border-subtle)}.detection-feed-card-thumb{width:56px;height:36px;border-radius:5px;object-fit:cover;flex-shrink:0;background:#e5e7eb}.detection-feed-card-thumb--empty{background:linear-gradient(135deg,var(--border-subtle),var(--border-input))}.detection-feed-card-body{flex:1;min-width:0}.detection-feed-card-title{display:flex;align-items:baseline;gap:6px;font-size:.82rem;color:var(--text-primary)}.detection-feed-card-title strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.detection-feed-card-conf{font-size:.7rem;font-weight:600;color:var(--accent);flex-shrink:0}.detection-feed-card-meta{font-size:.72rem;color:var(--text-muted);display:flex;gap:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.detection-feed-card-dot{color:var(--border-input)}.detection-feed-card-time{font-size:.68rem;color:var(--text-muted);margin-top:1px}.detection-feed-card-dismiss{border:none;background:transparent;color:var(--text-muted);font-size:1.1rem;cursor:pointer;padding:4px 6px;border-radius:4px;flex-shrink:0;line-height:1}.detection-feed-card-dismiss:hover{background:color-mix(in srgb,#ef4444 15%,transparent);color:#ef4444}.admin-page{display:grid;grid-template-columns:240px 1fr;gap:1.5rem;min-height:calc(100vh - 6rem)}@media (max-width: 720px){.admin-page{grid-template-columns:1fr}}.admin-sidebar{padding:1.25rem 0}.admin-sidebar-heading{padding:0 .75rem 1rem;border-bottom:1px solid var(--border-subtle);margin-bottom:.75rem}.admin-sidebar-eyebrow{font-size:.7rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted)}.admin-sidebar-title{font-size:1.2rem;font-weight:700;margin:.15rem 0 .5rem;color:var(--text-primary)}.admin-nav{display:flex;flex-direction:column;gap:.2rem}.admin-nav-item{display:flex;align-items:center;gap:.6rem;padding:.55rem .75rem;border-radius:6px;font-size:.9rem;color:var(--text-secondary);text-decoration:none;transition:background .15s,color .15s}.admin-nav-item:hover{background:var(--bg-card-hover);color:var(--text-primary)}.admin-nav-item--active{background:color-mix(in srgb,var(--accent) 16%,transparent);color:var(--accent);font-weight:600}.admin-nav-item--active:hover{background:color-mix(in srgb,var(--accent) 24%,transparent);color:var(--accent)}.admin-nav-item--disabled{color:var(--text-muted);cursor:not-allowed}.admin-nav-item--disabled:hover{background:transparent;color:var(--text-muted)}.admin-nav-icon{font-size:1rem;width:1.4rem;text-align:center;flex-shrink:0}.admin-nav-divider{height:1px;background:var(--border-subtle);margin:.6rem .5rem}.admin-nav-group-label{font-size:.7rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);padding:.25rem .75rem .4rem}.admin-content{padding:1.25rem 0;min-width:0}.admin-search-input{font:inherit;padding:.45rem .7rem;border:1px solid var(--border-input);border-radius:6px;background:var(--bg-input);color:var(--text-primary);width:280px;max-width:100%;transition:border-color .15s,box-shadow .15s}.admin-search-input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 18%,transparent)}.admin-pager{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding-top:.75rem;margin-top:.5rem;border-top:1px solid var(--border-subtle);flex-wrap:wrap}.admin-pager-summary{color:var(--text-muted);font-size:.85rem}.admin-pager-controls{display:flex;align-items:center;gap:.75rem}.admin-pager-page{color:var(--text-secondary);font-size:.85rem;font-weight:500;min-width:5.5rem;text-align:center}.admin-users-table tbody tr.is-stale,.admin-audit-table tbody tr.is-stale{opacity:.6}.admin-filter-bar{display:flex;flex-wrap:wrap;gap:.75rem;align-items:flex-end;padding:.75rem 0 1rem}.admin-filter-field{display:flex;flex-direction:column;gap:.25rem;font-size:.85rem;color:var(--text-muted)}.admin-filter-field input{padding:.4rem .6rem;border:1px solid var(--border-input);border-radius:4px;background:var(--bg-input);color:var(--text-primary);font-size:.95rem;min-width:14rem}.admin-filter-field input:focus{outline:2px solid var(--accent);outline-offset:1px;border-color:transparent}.admin-audit-table th,.admin-audit-table td{padding:.5rem .75rem;vertical-align:top}.admin-action-code{font-family:var(--mono, ui-monospace, SFMono-Regular, Menlo, monospace);font-size:.85rem;background:var(--bg-card-hover);color:var(--text-primary);padding:.1rem .4rem;border-radius:3px}.admin-audit-detail-row>td{background:var(--bg-card-hover);border-top:none!important}.admin-audit-json{margin:0;padding:.75rem;background:var(--bg-input);color:var(--text-primary);border:1px solid var(--border-subtle);border-radius:4px;font-family:var(--mono, ui-monospace, SFMono-Regular, Menlo, monospace);font-size:.85rem;white-space:pre-wrap;word-break:break-word;max-height:24rem;overflow:auto}.admin-audit-meta{display:grid;grid-template-columns:max-content 1fr;gap:.25rem .75rem;margin:.5rem 0 0;font-size:.85rem}.admin-audit-meta dt{color:var(--text-muted, #6b7280);font-weight:500}.admin-audit-meta dd{margin:0}.enterprise-lock{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem;margin:0 0 1.25rem;max-width:40rem}.enterprise-lock label{font-size:.85rem;color:var(--text-secondary)}.enterprise-lock input{flex:1 1 14rem;min-width:0}.enterprise-back{display:inline-flex;align-items:center;gap:.28rem;margin:0 0 .55rem;padding:.18rem .6rem .18rem .38rem;border:1px solid var(--border-subtle);border-radius:999px;background:transparent;color:var(--text-secondary);font-size:.75rem;font-weight:600;letter-spacing:.01em;line-height:1.2;text-decoration:none;transition:background .15s,color .15s,border-color .15s}.enterprise-back:hover{background:var(--bg-card-hover);border-color:color-mix(in srgb,var(--text-secondary) 28%,var(--border-subtle));color:var(--text-primary)}.enterprise-back:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.enterprise-back-mark{width:.85rem;height:.85rem;flex-shrink:0}.admin-row-link{color:var(--accent);text-decoration:none;font-weight:500}.admin-row-link:hover{text-decoration:underline}.admin-detail-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.75rem 1.5rem;margin:1rem 0 1.5rem}.admin-detail-item{display:flex;flex-direction:column;gap:.15rem}.admin-detail-label{font-size:.78rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted)}.admin-detail-value{font-size:.92rem;color:var(--text-primary)}.admin-section-h2{font-size:1rem;font-weight:700;margin:1.5rem 0 .6rem;color:var(--text-primary)}.admin-mono{font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,monospace;font-size:.82rem;color:var(--text-secondary);background:var(--bg-card-hover);padding:.05rem .35rem;border-radius:4px}.admin-role-badges{display:inline-flex;flex-wrap:wrap;gap:.4rem;align-items:center}.admin-role-badge{display:inline-block;padding:.15rem .55rem;border-radius:999px;font-size:.72rem;font-weight:600;letter-spacing:.02em;border:1px solid var(--border-subtle);background:var(--bg-card-hover);color:var(--text-secondary);white-space:nowrap}.admin-role-badge--superadmin{background:color-mix(in srgb,#dc2626 14%,var(--bg-card));color:#b91c1c;border-color:color-mix(in srgb,#dc2626 35%,var(--border-subtle))}.admin-role-badge--admin{background:color-mix(in srgb,#ea580c 14%,var(--bg-card));color:#c2410c;border-color:color-mix(in srgb,#ea580c 35%,var(--border-subtle))}.admin-role-badge--support{background:color-mix(in srgb,var(--accent) 14%,var(--bg-card));color:#1d4ed8;border-color:color-mix(in srgb,var(--accent) 35%,var(--border-subtle))}.admin-role-badge--enduser{background:var(--bg-card-hover);color:var(--text-secondary);border-color:var(--border-subtle)}.admin-role-badge--tenant-owner{background:color-mix(in srgb,#7c3aed 14%,var(--bg-card));color:#6d28d9;border-color:color-mix(in srgb,#7c3aed 35%,var(--border-subtle))}.admin-role-badge--tenant-billingadmin,.admin-role-badge--tenant-admin{background:color-mix(in srgb,#ea580c 14%,var(--bg-card));color:#c2410c;border-color:color-mix(in srgb,#ea580c 35%,var(--border-subtle))}.admin-role-badge--tenant-operator{background:color-mix(in srgb,#059669 14%,var(--bg-card));color:#047857;border-color:color-mix(in srgb,#059669 35%,var(--border-subtle))}.admin-role-badge--tenant-viewer{background:var(--bg-card-hover);color:var(--text-secondary);border-color:var(--border-subtle)}[data-theme^=dark] .admin-role-badge--superadmin{color:#fca5a5}[data-theme^=dark] .admin-role-badge--admin,[data-theme^=dark] .admin-role-badge--tenant-billingadmin,[data-theme^=dark] .admin-role-badge--tenant-admin{color:#fdba74}[data-theme^=dark] .admin-role-badge--support{color:#93c5fd}[data-theme^=dark] .admin-role-badge--tenant-owner{color:#c4b5fd}[data-theme^=dark] .admin-role-badge--tenant-operator{color:#6ee7b7}.admin-status-stack{display:inline-flex;flex-wrap:wrap;gap:.3rem}.admin-status-badge{display:inline-block;padding:.12rem .5rem;border-radius:999px;font-size:.7rem;font-weight:600;border:1px solid transparent;white-space:nowrap}.admin-status-badge--ok{background:color-mix(in srgb,#059669 14%,var(--bg-card));color:#047857;border-color:color-mix(in srgb,#059669 35%,var(--border-subtle))}.admin-status-badge--warn{background:color-mix(in srgb,#d97706 16%,var(--bg-card));color:#92400e;border-color:color-mix(in srgb,#d97706 40%,var(--border-subtle))}.admin-status-badge--locked{background:color-mix(in srgb,#dc2626 14%,var(--bg-card));color:#b91c1c;border-color:color-mix(in srgb,#dc2626 35%,var(--border-subtle))}.admin-status-badge--self{background:color-mix(in srgb,#4f46e5 14%,var(--bg-card));color:#4338ca;border-color:color-mix(in srgb,#4f46e5 35%,var(--border-subtle))}.enterprise-admins-lead{margin:.35rem 0 0;max-width:42rem}.enterprise-admin-you{margin-left:.5rem}.enterprise-reset-link{margin:0 0 1rem;padding:.6rem .75rem;max-width:100%;min-width:0;border:1px solid var(--border-subtle);border-radius:6px;background:var(--bg-input)}.enterprise-reset-link-label{display:block;margin-bottom:.3rem;font-size:.72rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted)}.enterprise-reset-link a{display:block;overflow-wrap:anywhere;word-break:break-all;font-size:.82rem;line-height:1.45}[data-theme^=dark] .admin-status-badge--ok{color:#6ee7b7}[data-theme^=dark] .admin-status-badge--warn{color:#fcd34d}[data-theme^=dark] .admin-status-badge--locked{color:#fca5a5}[data-theme^=dark] .admin-status-badge--self{color:#a5b4fc}.admin-radio-group{display:flex;flex-direction:column;gap:.4rem;border:none;padding:0;margin:0}.admin-radio-group legend{font-weight:600;font-size:.85rem;color:var(--text-primary);margin-bottom:.25rem;padding:0}.admin-radio{display:flex;align-items:center;gap:.5rem;font-size:.9rem;color:var(--text-secondary);cursor:pointer}.admin-radio input[type=radio]{margin:0;width:1rem;height:1rem;flex-shrink:0}.admin-checkbox{display:flex;align-items:center;gap:.5rem;font-size:.9rem;color:var(--text-secondary);cursor:pointer}.admin-checkbox input[type=checkbox]{margin:0;width:1rem;height:1rem;flex-shrink:0}.admin-reset-url{display:flex;flex-direction:column;gap:.35rem}.admin-reset-url-row{display:flex;gap:.5rem;align-items:stretch}.admin-reset-url-row input{flex:1 1 auto;font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,monospace;font-size:.78rem}.admin-reset-url-row button{flex-shrink:0}.scope-drawer{width:min(640px,100%)}.scope-mode{display:flex;gap:1rem;margin:.5rem 0 1rem;flex-wrap:wrap}.scope-mode .radio{display:flex;align-items:flex-start;gap:.5rem;padding:.6rem .8rem;border:1px solid var(--border-subtle);border-radius:6px;cursor:pointer;flex:1 1 200px;background:var(--bg-card);color:var(--text-primary)}.scope-mode .radio input[type=radio]{margin-top:.2rem}.scope-mode .radio:has(input:checked){border-color:var(--accent);background:#3b82f61a}.scope-cameras{border:1px solid var(--border-subtle);border-radius:6px;padding:.75rem 1rem;margin:0}.scope-cameras legend{font-size:.85rem;color:var(--text-secondary);padding:0 .4rem}.scope-cameras[disabled]{opacity:.55}.scope-camera-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:.4rem 1rem}.scope-camera-list .checkbox{display:flex;align-items:center;gap:.5rem;padding:.3rem .4rem;border-radius:4px;cursor:pointer}.scope-camera-list .checkbox:hover{background:var(--bg-card-hover)}.edge-presence--online{color:#16a34a;font-weight:600}[data-theme^=dark] .edge-presence--online{color:#4ade80}.edge-presence--offline{color:var(--text-muted)}.camera-access-panel{margin-top:1.5rem}.scope-state{display:inline-block;padding:.15rem .55rem;border-radius:999px;font-size:.75rem;font-weight:600;border:1px solid transparent;white-space:nowrap}.scope-state--exempt{background:var(--bg-card-hover);color:var(--text-secondary);border-color:var(--border-subtle)}.scope-state--all{background:color-mix(in srgb,#059669 14%,var(--bg-card));color:#047857;border-color:color-mix(in srgb,#059669 35%,var(--border-subtle))}.scope-state--granted{background:color-mix(in srgb,#4f46e5 14%,var(--bg-card));color:#4338ca;border-color:color-mix(in srgb,#4f46e5 35%,var(--border-subtle))}.scope-state--denied{background:color-mix(in srgb,#dc2626 14%,var(--bg-card));color:#b91c1c;border-color:color-mix(in srgb,#dc2626 35%,var(--border-subtle))}[data-theme^=dark] .scope-state--all{color:#6ee7b7}[data-theme^=dark] .scope-state--granted{color:#a5b4fc}[data-theme^=dark] .scope-state--denied{color:#fca5a5}.hls-player-container{position:relative;width:100%;height:100%;background:#000;overflow:hidden}.hls-player-video{width:100%;height:100%;object-fit:contain;pointer-events:none}.hls-player-shield{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;background:transparent}html>div,#detach-button-host,body~div[is-visible]{display:none!important}.hls-player-video::-webkit-media-controls,.hls-player-video::-webkit-media-controls-enclosure,.hls-player-video::-webkit-media-controls-panel,.hls-player-video::-webkit-media-controls-play-button,.hls-player-video::-webkit-media-controls-start-playback-button,.hls-player-video::-webkit-media-controls-overlay-play-button{display:none!important;-webkit-appearance:none;opacity:0;pointer-events:none;width:0;height:0}.hls-player-loading{position:absolute;top:0;right:0;bottom:0;left:0;z-index:3;display:flex;align-items:center;justify-content:center;background:#000000b3;color:#fff;font-size:.9rem}.live-player{position:relative;width:100%;height:100%;background:var(--bg-card);border-radius:8px;overflow:hidden}.live-player-placeholder,.live-player-loading,.live-player-error{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.75rem;width:100%;height:100%;min-height:200px;color:var(--text-muted);font-size:.9rem}.live-player-error{color:#b91c1c}.live-player-error .error-icon{display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;border-radius:50%;background:color-mix(in srgb,#dc2626 14%,var(--bg-card));color:#b91c1c;font-weight:700}[data-theme^=dark] .live-player-error,[data-theme^=dark] .live-player-error .error-icon{color:#fca5a5}.spinner{width:24px;height:24px;border:3px solid var(--border-subtle);border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.det-view-heading h2{margin-bottom:0}.page-header:has(.det-view-heading){align-items:flex-start}.det-view-toggle{display:inline-flex;margin-top:.45rem;padding:.15rem;border-radius:8px;border:1px solid var(--border-subtle);background:color-mix(in srgb,var(--text-primary) 6%,var(--bg-card))}.det-view-toggle button{padding:.22rem .7rem;border:none;border-radius:6px;background:transparent;color:var(--text-muted);font-size:.78rem;font-weight:600;cursor:pointer}.det-view-toggle button:hover:not(:disabled){background:color-mix(in srgb,var(--text-primary) 8%,transparent);color:var(--text-primary)}.det-view-toggle button.is-on,.det-view-toggle button.is-on:hover:not(:disabled){background:color-mix(in srgb,var(--accent) 24%,var(--bg-card));color:var(--text-primary)}.det-tl-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:.55rem .85rem;margin-bottom:.75rem;padding:.55rem .7rem;border:1px solid var(--border-subtle);border-radius:10px;background:color-mix(in srgb,var(--text-primary) 3%,var(--bg-card))}.det-tl-ranges{display:inline-flex;flex:none;padding:.12rem;border-radius:8px;border:1px solid var(--border-subtle);background:color-mix(in srgb,var(--text-primary) 6%,var(--bg-card))}.det-tl-ranges button{padding:.2rem .6rem;border:none;border-radius:6px;background:transparent;color:var(--text-muted);font-size:.75rem;font-weight:600;cursor:pointer}.det-tl-ranges button:hover:not(:disabled){background:color-mix(in srgb,var(--text-primary) 8%,transparent);color:var(--text-primary)}.det-tl-ranges button.is-on,.det-tl-ranges button.is-on:hover:not(:disabled){background:color-mix(in srgb,var(--accent) 24%,var(--bg-card));color:var(--text-primary)}.det-tl-cameras{display:flex;flex-wrap:wrap;gap:.35rem;min-width:0}button.det-tl-chip{display:inline-flex;align-items:center;gap:.35rem;max-width:100%;padding:.16rem .55rem .16rem .4rem;border-radius:999px;border:1px solid var(--border-input);background:transparent;color:var(--text-muted);font-size:.75rem;font-weight:600;cursor:pointer}button.det-tl-chip:hover:not(:disabled){background:color-mix(in srgb,var(--text-primary) 6%,transparent);color:var(--text-primary)}button.det-tl-chip.is-on,button.det-tl-chip.is-on:hover:not(:disabled){color:var(--text-primary);border-color:color-mix(in srgb,var(--text-primary) 28%,var(--border-subtle));background:color-mix(in srgb,var(--text-primary) 6%,var(--bg-card))}button.det-tl-chip.is-off{opacity:.42}.det-tl-chip-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:9rem}.det-tl-chip-count{font-variant-numeric:tabular-nums;font-weight:500;color:var(--text-muted)}.det-tl{display:flex;flex-direction:column;max-height:min(70vh,720px);overflow:hidden;border:1px solid var(--border-subtle);border-radius:10px;background:var(--bg-card)}.det-tl-scroll{flex:1 1 auto;min-height:0;overflow:auto;display:flex;flex-direction:column}.det-tl-lanes{flex:none;display:flex;flex-direction:column}.det-tl-lane{flex:none}.det-tl-scale,.det-tl-lane{display:grid;grid-template-columns:9.5rem minmax(0,1fr);align-items:stretch}.det-tl-scale{position:sticky;top:0;flex:none;z-index:4;background:var(--bg-card);border-bottom:1px solid var(--border-subtle);-webkit-user-select:none;user-select:none}.det-tl-readout{display:flex;flex-direction:column;justify-content:center;gap:.05rem;padding:.35rem .75rem;min-width:0}.det-tl-readout strong{font-size:.92rem;font-weight:700;font-variant-numeric:tabular-nums;letter-spacing:0;color:var(--text-primary)}.det-tl-readout span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.68rem;color:var(--text-muted)}.det-tl-plot--scale{height:3rem;overflow:hidden}.det-tl-day{position:absolute;top:0;height:1.45rem;border-left:1px solid var(--border-subtle);pointer-events:none}.det-tl-day--alt{background:color-mix(in srgb,var(--text-primary) 5%,transparent)}.det-tl-day-label{position:absolute;top:.28rem;transform:translate(.45rem);font-size:.72rem;font-weight:600;color:var(--text-primary);white-space:nowrap;pointer-events:none}.det-tl-hour{position:absolute;top:1.55rem;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:.05rem;font-size:.64rem;font-variant-numeric:tabular-nums;color:var(--text-muted);white-space:nowrap;pointer-events:none}.det-tl-hour i{display:block;width:1px;height:.28rem;background:color-mix(in srgb,var(--text-primary) 28%,transparent)}.det-tl-now-tag{position:absolute;top:1.52rem;transform:translate(calc(-100% - .35rem));font-size:.64rem;font-weight:700;color:#ef5b5b;white-space:nowrap;pointer-events:none}.det-tl-cursor-tick{position:absolute;top:0;bottom:0;width:1px;background:color-mix(in srgb,var(--text-primary) 72%,transparent);pointer-events:none;z-index:3}.det-tl-lanes{position:relative;cursor:crosshair}.det-tl-note{padding:1.5rem 1rem;text-align:center;color:var(--text-muted);font-size:.85rem}.det-tl-lane+.det-tl-lane{border-top:1px solid color-mix(in srgb,var(--text-primary) 8%,transparent)}.det-tl-label{display:flex;align-items:center;gap:.4rem;padding:0 .75rem;color:var(--text-primary);font-size:.78rem;font-weight:600;min-width:0}.det-tl-label span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.det-tl-swatch{width:.45rem;height:.45rem;border-radius:50%;flex:none}.det-tl-plot{position:relative;border-left:1px solid var(--border-subtle)}.det-tl-shade{position:absolute;top:0;bottom:0;pointer-events:none}.det-tl-shade--alt{background:color-mix(in srgb,var(--text-primary) 3.5%,transparent)}.det-tl-dayline,.det-tl-grid{position:absolute;top:0;bottom:0;width:1px;pointer-events:none}.det-tl-dayline{background:color-mix(in srgb,var(--text-primary) 12%,transparent)}.det-tl-grid{background:color-mix(in srgb,var(--text-primary) 6%,transparent)}.det-tl-now,.det-tl-cursor{position:absolute;top:0;bottom:0;width:1px;pointer-events:none;z-index:2}.det-tl-now{background:#ef5b5be6}.det-tl-cursor{background:color-mix(in srgb,var(--text-primary) 72%,transparent);z-index:3}.det-tl-cursor-pill{position:absolute;top:.28rem;left:0;padding:.12rem .42rem;border-radius:5px;background:var(--text-primary);color:var(--bg-card);font-size:.68rem;font-weight:700;font-variant-numeric:tabular-nums;white-space:nowrap;box-shadow:0 4px 14px #00000047}button.det-tl-mark{position:absolute;width:12px;height:12px;min-width:0;padding:0;border-radius:50%;border:2px solid var(--bg-card);transform:translate(-50%);z-index:1;cursor:pointer}button.det-tl-mark:after{content:"";position:absolute;top:-7px;right:-7px;bottom:-7px;left:-7px}button.det-tl-mark--clip{border-radius:2px}button.det-tl-mark--selected,button.det-tl-mark--selected:hover:not(:disabled){box-shadow:0 0 0 3px var(--accent);z-index:2}.det-view-toggle button:focus-visible,.det-tl-ranges button:focus-visible,button.det-tl-chip:focus-visible,button.det-tl-mark:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.det-tl-tip{position:fixed;z-index:95;pointer-events:none;overflow:hidden;border-radius:10px;border:1px solid var(--border-input);border-top:3px solid #7aa2ff;background:var(--bg-card);color:var(--text-primary);box-shadow:0 14px 36px #00000047}.det-tl-tip img,.det-tl-tip-photo{display:block;width:100%;height:130px;object-fit:cover;background:color-mix(in srgb,var(--text-primary) 8%,var(--bg-card))}.det-tl-tip-photo{display:flex;align-items:center;justify-content:center;color:var(--text-muted);font-size:.72rem}.det-tl-tip-body{display:flex;flex-direction:column;gap:.12rem;padding:.45rem .65rem .55rem}.det-tl-tip-body strong{font-size:.82rem;color:var(--text-primary)}.det-tl-tip-body span{font-size:.72rem;color:var(--text-muted)}.auth-screen{display:flex;justify-content:center;padding:2.5rem 1rem 3rem}.auth-card{width:100%;max-width:420px;background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:12px;padding:2rem 1.75rem;box-shadow:var(--shadow-card)}.auth-card h1{margin:0 0 .35rem;font-size:1.5rem}.auth-card>.hint{margin:0 0 1.25rem}.auth-card form{display:grid;gap:.9rem}.auth-card label{display:flex;flex-direction:column;gap:.35rem;font-weight:600;font-size:.8125rem;color:var(--text-primary)}.auth-card input[type=email],.auth-card input[type=password],.auth-card input[type=text]{display:block;width:100%;height:2.5rem;margin:0;padding:0 .75rem;font:inherit;font-size:.9375rem;font-weight:400;color:var(--text-primary);background:var(--bg-input);border:1px solid var(--border-input);border-radius:6px}.auth-card input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 16%,transparent)}.auth-card input[readonly]{color:var(--text-secondary)}.auth-card button.primary,.auth-card a.primary{display:flex;align-items:center;justify-content:center;box-sizing:border-box;width:100%;height:2.6rem;margin-top:.25rem;text-decoration:none;font-weight:600}.auth-card a.primary{background:var(--accent);color:#fff;border-radius:4px}.auth-card a.primary:hover{background:var(--accent-hover);text-decoration:none}.auth-card button.secondary{width:100%;height:2.6rem}.auth-card .auth-actions{display:grid;gap:.9rem}.auth-card .auth-check{flex-direction:row;align-items:center;gap:.5rem;font-weight:500}.auth-card .auth-links{margin:0;text-align:center}.auth-card .alert{margin:0}.auth-turnstile,.auth-turnstile>div{width:100%}.auth-turnstile{min-height:65px}.auth-card button.secondary{width:100%}
