.current-plan-status{margin-bottom:2rem}.plan-badge{display:inline-block;padding:.375rem 1rem;border-radius:50px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;background:var(--color-background);border:1px solid var(--color-border);position:relative;z-index:30;box-shadow:0 2px 4px rgba(0,0,0,.1)}.plan-badge.free{background:linear-gradient(135deg,#6b7280,#4b5563);color:white;border-color:#6b7280}.plan-badge.popular{background:linear-gradient(135deg,#2563eb,#1d4ed8);color:white;border-color:#2563eb}.plan-badge.starter{background:linear-gradient(135deg,#16a34a,#15803d);color:white;border-color:#16a34a}.plan-badge.pro{background:linear-gradient(135deg,#dc2626,#b91c1c);color:white;border-color:#dc2626}.plan-badge.mega{background:linear-gradient(135deg,#7c3aed,#6d28d9);color:white;border-color:#7c3aed}.plan-overview{display:grid;grid-template-columns:1fr 1fr;gap:2rem;align-items:center}.plan-details .plan-name{font-size:1.5rem;font-weight:700;color:var(--color-text-primary);margin-bottom:.5rem}.plan-details .plan-price{font-size:1.25rem;font-weight:600;color:var(--color-primary);margin-bottom:.5rem}.plan-details .plan-description{font-size:.875rem;color:var(--color-text-secondary)}.plan-usage{gap:1rem}.plan-usage,.usage-item{display:flex;flex-direction:column}.usage-item{gap:.5rem}.usage-label{font-size:.875rem;font-weight:500}.usage-label,.usage-value{color:var(--color-text-primary)}.usage-value{font-size:1.125rem;font-weight:600;display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.usage-bar{width:100%;height:8px;background:var(--color-border);overflow:hidden}.usage-bar,.usage-progress{border-radius:var(--radius-full)}.usage-progress{height:100%;background:var(--color-primary);transition:width .3s ease}.usage-percentage{font-size:.875rem;color:var(--color-text-secondary);font-weight:500;margin-top:.25rem}.plans-section,.section-header{margin-bottom:3rem}.section-header{text-align:center}.section-title{font-size:2rem;font-weight:700;color:var(--color-text-primary);margin-bottom:1rem}.section-description{font-size:1.125rem;color:var(--color-text-secondary);max-width:600px;margin:0 auto;text-align:center;line-height:1.6;padding:0;display:block;width:100%}.plans-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:1rem;margin-bottom:3rem;padding-top:1rem;width:100%;max-width:100%;overflow:hidden}.plan-card{background:var(--color-background);border:2px solid var(--color-border);border-radius:var(--radius-lg);padding:1.25rem;position:relative;transition:all .3s ease;overflow:visible}.plan-card:hover{border-color:var(--color-primary);box-shadow:var(--shadow-lg);transform:translateY(-4px)}.plan-card.popular{border-color:var(--color-primary);box-shadow:var(--shadow-md)}.plan-card.popular:hover{transform:translateY(-4px)}.plan-card.enterprise-card{background:linear-gradient(135deg,var(--color-background) 0,rgba(59,130,246,.02) 100%);border-color:rgba(59,130,246,.3)}.plan-card.enterprise-card:hover{border-color:var(--color-primary);background:linear-gradient(135deg,var(--color-background) 0,rgba(59,130,246,.05) 100%)}.plan-badge-wrapper{position:absolute;top:-14px;left:50%;transform:translateX(-50%);z-index:50}.plan-header{text-align:center;margin-bottom:1rem;border-bottom:1px solid var(--color-border);padding-bottom:1rem}.plan-header .plan-name{font-size:1.125rem;font-weight:700;color:var(--color-text-primary);margin-bottom:.5rem}.plan-price{margin-bottom:.25rem}.price-amount{font-size:2rem;font-weight:700;color:var(--color-text-primary)}.price-period{font-size:.875rem}.plan-subtitle,.price-period{color:var(--color-text-secondary);font-weight:500}.plan-subtitle{font-size:.75rem;line-height:1.4;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;margin-bottom:.5rem}.plan-features{margin-bottom:1rem}.feature-highlight{text-align:center;padding:.5rem;background:var(--color-surface);border-radius:var(--radius-md);margin-bottom:.75rem}.feature-value{display:inline;font-size:1rem;font-weight:700;color:var(--color-primary);margin-right:.25rem}.feature-label{display:inline;font-size:.625rem;color:var(--color-text-secondary);font-weight:500}.features-list{list-style:none;padding:0;margin:0}.features-list li{display:flex;align-items:center;gap:.5rem;padding:.375rem 0;font-size:.75rem;color:var(--color-text-primary);border-bottom:1px solid var(--color-border)}.features-list li:last-child{border-bottom:none}.features-list i{font-size:.75rem;width:16px;text-align:center}.features-list .fa-check{color:#22c55e}.features-list .fa-times{color:#ef4444}.plan-actions{text-align:center}.plan-btn{width:100%;padding:.875rem 1.5rem;border-radius:var(--radius-md);font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s ease;border:none}.plan-btn.upgrade{background:var(--color-primary);color:white}.plan-btn.upgrade:hover:not(:disabled){background:var(--color-primary-hover);transform:translateY(-1px)}.plan-btn:disabled{opacity:.6;cursor:not-allowed;transform:none!important}.plan-btn .fa-spinner{margin-right:.5rem}.plan-btn.current{background:var(--color-surface);color:var(--color-text-secondary);cursor:not-allowed;border:1px solid var(--color-border)}.plan-btn.enterprise{background:var(--color-primary);color:white;text-decoration:none;display:flex;align-items:center;justify-content:center}.plan-btn.enterprise:hover{background:var(--color-primary-hover);transform:translateY(-1px);text-decoration:none;color:white}.plan-btn.secondary{background:var(--color-surface);border:1px solid var(--color-border);display:flex;align-items:center;justify-content:center}.plan-btn.secondary,.plan-btn.secondary:hover{color:var(--color-text-primary);text-decoration:none}.plan-btn.secondary:hover{background:var(--color-hover-bg);border-color:var(--color-text-tertiary);transform:translateY(-1px)}.pricing-cta-section{margin-bottom:2rem}.pricing-cta-content{display:flex;align-items:center;justify-content:space-between;gap:2rem;padding:1rem}.cta-text h3{margin:0 0 .5rem;font-size:1.25rem;font-weight:600;color:var(--color-text-primary)}.cta-text p{margin:0;font-size:.875rem;color:var(--color-text-secondary);line-height:1.4}.pricing-cta-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;background:var(--color-primary);color:white;border:none;border-radius:var(--radius-md);font-size:.875rem;font-weight:500;text-decoration:none;cursor:pointer;transition:all .2s ease;white-space:nowrap}.pricing-cta-btn:hover{background:var(--color-primary-hover);transform:translateY(-1px);box-shadow:var(--shadow-md);color:white;text-decoration:none}.modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.5);display:flex;align-items:center;justify-content:center;z-index:10000;opacity:0;visibility:hidden;transition:all .3s ease}.modal-overlay.show{opacity:1;visibility:visible}.modal{background:var(--color-background);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);max-width:500px;width:90%;max-height:90%;overflow-y:auto;transform:scale(.9);transition:transform .3s ease}.modal-overlay.show .modal{transform:scale(1)}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.5rem;border-bottom:1px solid var(--color-border)}.modal-title{font-size:1.25rem;font-weight:700;color:var(--color-text-primary);margin:0}.modal-close{background:none;border:none;font-size:1.25rem;color:var(--color-text-secondary);cursor:pointer;padding:.25rem;border-radius:var(--radius-sm);transition:all .2s ease}.modal-close:hover{background:var(--color-surface);color:var(--color-text-primary)}.modal-content{padding:1.5rem}.modal-actions{display:flex;gap:1rem;justify-content:flex-end;padding:1.5rem;border-top:1px solid var(--color-border)}.upgrade-summary{display:flex;align-items:center;justify-content:space-between;margin-bottom:2rem;padding:1.5rem;background:var(--color-surface);border-radius:var(--radius-md)}.upgrade-from,.upgrade-to{text-align:center}.upgrade-from .label,.upgrade-to .label{display:block;font-size:.75rem;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.5rem}.upgrade-from .plan-name,.upgrade-to .plan-name{font-size:1.125rem;font-weight:600;color:var(--color-text-primary)}.upgrade-arrow{color:var(--color-primary);font-size:1.25rem}.billing-info{margin-bottom:1rem}.billing-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem 0;border-bottom:1px solid var(--color-border)}.billing-item:last-child{border-bottom:none}.billing-label{font-size:.875rem;color:var(--color-text-secondary)}.billing-value{font-size:.875rem;font-weight:600;color:var(--color-text-primary)}@media (max-width:768px){.plan-overview,.plans-grid{grid-template-columns:1fr;gap:1.5rem}.plan-card.popular{transform:none}.plan-card.popular:hover{transform:translateY(-4px)}.section-title{font-size:1.75rem}.section-description{font-size:1rem}.pricing-cta-content{align-items:stretch;text-align:center}.pricing-cta-content,.upgrade-summary{flex-direction:column;gap:1rem}.upgrade-arrow{transform:rotate(90deg)}.modal-actions{flex-direction:column-reverse}.btn-primary,.btn-secondary{width:100%;justify-content:center}}@media (max-width:640px){.price-amount{font-size:2.5rem}.plan-header .plan-name{font-size:1.25rem}.feature-value{font-size:1.75rem}.modal{width:95%}.modal-actions,.modal-content,.modal-header{padding:1rem}}.toast{position:fixed;top:2rem;right:2rem;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:1rem 1.5rem;box-shadow:var(--shadow-lg);display:flex;align-items:center;gap:.75rem;z-index:10000;transform:translateX(100%);opacity:0;transition:all .3s ease;max-width:400px}.toast.show{transform:translateX(0);opacity:1}.toast-success{border-left:4px solid #22c55e}.toast-success i{color:#22c55e}.toast-error{border-left:4px solid #ef4444}.toast-error i{color:#ef4444}.toast span{color:var(--color-text-primary);font-size:.875rem;font-weight:500}@media (max-width:640px){.toast{right:1rem;left:1rem;top:1rem;max-width:none}}.quick-actions-row{display:flex;gap:1rem;margin-bottom:2rem;justify-content:center}.btn-primary:disabled,.btn-secondary:disabled{opacity:.6;cursor:not-allowed}.btn-primary .fa-spinner,.btn-secondary .fa-spinner{margin-right:.5rem}@media (max-width:640px){.quick-actions-row{flex-direction:column;align-items:center}}.upgrade-success-content{position:relative;text-align:center;padding:2rem 0;overflow:hidden}.confetti-container{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:1}.confetti{position:absolute;width:10px;height:10px;animation:confetti-fall 3s ease-in-out infinite;animation-delay:var(--delay,0s);left:var(--x,50%);transform:rotate(var(--rotation,0deg))}.confetti-0{background:#ff6b6b}.confetti-1{background:#4ecdc4}.confetti-2{background:#45b7d1}.confetti-3{background:#96ceb4}.confetti-4{background:#feca57}.confetti-5{background:#ff9ff3}@keyframes confetti-fall{0%{transform:translateY(-100px) rotate(var(--rotation,0deg));opacity:1}to{transform:translateY(400px) rotate(calc(var(--rotation, 0deg) + 180deg));opacity:0}}.success-icon{font-size:4rem;color:#ffd700;margin-bottom:1rem;position:relative;z-index:2;animation:bounce .6s ease-in-out}@keyframes bounce{0%,20%,50%,80%,to{transform:translateY(0)}40%{transform:translateY(-20px)}60%{transform:translateY(-10px)}}.upgrade-success-content h4{font-size:1.5rem;font-weight:700;color:var(--color-text-primary);margin-bottom:1rem;position:relative;z-index:2}.upgrade-success-content p{font-size:1rem;color:var(--color-text-secondary);line-height:1.5;margin-bottom:2rem;position:relative;z-index:2}.cancel-actions,.success-actions{position:relative;z-index:2;display:flex;gap:1rem;justify-content:center;align-items:center}.success-actions .btn-primary,.success-actions .btn-secondary{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;border-radius:var(--radius-md);font-size:.875rem;font-weight:600;text-decoration:none;border:none;cursor:pointer;transition:all .2s ease}.success-actions .btn-primary{background:var(--color-primary);color:white}.success-actions .btn-primary:hover{background:var(--color-primary-hover);transform:translateY(-1px);box-shadow:var(--shadow-md)}.success-actions .btn-secondary{background:transparent;color:var(--color-text-secondary);border:1px solid var(--color-border)}.success-actions .btn-secondary:hover{background:var(--color-surface);color:var(--color-text-primary);transform:translateY(-1px);text-decoration:none}.cancel-content{position:relative;text-align:center;padding:2rem 0}.cancel-icon{font-size:4rem;color:#ef4444;margin-bottom:1rem;position:relative;z-index:2;animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.cancel-content h4{font-size:1.5rem;font-weight:700;color:var(--color-text-primary);margin-bottom:1rem;position:relative;z-index:2}.cancel-content p{font-size:1rem;color:var(--color-text-secondary);line-height:1.5;margin-bottom:2rem;position:relative;z-index:2}.cancel-actions .btn-primary,.cancel-actions .btn-secondary,.success-actions .btn-primary,.success-actions .btn-secondary{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;border-radius:var(--radius-md);font-size:.875rem;font-weight:600;text-decoration:none;border:none;cursor:pointer;transition:all .2s ease}.cancel-actions .btn-primary,.success-actions .btn-primary{background:var(--color-primary);color:white}.cancel-actions .btn-primary:hover,.success-actions .btn-primary:hover{background:var(--color-primary-hover);transform:translateY(-1px);box-shadow:var(--shadow-md)}.cancel-actions .btn-secondary,.success-actions .btn-secondary{background:transparent;color:var(--color-text-secondary);border:1px solid var(--color-border)}.cancel-actions .btn-secondary:hover,.success-actions .btn-secondary:hover{background:var(--color-surface);color:var(--color-text-primary);transform:translateY(-1px);text-decoration:none}@media (max-width:640px){.cancel-actions,.success-actions{flex-direction:column;gap:.75rem}.cancel-actions .btn-primary,.cancel-actions .btn-secondary,.success-actions .btn-primary,.success-actions .btn-secondary{width:100%;justify-content:center}}.plan-card.downgrade{border-color:var(--warning-color,#f59e0b);opacity:.9}.plan-card.downgrade .plan-header{border-bottom-color:var(--warning-color,#f59e0b)}.plan-btn.downgrade{background:var(--warning-color,#f59e0b);color:white;border:2px solid var(--warning-color,#f59e0b)}.plan-btn.downgrade:hover:not(:disabled){background:#d97706;border-color:#d97706;transform:translateY(-2px)}.plan-btn.downgrade:active{transform:translateY(0)}.plan-btn.downgrade i,.plan-btn.upgrade i{margin-right:.5rem}.error-state{justify-content:center;min-height:300px;padding:2rem;text-align:center}.error-content,.error-state{display:flex;align-items:center;width:100%}.error-content{max-width:400px;flex-direction:column;gap:1rem}.error-icon{width:80px;height:80px;border-radius:50%;background:rgba(239,68,68,.1);display:flex;align-items:center;justify-content:center;margin-bottom:.5rem}.error-icon i{font-size:2.5rem;color:#ef4444}.error-title{font-size:1.5rem;font-weight:600;color:var(--color-text-primary);margin:0;line-height:1.3}.error-message{font-size:1rem;color:var(--color-text-secondary);line-height:1.5;margin:0}.retry-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background:var(--color-primary);color:white;border:none;border-radius:var(--radius-md);font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease;margin-top:.5rem}.retry-btn:hover{background:var(--color-primary-hover);transform:translateY(-1px);box-shadow:var(--shadow-md)}.retry-btn:active{transform:translateY(0)}.retry-btn i{font-size:.75rem}.error-state.warning .error-icon{background:rgba(245,158,11,.1)}.error-state.warning .error-icon i{color:#f59e0b}.error-state.info .error-icon{background:rgba(59,130,246,.1)}.error-state.info .error-icon i{color:#3b82f6}.error-state.compact{min-height:200px;padding:1rem}.error-state.compact .error-icon{width:60px;height:60px}.error-state.compact .error-icon i{font-size:2rem}.error-state.compact .error-title{font-size:1.25rem}.error-state.compact .error-message{font-size:.875rem}.error-state.inline{min-height:auto;padding:1rem;text-align:left}.error-state.inline .error-content{flex-direction:row;gap:1rem;text-align:left}.error-state.inline .error-icon{width:40px;height:40px;margin-bottom:0;flex-shrink:0}.error-state.inline .error-icon i{font-size:1.25rem}.error-state.inline .error-title{font-size:1rem}.error-state.inline .error-message{font-size:.875rem}[data-theme=dark] .error-state{background:transparent}[data-theme=dark] .error-icon{background:rgba(239,68,68,.15)}[data-theme=dark] .error-state.warning .error-icon{background:rgba(245,158,11,.15)}[data-theme=dark] .error-state.info .error-icon{background:rgba(59,130,246,.15)}@media (max-width:640px){.error-state{padding:1.5rem 1rem;min-height:250px}.error-content{max-width:100%}.error-title{font-size:1.25rem}.error-message,.retry-btn{font-size:.875rem}.retry-btn{padding:.75rem 1.25rem}.error-state.inline .error-content{flex-direction:column;text-align:center}}