.app-header[data-v-ae5005c4]{height:var(--header-height);width:100%;background-color:var(--bg-card);box-shadow:0 1px 3px rgba(0,0,0,.1);position:sticky;top:0;z-index:var(--z-index-sticky)}.header-content[data-v-ae5005c4]{display:flex;align-items:center;justify-content:space-between;height:var(--header-height)}.logo-container[data-v-ae5005c4]{display:flex;align-items:center}.logo-container .logo-link[data-v-ae5005c4]{display:flex;align-items:center;color:var(--text-dark);font-weight:700;font-size:var(--font-size-lg);text-decoration:none}.logo-container .logo[data-v-ae5005c4]{height:50px;margin-right:.001rem}.main-nav[data-v-ae5005c4]{display:none}@media(min-width:1024px){.main-nav[data-v-ae5005c4]{display:block}}.main-nav .nav-list[data-v-ae5005c4]{display:flex;list-style:none;gap:1.5rem}.main-nav .nav-link[data-v-ae5005c4]{color:var(--text-color);font-weight:500;padding:.5rem;transition:color var(--transition-fast);position:relative}.main-nav .nav-link.router-link-active[data-v-ae5005c4],.main-nav .nav-link[data-v-ae5005c4]:hover{color:var(--primary-color)}.main-nav .nav-link.router-link-active[data-v-ae5005c4]:after{content:"";position:absolute;bottom:-4px;left:0;width:100%;height:2px;background-color:var(--primary-color);border-radius:2px}.header-actions[data-v-ae5005c4]{display:none}@media(min-width:1024px){.header-actions[data-v-ae5005c4]{display:flex;align-items:center;gap:1rem}}.header-actions .login-btn[data-v-ae5005c4],.header-actions .register-btn[data-v-ae5005c4]{font-weight:500}.user-menu[data-v-ae5005c4]{position:relative}.user-menu .user-menu-button[data-v-ae5005c4]{display:flex;align-items:center;gap:.5rem;padding:.25rem .5rem;background:none;border:none;cursor:pointer;border-radius:var(--border-radius);transition:background-color var(--transition-fast)}.user-menu .user-menu-button[data-v-ae5005c4]:hover{background-color:rgba(0,0,0,.05)}.user-menu .user-avatar[data-v-ae5005c4]{width:32px;height:32px;border-radius:50%;-o-object-fit:cover;object-fit:cover}.user-menu .user-dropdown[data-v-ae5005c4]{position:absolute;top:100%;right:0;min-width:180px;background-color:var(--bg-card);border-radius:var(--radius-md);box-shadow:0 4px 12px rgba(0,0,0,.1);z-index:var(--z-index-dropdown);overflow:hidden}.user-menu .dropdown-item[data-v-ae5005c4]{display:flex;align-items:center;padding:.75rem 1rem;color:var(--text-color);font-weight:500;cursor:pointer;text-decoration:none;transition:all var(--transition-fast)}.user-menu .dropdown-item[data-v-ae5005c4]:hover{background-color:var(--bg-hover)}.user-menu .dropdown-item i[data-v-ae5005c4]{margin-right:.5rem;font-size:1.1rem}.user-menu .dropdown-item.history-dropdown-trigger[data-v-ae5005c4]{position:relative}.user-menu .dropdown-item.history-dropdown-trigger .history-arrow[data-v-ae5005c4]{margin-left:auto;margin-right:0;font-size:.8rem}.user-menu .dropdown-item.history-dropdown-trigger .history-dropdown[data-v-ae5005c4]{position:absolute;top:0;left:100%;background-color:var(--bg-card);border-radius:var(--radius-md);box-shadow:0 4px 12px rgba(0,0,0,.1);width:160px;z-index:999}@media(max-width:767px){.user-menu .dropdown-item.history-dropdown-trigger .history-dropdown[data-v-ae5005c4]{position:static;width:100%;box-shadow:none;margin-top:5px;border-top:1px solid var(--border-color-light);border-radius:0}}.user-menu .dropdown-item.history-dropdown-trigger .history-dropdown .history-item[data-v-ae5005c4]{display:flex;align-items:center;padding:.75rem 1rem;color:var(--text-color);font-weight:500;text-decoration:none;transition:all var(--transition-fast)}.user-menu .dropdown-item.history-dropdown-trigger .history-dropdown .history-item[data-v-ae5005c4]:hover{background-color:var(--bg-hover)}.user-menu .dropdown-item.history-dropdown-trigger .history-dropdown .history-item i[data-v-ae5005c4]{margin-right:.5rem;font-size:1.1rem}.user-menu .dropdown-item.history-dropdown-trigger:hover .history-dropdown[data-v-ae5005c4]{display:block!important}.user-menu .dropdown-divider[data-v-ae5005c4]{height:1px;background-color:var(--border-color-light);margin:.25rem 0}.user-menu .logout-button[data-v-ae5005c4]{width:100%;text-align:left;background:none;border:none}.user-menu .logout-button[data-v-ae5005c4]:hover{color:var(--danger-color)}.mobile-menu-toggle[data-v-ae5005c4]{display:flex;flex-direction:column;justify-content:space-between;width:24px;height:18px;background:none;border:none;cursor:pointer;padding:0}@media(min-width:1024px){.mobile-menu-toggle[data-v-ae5005c4]{display:none}}.mobile-menu-toggle .menu-bar[data-v-ae5005c4]{width:100%;height:2px;background-color:var(--text-dark);border-radius:2px;transition:transform var(--transition-fast),opacity var(--transition-fast)}.mobile-menu-toggle.active .menu-bar[data-v-ae5005c4]:first-child{transform:translateY(8px) rotate(45deg)}.mobile-menu-toggle.active .menu-bar[data-v-ae5005c4]:nth-child(2){opacity:0}.mobile-menu-toggle.active .menu-bar[data-v-ae5005c4]:nth-child(3){transform:translateY(-8px) rotate(-45deg)}.mobile-menu[data-v-ae5005c4]{position:fixed;top:var(--header-height);left:0;width:100%;height:calc(100vh - var(--header-height));background-color:var(--bg-card);z-index:var(--z-index-fixed);transform:translateX(100%);transition:transform var(--transition-normal);overflow-y:auto}.mobile-menu.is-open[data-v-ae5005c4]{transform:translateX(0)}.mobile-menu .mobile-nav-list[data-v-ae5005c4]{list-style:none;padding:1rem 0}.mobile-menu .mobile-nav-item[data-v-ae5005c4]{margin-bottom:.5rem}.mobile-menu .mobile-nav-item.mobile-history-item .history-title[data-v-ae5005c4]{display:flex;align-items:center;justify-content:space-between}.mobile-menu .mobile-nav-item.mobile-history-item .history-title i[data-v-ae5005c4]{transition:transform var(--transition-fast)}.mobile-menu .mobile-nav-item.mobile-history-item .history-title i.is-active[data-v-ae5005c4]{transform:rotate(180deg)}.mobile-menu .mobile-nav-item.mobile-history-item .mobile-history-dropdown[data-v-ae5005c4]{margin-top:.5rem;margin-left:1rem;border-left:2px solid var(--primary-color);display:none}.mobile-menu .mobile-nav-item.mobile-history-item .mobile-history-dropdown .mobile-history-link[data-v-ae5005c4]{display:flex;align-items:center;padding:.5rem 1rem;color:var(--text-color);text-decoration:none}.mobile-menu .mobile-nav-item.mobile-history-item .mobile-history-dropdown .mobile-history-link i[data-v-ae5005c4]{margin-right:.5rem;font-size:1rem}.mobile-menu .mobile-nav-item.mobile-history-item .mobile-history-dropdown .mobile-history-link[data-v-ae5005c4]:hover{color:var(--primary-color)}.mobile-menu .mobile-nav-item.mobile-history-item.show-history .mobile-history-dropdown[data-v-ae5005c4]{display:block}.mobile-menu .mobile-nav-item .mobile-nav-link[data-v-ae5005c4]{display:block;padding:.75rem 0;color:var(--text-color);font-weight:500;font-size:1rem;text-decoration:none}.mobile-menu .mobile-nav-item .mobile-nav-link.router-link-active[data-v-ae5005c4],.mobile-menu .mobile-nav-item .mobile-nav-link[data-v-ae5005c4]:hover{color:var(--primary-color)}.mobile-menu .mobile-logout-button[data-v-ae5005c4]{display:block;width:100%;padding:1rem;text-align:left;background:none;border:none;color:var(--error-color);font-weight:500;cursor:pointer}.app-footer[data-v-06b6a005]{background-color:var(--bg-dark);color:#fff;padding:3rem 0 1rem;margin-top:2rem}.container[data-v-06b6a005]{max-width:1200px;margin:0 auto;padding:0 1rem}.footer-content[data-v-06b6a005]{display:flex;flex-direction:column}@media(min-width:768px){.footer-content[data-v-06b6a005]{flex-direction:row;justify-content:space-between}}.footer-logo-section[data-v-06b6a005]{flex:0 0 30%;margin-bottom:2rem}@media(min-width:768px){.footer-logo-section[data-v-06b6a005]{margin-right:2rem;margin-bottom:0}}.footer-logo-section .footer-slogan[data-v-06b6a005]{color:hsla(0,0%,100%,.7);margin:1rem 0;line-height:1.5;font-size:.9rem}.footer-logo-section .footer-contact[data-v-06b6a005]{margin-top:1rem}.footer-logo-section .footer-contact p[data-v-06b6a005]{margin:.5rem 0;display:flex;align-items:center;color:hsla(0,0%,100%,.7)}.footer-logo-section .footer-contact p i[data-v-06b6a005]{margin-right:.5rem;color:var(--primary-color)}.footer-logo[data-v-06b6a005]{display:flex;flex-direction:column}.footer-logo .logo-link[data-v-06b6a005]{display:flex;align-items:center;text-decoration:none;color:#fff}.footer-logo .logo-link .logo[data-v-06b6a005]{height:50px;margin-right:.001rem}.footer-logo .logo-link .logo-text[data-v-06b6a005]{font-size:var(--font-size-lg);font-weight:700}.footer-links[data-v-06b6a005]{flex:1;display:grid;grid-template-columns:repeat(3,1fr);gap:2rem}@media(max-width:767px){.footer-links[data-v-06b6a005]{grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}}.footer-links .footer-links-title[data-v-06b6a005]{font-size:var(--font-size-md);font-weight:600;margin-bottom:1rem;color:#fff}.footer-links .footer-links-list[data-v-06b6a005]{list-style:none;padding:0;margin:0}.footer-links .footer-links-list li[data-v-06b6a005]{margin-bottom:.7rem}.footer-links .footer-links-list a[data-v-06b6a005]{color:hsla(0,0%,100%,.7);transition:color var(--transition-fast);font-size:.95rem}.footer-links .footer-links-list a[data-v-06b6a005]:hover{color:#fff}.footer-bottom[data-v-06b6a005]{display:flex;flex-direction:column;align-items:center;margin-top:3rem;padding-top:1.5rem;border-top:1px solid hsla(0,0%,100%,.1)}@media(min-width:768px){.footer-bottom[data-v-06b6a005]{flex-direction:row;justify-content:space-between}}.footer-bottom .copyright[data-v-06b6a005]{color:hsla(0,0%,100%,.7);margin-bottom:1rem}@media(min-width:768px){.footer-bottom .copyright[data-v-06b6a005]{margin-bottom:0}}.footer-bottom .social-links[data-v-06b6a005]{display:flex;gap:1rem}.footer-bottom .social-links .social-link[data-v-06b6a005]{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;background-color:hsla(0,0%,100%,.1);color:#fff;transition:background-color var(--transition-fast)}.footer-bottom .social-links .social-link[data-v-06b6a005]:hover{background-color:var(--primary-color)}.footer-bottom .social-links .social-link i[data-v-06b6a005]{font-size:1.25rem}:root{--primary-color:#3490dc;--primary-light:#60a5fa;--primary-dark:#2779bd;--secondary-color:#6b46c1;--secondary-light:#9f7aea;--secondary-dark:#553c9a;--accent-color:#f6ad55;--accent-light:#fbd38d;--accent-dark:#dd6b20;--bg-color:#f8fafc;--bg-gradient:linear-gradient(135deg,#f8fafc,#f0f5fa);--bg-card:#fff;--bg-card-hover:#fff;--bg-dark:#1a202c;--text-color:#2d3748;--text-light:#718096;--text-dark:#1a202c;--deco-primary:rgba(52,144,220,.1);--deco-secondary:rgba(107,70,193,.1);--deco-accent:rgba(246,173,85,.1);--deco-light:hsla(0,0%,100%,.7);--deco-dark:rgba(26,32,44,.03);--success-color:#48bb78;--warning-color:#f6ad55;--error-color:#e53e3e;--info-color:#4299e1;--border-color:#e2e8f0;--border-hover:#cbd5e0;--border-radius:8px;--border-radius-lg:12px;--border-radius-full:9999px;--box-shadow:0 4px 6px rgba(0,0,0,.05),0 1px 3px rgba(0,0,0,.1);--box-shadow-hover:0 10px 15px rgba(0,0,0,.07),0 4px 6px rgba(0,0,0,.05);--box-shadow-card:0 8px 30px rgba(0,0,0,.06);--box-shadow-floating:0 15px 35px rgba(0,0,0,.1);--transition-fast:0.2s ease;--transition-normal:0.3s ease;--transition-slow:0.5s ease;--animation-duration-short:8s;--animation-duration-medium:15s;--animation-duration-long:25s;--font-family:"Inter","SF Pro Display",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen,Ubuntu,Cantarell,"Open Sans","Helvetica Neue",sans-serif;--font-size-xs:0.75rem;--font-size-sm:0.875rem;--font-size-md:1rem;--font-size-lg:1.125rem;--font-size-xl:1.25rem;--font-size-2xl:1.5rem;--font-size-3xl:1.875rem;--font-size-4xl:2.25rem;--header-height:64px;--footer-height:60px;--sidebar-width:250px;--container-max-width:1280px;--content-padding:2rem;--z-index-backdrop:5;--z-index-decorations:1;--z-index-content:2;--z-index-dropdown:10;--z-index-sticky:20;--z-index-fixed:30;--z-index-modal-backdrop:40;--z-index-modal:50;--z-index-popover:60;--z-index-tooltip:70}.dark-mode{--bg-color:#1a202c;--bg-gradient:linear-gradient(135deg,#1a202c,#2d3748);--bg-card:#2d3748;--bg-card-hover:#374151;--text-color:#f7fafc;--text-light:#e2e8f0;--border-color:#4a5568;--deco-primary:rgba(96,165,250,.15);--deco-secondary:rgba(159,122,234,.15);--deco-dark:hsla(0,0%,100%,.03)}.app-container{display:flex;flex-direction:column;min-height:100vh;background-color:var(--bg-color);color:var(--text-color);position:relative;overflow:hidden}.main-content{flex:1;padding:2rem;max-width:1280px;margin:0 auto;width:100%;position:relative;z-index:2}.ai-float-button{position:fixed;top:20px;right:20px;width:60px;height:60px;border-radius:50%;background:linear-gradient(135deg,var(--primary-color),var(--secondary-color));box-shadow:0 4px 20px rgba(0,0,0,.25);display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:1000;transition:all .3s ease}.ai-float-button:hover{transform:scale(1.05);box-shadow:0 6px 25px rgba(0,0,0,.3)}.ai-float-button.pulse{animation:button-pulse 2s infinite}.ai-float-button .ai-icon{color:#fff;font-size:24px;font-weight:700;text-shadow:0 1px 2px rgba(0,0,0,.2)}.ai-chat-dialog{position:fixed;top:90px;right:20px;width:350px;height:500px;background:var(--bg-color);border-radius:12px;box-shadow:0 10px 30px rgba(0,0,0,.2);display:flex;flex-direction:column;z-index:1000;overflow:hidden;animation:dialog-slide-in .3s ease}.ai-chat-dialog .chat-header{display:flex;justify-content:space-between;align-items:center;padding:15px 20px;background:linear-gradient(135deg,var(--primary-color),var(--secondary-color));color:#fff}.ai-chat-dialog .chat-header .chat-title{font-weight:700;font-size:18px}.ai-chat-dialog .chat-header .close-button{font-size:24px;cursor:pointer;height:24px;width:24px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:background .2s}.ai-chat-dialog .chat-header .close-button:hover{background:hsla(0,0%,100%,.2)}.ai-chat-dialog .chat-messages{flex:1;padding:15px;overflow-y:auto;background:hsla(0,0%,100%,.05)}.ai-chat-dialog .chat-messages .message{margin-bottom:15px;display:flex}.ai-chat-dialog .chat-messages .message.user-message{justify-content:flex-end}.ai-chat-dialog .chat-messages .message.user-message .message-content{background:linear-gradient(135deg,var(--primary-light),var(--primary-color));color:#fff;border-radius:18px 18px 4px 18px}.ai-chat-dialog .chat-messages .message.ai-message .message-content{background:hsla(0,0%,100%,.1);color:var(--text-color);border-radius:18px 18px 18px 4px}.ai-chat-dialog .chat-messages .message .message-content{max-width:80%;padding:12px 15px;position:relative}.ai-chat-dialog .chat-messages .message .message-content .message-text{font-size:14px;line-height:1.4;word-break:break-word}.ai-chat-dialog .chat-messages .message .message-content .message-text code{background:rgba(0,0,0,.1);padding:2px 4px;border-radius:4px;font-family:monospace;font-size:12px}.ai-chat-dialog .chat-messages .message .message-content .message-text pre{margin:8px 0}.ai-chat-dialog .chat-messages .message .message-content .message-text pre code{display:block;padding:10px;overflow-x:auto;white-space:pre-wrap;background:rgba(0,0,0,.2);border-radius:6px}.ai-chat-dialog .chat-messages .message .message-content .message-time{font-size:10px;opacity:.7;margin-top:5px;text-align:right}.ai-chat-dialog .chat-messages .typing-indicator{display:inline-flex;align-items:center;background:hsla(0,0%,100%,.1);padding:12px 15px;border-radius:18px 18px 18px 4px}.ai-chat-dialog .chat-messages .typing-indicator span{width:8px;height:8px;margin:0 2px;background:var(--text-color);border-radius:50%;opacity:.7}.ai-chat-dialog .chat-messages .typing-indicator span:first-child{animation:typing 1s 0s infinite}.ai-chat-dialog .chat-messages .typing-indicator span:nth-child(2){animation:typing 1s .2s infinite}.ai-chat-dialog .chat-messages .typing-indicator span:nth-child(3){animation:typing 1s .4s infinite}.ai-chat-dialog .chat-input{display:flex;padding:10px;background:rgba(0,0,0,.05);border-top:1px solid hsla(0,0%,100%,.1)}.ai-chat-dialog .chat-input textarea{flex:1;height:40px;max-height:100px;padding:10px 15px;border:none;border-radius:20px;background:hsla(0,0%,100%,.1);color:var(--text-color);resize:none;outline:none;font-family:inherit;font-size:14px}.ai-chat-dialog .chat-input textarea::-moz-placeholder{color:hsla(0,0%,100%,.5)}.ai-chat-dialog .chat-input textarea::placeholder{color:hsla(0,0%,100%,.5)}.ai-chat-dialog .chat-input textarea:disabled{opacity:.7}.ai-chat-dialog .chat-input button{width:40px;height:40px;border:none;border-radius:50%;background:linear-gradient(135deg,var(--primary-color),var(--secondary-color));color:#fff;display:flex;align-items:center;justify-content:center;margin-left:10px;cursor:pointer;transition:all .2s}.ai-chat-dialog .chat-input button svg{width:18px;height:18px}.ai-chat-dialog .chat-input button:hover{transform:scale(1.05);box-shadow:0 2px 10px rgba(0,0,0,.2)}.ai-chat-dialog .chat-input button:disabled{opacity:.6;cursor:not-allowed;transform:scale(1);box-shadow:none}@keyframes button-pulse{0%{box-shadow:0 0 0 0 rgba(var(--primary-rgb),.7)}70%{box-shadow:0 0 0 15px rgba(var(--primary-rgb),0)}to{box-shadow:0 0 0 0 rgba(var(--primary-rgb),0)}}@keyframes dialog-slide-in{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes typing{0%{transform:scale(1);opacity:.7}50%{transform:scale(1.4);opacity:1}to{transform:scale(1);opacity:.7}}.bg-decorations{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:1;overflow:hidden}.bg-decorations .bg-pattern{position:absolute}.bg-decorations .bg-pattern.pattern-1{top:0;right:0;width:600px;height:600px;background-image:radial-gradient(var(--primary-color) 2px,transparent 3px);background-size:25px 25px;transform:rotate(15deg);opacity:.12;animation:patternFloat 20s ease-in-out infinite}.bg-decorations .bg-pattern.pattern-2{bottom:0;left:10%;width:500px;height:500px;background-image:linear-gradient(var(--primary-light) 2px,transparent 2px),linear-gradient(90deg,var(--primary-light) 2px,transparent 2px);background-size:30px 30px;opacity:.08;animation:patternSlide 25s linear infinite}.bg-decorations .bg-pattern.pattern-3{top:30%;left:0;width:400px;height:400px;background-image:repeating-linear-gradient(45deg,var(--secondary-color) 0,var(--secondary-color) 2px,transparent 2px,transparent 15px);opacity:.06;animation:patternRotate 30s linear infinite}.bg-decorations .bg-pattern.pattern-4{top:60%;right:20%;width:350px;height:350px;background-image:conic-gradient(from 0deg,var(--accent-color),transparent,var(--accent-color));opacity:.05;animation:patternSpin 40s linear infinite}.bg-decorations .bg-pattern.pattern-5{bottom:20%;left:30%;width:300px;height:300px;background-image:radial-gradient(circle at 50% 50%,var(--secondary-light) 1px,transparent 2px);background-size:20px 20px;opacity:.1;animation:patternPulse 15s ease-in-out infinite}.bg-decorations .bg-circle{position:absolute;border-radius:50%}.bg-decorations .bg-circle.circle-1{top:10%;left:5%;width:400px;height:400px;background:radial-gradient(circle,var(--primary-light) 0,rgba(96,165,250,.3) 30%,transparent 70%);opacity:.15;animation:circleFloat 25s ease-in-out infinite alternate;filter:blur(1px)}.bg-decorations .bg-circle.circle-2{bottom:15%;right:10%;width:350px;height:350px;background:radial-gradient(circle,var(--secondary-light) 0,rgba(159,122,234,.4) 25%,transparent 65%);opacity:.12;animation:circleFloat 30s ease-in-out infinite alternate-reverse;filter:blur(2px)}.bg-decorations .bg-circle.circle-3{top:40%;right:30%;width:200px;height:200px;background:radial-gradient(circle,var(--accent-color) 0,rgba(246,173,85,.5) 20%,transparent 60%);opacity:.1;animation:circleFloat 20s ease-in-out infinite alternate;animation-delay:5s}.bg-decorations .bg-circle.circle-4{top:70%;left:15%;width:250px;height:250px;background:radial-gradient(circle,var(--primary-color) 0,rgba(52,144,220,.3) 35%,transparent 70%);opacity:.08;animation:circleFloat 35s ease-in-out infinite alternate;animation-delay:10s}.bg-decorations .bg-circle.circle-5{top:20%;left:40%;width:180px;height:180px;background:radial-gradient(circle,var(--secondary-color) 0,rgba(107,70,193,.4) 30%,transparent 65%);opacity:.09;animation:circleFloat 22s ease-in-out infinite alternate-reverse;animation-delay:15s}.bg-decorations .bg-line{position:absolute}.bg-decorations .bg-line.line-1{top:25%;left:0;width:100%;height:3px;background:linear-gradient(90deg,transparent,var(--primary-color) 30%,var(--primary-light) 50%,var(--primary-color) 70%,transparent);opacity:.15;transform:rotate(-2deg);animation:lineFlow 12s ease-in-out infinite}.bg-decorations .bg-line.line-2{bottom:35%;left:0;width:100%;height:2px;background:linear-gradient(90deg,transparent,var(--secondary-color) 40%,var(--secondary-light) 50%,var(--secondary-color) 60%,transparent);opacity:.12;transform:rotate(1deg);animation:lineFlow 15s ease-in-out infinite reverse}.bg-decorations .bg-line.line-3{top:60%;left:0;width:100%;height:1px;background:linear-gradient(90deg,transparent,var(--accent-color) 45%,var(--accent-light) 50%,var(--accent-color) 55%,transparent);opacity:.1;transform:rotate(-1deg);animation:lineFlow 18s ease-in-out infinite;animation-delay:5s}.bg-decorations .bg-line.line-4{top:80%;left:0;width:100%;height:2px;background:linear-gradient(90deg,transparent,var(--primary-dark) 35%,var(--primary-color) 50%,var(--primary-dark) 65%,transparent);opacity:.08;transform:rotate(.5deg);animation:lineFlow 20s ease-in-out infinite reverse;animation-delay:8s}.bg-decorations .bg-shape{position:absolute}.bg-decorations .bg-shape.shape-1{top:15%;right:15%;width:150px;height:150px;background:linear-gradient(45deg,var(--primary-color),var(--primary-light));opacity:.08;transform:rotate(45deg);animation:shapeRotate 50s linear infinite;border-radius:20px;filter:blur(1px)}.bg-decorations .bg-shape.shape-2{bottom:20%;left:20%;width:100px;height:100px;border:4px solid var(--secondary-color);opacity:.12;transform:rotate(30deg);animation:shapeRotateReverse 40s linear infinite;border-radius:15px;box-shadow:0 0 20px rgba(107,70,193,.3)}.bg-decorations .bg-shape.shape-3{top:50%;left:15%;width:0;height:0;border-left:60px solid transparent;border-right:60px solid transparent;border-bottom:100px solid var(--accent-color);opacity:.1;animation:shapeFloat 25s ease-in-out infinite alternate;filter:drop-shadow(0 0 10px rgba(246,173,85,.4))}.bg-decorations .bg-shape.shape-4{top:30%;right:40%;width:80px;height:80px;background:var(--secondary-light);opacity:.09;clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%);animation:shapeFloat 30s ease-in-out infinite alternate-reverse;animation-delay:10s}.bg-decorations .bg-shape.shape-5{bottom:40%;right:25%;width:120px;height:60px;background:linear-gradient(90deg,var(--primary-color),var(--accent-color));opacity:.07;border-radius:50px;animation:shapeStretch 20s ease-in-out infinite;animation-delay:5s}.bg-decorations .bg-dots{position:absolute}.bg-decorations .bg-dots.dots-1{top:5%;left:30%;width:250px;height:250px;background-image:radial-gradient(var(--primary-color) 3px,transparent 4px);background-size:35px 35px;opacity:.12;animation:dotsFloat 30s ease-in-out infinite alternate}.bg-decorations .bg-dots.dots-2{bottom:10%;right:5%;width:200px;height:200px;background-image:radial-gradient(var(--secondary-color) 2px,transparent 3px);background-size:25px 25px;opacity:.1;animation:dotsFloat 25s ease-in-out infinite alternate-reverse}.bg-decorations .bg-dots.dots-3{top:45%;left:60%;width:180px;height:180px;background-image:radial-gradient(var(--accent-color) 2px,transparent 3px);background-size:20px 20px;opacity:.08;animation:dotsFloat 35s ease-in-out infinite alternate;animation-delay:15s}.bg-decorations .floating-particles{position:absolute;width:100%;height:100%}.bg-decorations .floating-particles .particle{position:absolute;border-radius:50%}.bg-decorations .floating-particles .particle.p-1{width:8px;height:8px;background:var(--primary-color);top:20%;left:10%;opacity:.6;animation:particleFloat1 15s ease-in-out infinite;box-shadow:0 0 10px var(--primary-color)}.bg-decorations .floating-particles .particle.p-2{width:6px;height:6px;background:var(--secondary-color);top:60%;left:20%;opacity:.5;animation:particleFloat2 18s ease-in-out infinite;animation-delay:2s;box-shadow:0 0 8px var(--secondary-color)}.bg-decorations .floating-particles .particle.p-3{width:10px;height:10px;background:var(--accent-color);top:40%;right:25%;opacity:.4;animation:particleFloat3 20s ease-in-out infinite;animation-delay:4s;box-shadow:0 0 12px var(--accent-color)}.bg-decorations .floating-particles .particle.p-4{width:7px;height:7px;background:var(--primary-light);bottom:30%;left:25%;opacity:.5;animation:particleFloat1 22s ease-in-out infinite;animation-delay:6s;box-shadow:0 0 9px var(--primary-light)}.bg-decorations .floating-particles .particle.p-5{width:9px;height:9px;background:var(--secondary-light);top:80%;right:15%;opacity:.4;animation:particleFloat2 16s ease-in-out infinite;animation-delay:8s;box-shadow:0 0 11px var(--secondary-light)}.bg-decorations .floating-particles .particle.p-6{width:5px;height:5px;background:var(--accent-light);top:30%;left:60%;opacity:.6;animation:particleFloat3 19s ease-in-out infinite;animation-delay:10s;box-shadow:0 0 7px var(--accent-light)}.bg-decorations .floating-particles .particle.p-7{width:8px;height:8px;background:var(--primary-dark);bottom:60%;right:30%;opacity:.3;animation:particleFloat1 24s ease-in-out infinite;animation-delay:12s;box-shadow:0 0 10px var(--primary-dark)}.bg-decorations .floating-particles .particle.p-8{width:6px;height:6px;background:var(--secondary-dark);top:70%;left:40%;opacity:.5;animation:particleFloat2 17s ease-in-out infinite;animation-delay:14s;box-shadow:0 0 8px var(--secondary-dark)}.bg-decorations .floating-particles .particle.p-9{width:11px;height:11px;background:var(--accent-dark);top:15%;right:40%;opacity:.4;animation:particleFloat3 21s ease-in-out infinite;animation-delay:16s;box-shadow:0 0 13px var(--accent-dark)}.bg-decorations .floating-particles .particle.p-10{width:7px;height:7px;background:linear-gradient(45deg,var(--primary-color),var(--secondary-color));bottom:45%;left:50%;opacity:.5;animation:particleFloat1 23s ease-in-out infinite;animation-delay:18s;box-shadow:0 0 9px rgba(52,144,220,.7)}.bg-decorations .wave-effects{position:absolute;width:100%;height:100%}.bg-decorations .wave-effects .wave{position:absolute;width:200%;height:100px}.bg-decorations .wave-effects .wave.wave-1{bottom:0;left:-50%;background:linear-gradient(90deg,transparent,var(--primary-color),transparent);opacity:.1;border-radius:100px 100px 0 0;animation:waveMove 20s linear infinite}.bg-decorations .wave-effects .wave.wave-2{top:30%;left:-50%;background:linear-gradient(90deg,transparent,var(--secondary-color),transparent);opacity:.08;border-radius:0 0 100px 100px;animation:waveMove 25s linear infinite reverse;animation-delay:5s}.bg-decorations .wave-effects .wave.wave-3{top:60%;left:-50%;background:linear-gradient(90deg,transparent,var(--accent-color),transparent);opacity:.06;border-radius:100px;animation:waveMove 30s linear infinite;animation-delay:10s}.bg-decorations .mini-decorations{position:absolute;top:0;left:0;width:100%;height:100%}.bg-decorations .mini-decorations .mini-dec{position:absolute}.bg-decorations .mini-decorations .mini-dec.triangle-1{top:25%;left:10%;width:0;height:0;border-left:12px solid transparent;border-right:12px solid transparent;border-bottom:20px solid var(--primary-color);opacity:.4;animation:triangleFloat 12s ease-in-out infinite;filter:drop-shadow(0 0 5px var(--primary-color))}.bg-decorations .mini-decorations .mini-dec.triangle-2{top:70%;right:15%;width:0;height:0;border-left:10px solid transparent;border-right:10px solid transparent;border-bottom:18px solid var(--secondary-color);opacity:.35;animation:triangleFloat 15s ease-in-out infinite;animation-delay:3s;filter:drop-shadow(0 0 4px var(--secondary-color))}.bg-decorations .mini-decorations .mini-dec.triangle-3{top:40%;right:30%;width:0;height:0;border-left:8px solid transparent;border-right:8px solid transparent;border-bottom:15px solid var(--accent-color);opacity:.3;animation:triangleFloat 10s ease-in-out infinite;animation-delay:6s;filter:drop-shadow(0 0 3px var(--accent-color))}.bg-decorations .mini-decorations .mini-dec.triangle-4{top:55%;left:30%;width:0;height:0;border-left:9px solid transparent;border-right:9px solid transparent;border-bottom:16px solid var(--primary-light);opacity:.32;animation:triangleFloat 14s ease-in-out infinite;animation-delay:9s;filter:drop-shadow(0 0 4px var(--primary-light))}.bg-decorations .mini-decorations .mini-dec.triangle-5{top:85%;left:50%;width:0;height:0;border-left:7px solid transparent;border-right:7px solid transparent;border-bottom:13px solid var(--secondary-light);opacity:.28;animation:triangleFloat 11s ease-in-out infinite;animation-delay:12s;filter:drop-shadow(0 0 3px var(--secondary-light))}.bg-decorations .mini-decorations .mini-dec.triangle-6{top:15%;right:50%;width:0;height:0;border-left:11px solid transparent;border-right:11px solid transparent;border-bottom:19px solid var(--accent-light);opacity:.36;animation:triangleFloat 13s ease-in-out infinite;animation-delay:15s;filter:drop-shadow(0 0 5px var(--accent-light))}.bg-decorations .mini-decorations .mini-dec.square-1{top:60%;left:20%;width:15px;height:15px;background:linear-gradient(45deg,var(--primary-color),var(--primary-light));opacity:.4;animation:squareRotate 18s linear infinite;border-radius:2px;box-shadow:0 0 8px var(--primary-color)}.bg-decorations .mini-decorations .mini-dec.square-2{top:30%;right:25%;width:12px;height:12px;background:linear-gradient(45deg,var(--secondary-color),var(--secondary-light));opacity:.35;animation:squareRotate 22s linear infinite;animation-delay:5s;border-radius:2px;box-shadow:0 0 6px var(--secondary-color)}.bg-decorations .mini-decorations .mini-dec.square-3{top:80%;left:40%;width:18px;height:8px;background:linear-gradient(90deg,var(--accent-color),var(--accent-light));opacity:.3;animation:squareFloat 15s ease-in-out infinite;animation-delay:8s;border-radius:3px;box-shadow:0 0 7px var(--accent-color)}.bg-decorations .mini-decorations .mini-dec.square-4{top:45%;left:5%;width:14px;height:14px;background:var(--primary-dark);opacity:.32;animation:squareRotate 20s linear infinite;animation-delay:11s;border-radius:2px;box-shadow:0 0 6px var(--primary-dark)}.bg-decorations .mini-decorations .mini-dec.square-5{bottom:25%;right:40%;width:16px;height:10px;background:var(--secondary-dark);opacity:.28;animation:squareFloat 17s ease-in-out infinite;animation-delay:14s;border-radius:3px;box-shadow:0 0 7px var(--secondary-dark)}.bg-decorations .mini-decorations .mini-dec.circle-1{top:15%;left:25%;width:12px;height:12px;border-radius:50%;background:radial-gradient(circle,var(--primary-color),var(--primary-light));opacity:.5;animation:circlePulse 8s ease-in-out infinite;box-shadow:0 0 15px var(--primary-color)}.bg-decorations .mini-decorations .mini-dec.circle-2{top:65%;right:10%;width:10px;height:10px;border-radius:50%;background:radial-gradient(circle,var(--secondary-color),var(--secondary-light));opacity:.45;animation:circlePulse 10s ease-in-out infinite;animation-delay:3s;box-shadow:0 0 12px var(--secondary-color)}.bg-decorations .mini-decorations .mini-dec.circle-3{top:50%;left:60%;width:14px;height:14px;border-radius:50%;background:radial-gradient(circle,var(--accent-color),var(--accent-light));opacity:.4;animation:circlePulse 12s ease-in-out infinite;animation-delay:6s;box-shadow:0 0 18px var(--accent-color)}.bg-decorations .mini-decorations .mini-dec.circle-4{bottom:40%;left:35%;width:9px;height:9px;border-radius:50%;background:var(--primary-dark);opacity:.42;animation:circlePulse 9s ease-in-out infinite;animation-delay:9s;box-shadow:0 0 10px var(--primary-dark)}.bg-decorations .mini-decorations .mini-dec.diamond-1{top:45%;left:15%;width:14px;height:14px;background:linear-gradient(45deg,var(--primary-color),var(--secondary-color));transform:rotate(45deg);opacity:.35;animation:diamondSpin 12s linear infinite;box-shadow:0 0 8px rgba(52,144,220,.5)}.bg-decorations .mini-decorations .mini-dec.diamond-2{top:20%;right:20%;width:12px;height:12px;background:linear-gradient(45deg,var(--secondary-color),var(--accent-color));transform:rotate(45deg);opacity:.3;animation:diamondSpin 15s linear infinite;animation-delay:5s;box-shadow:0 0 6px rgba(107,70,193,.5)}.bg-decorations .mini-decorations .mini-dec.diamond-3{bottom:30%;right:50%;width:16px;height:16px;background:linear-gradient(45deg,var(--accent-color),var(--primary-color));transform:rotate(45deg);opacity:.32;animation:diamondSpin 10s linear infinite;animation-delay:8s;box-shadow:0 0 10px rgba(246,173,85,.5)}.bg-decorations .mini-decorations .mini-dec.plus-1{top:75%;left:35%;width:14px;height:3px;background:var(--primary-color);opacity:.4;animation:plusRotate 16s linear infinite;box-shadow:0 0 6px var(--primary-color)}.bg-decorations .mini-decorations .mini-dec.plus-1:after{content:"";position:absolute;width:3px;height:14px;background:var(--primary-color);top:-5.5px;left:5.5px;box-shadow:0 0 6px var(--primary-color)}.bg-decorations .mini-decorations .mini-dec.plus-2{top:35%;left:70%;width:12px;height:2px;background:var(--secondary-color);opacity:.35;animation:plusRotate 20s linear infinite;animation-delay:7s;box-shadow:0 0 5px var(--secondary-color)}.bg-decorations .mini-decorations .mini-dec.plus-2:after{content:"";position:absolute;width:2px;height:12px;background:var(--secondary-color);top:-5px;left:5px;box-shadow:0 0 5px var(--secondary-color)}.bg-decorations .mini-decorations .mini-dec.star-1{top:85%;right:25%;width:16px;height:16px;background:var(--accent-color);clip-path:polygon(50% 0,61% 35%,98% 35%,68% 57%,79% 91%,50% 70%,21% 91%,32% 57%,2% 35%,39% 35%);opacity:.5;animation:starTwinkle 6s ease-in-out infinite;box-shadow:0 0 12px var(--accent-color)}.bg-decorations .mini-decorations .mini-dec.star-2{top:25%;left:55%;width:14px;height:14px;background:var(--primary-light);clip-path:polygon(50% 0,61% 35%,98% 35%,68% 57%,79% 91%,50% 70%,21% 91%,32% 57%,2% 35%,39% 35%);opacity:.45;animation:starTwinkle 8s ease-in-out infinite;animation-delay:4s;box-shadow:0 0 10px var(--primary-light)}.bg-decorations .mini-decorations .mini-dec.hexagon-1{top:55%;right:35%;width:16px;height:16px;background:var(--secondary-light);clip-path:polygon(30% 0,70% 0,100% 50%,70% 100%,30% 100%,0 50%);opacity:.35;animation:hexagonRotate 14s linear infinite;box-shadow:0 0 8px var(--secondary-light)}.bg-decorations .mini-decorations .mini-dec.hexagon-2{bottom:50%;left:45%;width:14px;height:14px;background:var(--accent-light);clip-path:polygon(30% 0,70% 0,100% 50%,70% 100%,30% 100%,0 50%);opacity:.3;animation:hexagonRotate 18s linear infinite;animation-delay:6s;box-shadow:0 0 7px var(--accent-light)}.bg-decorations .mini-decorations .mini-dec.heart-1{top:90%;left:60%;width:12px;height:12px;background:var(--accent-color);opacity:.4;animation:heartBeat 4s ease-in-out infinite;box-shadow:0 0 8px var(--accent-color)}.bg-decorations .mini-decorations .mini-dec.heart-1:after,.bg-decorations .mini-decorations .mini-dec.heart-1:before{content:"";width:6px;height:10px;position:absolute;left:6px;top:0;background:var(--accent-color);border-radius:6px 6px 0 0;transform:rotate(-45deg);transform-origin:0 100%}.bg-decorations .mini-decorations .mini-dec.heart-1:after{left:0;transform:rotate(45deg);transform-origin:100% 100%}.bg-decorations .glow-effects{position:absolute;width:100%;height:100%}.bg-decorations .glow-effects .glow{position:absolute;border-radius:50%;filter:blur(20px)}.bg-decorations .glow-effects .glow.glow-1{top:20%;left:20%;width:200px;height:200px;background:radial-gradient(circle,var(--primary-color) 0,transparent 70%);opacity:.1;animation:glowPulse 15s ease-in-out infinite}.bg-decorations .glow-effects .glow.glow-2{bottom:30%;right:20%;width:150px;height:150px;background:radial-gradient(circle,var(--secondary-color) 0,transparent 70%);opacity:.08;animation:glowPulse 20s ease-in-out infinite;animation-delay:5s}.bg-decorations .glow-effects .glow.glow-3{top:60%;left:50%;width:180px;height:180px;background:radial-gradient(circle,var(--accent-color) 0,transparent 70%);opacity:.06;animation:glowPulse 18s ease-in-out infinite;animation-delay:10s}.bg-decorations .glow-effects .glow.glow-4{top:40%;right:40%;width:120px;height:120px;background:radial-gradient(circle,var(--primary-light) 0,transparent 70%);opacity:.07;animation:glowPulse 22s ease-in-out infinite;animation-delay:15s}@keyframes patternFloat{0%{transform:translateY(0) rotate(15deg)}50%{transform:translateY(-30px) rotate(25deg)}to{transform:translateY(0) rotate(15deg)}}@keyframes patternSlide{0%{transform:translateX(0)}to{transform:translateX(50px)}}@keyframes patternRotate{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes patternSpin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes patternPulse{0%{opacity:.1;transform:scale(1)}50%{opacity:.2;transform:scale(1.1)}to{opacity:.1;transform:scale(1)}}@keyframes circleFloat{0%{transform:translateY(0) translateX(0) scale(1)}33%{transform:translateY(-25px) translateX(15px) scale(1.05)}66%{transform:translateY(-10px) translateX(-10px) scale(.95)}to{transform:translateY(0) translateX(0) scale(1)}}@keyframes lineFlow{0%{transform:translateX(-100%) rotate(var(--rotation,0deg));opacity:0}25%{opacity:.5}50%{opacity:1}75%{opacity:.5}to{transform:translateX(100%) rotate(var(--rotation,0deg));opacity:0}}@keyframes shapeRotate{0%{transform:rotate(45deg) scale(1)}50%{transform:rotate(225deg) scale(1.1)}to{transform:rotate(405deg) scale(1)}}@keyframes shapeRotateReverse{0%{transform:rotate(30deg) scale(1)}50%{transform:rotate(-150deg) scale(1.1)}to{transform:rotate(-330deg) scale(1)}}@keyframes shapeFloat{0%{transform:translateY(0) scale(1)}50%{transform:translateY(-20px) scale(1.1)}to{transform:translateY(0) scale(1)}}@keyframes shapeStretch{0%{transform:scaleX(1) scaleY(1)}50%{transform:scaleX(1.3) scaleY(.8)}to{transform:scaleX(1) scaleY(1)}}@keyframes dotsFloat{0%{transform:translateY(0) translateX(0);opacity:.12}50%{transform:translateY(-15px) translateX(10px);opacity:.2}to{transform:translateY(0) translateX(0);opacity:.12}}@keyframes particleFloat1{0%{transform:translateY(0) translateX(0) scale(1)}25%{transform:translateY(-30px) translateX(20px) scale(1.2)}50%{transform:translateY(-60px) translateX(-10px) scale(.8)}75%{transform:translateY(-30px) translateX(15px) scale(1.1)}to{transform:translateY(0) translateX(0) scale(1)}}@keyframes particleFloat2{0%{transform:translateY(0) translateX(0) rotate(0deg)}33%{transform:translateY(-25px) translateX(-15px) rotate(120deg)}66%{transform:translateY(-40px) translateX(20px) rotate(240deg)}to{transform:translateY(0) translateX(0) rotate(1turn)}}@keyframes particleFloat3{0%{transform:translateY(0) translateX(0) scale(1) rotate(0deg)}50%{transform:translateY(-35px) translateX(25px) scale(1.3) rotate(180deg)}to{transform:translateY(0) translateX(0) scale(1) rotate(1turn)}}@keyframes waveMove{0%{transform:translateX(-100%)}to{transform:translateX(0)}}@keyframes triangleFloat{0%{transform:translateY(0) rotate(0deg) scale(1)}33%{transform:translateY(-15px) rotate(10deg) scale(1.1)}66%{transform:translateY(-8px) rotate(-5deg) scale(.9)}to{transform:translateY(0) rotate(0deg) scale(1)}}@keyframes squareRotate{0%{transform:rotate(0deg) scale(1)}25%{transform:rotate(90deg) scale(1.1)}50%{transform:rotate(180deg) scale(.9)}75%{transform:rotate(270deg) scale(1.1)}to{transform:rotate(1turn) scale(1)}}@keyframes squareFloat{0%{transform:translateY(0) scaleX(1)}50%{transform:translateY(-12px) scaleX(1.2)}to{transform:translateY(0) scaleX(1)}}@keyframes circlePulse{0%{transform:scale(1);opacity:.5}25%{transform:scale(1.3);opacity:.8}50%{transform:scale(.8);opacity:.3}75%{transform:scale(1.2);opacity:.7}to{transform:scale(1);opacity:.5}}@keyframes diamondSpin{0%{transform:rotate(45deg) scale(1)}25%{transform:rotate(135deg) scale(1.2)}50%{transform:rotate(225deg) scale(.8)}75%{transform:rotate(315deg) scale(1.1)}to{transform:rotate(405deg) scale(1)}}@keyframes plusRotate{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes starTwinkle{0%{transform:scale(1) rotate(0deg);opacity:.5;filter:brightness(1)}25%{transform:scale(1.3) rotate(90deg);opacity:.8;filter:brightness(1.5)}50%{transform:scale(.7) rotate(180deg);opacity:1;filter:brightness(2)}75%{transform:scale(1.2) rotate(270deg);opacity:.6;filter:brightness(1.3)}to{transform:scale(1) rotate(1turn);opacity:.5;filter:brightness(1)}}@keyframes hexagonRotate{0%{transform:rotate(0deg) scale(1)}50%{transform:rotate(180deg) scale(1.1)}to{transform:rotate(1turn) scale(1)}}@keyframes heartBeat{0%{transform:scale(1)}25%{transform:scale(1.2)}50%{transform:scale(.9)}75%{transform:scale(1.1)}to{transform:scale(1)}}@keyframes glowPulse{0%{opacity:.1;transform:scale(1)}50%{opacity:.2;transform:scale(1.2)}to{opacity:.1;transform:scale(1)}}@keyframes float-slow{0%{transform:translateY(0) translateX(0)}50%{transform:translateY(-20px) translateX(10px)}to{transform:translateY(0) translateX(0)}}@keyframes float-mini{0%{transform:translateY(0) rotate(0deg)}50%{transform:translateY(-8px) rotate(5deg)}to{transform:translateY(0) rotate(0deg)}}@keyframes rotate{0%{transform:rotate(45deg)}to{transform:rotate(405deg)}}@keyframes rotate-reverse{0%{transform:rotate(30deg)}to{transform:rotate(-330deg)}}@keyframes rotate-mini{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes pulse{0%{transform:scale(1);opacity:.15}50%{transform:scale(1.3);opacity:.3}to{transform:scale(1);opacity:.15}}.fade-enter-active,.fade-leave-active{transition:opacity .3s ease}.fade-enter-from,.fade-leave-to{opacity:0}*{margin:0;padding:0;box-sizing:border-box}body,html{font-family:var(--font-family);font-size:16px;line-height:1.5;color:var(--text-color);background:var(--bg-gradient);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;scroll-behavior:smooth;min-height:100vh;overflow-x:hidden;position:relative}body:before{content:"";position:fixed;top:0;left:0;width:100%;height:100%;background-image:radial-gradient(circle at 20% 30%,var(--deco-primary) 0,transparent 40%),radial-gradient(circle at 80% 70%,var(--deco-secondary) 0,transparent 30%);opacity:.3;z-index:var(--z-index-backdrop);pointer-events:none}a{color:var(--primary-color);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--primary-dark)}button{cursor:pointer;font-family:inherit}img{max-width:100%;height:auto}.container{width:100%;max-width:var(--container-max-width);margin:0 auto;padding:0 1rem}.flex{display:flex}.flex-column{flex-direction:column}.items-center{align-items:center}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-2{gap:.5rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.my-4{margin-bottom:1rem}.mt-4,.my-4{margin-top:1rem}.mb-4{margin-bottom:1rem}.py-4{padding-top:1rem;padding-bottom:1rem}.px-4{padding-left:1rem;padding-right:1rem}.card{background:var(--bg-card);border-radius:var(--border-radius);box-shadow:var(--box-shadow);padding:1.5rem;transition:box-shadow var(--transition-normal)}.card:hover{box-shadow:var(--box-shadow-hover)}.btn{display:inline-flex;align-items:center;justify-content:center;padding:.5rem 1rem;font-size:var(--font-size-sm);font-weight:500;border-radius:var(--border-radius);transition:all var(--transition-fast);border:none;cursor:pointer}.btn-primary{background-color:var(--primary-color);color:#fff}.btn-primary:hover{background-color:var(--primary-dark)}.btn-secondary{background-color:var(--secondary-color);color:#fff}.btn-secondary:hover{background-color:var(--secondary-light)}.btn-outline{background-color:transparent;border:1px solid var(--border-color);color:var(--text-color)}.btn-outline:hover{border-color:var(--primary-color);color:var(--primary-color)}.btn-icon{padding:.5rem;border-radius:50%}.form-group{margin-bottom:1.5rem}.form-label{display:block;margin-bottom:.5rem;font-weight:500;color:var(--text-color)}.form-input,.form-textarea{width:100%;padding:.75rem 1rem;font-size:var(--font-size-md);border:1px solid var(--border-color);border-radius:var(--border-radius);transition:border-color var(--transition-fast)}.form-input:focus,.form-textarea:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px rgba(52,144,220,.2)}.form-textarea{min-height:100px;resize:vertical}.text-center{text-align:center}.text-primary{color:var(--primary-color)}.text-success{color:var(--success-color)}.text-error{color:var(--error-color)}.text-sm{font-size:var(--font-size-sm)}.text-lg{font-size:var(--font-size-lg)}.text-xl{font-size:var(--font-size-xl)}.text-2xl{font-size:var(--font-size-2xl)}.font-bold{font-weight:700}.font-medium{font-weight:500}.rounded{border-radius:var(--border-radius)}.shadow{box-shadow:var(--box-shadow)}.opacity-50{opacity:.5}.hidden{display:none}.relative{position:relative}.absolute,.sr-only{position:absolute}.sr-only{width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}@media(min-width:768px){.md\:flex{display:flex}}@media(min-width:1024px){.lg\:grid-cols-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:grid-cols-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}}