@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap";:root{--bg-base: #151924;--bg-surface: #1e2434;--bg-card: #1e2434;--accent-blue: #3b82f6;--accent-indigo: #4f46e5;--accent-cyan: #06b6d4;--accent-green: #22c55e;--accent-amber: #f59e0b;--accent-rose: #ef4444;--text-primary: #ffffff;--text-secondary: #94a3b8;--text-muted: #64748b;--border: #2a3143;--border-hover: #3b4358;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--header-bg: #151924}[data-theme=light]{--bg-base: #f0f2f5;--bg-surface: #ffffff;--bg-card: #ffffff;--accent-blue: #2563eb;--accent-indigo: #4f46e5;--accent-cyan: #0891b2;--accent-green: #16a34a;--accent-amber: #d97706;--accent-rose: #dc2626;--text-primary: #1e293b;--text-secondary: #475569;--text-muted: #64748b;--border: #e2e8f0;--border-hover: #cbd5e1;--header-bg: #ffffff}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;scroll-behavior:smooth}body{font-family:Inter,system-ui,-apple-system,sans-serif;background:var(--bg-base);color:var(--text-primary);min-height:100vh;line-height:1.5;-webkit-font-smoothing:antialiased}.app-layout{display:grid;grid-template-rows:auto 1fr;min-height:100vh}.main-content{padding:24px;max-width:1600px;margin:0 auto;width:100%}.app-header{background:var(--header-bg);border-bottom:1px solid var(--border);padding:0 24px;position:sticky;top:0;z-index:100}.header-inner{max-width:1600px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;height:64px}.header-brand{display:flex;align-items:center;gap:12px}.header-logo{color:var(--text-primary);display:flex;align-items:center;justify-content:center}.header-title{font-size:18px;font-weight:600;color:var(--text-primary)}.header-subtitle{font-size:12px;color:var(--text-secondary)}.header-right{display:flex;align-items:center;gap:16px}.kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-bottom:24px}.kpi-card{background:var(--bg-card);border-radius:var(--radius-md);padding:20px;position:relative;border:1px solid var(--border);display:flex;flex-direction:column}.kpi-label{font-size:14px;font-weight:600;color:var(--text-primary);margin-bottom:16px}.kpi-value{font-size:42px;font-weight:700;line-height:1;color:var(--kpi-color, var(--accent-blue));margin-top:auto;text-align:center}.kpi-icon{display:none}.filters-bar{background:var(--bg-card);border-radius:var(--radius-md);padding:16px;display:flex;flex-wrap:wrap;gap:16px;align-items:flex-end;margin-bottom:24px;border:1px solid var(--border)}.filter-group{display:flex;flex-direction:column;gap:8px;min-width:160px}.filter-label{font-size:12px;font-weight:600;color:var(--text-secondary);text-transform:uppercase}.filter-input,.filter-select{background:var(--bg-base);border:1px solid var(--border);border-radius:var(--radius-sm);padding:8px 12px;color:var(--text-primary);font-size:14px;outline:none}.filter-input:focus,.filter-select:focus{border-color:var(--accent-blue)}.btn-apply{background:var(--accent-blue);border:none;border-radius:var(--radius-sm);padding:0 20px;color:#fff;font-weight:600;cursor:pointer;height:38px;align-self:flex-end}.btn-reset{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-sm);padding:0 16px;color:var(--text-primary);cursor:pointer;height:38px;align-self:flex-end}.table-container{overflow-x:auto;border-radius:var(--radius-md);background:var(--bg-card);border:1px solid var(--border)}.presence-table{width:100%;border-collapse:collapse;font-size:13px}.presence-table thead th{background:var(--bg-base);padding:12px 16px;text-align:left;font-size:11px;font-weight:600;text-transform:uppercase;color:var(--text-secondary);border-bottom:1px solid var(--border)}.presence-table tbody tr{border-bottom:1px solid var(--border)}.presence-table tbody td{padding:12px 16px;color:var(--text-primary)}.panel{background:var(--bg-card);border-radius:var(--radius-md);padding:20px;border:1px solid var(--border);margin-bottom:24px}.panel h3{font-size:16px;font-weight:600;margin-bottom:16px;color:var(--text-primary)}.badge{display:inline-flex;align-items:center;padding:4px 8px;border-radius:var(--radius-sm);font-size:12px;font-weight:600}.badge-nn{background:var(--accent-amber);color:#fff}.badge-recognized{background:var(--accent-green);color:#fff}.pagination{display:flex;align-items:center;justify-content:flex-end;gap:8px;padding:16px}.pagination-info{font-size:13px;color:var(--text-secondary);margin-right:auto}.btn-page{background:var(--bg-base);border:1px solid var(--border);border-radius:var(--radius-sm);padding:6px 12px;color:var(--text-primary);font-size:13px;cursor:pointer}.btn-page:disabled{opacity:.5}.charts-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:24px}.chart-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-md);padding:20px}.chart-card-title{font-size:16px;font-weight:600;color:var(--text-primary);margin-bottom:16px}.section-title{display:none}@media (max-width: 768px){.main-content{padding:16px}.kpi-grid{grid-template-columns:repeat(2,1fr)}.filters-bar{flex-direction:column;align-items:stretch}.filter-group,.btn-apply,.btn-reset{width:100%;min-width:unset}.header-inner{flex-direction:column;height:auto;padding:12px 0;gap:12px}.charts-grid{grid-template-columns:1fr}}@media (max-width: 480px){.kpi-grid{grid-template-columns:1fr}}.collector-status{display:flex;align-items:center;gap:8px;font-size:13px}.status-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.status-dot.ok{background:var(--accent-green)}.status-dot.error{background:var(--accent-rose)}.status-dot.degraded{background:var(--accent-amber)}.status-dot.unknown{background:var(--text-muted)}.collector-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-md);padding:16px 20px;display:flex;align-items:center;gap:24px;flex-wrap:wrap;margin-bottom:24px}.collector-field{display:flex;flex-direction:column;gap:2px}.collector-field-label{font-size:11px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;font-weight:600}.collector-field-value{font-size:14px;color:var(--text-primary);font-weight:600}
