:root{--bg: #0f1115;--panel: #161a22;--panel-2: #1c2230;--border: #262d3a;--text: #e8edf5;--muted: #8a93a6;--accent: #6aa9ff;--good: #4ade80;--bad: #f87171;--warn: #fbbf24}*{box-sizing:border-box}html,body,#root{background:var(--bg);color:var(--text);margin:0;min-height:100vh;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif}button{font:inherit;cursor:pointer}a{color:var(--accent);text-decoration:none}header.app{display:flex;justify-content:space-between;align-items:center;padding:16px 24px;border-bottom:1px solid var(--border)}header.app h1{font-size:18px;margin:0;letter-spacing:.2px}header.app .controls{display:flex;gap:8px;align-items:center}select,input,button.btn{background:var(--panel);color:var(--text);border:1px solid var(--border);border-radius:6px;padding:6px 10px}button.btn{cursor:pointer}button.btn.primary{background:var(--accent);color:#0b1322;border:none;font-weight:600}button.btn.danger{background:var(--bad);color:#1a0b0b;border:none}main{display:grid;grid-template-columns:1fr 1fr;gap:16px;padding:16px 24px}@media(max-width:1080px){main{grid-template-columns:1fr}}.panel{background:var(--panel);border:1px solid var(--border);border-radius:8px;padding:16px}.panel h2{font-size:14px;margin:0 0 12px;color:var(--muted);text-transform:uppercase;letter-spacing:.5px}.kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.kpi{background:var(--panel-2);border-radius:6px;padding:12px}.kpi .label{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.5px}.kpi .value{font-size:22px;font-weight:600;margin-top:4px}.kpi.good .value{color:var(--good)}.kpi.bad .value{color:var(--bad)}table{width:100%;border-collapse:collapse;font-size:13px}table th,table td{text-align:left;padding:6px 8px;border-bottom:1px solid var(--border)}table th{color:var(--muted);font-weight:500;font-size:11px;text-transform:uppercase;letter-spacing:.5px}.row{display:flex;gap:8px;align-items:center}.tag{background:var(--panel-2);color:var(--muted);border-radius:4px;padding:2px 6px;font-size:11px}.bad{color:var(--bad)}.good{color:var(--good)}.span2{grid-column:span 2}@media(max-width:1080px){.span2{grid-column:span 1}}
