:root{color-scheme:light;--bg: #f4f3f0;--surface: #fcfcfb;--surface-2: #f0efec;--border: #e2e1dc;--text: #0b0b0b;--text-2: #52514e;--muted: #7a7974;--accent: #2a78d6;--cls-a: #2a78d6;--cls-b: #eb6834;--cls-c: #1baf7a;--cls-none: #a3a29c;--good: #0ca30c;--warning: #fab219;--serious: #ec835a;--critical: #d03b3b;--grid: #e8e7e2;--radius: 10px;font-family:Inter,Segoe UI,system-ui,-apple-system,sans-serif;font-size:14px}@media (prefers-color-scheme: dark){:root:not([data-theme=light]){color-scheme:dark;--bg: #111110;--surface: #1a1a19;--surface-2: #232321;--border: #2e2e2b;--text: #f0efec;--text-2: #c3c2b7;--muted: #8f8e86;--accent: #3987e5;--cls-a: #3987e5;--cls-b: #d95926;--cls-c: #199e70;--cls-none: #5c5b56;--grid: #2a2a27}}:root[data-theme=dark]{color-scheme:dark;--bg: #111110;--surface: #1a1a19;--surface-2: #232321;--border: #2e2e2b;--text: #f0efec;--text-2: #c3c2b7;--muted: #8f8e86;--accent: #3987e5;--cls-a: #3987e5;--cls-b: #d95926;--cls-c: #199e70;--cls-none: #5c5b56;--grid: #2a2a27}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text)}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}h1{font-size:22px;margin:0 0 4px}h2{font-size:16px;margin:0 0 12px}.sub{color:var(--text-2);margin:0 0 20px}.muted{color:var(--muted)}.topbar{display:flex;align-items:center;gap:24px;padding:10px 24px;background:var(--surface);border-bottom:1px solid var(--border);position:sticky;top:0;z-index:10;flex-wrap:wrap}.brand{font-weight:700;font-size:16px}.brand span{color:var(--accent)}nav{display:flex;gap:4px;flex-wrap:wrap}nav a{padding:6px 12px;border-radius:8px;color:var(--text-2)}nav a.active{background:var(--surface-2);color:var(--text);font-weight:600}nav a:hover{text-decoration:none;background:var(--surface-2)}.user{margin-left:auto;color:var(--muted);font-size:12px}main{max-width:1280px;margin:0 auto;padding:24px 16px 64px}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:16px}.grid{display:grid;gap:16px}.kpis{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));margin-bottom:16px}@media (max-width: 520px){.kpis{grid-template-columns:1fr 1fr;gap:10px}.kpi .value{font-size:19px}}.two{grid-template-columns:repeat(auto-fit,minmax(420px,1fr));margin-bottom:16px}@media (max-width: 520px){.two{grid-template-columns:1fr}}.kpi .label{color:var(--text-2);font-size:12px}.kpi .value{font-size:24px;font-weight:700;margin:4px 0;font-variant-numeric:tabular-nums}.kpi .hint{color:var(--muted);font-size:12px}.kpi.critical .value{color:var(--critical)}.classes{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));margin-bottom:16px}.cls-card{border-left:4px solid var(--c)}.cls-card .head{display:flex;justify-content:space-between;align-items:baseline}.cls-card .big{font-size:20px;font-weight:700}.cls-card dl{display:grid;grid-template-columns:1fr auto;gap:4px 12px;margin:10px 0 0;font-size:13px}.cls-card dt{color:var(--text-2)}.cls-card dd{margin:0;text-align:right;font-variant-numeric:tabular-nums}.badge{display:inline-block;min-width:22px;padding:1px 7px;border-radius:999px;font-size:11px;font-weight:700;text-align:center;color:#fff}.badge.A{background:var(--cls-a)}.badge.B{background:var(--cls-b)}.badge.C{background:var(--cls-c)}.badge.none{background:var(--cls-none)}.status{font-size:12px;white-space:nowrap}.status:before{content:"●";margin-right:4px}.status.ruptura:before,.status.negativo:before{color:var(--critical)}.status.ok:before{color:var(--good)}.status.parado:before{color:var(--warning)}.status.inativo:before{color:var(--cls-none)}.toolbar{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-bottom:12px}.toolbar .spacer{flex:1}input,select,button{font:inherit;color:inherit}select{max-width:100%;text-overflow:ellipsis}input[type=text],input[type=search],input[type=date],input[type=number],select{background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:6px 10px}button{background:var(--surface-2);border:1px solid var(--border);border-radius:8px;padding:6px 14px;cursor:pointer}button:hover{border-color:var(--muted)}button.primary{background:var(--accent);border-color:var(--accent);color:#fff;font-weight:600}button.danger{color:var(--critical)}button:disabled{opacity:.5;cursor:default}.tabs{display:flex;gap:4px;border-bottom:1px solid var(--border);margin-bottom:12px;flex-wrap:wrap}.tabs button{background:none;border:none;border-bottom:2px solid transparent;border-radius:0;padding:8px 12px;color:var(--text-2)}.tabs button.active{border-bottom-color:var(--accent);color:var(--text);font-weight:600}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;font-size:13px}th,td{padding:7px 10px;border-bottom:1px solid var(--border);text-align:left;white-space:nowrap}th{color:var(--text-2);font-weight:600;cursor:pointer;-webkit-user-select:none;user-select:none;position:sticky;top:0;background:var(--surface)}th.num,td.num{text-align:right;font-variant-numeric:tabular-nums}td.name{white-space:normal;min-width:240px}tbody tr:hover{background:var(--surface-2)}.pager{display:flex;gap:8px;align-items:center;justify-content:flex-end;margin-top:8px;color:var(--text-2);font-size:12px}.chart{width:100%;height:320px}.legend{display:flex;gap:14px;font-size:12px;color:var(--text-2);margin-bottom:6px;flex-wrap:wrap}.legend i{display:inline-block;width:10px;height:10px;border-radius:2px;margin-right:5px;vertical-align:-1px}.drop{display:block;border:2px dashed var(--border);border-radius:var(--radius);padding:32px;text-align:center;color:var(--text-2);background:var(--surface);cursor:pointer}.drop.over{border-color:var(--accent)}.form-row{display:flex;gap:16px;flex-wrap:wrap;margin:16px 0}.form-row label{display:flex;flex-direction:column;gap:4px;font-size:12px;color:var(--text-2)}.alert{padding:10px 14px;border-radius:8px;margin:12px 0;border:1px solid var(--border);background:var(--surface-2)}.alert.error{border-color:var(--critical);color:var(--critical)}.alert.warn{border-color:var(--warning)}.alert ul{margin:6px 0 0;padding-left:18px}.matrix td,.matrix th{text-align:center}.matrix td.cell{cursor:pointer;font-variant-numeric:tabular-nums}.matrix td.cell.diag{color:var(--muted)}.matrix td.cell.sel{outline:2px solid var(--accent);outline-offset:-2px}.tooltip{position:fixed;pointer-events:none;z-index:100;background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:8px 10px;font-size:12px;box-shadow:0 4px 16px #00000026;max-width:320px}.empty{padding:48px;text-align:center;color:var(--text-2)}.loading{padding:48px;text-align:center;color:var(--muted)}
