:root{--radius-brand:0.625rem;--radius-card:0.75rem;--sidebar-solid:#0a0e17;--sidebar-border:rgba(148,163,184,0.12);--color-indigo-50:#eef2ff;--color-indigo-100:#e0e7ff;--color-indigo-400:#818cf8;--color-indigo-500:#6366f1;--color-indigo-600:#4f46e5;--color-indigo-700:#4338ca;--color-indigo-800:#3730a3;--color-purple-400:#c084fc;--color-purple-500:#a855f7;--color-purple-600:#9333ea;--color-purple-700:#7c3aed;--color-pink-400:#f472b6;--color-pink-500:#ec4899;--color-pink-600:#db2777;--gradient-primary:linear-gradient(160deg,#312e81 0%,#4338ca 52%,#4f46e5 100%);--gradient-secondary:linear-gradient(160deg,#4338ca 0%,#4f46e5 100%);--gradient-hero:linear-gradient(165deg,#0f0a1f 0%,#221a4f 38%,#3b2f8f 72%,#4f46e5 100%);--hero-champagne:#e8e4dc;--hero-champagne-text:#1a1530;--hero-polaroid-paper:#f5f2eb;--text-heading:#0f172a;--text-primary:#1e293b;--text-secondary:#475569;--text-muted:#64748b;--text-body:#334155;--bg-primary:#ffffff;--bg-secondary:#f8fafc;--bg-input:#ffffff;--border-color:#e2e8f0;--border-focus:var(--color-indigo-600);--shadow-sm:0 1px 2px rgba(15,23,42,0.04);--shadow-md:0 2px 8px -2px rgba(15,23,42,0.06),0 1px 4px -1px rgba(15,23,42,0.04);--shadow-lg:0 12px 24px -4px rgba(15,23,42,0.08),0 4px 12px -2px rgba(15,23,42,0.04);--shadow-xl:0 20px 40px -8px rgba(15,23,42,0.12);--shadow-focus:0 0 0 3px rgba(79,70,229,0.2);}.dark{--text-heading:#ffffff;--text-primary:#f1f5f9;--text-secondary:#cbd5e1;--text-muted:#94a3b8;--text-body:#e2e8f0;--bg-primary:#0f172a;--bg-secondary:#1e293b;--bg-input:#334155;--border-color:#334155;--border-focus:var(--color-indigo-400);--shadow-focus:0 0 0 3px rgba(129,140,248,0.3);}html{overflow-x:hidden;}body{font-family:'DM Sans',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,'Helvetica Neue',Arial,sans-serif;line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;}h1,h2,h3,h4,h5,h6{font-family:'Epilogue','DM Sans',sans-serif;font-weight:600;letter-spacing:-0.02em;line-height:1.2;margin-bottom:0.5em;color:var(--text-heading);}html:not(.dark) h1{font-size:2.5rem;}html:not(.dark) h2{font-size:2rem;}html:not(.dark) h3{font-size:1.5rem;}html:not(.dark) h4{font-size:1.25rem;}.dark h1,.dark h2,.dark h3,.dark h4,.dark h5,.dark h6{letter-spacing:-0.02em;}.gradient-title{color:var(--color-indigo-700);font-weight:600;}.dark .gradient-title{color:var(--color-indigo-400);}body p,body span,body li{color:var(--text-body);}body strong,body b{color:var(--text-primary);font-weight:700;}html body input[type="text"],html body input[type="email"],html body input[type="password"],html body input[type="number"],html body input[type="date"],html body input[type="time"],html body input[type="url"],html body input[type="tel"],html body textarea,html body select{background-color:var(--bg-input);border:2px solid var(--border-color);color:var(--text-primary);padding:0.75rem 1rem;border-radius:0.5rem;transition:border-color 0.2s ease,box-shadow 0.2s ease,background-color 0.2s ease;}html body input:focus,html body textarea:focus,html body select:focus{outline:none;border-color:var(--border-focus);box-shadow:var(--shadow-focus);background-color:var(--bg-input);}html body input::placeholder,html body textarea::placeholder{color:var(--text-muted);opacity:0.7;}html body label{color:var(--text-heading);font-weight:700;margin-bottom:0.5rem;display:block;font-size:0.95rem;}html body .btn-primary{background:var(--color-indigo-600);color:white;font-weight:600;padding:0.75rem 1.5rem;border-radius:var(--radius-brand);border:none;cursor:pointer;transition:background-color 0.2s ease,box-shadow 0.2s ease,transform 0.2s ease;box-shadow:var(--shadow-sm);}html body .btn-primary:hover{background:var(--color-indigo-700);box-shadow:var(--shadow-md);transform:translateY(-1px);}html body .btn-primary:focus{outline:none;box-shadow:0 0 0 4px rgba(79,70,229,0.3);}html body .btn-primary:active{transform:translateY(0);box-shadow:var(--shadow-sm);background:var(--color-indigo-800);}html body .btn-secondary{background:var(--bg-secondary);color:var(--color-indigo-600);font-weight:600;padding:0.75rem 1.5rem;border-radius:var(--radius-brand);border:2px solid var(--color-indigo-600);cursor:pointer;transition:transform 0.3s ease,box-shadow 0.3s ease,background-color 0.3s ease,border-color 0.3s ease;}.dark .btn-secondary{background:var(--bg-input);color:var(--color-indigo-400);border-color:var(--color-indigo-400);}html body .btn-secondary:hover{background:var(--color-indigo-50);transform:translateY(-1px);border-color:var(--color-indigo-700);}html body .btn-secondary:focus{outline:none;box-shadow:0 0 0 3px rgba(79,70,229,0.2);}html body .btn-secondary:active{transform:translateY(0);background:var(--color-indigo-100);}.dark .btn-secondary:hover{background:rgba(129,140,248,0.15);border-color:#a5b4fc;}.dark .btn-secondary:focus{box-shadow:0 0 0 3px rgba(129,140,248,0.3);}.dark .btn-secondary:active{background:rgba(129,140,248,0.2);}html body .card{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--radius-card);padding:1.5rem;box-shadow:var(--shadow-sm);transition:box-shadow 0.2s ease,transform 0.2s ease,border-color 0.2s ease;}html body .card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px);border-color:#c7d2fe;}html body .card:focus-within{outline:2px solid var(--color-indigo-500);outline-offset:2px;box-shadow:0 0 0 4px rgba(79,70,229,0.1);}.dark .card:hover{border-color:var(--color-indigo-500);}.dark .card:focus-within{outline-color:var(--color-indigo-400);box-shadow:0 0 0 4px rgba(129,140,248,0.2);}html body .card-title{color:var(--text-primary);font-weight:700;font-size:1.25rem;margin-bottom:0.75rem;}html body .card-body{color:var(--text-secondary);}html body nav{background:rgba(255,255,255,0.95);backdrop-filter:blur(10px);border-bottom:1px solid var(--border-color);}html body.dark nav,.dark nav{background:rgba(30,41,59,0.95);border-bottom-color:var(--border-color);}html body nav a{color:var(--text-secondary);font-weight:500;transition:color 0.2s ease,background-color 0.2s ease;}html body nav a:hover{color:var(--color-indigo-600);background-color:rgba(79,70,229,0.1);border-radius:0.5rem;padding:0.5rem 0.75rem;}html body nav a:focus{outline:none;color:var(--color-indigo-600);background-color:rgba(79,70,229,0.1);border-radius:0.5rem;padding:0.5rem 0.75rem;box-shadow:0 0 0 2px rgba(79,70,229,0.2);}html body nav a:active{background-color:rgba(79,70,229,0.2);}.dark nav a{color:var(--text-secondary);}.dark nav a:hover{color:var(--color-indigo-400);background-color:rgba(129,140,248,0.15);}.dark nav a:focus{color:var(--color-indigo-400);background-color:rgba(129,140,248,0.15);box-shadow:0 0 0 2px rgba(129,140,248,0.3);}.dark nav a:active{background-color:rgba(129,140,248,0.25);}html body footer{background:#0f172a;color:#f8fafc;}html body.dark footer,.dark footer{background:#020617;}html body footer h3,html body footer h4{color:#ffffff;}html body footer p,html body footer li,html body footer span:not([class*="text-indigo"]){color:#e2e8f0;}html body.dark footer p,.dark footer p{color:#f1f5f9;}html body footer p.footer-intro,html body.dark footer p.footer-intro,.dark footer p.footer-intro{color:#e8eaef !important;font-weight:400;letter-spacing:0.015em;line-height:1.76;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;}html body.dark footer p.footer-intro,.dark footer p.footer-intro{color:#fafaf9 !important;text-shadow:0 1px 12px rgba(0,0,0,0.32);}html:not(.dark) body footer p.footer-intro{color:#e2e6ef !important;}html body footer a{color:#cbd5e1;transition:color 0.2s ease;}html body.dark footer a,.dark footer a{color:#e2e8f0;}html body footer a:hover{color:#ffffff;}.dark footer a:hover{color:#c7d2fe;}table{width:100%;border-collapse:collapse;}html body th{background:var(--color-indigo-50);color:var(--text-primary);font-weight:600;padding:1rem;text-align:left;border-bottom:2px solid var(--border-color);}.dark th{background:var(--bg-input);border-bottom-color:var(--border-color);}html body td{padding:1rem;border-bottom:1px solid var(--border-color);color:var(--text-secondary);}html body tr:hover{background:var(--color-indigo-50);transition:background-color 0.2s ease;}html body tr:focus-within{background:var(--color-indigo-100);outline:2px solid var(--color-indigo-500);outline-offset:-2px;}.dark tr:hover{background:rgba(129,140,248,0.15);}.dark tr:focus-within{background:rgba(129,140,248,0.2);outline:2px solid var(--color-indigo-400);}.alert{padding:1rem 1.5rem;border-radius:0.5rem;margin-bottom:1rem;border-left:4px solid;font-weight:500;}.alert-success{background:rgba(16,185,129,0.1);border-color:#10b981;color:#065f46;}.dark .alert-success{background:rgba(16,185,129,0.2);color:#6ee7b7;}.alert-error,.alert-danger{background:rgba(239,68,68,0.1);border-color:#ef4444;color:#991b1b;}.dark .alert-error,.dark .alert-danger{background:rgba(239,68,68,0.2);color:#fca5a5;}.alert-info{background:rgba(79,70,229,0.1);border-color:var(--color-indigo-600);color:var(--color-indigo-800);}.dark .alert-info{background:rgba(129,140,248,0.15);color:var(--color-indigo-400);}.alert-warning{background:rgba(245,158,11,0.1);border-color:#f59e0b;color:#92400e;}.dark .alert-warning{background:rgba(245,158,11,0.2);color:#fcd34d;}html body .text-primary{color:var(--text-heading);}html body .text-secondary{color:var(--text-body);}html body .text-visible{color:var(--text-heading);}html body .text-visible-bold{color:var(--text-heading);font-weight:700;}html body .bg-gradient-primary{background:var(--gradient-primary);}html body .bg-gradient-secondary{background:var(--gradient-secondary);}.toast-notification{position:fixed;bottom:1.5rem;right:1.5rem;padding:1rem 1.5rem;border-radius:0.75rem;color:white;font-weight:500;box-shadow:var(--shadow-xl);z-index:9999;opacity:0;transform:translateY(1rem);transition:opacity 0.3s ease,transform 0.3s ease;}.toast-notification.toast-visible{opacity:1;transform:translateY(0);}.toast-notification.toast-info{background:var(--color-indigo-600);}.toast-notification.toast-warning{background:#f59e0b;}.toast-notification.toast-error{background:#ef4444;}.surface-glass{background:rgba(21,18,38,0.4);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid rgba(255,255,255,0.06);box-shadow:0 8px 32px 0 rgba(0,0,0,0.36),inset 0 1px 0 0 rgba(255,255,255,0.05);}html:not(.dark) .surface-glass{background:rgba(255,255,255,0.6);border-color:rgba(226,232,240,0.5);box-shadow:0 8px 32px 0 rgba(15,23,42,0.08),inset 0 1px 0 0 rgba(255,255,255,0.8);}.surface-glass-solid{background:#120E22;border:1px solid rgba(255,255,255,0.06);box-shadow:inset 0 1px 0 0 rgba(255,255,255,0.05);}html:not(.dark) .surface-glass-solid{background:#f8fafc;border-color:var(--border-color);box-shadow:none;}.text-gradient-champagne{background:linear-gradient(135deg,#F4EFE6 0%,#B5AF9D 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;}html:not(.dark) .text-gradient-champagne{background:linear-gradient(135deg,#312e81 0%,#4f46e5 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;}.focus-ring-custom{outline:none;}.focus-ring-custom:focus{border-color:#E8E4DC;box-shadow:0 0 0 2px rgba(232,228,220,0.2);}html:not(.dark) .focus-ring-custom:focus{border-color:var(--color-indigo-600);box-shadow:var(--shadow-focus);}.bg-noise{position:fixed;top:0;left:0;width:100vw;height:100vh;pointer-events:none;z-index:50;opacity:0.03;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");}.reveal-node{opacity:0;transform:translateY(20px);transition:all 0.8s cubic-bezier(0.175,0.885,0.32,1.275);}.reveal-node.revealed{opacity:1;transform:translateY(0);}.stat-card-modern{border-radius:1rem;padding:1.25rem 1.5rem;transition:transform 0.2s ease,box-shadow 0.2s ease;}.stat-card-modern:hover{transform:translateY(-2px);}html body .btn-ghost{background:transparent;color:var(--text-secondary);font-weight:600;padding:0.75rem 1.5rem;border-radius:var(--radius-brand);border:1px solid var(--border-color);cursor:pointer;transition:background-color 0.2s ease,color 0.2s ease,border-color 0.2s ease;}html body .btn-ghost:hover{background:rgba(79,70,229,0.08);color:var(--color-indigo-600);border-color:var(--color-indigo-400);}.dark .btn-ghost{border-color:rgba(255,255,255,0.1);color:var(--text-muted);}.dark .btn-ghost:hover{background:rgba(255,255,255,0.05);color:#E8E4DC;border-color:rgba(232,228,220,0.2);}html body .btn-champagne{background:#E8E4DC;color:#1a1530;font-weight:700;padding:0.75rem 1.5rem;border-radius:9999px;border:none;cursor:pointer;transition:transform 0.15s ease,box-shadow 0.2s ease;box-shadow:0 0 20px rgba(232,228,220,0.2);}html body .btn-champagne:hover{transform:scale(0.98);box-shadow:0 0 30px rgba(232,228,220,0.3);}html body .btn-danger{background:#ef4444;color:white;font-weight:600;padding:0.75rem 1.5rem;border-radius:var(--radius-brand);border:none;cursor:pointer;transition:background-color 0.2s ease;}html body .btn-danger:hover{background:#dc2626;}.sidebar-modern{background:#080510;border-right:1px solid rgba(255,255,255,0.05);display:flex;flex-direction:column;}html:not(.dark) .sidebar-modern{background:#ffffff;border-right-color:var(--border-color);}.sidebar-modern .nav-item{display:flex;align-items:center;gap:0.75rem;padding:0.625rem 0.75rem;border-radius:0.5rem;font-weight:500;font-size:0.875rem;color:#94a3b8;transition:color 0.15s,background-color 0.15s;}.sidebar-modern .nav-item:hover{color:#ffffff;background:rgba(255,255,255,0.05);}.sidebar-modern .nav-item.active{color:#E8E4DC;background:rgba(255,255,255,0.05);border:1px solid rgba(255,255,255,0.05);}html:not(.dark) .sidebar-modern .nav-item{color:var(--text-secondary);}html:not(.dark) .sidebar-modern .nav-item:hover{color:var(--color-indigo-600);background:rgba(79,70,229,0.08);}html:not(.dark) .sidebar-modern .nav-item.active{color:var(--color-indigo-700);background:var(--color-indigo-50);border-color:var(--color-indigo-200);}::-webkit-scrollbar{width:8px;height:8px;}::-webkit-scrollbar-track{background:transparent;}.dark::-webkit-scrollbar-thumb{background:#1f1b36;border-radius:4px;}.dark::-webkit-scrollbar-thumb:hover{background:#E8E4DC;}@keyframes fadeIn{from{opacity:0;transform:translateY(10px);}to{opacity:1;transform:translateY(0);}}.fade-in{animation:fadeIn 0.5s ease-out;}@media (max-width:768px){html:not(.dark) h1{font-size:2rem;}html:not(.dark) h2{font-size:1.75rem;}html:not(.dark) h3{font-size:1.5rem;}}