:root{color-scheme:dark;--bg: 8 9 13;--fg: 244 246 251;--card: 19 21 28;--soft: 26 29 38;--line: 46 50 62;--muted: 154 164 178;--accent: 79 107 237;--accent-cyan: 77 208 225;--peach: 255 138 91;--ok: 46 165 107;--bad: 209 86 86;--inverse: 244 246 251;--inverse-fg: 8 9 13;--font-sans: "Inter", system-ui, -apple-system, "Segoe UI", sans-serif;--font-display: "Sora", var(--font-sans);font-family:var(--font-sans)}html.light{color-scheme:light;--bg: 250 248 243;--fg: 26 24 20;--card: 255 255 255;--soft: 244 241 234;--line: 226 221 210;--muted: 120 112 100;--inverse: 26 24 20;--inverse-fg: 250 248 243}*{box-sizing:border-box}html{scroll-behavior:smooth}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}body{margin:0;min-height:100vh;background-color:rgb(var(--bg));color:rgb(var(--fg));-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;transition:background-color .45s ease,color .45s ease;position:relative}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none;background-image:url(/lidar-pointcloud-bw.png);background-size:cover;background-position:center;opacity:.07;mix-blend-mode:screen}html.light body:before{display:none}::selection{background:rgb(var(--peach) / .3);color:rgb(var(--fg))}#root{position:relative;z-index:1}.shell{max-width:1100px;margin:0 auto;padding:24px 20px 60px}.centered{min-height:80vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px}.surface{border-radius:1rem;border:1px solid rgb(var(--line));background-color:rgb(var(--card));box-shadow:0 1px 2px #0000000a,0 12px 40px -12px #0000002e}.liquid-glass{background-color:rgb(var(--bg) / .38);backdrop-filter:blur(18px) saturate(1.35);-webkit-backdrop-filter:blur(18px) saturate(1.35);border-color:#ffffff1f;box-shadow:inset 0 1px #ffffff1f,inset 0 -1px #0000002e,0 1px 2px #0000000a,0 12px 40px -12px #00000038}html.light .liquid-glass{background-color:rgb(var(--fg) / .06);border-color:rgb(var(--line) / .7);box-shadow:inset 0 1px #ffffffa6,inset 0 -1px #0000000a,0 1px 2px #00000008,0 12px 40px -12px #00000014}.liquid-glass-clear{backdrop-filter:none;-webkit-backdrop-filter:none;background-color:rgb(var(--bg) / .62);border:1px solid rgb(var(--line));border-radius:1rem}html.light .liquid-glass-clear{background-color:rgb(var(--fg) / .1)}.app-header{position:sticky;top:0;z-index:40;margin:-24px -20px 18px;padding:14px 20px;display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;border-bottom:1px solid rgb(255 255 255 / .12);background-color:rgb(var(--card) / .42);backdrop-filter:blur(24px) saturate(1.5);-webkit-backdrop-filter:blur(24px) saturate(1.5);box-shadow:inset 0 1px #ffffff24,inset 0 -1px #0000001a}html.light .app-header{background-color:rgb(var(--card) / .5);border-bottom-color:rgb(var(--line) / .7);box-shadow:inset 0 1px #ffffffb3,inset 0 -1px #00000008}.brand-lockup{display:flex;align-items:center;gap:12px;min-width:0}.brand-wordmark{font-family:var(--font-display);font-size:1.05rem;font-weight:600;letter-spacing:.18em;margin:0;background-image:linear-gradient(110deg,#3558c9,#4f6bed 18%,#5b8ef0,#4dd0e1 50%,#5b8ef0 64%,#4f6bed 80%,#3558c9);background-size:280% 280%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:liquid-flow 2.5s ease-in-out infinite;filter:saturate(.95) contrast(1.04)}.header-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.who-chip{display:inline-flex;align-items:center;gap:8px;max-width:min(420px,100%);padding:6px 12px;border-radius:999px;border:1px solid rgb(var(--line));background:rgb(var(--soft) / .72);color:rgb(var(--muted));font-size:.8rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.login-card{width:min(420px,100%);padding:2rem 1.75rem;text-align:center;display:flex;flex-direction:column;align-items:center;gap:.75rem}.login-card .brand-wordmark{font-size:1.25rem}.login-card p{color:rgb(var(--muted));margin:0 0 .5rem;line-height:1.5;font-size:.95rem}.loading-card{width:min(320px,100%);padding:2rem;text-align:center;display:flex;flex-direction:column;align-items:center;gap:.75rem;color:rgb(var(--muted))}.tabs{display:inline-flex;max-width:100%;align-items:center;gap:.25rem;border-radius:999px;border:1px solid rgb(var(--line));padding:.25rem;margin-bottom:18px;background:rgb(var(--soft) / .72);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);box-shadow:0 1px 2px #0000000a,0 12px 40px -12px #0000002e;overflow-x:auto;scrollbar-width:none}.tabs::-webkit-scrollbar{display:none}html.light .tabs{background:rgb(var(--card) / .88)}.tabs button{position:relative;display:inline-flex;align-items:center;gap:.45rem;background:none;border:none;border-radius:999px;color:rgb(var(--muted));padding:.55rem 1rem;font-size:.72rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;cursor:pointer;white-space:nowrap;isolation:isolate;transition:color .25s ease,background .25s ease,box-shadow .25s ease}.tabs button:hover:not(:disabled){color:rgb(var(--fg) / .9);background:rgb(var(--fg) / .06);border-color:transparent;transform:none;box-shadow:none}.tabs button.active{color:rgb(var(--inverse-fg));background:rgb(var(--inverse));border-color:transparent}.tabs button.active:hover:not(:disabled){background:transparent;color:rgb(var(--inverse-fg))}.tab-pill{position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;border-radius:999px;background:rgb(var(--inverse));box-shadow:0 1px 2px #0000000f,0 0 24px -6px rgb(var(--peach) / .45);pointer-events:none}html.light .tab-pill{box-shadow:0 1px 2px #0000000d,0 0 22px -6px rgb(var(--peach) / .35)}@media(prefers-reduced-motion:reduce){.tabs button.active{background:rgb(var(--inverse));box-shadow:0 1px 2px #0000000f,0 0 24px -6px rgb(var(--peach) / .45)}}.tabs button>:not(.tab-pill),.tabs button .tab-label{position:relative;z-index:1}.tabs button .tab-icon{display:inline-flex;flex-shrink:0}.tab-panel.parked{position:fixed;left:-100vw;top:0;width:min(1100px,100vw);opacity:0;pointer-events:none;z-index:-1}.community h2,.allowlist-page h2{font-family:var(--font-display);font-size:1rem;font-weight:600;margin:0 0 12px;color:rgb(var(--fg));letter-spacing:-.01em}.community h2:not(:first-child),.allowlist-page h2:not(:first-child){margin-top:28px;padding-top:18px;border-top:1px solid rgb(var(--line))}.allowlist-page h2:first-of-type{margin-top:22px}.row-actions{display:flex;gap:8px;justify-content:flex-end}button{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;background:rgb(var(--card));color:rgb(var(--fg));border:1px solid rgb(var(--line));border-radius:999px;padding:8px 14px;font-size:.9rem;font-family:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:border-color .3s cubic-bezier(.16,1,.3,1),background .3s cubic-bezier(.16,1,.3,1),transform .3s cubic-bezier(.16,1,.3,1),box-shadow .3s cubic-bezier(.16,1,.3,1),color .3s ease}@media(hover:hover)and (pointer:fine){button:hover:not(:disabled):not(.theme-toggle):not(.cal-day):not(.chip):not(.tab-btn){border-color:rgb(var(--accent));transform:translateY(-2px);box-shadow:0 0 0 1px rgb(var(--accent) / .28),0 0 26px -6px rgb(var(--accent) / .48),0 10px 28px -12px rgb(var(--accent) / .5)}}button:active:not(:disabled):not(.theme-toggle):not(.cal-day):not(.chip){transform:translateY(0) scale(.97);transition-duration:.15s}button:focus-visible:not(.theme-toggle){outline:none;box-shadow:0 0 0 2px rgb(var(--bg)),0 0 0 4px rgb(var(--peach) / .6)}button:disabled{opacity:.5;cursor:default}button.primary,.btn-primary{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;background:rgb(var(--inverse));border-color:rgb(var(--inverse));color:rgb(var(--inverse-fg));padding:10px 26px;font-weight:600;font-size:.875rem}button.primary svg,.btn-primary svg{transition:transform .3s cubic-bezier(.16,1,.3,1)}@media(hover:hover)and (pointer:fine){button.primary:hover:not(:disabled),.btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 0 50px -10px rgb(var(--peach) / .65),0 0 100px -20px rgb(var(--peach) / .4);border-color:rgb(var(--inverse))}button.primary:hover:not(:disabled) svg,.btn-primary:hover:not(:disabled) svg{transform:translate(3px)}button.ghost:hover:not(:disabled),.btn-ghost:hover:not(:disabled){border-color:rgb(var(--fg) / .45);background:rgb(var(--fg) / .06);box-shadow:0 1px 2px #0000000a,0 0 28px -10px #03afff52}}button.primary:active:not(:disabled),.btn-primary:active:not(:disabled){transform:translateY(0) scale(.97);box-shadow:0 0 22px -8px rgb(var(--peach) / .5)}button.ghost,.btn-ghost{background:transparent;border-color:rgb(var(--line));color:rgb(var(--fg))}button.success,.btn-success{background:rgb(var(--ok));border-color:rgb(var(--ok));color:#fff;font-weight:600}button.danger{background:rgb(var(--bad));border-color:rgb(var(--bad));color:#fff;font-weight:600}@media(hover:hover)and (pointer:fine){button.success:hover:not(:disabled),.btn-success:hover:not(:disabled){border-color:rgb(var(--ok));box-shadow:0 0 0 1px rgb(var(--ok) / .28),0 0 26px -6px rgb(var(--ok) / .55),0 10px 28px -12px rgb(var(--ok) / .5)}button.danger:hover:not(:disabled){border-color:rgb(var(--bad));box-shadow:0 0 0 1px rgb(var(--bad) / .28),0 0 26px -6px rgb(var(--bad) / .55),0 10px 28px -12px rgb(var(--bad) / .5)}}.theme-toggle{position:relative;display:inline-flex;height:2.5rem;width:4.85rem;flex-shrink:0;align-items:center;justify-content:flex-start;gap:0;overflow:hidden;border-radius:999px;border:1px solid rgb(var(--line));padding:.25rem;background:transparent;color:#fff;cursor:pointer;box-shadow:none;transition:transform .5s ease,box-shadow .5s ease,border-color .5s ease}.theme-toggle:hover{transform:translateY(-1px);border-color:rgb(var(--line));box-shadow:none}.theme-toggle:active{transform:translateY(-1px) scale(1)}.theme-toggle:focus-visible{outline:none;box-shadow:0 0 0 2px rgb(var(--peach) / .5)}.theme-toggle-track{pointer-events:none;position:absolute;top:0;right:0;bottom:0;left:0;border-radius:999px;transition:all .5s ease}.theme-toggle--dark .theme-toggle-track{background:linear-gradient(135deg,#0d1018,#151b33 42%,#1f3560);box-shadow:inset 0 1px #ffffff14,inset 0 -10px 24px #4f6bed38}.theme-toggle--light .theme-toggle-track{background:linear-gradient(135deg,#fffaf3,#ffe8cc 52%,#ffd2a8);box-shadow:inset 0 1px #ffffffd9,inset 0 -8px 20px #ff8a5b38}.theme-toggle-glow{pointer-events:none;position:absolute;top:-.25rem;right:-.25rem;bottom:-.25rem;left:-.25rem;border-radius:999px;filter:blur(12px);transition:opacity .5s ease}.theme-toggle--dark .theme-toggle-glow{background:linear-gradient(135deg,#4f6bed8c,#4dd0e173);opacity:.55}.theme-toggle--light .theme-toggle-glow{background:linear-gradient(135deg,#ff8a5b99,#ff525273);opacity:.62}.theme-toggle:hover .theme-toggle-glow{opacity:.85}.theme-toggle-icon{pointer-events:none;position:absolute;top:50%;z-index:1;transform:translateY(-50%);transition:all .3s ease;display:inline-flex}.theme-toggle-icon--moon{left:.5rem}.theme-toggle-icon--sun{right:.5rem}.theme-toggle-icon.is-dim{color:rgb(var(--fg) / .25)}.theme-toggle-icon.is-azure{color:#5eead4e6;filter:drop-shadow(0 0 6px rgba(77,208,225,.8))}.theme-toggle-icon.is-peach{color:#ff5252e6;filter:drop-shadow(0 0 6px rgba(255,138,91,.75))}.theme-toggle-thumb{position:relative;z-index:10;display:flex;height:2rem;width:2rem;flex:0 0 2rem;align-items:center;justify-content:center;border-radius:999px;color:#fff;transform:translate(0);transition:transform .5s cubic-bezier(.16,1,.3,1);box-shadow:0 2px 8px #00000047,0 0 18px -4px #ffffff59}.theme-toggle--light .theme-toggle-thumb{transform:translate(2.35rem)}.theme-toggle-thumb-icon{display:flex;align-items:center;justify-content:center;color:#fff}.filters{display:flex;flex-wrap:wrap;gap:10px;align-items:stretch;background-color:rgb(var(--bg) / .38);backdrop-filter:blur(18px) saturate(1.35);-webkit-backdrop-filter:blur(18px) saturate(1.35);border:1px solid rgb(255 255 255 / .12);border-radius:1.25rem;padding:12px;margin-bottom:16px;box-shadow:inset 0 1px #ffffff1f,inset 0 -1px #0000002e,0 12px 40px -12px #00000038}html.light .filters{background-color:rgb(var(--fg) / .06);border-color:rgb(var(--line) / .7)}.filters>label,.filter-field{display:flex;flex-direction:column;gap:6px;font-size:.85rem;font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:rgb(var(--fg));padding:10px 12px 12px;border-radius:1rem;border:1px solid rgb(var(--accent) / .5);background:rgb(var(--accent) / .14);min-width:0;box-shadow:0 0 0 1px rgb(var(--accent) / .12),0 0 22px -10px rgb(var(--accent) / .4);transition:border-color .3s cubic-bezier(.16,1,.3,1),box-shadow .3s cubic-bezier(.16,1,.3,1),transform .3s cubic-bezier(.16,1,.3,1),background .3s ease}.filter-label{letter-spacing:.08em}@media(hover:hover)and (pointer:fine){.filters>label:hover,.filter-field:hover{transform:translateY(-1px);border-color:rgb(var(--accent) / .45);box-shadow:0 0 0 1px rgb(var(--accent) / .18),0 0 22px -8px rgb(var(--accent) / .42)}}.filters>label:focus-within,.filter-field:focus-within,.filter-field.is-filled,.filters>label.is-filled{border-color:rgb(var(--accent) / .78);box-shadow:0 0 0 1px rgb(var(--accent) / .38),0 0 28px -6px rgb(var(--accent) / .55);background:rgb(var(--accent) / .2)}html.light .filters>label,html.light .filter-field{background:rgb(var(--accent) / .1);color:rgb(var(--fg))}html.light .filters>label.is-filled,html.light .filter-field.is-filled,html.light .filters>label:focus-within,html.light .filter-field:focus-within{background:rgb(var(--accent) / .16)}.filters input,.filters select{background:rgb(var(--card) / .88);border:1px solid rgb(var(--accent) / .45);border-radius:.7rem;color:rgb(var(--fg));padding:9px 11px;font-size:1rem;font-weight:500;letter-spacing:0;text-transform:none;font-family:inherit;min-width:132px;transition:border-color .25s ease,box-shadow .25s ease,background .25s ease}.filters input:hover,.filters select:hover{border-color:rgb(var(--accent) / .45)}.filters input:focus,.filters select:focus{outline:none;border-color:rgb(var(--accent));box-shadow:0 0 0 3px rgb(var(--accent) / .22)}.filters select.tz-select{min-width:240px;max-width:320px}.filters>button{align-self:end;min-height:2.65rem;margin-bottom:2px}.filters>.badge{align-self:end;margin-bottom:.85rem}.chip-field{flex:1 1 220px}.chip-rail{display:inline-flex;flex-wrap:wrap;align-items:center;gap:.2rem;max-width:100%;padding:.2rem;border-radius:999px;border:1px solid rgb(var(--line));background:rgb(var(--soft) / .72)}html.light .chip-rail{background:rgb(var(--card) / .88)}.chip{position:relative;isolation:isolate;background:transparent;border:none;border-radius:999px;color:rgb(var(--fg) / .7);padding:.48rem .85rem;font-size:.8rem;font-weight:500;letter-spacing:.05em;text-transform:uppercase;cursor:pointer;white-space:nowrap}.chip:hover:not(:disabled){color:rgb(var(--fg) / .92);background:rgb(var(--fg) / .05);transform:none;box-shadow:none;border-color:transparent}.chip--active{color:#fff;background:linear-gradient(135deg,#4f6bed,#4dd0e1)}.chip--active:hover:not(:disabled){color:#fff;background:linear-gradient(135deg,#4f6bed,#4dd0e1)}.chip--active .chip__pill{opacity:1}.chip__pill{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;border-radius:999px;background:linear-gradient(135deg,#4f6bed,#4dd0e1);pointer-events:none}.chip__label{position:relative;z-index:1}.date-range{position:relative}.date-range-toggle{min-width:220px;width:100%;justify-content:space-between;text-align:left;background:rgb(var(--card) / .88);padding:9px 11px;border-radius:.7rem;font-weight:500;letter-spacing:0;text-transform:none;font-size:1rem}.date-range-toggle.is-open{border-color:rgb(var(--accent));box-shadow:0 0 0 3px rgb(var(--accent) / .22)}.calendar-popover{position:absolute;z-index:30;top:calc(100% + 8px);left:0;transform-origin:top left;background-color:rgb(var(--bg) / .82);backdrop-filter:blur(18px) saturate(1.35);-webkit-backdrop-filter:blur(18px) saturate(1.35);border:1px solid rgb(255 255 255 / .12);border-radius:1.15rem;padding:12px;box-shadow:0 12px 40px -12px #00000073,0 0 34px -8px rgb(var(--accent) / .35)}html.light .calendar-popover{background-color:rgb(var(--card) / .95);border-color:rgb(var(--line) / .7)}.cal-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px}.cal-head strong{font-family:var(--font-display);font-size:.9rem}.cal-head button{padding:4px 10px}.cal-grid{display:grid;grid-template-columns:repeat(7,2rem);gap:2px}.cal-dow{text-align:center;font-size:.68rem;color:rgb(var(--muted));padding:4px 0}.cal-day{width:2rem;height:2rem;padding:0;border-radius:.55rem;font-size:.8rem;transition:transform .2s cubic-bezier(.16,1,.3,1),background .2s ease,border-color .2s ease,box-shadow .2s ease}@media(hover:hover)and (pointer:fine){.cal-day:hover:not(:disabled):not(.edge){transform:translateY(-1px) scale(1.06);border-color:rgb(var(--accent) / .55);background:rgb(var(--accent) / .14);box-shadow:0 0 16px -6px rgb(var(--accent) / .55)}}.cal-day.muted{color:rgb(var(--muted))}.cal-day.today:not(.edge){border-color:rgb(var(--accent))}.cal-day.in-range{background:rgb(var(--accent) / .18);border-color:transparent}.cal-day.edge{background:linear-gradient(135deg,#4f6bed,#4dd0e1);border-color:transparent;color:#fff;box-shadow:0 0 18px -4px rgb(var(--accent) / .7)}.cal-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:10px}.cal-foot .hint{margin:0;font-size:.75rem}.table-shell{position:relative;overflow:auto;border-radius:1.15rem;border:1px solid rgb(255 255 255 / .1);background:transparent;box-shadow:none}html.light .table-shell{background:transparent;border-color:rgb(var(--line) / .55)}.table-shell.is-loading:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:linear-gradient(110deg,transparent 0%,rgb(var(--accent) / .08) 42%,rgb(var(--accent-cyan) / .14) 50%,rgb(var(--accent) / .08) 58%,transparent 100%);background-size:220% 100%;animation:shimmer 1.8s linear infinite}table{width:100%;border-collapse:collapse;background:transparent;border:none;border-radius:0;overflow:visible;font-size:.92rem;box-shadow:none}th,td{text-align:left;padding:13px 16px;border-bottom:1px solid rgb(var(--line) / .7);transition:background .28s cubic-bezier(.16,1,.3,1),box-shadow .28s ease}th{color:rgb(var(--fg));font-weight:700;font-size:.85rem;text-transform:uppercase;letter-spacing:.06em;background:rgb(var(--accent) / .14);position:sticky;top:0;z-index:1;box-shadow:inset 0 -1px rgb(var(--accent) / .28)}html.light th{background:rgb(var(--accent) / .1)}.th-with-btn{display:inline-flex;align-items:center;gap:8px}.sort-btn{padding:2px 8px;font-size:.8rem;line-height:1.2;min-width:1.75rem}.sort-btn.is-asc,.sort-btn.is-desc{border-color:rgb(var(--accent) / .55);background:rgb(var(--accent) / .16);color:rgb(var(--fg));box-shadow:0 0 16px -6px rgb(var(--accent) / .55)}tr:last-child td{border-bottom:none}.table-shell tbody tr{display:table-row}.table-shell tbody tr td,.table-shell tbody tr:hover td{background:transparent}tr.dim td{color:rgb(var(--muted));opacity:.7}tr.dim td.plate{font-weight:500}td.plate{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-weight:600;letter-spacing:.06em}.plate-chip{display:inline-flex;align-items:center;padding:.28rem .7rem;border-radius:.4rem;border:1px solid rgb(var(--accent-cyan) / .55);background:linear-gradient(180deg,rgb(var(--soft) / .9),rgb(var(--bg) / .7));color:rgb(var(--fg));letter-spacing:.14em;box-shadow:inset 0 1px #ffffff1f,0 0 16px -8px rgb(var(--accent-cyan) / .7)}html.light .plate-chip{background:linear-gradient(180deg,#fff,rgb(var(--soft)));border-color:rgb(var(--accent) / .45);color:rgb(var(--fg))}.status-pill,.type-chip{display:inline-flex;align-items:center;padding:.22rem .65rem;border-radius:999px;font-size:.75rem;font-weight:600;letter-spacing:.04em;border:1px solid rgb(var(--line));background:rgb(var(--soft) / .6);color:rgb(var(--fg) / .85)}.status-pill.read{color:#bdefff;border-color:rgb(var(--accent-cyan) / .65);background:rgb(var(--accent-cyan) / .14)}.status-pill.error,.status-pill.unreadble,.status-pill.unreadable{color:#f2b8b8;border-color:rgb(var(--bad) / .55);background:rgb(var(--bad) / .12)}.type-chip.resident{color:#c5d4ff;border-color:rgb(var(--accent) / .55);background:rgb(var(--accent) / .16)}.type-chip.guest{color:#ffd2a8;border-color:rgb(var(--peach) / .55);background:rgb(var(--peach) / .14)}.type-chip.contractor{color:#bdefff;border-color:rgb(var(--accent-cyan) / .55);background:rgb(var(--accent-cyan) / .14)}.type-chip.emergency{color:#f2b8b8;border-color:rgb(var(--bad) / .55);background:rgb(var(--bad) / .14)}html.light .status-pill.read,html.light .type-chip.contractor{color:#0f6f7c}html.light .type-chip.resident{color:#2d3ea8}html.light .type-chip.guest{color:#b85a28}.gate-chip{display:inline-flex;align-items:center;padding:.2rem .6rem;border-radius:999px;font-weight:600;font-size:.8rem;letter-spacing:.08em;color:rgb(var(--accent-cyan));border:1px solid rgb(var(--accent) / .4);background:rgb(var(--accent) / .12)}html.light .gate-chip{color:rgb(var(--accent))}td.empty{color:rgb(var(--muted));text-align:center;padding:2.4rem 16px;font-size:.95rem;background:transparent!important}.badge{display:inline-flex;align-items:center;padding:3px 9px;border-radius:999px;font-size:.75rem;font-weight:600;border:1px solid rgb(var(--line));color:rgb(var(--muted));transition:transform .25s cubic-bezier(.16,1,.3,1),box-shadow .25s ease,border-color .25s ease}.table-shell tbody tr:hover .badge{transform:translateY(-1px)}.badge.approved,.badge.streaming{color:#bdf0d4;border-color:rgb(var(--ok));background:rgb(var(--ok) / .12)}html.light .badge.approved,html.light .badge.streaming{color:#1a7a4a}.badge.denied,.badge.error,.badge.stopped{color:#f2b8b8;border-color:rgb(var(--bad));background:rgb(var(--bad) / .12)}html.light .badge.denied,html.light .badge.error,html.light .badge.stopped{color:#a33a3a}.badge.idle,.badge.connecting{color:rgb(var(--muted))}.pager{display:flex;align-items:center;gap:10px;justify-content:center;margin-top:14px;color:rgb(var(--muted));font-size:.88rem;padding:6px;border-radius:999px}.pager button{min-width:6.5rem}.error{color:#f2b8b8}html.light .error{color:#a33a3a}.notice{color:#bdf0d4}html.light .notice{color:#1a7a4a}.hint{color:rgb(var(--muted));font-size:.85rem}.hint code{font-size:.8rem;background:rgb(var(--bg));border:1px solid rgb(var(--line));border-radius:4px;padding:1px 5px}.live-start{position:relative;overflow:visible;animation:live-start-glow 2.8s ease-in-out infinite}.live-start:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;pointer-events:none;box-shadow:0 0 rgb(var(--accent-cyan) / .45);animation:live-start-ring 2.8s cubic-bezier(.16,1,.3,1) infinite}.live-start svg{animation:live-start-arrow 1.8s cubic-bezier(.16,1,.3,1) infinite}.live-start:hover,.live-start:focus-visible{animation:none}.live-start:hover:after,.live-start:focus-visible:after,.live-start:hover svg,.live-start:focus-visible svg{animation:none}@keyframes live-start-glow{0%,to{box-shadow:0 0 0 1px rgb(var(--accent-cyan) / .2),0 0 22px -6px rgb(var(--accent) / .45),0 0 40px -10px rgb(var(--accent-cyan) / .35)}50%{box-shadow:0 0 0 1px rgb(var(--accent-cyan) / .42),0 0 28px -4px rgb(var(--accent) / .65),0 0 56px -8px rgb(var(--accent-cyan) / .55)}}@keyframes live-start-ring{0%{box-shadow:0 0 rgb(var(--accent-cyan) / .5);opacity:1}to{box-shadow:0 0 0 14px rgb(var(--accent-cyan) / 0);opacity:0}}@keyframes live-start-arrow{0%,to{transform:translate(0)}50%{transform:translate(3px)}}.live-frame{position:relative;border-radius:1rem;border:1px solid rgb(255 255 255 / .12);background-color:rgb(var(--bg) / .38);backdrop-filter:blur(18px) saturate(1.35);-webkit-backdrop-filter:blur(18px) saturate(1.35);padding:.5rem;overflow:hidden;box-shadow:inset 0 1px #ffffff1a,0 0 50px -16px rgb(var(--accent) / .45)}html.light .live-frame{background-color:rgb(var(--fg) / .06);border-color:rgb(var(--line) / .7)}.live-frame:before{content:"";position:absolute;top:-20%;right:-20%;bottom:-20%;left:-20%;z-index:0;pointer-events:none;background:linear-gradient(135deg,rgb(var(--accent) / .35),rgb(var(--accent-cyan) / .25));filter:blur(40px);opacity:.55}video.live{position:relative;z-index:1;display:block;width:100%;max-height:620px;background:#000;border:1px solid rgb(var(--line));border-radius:.75rem;margin-top:0}.live-frame.is-connecting{min-height:22rem}.live-connecting{position:absolute;top:.5rem;right:.5rem;bottom:.5rem;left:.5rem;z-index:2;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.85rem;border-radius:.75rem;background:rgb(var(--bg) / .72);backdrop-filter:blur(10px) saturate(1.2);-webkit-backdrop-filter:blur(10px) saturate(1.2);animation:live-connecting-in .4s cubic-bezier(.16,1,.3,1)}html.light .live-connecting{background:rgb(var(--card) / .72)}.live-connecting-radar{position:relative;width:7.5rem;height:7.5rem;display:grid;place-items:center}.live-connecting-radar span{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;border:1.5px solid rgb(var(--accent-cyan) / .5);box-shadow:0 0 18px -6px rgb(var(--accent-cyan) / .55);animation:live-connecting-ring 2.4s cubic-bezier(.16,1,.3,1) infinite}.live-connecting-radar span:nth-child(2){animation-delay:.8s}.live-connecting-radar span:nth-child(3){animation-delay:1.6s}.live-connecting-radar .tab-icon{position:relative;z-index:1;filter:drop-shadow(0 0 10px rgb(var(--accent-cyan) / .65))}.live-connecting-label{margin:0;font-family:var(--font-display);font-size:1.05rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:rgb(var(--fg))}.live-connecting-dots{display:inline-flex;width:1.15em;margin-left:.05em;letter-spacing:.02em}.live-connecting-dots span{animation:live-connecting-dot 1.4s ease-in-out infinite;opacity:.2}.live-connecting-dots span:nth-child(2){animation-delay:.2s}.live-connecting-dots span:nth-child(3){animation-delay:.4s}@keyframes live-connecting-dot{0%,80%,to{opacity:.2}40%{opacity:1}}.live-connecting-hint{margin:0;max-width:28rem;padding:0 1.25rem;text-align:center;font-size:.88rem;color:rgb(var(--muted))}@keyframes live-connecting-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes live-connecting-ring{0%{transform:scale(.32);opacity:.75}to{transform:scale(1.08);opacity:0}}.brand-logo{position:relative;display:inline-block;flex-shrink:0}.brand-logo img{display:block;width:100%;height:100%;object-fit:contain;pointer-events:none;-webkit-user-select:none;user-select:none}.brand-logo-glow img{filter:drop-shadow(0 0 22px rgba(255,138,91,.75)) drop-shadow(0 0 44px rgba(255,138,91,.5)) drop-shadow(0 0 80px rgba(255,82,82,.3))}.brand-logo-pulse{pointer-events:none;position:absolute;top:0;right:0;bottom:0;left:0;z-index:2}@keyframes liquid-flow{0%{background-position:0% 50%}25%{background-position:60% 20%}50%{background-position:100% 50%}75%{background-position:40% 80%}to{background-position:0% 50%}}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media(prefers-reduced-motion:reduce){.brand-wordmark{animation:none;background-position:50% 50%}.table-shell.is-loading:after{animation:none;opacity:.35}.live-start,.live-start:after,.live-start svg{animation:none}.live-start{box-shadow:0 0 0 1px rgb(var(--accent-cyan) / .28),0 0 22px -6px rgb(var(--accent-cyan) / .4)}.live-connecting,.live-connecting-radar span,.live-connecting-dots span{animation:none}.live-connecting-dots span{opacity:1}.filters>label:hover,.filter-field:hover,.table-shell tbody tr:hover .badge,.cal-day:hover:not(:disabled):not(.edge){transform:none}}
