:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--border:#d0d0d0;--muted:#666;--danger:#b3261e;--accent:#1a5fb4;font-family:system-ui,-apple-system,Segoe UI,sans-serif}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}*{box-sizing:border-box}body{margin:0}button{cursor:pointer;border:1px solid var(--border);color:inherit;background:0 0;border-radius:4px;padding:.4rem .8rem}button:disabled{cursor:not-allowed;opacity:.5}button.danger{border-color:var(--danger);color:var(--danger)}input,select,textarea{border:1px solid var(--border);font:inherit;color:inherit;background:0 0;border-radius:4px;padding:.35rem .5rem}table{border-collapse:collapse;width:100%}th,td{text-align:left;border-bottom:1px solid var(--border);padding:.4rem .6rem}.error{color:var(--danger)}.layout{flex-direction:column;min-height:100vh;display:flex}.topnav{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:.75rem 1.25rem;display:flex}.topnav-links{gap:1rem;display:flex}.topnav-links a{color:var(--muted);text-decoration:none}.topnav-links a.active{color:var(--accent);font-weight:600}.topnav-user{align-items:center;gap:.75rem;display:flex}.content{flex:1;padding:1.25rem}.login-page{justify-content:center;align-items:center;min-height:100vh;display:flex}.login-form{flex-direction:column;gap:.75rem;width:320px;display:flex}.login-form label{flex-direction:column;gap:.25rem;font-size:.9rem;display:flex}.card{border:1px solid var(--border);border-radius:6px;margin-bottom:1rem;padding:1rem}.form-row{flex-direction:column;gap:.25rem;margin-bottom:.6rem;display:flex}.form-actions{gap:.5rem;margin-top:.5rem;display:flex}.badge{background:#80808033;border-radius:999px;padding:.1rem .5rem;font-size:.8rem;display:inline-block}.badge-live{color:var(--danger);background:#b3261e33;font-weight:600}.mode-banner{border-bottom:1px solid var(--border);background:#80808014;justify-content:space-between;align-items:center;padding:.4rem 1.25rem;font-size:.85rem;display:flex}.mode-banner-alarm{color:var(--danger);background:#b3261e1f;font-weight:600}.page-header{justify-content:space-between;align-items:center;margin-bottom:1rem;display:flex}.row-actions{gap:.4rem;display:flex}
