:root{--vf-bg: #f7f7f7;--vf-sidebar-bg: #ebebeb;--vf-card: #ffffff;--vf-card-hover: #fafafa;--vf-fg: #1a1a1a;--vf-muted: #6b7280;--vf-muted-light: #9ca3af;--vf-border: #d1d5db;--vf-border-muted: #e5e7eb;--vf-border-light: #f3f4f6;--vf-gradient: linear-gradient(135deg, #6366f1 0%, #8b5cf6 100%);--vf-gradient-light: linear-gradient(135deg, #ede9fe 0%, #ddd6fe 100%);--vf-shadow: 0 1px 3px rgba(0, 0, 0, .05), 0 4px 12px rgba(0, 0, 0, .05);--vf-shadow-hover: 0 4px 12px rgba(0, 0, 0, .08), 0 12px 24px rgba(0, 0, 0, .08);--vf-shadow-elegant: 0 8px 32px rgba(0, 0, 0, .12);--vf-destructive: #dc2626;--vf-destructive-light: #fef2f2;--vf-secondary-bg: #f3f4f6;--vf-pill-bg: #f3f4f6;--vf-pill-purple: #ede9fe;--color-limit-ok: #10b981;--color-limit-warning: #f59e0b;--color-limit-danger: #ef4444;--color-plan-free: #6b7280;--color-plan-starter: #1e40af;--color-plan-pro: #7c3aed;--vf-radius: 12px;--vf-radius-sm: 8px;--vf-radius-lg: 16px;--vf-z-base: 0;--vf-z-sticky: 10;--vf-z-dropdown: 100;--vf-z-sidebar-menu: 150;--vf-z-tooltip: 999;--vf-z-modal-overlay: 1000;--vf-z-modal-content: 1001;--vf-z-toast: 1100}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--vf-fg);background:var(--vf-bg);line-height:1.5}@keyframes fadeIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes slideInRight{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}button:focus-visible,input:focus-visible,[role=button]:focus-visible{outline:2px solid var(--vf-fg);outline-offset:2px}html{scroll-behavior:smooth}*{box-sizing:border-box}h1,h2,h3,h4,h5,h6{font-weight:700;letter-spacing:-.025em;line-height:1.25}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.card-white{background:var(--vf-card);border:1px solid var(--vf-border-muted);border-radius:var(--vf-radius);box-shadow:var(--vf-shadow);transition:all .2s ease}.card-white:hover{box-shadow:var(--vf-shadow-hover);transform:translateY(-2px)}.pill-tag{display:inline-flex;align-items:center;padding:4px 12px;border-radius:999px;font-size:13px;font-weight:500;background:var(--vf-pill-bg);color:var(--vf-fg);border:1px solid var(--vf-border-light)}.pill-purple{background:var(--vf-pill-purple);color:#6366f1;border-color:#c7d2fe}.text-primary{color:var(--vf-fg);font-weight:600}.text-muted{color:var(--vf-muted)}.text-muted-light{color:var(--vf-muted-light)}.text-small{font-size:13px;line-height:1.4}.text-tiny{font-size:12px;line-height:1.3}.interactive-card{cursor:pointer;transition:all .2s ease}.interactive-card:hover{background:var(--vf-card-hover);border-color:var(--vf-border)}.interactive-card:active{transform:scale(.98)}.features-comparison{max-width:1200px;margin:80px auto 40px;padding:0 24px}.comparison-header{text-align:center;margin-bottom:32px}.comparison-header h2{font-size:32px;font-weight:700;color:var(--vf-fg);letter-spacing:-.02em}.comparison-table-wrapper{background:var(--vf-card);border:1px solid var(--vf-border-muted);border-radius:var(--vf-radius);box-shadow:var(--vf-shadow);overflow-x:auto}.comparison-table{width:100%;border-collapse:collapse;border-spacing:0}.comparison-table thead{background:var(--vf-bg);border-bottom:2px solid var(--vf-border)}.comparison-table th{padding:18px 20px;text-align:left;font-size:15px;font-weight:600;color:var(--vf-fg);vertical-align:top}.comparison-table th.feature-column{width:18%;font-size:14px;text-transform:uppercase;letter-spacing:.05em;color:var(--vf-muted)}.comparison-table th.description-column{width:32%;font-size:14px;text-transform:uppercase;letter-spacing:.05em;color:var(--vf-muted)}.comparison-table th.plan-column{width:16.67%;text-align:center;font-size:16px;white-space:nowrap}.comparison-table th.freemium-column{background:#fef3e7}.comparison-table th.starter-column{background:#e8f5e9}.comparison-table th.pro-column{background:#ede9fe;color:#6366f1}.comparison-table tbody tr{border-bottom:1px solid var(--vf-border-light);transition:background-color .15s ease}.comparison-table tbody tr:last-child{border-bottom:none}.comparison-table tbody tr:hover{background-color:var(--vf-card-hover)}.comparison-table tbody tr.even-row{background-color:#00000003}.comparison-table td{padding:18px 20px;font-size:14px;color:var(--vf-fg);vertical-align:top}.comparison-table td.feature-name{font-weight:600;color:#6366f1;font-size:15px}.comparison-table td.feature-description{color:var(--vf-muted);font-size:14px;line-height:1.5}.comparison-table td.plan-value{text-align:center;font-size:14px;line-height:1.6}.additional-info{margin-top:8px;padding-top:8px;border-top:1px solid var(--vf-border-light)}.additional-info a{color:#6366f1;text-decoration:none;font-size:13px;font-weight:500}.additional-info a:hover{text-decoration:underline}@media (max-width: 1200px){.comparison-table th,.comparison-table td{padding:14px 12px;font-size:13px}.comparison-table th.feature-column,.comparison-table th.description-column{font-size:12px}.comparison-table th.plan-column{font-size:14px}}@media (max-width: 968px){.features-comparison{margin:48px auto 24px;padding:0 16px}.comparison-header h2{font-size:26px}.comparison-table-wrapper{border-radius:var(--vf-radius-sm)}.comparison-table th,.comparison-table td{padding:12px 10px;font-size:12px}.comparison-table th.feature-column{width:15%}.comparison-table th.description-column{width:28%}.comparison-table th.plan-column{width:19%;font-size:13px}.comparison-table td.feature-name{font-size:13px}.comparison-table td.feature-description{font-size:12px}.additional-info a{font-size:11px}}@media (max-width: 768px){.comparison-header h2{font-size:22px}.comparison-table-wrapper{overflow-x:auto;-webkit-overflow-scrolling:touch}.comparison-table{min-width:700px}.comparison-table th,.comparison-table td{padding:10px 8px;font-size:11px}.comparison-table th.plan-column{font-size:12px}}.credit-card{background:var(--vf-card);border-radius:var(--vf-radius);padding:24px;border:1px solid var(--vf-border-muted);box-shadow:var(--vf-shadow);transition:all .2s ease}.credit-card:hover{box-shadow:var(--vf-shadow-hover);transform:translateY(-2px)}.credit-card-sm{padding:16px;border-radius:var(--vf-radius-sm)}.credit-card-lg{padding:32px}.credit-summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:16px}.credit-status-success{color:#10b981}.credit-status-warning{color:#f59e0b}.credit-status-danger{color:#ef4444}.credit-status-info{color:#3b82f6}.transaction-badge{display:inline-block;padding:4px 12px;border-radius:12px;font-size:12px;fontWeight:600;text-transform:uppercase}.transaction-badge-consumption{background:#fee2e2;color:#991b1b}.transaction-badge-refund{background:#d1fae5;color:#065f46}.transaction-badge-purchase{background:#dbeafe;color:#1e40af}.transaction-badge-adjustment{background:#fef3c7;color:#92400e}.transaction-badge-grant{background:#e0e7ff;color:#3730a3}.status-badge{display:inline-block;padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600;text-transform:uppercase}.status-badge-pending{background:#fef3c7;color:#92400e}.status-badge-active{background:#dbeafe;color:#1e40af}.status-badge-completed{background:#d1fae5;color:#065f46}.status-badge-cancelled{background:#fee2e2;color:#991b1b}.status-badge-expired{background:#f3f4f6;color:#6b7280}.credit-progress-bar{width:100%;height:8px;background:var(--vf-border-light);border-radius:4px;overflow:hidden}.credit-progress-bar-sm{height:6px;border-radius:3px}.credit-progress-bar-lg{height:12px;border-radius:6px}.credit-progress-fill{height:100%;border-radius:inherit;transition:width .3s ease}.credit-progress-fill-gradient{background:var(--vf-gradient)}.credit-progress-fill-success{background:#10b981}.credit-progress-fill-warning{background:#f59e0b}.credit-progress-fill-danger{background:#ef4444}.chart-bar-container{width:100%;height:8px;background:var(--vf-border-light);border-radius:4px;overflow:hidden;position:relative}.chart-bar-fill{height:100%;border-radius:4px;transition:width .3s ease}.credit-empty-state{background:var(--vf-card);border-radius:var(--vf-radius);padding:48px 32px;border:1px solid var(--vf-border-muted);text-align:center}.credit-empty-icon{font-size:48px;margin-bottom:16px;opacity:.5}.credit-empty-title{font-size:16px;color:var(--vf-muted);margin-bottom:8px;font-weight:600}.credit-empty-description{font-size:14px;color:var(--vf-muted-light)}.credit-table-container{background:var(--vf-card);border-radius:var(--vf-radius);border:1px solid var(--vf-border-muted);box-shadow:var(--vf-shadow);overflow:hidden}.credit-table{width:100%;border-collapse:collapse}.credit-table thead{background:var(--vf-bg);border-bottom:1px solid var(--vf-border-muted)}.credit-table th{padding:12px 24px;text-align:left;font-size:13px;font-weight:600;color:var(--vf-muted)}.credit-table tbody tr{transition:background .2s ease}.credit-table tbody tr:not(:last-child){border-bottom:1px solid var(--vf-border-light)}.credit-table tbody tr:hover{background:var(--vf-card-hover)}.credit-table td{padding:16px 24px;fontSize:14px;color:var(--vf-fg)}.credit-tabs-container{margin-bottom:24px;border-bottom:2px solid var(--vf-border-muted)}.credit-tabs{display:flex;gap:8px}.credit-tab{padding:12px 24px;border:none;background:none;color:var(--vf-muted);font-size:15px;font-weight:600;cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-2px;transition:all .2s ease}.credit-tab:hover{color:var(--vf-fg)}.credit-tab-active{color:var(--vf-fg);border-bottom-color:#6366f1}.credit-user-avatar{width:40px;height:40px;border-radius:50%;background:var(--vf-gradient);color:#fff;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:700;flex-shrink:0}.credit-skeleton{background:var(--vf-border-light);border-radius:4px;animation:pulse 1.5s ease-in-out infinite}.credit-warning-box{display:flex;align-items:center;gap:8px;padding:8px 12px;background:#fee2e2;border-radius:8px;color:#991b1b;font-size:13px;font-weight:600}.credit-btn-primary{padding:10px 20px;border-radius:10px;border:none;background:var(--vf-gradient);color:#fff;font-size:15px;font-weight:600;cursor:pointer;transition:all .2s ease}.credit-btn-primary:hover{opacity:.9;transform:translateY(-1px)}.credit-btn-secondary{padding:8px 16px;border-radius:10px;border:none;background:var(--vf-secondary-bg);color:var(--vf-fg);font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease}.credit-btn-secondary:hover{background:var(--vf-border)}.credit-btn-danger{padding:8px 16px;border-radius:8px;border:none;background:#ef4444;color:#fff;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease}.credit-btn-danger:hover{background:#dc2626}.period-selector{display:flex;gap:8px;flex-wrap:wrap}.period-pill{padding:8px 16px;border-radius:20px;border:none;background:var(--vf-secondary-bg);color:var(--vf-fg);font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease}.period-pill:hover{background:var(--vf-border)}.period-pill-active{background:var(--vf-gradient);color:#fff}@media (max-width: 768px){.credit-summary-grid{grid-template-columns:1fr}.credit-card{padding:16px}.credit-table th,.credit-table td{padding:12px 16px;font-size:13px}.credit-tab{padding:10px 16px;font-size:14px}}.billing-card{background:var(--vf-card-bg, #ffffff);border:1px solid var(--vf-border, #e5e7eb);border-radius:12px;padding:24px;box-shadow:0 1px 3px #0000001a;transition:box-shadow .2s}.billing-card:hover{box-shadow:0 4px 6px #0000001a}.billing-card.loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:200px;gap:16px}.billing-card.no-subscription{text-align:center;padding:48px 24px}.billing-card .card-icon{font-size:48px;margin-bottom:16px}.subscription-card .card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid var(--vf-border, #e5e7eb)}.subscription-card .header-content{display:flex;align-items:center;gap:16px;width:100%;justify-content:space-between}.subscription-card .card-header h3{margin:0;font-size:20px;font-weight:600;color:var(--vf-text, #111827)}.subscription-card .status-badge{padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.subscription-card .subscription-details{display:flex;flex-direction:column;gap:16px}.subscription-card .detail-row{display:flex;justify-content:space-between;align-items:center}.subscription-card .detail-row .label{color:var(--vf-text-secondary, #6b7280);font-size:14px}.subscription-card .detail-row .value{color:var(--vf-text, #111827);font-size:14px;font-weight:500}.subscription-card .detail-row.alert-warning{background:#fef3c7;padding:12px;border-radius:8px;margin-top:8px}.subscription-card .detail-row.alert-warning .label{color:#92400e}.subscription-card .detail-row.alert-warning .value{color:#92400e;font-weight:600}.subscription-card .card-footer{margin-top:24px;padding-top:24px;border-top:1px solid var(--vf-border, #e5e7eb)}.subscription-card .footer-note{text-align:center;font-size:12px;color:var(--vf-text-secondary, #6b7280);margin-top:12px;margin-bottom:0}.pricing-plans{max-width:1200px;margin:0 auto;padding:24px}.error-alert{background:#fef2f2;border:1px solid #ef4444;border-radius:8px;padding:12px 16px;margin-bottom:24px;color:#991b1b;font-size:14px;text-align:center}.pricing-header{text-align:center;margin-bottom:32px}.pricing-header h2{font-size:32px;font-weight:700;color:var(--vf-text, #111827);margin:0 0 8px}.pricing-header p{font-size:16px;color:var(--vf-text-secondary, #6b7280);margin:0}.billing-cycle-toggle{display:flex;justify-content:center;gap:8px;margin-bottom:48px}.billing-cycle-toggle button{padding:12px 24px;border:2px solid var(--vf-border, #e5e7eb);background:#fff;border-radius:8px;font-size:14px;font-weight:600;color:var(--vf-text, #111827);cursor:pointer;transition:all .2s;display:flex;align-items:center;gap:8px}.billing-cycle-toggle button:hover{border-color:var(--vf-primary, #3b82f6)}.billing-cycle-toggle button.active{background:var(--vf-primary, #3b82f6);border-color:var(--vf-primary, #3b82f6);color:#fff}.billing-cycle-toggle .savings-badge{font-size:11px;padding:2px 6px;background:#ffffff4d;border-radius:4px}.plans-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:24px;margin-bottom:48px}.plan-card{background:#fff;border:2px solid var(--vf-border, #e5e7eb);border-radius:16px;padding:32px 24px;position:relative;transition:all .3s}.plan-card:hover{transform:translateY(-4px);box-shadow:0 8px 16px #0000001a}.plan-card.popular{border-color:var(--vf-primary, #3b82f6);box-shadow:0 4px 12px #3b82f633}.plan-card.current{background:var(--vf-bg-subtle, #f9fafb);border-color:var(--vf-success, #10b981)}.plan-card .popular-badge{position:absolute;top:-12px;right:24px;background:var(--vf-primary, #3b82f6);color:#fff;padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600}.plan-card .current-plan-badge{position:absolute;top:-12px;right:24px;background:var(--vf-success, #10b981);color:#fff;padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600}.plan-card .plan-header{text-align:center;margin-bottom:24px}.plan-card .plan-header h3{font-size:24px;font-weight:700;color:var(--vf-text, #111827);margin:0 0 8px}.plan-card .plan-description{font-size:14px;color:var(--vf-text-secondary, #6b7280);margin:0}.plan-card .plan-price{text-align:center;margin-bottom:32px;display:flex;align-items:baseline;justify-content:center;gap:4px;flex-wrap:wrap}.plan-card .plan-price .currency{font-size:24px;font-weight:600;color:var(--vf-text, #111827)}.plan-card .plan-price .amount{font-size:48px;font-weight:700;color:var(--vf-text, #111827);line-height:1}.plan-card .plan-price .period{font-size:16px;color:var(--vf-text-secondary, #6b7280)}.plan-card .plan-price .savings{width:100%;text-align:center;font-size:12px;color:var(--vf-success, #10b981);font-weight:600;margin-top:4px}.plan-card .plan-features{list-style:none;padding:0;margin:0 0 32px}.plan-card .plan-features li{padding:12px 0;display:flex;align-items:flex-start;gap:12px;font-size:14px;color:var(--vf-text, #111827)}.plan-card .plan-features li .check-icon{color:var(--vf-success, #10b981);font-weight:700;flex-shrink:0}.pricing-footer{text-align:center;color:var(--vf-text-secondary, #6b7280);font-size:14px}.pricing-footer p{margin:8px 0}.pricing-footer a{color:var(--vf-primary, #3b82f6);text-decoration:none}.pricing-footer a:hover{text-decoration:underline}.billing-page{max-width:1200px;margin:0 auto;padding:24px}.billing-page .page-header{margin-bottom:32px}.billing-page .page-header h1{font-size:32px;font-weight:700;color:var(--vf-text, #111827);margin:0 0 8px}.billing-page .page-header p{font-size:16px;color:var(--vf-text-secondary, #6b7280);margin:0}.billing-page .page-content{display:flex;flex-direction:column;gap:32px}.billing-page .info-section{background:#fff;border:1px solid var(--vf-border, #e5e7eb);border-radius:12px;padding:32px}.billing-page .info-section h3{font-size:20px;font-weight:600;color:var(--vf-text, #111827);margin:0 0 24px}.billing-page .info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:24px}.billing-page .info-card{padding:20px;border:1px solid var(--vf-border, #e5e7eb);border-radius:8px;transition:all .2s}.billing-page .info-card:hover{box-shadow:0 2px 8px #0000001a;transform:translateY(-2px)}.billing-page .info-card .info-icon{font-size:32px;margin-bottom:12px}.billing-page .info-card h4{font-size:16px;font-weight:600;color:var(--vf-text, #111827);margin:0 0 8px}.billing-page .info-card p{font-size:14px;color:var(--vf-text-secondary, #6b7280);margin:0}.billing-page .help-section{background:var(--vf-bg-subtle, #f9fafb);border:1px solid var(--vf-border, #e5e7eb);border-radius:12px;padding:24px;text-align:center}.billing-page .help-section h3{font-size:18px;font-weight:600;color:var(--vf-text, #111827);margin:0 0 8px}.billing-page .help-section p{font-size:14px;color:var(--vf-text-secondary, #6b7280);margin:0}.billing-page .help-section a{color:var(--vf-primary, #3b82f6);text-decoration:none;font-weight:500}.billing-page .help-section a:hover{text-decoration:underline}.checkout-success-page,.checkout-cancel-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px;background:var(--vf-bg, #f9fafb)}.success-card,.cancel-card{background:#fff;border-radius:16px;padding:48px;max-width:600px;width:100%;box-shadow:0 4px 6px #0000001a;text-align:center}.success-icon,.cancel-icon{font-size:64px;margin-bottom:24px}.success-card h1,.cancel-card h1{font-size:32px;font-weight:700;color:var(--vf-text, #111827);margin:0 0 16px}.success-message,.cancel-message{font-size:16px;color:var(--vf-text-secondary, #6b7280);margin:0 0 32px}.processing{color:var(--vf-primary, #3b82f6);font-weight:500}.info-message{font-size:12px;color:var(--vf-text-secondary, #6b7280);font-family:monospace;background:var(--vf-bg-subtle, #f9fafb);padding:8px 12px;border-radius:4px;margin:16px 0}.subscription-summary{background:var(--vf-bg-subtle, #f9fafb);border:1px solid var(--vf-border, #e5e7eb);border-radius:12px;padding:24px;margin:24px 0}.subscription-summary .summary-row{display:flex;justify-content:space-between;align-items:center;padding:8px 0;font-size:14px}.subscription-summary .summary-row span{color:var(--vf-text-secondary, #6b7280)}.subscription-summary .summary-row strong{color:var(--vf-text, #111827);font-weight:600}.success-actions,.cancel-actions{display:flex;flex-direction:column;gap:12px;margin:32px 0}.next-steps{margin-top:32px;text-align:left;background:var(--vf-bg-subtle, #f9fafb);border-radius:8px;padding:24px}.next-steps h3{font-size:18px;font-weight:600;color:var(--vf-text, #111827);margin:0 0 16px}.next-steps ul{list-style:none;padding:0;margin:0}.next-steps ul li{padding:8px 0;font-size:14px;color:var(--vf-text, #111827)}.info-box{background:var(--vf-bg-subtle, #f9fafb);border:1px solid var(--vf-border, #e5e7eb);border-radius:8px;padding:24px;margin:24px 0;text-align:left}.info-box h3{font-size:18px;font-weight:600;color:var(--vf-text, #111827);margin:0 0 8px}.info-box p{font-size:14px;color:var(--vf-text-secondary, #6b7280);margin:0}.help-section h4{font-size:16px;font-weight:600;color:var(--vf-text, #111827);margin:32px 0 8px}.help-section p{font-size:14px;color:var(--vf-text-secondary, #6b7280);margin:0}.pricing-faq{margin-top:64px;padding:32px 0}.pricing-faq h2{text-align:center;font-size:32px;font-weight:700;color:var(--vf-text, #111827);margin:0 0 48px}.faq-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:32px;max-width:1200px;margin:0 auto}.faq-item{text-align:left}.faq-item h4{font-size:18px;font-weight:600;color:var(--vf-text, #111827);margin:0 0 12px}.faq-item p{font-size:14px;color:var(--vf-text-secondary, #6b7280);line-height:1.6;margin:0}.faq-item a{color:var(--vf-primary, #3b82f6);text-decoration:none}.faq-item a:hover{text-decoration:underline}.btn{padding:12px 24px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s;border:none;outline:none}.btn-primary{background:var(--vf-primary, #3b82f6);color:#fff}.btn-primary:hover:not(:disabled){background:var(--vf-primary-hover, #2563eb);transform:translateY(-1px)}.btn-outline{background:transparent;border:2px solid var(--vf-border, #e5e7eb);color:var(--vf-text, #111827)}.btn-outline:hover:not(:disabled){border-color:var(--vf-primary, #3b82f6);color:var(--vf-primary, #3b82f6)}.btn-block{width:100%}.btn-large{padding:16px 32px;font-size:16px}.btn:disabled{opacity:.5;cursor:not-allowed}.loading-spinner{width:40px;height:40px;border:4px solid var(--vf-border, #e5e7eb);border-top-color:var(--vf-primary, #3b82f6);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.bg-green-100{background-color:#d1fae5}.text-green-800{color:#065f46}.bg-blue-100{background-color:#dbeafe}.text-blue-800{color:#1e40af}.bg-yellow-100{background-color:#fef3c7}.text-yellow-800{color:#92400e}.bg-red-100{background-color:#fee2e2}.text-red-800{color:#991b1b}.bg-gray-100{background-color:#f3f4f6}.text-gray-800{color:#1f2937}@media (max-width: 768px){.plans-grid,.billing-page .info-grid,.faq-grid{grid-template-columns:1fr}.billing-cycle-toggle{flex-direction:column;width:100%;max-width:300px;margin:0 auto 32px}.success-card,.cancel-card{padding:32px 24px}.success-actions,.cancel-actions{flex-direction:column}}
