*{margin:0;padding:0;box-sizing:border-box}:root{--color-primary: #18181b;--color-secondary: #3f3f46;--color-accent: #b91c1c;--color-accent-hover: #991b1b;--color-accent-light: #fecaca;--color-bg: #ffffff;--color-bg-alt: #fafaf9;--color-bg-card: #ffffff;--color-bg-accent: #fef2f2;--color-text: #18181b;--color-text-light: #52525b;--color-border: #e4e4e7;--color-success: #16a34a;--color-error: #dc3545;--spacing-unit: 1rem;--max-width: 1100px;--radius: 6px;--radius-lg: 10px}body{font-family:Manrope,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;line-height:1.6;color:var(--color-text);background-color:var(--color-bg);overflow-x:hidden;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.container{max-width:var(--max-width);margin:0 auto;padding:0 1.5rem}header{padding:1rem 0;background-color:var(--color-bg);border-bottom:1px solid var(--color-border)}.logo{font-size:1.25rem;font-weight:800;color:var(--color-primary);text-decoration:none;letter-spacing:-.02em}.checkout-main{min-height:calc(100vh - 200px);padding:4rem 0;background-color:var(--color-bg-alt)}.checkout-container{max-width:640px;margin:0 auto;background-color:var(--color-bg-card);padding:2.5rem;border-radius:var(--radius-lg);border:1px solid var(--color-border);box-shadow:0 4px 12px #0000000d}.demo-notice{background-color:#e3f2fd;border:2px solid #2196f3;color:#1565c0;padding:1rem;border-radius:8px;margin-bottom:2rem;text-align:center;font-size:.95rem}.demo-notice strong{color:#0d47a1;font-weight:700}.progress-bar{display:flex;align-items:center;justify-content:space-between;margin-bottom:2.5rem;position:relative}.progress-step{display:flex;flex-direction:column;align-items:center;gap:.5rem;position:relative;z-index:2}.step-number{width:36px;height:36px;border-radius:50%;background-color:var(--color-border);color:var(--color-text-light);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.875rem;transition:all .2s ease}.progress-step.active .step-number,.progress-step.completed .step-number{background-color:var(--color-accent);color:#fff}.step-label{font-size:.875rem;color:var(--color-text-light);font-weight:600}.progress-step.active .step-label{color:var(--color-accent);font-weight:700}.progress-line{flex:1;height:2px;background-color:var(--color-border);position:relative;top:-18px}.checkout-step{animation:fadeIn .4s ease-out}.checkout-step.hidden{display:none}.checkout-step h2{font-size:1.75rem;margin-bottom:.5rem;color:var(--color-primary);font-weight:800;letter-spacing:-.02em}.step-description{color:var(--color-text-light);margin-bottom:2rem;font-size:1rem}.plan-summary{display:grid;grid-template-columns:2fr 1fr;gap:2rem;padding:2rem;background-color:var(--color-bg-alt);border:1px solid var(--color-border);border-radius:8px;margin-bottom:2rem}.plan-details h3{font-size:1.5rem;color:var(--color-primary);margin-bottom:.5rem;font-weight:400}.plan-details p{color:var(--color-text-light);margin-bottom:1rem}.plan-features{list-style:none;padding:0}.plan-features li{padding:.5rem 0;color:var(--color-secondary)}.plan-pricing{text-align:right;display:flex;flex-direction:column;justify-content:center}.price-display{margin-bottom:.5rem}.price-display .price-amount{font-size:2.5rem;font-weight:300;color:var(--color-primary)}.price-display .price-period{font-size:1rem;color:var(--color-text-light)}.billing-info{color:var(--color-text-light);font-size:.875rem}.checkout-form{margin-bottom:1.5rem}.form-section{margin-bottom:1.75rem}.form-section h3{font-size:1rem;color:var(--color-primary);margin-bottom:1rem;padding-bottom:.5rem;border-bottom:1px solid var(--color-border);font-weight:700;letter-spacing:-.01em}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.form-group{margin-bottom:1.25rem}.form-group label{display:block;margin-bottom:.5rem;color:var(--color-text);font-weight:600;font-size:.875rem}.form-group input,.form-group select{width:100%;padding:.75rem;border:1px solid var(--color-border);border-radius:var(--radius);font-size:1rem;font-family:inherit;transition:border-color .15s ease,box-shadow .15s ease;background-color:var(--color-bg);color:var(--color-text)}.form-group input::placeholder{color:var(--color-text-light)}.form-group input:focus,.form-group select:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 3px var(--color-accent-light)}.form-group input.error,.form-group select.error{border-color:var(--color-error)}.form-group small{display:block;margin-top:.375rem;color:var(--color-text-light);font-size:.8125rem}.form-group textarea{width:100%;padding:.75rem;border:1px solid var(--color-border);border-radius:var(--radius);font-size:1rem;font-family:inherit;resize:vertical;transition:border-color .15s ease,box-shadow .15s ease;background-color:var(--color-bg);color:var(--color-text)}.form-group textarea::placeholder{color:var(--color-text-light)}.form-group textarea:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 3px var(--color-accent-light)}.form-hint{color:var(--color-text-light);font-size:.875rem;margin-bottom:.75rem}.optional-label{font-weight:500;color:var(--color-text-light);font-size:.8125rem}.checkbox-group{display:flex;flex-wrap:wrap;gap:.625rem}.checkbox-label{display:flex;align-items:center;gap:.5rem;padding:.625rem .875rem;background-color:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius);cursor:pointer;transition:all .15s ease;font-size:.875rem;color:var(--color-text)}.checkbox-label:hover{border-color:var(--color-accent);background-color:var(--color-bg-accent)}.checkbox-label input[type=checkbox]{width:16px;height:16px;cursor:pointer;accent-color:var(--color-accent)}.checkbox-label input[type=checkbox]:checked+span{color:var(--color-accent);font-weight:600}.plan-summary-confirm{background-color:var(--color-bg-alt);border:1px solid var(--color-border);padding:1rem 1.5rem;border-radius:8px;margin-bottom:2rem}.plan-summary-confirm .summary-row{display:flex;justify-content:space-between;font-weight:400;color:var(--color-primary)}.payment-summary{background-color:var(--color-bg-alt);padding:1.5rem;border-radius:8px;margin-bottom:2rem}.payment-summary h3{font-size:1.25rem;color:var(--color-primary);margin-bottom:1rem}.summary-row{display:flex;justify-content:space-between;padding:.75rem 0;border-bottom:1px solid #e5e5e5}.summary-row.total{border-bottom:none;font-weight:700;font-size:1.125rem;color:var(--color-primary);padding-top:1rem;margin-top:.5rem;border-top:2px solid var(--color-primary)}.security-note{background-color:#e8f5e9;padding:1rem;border-radius:6px;color:var(--color-success);font-size:.95rem;margin-bottom:1.5rem;text-align:center}.btn{display:inline-block;padding:.875rem 1.75rem;font-size:1rem;font-weight:600;text-decoration:none;border-radius:var(--radius);transition:all .15s ease;cursor:pointer;border:none;font-family:inherit}.btn-primary{background-color:var(--color-accent);color:#fff;box-shadow:0 1px 3px #b91c1c4d;font-weight:700}.btn-primary:hover:not(:disabled){background-color:var(--color-accent-hover);box-shadow:0 4px 12px #b91c1c66;transform:translateY(-1px)}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.btn-secondary{background-color:var(--color-bg);color:var(--color-primary);border:2px solid var(--color-border);font-weight:600}.btn-secondary:hover{border-color:var(--color-accent);color:var(--color-accent)}.btn-submit .btn-loader,.btn-submit.loading .btn-text{display:none}.btn-submit.loading .btn-loader{display:inline}.step-actions{display:flex;gap:1rem;justify-content:space-between;margin-top:2rem;padding-top:1.5rem;border-top:1px solid var(--color-border)}.step-actions-single{justify-content:flex-end}footer{padding:2.5rem 0;text-align:center;color:var(--color-text-light);font-size:.875rem;background-color:var(--color-bg);border-top:1px solid var(--color-border)}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@media(max-width:768px){.checkout-main{padding:2rem 0}.checkout-container{padding:1.5rem;border-radius:var(--radius)}.plan-summary{grid-template-columns:1fr}.plan-pricing{text-align:left}.form-row{grid-template-columns:1fr}.step-label{font-size:.75rem}.progress-bar{margin-bottom:1.5rem}.checkout-step h2{font-size:1.5rem}.step-actions{flex-direction:column-reverse}.btn{width:100%;text-align:center}}@media(max-width:480px){.checkbox-group{flex-direction:column}.checkbox-label{width:100%}}
