:root{--color-primary-50:#eff6ff;--color-primary-100:#dbeafe;--color-primary-200:#bfdbfe;--color-primary-300:#93c5fd;--color-primary-400:#60a5fa;--color-primary-500:#3b82f6;--color-primary-600:#2563eb;--color-primary-700:#1d4ed8;--color-primary-800:#1e40af;--color-primary-900:#1e3a8a;--color-success-50:#f0fdf4;--color-success-100:#dcfce7;--color-success-200:#bbf7d0;--color-success-300:#86efac;--color-success-400:#4ade80;--color-success-500:#22c55e;--color-success-600:#16a34a;--color-success-700:#15803d;--color-success-800:#166534;--color-success-900:#14532d;--color-warning-50:#fffbeb;--color-warning-100:#fef3c7;--color-warning-200:#fde68a;--color-warning-300:#fcd34d;--color-warning-400:#fbbf24;--color-warning-500:#f59e0b;--color-warning-600:#d97706;--color-warning-700:#b45309;--color-warning-800:#92400e;--color-warning-900:#78350f;--color-danger-50:#fef2f2;--color-danger-100:#fee2e2;--color-danger-200:#fecaca;--color-danger-300:#fca5a5;--color-danger-400:#f87171;--color-danger-500:#ef4444;--color-danger-600:#dc2626;--color-danger-700:#b91c1c;--color-danger-800:#991b1b;--color-danger-900:#7f1d1d;--color-gray-50:#f9fafb;--color-gray-100:#f3f4f6;--color-gray-200:#e5e7eb;--color-gray-300:#d1d5db;--color-gray-400:#9ca3af;--color-gray-500:#6b7280;--color-gray-600:#4b5563;--color-gray-700:#374151;--color-gray-800:#1f2937;--color-gray-900:#111827;--color-gray-950:#030712;--color-slate-50:#f8fafc;--color-slate-100:#f1f5f9;--color-slate-200:#e2e8f0;--color-slate-300:#cbd5e1;--color-slate-400:#94a3b8;--color-slate-500:#64748b;--color-slate-600:#475569;--color-slate-700:#334155;--color-slate-800:#1e293b;--color-slate-900:#0f172a;--color-slate-950:#020617;--color-purple-500:#a855f7;--color-purple-600:#9333ea;--color-cyan-500:#06b6d4;--color-cyan-600:#0891b2;--status-online:var(--color-success-500);--status-running:var(--color-success-500);--status-idle:var(--color-warning-500);--status-stopped:var(--color-danger-500);--status-offline:var(--color-gray-500);--status-inactive:var(--color-purple-600);--status-no-data:var(--color-gray-400);--font-sans:"Plus Jakarta Sans","Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;--font-mono:"JetBrains Mono","Fira Code","Consolas",monospace;--font-size-xs:0.75rem;--font-size-sm:0.875rem;--font-size-base:1rem;--font-size-lg:1.125rem;--font-size-xl:1.25rem;--font-size-2xl:1.5rem;--font-size-3xl:1.875rem;--font-size-4xl:2.25rem;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--line-height-tight:1.25;--line-height-normal:1.5;--line-height-relaxed:1.625;--spacing-0:0;--spacing-1:0.25rem;--spacing-2:0.5rem;--spacing-3:0.75rem;--spacing-4:1rem;--spacing-5:1.25rem;--spacing-6:1.5rem;--spacing-8:2rem;--spacing-10:2.5rem;--spacing-12:3rem;--spacing-16:4rem;--radius-sm:0.25rem;--radius-md:0.375rem;--radius-lg:0.5rem;--radius-xl:0.75rem;--radius-2xl:1rem;--radius-full:9999px;--shadow-xs:0 1px 2px 0 #0000000d;--shadow-sm:0 1px 3px 0 #0000001a,0 1px 2px -1px #0000001a;--shadow-md:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a;--shadow-xl:0 20px 25px -5px #0000001a,0 8px 10px -6px #0000001a;--transition-fast:150ms ease;--transition-normal:200ms ease;--transition-slow:300ms ease;--z-dropdown:100;--z-sticky:200;--z-fixed:300;--z-modal-backdrop:400;--z-modal:500;--z-popover:600;--z-tooltip:700;--z-toast:800;--bg-primary:var(--color-slate-50);--bg-secondary:#fff;--bg-tertiary:var(--color-gray-100);--bg-hover:var(--color-gray-50);--bg-active:var(--color-primary-50);--text-primary:var(--color-gray-900);--text-secondary:var(--color-gray-600);--text-tertiary:var(--color-gray-500);--text-muted:var(--color-gray-400);--text-inverse:#fff;--border-color:var(--color-gray-200);--border-color-strong:var(--color-gray-300);--card-bg:#fff;--card-border:var(--color-gray-200);--card-shadow:var(--shadow-sm);--input-bg:#fff;--input-border:var(--color-gray-300);--input-focus-ring:var(--color-primary-500)}[data-theme=dark]{--bg-primary:var(--color-slate-900);--bg-secondary:var(--color-slate-800);--bg-tertiary:var(--color-slate-700);--bg-hover:var(--color-slate-700);--bg-active:var(--color-primary-900);--text-primary:var(--color-gray-100);--text-secondary:var(--color-gray-300);--text-tertiary:var(--color-gray-400);--text-muted:var(--color-gray-500);--text-inverse:var(--color-gray-900);--border-color:var(--color-slate-700);--border-color-strong:var(--color-slate-600);--card-bg:var(--color-slate-800);--card-border:var(--color-slate-700);--card-shadow:0 4px 6px -1px #0000004d;--input-bg:var(--color-slate-700);--input-border:var(--color-slate-600)}*{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:16px}body{background-color:#f8fafc;background-color:var(--bg-primary);color:#111827;color:var(--text-primary);font-family:Plus Jakarta Sans,Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:1rem;font-size:var(--font-size-base);line-height:1.5;line-height:var(--line-height-normal)}.text-xs{font-size:.75rem;font-size:var(--font-size-xs)}.text-sm{font-size:.875rem;font-size:var(--font-size-sm)}.text-base{font-size:1rem;font-size:var(--font-size-base)}.text-lg{font-size:1.125rem;font-size:var(--font-size-lg)}.text-xl{font-size:1.25rem;font-size:var(--font-size-xl)}.text-2xl{font-size:1.5rem;font-size:var(--font-size-2xl)}.text-3xl{font-size:1.875rem;font-size:var(--font-size-3xl)}.text-4xl{font-size:2.25rem;font-size:var(--font-size-4xl)}.font-normal{font-weight:400;font-weight:var(--font-weight-normal)}.font-medium{font-weight:500;font-weight:var(--font-weight-medium)}.font-semibold{font-weight:600;font-weight:var(--font-weight-semibold)}.font-bold{font-weight:700;font-weight:var(--font-weight-bold)}.font-mono{font-family:JetBrains Mono,Fira Code,Consolas,monospace;font-family:var(--font-mono)}.text-primary{color:#111827;color:var(--text-primary)}.text-secondary{color:#4b5563;color:var(--text-secondary)}.text-tertiary{color:#6b7280;color:var(--text-tertiary)}.text-muted{color:#9ca3af;color:var(--text-muted)}.text-success{color:#16a34a;color:var(--color-success-600)}.text-warning{color:#d97706;color:var(--color-warning-600)}.text-danger{color:#dc2626;color:var(--color-danger-600)}.card{background:#fff;background:var(--card-bg);border:1px solid #e5e7eb;border:1px solid var(--card-border);border-radius:.75rem;border-radius:var(--radius-xl);box-shadow:0 1px 3px 0 #0000001a,0 1px 2px -1px #0000001a;box-shadow:var(--card-shadow);overflow:hidden}.card-header{align-items:center;border-bottom:1px solid #e5e7eb;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;padding:1rem 1.5rem;padding:var(--spacing-4) var(--spacing-6)}.card-title{color:#111827;color:var(--text-primary);font-size:1.125rem;font-size:var(--font-size-lg);font-weight:600;font-weight:var(--font-weight-semibold)}.card-body{padding:1.5rem;padding:var(--spacing-6)}.card-footer{background:#f3f4f6;background:var(--bg-tertiary);border-top:1px solid #e5e7eb;border-top:1px solid var(--border-color);padding:1rem 1.5rem;padding:var(--spacing-4) var(--spacing-6)}.btn{align-items:center;border:1px solid #0000;border-radius:.5rem;border-radius:var(--radius-lg);cursor:pointer;display:inline-flex;font-family:Plus Jakarta Sans,Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-family:var(--font-sans);font-size:.875rem;font-size:var(--font-size-sm);font-weight:500;font-weight:var(--font-weight-medium);gap:.5rem;gap:var(--spacing-2);justify-content:center;line-height:1.25;line-height:var(--line-height-tight);padding:.5rem 1rem;padding:var(--spacing-2) var(--spacing-4);transition:all .15s ease;transition:all var(--transition-fast);white-space:nowrap}.btn:disabled{cursor:not-allowed;opacity:.5}.btn-primary{background:#2563eb;background:var(--color-primary-600);border-color:#2563eb;border-color:var(--color-primary-600);color:#fff}.btn-primary:hover:not(:disabled){background:#1d4ed8;background:var(--color-primary-700);border-color:#1d4ed8;border-color:var(--color-primary-700)}.btn-secondary{background:#fff;background:var(--bg-secondary);border-color:#e5e7eb;border-color:var(--border-color);color:#111827;color:var(--text-primary)}.btn-secondary:hover:not(:disabled){background:#f9fafb;background:var(--bg-hover);border-color:#d1d5db;border-color:var(--border-color-strong)}.btn-success{background:#16a34a;background:var(--color-success-600);border-color:#16a34a;border-color:var(--color-success-600);color:#fff}.btn-success:hover:not(:disabled){background:#15803d;background:var(--color-success-700)}.btn-danger{background:#dc2626;background:var(--color-danger-600);border-color:#dc2626;border-color:var(--color-danger-600);color:#fff}.btn-danger:hover:not(:disabled){background:#b91c1c;background:var(--color-danger-700)}.btn-warning{background:#f59e0b;background:var(--color-warning-500);border-color:#f59e0b;border-color:var(--color-warning-500);color:#111827;color:var(--color-gray-900)}.btn-warning:hover:not(:disabled){background:#d97706;background:var(--color-warning-600)}.btn-ghost{background:#0000;color:#4b5563;color:var(--text-secondary)}.btn-ghost:hover:not(:disabled){background:#f9fafb;background:var(--bg-hover);color:#111827;color:var(--text-primary)}.btn-sm{font-size:.75rem;font-size:var(--font-size-xs);padding:.25rem .75rem;padding:var(--spacing-1) var(--spacing-3)}.btn-lg{font-size:1rem;font-size:var(--font-size-base);padding:.75rem 1.5rem;padding:var(--spacing-3) var(--spacing-6)}.btn-icon{height:36px;padding:.5rem;padding:var(--spacing-2);width:36px}.form-group{margin-bottom:1rem;margin-bottom:var(--spacing-4)}.form-label{color:#4b5563;color:var(--text-secondary);display:block;font-size:.875rem;font-size:var(--font-size-sm);font-weight:500;font-weight:var(--font-weight-medium);margin-bottom:.25rem;margin-bottom:var(--spacing-1)}.form-input,.form-select,.form-textarea{background:#fff;background:var(--input-bg);border:1px solid #d1d5db;border:1px solid var(--input-border);border-radius:.5rem;border-radius:var(--radius-lg);color:#111827;color:var(--text-primary);font-family:Plus Jakarta Sans,Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-family:var(--font-sans);font-size:.875rem;font-size:var(--font-size-sm);padding:.5rem .75rem;padding:var(--spacing-2) var(--spacing-3);transition:border-color .15s ease,box-shadow .15s ease;transition:border-color var(--transition-fast),box-shadow var(--transition-fast);width:100%}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:#3b82f6;border-color:var(--input-focus-ring);box-shadow:0 0 0 3px #3b82f61a;outline:none}.form-input::placeholder{color:#9ca3af;color:var(--text-muted)}.form-input-error{border-color:#ef4444;border-color:var(--color-danger-500)}.form-error{color:#dc2626;color:var(--color-danger-600)}.form-error,.form-help{font-size:.75rem;font-size:var(--font-size-xs);margin-top:.25rem;margin-top:var(--spacing-1)}.form-help{color:#6b7280;color:var(--text-tertiary)}.badge{align-items:center;border-radius:9999px;border-radius:var(--radius-full);display:inline-flex;font-size:.75rem;font-size:var(--font-size-xs);font-weight:500;font-weight:var(--font-weight-medium);gap:.25rem;gap:var(--spacing-1);padding:.25rem .5rem;padding:var(--spacing-1) var(--spacing-2)}.badge-online,.badge-running{background:#dcfce7;background:var(--color-success-100);color:#15803d;color:var(--color-success-700)}.badge-idle{background:#fef3c7;background:var(--color-warning-100);color:#b45309;color:var(--color-warning-700)}.badge-stopped{background:#fee2e2;background:var(--color-danger-100);color:#b91c1c;color:var(--color-danger-700)}.badge-offline{background:#f3f4f6;background:var(--color-gray-100);color:#374151;color:var(--color-gray-700)}.badge-inactive{background:#a855f71a;color:#9333ea;color:var(--color-purple-600)}.status-dot{border-radius:50%;flex-shrink:0;height:8px;width:8px}.status-dot-online,.status-dot-running{background:#22c55e;background:var(--status-online);box-shadow:0 0 0 2px #22c55e33}.status-dot-idle{background:#f59e0b;background:var(--status-idle);box-shadow:0 0 0 2px #f59e0b33}.status-dot-stopped{background:#ef4444;background:var(--status-stopped);box-shadow:0 0 0 2px #ef444433}.status-dot-offline{background:#6b7280;background:var(--status-offline)}.status-dot-inactive{background:#9333ea;background:var(--status-inactive)}.status-dot-pulse{animation:pulse 2s infinite}@keyframes pulse{0%{box-shadow:0 0 0 0 #22c55e66}70%{box-shadow:0 0 0 10px #22c55e00}to{box-shadow:0 0 0 0 #22c55e00}}.stat-card{display:flex;flex-direction:column;gap:.25rem;gap:var(--spacing-1)}.stat-label{color:#6b7280;color:var(--text-tertiary);font-size:.75rem;font-size:var(--font-size-xs);font-weight:500;font-weight:var(--font-weight-medium);letter-spacing:.05em;text-transform:uppercase}.stat-value{font-feature-settings:"tnum";color:#111827;color:var(--text-primary);font-size:1.5rem;font-size:var(--font-size-2xl);font-variant-numeric:tabular-nums;font-weight:700;font-weight:var(--font-weight-bold)}.stat-trend{align-items:center;display:inline-flex;font-size:.75rem;font-size:var(--font-size-xs);font-weight:500;font-weight:var(--font-weight-medium);gap:.25rem;gap:var(--spacing-1)}.stat-trend-up{color:#16a34a;color:var(--color-success-600)}.stat-trend-down{color:#dc2626;color:var(--color-danger-600)}.table-container{overflow-x:auto}.table{border-collapse:collapse;width:100%}.table td,.table th{border-bottom:1px solid #e5e7eb;border-bottom:1px solid var(--border-color);padding:.75rem 1rem;padding:var(--spacing-3) var(--spacing-4);text-align:left}.table th{background:#f3f4f6;background:var(--bg-tertiary);color:#4b5563;color:var(--text-secondary);font-size:.75rem;font-size:var(--font-size-xs);font-weight:600;font-weight:var(--font-weight-semibold);letter-spacing:.05em;text-transform:uppercase}.table td{color:#111827;color:var(--text-primary);font-size:.875rem;font-size:var(--font-size-sm)}.table tbody tr:hover{background:#f9fafb;background:var(--bg-hover)}.modal-backdrop{animation:fadeIn .15s ease;animation:fadeIn var(--transition-fast);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#00000080;inset:0;position:fixed;z-index:400;z-index:var(--z-modal-backdrop)}.modal{animation:slideUp .2s ease;animation:slideUp var(--transition-normal);background:#fff;background:var(--card-bg);border-radius:1rem;border-radius:var(--radius-2xl);box-shadow:0 20px 25px -5px #0000001a,0 8px 10px -6px #0000001a;box-shadow:var(--shadow-xl);left:50%;max-height:90vh;max-width:90vw;overflow:hidden;position:fixed;top:50%;transform:translate(-50%,-50%);z-index:500;z-index:var(--z-modal)}.modal-header{align-items:center;border-bottom:1px solid #e5e7eb;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;padding:1.5rem;padding:var(--spacing-6)}.modal-title{font-size:1.25rem;font-size:var(--font-size-xl);font-weight:600;font-weight:var(--font-weight-semibold)}.modal-close{background:none;border:none;border-radius:.5rem;border-radius:var(--radius-lg);color:#6b7280;color:var(--text-tertiary);cursor:pointer;padding:.5rem;padding:var(--spacing-2);transition:all .15s ease;transition:all var(--transition-fast)}.modal-close:hover{background:#f9fafb;background:var(--bg-hover);color:#111827;color:var(--text-primary)}.modal-body{overflow-y:auto;padding:1.5rem;padding:var(--spacing-6)}.modal-footer{background:#f3f4f6;background:var(--bg-tertiary);border-top:1px solid #e5e7eb;border-top:1px solid var(--border-color);display:flex;gap:.75rem;gap:var(--spacing-3);justify-content:flex-end;padding:1rem 1.5rem;padding:var(--spacing-4) var(--spacing-6)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translate(-50%,-45%)}to{opacity:1;transform:translate(-50%,-50%)}}.skeleton{animation:shimmer 1.5s infinite;background:linear-gradient(90deg,#f3f4f6 25%,#f9fafb 50%,#f3f4f6 75%);background:linear-gradient(90deg,var(--bg-tertiary) 25%,var(--bg-hover) 50%,var(--bg-tertiary) 75%);background-size:200% 100%;border-radius:.375rem;border-radius:var(--radius-md)}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.spinner{animation:spin .8s linear infinite;border:2px solid #e5e7eb;border-top-color:#2563eb;border:2px solid var(--border-color);border-radius:50%;border-top-color:var(--color-primary-600);height:24px;width:24px}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-1{gap:.25rem;gap:var(--spacing-1)}.gap-2{gap:.5rem;gap:var(--spacing-2)}.gap-3{gap:.75rem;gap:var(--spacing-3)}.gap-4{gap:1rem;gap:var(--spacing-4)}.gap-6{gap:1.5rem;gap:var(--spacing-6)}.p-2{padding:.5rem;padding:var(--spacing-2)}.p-4{padding:1rem;padding:var(--spacing-4)}.p-6{padding:1.5rem;padding:var(--spacing-6)}.px-4{padding-left:1rem;padding-left:var(--spacing-4);padding-right:1rem;padding-right:var(--spacing-4)}.py-2{padding-bottom:.5rem;padding-bottom:var(--spacing-2);padding-top:.5rem;padding-top:var(--spacing-2)}.m-0{margin:0}.mt-2{margin-top:.5rem;margin-top:var(--spacing-2)}.mt-4{margin-top:1rem;margin-top:var(--spacing-4)}.mb-2{margin-bottom:.5rem;margin-bottom:var(--spacing-2)}.mb-4{margin-bottom:1rem;margin-bottom:var(--spacing-4)}.rounded-md{border-radius:.375rem;border-radius:var(--radius-md)}.rounded-lg{border-radius:.5rem;border-radius:var(--radius-lg)}.rounded-xl{border-radius:.75rem;border-radius:var(--radius-xl)}.rounded-full{border-radius:9999px;border-radius:var(--radius-full)}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sr-only{clip:rect(0,0,0,0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}@media (max-width:768px){.hide-mobile{display:none!important}.mobile-full-width{max-width:100%!important;width:100%!important}.mobile-stack{flex-direction:column!important}.mobile-padding{padding:.75rem!important;padding:var(--spacing-3)!important}}@media (max-width:480px){.mobile-text-sm{font-size:.875rem!important;font-size:var(--font-size-sm)!important}.mobile-hide{display:none!important}}.container{margin:0 auto;max-width:1200px;padding:0 1rem;padding:0 var(--spacing-4);width:100%}@media (max-width:768px){.container{padding:0 .75rem;padding:0 var(--spacing-3)}}.grid{grid-gap:1rem;grid-gap:var(--spacing-4);display:grid;gap:1rem;gap:var(--spacing-4)}.grid-2{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:repeat(3,1fr)}.grid-4{grid-template-columns:repeat(4,1fr)}@media (max-width:1024px){.grid-4{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:var(--font-sans);margin:0}#root,body,html{height:100%}code{font-family:var(--font-mono)}.error-message{background-color:var(--color-danger-50);border:1px solid var(--color-danger-200);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);margin-bottom:var(--spacing-4);padding:var(--spacing-3);text-align:center}.error-message,.error-text{color:var(--color-danger-700);font-weight:var(--font-weight-medium)}.warning-message{background-color:var(--color-warning-50);border:1px solid var(--color-warning-200);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);color:var(--color-warning-700);font-weight:var(--font-weight-medium);margin-bottom:var(--spacing-4);padding:var(--spacing-3);text-align:center}.loading-container{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:20px}.spinner{display:inline-block;position:relative}.spinner-circle{animation:spin 1s linear infinite;border:3px solid #f3f3f3;border-radius:50%;border-top-color:#0984e3;display:inline-block}.spinner-small .spinner-circle{border-width:2px;height:20px;width:20px}.spinner-medium .spinner-circle{border-width:3px;height:40px;width:40px}.spinner-large .spinner-circle{border-width:4px;height:60px;width:60px}.loading-message{color:#666;font-size:14px;margin-top:12px;text-align:center}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@media (prefers-color-scheme:dark){.spinner-circle{border-color:#74b9ff #444 #444}.loading-message{color:#ccc}}.app{display:flex;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;height:100vh;overflow:hidden}.app-nav{background-color:#2c3e50;color:#fff;flex-shrink:0;overflow-y:auto;padding:1.5rem;width:250px}.app-nav h1{border-bottom:1px solid #34495e;font-size:1.5rem;margin-top:0;padding-bottom:1rem}.app-nav .nav-section{margin-bottom:1.25rem}.app-nav .nav-section-title{border-radius:4px;color:#95a5a6;cursor:pointer;font-size:.8rem;letter-spacing:.08em;margin:1rem 0 .5rem;padding:.5rem 0;text-transform:uppercase;transition:background-color .2s ease}.app-nav .nav-section-title:hover{background-color:#ffffff0d;color:#bdc3c7}.app-nav ul{background-color:#0000001a;border-radius:4px;list-style:none;margin:0;padding:.5rem 0}.app-nav li a{border-radius:4px;color:#bdc3c7;display:block;margin:0 .5rem;padding:.55rem 1rem;text-decoration:none;transition:color .2s,padding-left .2s,background-color .2s}.app-nav li a:hover{background-color:#ffffff14;color:#fff}.app-nav li a.active{background:#ffffff1f;color:#ecf0f1}.app-content{background-color:#f5f5f5;display:flex;flex:1 1;flex-direction:column;overflow:hidden}.app-main{background-color:#fff;flex:1 1;overflow:auto}.logout-btn{background-color:#e74c3c;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:1rem;margin-top:2rem;padding:.75rem;transition:background-color .2s ease;width:100%}.logout-btn:hover{background-color:#c0392b}.nav-section-title.superadmin-section{background:linear-gradient(135deg,#dc2626,#b91c1c);border:1px solid #dc2626;box-shadow:0 2px 4px #dc26264d;color:#fff!important;font-weight:600}.nav-section-title.superadmin-section:hover{background:linear-gradient(135deg,#b91c1c,#991b1b);box-shadow:0 4px 8px #dc262666;transform:translateY(-1px)}.superadmin-section+ul{background-color:#dc26260d!important;border:1px solid #dc262633}.superadmin-section+ul li a{border-left:3px solid #0000;color:#fca5a5!important;transition:all .2s ease}.superadmin-section+ul li a:hover{background-color:#dc262626!important;border-left-color:#dc2626;color:#fff!important}.superadmin-section+ul li a.active{background-color:#dc262633!important;border-left-color:#dc2626;color:#fff!important}