body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}:root{--nav-bg-light:#ffffffd9;--nav-bg-dark:#0f172ae6;--primary-blue:#3b82f6;--primary-blue-dark:#2563eb;--accent-cyan:#06b6d4;--accent-teal:#14b8a6;--text-primary-light:#0f172a;--text-secondary-light:#64748b;--text-primary-dark:#f8fafc;--text-secondary-dark:#94a3b8;--gradient-ocean:linear-gradient(135deg,#3b82f6,#06b6d4 50%,#10b981);--gradient-sunset:linear-gradient(135deg,#f97316,#ef4444);--shadow-light:0 4px 20px #00000014;--shadow-dark:0 4px 20px #0006;--border-light:#0000000f;--border-dark:#ffffff14}.navbar{backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);background:#ffffffd9;background:var(--nav-bg-light);border-bottom:1px solid #0000000f;border-bottom:1px solid var(--border-light);height:72px;height:var(--nav-height);left:0;position:fixed;right:0;top:0;transition:all .3s cubic-bezier(.4,0,.2,1);z-index:1000}.navbar.scrolled{background:#fffffffa;box-shadow:0 4px 20px #00000014;box-shadow:var(--shadow-light)}.navbar.dark-mode{background:#0f172ae6;background:var(--nav-bg-dark);border-bottom:1px solid #ffffff14;border-bottom:1px solid var(--border-dark)}.navbar.dark-mode.scrolled{background:#0a0f1efa;box-shadow:0 4px 20px #0006;box-shadow:var(--shadow-dark)}.navbar-container{align-items:center;display:flex;gap:2rem;height:100%;justify-content:space-between;margin:0 auto;max-width:1600px;padding:0 2rem}.navbar-brand{flex-shrink:0}.brand-link{align-items:center;display:flex;gap:.75rem;text-decoration:none;transition:transform .2s ease}.brand-link:hover{transform:scale(1.02)}.brand-logo{align-items:center;background:linear-gradient(135deg,#3b82f6,#06b6d4 50%,#10b981);background:var(--gradient-ocean);border-radius:12px;box-shadow:0 4px 12px #0ea5e94d;display:flex;height:44px;justify-content:center;overflow:hidden;position:relative;width:44px}.brand-logo:before{animation:shimmer 3s infinite;background:linear-gradient(45deg,#0000,#ffffff1a,#0000);content:"";height:200%;left:-50%;position:absolute;top:-50%;transform:rotate(45deg);width:200%}.logo-wave{filter:drop-shadow(0 2px 4px rgba(0,0,0,.1));font-size:1.5rem}.brand-text{display:flex;flex-direction:column}.brand-text h1{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#3b82f6,#06b6d4 50%,#10b981);background:var(--gradient-ocean);-webkit-background-clip:text;background-clip:text;font-size:1.4rem;font-weight:800;letter-spacing:-.5px;line-height:1.2;margin:0}.brand-tagline{color:#64748b;color:var(--text-secondary-light);font-size:.7rem;font-weight:500;letter-spacing:1px;text-transform:uppercase}.navbar.dark-mode .brand-tagline{color:#94a3b8;color:var(--text-secondary-dark)}.navbar-center{flex:1 1;justify-content:center}.navbar-center,.navbar-nav{align-items:center;display:flex}.navbar-nav{background:#00000008;border:1px solid #0000000f;border:1px solid var(--border-light);border-radius:16px;gap:.25rem;list-style:none;margin:0;padding:.5rem}.navbar.dark-mode .navbar-nav{background:#ffffff08;border-color:#ffffff14;border-color:var(--border-dark)}.nav-item,.nav-link{position:relative}.nav-link{align-items:center;border-radius:12px;color:#64748b;color:var(--text-secondary-light);display:flex;font-size:.9rem;font-weight:500;gap:.5rem;padding:.6rem 1rem;text-decoration:none;transition:all .2s ease;white-space:nowrap}.navbar.dark-mode .nav-link{color:#94a3b8;color:var(--text-secondary-dark)}.nav-link:hover{background:#0ea5e914;color:#3b82f6;color:var(--primary-blue)}.navbar.dark-mode .nav-link:hover{background:#06b6d41f;color:#06b6d4;color:var(--accent-cyan)}.nav-link.active{background:linear-gradient(135deg,#3b82f6,#06b6d4 50%,#10b981);background:var(--gradient-ocean);box-shadow:0 4px 12px #0ea5e959;color:#fff}.navbar.dark-mode .nav-link.active{color:#fff}.nav-icon{font-size:1.1rem;line-height:1}.nav-label{font-size:.85rem}.nav-indicator{display:none}.navbar-actions{align-items:center;display:flex;flex-shrink:0;gap:1rem}.theme-toggle-btn{align-items:center;background:#0000;border:1px solid #0000000f;border:1px solid var(--border-light);border-radius:12px;color:#64748b;color:var(--text-secondary-light);cursor:pointer;display:flex;height:40px;justify-content:center;transition:all .2s ease;width:40px}.navbar.dark-mode .theme-toggle-btn{border-color:#ffffff14;border-color:var(--border-dark);color:#94a3b8;color:var(--text-secondary-dark)}.theme-toggle-btn:hover{background:#0000000d;border-color:#3b82f6;border-color:var(--primary-blue);color:#3b82f6;color:var(--primary-blue);transform:rotate(15deg)}.navbar.dark-mode .theme-toggle-btn:hover{background:#ffffff0d;border-color:#06b6d4;border-color:var(--accent-cyan);color:#06b6d4;color:var(--accent-cyan)}.theme-icon{font-size:1.2rem}.user-menu{align-items:center;background:#00000008;border:1px solid #0000000f;border:1px solid var(--border-light);border-radius:16px;display:flex;gap:.75rem;padding:.5rem .5rem .5rem .75rem;transition:all .2s ease}.navbar.dark-mode .user-menu{background:#ffffff08;border-color:#ffffff14;border-color:var(--border-dark)}.user-menu:hover{border-color:#3b82f6;border-color:var(--primary-blue)}.user-profile{gap:.75rem}.user-avatar,.user-profile{align-items:center;display:flex}.user-avatar{background:linear-gradient(135deg,#3b82f6,#06b6d4 50%,#10b981);background:var(--gradient-ocean);border-radius:10px;box-shadow:0 2px 8px #0ea5e94d;color:#fff;font-size:.95rem;font-weight:700;height:36px;justify-content:center;width:36px}.user-details{display:flex;flex-direction:column}.user-name{color:#0f172a;color:var(--text-primary-light);font-size:.9rem;font-weight:600;line-height:1.2}.navbar.dark-mode .user-name{color:#f8fafc;color:var(--text-primary-dark)}.user-role{color:#64748b;color:var(--text-secondary-light);font-size:.7rem;letter-spacing:.5px;text-transform:uppercase}.navbar.dark-mode .user-role{color:#94a3b8;color:var(--text-secondary-dark)}.logout-btn{align-items:center;background:#0000;border:none;border-radius:10px;color:#64748b;color:var(--text-secondary-light);cursor:pointer;display:flex;height:36px;justify-content:center;transition:all .2s ease;width:36px}.navbar.dark-mode .logout-btn{color:#94a3b8;color:var(--text-secondary-dark)}.logout-btn:hover{background:#ef44441a;color:#ef4444}.logout-icon{height:18px;width:18px}.mobile-menu-btn{align-items:center;background:#0000;border:1px solid #0000000f;border:1px solid var(--border-light);border-radius:10px;cursor:pointer;display:none;flex-direction:column;gap:4px;height:40px;justify-content:center;padding:.5rem;width:40px}.navbar.dark-mode .mobile-menu-btn{border-color:#ffffff14;border-color:var(--border-dark)}.hamburger-line{background-color:#0f172a;background-color:var(--text-primary-light);border-radius:2px;display:block;height:2px;transition:all .3s ease;width:18px}.navbar.dark-mode .hamburger-line{background-color:#f8fafc;background-color:var(--text-primary-dark)}.mobile-menu-btn.active .hamburger-line:first-child{transform:rotate(45deg) translate(4px,4px)}.mobile-menu-btn.active .hamburger-line:nth-child(2){opacity:0}.mobile-menu-btn.active .hamburger-line:nth-child(3){transform:rotate(-45deg) translate(4px,-4px)}.mobile-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#00000080;bottom:0;display:none;left:0;position:fixed;right:0;top:0;z-index:999}@media (max-width:1200px){.nav-label{display:none}.nav-link{padding:.6rem .75rem}.navbar-nav{gap:0}}@media (max-width:900px){.mobile-menu-btn{display:flex}.mobile-overlay{display:block}.navbar-center{backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);background:#ffffffd9;background:var(--nav-bg-light);border-left:1px solid #0000000f;border-left:1px solid var(--border-light);box-shadow:-10px 0 30px #0000001a;flex-direction:column;height:100vh;justify-content:flex-start;padding:calc(72px + 1rem) 1.5rem 2rem;padding:calc(var(--nav-height) + 1rem) 1.5rem 2rem;position:fixed;right:-100%;top:0;transition:right .3s cubic-bezier(.4,0,.2,1);width:280px;z-index:1001}.navbar.dark-mode .navbar-center{background:#0f172ae6;background:var(--nav-bg-dark);border-left-color:#ffffff14;border-left-color:var(--border-dark)}.navbar-center.active{right:0}.navbar-nav{background:#0000;border:none;flex-direction:column;gap:.25rem;padding:.75rem;width:100%}.nav-link{justify-content:flex-start;padding:.85rem 1rem;width:100%}.nav-label{display:block}.user-details{display:none}.user-menu{padding:.35rem}}@media (max-width:500px){.navbar-container{padding:0 1rem}.brand-text{display:none}.brand-logo{height:40px;width:40px}}.vanta-background-layer{height:100%;left:0;pointer-events:none;position:fixed;top:0;width:100%;z-index:-1}.vanta-background-layer canvas{pointer-events:none!important}.vanta-content-layer{min-height:100vh;pointer-events:auto;position:relative;z-index:1}.dashboard{min-height:calc(100vh - var(--nav-height));padding:var(--content-padding);transition:all var(--transition-slow)}.dashboard-header{animation:slideUp .5s ease-out;margin-bottom:2.5rem;text-align:center}.dashboard-header h1{-webkit-text-fill-color:#0000;background:var(--gradient-primary);-webkit-background-clip:text;background-clip:text;font-size:clamp(2rem,4vw,2.8rem);font-weight:800;letter-spacing:-.5px;margin-bottom:.5rem}.dark-mode .dashboard-header h1{background:linear-gradient(135deg,#60a5fa,#22d3ee 50%,#34d399);-webkit-background-clip:text;background-clip:text}.dashboard-header p{color:var(--text-secondary);font-size:1.1rem;font-weight:500}.dashboard-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(3,1fr);margin:0 auto;max-width:1400px}.metric-card{align-items:center;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);background:var(--gradient-glass);border:1px solid var(--border-color);border-radius:var(--card-radius);box-shadow:var(--shadow-lg);display:flex;gap:1.25rem;overflow:hidden;padding:1.5rem;position:relative;transition:all var(--transition-base)}.dark-mode .metric-card{background:var(--gradient-glass);border-color:var(--border-strong)}.metric-card:before{background:var(--gradient-primary);content:"";height:3px;left:0;position:absolute;right:0;top:0;transform:scaleX(0);transition:transform var(--transition-base)}.metric-card:hover{transform:translateY(-6px)}.dark-mode .metric-card:hover,.metric-card:hover{box-shadow:var(--shadow-xl),var(--shadow-glow)}.metric-card:hover:before{transform:scaleX(1)}.metric-icon{align-items:center;background:var(--gradient-primary);border-radius:14px;box-shadow:var(--shadow-md);display:flex;flex-shrink:0;font-size:2.5rem;height:64px;justify-content:center;transition:all var(--transition-base);width:64px}.dark-mode .metric-icon{box-shadow:var(--shadow-glow)}.metric-card:hover .metric-icon{box-shadow:var(--shadow-glow);transform:scale(1.1) rotate(-5deg)}.metric-content{flex:1 1;min-width:0}.metric-content h3{color:var(--text-secondary);font-size:.9rem;font-weight:600;letter-spacing:.5px;margin:0 0 .5rem;text-transform:uppercase}.metric-value{-webkit-text-fill-color:#0000;background:var(--gradient-primary);-webkit-background-clip:text;background-clip:text;font-size:2rem;font-weight:800;line-height:1.2;margin:0}.dark-mode .metric-value{background:linear-gradient(135deg,#60a5fa,#22d3ee);-webkit-background-clip:text;background-clip:text}.metric-trend{align-items:center;display:inline-flex;font-size:.85rem;font-weight:600;gap:.25rem;margin-top:.25rem}.dark-mode .metric-trend,.metric-trend{color:var(--success-500)}.activity-panel{animation:slideUp .5s ease-out .1s both;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);background:var(--gradient-glass);border:1px solid var(--border-color);border-radius:var(--card-radius);box-shadow:var(--shadow-lg);grid-column:span 2;padding:1.5rem}.dark-mode .activity-panel{background:var(--gradient-glass);border-color:var(--border-strong)}.activity-panel h3{align-items:center;border-bottom:2px solid var(--border-color);color:var(--text-primary);display:flex;font-size:1.25rem;font-weight:700;gap:.5rem;margin:0 0 1rem;padding-bottom:.75rem}.activity-list{display:flex;flex-direction:column;gap:.75rem}.activity-item{align-items:center;background:var(--bg-tertiary);border:1px solid #0000;border-radius:12px;display:flex;justify-content:space-between;padding:1rem;transition:all var(--transition-base)}.dark-mode .activity-item{background:#33415580}.activity-item:hover{background:var(--bg-secondary);border-color:var(--primary-400);transform:translateX(4px)}.dark-mode .activity-item:hover{background:#334155cc;border-color:var(--primary-400)}.activity-time{color:var(--primary-500);font-size:.85rem;font-weight:600;white-space:nowrap}.dark-mode .activity-time{color:var(--primary-400)}.activity-text{color:var(--text-primary);flex:1 1;font-weight:500;margin-left:1rem}.quick-actions{animation:slideUp .5s ease-out .2s both;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);background:var(--gradient-glass);border:1px solid var(--border-color);border-radius:var(--card-radius);box-shadow:var(--shadow-lg);grid-column:span 3;padding:1.5rem}.dark-mode .quick-actions{background:var(--gradient-glass);border-color:var(--border-strong)}.quick-actions h3{border-bottom:2px solid var(--border-color);color:var(--text-primary);font-size:1.25rem;font-weight:700;margin:0 0 1.25rem;padding-bottom:.75rem}.action-buttons{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(4,1fr)}.action-btn{background:var(--gradient-primary);border-radius:14px;box-shadow:var(--shadow-md);color:#fff;flex-direction:column;font-size:1rem;gap:.75rem;min-height:110px;overflow:hidden;padding:1.5rem 1rem;position:relative}.action-btn:before{background:linear-gradient(90deg,#0000,#fff3,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s;width:100%}.action-btn:hover:before{left:100%}.action-btn:hover{box-shadow:var(--shadow-glow);transform:translateY(-4px)}.action-btn.large{min-height:130px;padding:2rem 1.5rem}.action-icon{font-size:2rem}.action-text{font-weight:600;line-height:1.3;text-align:center}.clickable{cursor:pointer}.metric-card.clickable:hover{border-color:var(--primary-400)}.activity-item.clickable{cursor:pointer}@media (max-width:1200px){.dashboard-grid{grid-template-columns:repeat(2,1fr)}.activity-panel,.quick-actions{grid-column:span 2}.action-buttons{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.dashboard{padding:1rem}.dashboard-grid{grid-template-columns:1fr}.activity-panel,.quick-actions{grid-column:span 1}.action-buttons{gap:.75rem;grid-template-columns:1fr 1fr}.action-btn{min-height:100px;padding:1.25rem .75rem}.action-btn.large{min-height:110px;padding:1.5rem 1rem}}@media (max-width:480px){.dashboard-header h1{font-size:1.75rem}.metric-card{padding:1.25rem}.metric-icon{font-size:2rem;height:52px;width:52px}.metric-value{font-size:1.5rem}.action-buttons{grid-template-columns:1fr}}.auth-container{align-items:center;background:#0a0a1a;display:flex;justify-content:center;min-height:100vh;overflow:hidden;position:relative}.auth-container>canvas{height:100%!important;left:0;position:absolute!important;top:0;width:100%!important;z-index:0}.auth-content{border-radius:28px;box-shadow:0 25px 100px #00000080,0 0 0 1px #ffffff1a,inset 0 0 80px #8b5cf60d;gap:0;margin:1rem auto;max-width:1050px;min-height:580px;width:95%;z-index:2}.auth-content,.auth-info{display:flex;overflow:hidden;position:relative}.auth-info{background:linear-gradient(135deg,#6366f1f2,#8b5cf6f2 50%,#a855f7f2);flex:1 1;flex-direction:column;justify-content:center;padding:2.5rem 2rem}.auth-info:before{background:radial-gradient(circle,#ffffff26 0,#0000 70%);height:100%;right:-50%;top:-50%;width:100%}.auth-info:after,.auth-info:before{content:"";pointer-events:none;position:absolute}.auth-info:after{background:radial-gradient(circle,#ffffff1a 0,#0000 60%);bottom:-30%;height:80%;left:-30%;width:80%}.auth-info h3{color:#fff;font-size:1.85rem;font-weight:800;line-height:1.3;margin-bottom:1.75rem;position:relative;text-shadow:0 2px 20px #0003;z-index:1}.auth-info ul{list-style:none;margin:0;padding:0;position:relative;z-index:1}.auth-info li{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1f;border:1px solid #ffffff2e;border-radius:16px;display:flex;gap:1rem;margin-bottom:1.25rem;padding:1.1rem 1.25rem;transition:all .3s ease}.auth-info li:hover{background:#ffffff2e;box-shadow:0 8px 25px #00000026;transform:translateX(8px)}.info-icon{filter:drop-shadow(0 2px 8px rgba(0,0,0,.15));flex-shrink:0;font-size:1.8rem}.auth-info strong{color:#fff;display:block;font-size:1rem;font-weight:700;margin-bottom:.15rem}.auth-info p{color:#ffffffeb;font-size:.85rem;line-height:1.35;margin:0;opacity:.9}.auth-card{backdrop-filter:blur(30px);-webkit-backdrop-filter:blur(30px);background:#fffffff7;display:flex;flex:1.15 1;flex-direction:column;justify-content:center;padding:2.25rem 2.75rem}.auth-header{margin-bottom:1.25rem;text-align:center}.logo{align-items:center;display:flex;gap:.6rem;justify-content:center;margin-bottom:.4rem}.logo-icon{animation:float 3s ease-in-out infinite;filter:drop-shadow(0 4px 12px rgba(99,102,241,.4));font-size:2.3rem}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}.logo h1{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#6366f1,#8b5cf6 50%,#a855f7);-webkit-background-clip:text;background-clip:text;font-size:1.9rem;font-weight:800;letter-spacing:-.5px;margin:0}.subtitle{color:#64748b;font-size:.85rem;font-weight:500;margin:0}.auth-form h2{color:#1e293b;font-size:1.5rem;font-weight:800;margin-bottom:.35rem;text-align:center}.form-subtitle{color:#64748b;font-size:.88rem;font-weight:500;margin-bottom:1.35rem;text-align:center}.form-group{margin-bottom:1.1rem}.form-group label{color:#374151;display:block;font-size:.88rem;font-weight:600;margin-bottom:.45rem}.form-group input{background:#f8fafc;border:2px solid #e2e8f0;border-radius:12px;box-sizing:border-box;color:#1e293b;font-size:.95rem;padding:.8rem 1rem;transition:all .25s ease;width:100%}.form-group input:focus{background:#fff;border-color:#8b5cf6;box-shadow:0 0 0 4px #8b5cf61f;outline:none}.form-group input::placeholder{color:#94a3b8}.error-message{background:linear-gradient(135deg,#ef44441a,#ef44440d);border:1px solid #ef444440;border-radius:12px;color:#dc2626}.error-message,.success-message{align-items:center;display:flex;font-size:.88rem;font-weight:500;gap:.5rem;margin-bottom:1.1rem;padding:.75rem 1rem}.success-message{background:linear-gradient(135deg,#10b9811a,#10b9810d);border:1px solid #10b98140;border-radius:12px;color:#059669}.auth-button{align-items:center;background:linear-gradient(135deg,#6366f1,#8b5cf6 50%,#a855f7);border:none;border-radius:12px;box-shadow:0 8px 25px #6366f159;color:#fff;cursor:pointer;display:flex;font-size:1rem;font-weight:700;gap:.5rem;justify-content:center;overflow:hidden;padding:.9rem 1.5rem;position:relative;transition:all .3s ease;width:100%}.auth-button:before{background:linear-gradient(90deg,#0000,#ffffff40,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s ease;width:100%}.auth-button:hover:before{left:100%}.auth-button:hover:not(:disabled){box-shadow:0 12px 35px #6366f173;transform:translateY(-2px)}.auth-button:active:not(:disabled){transform:translateY(0)}.auth-button:disabled{cursor:not-allowed;opacity:.7}.spinner{animation:spin .8s linear infinite;border:2px solid #ffffff4d;border-radius:50%;border-top-color:#fff;height:18px;width:18px}.auth-footer{color:#64748b;font-size:.9rem;font-weight:500;margin-top:1.35rem;text-align:center}.form-extras{display:flex;justify-content:flex-end;margin-bottom:.6rem}.forgot-link{color:#8b5cf6;font-size:.85rem;font-weight:600;text-decoration:none;transition:all .2s ease}.forgot-link:hover{color:#7c3aed}.auth-link{color:#8b5cf6;font-weight:700;text-decoration:none;transition:all .2s ease}.auth-link:hover{color:#7c3aed;text-decoration:underline}.password-strength{align-items:center;display:flex;gap:.5rem;margin-top:.45rem}.strength-bars{display:flex;flex:1 1;gap:4px}.bar{background:#e2e8f0;border-radius:2px;flex:1 1;height:4px;transition:all .3s ease}.bar.active:first-child{background:linear-gradient(90deg,#ef4444,#f87171)}.bar.active:nth-child(2){background:linear-gradient(90deg,#f59e0b,#fbbf24)}.bar.active:nth-child(3){background:linear-gradient(90deg,#10b981,#34d399)}.strength-label{color:#64748b;font-size:.72rem;font-weight:600;min-width:50px}.step-indicator{justify-content:center;margin-bottom:1.25rem;padding:.5rem 0}.step,.step-indicator{align-items:center;display:flex}.step{flex-direction:column;gap:.35rem}.step-number{align-items:center;background:#f1f5f9;border:2px solid #e2e8f0;border-radius:50%;color:#94a3b8;display:flex;font-size:.9rem;font-weight:700;height:38px;justify-content:center;transition:all .3s ease;width:38px}.step.active .step-number{background:linear-gradient(135deg,#6366f1,#8b5cf6);border-color:#0000;box-shadow:0 4px 15px #6366f166;color:#fff}.step-label{color:#94a3b8;font-size:.72rem;font-weight:500;transition:all .3s ease}.step.active .step-label{color:#8b5cf6;font-weight:700}.step-line{background:#e2e8f0;border-radius:2px;height:3px;margin:0 .4rem 1rem;width:45px}.otp-input{font-size:1.4rem;font-weight:700;letter-spacing:.5rem;text-align:center}.form-hint{color:#94a3b8;display:block;font-size:.78rem;margin-top:.45rem}@media (max-width:968px){.auth-content{flex-direction:column;max-width:480px;min-height:auto}.auth-info{order:-1;padding:1.75rem 1.5rem}.auth-info h3{font-size:1.4rem;margin-bottom:1.25rem;text-align:center}.auth-info li{padding:.9rem 1rem}.auth-card{padding:1.75rem 1.5rem}}@media (max-width:640px){.auth-content{border-radius:22px;margin:.5rem auto;width:94%}.auth-info{padding:1.5rem 1.25rem}.auth-info h3{font-size:1.25rem}.auth-info li{gap:.75rem;margin-bottom:.9rem;padding:.8rem .9rem}.info-icon{font-size:1.5rem}.auth-info strong{font-size:.9rem}.auth-info p{font-size:.78rem}.auth-card{padding:1.5rem 1.25rem}.logo h1{font-size:1.6rem}.logo-icon{font-size:1.9rem}.auth-form h2{font-size:1.3rem}.form-group input{font-size:.9rem;padding:.7rem .85rem}.auth-button{font-size:.95rem;padding:.8rem 1.2rem}.step-number{font-size:.85rem;height:34px;width:34px}.step-line{width:32px}}@media (max-width:400px){.auth-content{border-radius:18px;width:96%}.auth-info li{flex-direction:column;gap:.5rem;text-align:center}.auth-card{padding:1.25rem 1rem}}:root{--primary-50:#eff6ff;--primary-100:#dbeafe;--primary-200:#bfdbfe;--primary-300:#93c5fd;--primary-400:#60a5fa;--primary-500:#3b82f6;--primary-600:#2563eb;--primary-700:#1d4ed8;--primary-800:#1e40af;--primary-900:#1e3a8a;--accent-50:#ecfeff;--accent-100:#cffafe;--accent-200:#a5f3fc;--accent-300:#67e8f9;--accent-400:#22d3ee;--accent-500:#06b6d4;--accent-600:#0891b2;--accent-700:#0e7490;--accent-800:#155e75;--accent-900:#164e63;--secondary-50:#f5f3ff;--secondary-100:#ede9fe;--secondary-200:#ddd6fe;--secondary-300:#c4b5fd;--secondary-400:#a78bfa;--secondary-500:#8b5cf6;--secondary-600:#7c3aed;--secondary-700:#6d28d9;--secondary-800:#5b21b6;--secondary-900:#4c1d95;--success-50:#f0fdf4;--success-100:#dcfce7;--success-500:#22c55e;--success-600:#16a34a;--success-700:#15803d;--warning-50:#fffbeb;--warning-100:#fef3c7;--warning-500:#f59e0b;--warning-600:#d97706;--warning-700:#b45309;--error-50:#fef2f2;--error-100:#fee2e2;--error-500:#ef4444;--error-600:#dc2626;--error-700:#b91c1c;--info-50:#eff6ff;--info-100:#dbeafe;--info-500:#3b82f6;--info-600:#2563eb;--gray-50:#f8fafc;--gray-100:#f1f5f9;--gray-200:#e2e8f0;--gray-300:#cbd5e1;--gray-400:#94a3b8;--gray-500:#64748b;--gray-600:#475569;--gray-700:#334155;--gray-800:#1e293b;--gray-900:#0f172a;--gray-950:#020617;--bg-primary:#f8fafc;--bg-secondary:#fff;--bg-tertiary:#f1f5f9;--bg-elevated:#fff;--bg-overlay:#fffffff2;--text-primary:#0f172a;--text-secondary:#475569;--text-muted:#94a3b8;--text-inverse:#fff;--border-color:#e2e8f0;--border-strong:#cbd5e1;--border-subtle:#f1f5f9;--shadow-color:#0f172a14;--shadow-color-strong:#0f172a26;--gradient-primary:linear-gradient(135deg,#3b82f6,#06b6d4 50%,#10b981);--gradient-secondary:linear-gradient(135deg,#8b5cf6,#ec4899);--gradient-ocean:linear-gradient(135deg,#0ea5e9,#06b6d4 50%,#14b8a6);--gradient-sunset:linear-gradient(135deg,#f97316,#ec4899 50%,#8b5cf6);--gradient-glass:linear-gradient(135deg,#ffffffeb,#ffffffd9);--gradient-glass-hover:linear-gradient(135deg,#fffffffa,#ffffffeb);--gradient-card:linear-gradient(180deg,#fff,#f8fafc);--gradient-surface:linear-gradient(135deg,#f8fafc,#f1f5f9);--hover-bg:#3b82f614;--active-bg:#3b82f61f;--focus-ring:#3b82f666;--nav-height:72px;--sidebar-width:280px;--content-padding:2rem;--card-padding:1.5rem;--card-radius:16px;--button-radius:12px;--input-radius:10px;--shadow-xs:0 1px 2px #0f172a0a;--shadow-sm:0 1px 3px #0f172a0f,0 1px 2px #0f172a0a;--shadow-md:0 4px 6px -1px #0f172a14,0 2px 4px -1px #0f172a0a;--shadow-lg:0 10px 15px -3px #0f172a1a,0 4px 6px -2px #0f172a0d;--shadow-xl:0 20px 25px -5px #0f172a1a,0 10px 10px -5px #0f172a0a;--shadow-2xl:0 25px 50px -12px #0f172a40;--shadow-glow:0 0 24px #3b82f640;--shadow-glow-accent:0 0 24px #06b6d440;--shadow-glow-success:0 0 24px #22c55e40;--shadow-inner:inset 0 2px 4px #0f172a0d;--transition-fast:150ms cubic-bezier(0.4,0,0.2,1);--transition-base:200ms cubic-bezier(0.4,0,0.2,1);--transition-slow:300ms cubic-bezier(0.4,0,0.2,1);--transition-bounce:500ms cubic-bezier(0.68,-0.55,0.265,1.55);--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}.dark-mode,[data-theme=dark]{--bg-primary:#0f172a;--bg-secondary:#1e293b;--bg-tertiary:#334155;--bg-elevated:#1e293b;--bg-overlay:#0f172af2;--text-primary:#f8fafc;--text-secondary:#cbd5e1;--text-muted:#64748b;--text-inverse:#0f172a;--border-color:#94a3b826;--border-strong:#94a3b840;--border-subtle:#94a3b814;--shadow-color:#0000004d;--shadow-color-strong:#00000080;--gradient-glass:linear-gradient(135deg,#1e293be6,#1e293bbf);--gradient-glass-hover:linear-gradient(135deg,#334155f2,#1e293be6);--gradient-card:linear-gradient(180deg,#1e293b,#0f172a);--gradient-surface:linear-gradient(135deg,#1e293b,#0f172a);--hover-bg:#3b82f626;--active-bg:#3b82f640;--focus-ring:#60a5fa80;--shadow-xs:0 1px 2px #0003;--shadow-sm:0 1px 3px #0000004d,0 1px 2px #0003;--shadow-md:0 4px 6px -1px #00000059,0 2px 4px -1px #00000040;--shadow-lg:0 10px 15px -3px #0006,0 4px 6px -2px #0000004d;--shadow-xl:0 20px 25px -5px #00000073,0 10px 10px -5px #0000004d;--shadow-2xl:0 25px 50px -12px #0009;--shadow-glow:0 0 30px #3b82f659;--shadow-glow-accent:0 0 30px #06b6d459;--shadow-inner:inset 0 2px 4px #0003}*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#f8fafc;background:var(--bg-primary);color:#0f172a;color:var(--text-primary);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;line-height:1.6;overflow-x:hidden;transition:background .3s cubic-bezier(.4,0,.2,1),color .3s cubic-bezier(.4,0,.2,1);transition:background var(--transition-slow),color var(--transition-slow)}.App{min-height:100vh;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1);transition:all var(--transition-slow)}.App:not(.has-vanta){background:#f8fafc;background:var(--bg-primary)}.main-content{min-height:calc(100vh - 72px);min-height:calc(100vh - var(--nav-height));padding-top:72px;padding-top:var(--nav-height);position:relative;transition:all .2s cubic-bezier(.4,0,.2,1);transition:all var(--transition-base);z-index:1}.content-glass-container{backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid #e2e8f0;border:1px solid var(--border-color);border-radius:16px;border-radius:var(--card-radius);margin:1rem;padding:1.5rem;padding:var(--card-padding)}.content-glass-container,.page-placeholder{background:linear-gradient(135deg,#ffffffeb,#ffffffd9);background:var(--gradient-glass)}.page-placeholder{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#94a3b8;color:var(--text-muted);display:flex;flex-direction:column;font-size:2rem;height:calc(100vh - 72px);height:calc(100vh - var(--nav-height));justify-content:center}h1,h2,h3,h4,h5,h6{color:#0f172a;color:var(--text-primary);font-weight:700;line-height:1.3}h1{font-size:clamp(2rem,4vw,2.5rem)}h2{font-size:clamp(1.5rem,3vw,2rem)}h3{font-size:clamp(1.25rem,2.5vw,1.5rem)}a{color:#3b82f6;color:var(--primary-500);text-decoration:none;transition:color .15s cubic-bezier(.4,0,.2,1);transition:color var(--transition-fast)}a:hover{color:#2563eb;color:var(--primary-600)}button{border:none;cursor:pointer;font-family:inherit;outline:none}.card,button{transition:all .2s cubic-bezier(.4,0,.2,1);transition:all var(--transition-base)}.card{background:#fff;background:var(--bg-secondary);border:1px solid #e2e8f0;border:1px solid var(--border-color);border-radius:16px;border-radius:var(--card-radius);box-shadow:0 4px 6px -1px #0f172a14,0 2px 4px -1px #0f172a0a;box-shadow:var(--shadow-md);padding:1.5rem}.card:hover{box-shadow:0 10px 15px -3px #0f172a1a,0 4px 6px -2px #0f172a0d;box-shadow:var(--shadow-lg);transform:translateY(-2px)}.glass-card{backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);background:linear-gradient(135deg,#ffffffeb,#ffffffd9);background:var(--gradient-glass);border:1px solid #e2e8f0;border:1px solid var(--border-color);border-radius:16px;border-radius:var(--card-radius);padding:1.5rem}.btn-primary,.glass-card{box-shadow:0 4px 6px -1px #0f172a14,0 2px 4px -1px #0f172a0a;box-shadow:var(--shadow-md)}.btn-primary{align-items:center;background:linear-gradient(135deg,#0ea5e9,#06b6d4 50%,#14b8a6);background:var(--gradient-ocean);border-radius:12px;border-radius:var(--button-radius);color:#fff;display:inline-flex;font-weight:600;gap:.5rem;justify-content:center;padding:.75rem 1.5rem;transition:all .2s cubic-bezier(.4,0,.2,1);transition:all var(--transition-base)}.btn-primary:hover{box-shadow:0 0 24px #3b82f640;box-shadow:var(--shadow-glow);transform:translateY(-2px)}.btn-secondary{align-items:center;background:#0000;border:2px solid #3b82f6;border:2px solid var(--primary-500);border-radius:12px;border-radius:var(--button-radius);color:#3b82f6;color:var(--primary-500);display:inline-flex;font-weight:600;gap:.5rem;justify-content:center;padding:.75rem 1.5rem;transition:all .2s cubic-bezier(.4,0,.2,1);transition:all var(--transition-base)}.btn-secondary:hover{background:#3b82f6;background:var(--primary-500);color:#fff;transform:translateY(-2px)}input,select,textarea{background:#fff;background:var(--bg-secondary);border:2px solid #e2e8f0;border:2px solid var(--border-color);border-radius:12px;border-radius:var(--button-radius);color:#0f172a;color:var(--text-primary);font-family:inherit;font-size:1rem;padding:.75rem 1rem;transition:all .2s cubic-bezier(.4,0,.2,1);transition:all var(--transition-base)}input:focus,select:focus,textarea:focus{border-color:#3b82f6;border-color:var(--primary-500);box-shadow:0 0 0 3px #0ea5e91a;outline:none}::-webkit-scrollbar-track{background:#f1f5f9;border-radius:4px}::-webkit-scrollbar-thumb{background:linear-gradient(135deg,#0ea5e9,#06b6d4 50%,#14b8a6);background:var(--gradient-ocean);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--gradient-ocean-dark)}::selection{background:#bfdbfe;background:var(--primary-200);color:#1e3a8a;color:var(--primary-900)}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.animate-pulse{animation:pulse 2s infinite}.animate-spin{animation:spin 1s linear infinite}.animate-slideUp{animation:slideUp .3s ease-out}.animate-fadeIn{animation:fadeIn .3s ease-out}.skeleton{animation:shimmer 1.5s infinite;background:linear-gradient(90deg,#f1f5f9 25%,#fff 50%,#f1f5f9 75%);background:linear-gradient(90deg,var(--bg-tertiary) 25%,var(--bg-secondary) 50%,var(--bg-tertiary) 75%);background-size:200% 100%;border-radius:8px}.container{margin:0 auto;max-width:1400px;padding:0 2rem;padding:0 var(--content-padding);width:100%}@media (max-width:768px){:root{--content-padding:1rem}}code{background:#f1f5f9;background:var(--bg-tertiary);border-radius:4px;font-family:Fira Code,Monaco,Consolas,monospace;font-size:.9em;padding:.2rem .4rem}:focus-visible{outline:2px solid #3b82f6;outline:2px solid var(--primary-500);outline-offset:2px}@media print{.no-print{display:none!important}}.leaflet-image-layer,.leaflet-layer,.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-pane,.leaflet-pane>canvas,.leaflet-pane>svg,.leaflet-tile,.leaflet-tile-container,.leaflet-zoom-box{left:0;position:absolute;top:0}.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-tile{-webkit-user-drag:none;-webkit-user-select:none;user-select:none}.leaflet-tile::selection{background:#0000}.leaflet-safari .leaflet-tile{image-rendering:-webkit-optimize-contrast}.leaflet-safari .leaflet-tile-container{height:1600px;-webkit-transform-origin:0 0;width:1600px}.leaflet-marker-icon,.leaflet-marker-shadow{display:block}.leaflet-container .leaflet-overlay-pane svg{max-height:none!important;max-width:none!important}.leaflet-container .leaflet-marker-pane img,.leaflet-container .leaflet-shadow-pane img,.leaflet-container .leaflet-tile,.leaflet-container .leaflet-tile-pane img,.leaflet-container img.leaflet-image-layer{max-height:none!important;max-width:none!important;padding:0;width:auto}.leaflet-container img.leaflet-tile{mix-blend-mode:plus-lighter}.leaflet-container.leaflet-touch-zoom{touch-action:pan-x pan-y}.leaflet-container.leaflet-touch-drag{touch-action:none;touch-action:pinch-zoom}.leaflet-container.leaflet-touch-drag.leaflet-touch-zoom{touch-action:none}.leaflet-container{-webkit-tap-highlight-color:transparent}.leaflet-container a{-webkit-tap-highlight-color:rgba(51,181,229,.4)}.leaflet-tile{filter:inherit;visibility:hidden}.leaflet-tile-loaded{visibility:inherit}.leaflet-zoom-box{box-sizing:border-box;height:0;width:0;z-index:800}.leaflet-overlay-pane svg{-moz-user-select:none}.leaflet-pane{z-index:400}.leaflet-tile-pane{z-index:200}.leaflet-overlay-pane{z-index:400}.leaflet-shadow-pane{z-index:500}.leaflet-marker-pane{z-index:600}.leaflet-tooltip-pane{z-index:650}.leaflet-popup-pane{z-index:700}.leaflet-map-pane canvas{z-index:100}.leaflet-map-pane svg{z-index:200}.leaflet-vml-shape{height:1px;width:1px}.lvml{behavior:url(#default#VML);display:inline-block;position:absolute}.leaflet-control{pointer-events:visiblePainted;pointer-events:auto;position:relative;z-index:800}.leaflet-bottom,.leaflet-top{pointer-events:none;position:absolute;z-index:1000}.leaflet-top{top:0}.leaflet-right{right:0}.leaflet-bottom{bottom:0}.leaflet-left{left:0}.leaflet-control{clear:both;float:left}.leaflet-right .leaflet-control{float:right}.leaflet-top .leaflet-control{margin-top:10px}.leaflet-bottom .leaflet-control{margin-bottom:10px}.leaflet-left .leaflet-control{margin-left:10px}.leaflet-right .leaflet-control{margin-right:10px}.leaflet-fade-anim .leaflet-popup{opacity:0;transition:opacity .2s linear}.leaflet-fade-anim .leaflet-map-pane .leaflet-popup{opacity:1}.leaflet-zoom-animated{transform-origin:0 0}svg.leaflet-zoom-animated{will-change:transform}.leaflet-zoom-anim .leaflet-zoom-animated{transition:transform .25s cubic-bezier(0,0,.25,1)}.leaflet-pan-anim .leaflet-tile,.leaflet-zoom-anim .leaflet-tile{transition:none}.leaflet-zoom-anim .leaflet-zoom-hide{visibility:hidden}.leaflet-interactive{cursor:pointer}.leaflet-grab{cursor:grab}.leaflet-crosshair,.leaflet-crosshair .leaflet-interactive{cursor:crosshair}.leaflet-control,.leaflet-popup-pane{cursor:auto}.leaflet-dragging .leaflet-grab,.leaflet-dragging .leaflet-grab .leaflet-interactive,.leaflet-dragging .leaflet-marker-draggable{cursor:move;cursor:grabbing}.leaflet-image-layer,.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-pane>svg path,.leaflet-tile-container{pointer-events:none}.leaflet-image-layer.leaflet-interactive,.leaflet-marker-icon.leaflet-interactive,.leaflet-pane>svg path.leaflet-interactive,svg.leaflet-image-layer.leaflet-interactive path{pointer-events:visiblePainted;pointer-events:auto}.leaflet-container{background:#ddd;outline-offset:1px}.leaflet-container a{color:#0078a8}.leaflet-zoom-box{background:#ffffff80;border:2px dotted #38f}.leaflet-container{font-family:Helvetica Neue,Arial,Helvetica,sans-serif;font-size:12px;font-size:.75rem;line-height:1.5}.leaflet-bar{border-radius:4px;box-shadow:0 1px 5px #000000a6}.leaflet-bar a{background-color:#fff;border-bottom:1px solid #ccc;color:#000;display:block;height:26px;line-height:26px;text-align:center;text-decoration:none;width:26px}.leaflet-bar a,.leaflet-control-layers-toggle{background-position:50% 50%;background-repeat:no-repeat;display:block}.leaflet-bar a:focus,.leaflet-bar a:hover{background-color:#f4f4f4}.leaflet-bar a:first-child{border-top-left-radius:4px;border-top-right-radius:4px}.leaflet-bar a:last-child{border-bottom:none;border-bottom-left-radius:4px;border-bottom-right-radius:4px}.leaflet-bar a.leaflet-disabled{background-color:#f4f4f4;color:#bbb;cursor:default}.leaflet-touch .leaflet-bar a{height:30px;line-height:30px;width:30px}.leaflet-touch .leaflet-bar a:first-child{border-top-left-radius:2px;border-top-right-radius:2px}.leaflet-touch .leaflet-bar a:last-child{border-bottom-left-radius:2px;border-bottom-right-radius:2px}.leaflet-control-zoom-in,.leaflet-control-zoom-out{font:700 18px Lucida Console,Monaco,monospace;text-indent:1px}.leaflet-touch .leaflet-control-zoom-in,.leaflet-touch .leaflet-control-zoom-out{font-size:22px}.leaflet-control-layers{background:#fff;border-radius:5px;box-shadow:0 1px 5px #0006}.leaflet-control-layers-toggle{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABoAAAAaCAQAAAADQ4RFAAACf0lEQVR4AY1UM3gkARTePdvdoTxXKc+qTl3aU5U6b2Kbkz3Gtq3Zw6ziLGNPzrYx7946Tr6/ee/XeCQ4D3ykPtL5tHno4n0d/h3+xfuWHGLX81cn7r0iTNzjr7LrlxCqPtkbTQEHeqOrTy4Yyt3VCi/IOB0v7rVC7q45Q3Gr5K6jt+3Gl5nCoDD4MtO+j96Wu8atmhGqcNGHObuf8OM/x3AMx38+4Z2sPqzCxRFK2aF2e5Jol56XTLyggAMTL56XOMoS1W4pOyjUcGGQdZxU6qRh7B9Zp+PfpOFlqt0zyDZckPi1ttmIp03jX8gyJ8a/PG2yutpS/Vol7peZIbZcKBAEEheEIAgFbDkz5H6Zrkm2hVWGiXKiF4Ycw0RWKdtC16Q7qe3X4iOMxruonzegJzWaXFrU9utOSsLUmrc0YjeWYjCW4PDMADElpJSSQ0vQvA1Tm6/JlKnqFs1EGyZiFCqnRZTEJJJiKRYzVYzJck2Rm6P4iH+cmSY0YzimYa8l0EtTODFWhcMIMVqdsI2uiTvKmTisIDHJ3od5GILVhBCarCfVRmo4uTjkhrhzkiBV7SsaqS+TzrzM1qpGGUFt28pIySQHR6h7F6KSwGWm97ay+Z+ZqMcEjEWebE7wxCSQwpkhJqoZA5ivCdZDjJepuJ9IQjGGUmuXJdBFUygxVqVsxFsLMbDe8ZbDYVCGKxs+W080max1hFCarCfV+C1KATwcnvE9gRRuMP2prdbWGowm1KB1y+zwMMENkM755cJ2yPDtqhTI6ED1M/82yIDtC/4j4BijjeObflpO9I9MwXTCsSX8jWAFeHr05WoLTJ5G8IQVS/7vwR6ohirYM7f6HzYpogfS3R2OAAAAAElFTkSuQmCC);height:36px;width:36px}.leaflet-retina .leaflet-control-layers-toggle{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADQAAAA0CAQAAABvcdNgAAAEsklEQVR4AWL4TydIhpZK1kpWOlg0w3ZXP6D2soBtG42jeI6ZmQTHzAxiTbSJsYLjO9HhP+WOmcuhciVnmHVQcJnp7DFvScowZorad/+V/fVzMdMT2g9Cv9guXGv/7pYOrXh2U+RRR3dSd9JRx6bIFc/ekqHI29JC6pJ5ZEh1yWkhkbcFeSjxgx3L2m1cb1C7bceyxA+CNjT/Ifff+/kDk2u/w/33/IeCMOSaWZ4glosqT3DNnNZQ7Cs58/3Ce5HL78iZH/vKVIaYlqzfdLu8Vi7dnvUbEza5Idt36tquZFldl6N5Z/POLof0XLK61mZCmJSWjVF9tEjUluu74IUXvgttuVIHE7YxSkaYhJZam7yiM9Pv82JYfl9nptxZaxMJE4YSPty+vF0+Y2up9d3wwijfjZbabqm/3bZ9ecKHsiGmRflnn1MW4pjHf9oLufyn2z3y1D6n8g8TZhxyzipLNPnAUpsOiuWimg52psrTZYnOWYNDTMuWBWa0tJb4rgq1UvmutpaYEbZlwU3CLJm/ayYjHW5/h7xWLn9Hh1vepDkyf7dE7MtT5LR4e7yYpHrkhOUpEfssBLq2pPhAqoSWKUkk7EDqkmK6RrCEzqDjhNDWNE+XSMvkJRDWlZTmCW0l0PHQGRZY5t1L83kT0Y3l2SItk5JAWHl2dCOBm+fPu3fo5/3v61RMCO9Jx2EEYYhb0rmNQMX/vm7gqOEJLcXTGw3CAuRNeyaPWwjR8PRqKQ1PDA/dpv+on9Shox52WFnx0KY8onHayrJzm87i5h9xGw/tfkev0jGsQizqezUKjk12hBMKJ4kbCqGPVNXudyyrShovGw5CgxsRICxF6aRmSjlBnHRzg7Gx8fKqEubI2rahQYdR1YgDIRQO7JvQyD52hoIQx0mxa0ODtW2Iozn1le2iIRdzwWewedyZzewidueOGqlsn1MvcnQpuVwLGG3/IR1hIKxCjelIDZ8ldqWz25jWAsnldEnK0Zxro19TGVb2ffIZEsIO89EIEDvKMPrzmBOQcKQ+rroye6NgRRxqR4U8EAkz0CL6uSGOm6KQCdWjvjRiSP1BPalCRS5iQYiEIvxuBMJEWgzSoHADcVMuN7IuqqTeyUPq22qFimFtxDyBBJEwNyt6TM88blFHao/6tWWhuuOM4SAK4EI4QmFHA+SEyWlp4EQoJ13cYGzMu7yszEIBOm2rVmHUNqwAIQabISNMRstmdhNWcFLsSm+0tjJH1MdRxO5Nx0WDMhCtgD6OKgZeljJqJKc9po8juskR9XN0Y1lZ3mWjLR9JCO1jRDMd0fpYC2VnvjBSEFg7wBENc0R9HFlb0xvF1+TBEpF68d+DHR6IOWVv2BECtxo46hOFUBd/APU57WIoEwJhIi2CdpyZX0m93BZicktMj1AS9dClteUFAUNUIEygRZCtik5zSxI9MubTBH1GOiHsiLJ3OCoSZkILa9PxiN0EbvhsAo8tdAf9Seepd36lGWHmtNANTv5Jd0z4QYyeo/UEJqxKRpg5LZx6btLPsOaEmdMyxYdlc8LMaJnikDlhclqmPiQnTEpLUIZEwkRagjYkEibQErwhkTAKCLQEbUgkzJQWc/0PstHHcfEdQ+UAAAAASUVORK5CYII=);background-size:26px 26px}.leaflet-touch .leaflet-control-layers-toggle{height:44px;width:44px}.leaflet-control-layers .leaflet-control-layers-list,.leaflet-control-layers-expanded .leaflet-control-layers-toggle{display:none}.leaflet-control-layers-expanded .leaflet-control-layers-list{display:block;position:relative}.leaflet-control-layers-expanded{background:#fff;color:#333;padding:6px 10px 6px 6px}.leaflet-control-layers-scrollbar{overflow-x:hidden;overflow-y:scroll;padding-right:5px}.leaflet-control-layers-selector{margin-top:2px;position:relative;top:1px}.leaflet-control-layers label{display:block;font-size:13px;font-size:1.08333em}.leaflet-control-layers-separator{border-top:1px solid #ddd;height:0;margin:5px -10px 5px -6px}.leaflet-default-icon-path{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABkAAAApCAYAAADAk4LOAAAFgUlEQVR4Aa1XA5BjWRTN2oW17d3YaZtr2962HUzbDNpjszW24mRt28p47v7zq/bXZtrp/lWnXr337j3nPCe85NcypgSFdugCpW5YoDAMRaIMqRi6aKq5E3YqDQO3qAwjVWrD8Ncq/RBpykd8oZUb/kaJutow8r1aP9II0WmLKLIsJyv1w/kqw9Ch2MYdB++12Onxee/QMwvf4/Dk/Lfp/i4nxTXtOoQ4pW5Aj7wpici1A9erdAN2OH64x8OSP9j3Ft3b7aWkTg/Fm91siTra0f9on5sQr9INejH6CUUUpavjFNq1B+Oadhxmnfa8RfEmN8VNAsQhPqF55xHkMzz3jSmChWU6f7/XZKNH+9+hBLOHYozuKQPxyMPUKkrX/K0uWnfFaJGS1QPRtZsOPtr3NsW0uyh6NNCOkU3Yz+bXbT3I8G3xE5EXLXtCXbbqwCO9zPQYPRTZ5vIDXD7U+w7rFDEoUUf7ibHIR4y6bLVPXrz8JVZEql13trxwue/uDivd3fkWRbS6/IA2bID4uk0UpF1N8qLlbBlXs4Ee7HLTfV1j54APvODnSfOWBqtKVvjgLKzF5YdEk5ewRkGlK0i33Eofffc7HT56jD7/6U+qH3Cx7SBLNntH5YIPvODnyfIXZYRVDPqgHtLs5ABHD3YzLuespb7t79FY34DjMwrVrcTuwlT55YMPvOBnRrJ4VXTdNnYug5ucHLBjEpt30701A3Ts+HEa73u6dT3FNWwflY86eMHPk+Yu+i6pzUpRrW7SNDg5JHR4KapmM5Wv2E8Tfcb1HoqqHMHU+uWDD7zg54mz5/2BSnizi9T1Dg4QQXLToGNCkb6tb1NU+QAlGr1++eADrzhn/u8Q2YZhQVlZ5+CAOtqfbhmaUCS1ezNFVm2imDbPmPng5wmz+gwh+oHDce0eUtQ6OGDIyR0uUhUsoO3vfDmmgOezH0mZN59x7MBi++WDL1g/eEiU3avlidO671bkLfwbw5XV2P8Pzo0ydy4t2/0eu33xYSOMOD8hTf4CrBtGMSoXfPLchX+J0ruSePw3LZeK0juPJbYzrhkH0io7B3k164hiGvawhOKMLkrQLyVpZg8rHFW7E2uHOL888IBPlNZ1FPzstSJM694fWr6RwpvcJK60+0HCILTBzZLFNdtAzJaohze60T8qBzyh5ZuOg5e7uwQppofEmf2++DYvmySqGBuKaicF1blQjhuHdvCIMvp8whTTfZzI7RldpwtSzL+F1+wkdZ2TBOW2gIF88PBTzD/gpeREAMEbxnJcaJHNHrpzji0gQCS6hdkEeYt9DF/2qPcEC8RM28Hwmr3sdNyht00byAut2k3gufWNtgtOEOFGUwcXWNDbdNbpgBGxEvKkOQsxivJx33iow0Vw5S6SVTrpVq11ysA2Rp7gTfPfktc6zhtXBBC+adRLshf6sG2RfHPZ5EAc4sVZ83yCN00Fk/4kggu40ZTvIEm5g24qtU4KjBrx/BTTH8ifVASAG7gKrnWxJDcU7x8X6Ecczhm3o6YicvsLXWfh3Ch1W0k8x0nXF+0fFxgt4phz8QvypiwCCFKMqXCnqXExjq10beH+UUA7+nG6mdG/Pu0f3LgFcGrl2s0kNNjpmoJ9o4B29CMO8dMT4Q5ox8uitF6fqsrJOr8qnwNbRzv6hSnG5wP+64C7h9lp30hKNtKdWjtdkbuPA19nJ7Tz3zR/ibgARbhb4AlhavcBebmTHcFl2fvYEnW0ox9xMxKBS8btJ+KiEbq9zA4RthQXDhPa0T9TEe69gWupwc6uBUphquXgf+/FrIjweHQS4/pduMe5ERUMHUd9xv8ZR98CxkS4F2n3EUrUZ10EYNw7BWm9x1GiPssi3GgiGRDKWRYZfXlON+dfNbM+GgIwYdwAAAAASUVORK5CYII=)}.leaflet-container .leaflet-control-attribution{background:#fff;background:#fffc;margin:0}.leaflet-control-attribution,.leaflet-control-scale-line{color:#333;line-height:1.4;padding:0 5px}.leaflet-control-attribution a{text-decoration:none}.leaflet-control-attribution a:focus,.leaflet-control-attribution a:hover{text-decoration:underline}.leaflet-attribution-flag{display:inline!important;height:.6669em;vertical-align:initial!important;width:1em}.leaflet-left .leaflet-control-scale{margin-left:5px}.leaflet-bottom .leaflet-control-scale{margin-bottom:5px}.leaflet-control-scale-line{background:#fffc;border:2px solid #777;border-top:none;box-sizing:border-box;line-height:1.1;padding:2px 5px 1px;text-shadow:1px 1px #fff;white-space:nowrap}.leaflet-control-scale-line:not(:first-child){border-bottom:none;border-top:2px solid #777;margin-top:-2px}.leaflet-control-scale-line:not(:first-child):not(:last-child){border-bottom:2px solid #777}.leaflet-touch .leaflet-bar,.leaflet-touch .leaflet-control-attribution,.leaflet-touch .leaflet-control-layers{box-shadow:none}.leaflet-touch .leaflet-bar,.leaflet-touch .leaflet-control-layers{background-clip:padding-box;border:2px solid #0003}.leaflet-popup{margin-bottom:20px;position:absolute;text-align:center}.leaflet-popup-content-wrapper{border-radius:12px;padding:1px;text-align:left}.leaflet-popup-content{font-size:13px;font-size:1.08333em;line-height:1.3;margin:13px 24px 13px 20px;min-height:1px}.leaflet-popup-content p{margin:1.3em 0}.leaflet-popup-tip-container{height:20px;left:50%;margin-left:-20px;margin-top:-1px;overflow:hidden;pointer-events:none;position:absolute;width:40px}.leaflet-popup-tip{height:17px;margin:-10px auto 0;padding:1px;pointer-events:auto;transform:rotate(45deg);width:17px}.leaflet-popup-content-wrapper,.leaflet-popup-tip{background:#fff;box-shadow:0 3px 14px #0006;color:#333}.leaflet-container a.leaflet-popup-close-button{background:#0000;border:none;color:#757575;font:16px/24px Tahoma,Verdana,sans-serif;height:24px;position:absolute;right:0;text-align:center;text-decoration:none;top:0;width:24px}.leaflet-container a.leaflet-popup-close-button:focus,.leaflet-container a.leaflet-popup-close-button:hover{color:#585858}.leaflet-popup-scrolled{overflow:auto}.leaflet-oldie .leaflet-popup-content-wrapper{-ms-zoom:1}.leaflet-oldie .leaflet-popup-tip{-ms-filter:"progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678)";filter:progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678,M12=0.70710678,M21=-0.70710678,M22=0.70710678);margin:0 auto;width:24px}.leaflet-oldie .leaflet-control-layers,.leaflet-oldie .leaflet-control-zoom,.leaflet-oldie .leaflet-popup-content-wrapper,.leaflet-oldie .leaflet-popup-tip{border:1px solid #999}.leaflet-div-icon{background:#fff;border:1px solid #666}.leaflet-tooltip{background-color:#fff;border:1px solid #fff;border-radius:3px;box-shadow:0 1px 3px #0006;color:#222;padding:6px;pointer-events:none;position:absolute;-webkit-user-select:none;user-select:none;white-space:nowrap}.leaflet-tooltip.leaflet-interactive{cursor:pointer;pointer-events:auto}.leaflet-tooltip-bottom:before,.leaflet-tooltip-left:before,.leaflet-tooltip-right:before,.leaflet-tooltip-top:before{background:#0000;border:6px solid #0000;content:"";pointer-events:none;position:absolute}.leaflet-tooltip-bottom{margin-top:6px}.leaflet-tooltip-top{margin-top:-6px}.leaflet-tooltip-bottom:before,.leaflet-tooltip-top:before{left:50%;margin-left:-6px}.leaflet-tooltip-top:before{border-top-color:#fff;bottom:0;margin-bottom:-12px}.leaflet-tooltip-bottom:before{border-bottom-color:#fff;margin-left:-6px;margin-top:-12px;top:0}.leaflet-tooltip-left{margin-left:-6px}.leaflet-tooltip-right{margin-left:6px}.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{margin-top:-6px;top:50%}.leaflet-tooltip-left:before{border-left-color:#fff;margin-right:-12px;right:0}.leaflet-tooltip-right:before{border-right-color:#fff;left:0;margin-left:-12px}@media print{.leaflet-control{-webkit-print-color-adjust:exact;print-color-adjust:exact}}.ocean-map-container{background:var(--bg-primary);display:flex;flex-direction:column;height:calc(100vh - var(--nav-height));transition:all var(--transition-slow)}.ocean-map-container.dark-mode{background:var(--gradient-dark)}.map-header{align-items:center;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);background:var(--glass-bg);border-bottom:1px solid var(--border-color);box-shadow:var(--shadow-lg);display:flex;justify-content:space-between;padding:1rem 2rem;transition:all var(--transition-base);z-index:1000}.map-header h2{-webkit-text-fill-color:#0000;background:var(--gradient-ocean);-webkit-background-clip:text;background-clip:text;color:var(--text-primary);font-size:1.5rem;font-weight:800;margin:0}.map-controls{display:flex;gap:.5rem}.control-btn{background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:12px;color:var(--text-primary);cursor:pointer;font-size:.9rem;font-weight:600;padding:.6rem 1.2rem;transition:all var(--transition-base)}.control-btn:hover{background:var(--bg-tertiary);border-color:var(--primary-300);box-shadow:var(--shadow-md);transform:translateY(-2px)}.control-btn.active{background:var(--gradient-ocean);border-color:#0000;box-shadow:var(--shadow-glow);color:#fff}.map-content{display:flex;gap:0}.map-content,.map-wrapper{flex:1 1;position:relative}.leaflet-container{height:100%;width:100%}.map-loading{align-items:center;background:var(--bg-primary);display:flex;flex-direction:column;height:calc(100vh - var(--nav-height));justify-content:center}.popup-content{font-family:inherit;min-width:220px}.popup-content h4{border-bottom:2px solid var(--border-color);color:var(--text-primary);font-size:1rem;font-weight:700;margin:0 0 .75rem;padding-bottom:.5rem}.popup-content p{color:var(--text-secondary);font-size:.9rem;margin:.4rem 0}.alert-popup{border-left:4px solid var(--error-500);padding-left:1rem}.current-arrow{font-size:20px;font-weight:700}.map-sidebar{background:var(--bg-secondary);border-left:1px solid var(--border-color);box-shadow:-4px 0 20px #0000000d;overflow-y:auto;padding:1.5rem;width:340px}.legend-section{background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:14px;margin-bottom:1.5rem;padding:1rem}.legend-section h4{color:var(--text-primary);font-size:.95rem;font-weight:700;margin:0 0 .75rem}.color-scale{display:flex;flex-wrap:wrap;gap:.75rem}.color-item{align-items:center;color:var(--text-secondary);display:flex;font-size:.85rem;font-weight:500;gap:.4rem}.color-box{border:1px solid var(--border-color);border-radius:5px;height:18px;width:18px}.alert-info{background:#ef44440d;border-left:4px solid var(--error-500);border-radius:12px;margin:1rem 0;padding:1rem}.alert-types{margin-top:1rem}.alert-type-item{align-items:center;color:var(--text-secondary);display:flex;font-size:.9rem;font-weight:500;gap:.6rem;margin:.5rem 0}.alert-indicator{border-radius:50%;box-shadow:0 2px 6px #00000026;height:14px;width:14px}.alert-indicator.high{background:linear-gradient(135deg,#ef4444,#dc2626)}.alert-indicator.medium{background:linear-gradient(135deg,#f59e0b,#d97706)}@media (max-width:900px){.map-content{flex-direction:column}.map-sidebar{border-left:none;border-top:1px solid var(--border-color);max-height:250px;width:100%}}@media (max-width:768px){.map-header{flex-direction:column;gap:1rem;padding:1rem}.map-controls{flex-wrap:wrap;justify-content:center;width:100%}.control-btn{flex:1 1;font-size:.85rem;min-width:100px;padding:.5rem .75rem;text-align:center}.color-scale{justify-content:center}}.leaflet-popup-content-wrapper{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:14px;box-shadow:var(--shadow-xl)}.leaflet-popup-tip{background:var(--bg-secondary)}.leaflet-control-layers{background:var(--bg-secondary);box-shadow:var(--shadow-lg)}.leaflet-control-layers,.leaflet-control-zoom{border:1px solid var(--border-color);border-radius:12px}.leaflet-control-zoom{box-shadow:var(--shadow-md);overflow:hidden}.leaflet-control-zoom a{background:var(--bg-secondary);color:var(--text-primary);font-weight:700;transition:all var(--transition-base)}.leaflet-control-zoom a:hover{background:var(--primary-100);color:var(--primary-600)}.temperature-iframe-container{background:var(--bg-tertiary);border-radius:12px;height:100%;overflow:hidden;position:relative;width:100%}.temperature-iframe{border:none;border-radius:12px}.currents-iframe-container{background:var(--bg-tertiary);border-radius:12px;height:100%;overflow:hidden;position:relative;width:100%}.ocean-currents-iframe{border:none;border-radius:12px}.current-legend-item{align-items:center;color:var(--text-secondary);display:flex;font-size:.9rem;font-weight:500;margin-bottom:.35rem}.current-info{background:var(--bg-tertiary);border-left:4px solid var(--primary-500);border-radius:12px;margin:1rem 0;padding:1rem}.current-info ul{margin:.5rem 0;padding-left:1.25rem}.current-info li{color:var(--text-secondary);font-size:.9rem;margin:.35rem 0}.current-source{border-top:1px solid var(--border-color);color:var(--text-muted);font-size:.8rem;margin-top:1rem;padding-top:.75rem}.temperature-info{background:#0ea5e90d;border-left:4px solid var(--primary-500);border-radius:12px;margin:1rem 0;padding:1rem}.temperature-scale{margin:1rem 0}.temperature-scale h5{color:var(--text-primary);font-size:.9rem;font-weight:700;margin:0 0 .75rem}.temperature-gradient{display:flex;flex-direction:column;gap:.5rem}.temp-scale-item{align-items:center;color:var(--text-secondary);display:flex;font-size:.85rem;font-weight:500;gap:.6rem}.temp-color-box{border:1px solid var(--border-color);border-radius:5px;flex-shrink:0;height:18px;width:22px}.temperature-source{border-top:1px solid var(--border-color);color:var(--text-muted);font-size:.8rem;margin-top:1rem;padding-top:.75rem}.temperature-source p{margin:.25rem 0}.datasets-container{min-height:calc(100vh - var(--nav-height));padding:var(--content-padding);transition:all var(--transition-slow)}.datasets-header{animation:slideUp .5s ease-out;margin-bottom:2rem;text-align:center}.datasets-header h1{-webkit-text-fill-color:#0000;background:var(--gradient-primary);-webkit-background-clip:text;background-clip:text;font-size:clamp(2rem,4vw,2.8rem);font-weight:800;margin-bottom:.5rem}.dark-mode .datasets-header h1{background:linear-gradient(135deg,#60a5fa,#22d3ee 50%,#34d399);-webkit-background-clip:text;background-clip:text}.datasets-header p{color:var(--text-secondary);font-size:1.1rem;font-weight:500}.datasets-controls{align-items:center;animation:slideUp .5s ease-out .1s both;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);background:var(--gradient-glass);border:1px solid var(--border-color);border-radius:var(--card-radius);box-shadow:var(--shadow-lg);display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:2rem;padding:1.5rem}.dark-mode .datasets-controls{background:var(--gradient-glass);border-color:var(--border-strong)}.search-section{flex:2 1;min-width:300px}.search-box{align-items:center;display:flex;position:relative}.search-icon{color:var(--text-muted);font-size:1.1rem;left:1rem;z-index:1}.search-input{background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:14px;color:var(--text-primary);padding:.9rem 1rem .9rem 3rem;transition:all var(--transition-base)}.search-input:focus{border-color:var(--primary-500);box-shadow:0 0 0 4px #0ea5e91a}.search-input::placeholder{color:var(--text-muted)}.filter-section{gap:.75rem}.filter-icon{color:var(--text-muted);font-size:1.1rem}.category-filter{background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:14px;color:var(--text-primary);cursor:pointer;font-size:.95rem;font-weight:500;padding:.85rem 1.25rem;transition:all var(--transition-base)}.category-filter:focus{border-color:var(--primary-500);box-shadow:0 0 0 4px #0ea5e91a;outline:none}.results-count{background:var(--bg-tertiary);border-radius:10px;color:var(--text-secondary);font-weight:600;margin-left:auto;padding:.5rem 1rem}.datasets-loading{align-items:center;display:flex;flex-direction:column;height:calc(100vh - 200px);justify-content:center}.loading-spinner{border-top:4px solid var(--border-color);border:4px solid var(--border-color);border-top-color:var(--primary-500);height:50px;width:50px}.datasets-grid{grid-gap:1.5rem;animation:slideUp .5s ease-out .2s both;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(380px,1fr))}.dataset-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--card-radius);box-shadow:var(--shadow-md);overflow:hidden;padding:1.5rem;position:relative;transition:all var(--transition-base)}.dataset-card:before{background:var(--gradient-ocean);content:"";height:4px;left:0;position:absolute;right:0;top:0;transform:scaleX(0);transition:transform var(--transition-base)}.dataset-card:hover{border-color:var(--primary-300);box-shadow:var(--shadow-xl);transform:translateY(-6px)}.dataset-card:hover:before{transform:scaleX(1)}.dataset-header{align-items:flex-start;display:flex;gap:1rem;justify-content:space-between;margin-bottom:1rem}.dataset-title{color:var(--text-primary);flex:1 1;font-size:1.2rem;font-weight:700;line-height:1.3;margin:0}.category-badge{border-radius:20px;box-shadow:var(--shadow-sm);flex-shrink:0;font-weight:700;padding:.35rem .9rem}.category-badge.temperature{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff}.category-badge.currents{background:var(--gradient-ocean);color:#fff}.category-badge.biodiversity{background:linear-gradient(135deg,#14b8a6,#0d9488);color:#fff}.category-badge.edna{background:linear-gradient(135deg,#10b981,#059669);color:#fff}.category-badge.biogeochemistry{background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff}.dataset-description{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:var(--text-secondary);display:-webkit-box;font-size:.95rem;line-height:1.6;margin-bottom:1rem;overflow:hidden}.dataset-metadata{background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:12px;margin-bottom:1rem;padding:1rem}.metadata-row{align-items:center;color:var(--text-secondary);display:flex;font-size:.9rem;margin-bottom:.6rem}.metadata-row:last-child{margin-bottom:0}.metadata-icon{margin-right:.6rem}.metadata-label{color:var(--text-primary);font-weight:600;margin-right:.5rem}.dataset-formats,.dataset-parameters{margin-bottom:1rem}.dataset-formats strong,.dataset-parameters strong{color:var(--text-primary);display:block;font-size:.85rem;font-weight:600;letter-spacing:.5px;margin-bottom:.5rem;text-transform:uppercase}.parameters-list{display:flex;flex-wrap:wrap;gap:.4rem}.format-tag,.parameter-tag{background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:10px;color:var(--text-secondary);font-size:.8rem;font-weight:500;padding:.25rem .65rem;transition:all var(--transition-base)}.parameter-tag:hover{background:var(--primary-100);border-color:var(--primary-300);color:var(--primary-600)}.parameter-tag.more{background:var(--gradient-ocean);border:none;color:#fff}.format-tag{background:#10b9811a;border-color:#10b9814d;color:var(--success-500)}.dataset-actions{border-top:1px solid var(--border-color);display:flex;gap:.5rem;margin-top:1rem;padding-top:1rem}.action-btn{border-radius:10px;font-weight:600;gap:.4rem;padding:.65rem 1.1rem;transition:all var(--transition-base)}.info-btn{background:var(--bg-tertiary);border:1px solid var(--border-color);color:var(--text-primary)}.info-btn:hover{background:var(--primary-100);border-color:var(--primary-300);color:var(--primary-600);transform:translateY(-2px)}.download-btn{background:linear-gradient(135deg,var(--success-500),#059669);box-shadow:0 4px 15px #10b9814d;color:#fff}.download-btn:hover{box-shadow:0 6px 20px #10b98166;transform:translateY(-2px)}.modal-content{background:var(--bg-secondary);display:flex;flex-direction:column;max-height:85vh;max-width:650px}.modal-header h2{color:var(--text-primary);font-size:1.35rem;font-weight:700}.close-btn{border-radius:10px;height:36px;width:36px}.detail-section{margin-bottom:1.5rem}.detail-section h4{border-bottom:2px solid var(--border-color);color:var(--text-primary);font-size:1rem;font-weight:700;margin-bottom:.6rem;padding-bottom:.4rem}.detail-section p{color:var(--text-secondary);line-height:1.7}.parameters-grid{grid-gap:.5rem;display:grid;gap:.5rem;grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}.parameter-chip{background:var(--gradient-ocean);border-radius:20px;box-shadow:var(--shadow-sm);color:#fff;font-size:.85rem;font-weight:600;padding:.5rem 1rem;text-align:center}.modal-actions{background:var(--bg-tertiary);border-top:1px solid var(--border-color);padding:1.5rem;text-align:center}.download-btn-large{align-items:center;background:linear-gradient(135deg,var(--success-500),#059669);border:none;border-radius:14px;box-shadow:0 4px 20px #10b9814d;color:#fff;cursor:pointer;display:inline-flex;font-size:1.1rem;font-weight:700;gap:.6rem;padding:1rem 2.5rem;transition:all var(--transition-base)}.download-btn-large:hover{box-shadow:0 8px 30px #10b98166;transform:translateY(-3px)}@media (max-width:900px){.datasets-controls{align-items:stretch;flex-direction:column}.search-section{min-width:auto}.results-count{margin-left:0;text-align:center}.datasets-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}}@media (max-width:768px){.datasets-container{padding:1rem}.datasets-grid{grid-template-columns:1fr}.dataset-header{align-items:flex-start;flex-direction:column;gap:.75rem}.modal-overlay{padding:1rem}.modal-content{max-height:90vh}}@media (max-width:480px){.datasets-header h1{font-size:1.75rem}.dataset-actions{flex-direction:column}.action-btn{justify-content:center;width:100%}}.copernicus-cli-section{background:var(--bg-tertiary);border-left:4px solid var(--primary-500);border-radius:12px;margin-top:1rem;padding:1.25rem}.cli-command-box{background:#1e293b;border-radius:10px;margin:.5rem 0;overflow-x:auto;padding:1rem}.cli-command-box pre{color:#94a3b8;font-family:SF Mono,Consolas,Monaco,monospace;font-size:.9rem;margin:0;white-space:pre-wrap;word-break:break-all}.cli-help{color:var(--text-muted);font-size:.9rem;margin-top:.5rem}.copernicus-actions{display:flex;flex-direction:column;gap:1rem;width:100%}.cli-note{color:var(--text-muted);font-size:.85rem;font-style:italic;text-align:center}:root{--toastify-color-light:#fff;--toastify-color-dark:#121212;--toastify-color-info:#3498db;--toastify-color-success:#07bc0c;--toastify-color-warning:#f1c40f;--toastify-color-error:#e74d3c;--toastify-color-transparent:#ffffffb3;--toastify-icon-color-info:var(--toastify-color-info);--toastify-icon-color-success:var(--toastify-color-success);--toastify-icon-color-warning:var(--toastify-color-warning);--toastify-icon-color-error:var(--toastify-color-error);--toastify-container-width:fit-content;--toastify-toast-width:320px;--toastify-toast-offset:16px;--toastify-toast-top:max(var(--toastify-toast-offset),env(safe-area-inset-top));--toastify-toast-right:max(var(--toastify-toast-offset),env(safe-area-inset-right));--toastify-toast-left:max(var(--toastify-toast-offset),env(safe-area-inset-left));--toastify-toast-bottom:max(var(--toastify-toast-offset),env(safe-area-inset-bottom));--toastify-toast-background:#fff;--toastify-toast-padding:14px;--toastify-toast-min-height:64px;--toastify-toast-max-height:800px;--toastify-toast-bd-radius:6px;--toastify-toast-shadow:0px 4px 12px #0000001a;--toastify-font-family:sans-serif;--toastify-z-index:9999;--toastify-text-color-light:#757575;--toastify-text-color-dark:#fff;--toastify-text-color-info:#fff;--toastify-text-color-success:#fff;--toastify-text-color-warning:#fff;--toastify-text-color-error:#fff;--toastify-spinner-color:#616161;--toastify-spinner-color-empty-area:#e0e0e0;--toastify-color-progress-light:linear-gradient(90deg,#4cd964,#5ac8fa,#007aff,#34aadc,#5856d6,#ff2d55);--toastify-color-progress-dark:#bb86fc;--toastify-color-progress-info:var(--toastify-color-info);--toastify-color-progress-success:var(--toastify-color-success);--toastify-color-progress-warning:var(--toastify-color-warning);--toastify-color-progress-error:var(--toastify-color-error);--toastify-color-progress-bgo:0.2}.Toastify__toast-container{box-sizing:border-box;color:#fff;display:flex;flex-direction:column;position:fixed;-webkit-transform:translateZ(9999);-webkit-transform:translateZ(var(--toastify-z-index));width:-webkit-fit-content;width:fit-content;width:var(--toastify-container-width);z-index:9999;z-index:var(--toastify-z-index)}.Toastify__toast-container--top-left{left:max(16px,env(safe-area-inset-left));left:var(--toastify-toast-left);top:max(16px,env(safe-area-inset-top));top:var(--toastify-toast-top)}.Toastify__toast-container--top-center{align-items:center;left:50%;top:max(16px,env(safe-area-inset-top));top:var(--toastify-toast-top);transform:translateX(-50%)}.Toastify__toast-container--top-right{align-items:end;right:max(16px,env(safe-area-inset-right));right:var(--toastify-toast-right);top:max(16px,env(safe-area-inset-top));top:var(--toastify-toast-top)}.Toastify__toast-container--bottom-left{bottom:max(16px,env(safe-area-inset-bottom));bottom:var(--toastify-toast-bottom);left:max(16px,env(safe-area-inset-left));left:var(--toastify-toast-left)}.Toastify__toast-container--bottom-center{align-items:center;bottom:max(16px,env(safe-area-inset-bottom));bottom:var(--toastify-toast-bottom);left:50%;transform:translateX(-50%)}.Toastify__toast-container--bottom-right{align-items:end;bottom:max(16px,env(safe-area-inset-bottom));bottom:var(--toastify-toast-bottom);right:max(16px,env(safe-area-inset-right));right:var(--toastify-toast-right)}.Toastify__toast{--y:0;align-items:center;border-radius:6px;border-radius:var(--toastify-toast-bd-radius);box-shadow:0 4px 12px #0000001a;box-shadow:var(--toastify-toast-shadow);box-sizing:border-box;display:flex;flex:1 1 auto;font-family:sans-serif;font-family:var(--toastify-font-family);margin-bottom:1rem;max-height:800px;max-height:var(--toastify-toast-max-height);min-height:64px;min-height:var(--toastify-toast-min-height);padding:14px;padding:var(--toastify-toast-padding);position:relative;touch-action:none;width:320px;width:var(--toastify-toast-width);word-break:break-word;z-index:0}@media only screen and (max-width:480px){.Toastify__toast-container{left:env(safe-area-inset-left);margin:0;width:100vw}.Toastify__toast-container--top-center,.Toastify__toast-container--top-left,.Toastify__toast-container--top-right{top:env(safe-area-inset-top);transform:translateX(0)}.Toastify__toast-container--bottom-center,.Toastify__toast-container--bottom-left,.Toastify__toast-container--bottom-right{bottom:env(safe-area-inset-bottom);transform:translateX(0)}.Toastify__toast-container--rtl{left:auto;right:env(safe-area-inset-right)}.Toastify__toast{--toastify-toast-width:100%;border-radius:0;margin-bottom:0}}.Toastify__toast-container[data-stacked=true]{width:320px;width:var(--toastify-toast-width)}.Toastify__toast--stacked{position:absolute;transform:translate3d(0,var(--y),0) scale(var(--s));transition:transform .3s;width:100%}.Toastify__toast--stacked[data-collapsed] .Toastify__close-button,.Toastify__toast--stacked[data-collapsed] .Toastify__toast-body{transition:opacity .1s}.Toastify__toast--stacked[data-collapsed=false]{overflow:visible}.Toastify__toast--stacked[data-collapsed=true]:not(:last-child)>*{opacity:0}.Toastify__toast--stacked:after{bottom:100%;content:"";height:calc(var(--g)*1px);left:0;position:absolute;right:0}.Toastify__toast--stacked[data-pos=top]{top:0}.Toastify__toast--stacked[data-pos=bot]{bottom:0}.Toastify__toast--stacked[data-pos=bot].Toastify__toast--stacked:before{transform-origin:top}.Toastify__toast--stacked[data-pos=top].Toastify__toast--stacked:before{transform-origin:bottom}.Toastify__toast--stacked:before{bottom:0;content:"";height:100%;left:0;position:absolute;right:0;transform:scaleY(3);z-index:-1}.Toastify__toast--rtl{direction:rtl}.Toastify__toast--close-on-click{cursor:pointer}.Toastify__toast-icon{-webkit-margin-end:10px;display:flex;flex-shrink:0;margin-inline-end:10px;width:22px}.Toastify--animate{animation-duration:.5s;animation-fill-mode:both}.Toastify--animate-icon{animation-duration:.3s;animation-fill-mode:both}.Toastify__toast-theme--dark{background:#121212;background:var(--toastify-color-dark);color:#fff;color:var(--toastify-text-color-dark)}.Toastify__toast-theme--colored.Toastify__toast--default,.Toastify__toast-theme--light{background:#fff;background:var(--toastify-color-light);color:#757575;color:var(--toastify-text-color-light)}.Toastify__toast-theme--colored.Toastify__toast--info{background:#3498db;background:var(--toastify-color-info);color:#fff;color:var(--toastify-text-color-info)}.Toastify__toast-theme--colored.Toastify__toast--success{background:#07bc0c;background:var(--toastify-color-success);color:#fff;color:var(--toastify-text-color-success)}.Toastify__toast-theme--colored.Toastify__toast--warning{background:#f1c40f;background:var(--toastify-color-warning);color:#fff;color:var(--toastify-text-color-warning)}.Toastify__toast-theme--colored.Toastify__toast--error{background:#e74d3c;background:var(--toastify-color-error);color:#fff;color:var(--toastify-text-color-error)}.Toastify__progress-bar-theme--light{background:linear-gradient(90deg,#4cd964,#5ac8fa,#007aff,#34aadc,#5856d6,#ff2d55);background:var(--toastify-color-progress-light)}.Toastify__progress-bar-theme--dark{background:#bb86fc;background:var(--toastify-color-progress-dark)}.Toastify__progress-bar--info{background:#3498db;background:var(--toastify-color-progress-info)}.Toastify__progress-bar--success{background:#07bc0c;background:var(--toastify-color-progress-success)}.Toastify__progress-bar--warning{background:#f1c40f;background:var(--toastify-color-progress-warning)}.Toastify__progress-bar--error{background:#e74d3c;background:var(--toastify-color-progress-error)}.Toastify__progress-bar-theme--colored.Toastify__progress-bar--error,.Toastify__progress-bar-theme--colored.Toastify__progress-bar--info,.Toastify__progress-bar-theme--colored.Toastify__progress-bar--success,.Toastify__progress-bar-theme--colored.Toastify__progress-bar--warning{background:#ffffffb3;background:var(--toastify-color-transparent)}.Toastify__close-button{background:#0000;border:none;color:#fff;cursor:pointer;opacity:.7;outline:none;padding:0;position:absolute;right:6px;top:6px;transition:.3s ease;z-index:1}.Toastify__toast--rtl .Toastify__close-button{left:6px;right:auto}.Toastify__close-button--light{color:#000;opacity:.3}.Toastify__close-button>svg{fill:currentColor;height:16px;width:14px}.Toastify__close-button:focus,.Toastify__close-button:hover{opacity:1}@keyframes Toastify__trackProgress{0%{transform:scaleX(1)}to{transform:scaleX(0)}}.Toastify__progress-bar{bottom:0;height:100%;left:0;opacity:.7;position:absolute;transform-origin:left;width:100%;z-index:1}.Toastify__progress-bar--animated{animation:Toastify__trackProgress linear 1 forwards}.Toastify__progress-bar--controlled{transition:transform .2s}.Toastify__progress-bar--rtl{border-bottom-left-radius:0;left:auto;right:0;transform-origin:right}.Toastify__progress-bar--wrp{border-bottom-left-radius:6px;border-bottom-left-radius:var(--toastify-toast-bd-radius);border-bottom-right-radius:6px;border-bottom-right-radius:var(--toastify-toast-bd-radius);bottom:0;height:5px;left:0;overflow:hidden;position:absolute;width:100%}.Toastify__progress-bar--wrp[data-hidden=true]{opacity:0}.Toastify__progress-bar--bg{height:100%;opacity:.2;opacity:var(--toastify-color-progress-bgo);width:100%}.Toastify__spinner{animation:Toastify__spin .65s linear infinite;border:2px solid #e0e0e0;border-color:var(--toastify-spinner-color-empty-area);border-radius:100%;border-right-color:#616161;border-right-color:var(--toastify-spinner-color);box-sizing:border-box;height:20px;width:20px}@keyframes Toastify__bounceInRight{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(3000px,0,0)}60%{opacity:1;transform:translate3d(-25px,0,0)}75%{transform:translate3d(10px,0,0)}90%{transform:translate3d(-5px,0,0)}to{transform:none}}@keyframes Toastify__bounceOutRight{20%{opacity:1;transform:translate3d(-20px,var(--y),0)}to{opacity:0;transform:translate3d(2000px,var(--y),0)}}@keyframes Toastify__bounceInLeft{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(-3000px,0,0)}60%{opacity:1;transform:translate3d(25px,0,0)}75%{transform:translate3d(-10px,0,0)}90%{transform:translate3d(5px,0,0)}to{transform:none}}@keyframes Toastify__bounceOutLeft{20%{opacity:1;transform:translate3d(20px,var(--y),0)}to{opacity:0;transform:translate3d(-2000px,var(--y),0)}}@keyframes Toastify__bounceInUp{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(0,3000px,0)}60%{opacity:1;transform:translate3d(0,-20px,0)}75%{transform:translate3d(0,10px,0)}90%{transform:translate3d(0,-5px,0)}to{transform:translateZ(0)}}@keyframes Toastify__bounceOutUp{20%{transform:translate3d(0,calc(var(--y) - 10px),0)}40%,45%{opacity:1;transform:translate3d(0,calc(var(--y) + 20px),0)}to{opacity:0;transform:translate3d(0,-2000px,0)}}@keyframes Toastify__bounceInDown{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(0,-3000px,0)}60%{opacity:1;transform:translate3d(0,25px,0)}75%{transform:translate3d(0,-10px,0)}90%{transform:translate3d(0,5px,0)}to{transform:none}}@keyframes Toastify__bounceOutDown{20%{transform:translate3d(0,calc(var(--y) - 10px),0)}40%,45%{opacity:1;transform:translate3d(0,calc(var(--y) + 20px),0)}to{opacity:0;transform:translate3d(0,2000px,0)}}.Toastify__bounce-enter--bottom-left,.Toastify__bounce-enter--top-left{animation-name:Toastify__bounceInLeft}.Toastify__bounce-enter--bottom-right,.Toastify__bounce-enter--top-right{animation-name:Toastify__bounceInRight}.Toastify__bounce-enter--top-center{animation-name:Toastify__bounceInDown}.Toastify__bounce-enter--bottom-center{animation-name:Toastify__bounceInUp}.Toastify__bounce-exit--bottom-left,.Toastify__bounce-exit--top-left{animation-name:Toastify__bounceOutLeft}.Toastify__bounce-exit--bottom-right,.Toastify__bounce-exit--top-right{animation-name:Toastify__bounceOutRight}.Toastify__bounce-exit--top-center{animation-name:Toastify__bounceOutUp}.Toastify__bounce-exit--bottom-center{animation-name:Toastify__bounceOutDown}@keyframes Toastify__zoomIn{0%{opacity:0;transform:scale3d(.3,.3,.3)}50%{opacity:1}}@keyframes Toastify__zoomOut{0%{opacity:1}50%{opacity:0;transform:translate3d(0,var(--y),0) scale3d(.3,.3,.3)}to{opacity:0}}.Toastify__zoom-enter{animation-name:Toastify__zoomIn}.Toastify__zoom-exit{animation-name:Toastify__zoomOut}@keyframes Toastify__flipIn{0%{animation-timing-function:ease-in;opacity:0;transform:perspective(400px) rotateX(90deg)}40%{animation-timing-function:ease-in;transform:perspective(400px) rotateX(-20deg)}60%{opacity:1;transform:perspective(400px) rotateX(10deg)}80%{transform:perspective(400px) rotateX(-5deg)}to{transform:perspective(400px)}}@keyframes Toastify__flipOut{0%{transform:translate3d(0,var(--y),0) perspective(400px)}30%{opacity:1;transform:translate3d(0,var(--y),0) perspective(400px) rotateX(-20deg)}to{opacity:0;transform:translate3d(0,var(--y),0) perspective(400px) rotateX(90deg)}}.Toastify__flip-enter{animation-name:Toastify__flipIn}.Toastify__flip-exit{animation-name:Toastify__flipOut}@keyframes Toastify__slideInRight{0%{transform:translate3d(110%,0,0);visibility:visible}to{transform:translate3d(0,var(--y),0)}}@keyframes Toastify__slideInLeft{0%{transform:translate3d(-110%,0,0);visibility:visible}to{transform:translate3d(0,var(--y),0)}}@keyframes Toastify__slideInUp{0%{transform:translate3d(0,110%,0);visibility:visible}to{transform:translate3d(0,var(--y),0)}}@keyframes Toastify__slideInDown{0%{transform:translate3d(0,-110%,0);visibility:visible}to{transform:translate3d(0,var(--y),0)}}@keyframes Toastify__slideOutRight{0%{transform:translate3d(0,var(--y),0)}to{transform:translate3d(110%,var(--y),0);visibility:hidden}}@keyframes Toastify__slideOutLeft{0%{transform:translate3d(0,var(--y),0)}to{transform:translate3d(-110%,var(--y),0);visibility:hidden}}@keyframes Toastify__slideOutDown{0%{transform:translate3d(0,var(--y),0)}to{transform:translate3d(0,500px,0);visibility:hidden}}@keyframes Toastify__slideOutUp{0%{transform:translate3d(0,var(--y),0)}to{transform:translate3d(0,-500px,0);visibility:hidden}}.Toastify__slide-enter--bottom-left,.Toastify__slide-enter--top-left{animation-name:Toastify__slideInLeft}.Toastify__slide-enter--bottom-right,.Toastify__slide-enter--top-right{animation-name:Toastify__slideInRight}.Toastify__slide-enter--top-center{animation-name:Toastify__slideInDown}.Toastify__slide-enter--bottom-center{animation-name:Toastify__slideInUp}.Toastify__slide-exit--bottom-left,.Toastify__slide-exit--top-left{animation-duration:.3s;animation-name:Toastify__slideOutLeft;animation-timing-function:ease-in}.Toastify__slide-exit--bottom-right,.Toastify__slide-exit--top-right{animation-duration:.3s;animation-name:Toastify__slideOutRight;animation-timing-function:ease-in}.Toastify__slide-exit--top-center{animation-duration:.3s;animation-name:Toastify__slideOutUp;animation-timing-function:ease-in}.Toastify__slide-exit--bottom-center{animation-duration:.3s;animation-name:Toastify__slideOutDown;animation-timing-function:ease-in}@keyframes Toastify__spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.alert-system-container{min-height:calc(100vh - var(--nav-height));padding:var(--content-padding);transition:background var(--transition-slow)}.alert-header{align-items:center;animation:slideUp .5s ease-out;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);background:var(--gradient-glass);border:1px solid var(--border-color);border-radius:var(--card-radius);box-shadow:var(--shadow-lg);display:flex;justify-content:space-between;margin-bottom:2rem;padding:1.5rem 2rem}.dark-mode .alert-header{background:var(--gradient-glass);border-color:var(--border-strong)}.header-content h1{background:var(--gradient-primary);font-size:clamp(1.8rem,4vw,2.5rem)}.dark-mode .header-content h1{background:linear-gradient(135deg,#60a5fa,#22d3ee 50%,#34d399);-webkit-background-clip:text;background-clip:text}.header-content p{font-size:1.05rem}.header-actions{gap:1rem}.alert-stats,.header-actions{align-items:center;display:flex}.alert-stats{gap:.75rem}.stat-item{align-items:center;animation:pulse 2s infinite;background:var(--gradient-warning);border-radius:25px;box-shadow:0 4px 15px #ef44444d;color:#fff;display:flex;font-size:.9rem;font-weight:700;gap:.5rem;padding:.6rem 1.2rem}.stat-icon{font-size:1.1rem}.settings-btn{align-items:center;background:var(--gradient-ocean);border:none;border-radius:12px;box-shadow:var(--shadow-md);color:#fff;cursor:pointer;display:flex;font-size:.95rem;font-weight:600;gap:.5rem;padding:.75rem 1.25rem;transition:all var(--transition-base)}.settings-btn:hover{box-shadow:var(--shadow-glow);transform:translateY(-2px)}.alerts-section{margin-bottom:2.5rem}.section-title{align-items:center;border-left:4px solid var(--primary-500);color:var(--text-primary);display:flex;font-size:1.5rem;font-weight:700;gap:.5rem;margin-bottom:1.25rem;padding-left:1rem}.no-alerts{backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);background:var(--gradient-glass);border:1px solid var(--border-color);border-radius:var(--card-radius);box-shadow:var(--shadow-md);padding:4rem 2rem;text-align:center}.dark-mode .no-alerts{background:var(--gradient-glass);border-color:var(--border-strong)}.no-alerts-icon{color:var(--success-500);font-size:4rem;margin-bottom:1rem}.no-alerts h3{color:var(--success-500);font-size:1.5rem;font-weight:700;margin-bottom:.5rem}.no-alerts p{color:var(--text-secondary);font-size:1.1rem}.alerts-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(420px,1fr))}.alert-card{backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-left:5px solid;border-radius:var(--card-radius);box-shadow:var(--shadow-md);overflow:hidden;padding:1.5rem;position:relative;transition:all var(--transition-base)}.alert-card,.dark-mode .alert-card{background:var(--gradient-glass)}.alert-card:before{border-radius:50%;content:"";height:100px;opacity:.1;position:absolute;right:0;top:0;transform:translate(30%,-30%);transition:all var(--transition-base);width:100px}.alert-card:hover{box-shadow:var(--shadow-xl);transform:translateY(-4px)}.alert-card:hover:before{opacity:.15;transform:translate(20%,-20%) scale(1.2)}.alert-card.severity-extreme,.dark-mode .alert-card.severity-extreme{border-left-color:var(--error-500)}.alert-card.severity-extreme:before{background:var(--error-500)}.alert-card.severity-high,.dark-mode .alert-card.severity-high{border-left-color:var(--warning-500)}.alert-card.severity-high:before{background:var(--warning-500)}.alert-card.severity-moderate{border-left-color:var(--primary-500)}.dark-mode .alert-card.severity-moderate{border-left-color:var(--primary-400)}.alert-card.severity-moderate:before{background:var(--primary-500)}.alert-card.severity-low{border-left-color:var(--text-muted)}.dark-mode .alert-card.severity-low{border-left-color:var(--gray-500)}.alert-card.severity-low:before{background:var(--text-muted)}.alert-card-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:1rem}.alert-type{align-items:center;display:flex;gap:.75rem}.alert-type svg{color:var(--error-500);font-size:1.6rem}.alert-title{color:var(--text-primary);font-size:1.2rem;font-weight:700}.alert-actions{align-items:center;display:flex;gap:.5rem}.severity-badge{border-radius:20px;font-size:.7rem;font-weight:700;letter-spacing:.5px;padding:.35rem .9rem;text-transform:uppercase}.severity-badge.severity-extreme{background:var(--gradient-warning);box-shadow:0 2px 10px #ef44444d;color:#fff}.severity-badge.severity-high{background:linear-gradient(135deg,var(--warning-500),#f97316);box-shadow:0 2px 10px #f59e0b4d;color:#fff}.severity-badge.severity-moderate{background:var(--gradient-ocean);box-shadow:0 2px 10px #0ea5e94d;color:#fff}.severity-badge.severity-low{background:linear-gradient(135deg,#94a3b8,#64748b);color:#fff}.dismiss-btn{background:var(--bg-tertiary);border:none;border-radius:8px;color:var(--text-muted);cursor:pointer;padding:.4rem;transition:all var(--transition-base)}.dismiss-btn:hover{background:#ef44441a;color:var(--error-500);transform:scale(1.1)}.alert-content{color:var(--text-secondary)}.alert-message{font-size:.95rem;line-height:1.7;margin-bottom:1rem}.alert-metadata{background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:12px;display:flex;flex-direction:column;gap:.6rem;margin-bottom:1rem;padding:1rem}.metadata-item{align-items:center;color:var(--text-secondary);display:flex;font-size:.9rem;font-weight:500;gap:.6rem}.metadata-icon{color:var(--primary-500);font-size:1rem}.distance{color:var(--text-muted);font-style:italic}.affected-area{background:#0ea5e91a;border-left:3px solid var(--primary-500);border-radius:10px;font-weight:500;margin-bottom:1rem;padding:.9rem 1rem}.affected-area,.recommended-actions{color:var(--text-primary)}.recommended-actions strong{color:var(--primary-500)}.recommended-actions ul{margin:.5rem 0 0 1.25rem;padding:0}.recommended-actions li{color:var(--text-secondary);line-height:1.5;margin-bottom:.4rem}.recent-alerts{backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);background:var(--gradient-glass);border:1px solid var(--border-color);border-radius:var(--card-radius);box-shadow:var(--shadow-md);padding:1.5rem}.dark-mode .recent-alerts{background:var(--gradient-glass);border-color:var(--border-strong)}.recent-alert-item{align-items:flex-start;border-bottom:1px solid var(--border-color);border-radius:10px;display:flex;gap:1rem;margin-bottom:.5rem;padding:1rem;transition:all var(--transition-base)}.recent-alert-item:hover{background:var(--bg-tertiary);transform:translateX(4px)}.recent-alert-item:last-child{border-bottom:none;margin-bottom:0}.recent-alert-icon{color:var(--text-muted);flex-shrink:0;font-size:1.25rem}.recent-alert-content h4{color:var(--text-primary);font-size:1rem;font-weight:600;margin:0 0 .35rem}.recent-alert-content p{color:var(--text-secondary);font-size:.9rem;line-height:1.5;margin:0 0 .35rem}.recent-alert-time{color:var(--primary-500);font-size:.8rem;font-weight:500}.modal-overlay{animation:fadeIn .2s ease-out;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);background:#000000bf}.modal-content{animation:slideUp .3s ease-out;background:var(--gradient-glass);border:1px solid var(--border-color);border-radius:var(--card-radius);box-shadow:var(--shadow-2xl);max-width:90vw;overflow:hidden;width:500px}.dark-mode .modal-content{background:var(--gradient-glass);border-color:var(--border-strong)}.modal-header{align-items:center;background:var(--bg-tertiary);border-bottom:1px solid var(--border-color)}.modal-header h3{color:var(--text-primary);font-size:1.25rem;font-weight:700;margin:0}.close-btn{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;color:var(--text-secondary);font-size:1.25rem;padding:.5rem;transition:all var(--transition-base)}.close-btn:hover{background:#ef44441a;border-color:var(--error-500);color:var(--error-500)}.setting-group{background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:12px;margin-bottom:1.5rem;padding:1rem}.setting-group label{align-items:center;color:var(--text-primary);cursor:pointer;display:flex;font-weight:600;gap:.8rem}.setting-group input[type=checkbox]{accent-color:var(--primary-500);cursor:pointer;height:20px;width:20px}.setting-group input[type=number]{background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:10px;color:var(--text-primary);font-weight:600;margin-left:auto;padding:.6rem .75rem;transition:all var(--transition-base);width:90px}.setting-group input[type=number]:focus{border-color:var(--primary-500);box-shadow:0 0 0 3px #0ea5e91a;outline:none}.Toastify__toast{border-radius:12px;box-shadow:var(--shadow-xl);font-family:inherit;font-weight:500}.Toastify__toast--error{background:var(--gradient-warning)}.Toastify__toast--warning{background:linear-gradient(135deg,var(--warning-500),#f97316)}.Toastify__toast--info{background:var(--gradient-ocean)}@media (max-width:900px){.alerts-grid{grid-template-columns:1fr}}@media (max-width:768px){.alert-system-container{padding:1rem}.alert-header{flex-direction:column;gap:1.25rem;padding:1.25rem;text-align:center}.header-actions{flex-wrap:wrap;justify-content:center;width:100%}.alert-card-header{align-items:flex-start;flex-direction:column;gap:.75rem}.alert-actions{justify-content:space-between;width:100%}}@media (max-width:480px){.header-content h1{font-size:1.5rem}.stat-item{font-size:.85rem;padding:.5rem .9rem}.alert-card{padding:1.25rem}}.temperature-container{font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;min-height:calc(100vh - var(--nav-height));overflow-x:hidden;padding:var(--content-padding);position:relative;transition:all var(--transition-slow)}.temperature-header{align-items:center;animation:slideUp .5s ease-out;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);background:var(--gradient-glass);border:1px solid var(--border-color);border-radius:var(--card-radius);box-shadow:var(--shadow-xl);display:flex;flex-wrap:wrap;gap:2rem;justify-content:space-between;margin-bottom:2.5rem;padding:2.5rem;position:relative;z-index:1}.dark-mode .temperature-header{background:var(--gradient-glass);border-color:var(--border-strong);box-shadow:var(--shadow-xl),var(--shadow-glow)}.header-content{min-width:320px}.temperature-header h1{-webkit-text-fill-color:#0000;align-items:center;background:var(--gradient-primary);-webkit-background-clip:text;background-clip:text;display:flex;font-size:clamp(2rem,4vw,2.8rem);font-weight:800;gap:1.2rem;letter-spacing:-.02em;margin:0 0 .8rem}.dark-mode .temperature-header h1{background:linear-gradient(135deg,#60a5fa,#22d3ee 50%,#34d399);-webkit-background-clip:text;background-clip:text}.header-icon{filter:drop-shadow(0 4px 8px rgba(59,130,246,.3));font-size:clamp(2rem,4vw,2.8rem)!important}.dark-mode .header-icon{color:var(--primary-400)}.temperature-header p{color:var(--text-secondary);font-size:1.2rem;font-weight:500;line-height:1.6;margin:0}.export-button{align-items:center;background:var(--gradient-primary);border:none;border-radius:18px;box-shadow:var(--shadow-md);color:#fff;cursor:pointer;display:flex;font-size:1.1rem;font-weight:700;gap:1rem;overflow:hidden;padding:1.2rem 2.4rem;position:relative;transition:all .4s cubic-bezier(.4,0,.2,1)}.export-button:before{background:linear-gradient(90deg,#0000,#fff3,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s;width:100%}.export-button:hover:before{left:100%}.export-button:hover{box-shadow:var(--shadow-glow);transform:translateY(-4px) scale(1.02)}.temperature-controls{backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);background:var(--gradient-glass);border:1px solid var(--border-color);border-radius:24px;box-shadow:var(--shadow-lg);display:flex;flex-direction:column;gap:2.5rem;margin-bottom:2.5rem;padding:2.5rem;position:relative;z-index:1}.dark-mode .temperature-controls{background:var(--gradient-glass);border-color:var(--border-strong)}.controls-row{grid-gap:2.5rem;display:grid;gap:2.5rem;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.control-group{display:flex;flex-direction:column;gap:1rem}.control-group label{align-items:center;color:var(--text-primary);display:flex;font-size:1.1rem;font-weight:700;gap:1rem;letter-spacing:-.01em}.control-icon{background:#3b82f61a;border-radius:10px;color:var(--primary-500)!important;font-size:1.4rem!important;padding:.5rem}.dark-mode .control-icon{background:#60a5fa26;color:var(--primary-400)!important}.control-group select{appearance:none;-webkit-appearance:none;-moz-appearance:none;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:var(--bg-secondary);background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%233b82f6' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 1rem center;background-repeat:no-repeat;background-size:1.2rem;border:2px solid var(--border-color);border-radius:15px;color:var(--text-primary);cursor:pointer;font-size:1.1rem;font-weight:600;padding:1.2rem 3rem 1.2rem 1.5rem;transition:all .3s cubic-bezier(.4,0,.2,1)}.dark-mode .control-group select{background:var(--bg-tertiary);background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2360a5fa' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 1rem center;background-repeat:no-repeat;background-size:1.2rem;border-color:var(--border-strong);color:var(--text-primary)}.control-group select:focus{border-color:var(--primary-500);box-shadow:0 0 0 4px var(--focus-ring);outline:none;transform:translateY(-3px)}.view-mode-selector{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:var(--hover-bg);border-radius:18px;gap:.5rem;padding:.8rem;width:100%}.view-mode-btn,.view-mode-selector{display:flex;justify-content:center}.view-mode-btn{align-items:center;background:#0000;border:none;border-radius:14px;color:var(--text-secondary);cursor:pointer;flex:1 1;font-size:1rem;font-weight:700;gap:.8rem;min-width:-webkit-fit-content;min-width:fit-content;padding:1rem 1.5rem;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1);white-space:nowrap}.view-mode-btn:hover{background:var(--hover-bg);color:var(--primary-500);transform:translateY(-2px)}.view-mode-btn.active{background:var(--gradient-primary);box-shadow:var(--shadow-glow);color:#fff}.temperature-stats{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));margin-bottom:2.5rem}.stat-card{backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);background:var(--gradient-glass);border-radius:24px;overflow:hidden;padding:2.5rem;position:relative;transition:all .4s cubic-bezier(.4,0,.2,1);z-index:1}.dark-mode .stat-card{background:var(--gradient-glass);border-color:var(--border-strong)}.stat-card:before{background:var(--gradient-primary);content:"";height:5px;left:0;position:absolute;right:0;top:0;transform:scaleX(0);transition:transform .4s cubic-bezier(.4,0,.2,1)}.stat-card:after{background:radial-gradient(circle,#3b82f60d 0,#0000 70%);content:"";height:200%;left:-50%;position:absolute;top:-50%;transform:scale(0);transition:transform .4s ease;width:200%}.stat-card:hover:before{transform:scaleX(1)}.stat-card:hover:after{transform:scale(1)}.stat-card:hover{border-color:var(--primary-400);box-shadow:var(--shadow-xl),var(--shadow-glow);transform:translateY(-10px) scale(1.02)}.stat-header{align-items:center;display:flex;gap:1.5rem;margin-bottom:2rem}.stat-icon{background:var(--hover-bg);border:2px solid var(--border-color);border-radius:20px;color:var(--primary-500);font-size:3rem!important;padding:1.2rem}.dark-mode .stat-icon{background:#60a5fa26;border-color:var(--border-strong);color:var(--primary-400)}.stat-title{color:var(--text-secondary);font-size:1.1rem;font-weight:700;letter-spacing:-.01em;margin:0}.stat-value{color:var(--text-primary);font-size:2.8rem;font-weight:800;letter-spacing:-.02em;margin:0 0 .8rem}.stat-subtitle{color:var(--primary-500);font-size:1rem;font-weight:700;letter-spacing:-.01em;margin:0}.dark-mode .stat-subtitle{color:var(--primary-400)}.temperature-content{grid-gap:2.5rem;display:grid;gap:2.5rem;grid-template-columns:1fr;position:relative;z-index:1}.chart-container{backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);background:var(--gradient-glass);border:1px solid var(--border-color);border-radius:24px;box-shadow:var(--shadow-lg);padding:3rem;transition:all .3s ease}.dark-mode .chart-container{background:var(--gradient-glass);border-color:var(--border-strong)}.chart-container:hover{box-shadow:var(--shadow-xl);transform:translateY(-5px)}.chart-header{border-bottom:2px solid var(--border-color);flex-wrap:wrap;gap:1rem;justify-content:space-between;margin-bottom:2.5rem;padding-bottom:1.5rem}.chart-header,.chart-title{align-items:center;display:flex}.chart-title{color:var(--text-primary);font-size:1.8rem;font-weight:800;gap:1.2rem;letter-spacing:-.02em;margin:0}.chart-icon{background:var(--hover-bg);border:2px solid var(--border-color);border-radius:15px;color:var(--primary-500)!important;font-size:1.8rem!important;padding:.8rem}.dark-mode .chart-icon{background:#60a5fa26;border-color:var(--border-strong);color:var(--primary-400)!important}.chart-wrapper{height:450px;margin-top:2rem;position:relative}.chart-container:has(.temperature-map-iframe) .chart-wrapper{height:650px}.temperature-map-iframe{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:20px;box-shadow:var(--shadow-lg);height:100%;min-height:600px;transition:all .3s ease}.dark-mode .temperature-map-iframe{background:var(--bg-tertiary);border-color:var(--border-strong)}.temperature-map-iframe:hover{border-color:var(--primary-400);box-shadow:var(--shadow-xl);transform:translateY(-2px)}.data-info{backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);background:var(--gradient-glass);border-left:5px solid var(--primary-500);border:1px solid var(--border-color);border-radius:20px;margin-top:2.5rem;padding:2.5rem}.dark-mode .data-info{background:var(--gradient-glass);border-left-color:var(--primary-400);border-color:var(--border-strong)}.data-info h4{align-items:center;color:var(--text-primary);display:flex;font-size:1.4rem;font-weight:800;gap:1rem;letter-spacing:-.01em;margin:0 0 1.5rem}.data-info-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));margin-top:1.5rem}.info-item{align-items:center;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:15px;display:flex;justify-content:space-between;padding:1.2rem;transition:all .3s ease}.dark-mode .info-item{background:var(--bg-tertiary);border-color:var(--border-strong)}.info-item:hover{background:var(--hover-bg);transform:translateY(-2px)}.info-label{color:var(--text-secondary);font-size:1rem;font-weight:600}.info-value{color:var(--primary-500);font-size:1.1rem;font-weight:800}.dark-mode .info-value{color:var(--primary-400)}.loading-skeleton{animation:loading 1.5s infinite;background:linear-gradient(90deg,var(--bg-tertiary) 25%,var(--bg-secondary) 50%,var(--bg-tertiary) 75%);background-size:200% 100%;border-radius:12px}@keyframes loading{0%{background-position:200% 0}to{background-position:-200% 0}}@media (max-width:1200px){.temperature-content{grid-template-columns:1fr}.chart-wrapper{height:400px}}@media (max-width:768px){.temperature-container{padding:1.5rem}.temperature-header{gap:1.5rem;padding:2rem}.temperature-header h1{font-size:2.2rem}.export-button{font-size:1rem;padding:1rem 1.8rem}.temperature-controls{gap:2rem;padding:2rem}.controls-row{gap:2rem;grid-template-columns:1fr}.temperature-stats{gap:1.5rem;grid-template-columns:1fr}.chart-container{padding:2rem}.chart-wrapper{height:350px}.temperature-map-iframe{border-radius:15px;min-height:400px}.chart-container:has(.temperature-map-iframe) .chart-wrapper{height:450px}.data-info{padding:2rem}.data-info-grid{grid-template-columns:1fr}.view-mode-selector{flex-direction:column;gap:.5rem}.view-mode-btn{flex:none}}@media (max-width:480px){.temperature-container{padding:1rem}.temperature-header{padding:1.5rem;text-align:center}.header-content{min-width:0;min-width:auto}.temperature-header h1{flex-direction:column;font-size:1.8rem;gap:.5rem}.temperature-controls{padding:1.5rem}.stat-card{padding:2rem}.chart-container{padding:1.5rem}.chart-title{font-size:1.4rem}.chart-wrapper{height:300px}.temperature-map-iframe{border-radius:12px;min-height:350px}.chart-container:has(.temperature-map-iframe) .chart-wrapper{height:400px}}::-webkit-scrollbar{height:8px;width:8px}::-webkit-scrollbar-track{background:var(--bg-tertiary);border-radius:10px}::-webkit-scrollbar-thumb{background:var(--gradient-primary);border-radius:10px}::-webkit-scrollbar-thumb:hover{background:var(--primary-600)}.control-group select:focus-visible,.export-button:focus-visible,.view-mode-btn:focus-visible{outline:2px solid var(--primary-500);outline-offset:2px}@media print{.temperature-container{background:#fff!important;padding:1rem}.export-button,.temperature-controls{display:none}.chart-container{border:1px solid #ccc;box-shadow:none;break-inside:avoid;page-break-inside:avoid}}.biodiversity-module{background:var(--bg-primary);min-height:calc(100vh - var(--nav-height));padding:var(--content-padding);transition:all var(--transition-slow)}.biodiversity-module.dark{background:var(--gradient-dark)}.biodiversity-header{align-items:center;animation:slideUp .5s ease-out;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);background:var(--glass-bg);border:1px solid var(--border-color);border-radius:var(--card-radius);box-shadow:var(--shadow-lg);display:flex;flex-wrap:wrap;gap:1.5rem;justify-content:space-between;margin-bottom:2rem;padding:2rem}.biodiversity-module.dark .biodiversity-header{background:#1e293bcc;border-color:#0ea5e94d}.header-content{flex:1 1;min-width:300px}.header-content h1{-webkit-text-fill-color:#0000;align-items:center;background:var(--gradient-ocean);-webkit-background-clip:text;background-clip:text;display:flex;font-size:clamp(2rem,4vw,2.5rem);font-weight:800;gap:1rem;margin:0 0 .5rem}.header-icon{color:var(--primary-500);filter:drop-shadow(0 2px 8px rgba(14,165,233,.3));font-size:2.5rem!important}.biodiversity-module.dark .header-icon{color:var(--primary-400)}.header-content p{color:var(--text-secondary);font-size:1.1rem;font-weight:500;margin:0}.biodiversity-module.dark .header-content p{color:#cbd5e1}.header-stats{display:flex;flex-wrap:wrap;gap:1.5rem}.stat-card{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:16px;display:flex;gap:1rem;min-width:150px;padding:1.5rem;transition:all .3s ease}.biodiversity-module.dark .stat-card{background:#1e293be6;border-color:#a78bfa4d}.stat-card:hover{box-shadow:0 20px 40px #8b5cf633;transform:translateY(-5px)}.stat-icon{color:#8b5cf6;font-size:2rem!important}.biodiversity-module.dark .stat-icon{color:#a78bfa}.stat-info{display:flex;flex-direction:column}.stat-value{color:#1e293b;font-size:1.8rem;font-weight:700;line-height:1}.biodiversity-module.dark .stat-value{color:#f8fafc}.stat-label{color:#64748b;font-size:.9rem;font-weight:500}.biodiversity-module.dark .stat-label{color:#cbd5e1}.biodiversity-controls{grid-gap:2rem;align-items:center;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#fffffff2;border:1px solid #8b5cf633;border-radius:20px;display:grid;gap:2rem;grid-template-columns:1fr auto auto;margin-bottom:2rem;padding:2rem}.biodiversity-module.dark .biodiversity-controls{background:#1e293bf2;border-color:#a78bfa4d}.search-filter-section{align-items:center;display:flex;flex-wrap:wrap;gap:1.5rem;min-width:0}.search-bar{flex:1 1;min-width:300px;position:relative}.search-icon{color:#8b5cf6;font-size:1.2rem!important;left:1.2rem;position:absolute;top:50%;transform:translateY(-50%);z-index:2}.search-input{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffe6;border:2px solid #8b5cf633;border-radius:15px;font-size:1rem;padding:1rem 1.5rem 1rem 3.5rem;transition:all .3s ease;width:100%}.biodiversity-module.dark .search-input{background:#334155e6;border-color:#a78bfa4d;color:#f8fafc}.search-input:focus{border-color:#8b5cf6;box-shadow:0 0 0 4px #8b5cf61a;outline:none;transform:translateY(-2px)}.search-input::placeholder{color:#94a3b8}.biodiversity-module.dark .search-input::placeholder{color:#64748b}.filter-section{align-items:center;display:flex;gap:.8rem}.filter-icon{color:#8b5cf6;font-size:1.2rem!important}.biodiversity-module.dark .filter-icon{color:#a78bfa}.filter-select{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffe6;border:2px solid #8b5cf633;border-radius:12px;color:#1e293b;cursor:pointer;font-size:.95rem;font-weight:500;padding:.8rem 1.2rem;transition:all .3s ease}.biodiversity-module.dark .filter-select{background:#334155e6;border-color:#a78bfa4d;color:#f8fafc}.filter-select:focus{border-color:#8b5cf6;box-shadow:0 0 0 4px #8b5cf61a;outline:none}.view-controls{background:#8b5cf61a;border-radius:15px;display:flex;gap:.5rem;padding:.5rem}.view-btn{align-items:center;background:#0000;border:none;border-radius:12px;color:#64748b;cursor:pointer;display:flex;font-size:.95rem;font-weight:600;gap:.8rem;padding:1rem 1.5rem;transition:all .3s ease;white-space:nowrap}.view-btn:hover{background:#8b5cf61a;color:#8b5cf6;transform:translateY(-2px)}.view-btn.active{background:linear-gradient(135deg,#8b5cf6,#ec4899);box-shadow:0 8px 25px #8b5cf64d;color:#fff}.biodiversity-module.dark .view-btn:hover{color:#a78bfa}.results-count{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#8b5cf61a;border-radius:12px;color:#64748b;display:flex;font-size:.95rem;font-weight:500;gap:.8rem;padding:.8rem 1.2rem}.biodiversity-module.dark .results-count{background:#a78bfa1a;color:#cbd5e1}.info-icon{color:#8b5cf6!important}.biodiversity-module.dark .info-icon{color:#a78bfa!important}.biodiversity-loading{min-height:60vh;text-align:center}.loading-spinner{animation:spin 1s ease-in-out infinite;border:4px solid #8b5cf61a;border-left-color:#8b5cf6;height:60px;margin-bottom:1.5rem;width:60px}.biodiversity-module.dark .loading-spinner{border-color:#a78bfa1a #a78bfa1a #a78bfa1a #a78bfa}.biodiversity-loading p{color:#64748b;font-size:1.2rem;margin:0 0 .5rem}.biodiversity-module.dark .biodiversity-loading p{color:#cbd5e1}.loading-stats span{color:#8b5cf6;font-size:.9rem;font-weight:500}.biodiversity-module.dark .loading-stats span{color:#a78bfa}.biodiversity-map{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#fffffff2;border:1px solid #8b5cf633;border-radius:20px;box-shadow:0 20px 40px #8b5cf61a;overflow:hidden;padding:1.5rem}.biodiversity-module.dark .biodiversity-map{background:#1e293bf2;border-color:#a78bfa4d}.leaflet-container{border-radius:15px;overflow:hidden}@media (max-width:1024px){.biodiversity-controls{gap:1.5rem;grid-template-columns:1fr}.search-filter-section{justify-content:stretch}.search-bar{min-width:auto}.header-stats{justify-content:center}}@media (max-width:768px){.biodiversity-module{padding:1rem}.biodiversity-header{flex-direction:column;padding:1.5rem;text-align:center}.header-content h1{font-size:2rem}.header-stats{justify-content:center;width:100%}.stat-card{flex:1 1;min-width:120px}.search-filter-section{flex-direction:column;gap:1rem}.search-bar{min-width:auto}.view-controls{justify-content:center;width:100%}}@media (max-width:480px){.header-content h1{flex-direction:column;font-size:1.8rem;gap:.5rem}.header-stats{flex-direction:column;width:100%}.stat-card{width:100%}.biodiversity-controls{padding:1.5rem}}.species-list{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(400px,1fr))}.species-card{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#fffffff2;border:1px solid #8b5cf633;border-radius:20px;cursor:pointer;overflow:hidden;padding:2rem;position:relative;transition:all .4s cubic-bezier(.4,0,.2,1)}.biodiversity-module.dark .species-card{background:#1e293bf2;border-color:#a78bfa4d}.species-card:before{background:linear-gradient(135deg,#8b5cf6,#ec4899);content:"";height:4px;left:0;position:absolute;right:0;top:0;transform:scaleX(0);transition:transform .3s ease}.species-card:hover:before{transform:scaleX(1)}.species-card:hover{border-color:#8b5cf666;box-shadow:0 25px 50px #8b5cf633;transform:translateY(-8px)}.species-card.selected{border-color:#8b5cf6;box-shadow:0 25px 50px #8b5cf64d;transform:translateY(-5px)}.species-card.selected:before{transform:scaleX(1)}.species-header{gap:1rem;margin-bottom:1.5rem}.common-name{color:#1e293b;font-weight:700;line-height:1.2;margin:0 0 .5rem}.biodiversity-module.dark .common-name{color:#f8fafc}.scientific-name{color:#64748b;font-weight:400;margin:0 0 .3rem}.biodiversity-module.dark .scientific-name{color:#cbd5e1}.local-name{background:#8b5cf61a;border-radius:20px;color:#8b5cf6;display:inline-block;font-size:.85rem;font-weight:600;padding:.3rem .8rem}.biodiversity-module.dark .local-name{background:#a78bfa1a;color:#a78bfa}.species-status{align-items:flex-end;display:flex;flex-direction:column;gap:.5rem}.status-badge{border-radius:25px;letter-spacing:.5px;min-width:120px;padding:.5rem 1rem;text-align:center}.status-badge.large{font-size:.9rem;min-width:150px;padding:.8rem 1.5rem}.category-badge{background:linear-gradient(135deg,#8b5cf6,#ec4899);border-radius:15px;color:#fff;font-size:.75rem;font-weight:600;letter-spacing:.5px;padding:.4rem .8rem;text-transform:uppercase}.species-info{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:1.5rem}.info-section{background:#8b5cf60d;border-left:4px solid #8b5cf6;border-radius:12px;padding:1.2rem}.biodiversity-module.dark .info-section{background:#a78bfa1a;border-left-color:#a78bfa}.info-section h4{align-items:center;color:#1e293b;display:flex;font-size:1rem;font-weight:700;gap:.8rem;margin:0 0 1rem}.biodiversity-module.dark .info-section h4{color:#f8fafc}.info-section p{color:#64748b;font-size:.9rem;line-height:1.5;margin:0 0 .8rem}.biodiversity-module.dark .info-section p{color:#cbd5e1}.edna-status{align-items:center;border-radius:12px;display:flex;font-weight:600;gap:.8rem;margin-bottom:.8rem;padding:.8rem}.edna-status.detected{background:#22c55e1a;border:1px solid #22c55e33;color:#059669}.edna-status.not-detected{background:#ef44441a;border:1px solid #ef444433;color:#dc2626}.edna-indicator{animation:pulse 2s infinite;background:currentColor;border-radius:50%;height:10px;width:10px}.threats-list{gap:.5rem;margin-top:.8rem}.threat-tag{background:#ef44441a;border:1px solid #ef444433;border-radius:20px;color:#dc2626;font-weight:500;padding:.4rem .8rem}.species-description{background:#8b5cf60d;border-radius:15px;margin-top:1.5rem;padding:1.5rem}.biodiversity-module.dark .species-description{background:#a78bfa1a}.species-description p{color:#64748b;font-size:.95rem;line-height:1.6;margin:0}.biodiversity-module.dark .species-description p{color:#cbd5e1}.species-detail-modal{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#000000b3;bottom:0;display:flex;justify-content:center;left:0;padding:2rem;position:fixed;right:0;top:0;z-index:1000}.modal-content{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#fffffffa;border:1px solid #8b5cf633;border-radius:25px;box-shadow:0 25px 50px #0000004d;max-height:90vh;max-width:800px;overflow-y:auto;position:relative;width:100%}.biodiversity-module.dark .modal-content{background:#1e293bfa;border-color:#a78bfa4d}.close-modal{align-items:center;background:#ef44441a;border:1px solid #ef444433;border-radius:50%;color:#dc2626;cursor:pointer;display:flex;font-size:1.5rem;font-weight:700;height:40px;justify-content:center;position:absolute;right:1.5rem;top:1.5rem;transition:all .3s ease;width:40px;z-index:1001}.close-modal:hover{background:#ef444433;transform:scale(1.1)}.species-detail{padding:2.5rem}.detail-header{border-bottom:2px solid #8b5cf633;margin-bottom:2.5rem;padding-bottom:2rem;text-align:center}.detail-header h2{color:#1e293b;font-size:2.2rem;font-weight:700;margin:0 0 .5rem}.biodiversity-module.dark .detail-header h2{color:#f8fafc}.detail-header .scientific-name{color:#64748b;font-size:1.2rem;font-style:italic;margin:0 0 1.5rem}.biodiversity-module.dark .detail-header .scientific-name{color:#cbd5e1}.detail-content{grid-gap:2rem;display:grid;gap:2rem}.detail-section{background:#8b5cf60d;border-radius:15px;padding:2rem}.biodiversity-module.dark .detail-section{background:#a78bfa1a}.detail-section h3{border-bottom:2px solid #8b5cf633;color:#1e293b;font-size:1.3rem;font-weight:700;margin:0 0 1.5rem;padding-bottom:.8rem}.biodiversity-module.dark .detail-section h3{border-bottom-color:#a78bfa4d;color:#f8fafc}.characteristics{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.characteristics,.migration-details{grid-gap:1rem;display:grid;gap:1rem}.route-point{background:#fffc;border:1px solid #8b5cf633;border-radius:12px;display:flex;flex-direction:column;gap:.5rem;padding:1rem}.biodiversity-module.dark .route-point{background:#334155cc;border-color:#a78bfa4d}.route-point strong{color:#8b5cf6;font-size:1.1rem}.biodiversity-module.dark .route-point strong{color:#a78bfa}.route-point span{color:#64748b;font-size:.9rem}.biodiversity-module.dark .route-point span{color:#cbd5e1}.detail-section ul{list-style:none;margin:1rem 0 0;padding:0}.detail-section li{background:#ef44441a;border-left:4px solid #dc2626;border-radius:10px;color:#dc2626;margin-bottom:.5rem;padding:.8rem 1rem}.no-results{color:#64748b;padding:4rem 2rem;text-align:center}.biodiversity-module.dark .no-results{color:#cbd5e1}.no-results-icon{color:#8b5cf6;font-size:4rem!important;margin-bottom:1.5rem}.biodiversity-module.dark .no-results-icon{color:#a78bfa}.no-results h3{color:#1e293b;font-size:1.5rem;margin:0 0 1rem}.biodiversity-module.dark .no-results h3{color:#f8fafc}.no-results p{font-size:1rem;margin:0}@media (max-width:768px){.species-list{gap:1.5rem;grid-template-columns:1fr}.species-card{padding:1.5rem}.species-header{flex-direction:column;gap:1rem}.species-status{align-items:flex-start}.species-info{gap:1rem;grid-template-columns:1fr}.modal-content{margin:1rem;max-height:calc(100vh - 2rem)}.species-detail{padding:2rem 1.5rem}.detail-header h2{font-size:1.8rem}.characteristics{grid-template-columns:1fr}}.leaflet-popup-content-wrapper{border-radius:15px!important;box-shadow:0 10px 30px #8b5cf64d!important}.leaflet-popup-content{font-family:inherit!important;margin:1rem!important}.edna-popup,.migration-popup{font-size:.9rem;line-height:1.4}.edna-popup strong,.migration-popup strong{color:#8b5cf6;font-weight:700}.leaflet-control-zoom a{background:#fffffff2!important;border:1px solid #8b5cf633!important;border-radius:8px!important;color:#8b5cf6!important;font-weight:700!important}.leaflet-control-zoom a:hover{background:#8b5cf61a!important;border-color:#8b5cf6!important}.biodiversity-module.dark .leaflet-control-zoom a{background:#1e293bf2!important;border-color:#a78bfa4d!important;color:#a78bfa!important}.biodiversity-module.dark .leaflet-control-zoom a:hover{background:#a78bfa1a!important}.leaflet-control-attribution{background:#fffc!important;border:1px solid #8b5cf633!important;border-radius:10px!important}.biodiversity-module.dark .leaflet-control-attribution{background:#1e293bcc!important;border-color:#a78bfa4d!important;color:#cbd5e1!important}.biodiversity-loading{align-items:center;display:flex;flex-direction:column;height:calc(100vh - 200px);justify-content:center}.loading-spinner{animation:spin 1s linear infinite;border:4px solid #ecf0f1;border-radius:50%;border-top-color:#3498db;height:40px;margin-bottom:1rem;width:40px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.map-view{display:flex;gap:1rem;height:600px}.map-container{border-radius:12px;box-shadow:0 4px 15px #0000001a;flex:1 1;overflow:hidden}.biodiversity-map{height:100%;width:100%}.map-legend{background:#fff;border-radius:12px;box-shadow:0 4px 15px #0000001a;height:-webkit-fit-content;height:fit-content;padding:1.5rem;width:250px}.map-legend h4{border-bottom:2px solid #ecf0f1;color:#2c3e50;margin-top:0;padding-bottom:.5rem}.legend-item{align-items:center;display:flex;gap:.8rem;margin-bottom:.8rem}.legend-line{border-radius:2px;height:3px;width:20px}.legend-line.migration{background:#3498db;border:2px dashed #2980b9}.legend-circle{border-radius:50%;height:12px;width:12px}.legend-circle.migration-point{background:#3498db;border:2px solid #2c3e50}.legend-circle.edna-point{background:#e74c3c;border:2px solid #c0392b}.species-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(450px,1fr))}.species-card{background:#fff;border-radius:12px;box-shadow:0 4px 15px #0000001a;padding:1.5rem;transition:transform .3s ease,box-shadow .3s ease}.species-card:hover{box-shadow:0 8px 25px #00000026;transform:translateY(-5px)}.species-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:1rem}.species-names{flex:1 1}.common-name{color:#2c3e50;font-size:1.4rem;margin:0 0 .3rem}.scientific-name{color:#7f8c8d;font-size:1rem;font-style:italic;margin:0 0 .2rem}.local-name{color:#95a5a6;font-size:.9rem;margin:0}.conservation-status{margin-left:1rem}.status-badge{border-radius:20px;color:#fff;font-size:.8rem;font-weight:600;padding:.4rem .8rem;text-transform:uppercase}.species-content{color:#34495e}.species-description{line-height:1.6;margin-bottom:1rem}.species-details{margin-bottom:1rem}.detail-row{font-size:.9rem;margin-bottom:.5rem}.detail-row strong{color:#2c3e50}.edna-info,.migration-info,.physical-characteristics{background:#ecf0f14d;border-radius:8px;margin-bottom:1rem;padding:1rem}.edna-info h4,.migration-info h4,.physical-characteristics h4{align-items:center;color:#2c3e50;display:flex;font-size:1rem;gap:.5rem;margin:0 0 .5rem}.characteristics-grid,.edna-details,.migration-details{grid-gap:.5rem;display:grid;font-size:.9rem;gap:.5rem;grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}.threats-section{margin-bottom:1.5rem}.threats-section h4{color:#e74c3c;font-size:1rem;margin:0 0 .5rem}.threats-list{display:flex;flex-wrap:wrap;gap:.3rem}.threat-tag{background:#ffebee;border:1px solid #ffcdd2;border-radius:12px;color:#d32f2f;font-size:.8rem;padding:.2rem .6rem}.species-actions{display:flex;gap:.5rem;margin-top:1rem}.action-btn{align-items:center;border:none;border-radius:6px;cursor:pointer;display:flex;font-size:.9rem;font-weight:500;gap:.3rem;padding:.6rem 1rem;transition:all .3s ease}.view-details{background:#3498db;color:#fff}.view-details:hover{background:#2980b9;transform:translateY(-1px)}.view-migration{background:#27ae60;color:#fff}.view-migration:hover{background:#229954;transform:translateY(-1px)}.modal-overlay{align-items:center;background:#000000b3;bottom:0;display:flex;justify-content:center;left:0;padding:2rem;position:fixed;right:0;top:0;z-index:1000}.modal-content.species-modal{background:#fff;border-radius:12px;display:flex;flex-direction:column;max-height:90vh;max-width:800px;overflow:hidden;width:100%}.modal-header{align-items:flex-start;border-bottom:1px solid #ecf0f1;display:flex;justify-content:space-between;padding:1.5rem}.modal-header h2{color:#2c3e50;margin:0}.modal-scientific-name{color:#7f8c8d;font-style:italic;margin:.3rem 0 0}.close-btn{align-items:center;background:none;border:none;color:#7f8c8d;cursor:pointer;display:flex;font-size:1.5rem;height:30px;justify-content:center;padding:0;width:30px}.close-btn:hover{background:#ecf0f1;border-radius:50%}.modal-body{flex:1 1;overflow-y:auto;padding:1.5rem}.detail-section{margin-bottom:2rem}.detail-section h4{border-bottom:2px solid #ecf0f1;color:#2c3e50;margin-bottom:.8rem;padding-bottom:.3rem}.sequence-data{background:#2c3e50;border-radius:8px;color:#ecf0f1;font-family:Courier New,monospace;padding:1rem}.sequence-metadata{color:#bdc3c7;display:flex;font-size:.9rem;gap:1rem;margin-top:.5rem}.route-table{display:flex;flex-direction:column;gap:.5rem}.route-point{grid-gap:1rem;background:#f8f9fa;border-radius:6px;display:grid;font-size:.9rem;gap:1rem;grid-template-columns:2fr 1fr 1fr;padding:.8rem}@media (max-width:768px){.biodiversity-container{padding:1rem}.biodiversity-header{flex-direction:column;gap:1rem;text-align:center}.biodiversity-controls{align-items:stretch;flex-direction:column}.search-section{min-width:auto}.results-count{margin-left:0;text-align:center}.species-grid{grid-template-columns:1fr}.species-header{align-items:flex-start;flex-direction:column;gap:.5rem}.conservation-status{margin-left:0}.map-view{flex-direction:column;height:auto}.map-container{height:400px}.modal-overlay{padding:1rem}.route-point{gap:.3rem;grid-template-columns:1fr}}.chatbot-page{display:flex;gap:0;height:calc(100vh - 80px);padding:1rem}.chat-sidebar{backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);background:#ffffffd9;border:1px solid #6366f126;border-radius:20px;box-shadow:0 8px 32px #6366f114;display:flex;flex-direction:column;margin-right:1rem;min-width:280px;overflow:hidden;position:relative;transition:all .3s ease;width:280px}.chat-sidebar:not(.open){border:none;margin-right:0;min-width:0;opacity:0;padding:0;width:0}.dark .chat-sidebar{background:#1e1b4bd9;border-color:#8b5cf633;box-shadow:0 8px 32px #0000004d}.sidebar-header{align-items:center;border-bottom:1px solid #6366f11a;display:flex;justify-content:space-between;padding:1rem 1.25rem}.dark .sidebar-header{border-color:#8b5cf626}.sidebar-header h2{align-items:center;color:#1e1b4b;display:flex;font-size:1rem;font-weight:600;gap:.5rem;margin:0}.sidebar-header h2 svg{color:#6366f1;font-size:1.2rem}.dark .sidebar-header h2{color:#e2e8f0}.dark .sidebar-header h2 svg{color:#a5b4fc}.new-chat-btn{align-items:center;background:linear-gradient(135deg,#6366f1,#8b5cf6);border:none;border-radius:10px;box-shadow:0 3px 10px #6366f140;color:#fff;cursor:pointer;display:flex;height:36px;justify-content:center;transition:all .2s ease;width:36px}.new-chat-btn:hover{box-shadow:0 4px 15px #6366f159;transform:scale(1.05)}.sidebar-toggle{align-items:center;background:#6366f1e6;border:none;border-radius:0 8px 8px 0;color:#fff;cursor:pointer;display:flex;height:48px;justify-content:center;left:280px;margin-left:1rem;position:fixed;top:50%;transform:translateY(-50%);transition:all .3s ease;width:28px;z-index:101}.sidebar-toggle:hover{background:#6366f1;width:32px}.sidebar-toggle.closed{border-radius:8px;left:0;margin-left:1rem}.dark .sidebar-toggle{background:#8b5cf6e6}.dark .sidebar-toggle:hover{background:#8b5cf6}.chat-history-list{flex:1 1;overflow-y:auto;padding:.75rem}.chat-history-list::-webkit-scrollbar{width:4px}.chat-history-list::-webkit-scrollbar-thumb{background:#6366f14d;border-radius:2px}.no-history{color:#94a3b8;font-size:.9rem;padding:2rem 1rem;text-align:center}.history-item{align-items:center;border-radius:12px;cursor:pointer;display:flex;gap:.75rem;margin-bottom:.5rem;padding:.85rem 1rem;transition:all .2s ease}.history-item:hover{background:#6366f114}.history-item.active{background:#6366f11f;border:1px solid #6366f133}.dark .history-item:hover{background:#8b5cf61f}.dark .history-item.active{background:#8b5cf62e;border-color:#8b5cf64d}.history-icon{color:#8b5cf6;flex-shrink:0;font-size:1.1rem!important}.history-content{display:flex;flex:1 1;flex-direction:column;gap:.2rem;min-width:0}.history-title{color:#1e1b4b;font-size:.9rem;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dark .history-title{color:#e2e8f0}.history-date{color:#94a3b8;font-size:.75rem}.history-delete{align-items:center;background:#ef44441a;border:none;border-radius:8px;color:#ef4444;cursor:pointer;display:flex;height:30px;justify-content:center;opacity:0;transition:all .2s ease;width:30px}.history-item:hover .history-delete{opacity:1}.history-delete:hover{background:#ef444433}.history-delete svg{font-size:1rem}.chat-container{display:flex;flex:1 1;flex-direction:column;gap:.75rem;min-width:0}.chat-header{align-items:center;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);background:#ffffffd9;border:1px solid #6366f126;border-radius:20px;box-shadow:0 8px 32px #6366f114;display:flex;justify-content:space-between;padding:1rem 1.5rem}.dark .chat-header{background:#1e1b4bd9;border-color:#8b5cf633;box-shadow:0 8px 32px #0000004d}.chat-header-left{gap:1rem}.chat-avatar,.chat-header-left{align-items:center;display:flex}.chat-avatar{background:linear-gradient(135deg,#6366f1,#8b5cf6 50%,#a855f7);border-radius:16px;box-shadow:0 4px 15px #6366f14d;color:#fff;height:50px;justify-content:center;width:50px}.chat-avatar svg{font-size:1.6rem}.chat-info h1{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#6366f1,#8b5cf6);-webkit-background-clip:text;background-clip:text;color:#1e1b4b;font-size:1.25rem;font-weight:700;margin:0}.dark .chat-info h1{background:linear-gradient(135deg,#a5b4fc,#c4b5fd);-webkit-background-clip:text;background-clip:text}.chat-status{align-items:center;color:#64748b;display:flex;font-size:.85rem;gap:.4rem}.dark .chat-status{color:#94a3b8}.status-dot{animation:pulse 2s infinite;background:#10b981;border-radius:50%;box-shadow:0 0 8px #10b98180;height:8px;width:8px}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.chat-header-right{display:flex;gap:.5rem}.chat-action-btn{align-items:center;background:#6366f11a;border:none;border-radius:12px;color:#6366f1;cursor:pointer;display:flex;height:42px;justify-content:center;transition:all .2s ease;width:42px}.chat-action-btn:hover{background:#6366f133;transform:scale(1.05)}.dark .chat-action-btn{background:#8b5cf626;color:#a5b4fc}.dark .chat-action-btn:hover{background:#8b5cf640}.chat-main{backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);background:#ffffffbf;border:1px solid #6366f11f;border-radius:20px;box-shadow:0 8px 32px #6366f10f;display:flex;flex:1 1;flex-direction:column;overflow:hidden}.dark .chat-main{background:#1e1b4bbf;border-color:#8b5cf626;box-shadow:0 8px 32px #00000040}.chat-messages{display:flex;flex:1 1;flex-direction:column;gap:1.25rem;overflow-y:auto;padding:1.5rem}.chat-messages::-webkit-scrollbar{width:6px}.chat-messages::-webkit-scrollbar-track{background:#0000}.chat-messages::-webkit-scrollbar-thumb{background:#6366f14d;border-radius:3px}.chat-message{animation:slideIn .3s ease;display:flex;gap:.75rem;max-width:85%}@keyframes slideIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.chat-message.user{align-self:flex-end;flex-direction:row-reverse}.message-avatar{align-items:center;border-radius:12px;display:flex;flex-shrink:0;height:38px;justify-content:center;width:38px}.chat-message.bot .message-avatar{background:linear-gradient(135deg,#6366f1,#8b5cf6);box-shadow:0 3px 10px #6366f140;color:#fff}.chat-message.user .message-avatar{background:linear-gradient(135deg,#10b981,#059669);box-shadow:0 3px 10px #10b98140;color:#fff}.message-avatar svg{font-size:1.2rem}.message-body{display:flex;flex-direction:column;gap:.35rem}.message-content{border-radius:18px;font-size:.95rem;line-height:1.6;padding:1rem 1.25rem}.chat-message.bot .message-content{background:#6366f114;border-bottom-left-radius:6px;color:#1e1b4b}.dark .chat-message.bot .message-content{background:#8b5cf61f;color:#e2e8f0}.chat-message.user .message-content{background:linear-gradient(135deg,#6366f1,#8b5cf6);border-bottom-right-radius:6px;box-shadow:0 4px 15px #6366f140;color:#fff}.message-time{color:#94a3b8;font-size:.75rem;padding:0 .5rem}.chat-message.user .message-time{text-align:right}.chat-bullet{border-left:2px solid #8b5cf6;margin:.25rem 0;padding:.25rem 0 .25rem .5rem}.message-content.typing{align-items:center;display:flex;gap:5px;padding:1rem 1.5rem}.typing-dot{animation:bounce 1.4s ease-in-out infinite both;background:#8b5cf6;border-radius:50%;height:8px;width:8px}.typing-dot:first-child{animation-delay:-.32s}.typing-dot:nth-child(2){animation-delay:-.16s}@keyframes bounce{0%,80%,to{opacity:.5;transform:scale(.7)}40%{opacity:1;transform:scale(1)}}.quick-prompts{align-items:center;backdrop-filter:blur(15px);-webkit-backdrop-filter:blur(15px);background:#ffffffb3;border:1px solid #6366f11a;border-radius:16px;display:flex;flex-wrap:wrap;gap:.5rem;padding:.75rem 1rem}.dark .quick-prompts{background:#1e1b4bb3;border-color:#8b5cf626}.prompts-label{color:#64748b;font-size:.8rem;font-weight:600;margin-right:.25rem}.dark .prompts-label{color:#94a3b8}.quick-prompt-btn{align-items:center;background:#fffc;border:1px solid #6366f126;border-radius:20px;cursor:pointer;display:flex;gap:.5rem;padding:.5rem .85rem;transition:all .2s ease;white-space:nowrap}.quick-prompt-btn:hover:not(:disabled){background:#6366f11a;border-color:var(--accent);transform:translateY(-1px)}.quick-prompt-btn:disabled{cursor:not-allowed;opacity:.5}.dark .quick-prompt-btn{background:#1e1b4bcc;border-color:#8b5cf633}.dark .quick-prompt-btn:hover:not(:disabled){background:#8b5cf626}.quick-prompt-btn svg{color:var(--accent);font-size:1.1rem}.quick-prompt-btn span{color:#374151;font-size:.8rem;font-weight:500}.dark .quick-prompt-btn span{color:#e2e8f0}.mobile-sidebar-toggle{align-items:center;background:#6366f11a;border:none;border-radius:12px;color:#6366f1;cursor:pointer;display:none;height:40px;justify-content:center;margin-right:.5rem;width:40px}.dark .mobile-sidebar-toggle{background:#8b5cf626;color:#a5b4fc}.chat-footer{padding:0}.chat-input-wrapper{align-items:center;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);background:#ffffffd9;border:1px solid #6366f126;border-radius:20px;box-shadow:0 8px 32px #6366f114;display:flex;gap:.75rem;padding:.75rem 1rem;transition:all .2s ease}.chat-input-wrapper:focus-within{border-color:#8b5cf6;box-shadow:0 8px 32px #8b5cf626}.dark .chat-input-wrapper{background:#1e1b4bd9;border-color:#8b5cf633;box-shadow:0 8px 32px #0000004d}.dark .chat-input-wrapper:focus-within{border-color:#a78bfa}.chat-input-wrapper textarea{background:#0000;border:none;color:#1e1b4b;flex:1 1;font-family:inherit;font-size:1rem;max-height:120px;min-height:24px;outline:none;padding:.5rem;resize:none}.chat-input-wrapper textarea::placeholder{color:#94a3b8}.dark .chat-input-wrapper textarea{color:#f1f5f9}.dark .chat-input-wrapper textarea::placeholder{color:#64748b}.send-btn{align-items:center;background:linear-gradient(135deg,#6366f1,#8b5cf6);border:none;border-radius:14px;box-shadow:0 4px 15px #6366f14d;color:#fff;cursor:pointer;display:flex;height:48px;justify-content:center;transition:all .25s ease;width:48px}.send-btn:hover:not(:disabled){box-shadow:0 6px 20px #6366f166;transform:scale(1.05)}.send-btn:disabled{cursor:not-allowed;opacity:.5;transform:none}.send-btn svg{font-size:1.3rem}@media (max-width:900px){.chat-sidebar{border-radius:0 20px 20px 0;bottom:0;left:0;margin:0;position:fixed;top:80px;z-index:100}.chat-sidebar:not(.open){min-width:280px;opacity:1;transform:translateX(-100%);width:280px}.sidebar-toggle{border-radius:0 8px 8px 0;left:0;margin-left:0;position:fixed;top:50%;transform:translateY(-50%)}.sidebar-toggle:not(.closed){left:280px}.sidebar-toggle.closed{border-radius:0 8px 8px 0;left:0}.mobile-sidebar-toggle{display:none}.chatbot-page{padding:.75rem}}@media (max-width:768px){.chatbot-page{height:calc(100vh - 70px);padding:.75rem}.chat-header{border-radius:14px;padding:.75rem 1rem}.chat-avatar{border-radius:12px;height:40px;width:40px}.chat-info h1{font-size:1rem}.chat-main{border-radius:16px}.chat-messages{gap:.75rem;padding:.75rem}.chat-message{max-width:92%}.message-avatar{border-radius:10px;height:30px;width:30px}.message-content{font-size:.88rem;padding:.75rem 1rem}.quick-prompts{border-radius:12px;gap:.4rem;padding:.6rem .75rem}.prompts-label{display:none}.quick-prompt-btn{border-radius:16px;padding:.4rem .7rem}.quick-prompt-btn span{font-size:.75rem}.quick-prompt-btn svg{font-size:1rem}.chat-input-wrapper{border-radius:14px;padding:.5rem .6rem}.send-btn{border-radius:12px;height:40px;width:40px}}@media (max-width:480px){.chatbot-page{padding:.5rem}.chat-action-btn{height:36px;width:36px}.message-avatar{height:26px;width:26px}.message-avatar svg{font-size:.9rem}.quick-prompt-btn{padding:.35rem .6rem}.quick-prompt-btn span{font-size:.7rem}}
/*# sourceMappingURL=main.d5f9a0db.css.map*/