.plan-upgrade-overlay{z-index:10100;opacity:0;visibility:hidden;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#00000080;justify-content:center;align-items:center;width:100%;height:100%;transition:all .2s;display:flex;position:fixed;top:0;left:0}[data-theme=dark] .plan-upgrade-overlay{background:#000000b3}.plan-upgrade-overlay.show{opacity:1;visibility:visible}.plan-upgrade-modal{background:var(--color-background);border:1px solid var(--color-border);border-radius:12px;width:540px;max-width:90vw;max-height:90vh;transition:transform .2s;overflow-y:auto;transform:scale(.95);box-shadow:0 12px 32px #0003}[data-theme=dark] .plan-upgrade-modal{box-shadow:0 12px 32px #00000080}.plan-upgrade-overlay.show .plan-upgrade-modal{transform:scale(1)}.plan-upgrade-header{border-bottom:1px solid var(--color-border);background:var(--color-surface);justify-content:space-between;align-items:center;padding:.75rem 1rem;display:flex}.plan-upgrade-title{font-size:var(--text-sm);color:var(--color-text-primary);align-items:center;gap:.375rem;margin:0;font-weight:600;display:flex}.plan-upgrade-title i{color:#f59e0b;font-size:var(--text-base)}.plan-upgrade-close{font-size:var(--text-base);color:var(--color-text-secondary);cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;width:1.5rem;height:1.5rem;padding:.25rem;transition:all .15s;display:flex}.plan-upgrade-close:hover{background:var(--color-hover);color:var(--color-text-primary)}.plan-upgrade-content{padding:1rem}.plan-upgrade-icon{text-align:center;margin-bottom:.75rem}.plan-upgrade-icon i{font-size:var(--text-4xl);background:linear-gradient(135deg,#635bff,#8b5cf6);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.plan-upgrade-message{text-align:center;margin-bottom:1rem}.plan-upgrade-message h4{font-size:var(--text-md);color:var(--color-text-primary);margin:0 0 .375rem;font-weight:600;line-height:1.4}.plan-upgrade-message p{font-size:var(--text-sm);color:var(--color-text-secondary);margin:0;line-height:1.5}.plan-cards{grid-template-columns:repeat(auto-fit,minmax(100px,1fr));gap:.5rem;margin-bottom:1rem;display:grid}.plan-card{background:var(--color-surface);border:2px solid var(--color-border);cursor:pointer;text-align:center;border-radius:6px;padding:.625rem;transition:all .15s;position:relative}.plan-card:hover{border-color:#635bff;transform:translateY(-2px);box-shadow:0 4px 12px #635bff26}.plan-card.selected{background:linear-gradient(135deg,#635bff0d,#8b5cf60d);border-color:#635bff;box-shadow:0 4px 12px #635bff33}.plan-card-header{flex-direction:column;gap:.25rem;display:flex}.plan-card-name{font-size:var(--text-sm);color:var(--color-text-primary);font-weight:600}.plan-card-current-badge{color:#fff;width:18px;height:18px;font-size:var(--text-xs);background:#10b981;border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;top:-6px;right:-6px;box-shadow:0 2px 6px #10b98166}.plan-card-price{font-size:var(--text-lg);color:#635bff;font-weight:700}.plan-card[data-plan-id=free] .plan-card-price,.plan-card[data-plan-id=Free] .plan-card-price{color:var(--color-text-secondary);font-size:var(--text-base)}.plan-card.selected .plan-card-price{background:linear-gradient(135deg,#635bff,#8b5cf6);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.plan-card.selected[data-plan-id=free] .plan-card-price,.plan-card.selected[data-plan-id=Free] .plan-card-price{color:var(--color-text-secondary);background:0 0;-webkit-background-clip:unset;-webkit-text-fill-color:unset}.plan-card-period{font-size:var(--text-xs);color:var(--color-text-secondary);font-weight:500}.enterprise-label{font-size:var(--text-sm);color:var(--color-text-secondary);font-weight:600}.plan-compare-link{text-align:center;margin-top:.5rem;margin-bottom:.5rem}.plan-compare-link a{font-size:var(--text-xs);color:var(--color-primary);text-underline-offset:2px;text-decoration:underline;transition:color .15s}.plan-compare-link a:hover{color:var(--color-primary-hover)}.plan-benefits{background:var(--color-surface);border:1px solid var(--color-border);border-radius:6px;margin-bottom:1rem;padding:.75rem}.plan-benefits h5{font-size:var(--text-xs);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.02em;align-items:center;gap:.375rem;margin:0 0 .5rem;font-weight:600;display:flex}.plan-benefits h5 i{color:#635bff;font-size:var(--text-xs)}.plan-benefits ul{margin:0;padding:0;list-style:none}.plan-benefits li{font-size:var(--text-sm);color:var(--color-text-secondary);align-items:center;gap:.5rem;padding:.25rem 0;line-height:1.4;display:flex}.plan-benefits li i{color:#10b981;font-size:var(--text-sm);flex-shrink:0}.plan-benefits li i.text-red{color:#ef4444}.plan-benefits li i.text-yellow{color:#f59e0b}.plan-benefits li span{flex:1}.plan-pricing-preview{text-align:center;margin-top:.375rem;margin-bottom:0}.pricing-badge{background:linear-gradient(135deg,#635bff,#8b5cf6);border-radius:6px;flex-direction:column;align-items:center;gap:.125rem;margin-bottom:.375rem;padding:.5rem 1rem;display:inline-flex}.pricing-label{font-size:var(--text-xs);color:#ffffffe6;text-transform:uppercase;letter-spacing:.5px;font-weight:500}.pricing-amount{font-size:var(--text-xl);color:#fff;font-weight:700}.pricing-hint{font-size:var(--text-xs);color:var(--color-text-secondary);margin:0}.checkout-disclaimer{font-size:var(--text-xs);color:var(--color-text-tertiary);justify-content:center;align-items:center;gap:.375rem;margin:.5rem 0 0;display:flex}.checkout-disclaimer i{color:var(--color-success);font-size:.625rem}.plan-upgrade-actions{border-top:1px solid var(--color-border);background:var(--color-surface);justify-content:flex-end;gap:.5rem;padding:.75rem 1rem;display:flex}.btn-upgrade-secondary{background:var(--color-background);color:var(--color-text-secondary);border:1px solid var(--color-border);font-size:var(--text-sm);cursor:pointer;border-radius:4px;justify-content:center;align-items:center;gap:.375rem;padding:.4rem .875rem;font-weight:500;transition:all .15s;display:flex}.btn-upgrade-secondary:hover{background:var(--color-hover);border-color:var(--color-border-hover)}.btn-upgrade-primary{color:#fff;font-size:var(--text-sm);cursor:pointer;background:linear-gradient(135deg,#635bff,#8b5cf6);border:none;border-radius:4px;justify-content:center;align-items:center;gap:.375rem;padding:.4rem 1rem;font-weight:600;transition:all .15s;display:flex;box-shadow:0 2px 6px #635bff4d}.btn-upgrade-primary:hover{transform:translateY(-1px);box-shadow:0 4px 10px #635bff66}.btn-upgrade-primary i{color:#f59e0b;font-size:var(--text-sm)}@media (max-width:640px){.plan-upgrade-modal{width:95%;max-width:95%}.plan-upgrade-content{padding:1rem}.plan-comparison{flex-direction:column;gap:.75rem}.plan-comparison-arrow{transform:rotate(90deg)}.plan-upgrade-actions{flex-direction:column-reverse;gap:.5rem}.btn-upgrade-secondary,.btn-upgrade-primary{width:100%}}.downgrade-warning-overlay{z-index:10001;background:#000c;border-radius:12px;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.downgrade-warning-content{background:var(--color-background);border:1px solid var(--color-border);border-radius:6px;max-width:360px;padding:1.25rem;box-shadow:0 6px 20px #0000004d}.downgrade-warning-content h4{color:#f59e0b;font-size:var(--text-md);align-items:center;gap:.375rem;margin:0 0 .75rem;display:flex}.downgrade-warning-content h4 i{color:#f59e0b;font-size:var(--text-base)}.downgrade-warning-content p{color:var(--color-text-secondary);font-size:var(--text-sm);margin:0 0 .5rem;line-height:1.5}.downgrade-warning-content p:last-of-type{color:var(--color-text-primary);margin-bottom:1rem;font-weight:500}.downgrade-warning-actions{justify-content:flex-end;gap:.5rem;display:flex}.btn-warning-cancel,.btn-warning-confirm{font-size:var(--text-sm);cursor:pointer;border:none;border-radius:4px;align-items:center;gap:.375rem;padding:.4rem .875rem;font-weight:500;transition:all .15s;display:flex}.btn-warning-cancel{background:var(--color-surface);color:var(--color-text-primary);border:1px solid var(--color-border)}.btn-warning-cancel:hover{background:var(--color-surface-alt)}.btn-warning-confirm{color:#fff;background:#f59e0b}.btn-warning-confirm:hover:not(:disabled){background:#d97706}.btn-warning-confirm:disabled{opacity:.6;cursor:not-allowed}
