:root{--bg:#0f1115;--panel:#171a21;--border:#2a2f3a;--text:#e4e6eb;--text-muted:#8b909c;--accent:#4f8cff;--ok:#2fbf71;--bad:#e5484d;--warn:#e8a33d;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}body{background:var(--bg);color:var(--text);margin:0;font-family:system-ui,-apple-system,Segoe UI,sans-serif}button{font:inherit;cursor:pointer;background:var(--accent);color:#fff;border:none;border-radius:6px;padding:.5rem 1rem}button:disabled{opacity:.6;cursor:default}input{font:inherit;background:var(--bg);color:var(--text);border:1px solid var(--border);border-radius:6px;padding:.5rem}a{color:var(--accent)}.page{max-width:960px;margin:0 auto;padding:1.5rem}.page-loading{text-align:center;color:var(--text-muted);padding:2rem}.page-header{justify-content:space-between;align-items:center;margin-bottom:1.5rem;display:flex}.page-header-user{color:var(--text-muted);align-items:center;gap:.75rem;display:flex}.login-page{justify-content:center;align-items:center;min-height:100vh;display:flex}.login-form{background:var(--panel);border:1px solid var(--border);border-radius:10px;flex-direction:column;gap:.75rem;width:280px;padding:2rem;display:flex}.login-form h1{text-align:center;margin:0 0 .5rem}.login-form label{color:var(--text-muted);flex-direction:column;gap:.25rem;font-size:.9rem;display:flex}.form-error{color:var(--bad);margin:0;font-size:.9rem}.data-table{border-collapse:collapse;width:100%}.data-table th,.data-table td{text-align:left;border-bottom:1px solid var(--border);padding:.6rem .75rem}.data-table th{color:var(--text-muted);font-size:.85rem;font-weight:500}.badge{border-radius:999px;padding:.15rem .6rem;font-size:.8rem;display:inline-block}.badge-ok{background:color-mix(in srgb, var(--ok) 20%, transparent);color:var(--ok)}.badge-bad{background:color-mix(in srgb, var(--bad) 20%, transparent);color:var(--bad)}.badge-alarm{background:color-mix(in srgb, var(--warn) 20%, transparent);color:var(--warn)}.badge-muted{background:color-mix(in srgb, var(--text-muted) 20%, transparent);color:var(--text-muted)}.back-link{color:var(--text-muted);margin-bottom:.25rem;font-size:.85rem;display:inline-block}.text-muted{color:var(--text-muted)}.section{margin-bottom:2rem}.section h2{color:var(--text-muted);margin:0 0 .75rem;font-size:1rem;font-weight:500}.chart-wrap{background:var(--panel);border:1px solid var(--border);border-radius:10px;padding:1rem}.alarm-list{flex-direction:column;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.alarm-list li{background:var(--panel);border:1px solid var(--border);border-radius:8px;align-items:center;gap:.5rem;padding:.5rem .75rem;display:flex}.alarm-device{font-weight:500}.portfolio-summary{gap:.75rem;margin-bottom:1.5rem;display:flex}.portfolio-summary .metric-tile{min-width:140px}.metric-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:.75rem;display:grid}.metric-tile{background:var(--panel);border:1px solid var(--border);border-radius:8px;padding:.6rem .75rem}.metric-tile-label{color:var(--text-muted);margin-bottom:.25rem;font-size:.75rem}.metric-tile-value{font-variant-numeric:tabular-nums;font-size:1.1rem}.chart-controls{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;display:flex}.chart-controls h2{margin:0}.chart-controls-inputs{gap:.5rem;display:flex}.command-form{background:var(--panel);border:1px solid var(--border);border-radius:10px;flex-wrap:wrap;align-items:flex-end;gap:1rem;margin-bottom:.75rem;padding:1rem;display:flex}.command-form label{color:var(--text-muted);flex-direction:column;gap:.25rem;font-size:.85rem;display:flex}.command-form input,.command-form select{width:140px}.field-hint{color:var(--text-muted);font-size:.75rem}.field-hint-error{color:var(--bad)}.command-result{margin-top:.75rem}.command-form-danger{border-color:color-mix(in srgb, var(--bad) 40%, var(--border))}.button-danger{background:var(--bad)}.form-success{color:var(--ok);margin:0;font-size:.9rem}.checkbox-label{align-items:center;flex-direction:row!important;gap:.4rem!important}.button-small{padding:.25rem .6rem;font-size:.8rem}.user-card{background:var(--panel);border:1px solid var(--border);border-radius:10px;margin-bottom:.75rem;padding:1rem}.user-card-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;display:flex}.user-card-badges{align-items:center;gap:.5rem;display:flex}.site-access-list{margin-top:.75rem}.site-access-list li{align-items:center;gap:.75rem;display:flex}.inline-form{gap:.5rem;margin-top:.75rem;display:flex}.inline-form select,.chart-controls-inputs select{background:var(--bg);color:var(--text);border:1px solid var(--border);font:inherit;border-radius:6px;padding:.35rem .5rem}
