:root{--bg: #0B0E14;--surface: #12161F;--surface-raised: #181D29;--border: #232838;--border-light: #2D3344;--text: #E8EAED;--text-muted: #8B92A5;--text-dim: #5B6275;--open: #3DDC84;--open-dim: #1A4A33;--closed: #FF5470;--closed-dim: #4A1A26;--override: #FFB454;--override-dim: #4A3A1A;--accent: #5B8CFF;--font-display: "Space Grotesk", system-ui, sans-serif;--font-body: "Inter", system-ui, sans-serif;--font-mono: "JetBrains Mono", "SF Mono", monospace}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font-body);font-size:15px;line-height:1.5}a{color:inherit;text-decoration:none}button{font-family:inherit;cursor:pointer}input,select,textarea{font-family:inherit;font-size:inherit}::selection{background:var(--accent);color:#fff}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}.app-shell{display:flex;min-height:100vh}.sidebar{width:220px;flex-shrink:0;background:var(--surface);border-right:1px solid var(--border);padding:24px 0;display:flex;flex-direction:column}.sidebar-brand{padding:0 20px 24px;border-bottom:1px solid var(--border);margin-bottom:16px}.sidebar-brand .mark{display:inline-flex;align-items:center;gap:8px;font-family:var(--font-display);font-weight:600;font-size:15px}.sidebar-brand .mark .dot{width:8px;height:8px;border-radius:50%;background:var(--open);box-shadow:0 0 8px var(--open)}.sidebar-brand .sub{font-size:12px;color:var(--text-dim);margin-top:4px;font-family:var(--font-mono)}.nav-link{display:flex;align-items:center;gap:10px;padding:10px 20px;color:var(--text-muted);font-size:14px;font-weight:500;border-left:2px solid transparent;transition:background .12s,color .12s,border-color .12s}.nav-link:hover{background:var(--surface-raised);color:var(--text)}.nav-link.active{color:var(--text);border-left-color:var(--accent);background:var(--surface-raised)}.sidebar-footer{margin-top:auto;padding:16px 20px 0;border-top:1px solid var(--border)}.sidebar-footer .email{font-size:12px;color:var(--text-dim);font-family:var(--font-mono);word-break:break-all;margin-bottom:10px}.main{flex:1;padding:36px 40px;max-width:1100px}.page-header{margin-bottom:28px}.page-header h1{font-family:var(--font-display);font-size:24px;font-weight:600;margin:0 0 6px}.page-header p{color:var(--text-muted);margin:0;font-size:14px}.status-light{width:10px;height:10px;border-radius:50%;display:inline-block;flex-shrink:0}.status-light.open{background:var(--open);box-shadow:0 0 10px var(--open)}.status-light.closed{background:var(--closed);box-shadow:0 0 10px var(--closed)}.status-light.override{animation:pulse 1.8s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}.card{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:20px 24px;margin-bottom:16px}.brand-table{border:1px solid var(--border);border-radius:10px;overflow:hidden}.brand-row{display:flex;align-items:center;gap:14px;padding:16px 20px;background:var(--surface);border-bottom:1px solid var(--border);transition:background .12s}.brand-row:last-child{border-bottom:none}.brand-row:hover{background:var(--surface-raised)}.brand-row .name{font-weight:600;font-size:14.5px}.brand-row .key{font-family:var(--font-mono);font-size:12px;color:var(--text-dim)}.brand-row .source-tag{font-family:var(--font-mono);font-size:11px;padding:3px 8px;border-radius:4px;background:var(--surface-raised);color:var(--text-muted);border:1px solid var(--border-light);margin-left:auto}.brand-row .source-tag.override{color:var(--override);border-color:var(--override-dim);background:#ffb45414}.brand-row .status-word{font-family:var(--font-mono);font-size:12px;text-transform:uppercase;letter-spacing:.04em;width:60px}.brand-row .status-word.open{color:var(--open)}.brand-row .status-word.closed{color:var(--closed)}.field{margin-bottom:16px}.field label{display:block;font-size:13px;font-weight:500;color:var(--text-muted);margin-bottom:6px}.field input[type=text],.field input[type=email],.field input[type=password],.field input[type=time],.field input[type=datetime-local],.field select,.field textarea{width:100%;background:var(--surface-raised);border:1px solid var(--border-light);color:var(--text);padding:9px 12px;border-radius:6px;font-size:14px}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--accent)}.btn{display:inline-flex;align-items:center;gap:6px;padding:9px 16px;border-radius:6px;border:1px solid var(--border-light);background:var(--surface-raised);color:var(--text);font-size:13.5px;font-weight:500;transition:background .12s,border-color .12s}.btn:hover{background:var(--border)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn.primary{background:var(--accent);border-color:var(--accent);color:#fff}.btn.primary:hover{background:#4978e6}.btn.danger{background:var(--closed-dim);border-color:var(--closed);color:var(--closed)}.btn.danger:hover{background:#ff547033}.btn.success{background:var(--open-dim);border-color:var(--open);color:var(--open)}.btn.success:hover{background:#3ddc842e}.btn.ghost{background:transparent;border-color:transparent;color:var(--text-muted)}.btn.ghost:hover{background:var(--surface-raised);color:var(--text)}.btn-row{display:flex;gap:10px;margin-top:18px}.day-row{display:flex;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid var(--border)}.day-row:last-child{border-bottom:none}.day-row .day-label{width:90px;font-weight:600;font-size:13.5px;flex-shrink:0}.window-pill{display:flex;align-items:center;gap:8px;background:var(--surface-raised);border:1px solid var(--border-light);border-radius:6px;padding:5px 10px;font-family:var(--font-mono);font-size:13px}.window-pill button{background:none;border:none;color:var(--text-dim);font-size:14px;padding:0 2px}.window-pill button:hover{color:var(--closed)}.window-pill input[type=time]{background:none;border:none;color:var(--text);font-family:var(--font-mono);font-size:13px;width:78px;padding:0}.add-window-btn{background:none;border:1px dashed var(--border-light);color:var(--text-dim);border-radius:6px;padding:5px 10px;font-size:12.5px}.add-window-btn:hover{color:var(--accent);border-color:var(--accent)}.override-banner{border-radius:8px;padding:14px 18px;margin-bottom:20px;display:flex;align-items:center;gap:12px;font-size:13.5px}.override-banner.active.closed{background:var(--closed-dim);border:1px solid var(--closed);color:#ffd6dd}.override-banner.active.open{background:var(--open-dim);border:1px solid var(--open);color:#cdfae0}.override-banner .reason{color:var(--text-muted);font-size:12.5px}.kill-switch-card{border:1px solid var(--closed-dim);background:radial-gradient(circle at top left,rgba(255,84,112,.06),transparent 60%),var(--surface);border-radius:12px;padding:32px;text-align:center}.kill-switch-status{font-family:var(--font-display);font-size:32px;font-weight:700;margin:12px 0 4px}.kill-switch-status.open{color:var(--open)}.kill-switch-status.closed{color:var(--closed)}.login-wrap{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--bg);background-image:radial-gradient(circle at 20% 20%,rgba(91,140,255,.07),transparent 50%),radial-gradient(circle at 80% 80%,rgba(61,220,132,.05),transparent 50%)}.login-card{width:360px;background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:32px}.login-card .mark{display:flex;align-items:center;gap:8px;font-family:var(--font-display);font-weight:600;font-size:17px;margin-bottom:6px}.login-card .mark .dot{width:9px;height:9px;border-radius:50%;background:var(--open);box-shadow:0 0 10px var(--open)}.login-card .tagline{color:var(--text-muted);font-size:13px;margin-bottom:24px}.error-text{color:var(--closed);font-size:13px;margin:-4px 0 12px}.empty-state{text-align:center;padding:48px 20px;color:var(--text-dim);font-size:14px}.loading-text{color:var(--text-dim);font-family:var(--font-mono);font-size:13px}.badge{font-family:var(--font-mono);font-size:11px;text-transform:uppercase;letter-spacing:.04em;padding:2px 7px;border-radius:4px;border:1px solid var(--border-light);color:var(--text-muted)}.badge.admin{color:var(--override);border-color:var(--override-dim)}.badge.blocked{color:var(--closed);border-color:var(--closed-dim)}table.simple-table{width:100%;border-collapse:collapse}table.simple-table th{text-align:left;font-size:12px;color:var(--text-dim);font-weight:500;text-transform:uppercase;letter-spacing:.04em;padding:8px 12px;border-bottom:1px solid var(--border)}table.simple-table td{padding:10px 12px;border-bottom:1px solid var(--border);font-size:13.5px}table.simple-table tr:last-child td{border-bottom:none}
