.billing-toggle-section{padding:1.5rem 0 1rem}.billing-toggle{position:relative;display:inline-flex;background:var(--background-secondary);border-radius:100px;padding:4px;gap:4px;margin:0 auto}.billing-slider{position:absolute;top:4px;left:0;height:calc(100% - 8px);background:#fff;border-radius:100px;box-shadow:0 1px 3px #0000001a;transition:transform .25s cubic-bezier(.4,0,.2,1),width .25s cubic-bezier(.4,0,.2,1);z-index:0}.billing-toggle-section .container{text-align:center}.billing-option{position:relative;z-index:1;padding:.625rem 1.25rem;border:none;background:transparent;border-radius:100px;font-size:.9375rem;font-weight:500;color:var(--text-secondary);cursor:pointer;transition:color .2s ease;display:flex;align-items:center;gap:.5rem}.billing-option:hover,.billing-option.active{color:var(--text-primary)}.save-badge{background:linear-gradient(135deg,#10b981,#059669);color:#fff;font-size:.6875rem;font-weight:600;padding:.25rem .5rem;border-radius:100px;text-transform:uppercase;letter-spacing:.02em}.credits-plans{padding:2rem 0 1rem}.plans-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;max-width:960px;margin:0 auto}.plan-card{position:relative;background:#fff;border:1px solid var(--border);border-radius:var(--radius-lg);padding:2rem;transition:all .3s ease;display:flex;flex-direction:column}.plan-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-4px)}.plan-featured{border:2px solid var(--primary);box-shadow:var(--shadow-glow)}.plan-featured:hover{box-shadow:var(--shadow-glow),var(--shadow-lg)}.plan-badge{position:absolute;top:-12px;left:50%;transform:translate(-50%);background:var(--primary);color:#fff;padding:.375rem 1rem;border-radius:100px;font-size:.75rem;font-weight:600;white-space:nowrap}.plan-header{text-align:center;padding-bottom:1.5rem;margin-bottom:1.5rem;border-bottom:1px solid var(--border-subtle)}.plan-name{display:block;font-family:var(--font-display);font-size:1.125rem;font-weight:600;color:var(--text-primary);margin-bottom:.75rem}.plan-price{display:flex;align-items:baseline;justify-content:center;gap:.25rem;margin-bottom:.5rem}.price-amount{font-family:var(--font-display);font-size:2.25rem;font-weight:700;color:var(--slate-900);letter-spacing:-.02em}.price-period{font-size:.9375rem;font-weight:500;color:var(--text-secondary)}.plan-credits{display:block;font-size:.9375rem;font-weight:500;color:var(--text-secondary);margin-top:.25rem}.billed-yearly{display:block;font-size:.8125rem;color:var(--text-muted);margin-top:.375rem}.credit-tier-selector{background:var(--background-secondary);border-radius:var(--radius-md);padding:1rem;margin-bottom:1.5rem}.tier-label{display:block;font-size:.8125rem;font-weight:600;color:var(--text-primary);margin-bottom:.75rem}.tier-options{display:flex;flex-direction:column;gap:.5rem}.tier-option{display:flex;align-items:center;gap:.75rem;padding:.625rem .75rem;background:#fff;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);cursor:pointer;transition:all .15s ease}.tier-option:hover{border-color:var(--border)}.tier-option:has(input:checked){border-color:var(--primary);background:#7c3aed0a}.tier-option input{display:none}.tier-radio{width:18px;height:18px;border:2px solid var(--border);border-radius:50%;flex-shrink:0;position:relative;transition:all .15s ease}.tier-option:has(input:checked) .tier-radio{border-color:var(--primary)}.tier-option:has(input:checked) .tier-radio:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:8px;height:8px;background:var(--primary);border-radius:50%}.tier-text{display:flex;justify-content:space-between;align-items:center;flex:1;min-width:0}.tier-credits{font-size:.875rem;font-weight:600;color:var(--text-primary)}.tier-price{font-size:.8125rem;color:var(--text-secondary);font-weight:500}.plan-features{list-style:none;margin-bottom:2rem;flex-grow:1;padding:0}.plan-features li{display:flex;align-items:center;gap:.625rem;padding:.5rem 0;font-size:.875rem;color:var(--text-secondary)}.plan-features li strong{color:var(--text-primary)}.plan-features svg{width:18px;height:18px;color:var(--success);flex-shrink:0}.btn-full{width:100%;justify-content:center}.credits-note{text-align:center;font-size:.8125rem;color:var(--text-muted);margin-top:.75rem}.btn-loading{pointer-events:none}.btn-spinner{display:inline-block;width:16px;height:16px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:btn-spin .75s linear infinite;vertical-align:middle;margin-right:.25rem}@keyframes btn-spin{to{transform:rotate(360deg)}}.signin-modal{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;opacity:0;visibility:hidden;transition:opacity .2s ease,visibility .2s ease}.signin-modal.open{opacity:1;visibility:visible}.signin-modal-backdrop{position:absolute;inset:0;background:#0f172a99;backdrop-filter:blur(4px)}.signin-modal-content{position:relative;background:#fff;border-radius:var(--radius-lg);padding:2rem;max-width:360px;width:90%;text-align:center;box-shadow:var(--shadow-xl);transform:translateY(10px);transition:transform .2s ease}.signin-modal.open .signin-modal-content{transform:translateY(0)}.signin-modal-close{position:absolute;top:.75rem;right:.75rem;background:none;border:none;font-size:1.5rem;color:var(--text-muted);cursor:pointer;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .15s ease}.signin-modal-close:hover{background:var(--background-secondary);color:var(--text-primary)}.signin-modal-content h3{font-family:var(--font-display);font-size:1.25rem;font-weight:600;margin-bottom:.5rem;color:var(--text-primary)}.signin-modal-content p{color:var(--text-secondary);font-size:.9375rem;margin-bottom:1.5rem}.signin-modal-btn{display:flex;justify-content:center}.signin-modal-spinner{width:48px;height:48px;border:3px solid var(--border);border-top-color:var(--primary);border-radius:50%;margin:0 auto 1.5rem;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}#signinModalLoading h3{margin-bottom:.5rem}#signinModalLoading p{margin-bottom:0}@media(max-width:900px){.plans-grid{grid-template-columns:1fr;max-width:400px}}
