:root{--accent: #0e7c6e;--accent-hover: #0b6a5e;--accent-deep: #0b5f55;--accent-tint: #e3f1ee;--accent-tint-2: #f2f6f5;--ink: #17201e;--text-secondary: #5f6b68;--text-muted: #8b9793;--page: #f6f7f6;--card: #ffffff;--fill-subtle: #fafbfb;--fill-2: #f0f3f2;--border: rgba(23, 32, 30, .08);--border-mid: rgba(23, 32, 30, .12);--border-strong: rgba(23, 32, 30, .16);--warn: #b45309;--warn-bg: #fdf6ec;--warn-border: rgba(180, 83, 9, .35);--danger: #c2410c;--danger-2: #b03a0e;--danger-bg: #fbf0ea;--status-watching: #4ade80;--status-sleeping: #e8b93a;--status-paused: #9aa6a2;--status-offline: #c2410c;--spark: #7fb5ac;--spark-empty: #e3e8e6;--spark-alert: #b45309;--r-card: 14px;--r-btn: 8px;--r-pill: 999px;--r-tile: 8px;--shadow-hover: 0 6px 18px rgba(14, 124, 110, .13);--shadow-modal: 0 20px 60px rgba(0, 0, 0, .25);--font-ui: "Figtree", system-ui, -apple-system, sans-serif;--font-mono: "IBM Plex Mono", ui-monospace, monospace;--sidebar-w: 232px;--app-min-w: 1200px}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;font-family:var(--font-ui);color:var(--ink);background:var(--page);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}input,select,textarea,button{font-family:inherit}a{color:inherit;text-decoration:none}::selection{background:var(--accent-tint)}.mono{font-family:var(--font-mono);letter-spacing:.07em;text-transform:uppercase;font-size:10px;color:var(--text-muted)}.btn{display:inline-flex;align-items:center;gap:7px;font-weight:600;font-size:13px;border-radius:var(--r-btn);padding:9px 14px;border:1px solid var(--border-strong);background:var(--card);color:var(--ink);cursor:pointer;transition:border-color .15s,box-shadow .15s,background .15s}.btn:hover{border-color:var(--accent)}.btn-primary{background:var(--accent);color:#fff;border-color:var(--accent)}.btn-primary:hover{background:var(--accent-hover);border-color:var(--accent-hover)}.btn:disabled{opacity:.5;cursor:not-allowed}.card{background:var(--card);border:1px solid var(--border);border-radius:var(--r-card)}.pill{display:inline-flex;align-items:center;gap:6px;border-radius:var(--r-pill);padding:4px 10px;font-size:11.5px;font-weight:600}.dot{width:8px;height:8px;border-radius:50%;flex:none}.page-title{font-size:21px;font-weight:700;letter-spacing:-.01em;margin:0}.section-title{font-size:14.5px;font-weight:700;margin:0}.input{border:1px solid var(--border-strong);border-radius:var(--r-btn);padding:9px 12px;font-size:13px;background:var(--card);color:var(--ink);outline:none}.input:focus{border-color:var(--accent)}*::-webkit-scrollbar{width:10px;height:10px}*::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:999px;border:3px solid transparent;background-clip:padding-box}.camera-card{border-color:var(--border-mid)}.camera-card:hover{box-shadow:var(--shadow-hover);border-color:#0e7c6e52}.mini-tile{transition:background .12s,color .12s}.camera-card:hover .mini-tile{background:var(--accent-tint)}.camera-card:hover .mini-tile>div{color:var(--accent-deep)}select.input{cursor:pointer}.card-scrim{opacity:0;transition:opacity .15s}.camera-card:hover .card-scrim{opacity:1}@keyframes livepulse{0%{box-shadow:0 0 #4ade8080}70%{box-shadow:0 0 0 5px #4ade8000}to{box-shadow:0 0 #4ade8000}}.live-dot{animation:livepulse 1.8s ease-out infinite}
