@import url(https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap);:root{--primary-500:#667eea;--primary-600:#5a67d8;--primary-700:#4c51bf;--neutral-50:#f9fafb;--neutral-100:#f3f4f6;--neutral-200:#e5e7eb;--neutral-300:#d1d5db;--neutral-400:#9ca3af;--neutral-500:#6b7280;--neutral-600:#4b5563;--neutral-700:#374151;--neutral-800:#1f2937;--neutral-900:#111827;--success-500:#10b981;--error-500:#ef4444;--warning-500:#f59e0b;--shadow-sm:0 1px 2px 0 #0000000d;--shadow-md:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;--shadow-lg:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;--shadow-xl:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;--radius-sm:0.375rem;--radius-md:0.5rem;--radius-lg:0.75rem;--radius-xl:1rem;--transition-fast:150ms ease-in-out;--transition-normal:300ms ease-in-out;--transition-slow:500ms ease-in-out}.dark{--bg-primary:#0f172a;--bg-secondary:#1e293b;--bg-tertiary:#334155;--text-primary:#f8fafc;--text-secondary:#cbd5e1;--text-muted:#94a3b8;--border-color:#334155}:root{--bg-primary:#fff;--bg-secondary:#f8fafc;--bg-tertiary:#f1f5f9;--text-primary:#111827;--text-secondary:#4b5563;--text-muted:#6b7280;--border-color:#e5e7eb}*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#f8fafc;background:var(--bg-secondary);color:#111827;color:var(--text-primary);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:14px;line-height:1.5;transition:background-color .3s ease-in-out,color .3s ease-in-out;transition:background-color var(--transition-normal),color var(--transition-normal)}.loading-state{align-items:center;background:#fff;background:var(--bg-primary);display:flex;height:100vh;justify-content:center}.loading-spinner-container{text-align:center}.loading-spinner{animation:spin 1s linear infinite;border:3px solid #e5e7eb;border-top:3px solid #667eea;border:3px solid var(--neutral-200);border-radius:50%;border-top-color:var(--primary-500);height:40px;margin:0 auto 1rem;width:40px}.chat-app{background:#f8fafc;background:var(--bg-secondary);display:flex;flex-direction:column;height:100vh;transition:background-color .3s ease-in-out;transition:background-color var(--transition-normal)}.search-header{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fff;background:var(--bg-primary);border-bottom:1px solid #e5e7eb;border-bottom:1px solid var(--border-color);padding:1rem 1.5rem;position:sticky;top:0;transition:all .3s ease-in-out;transition:all var(--transition-normal);z-index:100}.search-container{align-items:center;display:flex;gap:1rem;margin:0 auto;max-width:600px}.search-input-wrapper{align-items:center;display:flex;flex:1 1;position:relative}.search-icon{color:#6b7280;color:var(--text-muted);left:.75rem;position:absolute;z-index:1}.search-input{background:#f8fafc;background:var(--bg-secondary);border:1px solid #e5e7eb;border:1px solid var(--border-color);border-radius:.75rem;border-radius:var(--radius-lg);color:#111827;color:var(--text-primary);font-size:.9375rem;padding:.75rem 2.5rem;transition:all .15s ease-in-out;transition:all var(--transition-fast);width:100%}.search-input:focus{border-color:#667eea;border-color:var(--primary-500);box-shadow:0 0 0 3px #667eea1a;outline:none}.search-close{background:none;border:none;border-radius:.375rem;border-radius:var(--radius-sm);color:#6b7280;color:var(--text-muted);cursor:pointer;font-size:1rem;padding:.25rem;position:absolute;right:.75rem;transition:all .15s ease-in-out;transition:all var(--transition-fast)}.search-close:hover{background:#ef44441a;color:#ef4444;color:var(--error-500)}.clear-history-btn{align-items:center;background:#ef4444;background:var(--error-500);border:none;border-radius:.75rem;border-radius:var(--radius-lg);color:#fff;cursor:pointer;display:flex;font-size:.875rem;gap:.5rem;margin-left:.75rem;padding:.5rem 1rem;transition:all .15s ease-in-out;transition:all var(--transition-fast)}.clear-history-btn:hover{background:#dc2626;transform:translateY(-1px)}.send-spinner,.typing-spinner{animation:spin 1s linear infinite}.chat-main{display:flex;flex:1 1;flex-direction:column;height:calc(100vh - 80px)}.messages-container{flex:1 1;overflow-y:auto;padding:1.5rem;scroll-behavior:smooth}.messages-container::-webkit-scrollbar{width:6px}.messages-container::-webkit-scrollbar-track{background:#0000}.messages-container::-webkit-scrollbar-thumb{background:#d1d5db;background:var(--neutral-300);border-radius:3px}.messages-container::-webkit-scrollbar-thumb:hover{background:#9ca3af;background:var(--neutral-400)}.empty-state{align-items:center;display:flex;flex-direction:column;height:100%;justify-content:center;margin:0 auto;max-width:600px;padding:2rem;text-align:center}.empty-icon{color:#6b7280;color:var(--text-muted);margin-bottom:1.5rem;opacity:.7}.empty-state h2{color:#111827;color:var(--text-primary);font-size:1.5rem;font-weight:600;margin-bottom:.5rem}.empty-state p{color:#4b5563;color:var(--text-secondary);font-size:1rem;line-height:1.6;margin-bottom:2rem}.suggestion-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));max-width:500px;width:100%}.suggestion-card{align-items:center;background:#fff;background:var(--bg-primary);border:1px solid #e5e7eb;border:1px solid var(--border-color);border-radius:1rem;border-radius:var(--radius-xl);cursor:pointer;display:flex;gap:.75rem;padding:1.25rem;text-align:left;transition:all .15s ease-in-out;transition:all var(--transition-fast)}.suggestion-card:hover{background:#667eea;background:var(--primary-500);border-color:#667eea;border-color:var(--primary-500);box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;box-shadow:var(--shadow-lg);color:#fff;transform:translateY(-2px)}.suggestion-icon{font-size:1.25rem}.messages-list{margin:0 auto;max-width:800px;width:100%}.message-group{margin-bottom:2rem}.message{align-items:flex-start;display:flex;gap:.75rem;margin-bottom:.75rem}.message-avatar{align-items:center;border-radius:50%;display:flex;flex-shrink:0;font-size:1rem;font-weight:600;height:36px;justify-content:center;width:36px}.user-avatar{background:linear-gradient(135deg,#667eea,#5a67d8);background:linear-gradient(135deg,var(--primary-500),var(--primary-600))}.ai-avatar{background:linear-gradient(135deg,#10b981,#059669);background:linear-gradient(135deg,var(--success-500),#059669);color:#fff}.message-content{flex:1 1;min-width:0}.user-message .message-content{background:#667eea;background:var(--primary-500);border-radius:1rem;border-radius:var(--radius-xl);border-bottom-left-radius:.25rem;color:#fff;margin-left:auto;max-width:70%;padding:.75rem 1rem}.ai-message .message-content{background:#fff;background:var(--bg-primary);border:1px solid #e5e7eb;border:1px solid var(--border-color);border-radius:1rem;border-radius:var(--radius-xl);border-bottom-left-radius:.25rem;box-shadow:0 1px 2px 0 #0000000d;box-shadow:var(--shadow-sm);padding:1rem}.user-message{flex-direction:row-reverse}.user-message .message-avatar{order:2}.message-text{word-wrap:break-word;font-size:.9375rem;line-height:1.5}.ai-message .message-text{color:#111827;color:var(--text-primary)}.ai-message .message-text h1,.ai-message .message-text h2,.ai-message .message-text h3{color:#111827;color:var(--text-primary);margin-bottom:.5rem;margin-top:0}.ai-message .message-text p{margin-bottom:.75rem}.ai-message .message-text ol,.ai-message .message-text ul{margin-bottom:.75rem;padding-left:1.5rem}.ai-message .message-text code{background:#f8fafc;background:var(--bg-secondary);border-radius:.375rem;border-radius:var(--radius-sm);font-family:SF Mono,Monaco,Consolas,monospace;font-size:.875rem;padding:.125rem .375rem}.ai-message .message-text pre{background:#111827;background:var(--neutral-900);border-radius:.75rem;border-radius:var(--radius-lg);color:#f3f4f6;color:var(--neutral-100);margin:1rem 0;overflow-x:auto;padding:1rem}.ai-message .message-text pre code{background:none;color:inherit;padding:0}.message-time{color:#6b7280;color:var(--text-muted);font-size:.75rem;margin-top:.375rem}.user-message .message-time{color:#ffffffb3;text-align:right}.message-actions{gap:.5rem;margin-top:.5rem}.action-btn,.message-actions{align-items:center;display:flex}.action-btn{background:#f8fafc;background:var(--bg-secondary);border:1px solid #e5e7eb;border:1px solid var(--border-color);border-radius:.375rem;border-radius:var(--radius-sm);color:#6b7280;color:var(--text-muted);cursor:pointer;font-size:.75rem;gap:.25rem;padding:.25rem .5rem;transition:all .15s ease-in-out;transition:all var(--transition-fast)}.action-btn:hover{background:#f1f5f9;background:var(--bg-tertiary);color:#4b5563;color:var(--text-secondary)}.copy-btn:hover{background:#10b981;background:var(--success-500);border-color:#10b981;border-color:var(--success-500);color:#fff}.delete-btn:hover{background:#ef4444;background:var(--error-500);border-color:#ef4444;border-color:var(--error-500);color:#fff}.typing .message-content{background:#fff;background:var(--bg-primary);border:1px solid #e5e7eb;border:1px solid var(--border-color);border-radius:1rem;border-radius:var(--radius-xl);border-bottom-left-radius:.25rem;padding:1rem}.typing-indicator{align-items:center;display:flex;gap:.75rem}.typing-dots{display:flex;gap:.25rem}.typing-dots span{animation:typing 1.4s ease-in-out infinite;background:#667eea;background:var(--primary-500);border-radius:50%;height:6px;width:6px}.typing-dots span:first-child{animation-delay:-.32s}.typing-dots span:nth-child(2){animation-delay:-.16s}.typing-dots span:nth-child(3){animation-delay:0s}@keyframes typing{0%,80%,to{opacity:.5;transform:scale(.8)}40%{opacity:1;transform:scale(1)}}.typing-text{color:#6b7280;color:var(--text-muted);font-size:.875rem;font-style:italic}.input-area{background:#fff;background:var(--bg-primary);border-top:1px solid #e5e7eb;border-top:1px solid var(--border-color);padding:1rem 1.5rem}.error-banner{align-items:center;background:#ef44441a;border:1px solid #ef444433;border-radius:.75rem;border-radius:var(--radius-lg);display:flex;font-size:.875rem;gap:.5rem;margin-bottom:1rem;padding:.75rem 1rem}.error-banner,.error-close{color:#ef4444;color:var(--error-500)}.error-close{background:none;border:none;border-radius:.375rem;border-radius:var(--radius-sm);cursor:pointer;margin-left:auto;padding:.25rem;transition:all .15s ease-in-out;transition:all var(--transition-fast)}.error-close:hover{background:#ef44441a}.input-container{margin:0 auto;max-width:800px}.input-wrapper{background:#f8fafc;background:var(--bg-secondary);border:1px solid #e5e7eb;border:1px solid var(--border-color);border-radius:1rem;border-radius:var(--radius-xl);padding:.75rem 1rem;transition:all .15s ease-in-out;transition:all var(--transition-fast)}.input-wrapper:focus-within{border-color:#667eea;border-color:var(--primary-500);box-shadow:0 0 0 3px #667eea1a}.message-input{background:#0000;border:none;color:#111827;color:var(--text-primary);font-family:inherit;font-size:.9375rem;line-height:1.5;margin-bottom:.5rem;outline:none;resize:none;width:100%}.message-input::placeholder{color:#6b7280;color:var(--text-muted)}.input-actions{align-items:center;display:flex;justify-content:space-between}.input-info{display:flex;flex-direction:column;gap:.125rem}.char-count{font-size:.75rem}.char-count,.input-hint{color:#6b7280;color:var(--text-muted)}.input-hint{font-size:.6875rem}.send-btn{align-items:center;background:#667eea;background:var(--primary-500);border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:1rem;height:36px;justify-content:center;transition:all .15s ease-in-out;transition:all var(--transition-fast);width:36px}.send-btn:hover:not(:disabled){background:#5a67d8;background:var(--primary-600);transform:scale(1.05)}.send-btn:disabled{background:#d1d5db;background:var(--neutral-300);cursor:not-allowed;transform:none}.send-spinner{animation:spin 1s linear infinite;border:2px solid #ffffff4d;border-radius:50%;border-top-color:#fff;height:16px;width:16px}.optimistic{opacity:.7}.optimistic .message-content{background:#667eea1a;border-color:#667eea33}@media (max-width:768px){.chat-nav{padding:.75rem 1rem}.nav-center{margin:0 1rem}.brand-text,.user-name{display:none}.messages-container{padding:1rem}.user-message .message-content{max-width:85%}.suggestion-grid{grid-template-columns:1fr}.input-area{padding:1rem}}@media (max-width:480px){.nav-right{gap:.25rem}.nav-btn{font-size:.875rem;height:32px;width:32px}.user-menu{padding:.375rem .75rem}.messages-container{padding:.75rem}.message{gap:.5rem}.message-avatar{font-size:.875rem;height:32px;width:32px}}.login-page{align-items:center;background:linear-gradient(90deg,#e3f2fd,#fce4ec);display:flex;font-family:Segoe UI,sans-serif;justify-content:center;min-height:100vh;padding:1rem}.login-card{animation:fadeIn .5s ease;background:#fff;border-radius:16px;box-shadow:0 8px 30px #0000001f;max-width:420px;padding:2rem;text-align:center;width:100%}.login-form{gap:1rem;margin-top:1rem}.login-form,.login-header{display:flex;flex-direction:column}.login-header{align-items:center;gap:.5rem;margin-bottom:1rem}.login-icon{color:#007bff}.login-form h2{color:#2c3e50;font-size:2rem;margin:0}.password-wrapper{position:relative}.login-form input{background-color:#fdfdfd;border:1px solid #ccc;border-radius:10px;box-sizing:border-box;font-size:1rem;padding:.75rem 2.5rem;transition:border .3s ease;width:100%}.password-wrapper input{padding-right:3rem}.login-form input:focus{border-color:#007bff;box-shadow:0 0 0 2px #007bff40;outline:none}.password-toggle:hover{color:#007bff}.submit-btn{align-items:center;background:#007bff;border:none;border-radius:10px;color:#fff;cursor:pointer;display:flex;font-size:1rem;font-weight:700;gap:.5rem;justify-content:center;margin-top:.5rem;padding:.75rem;transition:all .3s ease}.spinner{animation:spin 1s linear infinite}.submit-btn:hover:not(:disabled){background-color:#0056b3;transform:translateY(-1px)}.submit-btn:disabled{background-color:#6c757d;cursor:not-allowed;transform:none}.auth-link .link{color:#007bff}.auth-link .link:hover{color:#0056b3}.register-page{align-items:center;background:linear-gradient(90deg,#fdfcfb,#e2d1c3);display:flex;font-family:Segoe UI,sans-serif;justify-content:center;min-height:100vh;padding:1rem}.register-card{animation:fadeIn .5s ease;background:#fff;border-radius:16px;box-shadow:0 8px 30px #0000001f;max-width:480px;overflow:hidden;text-align:center;width:100%}.register-form{gap:1rem;padding:2rem}.register-form,.register-header{display:flex;flex-direction:column}.register-header{align-items:center;gap:.5rem;margin-bottom:1rem}.header-icon{color:#3498db}.register-form h2{color:#2c3e50;font-size:2rem;margin:0}.subtitle{color:#7f8c8d;font-size:.95rem;margin-bottom:1rem}.input-group,.input-wrapper{align-items:center;display:flex;position:relative}.input-wrapper{width:100%}.input-icon{color:#7f8c8d;left:12px;position:absolute;z-index:1}.password-group{position:relative}.register-form input{border:1px solid #ccc;border-radius:10px;box-sizing:border-box;font-size:1rem;padding:.75rem 2.5rem;transition:all .3s ease;width:100%}.password-group input{padding-left:2.5rem;padding-right:3rem}.register-form input:focus{border-color:#ff69b4;box-shadow:0 0 0 2px #ff69b440;outline:none}.password-toggle{align-items:center;background:none;border:none;color:#6c757d;cursor:pointer;display:flex;justify-content:center;position:absolute;right:12px;top:50%;transform:translateY(-50%);transition:color .3s ease;z-index:2}.password-toggle:hover{color:#ff69b4}.password-toggle:disabled{cursor:not-allowed;opacity:.5}.password-requirements{background:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;margin:.5rem 0;padding:1rem;text-align:left}.requirements-title{color:#495057;font-size:.9rem;font-weight:600;margin:0 0 .5rem}.requirement-list{display:flex;flex-direction:column;gap:.3rem}.requirement{align-items:center;display:flex;font-size:.85rem;gap:.5rem;transition:color .3s ease}.requirement.valid{color:#28a745}.requirement.invalid{color:#dc3545}.requirement .icon{align-items:center;display:flex;height:16px;justify-content:center;width:16px}.password-match{border-radius:6px;font-size:.85rem;font-weight:500;gap:.5rem;margin-top:.5rem;padding:.5rem}.match-icon,.password-match{align-items:center;display:flex}.match-icon{justify-content:center}.password-match.match{background-color:#d4edda;border:1px solid #c3e6cb;color:#28a745}.password-match.no-match{background-color:#f8d7da;border:1px solid #f5c6cb;color:#dc3545}.submit-button{align-items:center;background:#ff69b4;border:none;border-radius:10px;color:#fff;cursor:pointer;display:flex;font-size:1rem;font-weight:700;gap:.5rem;justify-content:center;margin-top:.5rem;padding:.75rem;transition:all .3s ease}.loading-icon{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.submit-button:hover:not(:disabled){background-color:#e055a1;transform:translateY(-1px)}.submit-button:disabled{background-color:#6c757d;cursor:not-allowed;transform:none}.error-message{background-color:#f8d7da;border:1px solid #f5c6cb;border-radius:8px;color:#dc3545}.error-message,.success-message{align-items:center;display:flex;font-size:.9rem;gap:.5rem;margin:0;padding:.5rem;text-align:left}.success-message{background-color:#d4edda;border:1px solid #c3e6cb;border-radius:8px;color:#155724}.auth-link{color:#6c757d;font-size:.9rem;margin-top:1rem}.auth-link .link{color:#ff69b4;cursor:pointer;font-weight:500;text-decoration:underline}.auth-link .link:hover{color:#e055a1}@keyframes fadeIn{0%{opacity:0;transform:translateY(15px)}to{opacity:1;transform:translateY(0)}}:root{--navbar-bg:#fffffff2;--navbar-text:#2c3e50;--navbar-border:#e2e8f0cc;--navbar-shadow:0 4px 20px #00000014;--navbar-transition:all 0.3s cubic-bezier(0.4,0,0.2,1);--navbar-hover:#667eea;--navbar-active:linear-gradient(45deg,#667eea,#764ba2)}body{background:linear-gradient(135deg,#f1f5f9,#e2e8f0);font-family:Inter,Segoe UI,sans-serif;margin:0;padding:0;transition:background-color .3s ease}body.dark-mode{background:linear-gradient(135deg,#0f172a,#1e293b);color:#f8fafc}.dark-mode{--navbar-bg:#1e293bf2;--navbar-text:#f8fafc;--navbar-border:#475569cc;--navbar-shadow:0 4px 20px #0000004d}.navbar{backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);background:#fffffff2;background:var(--navbar-bg);border-bottom:1px solid #e2e8f0cc;border-bottom:1px solid var(--navbar-border);border-radius:16px;box-shadow:0 4px 20px #00000014;box-shadow:var(--navbar-shadow);justify-content:space-between;margin:1rem auto;max-width:1100px;padding:1rem 2rem;position:sticky;top:1rem;z-index:1000}.navbar,.navbar-logo{align-items:center;display:flex;transition:all .3s cubic-bezier(.4,0,.2,1);transition:var(--navbar-transition)}.navbar-logo{color:#2c3e50;color:var(--navbar-text);font-size:1.75rem;font-weight:800;gap:.75rem;padding:.5rem 0;text-decoration:none}.navbar-logo:hover{text-decoration:none;transform:scale(1.05)}.logo-icon{align-items:center;animation:bounce 2s infinite;background:linear-gradient(45deg,#667eea,#764ba2);background:var(--navbar-active);border-radius:12px;box-shadow:0 4px 12px #667eea4d;color:#fff;display:flex;font-size:1.5rem;height:40px;justify-content:center;transition:all .3s cubic-bezier(.4,0,.2,1);transition:var(--navbar-transition);width:40px}.navbar-logo:hover .logo-icon{animation-play-state:paused;box-shadow:0 6px 20px #667eea66;transform:rotate(5deg)}.logo-text{-webkit-text-fill-color:#0000;background:linear-gradient(45deg,#667eea,#764ba2);background:var(--navbar-active);-webkit-background-clip:text;background-clip:text;font-weight:800}@keyframes bounce{0%,20%,50%,80%,to{transform:translateY(0)}40%{transform:translateY(-3px)}60%{transform:translateY(-1px)}}.navbar-links{gap:.5rem}.navbar-links,.user-section{align-items:center;display:flex}.user-section{gap:1rem}.user-info{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#667eea1a;border:2px solid #667eea33;border-radius:25px;cursor:pointer;display:flex;gap:.75rem;padding:.5rem 1rem;transition:all .3s cubic-bezier(.4,0,.2,1);transition:var(--navbar-transition)}.user-info:hover{background:#667eea26;border-color:#667eea4d;box-shadow:0 4px 12px #667eea33;transform:translateY(-2px)}.user-avatar{align-items:center;background:linear-gradient(45deg,#667eea,#764ba2);background:var(--navbar-active);border-radius:50%;box-shadow:0 2px 8px #667eea4d;color:#fff;display:flex;font-size:.9rem;font-weight:700;height:32px;justify-content:center;width:32px}.user-name{white-space:nowrap}.nav-button,.user-name{color:#2c3e50;color:var(--navbar-text);font-size:.9rem;font-weight:600}.nav-button{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#667eea1a;border:2px solid #667eea33;border-radius:12px;cursor:pointer;display:flex;gap:.5rem;overflow:hidden;padding:.75rem 1.25rem;position:relative;text-decoration:none;transition:all .3s cubic-bezier(.4,0,.2,1);transition:var(--navbar-transition)}.nav-button:before{background:linear-gradient(90deg,#0000,#667eea1a,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s;width:100%}.nav-button:hover:before{left:100%}.nav-button:hover{background:#667eea;background:var(--navbar-hover);border-color:#667eea;border-color:var(--navbar-hover);box-shadow:0 6px 20px #667eea4d;color:#fff;text-decoration:none;transform:translateY(-2px)}.nav-button.active{background:linear-gradient(45deg,#667eea,#764ba2);background:var(--navbar-active);border-color:#0000;box-shadow:0 4px 12px #667eea4d;color:#fff}.logout{background:#f443361a;border-color:#f4433633;color:#f44336}.logout:hover{background:#f44336;border-color:#f44336;box-shadow:0 6px 20px #f443364d;color:#fff}.theme-toggle{align-items:center;background:#667eea1a;border:2px solid #667eea33;border-radius:12px;color:#2c3e50;color:var(--navbar-text);cursor:pointer;display:flex;font-size:1.2rem;height:48px;justify-content:center;padding:.75rem;transition:all .3s cubic-bezier(.4,0,.2,1);transition:var(--navbar-transition);width:48px}.theme-toggle:hover{background:#667eea;background:var(--navbar-hover);border-color:#667eea;border-color:var(--navbar-hover);box-shadow:0 6px 20px #667eea4d;color:#fff;transform:translateY(-2px) rotate(10deg)}.mobile-menu-toggle{background:#667eea1a;border:2px solid #667eea33;border-radius:8px;cursor:pointer;display:none;flex-direction:column;gap:3px;padding:.5rem}.mobile-menu-toggle,.mobile-menu-toggle span{transition:all .3s cubic-bezier(.4,0,.2,1);transition:var(--navbar-transition)}.mobile-menu-toggle span{background:#2c3e50;background:var(--navbar-text);border-radius:1px;height:2px;width:20px}.mobile-menu-toggle:hover{background:#667eea26;border-color:#667eea4d}.mobile-menu-toggle.active span:first-child{transform:rotate(45deg) translate(5px,5px)}.mobile-menu-toggle.active span:nth-child(2){opacity:0}.mobile-menu-toggle.active span:nth-child(3){transform:rotate(-45deg) translate(7px,-6px)}.mobile-menu{-webkit-backdrop-filter:blur(20px) saturate(180%);backdrop-filter:blur(20px) saturate(180%);background:#fffffff2;background:var(--navbar-bg);border:1px solid #e2e8f0cc;border:1px solid var(--navbar-border);border-radius:0 0 16px 16px;border-top:none;box-shadow:0 4px 20px #00000014;box-shadow:var(--navbar-shadow);left:0;opacity:0;padding:1rem;position:absolute;right:0;top:100%;transform:translateY(-100%);transition:all .3s cubic-bezier(.4,0,.2,1);transition:var(--navbar-transition);visibility:hidden;z-index:999}.mobile-menu.show{opacity:1;transform:translateY(0);visibility:visible}.mobile-menu .navbar-links{flex-direction:column;gap:1rem;width:100%}.mobile-menu .nav-button{justify-content:center;padding:1rem;width:100%}.mobile-menu .user-section{border-top:1px solid #e2e8f0cc;border-top:1px solid var(--navbar-border);flex-direction:column;gap:1rem;margin-top:1rem;padding-top:1rem}.nav-button.loading{overflow:hidden;position:relative}.nav-button.loading:after{animation:loading-shimmer 1.5s infinite;background:linear-gradient(90deg,#0000,#fff3,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;width:100%}@keyframes loading-shimmer{0%{left:-100%}to{left:100%}}.nav-button.success{background:#4caf501a;border-color:#4caf504d;color:#4caf50}.nav-button.error{background:#f443361a;border-color:#f443364d;color:#f44336}.notification-badge{align-items:center;animation:pulse 2s infinite;background:#f44336;border-radius:50%;box-shadow:0 2px 8px #f443364d;color:#fff;display:flex;font-size:.75rem;font-weight:600;height:20px;justify-content:center;position:absolute;right:-8px;top:-8px;width:20px}@keyframes pulse{0%{transform:scale(1)}50%{transform:scale(1.1)}to{transform:scale(1)}}@media (max-width:768px){.navbar{margin:.5rem;padding:1rem;position:relative}.navbar-logo{font-size:1.4rem}.logo-text,.navbar-links,.user-name{display:none}.user-section{gap:.5rem}.mobile-menu-toggle{display:flex}.nav-button{font-size:.8rem;padding:.5rem 1rem}.theme-toggle{height:40px;padding:.5rem;width:40px}}@media (max-width:480px){.navbar{margin:.25rem;padding:.75rem}.logo-icon{height:32px;width:32px}.logo-icon,.navbar-logo{font-size:1.2rem}}