:root{color-scheme:light;--bg: #f6f5f2;--surface: #ffffff;--text: #18181a;--muted: #6b6a66;--border: rgba(0,0,0,.1);--accent: #c8102e;--accent-text: #ffffff;--good: #127a12;--bad: #c62828;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;color:var(--text);background:var(--bg)}*{box-sizing:border-box}body{margin:0;background:var(--bg);overflow-wrap:break-word}a{color:inherit}.shell{max-width:1100px;margin:0 auto;padding:0 16px 48px}.top{display:flex;justify-content:space-between;align-items:center;padding:16px 0;gap:12px;flex-wrap:wrap;border-bottom:1px solid var(--border);margin-bottom:8px}.brand{font-weight:800;font-size:1.15rem}.brand span,.accent{color:var(--accent)}.top nav{display:flex;gap:14px;align-items:center;flex-wrap:wrap}.tab{background:none;border:0;padding:4px 0;font:inherit;cursor:pointer;color:var(--muted);border-bottom:2px solid transparent}.tab.on{color:var(--text);border-bottom-color:var(--accent);font-weight:600}h1{font-size:1.5rem;margin:16px 0 8px}h2{font-size:1.1rem;margin:20px 0 8px}.card h2{margin-top:0}.muted{color:var(--muted)}.small{font-size:.85rem}.mono{font-family:ui-monospace,Menlo,Consolas,monospace}.grow{flex:1;min-width:0}.row{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:12px 0}.card{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:16px;margin:12px 0}.narrow{max-width:400px;margin:48px auto}.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(240px,100%),1fr));gap:12px}.area{text-decoration:none;margin:0}.area:hover{border-color:var(--accent)}.area p{margin:4px 0}.btn{display:inline-block;background:var(--accent);color:var(--accent-text);border:0;border-radius:8px;padding:9px 16px;font-weight:600;cursor:pointer;text-decoration:none;font-size:.95rem}.btn:disabled{opacity:.6;cursor:default}.btn.ghost{background:transparent;color:var(--text);border:1px solid var(--border)}button.link{background:none;border:0;color:var(--accent);cursor:pointer;padding:0;font:inherit}button.link:disabled{opacity:.5;cursor:default}.banner{padding:10px 14px;border-radius:8px;margin:12px 0;border:1px solid}.banner.error{background:color-mix(in srgb,var(--bad) 10%,transparent);border-color:color-mix(in srgb,var(--bad) 40%,transparent)}.field{display:flex;flex-direction:column;gap:4px;margin:10px 0}.field span{font-size:.85rem;color:var(--muted)}input,select{font:inherit;padding:8px 10px;border-radius:8px;border:1px solid var(--border);background:var(--surface);color:var(--text);max-width:100%}.check{display:flex;gap:8px;align-items:center;margin:10px 0}.grid-form{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(220px,100%),1fr));gap:0 16px}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;background:var(--surface);border:1px solid var(--border);border-radius:10px;margin:8px 0;font-size:.92rem}th,td{text-align:left;padding:9px 12px;border-bottom:1px solid var(--border);vertical-align:top}th{font-size:.78rem;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);font-weight:600}tr:last-child td{border-bottom:0}.status{font-size:.78rem;font-weight:600;padding:2px 8px;border-radius:999px;border:1px solid currentColor;white-space:nowrap}.status.on{color:var(--good)}.status.off{color:var(--muted)}a.tab{text-decoration:none}.banner.ok{background:color-mix(in srgb,var(--good) 10%,transparent);border-color:color-mix(in srgb,var(--good) 40%,transparent)}.status.warn{color:#a86b00}.status.bad{color:var(--bad)}.warn-text{color:#a86b00}.bad-text{color:var(--bad)}.num{text-align:right;white-space:nowrap}tr.click{cursor:pointer}tr.click:hover td{background:color-mix(in srgb,var(--accent) 5%,transparent)}.between{justify-content:space-between}.kpis{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(170px,100%),1fr));gap:10px;margin:12px 0}.kpi{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:10px 12px}.kpi-value{font-weight:700;margin-top:2px}.facts{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(260px,100%),1fr));gap:8px 16px;margin:8px 0;background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:12px 16px}.facts dt{font-size:.78rem;color:var(--muted)}.facts dd{margin:0}.banner:not(.error):not(.ok){border-color:var(--border);background:var(--surface)}
