:root{--text:#3f3f46;--text-h:#09090b;--bg:#fafafa;--bg-card:#fff;--border:#e4e4e7;--accent:#2563eb;--danger:#dc2626;--online:#16a34a;--offline:#71717a;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;color:var(--text);background:var(--bg);font:15px/1.5 system-ui,Segoe UI,Roboto,sans-serif}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--text:#d4d4d8;--text-h:#fafafa;--bg:#0f0f12;--bg-card:#18181b;--border:#2e2e34;--accent:#60a5fa;--online:#4ade80;--offline:#a1a1aa}}*{box-sizing:border-box}body{margin:0}h1,h2{color:var(--text-h);margin:0 0 16px;font-weight:600}h1{font-size:22px}h2{font-size:15px}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}.page-center{justify-content:center;align-items:center;min-height:100svh;display:flex}.page{max-width:960px;margin:0 auto;padding:24px 20px 64px}.card{background:var(--bg-card);border:1px solid var(--border);border-radius:10px;padding:20px}.login-form{flex-direction:column;gap:14px;width:320px;display:flex}.login-form label{color:var(--text);flex-direction:column;gap:4px;font-size:13px;display:flex}.login-form input{font:inherit;border:1px solid var(--border);background:var(--bg);color:var(--text-h);border-radius:6px;padding:8px 10px}.login-form button{font:inherit;background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:6px;padding:9px 12px;font-weight:600}.login-form button:disabled{opacity:.6;cursor:default}.error{color:var(--danger);margin:0;font-size:13px}.app-shell{min-height:100svh}.app-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:12px 20px;display:flex}.brand{color:var(--text-h);font-weight:700}.header-right{align-items:center;gap:12px;display:flex}.link-button{font:inherit;color:var(--accent);cursor:pointer;background:0 0;border:none;padding:0}.muted{color:var(--offline)}.list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.list li{border:1px solid var(--border);border-radius:8px;padding:12px 16px}.table{border-collapse:collapse;width:100%;font-size:14px}.table th,.table td{text-align:left;border-bottom:1px solid var(--border);padding:10px 12px}.table th{color:var(--offline);text-transform:uppercase;letter-spacing:.04em;font-size:12px;font-weight:500}.badge{border-radius:999px;align-items:center;gap:6px;padding:3px 9px;font-size:12px;font-weight:600;display:inline-flex}.badge:before{content:"";background:currentColor;border-radius:50%;width:7px;height:7px}.badge-online{color:var(--online);background:color-mix(in srgb, var(--online) 15%, transparent)}.badge-offline{color:var(--offline);background:color-mix(in srgb, var(--offline) 15%, transparent)}.back-link{margin-bottom:16px;font-size:13px;display:inline-block}.machine-header{align-items:center;gap:12px;margin-bottom:16px;display:flex}.machine-header h1{margin:0}.details{grid-template-columns:max-content 1fr;gap:6px 20px;margin:0 0 28px;font-size:14px;display:grid}.details dt{color:var(--offline)}.details dd{color:var(--text-h);margin:0}.charts{gap:16px;display:grid}.chart-card h2{color:var(--text);text-transform:uppercase;letter-spacing:.04em;font-size:13px;font-weight:600}
