:root{--bg-primary:#f4f6fa;--bg-secondary:#ffffff;--bg-card:#ffffff;--bg-card-hover:#fafbfd;--bg-input:#ffffff;--bg-glass:rgba(255,255,255,0.95);--border-subtle:#e2e8f0;--border-card:#e5e9f2;--border-focus:#4f46e5;--border-active:#4338ca;--text-primary:#0f172a;--text-secondary:#475569;--text-muted:#64748b;--text-disabled:#94a3b8;--accent-primary:#4f46e5;--accent-primary-hover:#4338ca;--accent-primary-light:#eef2ff;--accent-primary-glow:rgba(79,70,229,0.12);--color-success:#059669;--color-success-bg:#ecfdf5;--color-success-border:#a7f3d0;--color-warning:#d97706;--color-warning-bg:#fffbeb;--color-warning-border:#fde68a;--color-danger:#dc2626;--color-danger-bg:#fef2f2;--color-danger-border:#fecaca;--color-info:#0284c7;--color-info-bg:#f0f9ff;--color-info-border:#bae6fd;--color-purple:#7c3aed;--color-purple-bg:#f5f3ff;--color-purple-border:#ddd6fe;--font-sans:"Plus Jakarta Sans",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;--font-mono:"JetBrains Mono",monospace;--radius-xs:4px;--radius-sm:6px;--radius-md:10px;--radius-lg:14px;--radius-xl:18px;--radius-full:9999px;--shadow-xs:0 1px 2px 0 rgba(0,0,0,0.03);--shadow-sm:0 1px 3px 0 rgba(0,0,0,0.05),0 1px 2px -1px rgba(0,0,0,0.03);--shadow-md:0 4px 6px -1px rgba(0,0,0,0.05),0 2px 4px -2px rgba(0,0,0,0.03);--shadow-lg:0 10px 15px -3px rgba(0,0,0,0.06),0 4px 6px -4px rgba(0,0,0,0.02);--sidebar-width:68px;--header-height:68px}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-sans);background-color:var(--bg-primary);color:var(--text-primary);min-height:100vh;line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}.glass-panel{background:var(--bg-card);border:1px solid var(--border-card);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);transition:box-shadow .15s ease,border-color .15s ease}.glass-panel:hover{border-color:#d8deeb}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:#94a3b8}.app-container{display:flex;min-height:100vh;background-color:var(--bg-primary)}.main-content{flex:1 1;display:flex;flex-direction:column;min-width:0;background:var(--bg-primary)}.page-body{flex:1 1;padding:24px 32px 48px;max-width:1720px;width:100%;margin:0 auto}.h1{font-size:1.625rem;font-weight:700;letter-spacing:-.025em;line-height:1.25}.h1,.h2{color:var(--text-primary)}.h2{font-size:1.0625rem;font-weight:600;letter-spacing:-.015em}.subtitle{font-size:.875rem;color:var(--text-secondary);line-height:1.45}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-family:var(--font-sans);font-size:.84375rem;font-weight:600;padding:8px 16px;border-radius:var(--radius-md);border:1px solid transparent;cursor:pointer;transition:all .15s ease-in-out;text-decoration:none}.btn-primary{background:var(--accent-primary);color:#ffffff;box-shadow:0 1px 2px rgba(79,70,229,.2)}.btn-primary:hover{background:var(--accent-primary-hover);box-shadow:0 4px 12px rgba(79,70,229,.25);transform:translateY(-1px)}.btn-secondary{background:#ffffff;color:var(--text-primary);border:1px solid var(--border-subtle);box-shadow:var(--shadow-xs)}.btn-secondary:hover{background:#f8fafc;border-color:#cbd5e1;color:var(--text-primary)}.btn-danger{background:var(--color-danger);color:white}.btn-danger:hover{background:#b91c1c}.btn-sm{padding:6px 12px;font-size:.8125rem;border-radius:var(--radius-sm)}.input-field{width:100%;padding:8px 14px;background:var(--bg-input);border:1px solid var(--border-subtle);border-radius:var(--radius-md);color:var(--text-primary);font-family:var(--font-sans);font-size:.875rem;outline:none;transition:border-color .15s ease,box-shadow .15s ease}.input-field:focus{border-color:var(--accent-primary);box-shadow:0 0 0 3px var(--accent-primary-glow)}.badge{display:inline-flex;align-items:center;gap:5px;padding:3px 8px;border-radius:var(--radius-full);font-size:.71875rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase}.badge-success{background:var(--color-success-bg);color:var(--color-success);border:1px solid var(--color-success-border)}.badge-warning{background:var(--color-warning-bg);color:var(--color-warning);border:1px solid var(--color-warning-border)}.badge-danger{background:var(--color-danger-bg);color:var(--color-danger);border:1px solid var(--color-danger-border)}.badge-info{background:var(--color-info-bg);color:var(--color-info);border:1px solid var(--color-info-border)}.badge-purple{background:var(--color-purple-bg);color:var(--color-purple);border:1px solid var(--color-purple-border)}.badge-muted{background:#f1f5f9;color:var(--text-secondary);border:1px solid var(--border-subtle)}@keyframes fadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@keyframes pulseGlow{0%{box-shadow:0 0 0 0 rgba(220,38,38,.35)}70%{box-shadow:0 0 0 6px rgba(220,38,38,0)}to{box-shadow:0 0 0 0 rgba(220,38,38,0)}}.pulse-danger{animation:pulseGlow 2s infinite}.animate-fade-in{animation:fadeIn .2s cubic-bezier(.16,1,.3,1) forwards}.data-table{width:100%;border-collapse:separate;border-spacing:0;font-size:.84375rem}.data-table th{background:#f8fafc;color:var(--text-muted);font-weight:600;text-transform:uppercase;font-size:.71875rem;letter-spacing:.05em;padding:10px 16px;border-bottom:1px solid var(--border-subtle);text-align:left}.data-table td{padding:12px 16px;border-bottom:1px solid #f1f5f9;color:var(--text-primary)}.data-table tr:hover td{background:#fafbfd}.attention-card{background:var(--bg-card);border:1px solid var(--border-card);border-radius:var(--radius-lg);padding:18px 22px;box-shadow:var(--shadow-sm);display:flex;justify-content:space-between;align-items:center;gap:20px;transition:all .15s ease}.attention-card.critical{border-left:4px solid var(--color-danger);background:#ffffff}.attention-card.warning{border-left:4px solid var(--color-warning);background:#ffffff}.next-action-card{background:#f8fafc;border:1px solid var(--border-subtle);border-radius:var(--radius-md);padding:16px;display:flex;justify-content:space-between;align-items:center}