:root{--primary-color: #2563eb;--primary-dark: #1d4ed8;--primary-light: #3b82f6;--primary-50: #eff6ff;--primary-100: #dbeafe;--primary-200: #bfdbfe;--gray-50: #f9fafb;--gray-100: #f3f4f6;--gray-200: #e5e7eb;--gray-300: #d1d5db;--gray-400: #9ca3af;--gray-500: #6b7280;--gray-600: #4b5563;--gray-700: #374151;--gray-800: #1f2937;--gray-900: #111827;--background-color: #ffffff;--surface-color: #ffffff;--surface-hover: var(--gray-50);--surface-elevated: #ffffff;--sidebar-bg: #ffffff;--sidebar-border: var(--gray-200);--text-primary: var(--gray-900);--text-secondary: var(--gray-600);--text-tertiary: var(--gray-400);--text-muted: var(--gray-300);--border-color: var(--gray-200);--border-hover: var(--gray-300);--divider-color: var(--gray-100);--error-color: #dc2626;--success-color: #059669;--warning-color: #d97706;--info-color: var(--primary-color);--shadow-xs: 0 1px 2px 0 rgb(0 0 0 / .03);--shadow-sm: 0 1px 2px 0 rgb(0 0 0 / .05);--shadow-md: 0 4px 6px -1px rgb(0 0 0 / .07), 0 2px 4px -1px rgb(0 0 0 / .03);--shadow-lg: 0 10px 15px -3px rgb(0 0 0 / .08), 0 4px 6px -2px rgb(0 0 0 / .03);--shadow-xl: 0 20px 25px -5px rgb(0 0 0 / .08), 0 10px 10px -5px rgb(0 0 0 / .02);--radius-sm: 4px;--radius-md: 6px;--radius-lg: 8px;--radius-xl: 12px;--sidebar-width: 280px;--sidebar-collapsed-width: 60px;--transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--transition-normal: .2s cubic-bezier(.4, 0, .2, 1);--transition-slow: .3s cubic-bezier(.4, 0, .2, 1)}*{box-sizing:border-box}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:16px;line-height:1.5;color:var(--text-primary);background-color:var(--background-color);min-height:100vh;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.page-content{background-color:var(--background-color);color:var(--text-primary)}.main-content{background-color:var(--background-color);color:var(--text-primary);margin-left:var(--sidebar-width);padding:2rem;min-height:100vh;transition:var(--transition-normal)}#app{min-height:100vh;display:flex}.hidden{display:none!important}.active{display:block!important}.modal{position:fixed;inset:0;z-index:10000;display:flex;align-items:center;justify-content:center}.modal-backdrop{position:absolute;inset:0;background-color:#00000080}.modal-content{position:relative;background:var(--surface-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);width:90%;max-width:500px;max-height:90vh;overflow:auto}.modal-header{padding:1.5rem;border-bottom:1px solid var(--border-color);display:flex;align-items:center;justify-content:space-between}.modal-title{font-size:1.25rem;font-weight:600;color:var(--text-primary);margin:0}.modal-close{background:none;border:none;font-size:1.5rem;color:var(--text-secondary);cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);transition:all .15s ease}.modal-close:hover{background-color:var(--surface-hover);color:var(--text-primary)}.modal-body{padding:1.5rem}.modal-footer{padding:1.5rem;border-top:1px solid var(--border-color);display:flex;gap:.75rem;justify-content:flex-end}.form-group label{display:block;margin-bottom:.5rem;font-size:.875rem;font-weight:500;color:var(--text-primary)}.form-input{width:100%;padding:.625rem .875rem;font-size:.875rem;border:1px solid var(--border-color);border-radius:var(--radius-md);background-color:var(--surface-color);color:var(--text-primary);transition:all .15s ease}.form-input:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #6366f11a}.form-hint{display:block;margin-top:.25rem;font-size:.75rem;color:var(--text-tertiary)}.form-preview{margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid var(--border-color)}.profile-preview{display:flex;align-items:center;gap:1rem;padding:.75rem;background-color:var(--surface-hover);border-radius:var(--radius-md)}.preview-avatar{width:48px;height:48px;border-radius:50%;object-fit:cover}.preview-info{flex:1;display:flex;flex-direction:column;gap:.125rem}.preview-name{font-weight:500;color:var(--text-primary)}.preview-email{font-size:.75rem;color:var(--text-tertiary)}.avatar-upload-section{display:flex;align-items:center;gap:1.5rem}.current-avatar{position:relative;width:100px;height:100px;border-radius:50%;overflow:hidden;border:2px solid var(--border-color);background-color:var(--surface-hover);flex-shrink:0}.current-avatar-img{width:100%;height:100%;object-fit:cover}.avatar-overlay{position:absolute;inset:0;background:#000000b3;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .2s ease;cursor:pointer}.current-avatar:hover .avatar-overlay{opacity:1}.avatar-overlay .btn{background:#ffffffe6;color:var(--text-primary);font-size:.75rem;padding:.375rem .75rem}.avatar-overlay .btn:hover{background:#fff}.avatar-upload-hints{display:flex;flex-direction:column;gap:.25rem}.btn{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.875rem;font-weight:500;border-radius:var(--radius-md);border:none;cursor:pointer;transition:all .15s ease;text-decoration:none;background-color:var(--primary-color);color:#fff;white-space:nowrap}.btn:hover{background-color:var(--primary-dark)}.btn:disabled,.btn.btn-disabled{background-color:var(--text-tertiary);color:var(--text-secondary);cursor:not-allowed;opacity:.6}.btn:disabled:hover,.btn.btn-disabled:hover{background-color:var(--text-tertiary)}.btn-ghost{background-color:transparent;color:var(--text-secondary);border:1px solid transparent}.btn-ghost:hover{background-color:var(--surface-hover);color:var(--text-primary)}.btn-link{background:none;border:none;color:var(--primary-color);text-decoration:underline;cursor:pointer;padding:0;font-size:inherit}.btn-link:hover{color:var(--primary-dark)}.btn-small{padding:.25rem .5rem;font-size:.75rem}.sidebar{width:var(--sidebar-width);min-width:var(--sidebar-width);background-color:var(--sidebar-bg);border-right:1px solid var(--sidebar-border);display:flex;flex-direction:column;position:fixed;height:100vh;left:0;top:0;z-index:1000;transition:var(--transition-normal)}.sidebar.collapsed{width:var(--sidebar-collapsed-width);min-width:var(--sidebar-collapsed-width)}.sidebar.collapsed .brand-text,.sidebar.collapsed .nav-text,.sidebar.collapsed .btn-text,.sidebar.collapsed .user-details{opacity:0;pointer-events:none}.sidebar-header{padding:1rem;border-bottom:1px solid var(--sidebar-border);display:flex;align-items:center;justify-content:space-between;min-height:64px}.sidebar.collapsed .sidebar-header{justify-content:center;padding:1rem .5rem}.sidebar-brand{display:flex;align-items:center;gap:.75rem;font-weight:700;font-size:1.125rem;color:var(--text-primary);overflow:hidden;text-decoration:none;transition:transform .2s ease}.sidebar-brand:hover{transform:scale(1.05)}.sidebar.collapsed .sidebar-brand{width:0;opacity:0}.brand-logo{height:40px;width:auto;object-fit:contain;flex-shrink:0}.brand-icon{font-size:1.5rem;flex-shrink:0}.brand-text{transition:opacity .3s ease;white-space:nowrap}.sidebar-toggle{padding:.5rem;background:none;border:none;cursor:pointer;color:var(--text-secondary);border-radius:var(--radius-sm);transition:all .3s ease;flex-shrink:0;display:flex;align-items:center;justify-content:center;width:32px;height:32px}.sidebar.collapsed .sidebar-toggle{position:static;margin:0 auto}.sidebar-toggle:hover{background-color:var(--surface-hover);color:var(--text-primary)}.sidebar-toggle svg{transform:rotate(180deg);transition:transform .3s ease}.sidebar.collapsed .sidebar-toggle svg{transform:rotate(0)}.sidebar-nav{flex:1;padding:1rem 0;overflow-y:auto}.nav-section{margin-bottom:2rem}.nav-section:last-child{margin-bottom:1rem}.nav-section-header{padding:0 1rem;margin-bottom:.75rem}.nav-section-title{font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--text-tertiary);position:relative}.nav-section-title:after{content:"";position:absolute;bottom:-4px;left:0;width:16px;height:1px;background-color:var(--gray-300);border-radius:.5px}.sidebar.collapsed .nav-section-header{padding:0 .5rem;text-align:center}.sidebar.collapsed .nav-section-title{font-size:.5rem;writing-mode:vertical-rl;text-orientation:mixed}.sidebar.collapsed .nav-section-title:after{display:none}.nav-list{list-style:none;margin:0;padding:0 1rem}.sidebar.collapsed .nav-list{padding:0 .5rem}.nav-item{margin-bottom:.25rem}.nav-link{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;color:var(--text-secondary);text-decoration:none;border-radius:var(--radius-md);transition:var(--transition-fast);cursor:pointer;position:relative}.sidebar.collapsed .nav-link{padding:.75rem .5rem;justify-content:center;width:100%;min-height:44px;color:var(--text-secondary)}.sidebar.collapsed .nav-link:hover{color:var(--primary-color)}.nav-link:hover{background-color:var(--surface-hover);color:var(--text-primary)}.nav-link.active{background-color:var(--primary-color);color:#fff}.nav-link.active:hover{background-color:var(--primary-dark)}.sidebar.collapsed .nav-link.active{border-radius:var(--radius-md);background-color:var(--primary-color);color:#fff;padding:.75rem .5rem;min-height:44px}.nav-icon{flex-shrink:0;width:20px;height:20px}.nav-text{font-weight:500;transition:opacity .3s ease}.sidebar-links{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1rem;margin:.5rem 0;border-top:1px solid var(--border-color);border-bottom:1px solid var(--border-color)}.footer-link{color:var(--text-secondary);text-decoration:none;font-size:.75rem;font-weight:500;transition:color .2s ease;padding:.25rem .5rem;border-radius:.375rem}.footer-link:hover{color:var(--primary-color);background-color:var(--primary-50)}.link-separator{color:var(--text-tertiary);font-size:.75rem;-webkit-user-select:none;user-select:none}.about-content,.privacy-content,.terms-content{max-width:800px;margin:0 auto;padding:2rem;line-height:1.7}.terms-content{counter-reset:section}.acknowledgment{background:linear-gradient(135deg,var(--primary-50) 0%,var(--gray-50) 100%);padding:1.5rem;border-radius:.75rem;border-left:4px solid var(--primary-color);font-size:1rem;font-weight:500;color:var(--text-primary);margin-bottom:1rem}.about-hero{text-align:center;margin-bottom:3rem;padding:2rem;background:linear-gradient(135deg,var(--primary-50) 0%,var(--gray-50) 100%);border-radius:1rem}.about-logo{width:80px;height:80px;margin-bottom:1rem}.about-tagline{font-size:1.25rem;color:var(--text-secondary);margin:0}.about-section,.privacy-section,.terms-section{margin-bottom:3rem}.about-section h2,.privacy-section h2,.terms-section h2{color:var(--text-primary);font-size:1.875rem;font-weight:700;margin-bottom:1rem;border-bottom:2px solid var(--primary-color);padding-bottom:.5rem}.about-section h3,.privacy-section h3,.terms-section h3{color:var(--text-primary);font-size:1.5rem;font-weight:600;margin:1.5rem 0 1rem}.about-section p,.privacy-section p,.terms-section p{color:var(--text-secondary);margin-bottom:1rem}.about-section ul,.privacy-section ul,.terms-section ul{margin:1rem 0;padding-left:1.5rem}.about-section li,.privacy-section li,.terms-section li{color:var(--text-secondary);margin-bottom:.5rem}.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;margin:2rem 0}.feature-card{padding:2rem;background:var(--surface-color);border:1px solid var(--border-color);border-radius:1rem;text-align:center;transition:all .2s ease}.feature-card:hover{border-color:var(--primary-color);box-shadow:var(--shadow-lg);transform:translateY(-2px)}.feature-icon{color:var(--primary-color);margin-bottom:1rem;display:flex;justify-content:center}.feature-card h3{color:var(--text-primary);font-size:1.25rem;font-weight:600;margin-bottom:.75rem}.feature-card p{color:var(--text-secondary);font-size:.9375rem;line-height:1.6;margin:0}.users-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem;margin:2rem 0}.user-type{padding:1.5rem;background:var(--gray-50);border-radius:.75rem;text-align:center}.user-type h3{font-size:1.125rem;margin-bottom:.75rem}.user-type p{font-size:.9375rem;margin:0}.tech-stack{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:2rem;margin:2rem 0}.tech-group{padding:1.5rem;background:var(--surface-color);border:1px solid var(--border-color);border-radius:.75rem}.tech-group h3{color:var(--primary-color);font-size:1.125rem;margin-bottom:1rem}.tech-group ul{list-style:none;padding-left:0}.tech-group li{padding:.25rem 0;font-size:.9375rem}.highlight-text{background:linear-gradient(135deg,var(--primary-50) 0%,var(--gray-50) 100%);padding:1.5rem;border-radius:.75rem;border-left:4px solid var(--primary-color);font-size:1.125rem;font-weight:500;color:var(--text-primary)}.contact-info{background:var(--gray-50);padding:2rem;border-radius:.75rem;margin:1.5rem 0}.contact-list{list-style:none;padding-left:0;margin:1.5rem 0}.contact-list li{padding:.5rem 0;font-size:1rem}.contact-list a{color:var(--primary-color);text-decoration:none}.contact-list a:hover{text-decoration:underline}.data-controller{margin-top:2rem;padding:1.5rem;background:var(--surface-color);border:1px solid var(--border-color);border-radius:.5rem}.data-controller h3{margin-top:0;margin-bottom:1rem}.data-controller p{margin:0;font-family:Courier New,monospace;font-size:.9375rem;line-height:1.5}.about-footer,.privacy-footer,.terms-footer{text-align:center;padding:2rem 0;border-top:1px solid var(--border-color);margin-top:3rem}.version-info,.effective-date{color:var(--text-tertiary);font-size:.875rem;margin:.5rem 0}.made-with{color:var(--text-secondary);font-size:1rem;margin:.5rem 0}.compliance-info{color:var(--text-secondary);font-size:.9375rem;font-weight:500;margin:.5rem 0}.sidebar-footer{padding:1rem;border-top:1px solid var(--sidebar-border)}.sidebar.collapsed .sidebar-footer{padding:1rem .5rem}.auth-section .btn{width:100%;justify-content:flex-start}.sidebar.collapsed .auth-section .btn{justify-content:center;padding:.75rem;min-height:44px;color:var(--text-secondary)}.sidebar.collapsed .auth-section .btn:hover{color:var(--primary-color)}.btn-text{transition:opacity .3s ease}.user-profile{width:100%}.user-info{display:flex;align-items:center;gap:.75rem;padding:.75rem;border-radius:var(--radius-md);background-color:var(--surface-hover);border:1px solid var(--border-color);transition:var(--transition-fast)}.user-info:hover{background-color:var(--surface-color);box-shadow:var(--shadow-sm)}.sidebar.collapsed .user-info{justify-content:center;padding:.75rem;min-height:44px;margin:0}.user-avatar{width:32px;height:32px;border-radius:50%;object-fit:cover;flex-shrink:0}.user-details{display:flex;flex-direction:column;gap:.25rem;min-width:0;transition:opacity .3s ease}.user-name-row{display:flex;align-items:center;gap:.5rem}.user-name{font-weight:500;font-size:.875rem;color:var(--text-primary);truncate:ellipsis;overflow:hidden;white-space:nowrap}.user-admin-badge,.admin-badge{display:inline-flex;align-items:center;padding:.125rem .375rem;font-size:.625rem;font-weight:600;text-transform:uppercase;letter-spacing:.025em;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-radius:999px;white-space:nowrap}.user-actions{display:flex;gap:.5rem;align-items:center}.edit-profile-btn,.logout-btn{font-size:.75rem;color:var(--text-secondary);background:none;border:none;cursor:pointer;padding:0;text-align:left;transition:color .15s ease}.edit-profile-btn:hover{color:var(--primary-color)}.logout-btn:hover{color:var(--error-color)}.main-content{flex:1;margin-left:var(--sidebar-width);min-height:100vh;display:flex;flex-direction:column;transition:margin-left .3s ease}.sidebar.collapsed~.main-content{margin-left:var(--sidebar-collapsed-width)}.page-content{flex:1;padding:2rem;max-width:1200px;margin:0 auto;width:100%}.page-content.hidden{display:none}.page-content.active{display:block}.hero{text-align:center;margin-bottom:3rem}.hero-title{font-size:2.5rem;font-weight:800;margin:0 0 1rem;color:var(--text-primary);line-height:1.2}.hero-subtitle{font-size:1.125rem;color:var(--text-secondary);max-width:600px;margin:0 auto}.hero-description{max-width:800px;margin:1.5rem auto 2rem;padding:1.25rem;background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:12px;font-size:.95rem;line-height:1.7;text-align:left}.hero-description p{margin:0;color:var(--text-secondary)}.hero-description strong{color:var(--text-primary);font-weight:600}.user-plan-badge{background-color:var(--primary-color);color:#fff;padding:.25rem .5rem;border-radius:var(--radius-sm);font-size:.75rem;font-weight:600;margin-left:.5rem}.subscription-status{margin-top:1rem;padding:1rem;background:var(--surface);border:1px solid var(--border-color);border-radius:8px}.subscription-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.plan-name{font-weight:600;color:var(--text-primary)}.upgrade-btn{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;padding:.5rem 1rem;border-radius:6px;font-size:.875rem;font-weight:500;cursor:pointer;transition:transform .2s ease}.upgrade-btn:hover{transform:translateY(-1px)}.usage-stats{display:flex;flex-direction:column;gap:1rem}.usage-item{display:flex;flex-direction:column;gap:.5rem}.usage-label{font-size:.875rem;color:var(--text-secondary);font-weight:500}.usage-bar{width:100%;height:8px;background:#ffffff1a;border-radius:4px;overflow:hidden}.usage-progress{height:100%;background:linear-gradient(90deg,#10b981,#059669);transition:width .3s ease}.usage-progress.warning{background:linear-gradient(90deg,#f59e0b,#d97706)}.usage-progress.danger{background:linear-gradient(90deg,#ef4444,#dc2626)}.usage-text{font-size:.875rem;color:var(--text-primary);font-weight:500}.pro-status{text-align:center}.pro-features{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1rem}.pro-feature{color:#10b981;font-size:.875rem;font-weight:500}.manage-billing-btn{background:var(--surface-hover);color:var(--text-primary);border:1px solid var(--border-color);padding:.5rem 1rem;border-radius:6px;font-size:.875rem;cursor:pointer;transition:all .2s ease}.manage-billing-btn:hover{background:var(--surface-active)}.privacy-settings{border:1px solid var(--border-color);border-radius:8px;padding:1rem;background:var(--surface)}.privacy-options{display:flex;flex-direction:column;gap:.75rem}.privacy-option{display:flex}.privacy-option input[type=radio]{display:none}.privacy-label{display:flex;align-items:center;gap:.75rem;padding:.75rem;border:2px solid var(--border-color);border-radius:8px;cursor:pointer;transition:all .2s ease;width:100%;position:relative}.privacy-label:hover{border-color:var(--primary)}.privacy-option input[type=radio]:checked+.privacy-label{border-color:var(--primary);background:#4f46e50d}.privacy-option input[type=radio]:disabled+.privacy-label{opacity:.5;cursor:not-allowed}.privacy-icon{font-size:1.25rem}.privacy-title{font-weight:600;color:var(--text-primary);margin-bottom:.25rem}.privacy-description{font-size:.875rem;color:var(--text-secondary)}.pro-only-badge{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:.25rem .5rem;border-radius:4px;font-size:.75rem;font-weight:500}.privacy-upgrade-hint{margin-top:.75rem;padding:.75rem;background:#fbbf241a;border:1px solid rgba(251,191,36,.3);border-radius:6px;display:flex;justify-content:space-between;align-items:center}.upgrade-hint-btn{background:#f59e0b;color:#fff;border:none;padding:.375rem .75rem;border-radius:4px;font-size:.875rem;font-weight:500;cursor:pointer}.upgrade-modal{max-width:600px}.upgrade-hero{text-align:center;margin-bottom:2rem}.upgrade-icon{font-size:3rem;margin-bottom:.5rem}.upgrade-subtitle{font-size:1.125rem;color:var(--text-secondary);margin:0}.plan-comparison{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin-bottom:2rem}.plan{border:2px solid var(--border-color);border-radius:12px;padding:1.5rem;position:relative}.plan.featured{border-color:var(--primary);transform:scale(1.02)}.plan-badge{position:absolute;top:-.5rem;left:50%;transform:translate(-50%);background:var(--primary);color:#fff;padding:.25rem .75rem;border-radius:12px;font-size:.875rem;font-weight:500}.plan h3{text-align:center;margin-bottom:1rem;color:var(--text-primary)}.plan-price{text-align:center;font-size:2rem;font-weight:700;color:var(--text-primary);margin-bottom:1.5rem}.plan-period{font-size:1rem;font-weight:400;color:var(--text-secondary)}.plan-features{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1.5rem}.feature{color:var(--text-secondary);font-size:.875rem}.plan-btn{width:100%;padding:.75rem;font-weight:600}.btn-loader{width:20px;height:20px;border:2px solid transparent;border-top:2px solid currentColor;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.upgrade-testimonial{background:var(--surface);padding:1.5rem;border-radius:8px;text-align:center}.testimonial-author{margin-top:.5rem;font-size:.875rem;color:var(--text-secondary);font-weight:500}.limit-modal{max-width:500px}.limit-icon{font-size:3rem;text-align:center;margin-bottom:1rem}.limit-message{text-align:center;margin-bottom:2rem}.limit-options{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin-bottom:2rem}.limit-option{padding:1.5rem;border:2px solid var(--border-color);border-radius:8px;text-align:center}.limit-option.upgrade-option{border-color:var(--primary);background:#4f46e50d}.limit-option h4{margin:0 0 .5rem;color:var(--text-primary)}.limit-option p{margin:0 0 1rem;color:var(--text-secondary);font-size:.875rem}.limit-footer{text-align:center}.success-modal{max-width:450px}.success-icon{font-size:3rem;text-align:center;margin-bottom:1rem}.success-message{text-align:center;margin-bottom:1.5rem;color:var(--text-primary)}.success-features{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1.5rem;text-align:center}.success-feature{color:#10b981;font-weight:500}@media (max-width: 768px){.plan-comparison,.limit-options{grid-template-columns:1fr}.subscription-status{margin-top:.5rem;padding:.75rem}.privacy-options{gap:.5rem}.privacy-label{padding:.5rem}}.upload-section{margin-bottom:3rem}.upload-container{max-width:600px;margin:0 auto}.upload-area{border:3px dashed var(--border-color);border-radius:var(--radius-lg);padding:3rem 2rem;text-align:center;transition:all .3s ease;cursor:pointer;background-color:var(--surface-color)}.upload-area:hover,.upload-area.drag-over{border-color:var(--primary-color);background-color:#6366f10d;transform:translateY(-2px);box-shadow:var(--shadow-lg)}.upload-content h3{margin:1rem 0 .5rem;font-size:1.25rem;color:var(--text-primary)}.upload-icon{font-size:3rem;margin-bottom:1rem}.upload-info{color:var(--text-secondary);font-size:.875rem;margin-top:1rem}.results-section{margin-bottom:3rem}.results-section h3{text-align:center;font-size:1.5rem;margin-bottom:2rem;color:var(--text-primary)}.results-container{display:grid;gap:1.5rem;max-width:800px;margin:0 auto}.result-item{background:var(--surface-color);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-md);transition:transform .2s ease,box-shadow .2s ease}.result-item:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}.result-image{width:100%;max-height:300px;object-fit:cover}.result-info{padding:1.5rem}.result-filename{font-weight:600;margin-bottom:1rem;color:var(--text-primary)}.color-palette{display:flex;gap:.5rem;margin-bottom:1rem;flex-wrap:wrap}.color-item{display:flex;flex-direction:column;align-items:center;min-width:70px}.color-swatch{width:50px;height:50px;border-radius:var(--radius-md);border:2px solid white;box-shadow:var(--shadow-sm);cursor:pointer;transition:transform .2s ease}.color-swatch:hover{transform:scale(1.1)}.color-info{margin-top:.5rem;text-align:center}.color-hex{font-family:Monaco,Menlo,monospace;font-size:.75rem;font-weight:600;color:var(--text-primary)}.color-percentage{font-size:.7rem;color:var(--text-secondary)}.loading{text-align:center;padding:3rem}.spinner{width:40px;height:40px;border:3px solid var(--border-color);border-top:3px solid var(--primary-color);border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 1rem}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.error-message{background-color:#fef2f2;border:1px solid #fecaca;border-radius:var(--radius-md);padding:1rem;margin:1rem auto;max-width:600px;display:flex;justify-content:space-between;align-items:center}.error-message p{margin:0;color:var(--error-color);font-weight:500}.coming-soon{text-align:center;padding:4rem 2rem;color:var(--text-secondary);font-size:1.25rem}.ai-badge{display:inline-flex;align-items:center;justify-content:center;padding:2px 6px;margin-left:8px;font-size:10px;font-weight:700;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-radius:4px;position:relative;overflow:hidden}.ai-badge:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.4),transparent);animation:shimmer 3s infinite}@keyframes shimmer{0%{left:-100%}50%,to{left:100%}}.sidebar.collapsed .ai-badge{display:none}.extract-split-container{display:grid;grid-template-columns:1fr 1fr;gap:2rem;max-width:1400px;margin:0 auto;padding:2rem}.extract-left-panel,.extract-right-panel{background:var(--surface-color);border-radius:var(--radius-lg);padding:2rem;box-shadow:var(--shadow-md);min-height:500px;display:flex;flex-direction:column;align-items:center;justify-content:center}.extract-left-panel .upload-area{width:100%;border:3px dashed var(--border-color);border-radius:var(--radius-lg);padding:3rem 2rem;text-align:center;transition:all .3s ease;cursor:pointer;background-color:var(--surface-color)}.image-preview{width:100%;display:flex;flex-direction:column;align-items:center;gap:1rem}.preview-image{width:100%;max-height:400px;object-fit:contain;border-radius:var(--radius-md);box-shadow:var(--shadow-md)}.change-image-btn{margin-top:1rem}.extracted-colors{width:100%;text-align:center}.extracted-colors h3{font-size:1.5rem;margin-bottom:1.5rem;color:var(--text-primary)}.color-palette-display{display:grid;grid-template-columns:repeat(5,1fr);gap:1rem;margin-bottom:2rem}.extract-color-item{display:flex;flex-direction:column;align-items:center;gap:.5rem}.extract-color-swatch{width:70px;height:70px;border-radius:var(--radius-md);box-shadow:var(--shadow-md);cursor:pointer;transition:transform .2s ease}.extract-color-swatch:hover{transform:scale(1.1)}.extract-color-hex{font-family:Monaco,Menlo,monospace;font-size:.75rem;font-weight:600;color:var(--text-primary)}.extract-color-percentage{font-size:.7rem;color:var(--text-secondary)}.create-palette-btn{width:100%;margin-top:1rem;padding:1rem;font-size:1rem}.extract-placeholder{display:flex;flex-direction:column;align-items:center;gap:1rem;color:var(--text-tertiary)}.extract-placeholder svg{animation:pulse 2s infinite}@keyframes pulse{0%,to{transform:scale(1);opacity:.3}50%{transform:scale(1.05);opacity:.5}}.palette-editor-split{width:100%;padding:2rem}.editor-split-container{display:grid;grid-template-columns:1fr 1fr;gap:2rem;max-width:1400px;margin:0 auto}.editor-left-panel,.editor-right-panel{background:var(--surface-color);border-radius:var(--radius-lg);padding:2rem;box-shadow:var(--shadow-md)}.editor-left-panel h3,.editor-right-panel h3{font-size:1.5rem;margin-bottom:1.5rem;color:var(--text-primary)}.color-picker-area{margin-bottom:2rem}#colorCanvas{width:100%;height:300px;border-radius:var(--radius-md);cursor:crosshair;box-shadow:var(--shadow-md)}.color-preview{display:flex;align-items:center;gap:1rem;margin-top:1rem;padding:1rem;background:var(--background-color);border-radius:var(--radius-md)}.preview-color-box{width:60px;height:60px;border-radius:var(--radius-md);border:2px solid var(--border-color);box-shadow:var(--shadow-sm)}.preview-hex{font-family:Monaco,Menlo,monospace;font-size:1.125rem;font-weight:600;color:var(--text-primary)}.quick-colors{margin-bottom:2rem}.quick-colors h4{font-size:1rem;margin-bottom:1rem;color:var(--text-secondary)}.quick-color-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:.75rem}.quick-color{width:100%;aspect-ratio:1;border-radius:var(--radius-md);cursor:pointer;transition:transform .2s ease,box-shadow .2s ease;box-shadow:var(--shadow-sm)}.quick-color:hover{transform:scale(1.1);box-shadow:var(--shadow-md)}.color-sliders{margin-bottom:2rem}.slider-group{display:flex;align-items:center;gap:1rem;margin-bottom:1rem}.slider-group label{width:80px;font-size:.875rem;color:var(--text-secondary)}.color-slider{flex:1;height:6px;border-radius:3px;outline:none;-webkit-appearance:none;appearance:none;background:var(--border-color)}.color-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:20px;height:20px;border-radius:50%;background:var(--primary-color);cursor:pointer;box-shadow:var(--shadow-sm)}.color-slider::-moz-range-thumb{width:20px;height:20px;border-radius:50%;background:var(--primary-color);cursor:pointer;box-shadow:var(--shadow-sm)}#hueSlider{background:linear-gradient(to right,red,#ff0,#0f0,#0ff,#00f,#f0f,red)}.slider-group span{width:50px;text-align:right;font-size:.875rem;color:var(--text-secondary)}.add-selected-color{width:100%;padding:1rem;font-size:1rem}.palette-display{margin-bottom:2rem}.palette-colors{display:grid;grid-template-columns:repeat(5,1fr);gap:1rem;margin-bottom:1rem;min-height:200px;padding:1rem;background:var(--background-color);border-radius:var(--radius-md);border:2px dashed var(--border-color)}.palette-hint{text-align:center;color:var(--text-secondary);font-size:.875rem;margin-top:1rem}.palette-color-item{position:relative;display:flex;flex-direction:column;align-items:center}.palette-color{width:80px;height:80px;border-radius:var(--radius-md);box-shadow:var(--shadow-md);cursor:pointer;transition:transform .2s ease;position:relative}.palette-color:hover{transform:scale(1.05)}.palette-color-hex{margin-top:.5rem;font-family:Monaco,Menlo,monospace;font-size:.75rem;color:var(--text-secondary)}.remove-color{position:absolute;top:-8px;right:-8px;width:24px;height:24px;border-radius:50%;background:var(--error-color);color:#fff;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:1rem;opacity:0;transition:opacity .2s ease}.palette-color-item:hover .remove-color{opacity:1}.add-color-btn{margin-top:1rem}.palette-info{margin-bottom:2rem}.form-group{margin-bottom:1.5rem}.form-group label{display:block;margin-bottom:.5rem;font-weight:500;color:var(--text-primary)}.form-input{width:100%;padding:.75rem;border:1px solid var(--border-color);border-radius:var(--radius-md);font-size:1rem;background:var(--background-color);transition:border-color .2s ease}.form-input:focus{outline:none;border-color:var(--primary-color)}textarea.form-input{resize:vertical;font-family:inherit}.palette-actions{display:flex;gap:1rem;justify-content:flex-end}.tags-container{border:1px solid var(--border-color);border-radius:var(--radius-md);padding:.5rem;background:var(--background-color);min-height:50px;display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;transition:border-color .2s ease}.tags-container:focus-within{border-color:var(--primary-color)}.tags-list{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}.tag-badge{display:inline-flex;align-items:center;gap:.25rem;padding:.25rem .75rem;background:var(--primary-color);color:#fff;border-radius:20px;font-size:.875rem;font-weight:500;animation:tagAppear .2s ease}@keyframes tagAppear{0%{transform:scale(.8);opacity:0}to{transform:scale(1);opacity:1}}.tag-remove{display:flex;align-items:center;justify-content:center;width:16px;height:16px;background:#ffffff4d;border-radius:50%;cursor:pointer;transition:background .2s ease;font-size:12px;line-height:1}.tag-remove:hover{background:#ffffff80}.tags-input{flex:1;min-width:150px;border:none;outline:none;background:transparent;font-size:1rem;padding:.25rem}.tags-input::placeholder{color:var(--text-tertiary);font-size:.875rem}.modal{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:2000}.modal.hidden{display:none}.modal-content{background:var(--surface-color);border-radius:var(--radius-lg);padding:0;width:90%;max-width:400px;box-shadow:var(--shadow-lg)}.modal-header{padding:1.5rem;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;align-items:center}.modal-header h3{margin:0;font-size:1.25rem}.modal-close{background:none;border:none;font-size:1.5rem;cursor:pointer;color:var(--text-secondary);width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);transition:background .2s ease}.modal-close:hover{background:var(--surface-hover)}.modal-body{padding:1.5rem;display:flex;flex-direction:column;gap:1rem;align-items:center}.color-picker{width:200px;height:200px;border:none;border-radius:var(--radius-md);cursor:pointer}#hexInput{text-align:center;font-family:Monaco,Menlo,monospace;text-transform:uppercase}.modal-footer{padding:1.5rem;border-top:1px solid var(--border-color);display:flex;gap:1rem;justify-content:flex-end}.create-palette-from-result{margin-top:1rem;width:100%}.gallery-filters{max-width:1200px;margin:0 auto 3rem;display:flex;flex-direction:column;gap:2rem;padding:2rem;background:linear-gradient(135deg,var(--surface-color) 0%,rgba(99,102,241,.02) 100%);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);border:1px solid var(--border-color)}.search-container{display:flex;gap:1rem;align-items:center}.search-input{flex:1;padding:1rem 1.5rem;border:2px solid var(--border-color);border-radius:var(--radius-lg);font-size:1rem;background:var(--surface-color);color:var(--text-primary);transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:var(--shadow-sm)}.search-input:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #6366f11a;transform:translateY(-1px)}.search-input::placeholder{color:var(--text-tertiary)}.filter-tabs{display:flex;gap:.25rem;justify-content:center;background:var(--surface-color);padding:.5rem;border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);border:1px solid var(--border-color)}.filter-tab{padding:.875rem 2rem;border:none;background:transparent;color:var(--text-secondary);border-radius:var(--radius-md);cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);font-weight:600;font-size:.875rem;letter-spacing:.025em;position:relative;min-width:80px}.filter-tab:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,var(--primary-color),var(--primary-dark));border-radius:var(--radius-md);opacity:0;transition:opacity .3s ease;z-index:-1}.filter-tab:hover{color:var(--text-primary);transform:translateY(-1px)}.filter-tab.active{color:#fff;transform:translateY(-1px)}.filter-tab.active:before{opacity:1}.gallery-section{max-width:1200px;margin:0 auto}.gallery-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.5rem;margin-bottom:3rem;padding:0 1rem}@media (min-width: 640px){.gallery-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));padding:0}}@media (min-width: 768px){.gallery-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:2rem}}@media (min-width: 1024px){.gallery-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}}.palette-card{background:var(--surface-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);border:1px solid var(--border-color);overflow:hidden;transition:all .3s cubic-bezier(.4,0,.2,1);cursor:pointer;position:relative}.palette-card:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,transparent 0%,rgba(99,102,241,.05) 100%);opacity:0;transition:opacity .3s ease;pointer-events:none}.palette-card:hover{transform:translateY(-8px);box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;border-color:var(--primary-color)}.palette-card:hover:before{opacity:1}.palette-card-colors{height:120px;display:flex}.palette-card-color{flex:1;transition:flex .2s ease}.palette-card-color:hover{flex:2}.palette-card-info{padding:1.5rem}.palette-card-title{font-size:1.25rem;font-weight:600;margin-bottom:.5rem;color:var(--text-primary)}.palette-card-description{color:var(--text-secondary);font-size:.875rem;margin-bottom:1rem;line-height:1.4}.palette-card-tags{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem}.palette-tag{padding:.25rem .5rem;background:var(--surface-hover);color:var(--text-secondary);border-radius:var(--radius-sm);font-size:.75rem;font-weight:500}.palette-card-meta{display:flex;align-items:center;justify-content:space-between;font-size:.875rem;color:var(--text-secondary)}.palette-card-user{display:flex;align-items:center;gap:.5rem}.palette-card-avatar{width:24px;height:24px;border-radius:50%;object-fit:cover}.palette-card-date{font-size:.75rem}.palette-card-stats{display:flex;align-items:center;justify-content:space-between;margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border-color);position:relative;z-index:1}.palette-stat{display:flex;align-items:center;gap:.5rem;font-size:.875rem;color:var(--text-secondary);transition:all .3s ease;padding:.375rem .75rem;border-radius:var(--radius-sm);background:#6366f10d;font-weight:500}.palette-stat svg{opacity:.8;transition:opacity .3s ease}.palette-stat:hover svg{opacity:1}.like-stat:hover{background:#ec48991a;color:var(--secondary-color)}.like-stat{cursor:pointer}.like-stat:hover{color:var(--accent-color)}.like-stat:hover svg{opacity:1}.like-stat svg[fill=currentColor]{color:var(--accent-color);opacity:1}.pagination{display:flex;align-items:center;justify-content:center;gap:2rem;margin:3rem 0}.page-info{color:var(--text-secondary);font-size:.875rem}.empty-state{text-align:center;padding:4rem 2rem;color:var(--text-secondary)}.empty-state h3{font-size:1.5rem;margin:1rem 0 .5rem;color:var(--text-primary)}.empty-state p{margin-bottom:2rem;font-size:1rem}@media (max-width: 768px){.sidebar{width:var(--sidebar-collapsed-width);min-width:var(--sidebar-collapsed-width)}.extract-split-container{grid-template-columns:1fr;gap:1rem;padding:1rem}.extract-left-panel,.extract-right-panel{padding:1rem}.color-palette-display{grid-template-columns:repeat(3,1fr)}.editor-split-container{grid-template-columns:1fr;gap:1rem}.editor-left-panel,.editor-right-panel{padding:1rem}#colorCanvas{height:200px}.quick-color-grid{grid-template-columns:repeat(4,1fr)}.palette-colors{grid-template-columns:repeat(3,1fr)}.sidebar .brand-text,.sidebar .nav-text,.sidebar .btn-text,.sidebar .user-details{opacity:0;pointer-events:none}.main-content{margin-left:var(--sidebar-collapsed-width)}.page-content{padding:1rem}.hero-title{font-size:2rem}.hero-subtitle{font-size:1rem}.upload-area{padding:2rem 1rem}.color-palette{justify-content:center}.gallery-filters{padding:0 1rem;gap:1rem}.search-container{flex-direction:column}.filter-tabs{justify-content:flex-start;overflow-x:auto;padding-bottom:.5rem}.gallery-grid{grid-template-columns:1fr;gap:1rem;padding:0 1rem}.pagination{flex-direction:column;gap:1rem}}.saved-stats{margin-bottom:2rem}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:1.5rem;margin-bottom:1rem}.stat-item{text-align:center;padding:1.5rem;background:var(--surface-color);border-radius:var(--border-radius);box-shadow:var(--shadow-sm)}.stat-number{font-size:2.5rem;font-weight:700;color:var(--primary-color);margin-bottom:.5rem}.stat-label{font-size:.875rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em}.saved-actions{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;flex-wrap:wrap;gap:1rem}.saved-search{display:flex;gap:.5rem;max-width:300px;width:100%}.saved-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:2rem;margin-bottom:2rem}.saved-palette-card{background:var(--surface-color);border-radius:var(--border-radius);box-shadow:var(--shadow-sm);overflow:hidden;transition:all .2s ease;cursor:pointer}.saved-palette-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}.saved-palette-actions{display:flex;justify-content:space-between;align-items:center;margin:1rem 0;padding-top:1rem;border-top:1px solid var(--border-color)}.privacy-status{padding:.25rem .75rem;border-radius:1rem;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.privacy-status.public{background-color:#22c55e1a;color:#22c55e}.privacy-status.private{background-color:#ef44441a;color:#ef4444}.action-buttons{display:flex;gap:.5rem}.btn-small{padding:.375rem .75rem;font-size:.75rem;min-height:auto}.btn-small svg{width:12px;height:12px}.btn-danger{color:#ef4444}.btn-danger:hover{background-color:#ef44441a;color:#ef4444}@media (max-width: 768px){.stats-grid{grid-template-columns:repeat(3,1fr);gap:1rem}.stat-item{padding:1rem}.stat-number{font-size:1.75rem}.saved-actions{flex-direction:column;align-items:stretch}.saved-search{max-width:none}.saved-grid{grid-template-columns:1fr;gap:1rem}.saved-palette-actions{flex-direction:column;align-items:stretch;gap:.75rem}.action-buttons{justify-content:center}}@media (max-width: 480px){.sidebar{transform:translate(-100%)}.sidebar.mobile-open{transform:translate(0)}.main-content{margin-left:0}.stats-grid{grid-template-columns:1fr}}.login-required-overlay{position:absolute;inset:0;background:#fffffff2;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:2rem}.login-required-overlay.hidden{display:none}.login-required-content{text-align:center;max-width:480px;background:var(--surface-color);padding:3rem 2rem;border-radius:1rem;box-shadow:var(--shadow-lg);border:1px solid var(--border-color)}.login-icon{font-size:4rem;margin-bottom:1.5rem;display:block}.login-required-content h2{color:var(--text-primary);font-size:2rem;font-weight:700;margin-bottom:1rem}.login-required-content p{color:var(--text-secondary);font-size:1.1rem;line-height:1.6;margin-bottom:2rem}.login-benefits{display:flex;flex-direction:column;gap:1rem;margin-bottom:2rem;text-align:left}.benefit-item{display:flex;align-items:center;gap:1rem;padding:1rem;background:#6366f10d;border-radius:.5rem;border-left:3px solid var(--primary-color)}.benefit-icon{font-size:1.5rem;flex-shrink:0}.benefit-item span:last-child{color:var(--text-primary);font-weight:500}.login-cta{font-size:1.1rem;padding:1rem 2rem;min-height:auto;font-weight:600;gap:.5rem}@media (max-width: 768px){.login-required-overlay{padding:1rem}.login-required-content{padding:2rem 1.5rem}.login-required-content h2{font-size:1.5rem}.login-required-content p{font-size:1rem}.login-benefits{gap:.75rem}.benefit-item{padding:.75rem}.benefit-icon{font-size:1.25rem}.login-cta{font-size:1rem;padding:.875rem 1.5rem}}.privacy-settings{margin:1.5rem 0}.privacy-settings>label{color:var(--text-primary);font-weight:500;margin-bottom:.5rem;display:block}.privacy-settings,.privacy-settings *,.privacy-settings h3,.privacy-settings label,.privacy-settings .privacy-title,.privacy-settings .privacy-description,.privacy-settings .privacy-info,.privacy-settings .privacy-option,.privacy-settings .privacy-label,.privacy-settings .privacy-icon,.privacy-upgrade-hint,.form-group.privacy-settings>label{color:var(--text-primary)}.privacy-settings .privacy-title{color:var(--text-primary)}.privacy-settings .privacy-description{color:var(--text-secondary)}.privacy-toggle-container{margin-top:.5rem}.privacy-options{display:flex;gap:1rem;margin-bottom:1rem}.privacy-option{flex:1;position:relative}.privacy-option input[type=radio]{position:absolute;opacity:0;pointer-events:none}.privacy-option .privacy-label{display:flex;align-items:center;gap:.75rem;padding:1rem;border:2px solid rgba(255,255,255,.2);border-radius:8px;cursor:pointer;transition:all .2s ease;background:#ffffff0d}.privacy-option .privacy-label:hover{border-color:#ffffff4d;background:#ffffff14}.privacy-option input[type=radio]:checked+.privacy-label{border-color:#007acc;background:#007acc26}.privacy-option input[type=radio]:disabled+.privacy-label{opacity:.6;cursor:not-allowed;border-color:#ffffff1a;background:#ffffff05}.privacy-icon{font-size:1.25rem;width:24px;text-align:center;color:var(--text-primary)}.privacy-info{flex:1}.privacy-title{font-weight:600;color:var(--text-primary);display:block;margin-bottom:.25rem;font-size:.9rem}.privacy-description{font-size:.8rem;color:var(--text-secondary);line-height:1.3}.pro-only-badge{background:linear-gradient(135deg,#007acc,#09f);color:#fff;font-size:.75rem;font-weight:600;padding:.25rem .5rem;border-radius:4px;text-transform:uppercase;letter-spacing:.05em}.privacy-upgrade-hint{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;background:#ffc1071a;border:1px solid rgba(255,193,7,.3);border-radius:6px;color:#ffc107;font-size:.875rem;margin-top:.5rem}.privacy-upgrade-hint.hidden{display:none}.upgrade-hint-btn{background:#ffc107;color:#000;border:none;padding:.375rem .75rem;border-radius:4px;font-size:.75rem;font-weight:500;cursor:pointer;transition:background-color .2s ease}.upgrade-hint-btn:hover{background:#ffca2c}@media (max-width: 768px){.privacy-options{flex-direction:column;gap:.75rem}.privacy-option .privacy-label{padding:.875rem}.privacy-upgrade-hint{flex-direction:column;align-items:stretch;gap:.5rem}.upgrade-hint-btn{align-self:center;width:auto}}.pricing-section{padding:2rem 0;color:var(--text-primary);background:var(--background-color)}.pricing-section,.pricing-section *,.pricing-section h1,.pricing-section h2,.pricing-section h3,.pricing-section h4,.pricing-section p,.pricing-section div,.pricing-section span:not(.price):not(.feature-icon),.pricing-section ul,.pricing-section li,.pricing-section .testimonial-content,.pricing-section .testimonial-author,.pricing-section .faq-question,.pricing-section .faq-answer{color:var(--text-primary)}.pricing-section .price{color:#007acc!important}.pricing-section .feature-icon{color:#00d4aa!important}.pricing-section button{color:#fff!important}.pricing-section .period{color:var(--text-secondary)}.pricing-section .faq-question:after{color:#007acc!important}.pricing-header{text-align:center;margin-bottom:3rem}.pricing-header h2{font-size:2.5rem;font-weight:700;color:var(--text-primary);margin-bottom:1rem}.pricing-header p{font-size:1.25rem;color:var(--text-secondary);margin-bottom:0}.account-profile,.account-subscription,.account-statistics{margin-bottom:3rem}.profile-card{background:#ffffff0d;border-radius:12px;padding:2rem;border:1px solid rgba(255,255,255,.1)}.profile-header{display:flex;align-items:center;gap:2rem}.profile-avatar{width:80px;height:80px;border-radius:50%;border:3px solid var(--primary-color)}.profile-info{flex:1}.profile-info h3{margin:0 0 .5rem;font-size:1.5rem}.profile-info p{margin:0 0 1rem;color:#ffffffb3}.plan-badge{padding:.25rem .75rem;border-radius:20px;font-size:.875rem;font-weight:600}.plan-badge.free{background:#ffffff1a;color:#ffffffe6}.plan-badge.pro{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.subscription-card{background:#ffffff0d;border-radius:12px;padding:2rem;border:1px solid rgba(255,255,255,.1);margin-bottom:2rem}.subscription-card.pro-card{border:2px solid var(--primary-color);background:linear-gradient(135deg,#667eea1a,#764ba21a)}.subscription-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.subscription-header h3{margin:0;font-size:1.5rem}.status-badge{padding:.25rem .75rem;border-radius:20px;font-size:.875rem;font-weight:600}.status-badge.active{background:#4caf5033;color:#4caf50}.status-badge.pro{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.usage-overview h4{margin-bottom:1.5rem;color:#ffffffe6}.usage-metric{margin-bottom:2rem}.metric-header{display:flex;justify-content:space-between;margin-bottom:.5rem;font-size:.9rem}.progress-bar{height:8px;background:#ffffff1a;border-radius:4px;overflow:hidden;margin-bottom:.5rem}.progress-fill{height:100%;background:linear-gradient(90deg,var(--primary-color),var(--secondary-color));border-radius:4px;transition:width .3s ease}.progress-fill.warning{background:linear-gradient(90deg,#ff9800,#ff5722)}.metric-footer{font-size:.8rem;color:#fff9}.reset-time{color:var(--primary-color)}.pro-benefits{margin:2rem 0}.benefit-item{display:flex;align-items:flex-start;gap:1rem;margin-bottom:1.5rem}.benefit-icon{font-size:1.5rem;width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:#667eea33;border-radius:8px}.benefit-item strong{display:block;margin-bottom:.25rem}.benefit-item p{margin:0;color:#ffffffb3;font-size:.9rem}.billing-info{background:#0003;border-radius:8px;padding:1rem;margin:2rem 0}.billing-row{display:flex;justify-content:space-between;padding:.5rem 0;border-bottom:1px solid rgba(255,255,255,.05)}.billing-row:last-child{border-bottom:none}.upgrade-prompt{background:linear-gradient(135deg,#667eea1a,#764ba21a);border-radius:8px;padding:1.5rem;text-align:center;margin-top:2rem}.upgrade-prompt p{margin-bottom:1rem}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem;margin-top:2rem}.stat-card{background:#ffffff0d;border-radius:12px;padding:1.5rem;border:1px solid rgba(255,255,255,.1);display:flex;align-items:center;gap:1rem}.stat-icon{font-size:2rem;width:50px;height:50px;display:flex;align-items:center;justify-content:center;background:#667eea1a;border-radius:10px}.stat-content{flex:1}.stat-number{font-size:1.5rem;font-weight:700;color:var(--primary-color);margin-bottom:.25rem}.stat-label{font-size:.9rem;color:#ffffffb3}.billing-toggle-container{display:flex;justify-content:center;margin-bottom:2rem}.billing-toggle{display:flex;align-items:center;gap:1rem;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:50px;padding:.5rem 1.5rem;position:relative}.toggle-label{font-weight:500;font-size:.95rem;color:var(--text-secondary);transition:color .3s ease;cursor:pointer;-webkit-user-select:none;user-select:none}.toggle-label.active{color:#007acc;font-weight:600}.toggle-switch{width:48px;height:24px;background:#ffffff1a;border-radius:12px;position:relative;cursor:pointer;transition:background-color .3s ease}.toggle-switch.active{background:#007acc}.toggle-slider{width:20px;height:20px;background:#fff;border-radius:10px;position:absolute;top:2px;left:2px;transition:transform .3s ease;box-shadow:0 2px 4px #0003}.toggle-switch.active .toggle-slider{transform:translate(24px)}.savings-badge{background:linear-gradient(135deg,#00d4aa,#007acc);color:#fff;font-size:.8rem;font-weight:600;padding:.3rem .8rem;border-radius:12px;margin-left:.5rem;animation:pulse 2s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.8}}.pricing-cards{display:flex!important;flex-direction:row!important;flex-wrap:nowrap!important;gap:2rem!important;max-width:1000px;margin:0 auto 4rem!important;justify-content:center!important;align-items:stretch!important;width:100%!important}.pricing-card{background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:2rem;text-align:center;position:relative;transition:all .3s ease;flex:1 1 450px;max-width:450px;min-width:350px;color:var(--text-primary);display:flex;flex-direction:column}.pricing-card .plan-header{margin-bottom:1.5rem}.pricing-card:hover{transform:translateY(-4px);border-color:#007acc4d;box-shadow:0 8px 32px #007acc1a}.pricing-card.popular{border-color:#007acc;box-shadow:0 4px 24px #007acc33}.popular-badge{position:absolute;top:-12px;left:50%;transform:translate(-50%);background:linear-gradient(135deg,#007acc,#09f);color:#fff;padding:.5rem 1.5rem;border-radius:20px;font-size:.875rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.plan-name{font-size:1.5rem;font-weight:700;color:var(--text-primary);margin-bottom:.5rem}.plan-price{margin-bottom:1rem}.plan-price .price{font-size:3rem;font-weight:800;color:#007acc!important;line-height:1}.plan-price .period{color:var(--text-secondary);font-size:.875rem;display:block;margin-top:.25rem}.plan-features{list-style:none;padding:0;margin:0 0 2rem}.plan-features{color:var(--text-primary);text-align:left;margin-bottom:2rem}.plan-features h4{color:var(--text-primary);font-size:1rem;margin-bottom:1rem;font-weight:600}.feature-list{list-style:none;padding:0;margin:0}.feature-item{padding:.5rem 0;color:var(--text-secondary);display:flex;align-items:center;gap:.75rem}.feature-icon{color:#00d4aa!important;font-weight:700;font-size:1rem;min-width:1.2rem}.feature-item span:not(.feature-icon){color:var(--text-secondary)}.plan-button,.free-button,#pricingUpgradeBtn{width:100%;padding:1rem 2rem;background:linear-gradient(135deg,#007acc,#09f);color:#fff!important;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;text-decoration:none;display:block;text-align:center;margin-top:auto}.plan-button:hover,.free-button:hover,#pricingUpgradeBtn:hover{transform:translateY(-2px);box-shadow:0 4px 16px #007acc4d}.plan-button:disabled,.free-button:disabled{background:var(--surface-hover);color:var(--text-tertiary);cursor:not-allowed;transform:none;box-shadow:none}.recommended-badge{position:absolute;top:-12px;left:50%;transform:translate(-50%);background:linear-gradient(135deg,#007acc,#09f);color:#fff!important;padding:.5rem 1.5rem;border-radius:20px;font-size:.875rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.pricing-faq{margin:4rem 0}.pricing-faq h3{font-size:2rem;font-weight:700;color:var(--text-primary);text-align:center;margin-bottom:2rem}.faq-item{background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:12px;margin-bottom:1rem;overflow:hidden}.faq-question{padding:1.5rem;color:var(--text-primary);font-weight:600;font-size:1.1rem;cursor:pointer;display:flex;justify-content:space-between;align-items:center;transition:background-color .3s ease}.faq-question:hover{background:#ffffff14}.faq-question:after{content:"+";font-size:1.5rem;color:#007acc;transition:transform .3s ease}.faq-question.active:after{transform:rotate(45deg)}.faq-answer{padding:0 1.5rem;color:var(--text-secondary);line-height:1.6;max-height:0;overflow:hidden;transition:all .3s ease}.faq-answer.active{max-height:200px;padding:0 1.5rem 1.5rem}.pricing-testimonials{margin:4rem 0}.pricing-testimonials h3{font-size:2rem;font-weight:700;color:var(--text-primary);text-align:center;margin-bottom:2rem}.testimonials-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem}.testimonial-card{background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:2rem;text-align:center}.testimonial-content{color:var(--text-secondary);font-style:italic;line-height:1.6;margin-bottom:1.5rem;font-size:1.1rem}.testimonial-content p{color:var(--text-secondary)}.testimonial-author{color:var(--text-primary);font-weight:600}.testimonial-author strong{color:var(--text-primary)}.testimonial-author span{color:var(--text-secondary);font-size:.875rem;margin-top:.25rem;display:block}@media (max-width: 768px){.pricing-cards{flex-direction:column;gap:1.5rem;padding:0 1rem}.pricing-header h2{font-size:2rem}.pricing-header p{font-size:1rem}.pricing-card{padding:1.5rem}.plan-price{font-size:2.5rem}.testimonials-grid{grid-template-columns:1fr;gap:1.5rem}.testimonial-card{padding:1.5rem}}.account-layout{display:grid;grid-template-columns:1fr 1fr;gap:2rem;max-width:1200px;margin:0 auto;padding:0 1rem}.account-left-panel,.account-right-panel{display:flex;flex-direction:column;gap:1.5rem}.profile-section,.status-section,.stats-section,.activity-section{background:var(--surface-color);border:1px solid var(--border-color);border-radius:12px;padding:1.5rem}.profile-section h2,.stats-section h2{margin:0 0 1rem;font-size:1.25rem;font-weight:600;color:var(--text-primary)}.status-section h3,.activity-section h3{margin:0 0 1rem;font-size:1.1rem;font-weight:600;color:var(--text-primary)}.profile-card{background:var(--gray-50);border-radius:8px;padding:1.5rem}.profile-header{display:flex;align-items:center;gap:1rem}.profile-avatar{width:80px;height:80px;border-radius:50%;object-fit:cover;border:3px solid var(--border-color)}.profile-info h3{margin:0 0 .25rem;font-size:1.5rem;font-weight:600;color:var(--text-primary)}.profile-info p{margin:0 0 .5rem;color:var(--text-secondary);font-size:.95rem}.profile-badges{display:flex;gap:.5rem}.admin-badge{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:.25rem .75rem;border-radius:20px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.status-card{background:var(--gray-50);border-radius:8px;padding:1rem}.status-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem 0;border-bottom:1px solid var(--border-color)}.status-item:last-child{border-bottom:none}.status-label{color:var(--text-secondary);font-weight:500}.status-value{color:var(--text-primary);font-weight:600}.stats-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.stat-card{background:var(--gray-50);border-radius:8px;padding:1.25rem;text-align:center;transition:all .2s ease}.stat-card:hover{background:var(--surface-hover);transform:translateY(-2px);box-shadow:var(--shadow-md)}.stat-content{display:flex;flex-direction:column;gap:.5rem}.stat-number{font-size:2rem;font-weight:700;color:var(--primary-color);line-height:1}.stat-label{font-size:.875rem;color:var(--text-secondary);font-weight:500}.activity-list{display:flex;flex-direction:column;gap:.75rem}.activity-item{background:var(--gray-50);border-radius:8px;padding:1rem}.activity-content{display:flex;justify-content:space-between;align-items:center}.activity-text{color:var(--text-primary);font-weight:500}.activity-time{color:var(--text-secondary);font-size:.875rem}@media (max-width: 768px){.account-layout{grid-template-columns:1fr;gap:1.5rem;padding:0 .5rem}.profile-header{flex-direction:column;text-align:center;gap:1rem}.stats-grid{grid-template-columns:1fr}.profile-section,.status-section,.stats-section,.activity-section{padding:1rem}.profile-avatar{width:100px;height:100px}.profile-info h3{font-size:1.25rem}.stat-number{font-size:1.5rem}}.privacy-options{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1rem}.privacy-option{position:relative}.privacy-option input[type=radio]{position:absolute;opacity:0;width:0;height:0}.privacy-label{display:block;padding:1rem;border:2px solid #e5e7eb;border-radius:12px;cursor:pointer;transition:all .2s ease;background:#fff}.privacy-option input[type=radio]:checked+.privacy-label{border-color:#4f46e5;background:#f8faff;box-shadow:0 0 0 3px #4f46e51a}.privacy-label:hover{border-color:#d1d5db;background:#f9fafb}.privacy-option input[type=radio]:checked+.privacy-label:hover{border-color:#4f46e5;background:#f8faff}.privacy-content{display:flex;align-items:center;gap:.75rem}.privacy-icon{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:8px;background:#f3f4f6;transition:background-color .2s}.privacy-option input[type=radio]:checked+.privacy-label .privacy-icon{background:#eef2ff;color:#4f46e5}.privacy-icon svg{width:20px;height:20px;fill:currentColor;color:#6b7280}.privacy-option input[type=radio]:checked+.privacy-label .privacy-icon svg{color:#4f46e5}.privacy-info{flex:1;min-width:0}.privacy-title{font-weight:600;color:#1f2937;font-size:1rem;margin-bottom:.25rem}.privacy-description{font-size:.875rem;color:#6b7280;line-height:1.4}.privacy-note{font-size:.875rem;color:#6b7280;margin-top:.5rem;padding:.75rem;background:#f9fafb;border-radius:8px;border:1px solid #e5e7eb}.privacy-note svg{display:inline;width:16px;height:16px;margin-right:.5rem;vertical-align:middle;fill:currentColor}@media (max-width: 768px){.privacy-options{grid-template-columns:1fr}.privacy-label{padding:.75rem}.privacy-content{gap:.5rem}.privacy-icon{width:36px;height:36px}.privacy-icon svg{width:18px;height:18px}}
