.navigation{background:var(--surface);border-bottom:1px solid var(--border);padding:.75rem 1.5rem;position:sticky;top:0;z-index:100;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#18181bd9;transition:all .3s ease}.navigation.scrolled{padding:.5rem 1.5rem;background:#18181bf2;box-shadow:0 4px 20px #0000004d}[data-theme=light] .navigation{background:#ffffffe6}[data-theme=light] .navigation.scrolled{background:#fffffffa;box-shadow:0 4px 20px #00000014}.nav-container{max-width:1400px;margin:0 auto;display:flex;justify-content:space-between;align-items:center;gap:1rem}.nav-logo{display:flex;align-items:center;gap:.5rem;text-decoration:none;transition:transform .2s;flex-shrink:0}.nav-logo:hover{transform:scale(1.02)}.logo-img{width:48px;height:48px;object-fit:contain}.logo-text{font-size:1.4rem;font-weight:700;color:var(--text-primary, #fafafa);letter-spacing:-.02em}.nav-links{display:flex;align-items:center;gap:.15rem;justify-content:center}.nav-actions{display:flex;align-items:center;gap:.5rem;flex-shrink:0}.nav-link{display:flex;align-items:center;gap:.35rem;padding:.45rem .65rem;border-radius:10px;text-decoration:none;color:var(--text-secondary);font-size:.82rem;font-weight:500;transition:all .25s var(--ease-out);border:1px solid transparent;background:transparent;cursor:pointer;position:relative;overflow:hidden;font-family:inherit}.nav-link:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(135deg,#8b5cf61a,#6366f11a);opacity:0;transition:opacity .25s var(--ease-out)}.nav-link:hover:before{opacity:1}.nav-link:hover{background:var(--surface-light);color:var(--text-primary);transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.nav-link:active{transform:translateY(0) scale(.97);transition:transform .1s}.nav-link.active{background:#8b5cf61a;color:var(--accent);border-color:#8b5cf626}.nav-link.active:after{content:"";position:absolute;bottom:-1px;left:50%;transform:translate(-50%);width:24px;height:3px;background:var(--gradient);border-radius:3px;animation:linkIndicator .3s var(--ease-bounce)}@keyframes linkIndicator{0%{width:0;opacity:0}to{width:24px;opacity:1}}.nav-label{display:block}.nav-badge{position:absolute;top:2px;right:2px;min-width:16px;height:16px;padding:0 4px;border-radius:9px;background:#ef4444;color:#fff;font-size:.6rem;font-weight:700;line-height:16px;text-align:center;pointer-events:none;z-index:5;animation:badgePop .25s var(--ease-bounce)}@keyframes badgePop{0%{transform:scale(0)}to{transform:scale(1)}}.mobile-sheet-badge{margin-left:auto;min-width:20px;height:20px;padding:0 6px;border-radius:10px;background:#ef4444;color:#fff;font-size:.7rem;font-weight:700;line-height:20px;text-align:center}.mobile-more-btn,.mobile-tasks-link{display:none}.desktop-tasks-link{display:flex}.nav-more-wrapper{position:relative}.nav-more-btn{font-family:inherit}.nav-dropdown{position:absolute;top:calc(100% + .5rem);right:0;min-width:180px;background:var(--surface);border:1px solid var(--border);border-radius:12px;box-shadow:var(--shadow-lg);padding:.5rem;z-index:200;animation:dropdownFade .15s ease-out}@keyframes dropdownFade{0%{opacity:0;transform:translateY(-6px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.dropdown-item{display:flex;align-items:center;gap:.6rem;padding:.65rem .85rem;border-radius:8px;text-decoration:none;color:var(--text-secondary);font-size:.875rem;transition:all .15s}.dropdown-item:hover,.dropdown-item.active{background:var(--surface-light);color:var(--text-primary)}.nav-link.flow-link{color:#818cf8}.nav-link.flow-link.active{background:#6366f11f;color:#818cf8;border-color:#6366f133}.nav-link.flow-link:hover{background:#6366f114;color:#a5b4fc}.dropdown-item.flow-item,.mobile-sheet-item.flow-item{color:#818cf8;font-weight:600;position:relative}.dropdown-item.flow-item:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:3px;height:60%;background:linear-gradient(180deg,#6366f1,#a855f7);border-radius:0 2px 2px 0}.dropdown-item.flow-item:hover{background:#6366f11a}.dropdown-divider{height:1px;background:var(--border);margin:.5rem 0}.nav-upgrade-btn{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:linear-gradient(135deg,#f59e0b,#d97706);border:none;border-radius:8px;color:#fff;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .2s;margin-left:.5rem}.nav-upgrade-btn:hover{background:linear-gradient(135deg,#fbbf24,#f59e0b);transform:translateY(-1px);box-shadow:0 4px 12px #f59e0b4d}.nav-upgrade-btn svg{color:#fff}.theme-toggle{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:10px;border:1px solid var(--border);background:var(--surface-light);cursor:pointer;transition:all .2s;margin-left:.5rem}.theme-toggle:hover{background:var(--surface-elevated);transform:scale(1.05)}.nav-projects-btn .nav-badge{position:absolute;top:2px;right:2px}@media(max-width:1024px){.nav-label,.nav-upgrade-btn span{display:none}.nav-upgrade-btn{padding:.5rem}.nav-link{padding:.6rem}}@media(max-width:640px){.navigation{position:fixed;top:0;bottom:auto;left:0;right:0;padding:.35rem .75rem;padding-top:calc(.35rem + env(safe-area-inset-top,0));border-top:none;border-bottom:1px solid var(--border);background:#18181bf2;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);z-index:1000}[data-theme=light] .navigation{background:#fffffff2}.nav-container{gap:0;justify-content:space-around;align-items:center}.nav-logo{display:none}.nav-links{width:100%;justify-content:space-around;align-items:center;gap:0}.nav-link{flex-direction:column;align-items:center;justify-content:center;padding:.5rem .75rem;gap:.25rem;border-radius:12px;min-width:56px}.nav-link svg{width:22px;height:22px}.nav-label{display:block;font-size:.65rem;font-weight:500;opacity:.8}.nav-link.active .nav-label{opacity:1;color:var(--accent)}.nav-link.active svg{color:var(--accent)}.nav-link.active:before{content:"";position:absolute;bottom:2px;left:50%;transform:translate(-50%);width:4px;height:4px;border-radius:50%;background:var(--accent);opacity:1;animation:mobileIndicatorIn .25s var(--ease-bounce)}@keyframes mobileIndicatorIn{0%{transform:translate(-50%) scale(0)}to{transform:translate(-50%) scale(1)}}.nav-link:hover{transform:none;box-shadow:none}.nav-link:active{transform:scale(.95)}.nav-link.active:after{display:none}.nav-link:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle,rgba(139,92,246,.3) 0%,transparent 70%);opacity:0;transform:scale(0);transition:transform .3s ease,opacity .3s ease;pointer-events:none;border-radius:inherit}.nav-link:active:after{opacity:1;transform:scale(2);transition:transform .1s ease,opacity .1s ease}.desktop-only,.desktop-tasks-link,.nav-more-wrapper.desktop-only,.theme-toggle,.nav-upgrade-btn,.nav-user-wrapper,.nav-actions,.quota-badge{display:none!important}.mobile-more-btn,.mobile-tasks-link{display:flex!important}.nav-badge{top:0;right:4px;min-width:14px;height:14px;padding:0 3px;font-size:.55rem;line-height:14px}.mobile-avatar{width:24px;height:24px;border-radius:50%;background:linear-gradient(135deg,var(--accent, #8b5cf6),#6d28d9);color:#fff;font-size:.7rem;font-weight:700;display:flex;align-items:center;justify-content:center;overflow:hidden;flex-shrink:0}.mobile-avatar-img{width:100%;height:100%;object-fit:cover;border-radius:50%}.mobile-more-btn.active .mobile-avatar{box-shadow:0 0 0 2px var(--accent, #8b5cf6)}}@media(max-width:380px){.nav-link{padding:.4rem .5rem;min-width:48px}.nav-link svg{width:20px;height:20px}.nav-label{font-size:.6rem}}.mobile-sheet-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;z-index:2000;animation:overlayFadeIn .2s ease-out;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}@keyframes overlayFadeIn{0%{opacity:0}to{opacity:1}}.mobile-sheet{position:fixed;bottom:0;left:0;right:0;background:var(--surface, #18181b);border-top-left-radius:20px;border-top-right-radius:20px;padding:.5rem 1.25rem 2rem;padding-bottom:calc(2rem + env(safe-area-inset-bottom,0));z-index:2001;animation:sheetSlideUp .25s cubic-bezier(.32,.72,0,1);max-height:75vh;overflow-y:auto}[data-theme=light] .mobile-sheet{background:#fff;box-shadow:0 -8px 32px #00000026}@keyframes sheetSlideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.mobile-sheet-item{animation:sheetItemIn .3s ease both}.mobile-sheet-item:nth-child(1){animation-delay:.04s}.mobile-sheet-item:nth-child(2){animation-delay:.06s}.mobile-sheet-item:nth-child(3){animation-delay:.08s}.mobile-sheet-item:nth-child(4){animation-delay:.1s}.mobile-sheet-item:nth-child(5){animation-delay:.12s}.mobile-sheet-item:nth-child(6){animation-delay:.14s}.mobile-sheet-item:nth-child(7){animation-delay:.16s}.mobile-sheet-item:nth-child(8){animation-delay:.18s}.mobile-sheet-item:nth-child(9){animation-delay:.2s}.mobile-sheet-item:nth-child(10){animation-delay:.22s}@keyframes sheetItemIn{0%{opacity:0;transform:translate(-8px)}to{opacity:1;transform:translate(0)}}.mobile-sheet-handle{width:36px;height:4px;background:var(--border, #2a2a2e);border-radius:2px;margin:0 auto .75rem}.mobile-sheet-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem;padding-bottom:.75rem;border-bottom:1px solid var(--border, #2a2a2e)}.mobile-sheet-header h3{font-size:1.1rem;font-weight:600;color:var(--text-primary, #fafafa);margin:0}.mobile-sheet-close{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;background:var(--surface-light, #222226);border:none;color:var(--text-secondary, #a1a1a6);cursor:pointer;transition:all .15s}.mobile-sheet-close:hover{background:var(--surface-elevated, #2a2a2e);color:var(--text-primary, #fafafa)}.mobile-sheet-items{display:flex;flex-direction:column;gap:.25rem}.mobile-sheet-item{display:flex;align-items:center;gap:.85rem;padding:.85rem 1rem;border-radius:12px;text-decoration:none;color:var(--text-secondary, #a1a1a6);font-size:.95rem;font-weight:500;transition:all .15s;background:none;border:none;width:100%;cursor:pointer;font-family:inherit}.mobile-sheet-item:hover,.mobile-sheet-item:active{background:var(--surface-light, #222226);color:var(--text-primary, #fafafa)}.mobile-sheet-item.active{background:#8b5cf61a;color:var(--accent, #8b5cf6)}.mobile-sheet-item.active svg{color:var(--accent, #8b5cf6)}.mobile-sheet-item.logout{color:var(--error)}.mobile-sheet-item.logout:hover{background:#ef44441a;color:var(--error)}.mobile-sheet-item.flow-item{background:linear-gradient(135deg,#6366f114,#a855f70f);border:1px solid rgba(99,102,241,.15);border-radius:12px;margin-bottom:.25rem}.mobile-sheet-divider{height:1px;background:var(--border, #2a2a2e);margin:.5rem 0}.nav-user-wrapper{position:relative}.nav-user-btn{display:flex;align-items:center;gap:.5rem;padding:.4rem .75rem;background:var(--surface-alt);border:1px solid var(--border);border-radius:50px;cursor:pointer;transition:all .2s;color:var(--text-primary)}.nav-user-btn:hover,.nav-user-btn.active{background:var(--accent);border-color:var(--accent);color:#fff}.user-avatar{width:28px;height:28px;border-radius:50%;background:var(--gradient);display:flex;align-items:center;justify-content:center;font-weight:600;font-size:.85rem;color:#fff}.user-avatar.large{width:40px;height:40px;font-size:1.1rem}.user-avatar-img{width:100%;height:100%;border-radius:50%;object-fit:cover}.user-name{font-size:.85rem;font-weight:500;max-width:100px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-plan-badge{color:var(--warning)}.user-dropdown{min-width:260px}.user-dropdown-header{display:flex;align-items:center;gap:.75rem;padding:.75rem}.user-info{display:flex;flex-direction:column;gap:.1rem}.user-info-name{font-weight:600;font-size:.95rem;color:var(--text-primary)}.user-info-email{font-size:.8rem;color:var(--text-secondary)}.user-plan-tag{display:inline-block;padding:.15rem .5rem;border-radius:10px;font-size:.7rem;font-weight:600;margin-top:.25rem;width:fit-content}.user-plan-tag.free{background:var(--surface-alt);color:var(--text-secondary)}.user-plan-tag.pro,.user-plan-tag.premium,.user-plan-tag.pro_plus{background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff}.user-plan-tag.trial{background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff}.user-plan-tag.team{background:linear-gradient(135deg,#8b5cf6,#7c3aed);color:#fff}.logout-item{color:var(--error)!important;width:100%;background:none;border:none;text-align:left;cursor:pointer}.logout-item:hover{background:#ef44441a!important}.admin-item{color:#8b5cf6!important}.admin-item:hover{background:#8b5cf61a!important}.nav-login-btn{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:var(--gradient);border-radius:8px;color:#fff;text-decoration:none;font-weight:500;font-size:.9rem;transition:all .2s}.nav-login-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px #8b5cf666}@media(max-width:768px){.navigation{padding:.5rem 1rem}.nav-container{gap:.5rem}.logo-text{display:none}.nav-links{gap:.25rem}.nav-link{padding:.5rem;border-radius:10px}.nav-label,.nav-more-btn .nav-label{display:none}.nav-more-btn svg:last-child{display:none}.quota-badge,.nav-upgrade-btn span{display:none}.nav-upgrade-btn{padding:.5rem;border-radius:8px}.user-name{display:none}.nav-user-btn{padding:.3rem;border-radius:50%}.nav-user-btn>svg:last-child{display:none}.nav-login-btn span{display:none}.nav-login-btn{padding:.5rem;border-radius:50%}.nav-dropdown{right:0;left:auto;min-width:180px}}@media(max-width:480px){.navigation{padding:.4rem .75rem}.nav-link{padding:.4rem}.logo-img{width:36px;height:36px}}.toast-container{position:fixed;top:1rem;right:1rem;z-index:10000;display:flex;flex-direction:column;gap:.75rem;pointer-events:none}.toast{display:flex;align-items:center;gap:.75rem;padding:1rem 1.25rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:0 10px 25px -5px #0003,0 8px 10px -6px #0000001a;animation:toastSlideIn .3s var(--ease-out);pointer-events:auto;min-width:280px;max-width:400px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.toast-exit{animation:toastSlideOut .3s var(--ease-out) forwards}@keyframes toastSlideIn{0%{opacity:0;transform:translate(100px) scale(.95)}to{opacity:1;transform:translate(0) scale(1)}}@keyframes toastSlideOut{0%{opacity:1;transform:translate(0) scale(1)}to{opacity:0;transform:translate(100px) scale(.95)}}.toast-icon{flex-shrink:0;width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center}.toast-message{flex:1;font-size:.9rem;color:var(--text-primary);line-height:1.4;margin:0}.toast-dismiss{flex-shrink:0;background:none;border:none;padding:.25rem;cursor:pointer;color:var(--text-muted);border-radius:var(--radius);transition:all .2s;opacity:.6}.toast-dismiss:hover{opacity:1;background:var(--surface-light);color:var(--text-primary)}.toast-success .toast-icon{background:#10b98126;color:#10b981}.toast-success{border-left:3px solid #10B981}.toast-error .toast-icon{background:#ef444426;color:#ef4444}.toast-error{border-left:3px solid #EF4444}.toast-info .toast-icon{background:#3b82f626;color:#3b82f6}.toast-info{border-left:3px solid #3B82F6}.toast-ai .toast-icon{background:linear-gradient(135deg,#8b5cf633,#ec489933);color:#8b5cf6;animation:aiPulse 2s ease-in-out infinite}.toast-ai{border-left:3px solid;border-image:linear-gradient(180deg,#8b5cf6,#ec4899) 1}@keyframes aiPulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.toast:after{content:"";position:absolute;bottom:0;left:0;height:2px;background:currentColor;opacity:.3;animation:toastProgress 4s linear forwards;width:100%;border-radius:0 0 var(--radius-lg) var(--radius-lg)}@keyframes toastProgress{0%{width:100%}to{width:0}}@media(max-width:480px){.toast-container{left:1rem;right:1rem;top:auto;bottom:5rem}.toast{min-width:auto;max-width:none}}*{margin:0;padding:0;box-sizing:border-box}:focus-visible{outline:2px solid var(--accent, #8b5cf6);outline-offset:2px;border-radius:4px}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-thumb{background:#a1a1aa33;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#a1a1aa66}[data-theme=light] ::-webkit-scrollbar-thumb{background:#0000001f}[data-theme=light] ::-webkit-scrollbar-thumb:hover{background:#00000038}body{transition:background-color .3s ease,color .3s ease}input,textarea{user-select:text!important;-webkit-user-select:text!important}:root{--primary-color: #a1a1aa;--primary-dark: #71717a;--primary-light: #d4d4d8;--secondary-color: #52525b;--accent: #8b5cf6;--accent-light: #a78bfa;--accent-dark: #7c3aed;--background: #09090b;--surface: #18181b;--surface-light: #27272a;--surface-elevated: #3f3f46;--text-primary: #fafafa;--text-secondary: #d4d4d8;--text-muted: #a1a1aa;--border: #27272a;--border-soft: #18181b;--border-subtle: #1f1f23;--border-default: #2a2a2e;--border-light: #3f3f46;--success: #10b981;--success-light: #34d399;--warning: #f59e0b;--error: #ef4444;--accent-purple: #a855f7;--accent-blue: #3b82f6;--accent-success: var(--success);--accent-warning: var(--warning);--accent-danger: var(--error);--accent-hover: #a78bfa;--bg-hover: #27272a;--hover-overlay: rgba(255, 255, 255, .04);--surface-alt: var(--surface-light);--gradient: linear-gradient(135deg, #8b5cf6 0%, #a78bfa 100%);--gradient-subtle: linear-gradient(135deg, rgba(139, 92, 246, .1) 0%, rgba(167, 139, 250, .05) 100%);--shadow-sm: 0 2px 4px rgba(0, 0, 0, .5);--shadow-md: 0 4px 12px rgba(0, 0, 0, .6);--shadow-lg: 0 12px 24px rgba(0, 0, 0, .7);--shadow-glow: 0 0 20px rgba(139, 92, 246, .3);--radius: 12px;--radius-lg: 16px;--radius-xl: 20px;--radius-sm: 4px;--radius-md: 8px;--danger: var(--error);--border-primary: var(--border);--surface-secondary: var(--surface-light);--bg-card: var(--surface);--bg-elevated: var(--surface-light);--text-tertiary: var(--text-muted);--primary-hover: var(--accent-dark);--ease-out: cubic-bezier(.4, 0, .2, 1);--ease-bounce: cubic-bezier(.34, 1.56, .64, 1);--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--space-16: 4rem;--text-xs: .75rem;--text-sm: .8125rem;--text-base: .875rem;--text-md: 1rem;--text-lg: 1.125rem;--text-xl: 1.25rem;--text-2xl: 1.5rem;--text-3xl: 1.875rem;--line-tight: 1.2;--line-normal: 1.5;--line-relaxed: 1.7}[data-theme=light]{--primary-color: #52525b;--primary-dark: #3f3f46;--primary-light: #71717a;--secondary-color: #a1a1aa;--accent: #7c3aed;--accent-light: #8b5cf6;--accent-dark: #6d28d9;--background: #ffffff;--surface: #fafafa;--surface-light: #f4f4f5;--surface-elevated: #e4e4e7;--text-primary: #18181b;--text-secondary: #52525b;--text-muted: #71717a;--border: #e4e4e7;--border-soft: #f4f4f5;--border-subtle: #e4e4e7;--border-default: #d4d4d8;--border-light: #e4e4e7;--success: #10b981;--success-light: #34d399;--warning: #f59e0b;--error: #ef4444;--accent-purple: #9333ea;--accent-blue: #2563eb;--accent-success: var(--success);--accent-warning: var(--warning);--accent-danger: var(--error);--accent-hover: #8b5cf6;--bg-hover: #f4f4f5;--hover-overlay: rgba(0, 0, 0, .04);--surface-alt: var(--surface-light);--gradient: linear-gradient(135deg, #7c3aed 0%, #8b5cf6 100%);--gradient-subtle: linear-gradient(135deg, rgba(124, 58, 237, .08) 0%, rgba(139, 92, 246, .04) 100%);--shadow-sm: 0 1px 2px rgba(0, 0, 0, .04);--shadow-md: 0 4px 8px rgba(0, 0, 0, .06);--shadow-lg: 0 12px 20px rgba(0, 0, 0, .1);--shadow-glow: 0 0 20px rgba(124, 58, 237, .15);--radius: 12px;--radius-lg: 16px;--radius-xl: 20px;--radius-sm: 4px;--radius-md: 8px;--danger: var(--error);--border-primary: var(--border);--surface-secondary: var(--surface-light);--bg-card: var(--surface);--bg-elevated: var(--surface-light);--text-tertiary: var(--text-muted);--primary-hover: var(--accent-dark)}[data-theme=dark] .category-field:focus-within{box-shadow:0 0 0 2px var(--primary-color)}[data-theme=dark] .entry-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}[data-theme=dark] .nav-link.active{background:#8b5cf626;color:#a78bfa;box-shadow:none}[data-theme=dark] .progress-fill{box-shadow:none}[data-theme=dark] body:before{display:none}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Inter,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:var(--background);color:var(--text-primary);line-height:1.6;min-height:100vh;margin:0}h1{font-size:2rem;font-weight:700;color:var(--text-primary);letter-spacing:-.02em;line-height:1.2;margin:0}h2{font-size:1.5rem;font-weight:600;color:var(--text-primary);letter-spacing:-.01em;margin:0}h3{font-size:1.125rem;font-weight:600;color:var(--text-secondary);margin:0}@keyframes gradient-shift{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}.app{animation:fadeIn .5s ease-in}@media(max-width:640px){.app{padding-top:calc(64px + env(safe-area-inset-top,0));padding-bottom:0}}.app-loading{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--background)}.loading-spinner{position:relative;width:120px;height:120px;display:flex;align-items:center;justify-content:center}.spinner-ring{position:absolute;width:100%;height:100%;border-radius:50%;border:3px solid transparent}.spinner-ring:nth-child(1){border-top-color:var(--accent);animation:spin 1.2s cubic-bezier(.5,0,.5,1) infinite}.spinner-ring:nth-child(2){width:85%;height:85%;border-right-color:var(--accent-light);animation:spin 1.5s cubic-bezier(.5,0,.5,1) infinite reverse}.spinner-ring:nth-child(3){width:70%;height:70%;border-bottom-color:var(--primary-color);animation:spin 1.8s cubic-bezier(.5,0,.5,1) infinite}.spinner-text{font-size:.85rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;background:var(--gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:pulse 2s ease-in-out infinite}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}::selection{background-color:var(--primary-light);color:var(--text-primary)}button{font-family:inherit;cursor:pointer;border:none;outline:none;transition:all .3s cubic-bezier(.4,0,.2,1)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.625rem 1.25rem;border-radius:var(--radius);font-size:.875rem;font-weight:500;transition:all .3s cubic-bezier(.4,0,.2,1);text-decoration:none;border:1px solid transparent;white-space:nowrap}.btn:disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.btn-primary{background:var(--gradient);color:#fff;box-shadow:var(--shadow-sm)}.btn-primary:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.btn-primary:active{transform:translateY(0);box-shadow:var(--shadow-sm)}.btn-secondary{background:var(--surface);color:var(--text-primary);border-color:var(--border);box-shadow:var(--shadow-sm)}.btn-secondary:hover{background:var(--surface-light);border-color:var(--primary-color);transform:translateY(-1px);box-shadow:var(--shadow-md)}.btn-secondary:active{transform:translateY(0)}.btn-danger{background:var(--error);color:#fff;box-shadow:var(--shadow-sm)}.btn-danger:hover{background:#dc2626;transform:translateY(-2px);box-shadow:var(--shadow-md)}.btn-danger:active{transform:translateY(0)}.btn-success{background:var(--success);color:#fff;box-shadow:var(--shadow-sm)}.btn-success:hover{background:#059669;transform:translateY(-2px);box-shadow:var(--shadow-md)}.btn-ghost{background:transparent;color:var(--text-secondary);border-color:transparent}.btn-ghost:hover{background:var(--surface);color:var(--text-primary);border-color:var(--border)}.btn-icon{padding:.5rem;min-width:2.5rem;min-height:2.5rem;border-radius:calc(var(--radius) - 2px);background:var(--surface);color:var(--text-secondary);border:1px solid var(--border);font-size:1.125rem}.btn-icon:hover{background:var(--surface-light);color:var(--accent);transform:scale(1.05)}.btn-sm{padding:.375rem .875rem;font-size:.8125rem}.btn-lg{padding:.875rem 1.75rem;font-size:1rem}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-16px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInScale{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.page-container{max-width:1100px;margin:0 auto;padding:2rem 1.5rem 4rem;min-height:calc(100vh - 60px)}.page-container.narrow{max-width:800px}.page-container.compact{max-width:680px}.page-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1.75rem;gap:1rem}.page-header-left h1{display:flex;align-items:center;gap:.6rem;font-size:1.5rem;font-weight:700;color:var(--text-primary);margin:0}.page-header-left p{color:var(--text-secondary);font-size:.85rem;margin:.3rem 0 0}.section-title{display:flex;align-items:center;gap:.5rem;font-size:.85rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;margin-bottom:.75rem}.tabs-bar{display:flex;gap:4px;padding:4px;background:var(--surface);border-radius:12px;margin-bottom:1.5rem}.tab-item{flex:1;padding:.6rem 1rem;border:none;background:transparent;color:var(--text-muted);font-size:.88rem;font-weight:500;border-radius:8px;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;gap:.4rem}.tab-item:hover{color:var(--text-primary);background:var(--surface-light)}.tab-item.active{background:var(--accent);color:#fff;font-weight:600}.empty-placeholder{text-align:center;padding:4rem 2rem}.empty-placeholder .empty-icon{font-size:3rem;margin-bottom:1rem;opacity:.6}.empty-placeholder h3{font-size:1.15rem;color:var(--text-primary);margin:0 0 .5rem;font-weight:600}.empty-placeholder p{color:var(--text-muted);font-size:.9rem;max-width:360px;margin:0 auto 1.5rem;line-height:1.5}.page-transition{animation:pageEnter .35s var(--ease-out)}.stat-badge{display:inline-flex;align-items:center;gap:.25rem;padding:.2rem .6rem;border-radius:20px;font-size:.72rem;font-weight:600;background:#8b5cf61a;color:var(--accent)}.stat-badge.success{background:#10b9811a;color:var(--success)}.stat-badge.warning{background:#f59e0b1a;color:var(--warning)}.action-btn{display:flex;align-items:center;gap:.4rem;padding:.55rem 1.1rem;background:var(--accent);color:#fff;border:none;border-radius:10px;font-weight:600;font-size:.85rem;cursor:pointer;transition:all .2s;white-space:nowrap}.action-btn:hover{background:var(--accent-dark);transform:translateY(-1px);box-shadow:0 4px 16px #8b5cf640}.focus-ring:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.glass{background:#18181b99;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.06)}[data-theme=light] .glass{background:#fffc;border:1px solid rgba(0,0,0,.06)}@keyframes slideInRight{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.6}}@keyframes glow{0%,to{box-shadow:0 0 5px #8b5cf64d}50%{box-shadow:0 0 20px #8b5cf699}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.animate-fadeIn{animation:fadeIn .3s var(--ease-out)}.animate-fadeInUp{animation:fadeInUp .4s var(--ease-out)}.animate-fadeInDown{animation:fadeInDown .4s var(--ease-out)}.animate-fadeInScale{animation:fadeInScale .3s var(--ease-out)}.animate-slideInRight{animation:slideInRight .4s var(--ease-out)}.animate-slideInLeft{animation:slideInLeft .4s var(--ease-out)}.animate-pulse{animation:pulse 2s ease-in-out infinite}.animate-glow{animation:glow 2s ease-in-out infinite}.animate-bounce{animation:bounce 1s ease-in-out infinite}.animate-spin{animation:spin 1s linear infinite}.stagger-1{animation-delay:.05s}.stagger-2{animation-delay:.1s}.stagger-3{animation-delay:.15s}.stagger-4{animation-delay:.2s}.stagger-5{animation-delay:.25s}.skeleton{background:linear-gradient(90deg,var(--surface) 25%,var(--surface-light) 50%,var(--surface) 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:var(--radius)}.hover-lift{transition:transform .2s var(--ease-out),box-shadow .2s var(--ease-out)}.hover-lift:hover{transform:translateY(-3px);box-shadow:var(--shadow-md)}.hover-glow{transition:box-shadow .3s var(--ease-out)}.hover-glow:hover{box-shadow:var(--shadow-glow)}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:1.5rem;transition:all .2s var(--ease-out)}.card:hover{border-color:var(--accent)}.card-elevated{box-shadow:var(--shadow-md)}.badge{display:inline-flex;align-items:center;gap:.25rem;padding:.25rem .6rem;border-radius:9999px;font-size:.75rem;font-weight:500}.badge-primary{background:var(--gradient-subtle);color:var(--accent)}.badge-success{background:#10b9811a;color:var(--success)}.badge-warning{background:#f59e0b1a;color:var(--warning)}.badge-error{background:#ef44441a;color:var(--error)}.focus-ring:focus{outline:none;box-shadow:0 0 0 3px #8b5cf633}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--primary-color)}@media(max-width:768px){html{font-size:15px}button,a,input[type=submit],input[type=button]{min-height:44px}input,select,textarea{font-size:16px!important}::-webkit-scrollbar{width:4px;height:4px}}@media(max-width:480px){html{font-size:14px}::-webkit-scrollbar{width:2px;height:2px}}@supports (padding: max(0px)){.app{padding-left:max(.5rem,env(safe-area-inset-left));padding-right:max(.5rem,env(safe-area-inset-right))}}@media(hover:none){button:hover,a:hover{transform:none!important}button:active,a:active,[role=button]:active{opacity:.75;transition:opacity .1s ease}}.ripple:after{content:"";position:absolute;width:100%;height:100%;top:0;left:0;pointer-events:none;background-image:radial-gradient(circle,rgba(255,255,255,.25) 10%,transparent 10.01%);background-repeat:no-repeat;background-position:50%;transform:scale(10);opacity:0;transition:transform .5s,opacity .8s}.ripple:active:after{transform:scale(0);opacity:.3;transition:0s}@keyframes checkmark{0%{stroke-dashoffset:100}to{stroke-dashoffset:0}}@keyframes scaleIn{0%{transform:scale(0);opacity:0}50%{transform:scale(1.2)}to{transform:scale(1);opacity:1}}@keyframes pop{0%{transform:scale(1)}50%{transform:scale(1.1)}to{transform:scale(1)}}.animate-pop{animation:pop .3s var(--ease-bounce)}.animate-scaleIn{animation:scaleIn .4s var(--ease-bounce)}.gradient-text{background:var(--gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.glow-focus:focus,.glow-focus:focus-within{outline:none;border-color:var(--accent)!important;box-shadow:0 0 0 3px #8b5cf626,0 0 20px #8b5cf61a}.card-premium{position:relative;background:var(--surface);border-radius:var(--radius-lg);padding:1.5rem}.card-premium:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;padding:1px;background:linear-gradient(135deg,var(--accent),#ec4899,var(--accent));-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:0;transition:opacity .3s var(--ease-out)}.card-premium:hover:before{opacity:1}.list-item-interactive{position:relative;transition:all .2s var(--ease-out);cursor:pointer}.list-item-interactive:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:3px;height:0;background:var(--gradient);border-radius:0 4px 4px 0;transition:height .2s var(--ease-out)}.list-item-interactive:hover:before{height:60%}.list-item-interactive:hover{background:var(--hover-overlay);transform:translate(4px)}.status-dot{width:8px;height:8px;border-radius:50%;position:relative}.status-dot.online{background:var(--success)}.status-dot.online:after{content:"";position:absolute;top:-3px;right:-3px;bottom:-3px;left:-3px;border-radius:50%;border:2px solid var(--success);animation:statusPulse 2s ease-out infinite}@keyframes statusPulse{0%{transform:scale(1);opacity:.8}to{transform:scale(1.8);opacity:0}}.ai-typing{display:flex;gap:4px;padding:.5rem}.ai-typing span{width:8px;height:8px;background:var(--accent);border-radius:50%;animation:typing 1.4s infinite ease-in-out}.ai-typing span:nth-child(1){animation-delay:0s}.ai-typing span:nth-child(2){animation-delay:.2s}.ai-typing span:nth-child(3){animation-delay:.4s}@keyframes typing{0%,60%,to{transform:translateY(0);opacity:.4}30%{transform:translateY(-8px);opacity:1}}.progress-premium{height:6px;background:var(--surface-light);border-radius:3px;overflow:hidden;position:relative}.progress-premium-fill{height:100%;background:linear-gradient(90deg,var(--accent),#ec4899,var(--accent));background-size:200% 100%;border-radius:3px;transition:width .5s var(--ease-out);animation:progressShimmer 2s linear infinite}@keyframes progressShimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.counter{display:inline-block;font-variant-numeric:tabular-nums}.shine{position:relative;overflow:hidden}.shine:after{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:linear-gradient(to right,transparent 0%,rgba(255,255,255,.1) 50%,transparent 100%);transform:rotate(30deg) translate(-100%);transition:transform .6s}.shine:hover:after{transform:rotate(30deg) translate(100%)}@keyframes toastIn{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}@keyframes toastOut{0%{transform:translate(0);opacity:1}to{transform:translate(100%);opacity:0}}.toast-enter{animation:toastIn .3s var(--ease-out)}.toast-exit{animation:toastOut .3s var(--ease-out)}.chip{display:inline-flex;align-items:center;gap:.375rem;padding:.375rem .75rem;background:var(--surface);border:1px solid var(--border);border-radius:9999px;font-size:.8125rem;font-weight:500;color:var(--text-secondary);transition:all .2s var(--ease-out)}.chip:hover{border-color:var(--accent);color:var(--accent);transform:translateY(-1px)}.chip-active{background:var(--gradient-subtle);border-color:var(--accent);color:var(--accent)}@keyframes borderRotate{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}.animated-border{position:relative;background:var(--surface);border-radius:var(--radius)}.animated-border:before{content:"";position:absolute;top:-2px;right:-2px;bottom:-2px;left:-2px;border-radius:inherit;background:linear-gradient(90deg,var(--accent),#ec4899,#3b82f6,var(--accent));background-size:300% 300%;animation:borderRotate 3s ease infinite;z-index:-1}@keyframes confettiBurst{0%{transform:scale(0) rotate(0);opacity:1}50%{opacity:1}to{transform:scale(1.5) rotate(180deg);opacity:0}}.number-smooth{transition:all .3s var(--ease-out);font-variant-numeric:tabular-nums}.elevation-1{box-shadow:var(--shadow-sm)}.elevation-2{box-shadow:var(--shadow-md)}.elevation-3{box-shadow:var(--shadow-lg)}.elevation-hover{transition:box-shadow .2s var(--ease-out),transform .2s var(--ease-out)}.elevation-hover:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.skip-to-content{position:absolute;top:-40px;left:0;background:var(--accent);color:#fff;padding:var(--space-2) var(--space-4);z-index:10000;font-size:var(--text-sm);border-radius:0 0 var(--radius-sm) 0;transition:top .2s}.skip-to-content:focus{top:0}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.global-notifications{position:fixed;bottom:2rem;right:2rem;display:flex;flex-direction:column;gap:.5rem;z-index:9999;pointer-events:none}.global-notification{display:flex;align-items:center;gap:.75rem;padding:1rem 1.5rem;border-radius:12px;color:#fff;font-weight:500;box-shadow:0 4px 20px #0000004d;animation:slideInRight .3s ease,fadeOut .3s ease 2.7s forwards;cursor:pointer;pointer-events:auto;max-width:400px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.global-notification.success{background:linear-gradient(135deg,#10b981,#059669);animation:slideInRight .3s ease,successPulse .5s ease .3s,fadeOut .3s ease 2.7s forwards}.global-notification.info{background:linear-gradient(135deg,#6366f1,#8b5cf6)}.global-notification.warning{background:linear-gradient(135deg,#f59e0b,#d97706)}.global-notification.error{background:linear-gradient(135deg,#ef4444,#dc2626);animation:slideInRight .3s ease,shake .5s ease .3s,fadeOut .3s ease 2.7s forwards}.notification-icon{font-size:1.25rem;animation:iconBounce .5s ease .2s}.notification-text{flex:1}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}@keyframes successPulse{0%,to{transform:scale(1)}50%{transform:scale(1.02);box-shadow:0 6px 30px #10b98180}}@keyframes iconBounce{0%,to{transform:scale(1)}50%{transform:scale(1.3)}}@keyframes shake{0%,to{transform:translate(0)}20%,60%{transform:translate(-5px)}40%,80%{transform:translate(5px)}}.global-notification.clickable{cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}.global-notification.clickable:hover{transform:translate(-5px) scale(1.02);box-shadow:0 6px 25px #0006}.notification-content{display:flex;flex-direction:column;gap:.25rem;flex:1}.notification-hint{font-size:.75rem;opacity:.8;font-weight:400}.notification-action-btn{background:#fff3;border:1px solid rgba(255,255,255,.3);color:#fff;padding:.4rem .8rem;border-radius:6px;font-size:.8rem;font-weight:500;cursor:pointer;transition:all .2s ease;white-space:nowrap}.notification-action-btn:hover{background:#ffffff4d;transform:scale(1.05)}.notification-close{background:transparent;border:none;color:#ffffffb3;font-size:1.25rem;cursor:pointer;padding:0 .25rem;margin-left:.5rem;transition:all .2s ease;line-height:1}.notification-close:hover{color:#fff;transform:scale(1.2)}@media(max-width:768px){.global-notifications{bottom:5rem;right:1rem;left:1rem}.global-notification{max-width:100%;padding:.875rem 1rem}.notification-hint{font-size:.7rem}}.skeleton{background:linear-gradient(90deg,var(--surface-light) 25%,var(--surface-elevated) 50%,var(--surface-light) 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:8px}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.skeleton-text{height:1em;margin-bottom:.5em}.skeleton-text.short{width:40%}.skeleton-text.medium{width:70%}.skeleton-text.full{width:100%}.skeleton-avatar{width:40px;height:40px;border-radius:50%}.skeleton-card{height:120px;width:100%}.page-enter{opacity:0;transform:translateY(10px)}.page-enter-active{opacity:1;transform:translateY(0);transition:opacity .3s ease,transform .3s ease}.page-exit{opacity:1}.page-exit-active{opacity:0;transition:opacity .2s ease}.page-transition{animation:pageEnter .4s cubic-bezier(.4,0,.2,1)}@keyframes pageEnter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.fade-enter{opacity:0}.fade-enter-active{opacity:1;transition:opacity .25s ease}.fade-exit{opacity:1}.fade-exit-active{opacity:0;transition:opacity .15s ease}.btn-press{transition:transform .1s ease,box-shadow .1s ease}.btn-press:active{transform:scale(.97)}.hover-lift{transition:transform .2s ease,box-shadow .2s ease}.hover-lift:hover{transform:translateY(-2px);box-shadow:0 8px 25px #00000026}.success-check{display:inline-flex;align-items:center;justify-content:center;width:60px;height:60px;border-radius:50%;background:linear-gradient(135deg,#10b981,#34d399);animation:popIn .4s cubic-bezier(.34,1.56,.64,1)}.success-check svg{color:#fff;animation:checkDraw .3s ease .2s both}@keyframes checkDraw{0%{stroke-dashoffset:24;opacity:0}to{stroke-dashoffset:0;opacity:1}}@keyframes popIn{0%{transform:scale(0);opacity:0}70%{transform:scale(1.1)}to{transform:scale(1);opacity:1}}.confetti-container{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:9999;overflow:hidden}.confetti{position:absolute;width:10px;height:10px;animation:confettiFall 3s ease-out forwards}@keyframes confettiFall{0%{transform:translateY(-100px) rotate(0);opacity:1}to{transform:translateY(100vh) rotate(720deg);opacity:0}}.toast{position:fixed;bottom:24px;right:24px;padding:16px 24px;background:var(--surface);border:1px solid var(--border);border-radius:12px;box-shadow:0 8px 32px #0000004d;display:flex;align-items:center;gap:12px;z-index:10000;animation:slideInRight .3s ease;max-width:400px}.toast.success{border-color:var(--success);background:linear-gradient(135deg,rgba(16,185,129,.1),var(--surface))}.toast.error{border-color:var(--error);background:linear-gradient(135deg,rgba(239,68,68,.1),var(--surface))}.toast.info{border-color:var(--accent);background:linear-gradient(135deg,rgba(139,92,246,.1),var(--surface))}@keyframes slideInRight{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.toast-icon{flex-shrink:0}.toast-content{flex:1}.toast-title{font-weight:600;color:var(--text-primary);font-size:.9rem}.toast-message{font-size:.8rem;color:var(--text-muted);margin-top:2px}.toast-close{background:none;border:none;color:var(--text-muted);cursor:pointer;padding:4px;border-radius:4px;transition:background .2s}.toast-close:hover{background:var(--surface-light)}.pulse-glow{animation:pulseGlow 2s ease-in-out infinite}@keyframes pulseGlow{0%,to{box-shadow:0 0 #8b5cf666}50%{box-shadow:0 0 0 10px #8b5cf600}}.counter-animate{display:inline-block;animation:countUp .6s ease-out}@keyframes countUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.typing-indicator{display:flex;gap:4px;padding:12px 16px;background:var(--surface-light);border-radius:18px;width:fit-content}.typing-dot{width:8px;height:8px;background:var(--text-muted);border-radius:50%;animation:typingBounce 1.4s ease-in-out infinite}.typing-dot:nth-child(2){animation-delay:.2s}.typing-dot:nth-child(3){animation-delay:.4s}@keyframes typingBounce{0%,60%,to{transform:translateY(0)}30%{transform:translateY(-8px)}}.ripple{position:relative;overflow:hidden}.ripple:after{content:"";position:absolute;top:50%;left:50%;width:0;height:0;background:#fff3;border-radius:50%;transform:translate(-50%,-50%);transition:width .4s ease,height .4s ease,opacity .4s ease;opacity:0}.ripple:active:after{width:200%;height:200%;opacity:1;transition:0s}.scroll-indicator{position:absolute;bottom:20px;left:50%;transform:translate(-50%);animation:scrollBounce 2s ease-in-out infinite}@keyframes scrollBounce{0%,to{transform:translate(-50%) translateY(0)}50%{transform:translate(-50%) translateY(8px)}}.card-flip{perspective:1000px}.card-flip-inner{transition:transform .6s;transform-style:preserve-3d}.card-flip:hover .card-flip-inner{transform:rotateY(180deg)}.card-flip-front,.card-flip-back{backface-visibility:hidden}.card-flip-back{transform:rotateY(180deg)}.stagger-item{opacity:0;transform:translateY(20px);animation:staggerIn .4s ease forwards}.stagger-item:nth-child(1){animation-delay:.05s}.stagger-item:nth-child(2){animation-delay:.1s}.stagger-item:nth-child(3){animation-delay:.15s}.stagger-item:nth-child(4){animation-delay:.2s}.stagger-item:nth-child(5){animation-delay:.25s}.stagger-item:nth-child(6){animation-delay:.3s}@keyframes staggerIn{to{opacity:1;transform:translateY(0)}}.focus-glow:focus{outline:none;box-shadow:0 0 0 3px #8b5cf64d,0 0 20px #8b5cf633}.gradient-border{position:relative;background:var(--surface);border-radius:12px}.gradient-border:before{content:"";position:absolute;top:-2px;right:-2px;bottom:-2px;left:-2px;border-radius:14px;background:var(--gradient);z-index:-1;opacity:0;transition:opacity .3s ease}.gradient-border:hover:before{opacity:1}.glass{background:#ffffff0d;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.1)}[data-theme=light] .glass{background:#ffffffb3;border:1px solid rgba(0,0,0,.05)}.floating-label{position:relative}.floating-label input{padding:1.5rem 1rem .5rem}.floating-label label{position:absolute;left:1rem;top:50%;transform:translateY(-50%);color:var(--text-muted);pointer-events:none;transition:all .2s ease}.floating-label input:focus+label,.floating-label input:not(:placeholder-shown)+label{top:.5rem;transform:translateY(0);font-size:.75rem;color:var(--accent)}.progress-ring{transform:rotate(-90deg)}.progress-ring-circle{transition:stroke-dashoffset .5s ease}.badge-bounce{animation:badgeBounce .5s ease}@keyframes badgeBounce{0%,to{transform:scale(1)}50%{transform:scale(1.2)}}.pattern-dots{background-image:radial-gradient(circle,var(--border) 1px,transparent 1px);background-size:20px 20px}.pattern-grid{background-image:linear-gradient(var(--border) 1px,transparent 1px),linear-gradient(90deg,var(--border) 1px,transparent 1px);background-size:40px 40px}.emoji-react{display:inline-flex;transition:transform .2s ease;cursor:pointer}.emoji-react:hover{transform:scale(1.3)}.emoji-react:active{transform:scale(1.1)}.color-transition{transition:background-color .3s ease,border-color .3s ease,color .3s ease}
