@import"https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:wght@400;500&family=Space+Grotesk:wght@300;400;500;600;700&display=swap";:root{--bg-0: #080604;--bg-1: #110d08;--bg-2: #1c1510;--bg-3: #271d14;--bg-4: #342619;--accent: #d4780a;--accent-hi: #f0960f;--accent-lo: #7a4405;--accent-glow: rgba(212,120,10,.12);--green: #3d9e4a;--green-dim: rgba(61,158,74,.15);--red: #c0392b;--red-dim: rgba(192,57,43,.15);--amber: #e67e22;--t1: #f0e6d3;--t2: #9e7d58;--t3: #5a3f22;--t4: #2e1e0d;--border: rgba(212,120,10,.12);--border-hi: rgba(212,120,10,.3);--font-ui: "Space Grotesk", sans-serif;--font-mono: "IBM Plex Mono", monospace;--r1: 4px;--r2: 8px;--r3: 14px;--r4: 20px}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;-webkit-text-size-adjust:100%}body{font-family:var(--font-ui);background:var(--bg-0);color:var(--t1);line-height:1.5;min-height:100dvh;-webkit-font-smoothing:antialiased;overflow-x:hidden}::-webkit-scrollbar{width:3px}::-webkit-scrollbar-track{background:var(--bg-0)}::-webkit-scrollbar-thumb{background:var(--accent-lo);border-radius:3px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;font-family:var(--font-ui);font-size:.82rem;font-weight:600;letter-spacing:.03em;cursor:pointer;border:none;border-radius:var(--r2);padding:8px 16px;transition:all .12s ease;white-space:nowrap}.btn-primary{background:var(--accent);color:#080604}.btn-primary:hover{background:var(--accent-hi)}.btn-ghost{background:transparent;color:var(--t2);border:1px solid var(--border-hi)}.btn-ghost:hover{background:var(--bg-3);color:var(--t1)}.btn-danger{background:var(--red);color:#fff}.btn-danger:hover{filter:brightness(1.15)}.btn-success{background:var(--green);color:#fff}.btn-success:hover{filter:brightness(1.1)}.btn-icon{padding:7px;border-radius:var(--r2)}.btn:disabled{opacity:.35;cursor:not-allowed}.btn-sm{padding:5px 11px;font-size:.76rem}.btn-lg{padding:12px 24px;font-size:.9rem}.card{background:var(--bg-2);border:1px solid var(--border);border-radius:var(--r3);padding:1rem}.card-elevated{background:var(--bg-3);border-color:var(--border-hi)}.badge{display:inline-flex;align-items:center;gap:5px;padding:3px 8px;border-radius:20px;font-family:var(--font-mono);font-size:.68rem;font-weight:500;letter-spacing:.06em}.badge-live{background:var(--green-dim);color:var(--green);border:1px solid rgba(61,158,74,.25)}.badge-idle{background:#7a440533;color:var(--amber);border:1px solid rgba(230,126,34,.25)}.badge-pending{background:#2980b926;color:#5dade2;border:1px solid rgba(93,173,226,.25)}.badge-off{background:var(--bg-3);color:var(--t3);border:1px solid var(--border)}.badge-alarm{background:var(--red-dim);color:var(--red);border:1px solid rgba(192,57,43,.3)}.dot{width:6px;height:6px;border-radius:50%;background:currentColor;flex-shrink:0}.dot-pulse{animation:dp 1.6s ease-in-out infinite}@keyframes dp{0%,to{opacity:1}50%{opacity:.25}}input,select,textarea{background:var(--bg-3);border:1px solid var(--border-hi);color:var(--t1);border-radius:var(--r2);padding:9px 12px;font-family:var(--font-ui);font-size:.875rem;width:100%;outline:none;transition:border-color .12s}input:focus,select:focus{border-color:var(--accent)}input::placeholder{color:var(--t3)}.toggle{position:relative;width:36px;height:20px;flex-shrink:0}.toggle input{opacity:0;width:0;height:0}.toggle-track{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--bg-4);border:1px solid var(--border-hi);border-radius:20px;cursor:pointer;transition:all .2s}.toggle-track:before{content:"";position:absolute;width:14px;height:14px;left:2px;top:2px;background:var(--t3);border-radius:50%;transition:all .2s}.toggle input:checked+.toggle-track{background:var(--accent);border-color:var(--accent)}.toggle input:checked+.toggle-track:before{transform:translate(16px);background:#080604}.fvcam-logo{font-family:var(--font-mono);font-size:1rem;letter-spacing:.08em;color:var(--accent)}.fvcam-logo span{color:var(--t3)}.fade-up{animation:fadeUp .25s ease both}@keyframes fadeUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}input[type=range]{padding:0;height:4px;background:var(--bg-4);border:none;-webkit-appearance:none;border-radius:4px;cursor:pointer}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:16px;height:16px;border-radius:50%;background:var(--accent);cursor:pointer}.divider{height:1px;background:var(--border);margin:.75rem 0}
