.checkout-flow{max-width:900px;margin:60px auto;padding:20px}.checkout-progress{display:flex;justify-content:space-between;margin-bottom:40px;position:relative}.checkout-progress:before{content:"";position:absolute;top:20px;left:0;right:0;height:2px;background:#e0e0e0;z-index:-1}.progress-step{flex-direction:column;gap:8px;padding:0 10px;position:relative}.progress-step,.step-number{display:flex;align-items:center}.step-number{width:40px;height:40px;border-radius:50%;background:#e0e0e0;color:#666;justify-content:center;font-weight:600;transition:all .3s}.progress-step.active .step-number{background:#1c1c1c;color:white}.progress-step.completed .step-number{background:#4caf50;color:white}.step-label{font-size:14px;color:#666;font-weight:500}.progress-step.active .step-label{color:#1c1c1c;font-weight:600}.checkout-content{background:white;border-radius:8px;padding:40px;box-shadow:0 2px 8px rgba(0,0,0,.1)}.checkout-step h3{margin-bottom:24px;font-size:24px;font-weight:600}.checkout-step h4{margin-bottom:16px;font-size:18px;font-weight:600}.form-group{margin-bottom:20px}.checkout-step input[type=email],.checkout-step input[type=tel],.checkout-step input[type=text],.checkout-step select,.checkout-step textarea,.form-control{width:100%;padding:12px;border:1px solid #ddd;border-radius:4px;font-size:14px;transition:border-color .3s}.checkout-step input:focus,.checkout-step select:focus,.checkout-step textarea:focus{outline:none;border-color:#1c1c1c}.checkoutDetailsFormRow{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px}.text-muted{color:#666;font-size:12px;margin-top:4px}.shipping-options{display:flex;flex-direction:column;gap:12px;margin-bottom:24px}.shipping-option{display:flex;align-items:center;justify-content:space-between;padding:16px;border:1px solid #e0e0e0;border-radius:4px;cursor:pointer;transition:all .3s}.shipping-option:hover{border-color:#1c1c1c}.shipping-option.selected{border-color:#1c1c1c;background:#f5f5f5}.shipping-option input[type=radio]{margin-right:12px;width:20px;height:20px}.shipping-option-details{flex:1}.shipping-option-name{font-weight:600;margin-bottom:4px}.shipping-option-provider{font-size:12px;color:#666}.shipping-option-price{font-weight:600;font-size:16px}.payment-providers{display:flex;flex-direction:column;gap:12px;margin-bottom:24px}.payment-provider{display:flex;align-items:center;padding:16px;border:1px solid #e0e0e0;border-radius:4px;cursor:pointer;transition:all .3s}.payment-provider:hover{border-color:#1c1c1c}.payment-provider.selected{border-color:#1c1c1c;background:#f5f5f5}.payment-provider input[type=radio]{margin-right:12px;width:20px;height:20px}.payment-provider-details{flex:1}.payment-provider-name{font-weight:600;text-transform:capitalize}.payment-provider-ui{background:#f9f9f9;padding:20px;margin:20px 0;border-radius:4px}.payment-provider-ui h4{margin-bottom:12px}.checkout-review .review-section{margin-bottom:32px;padding-bottom:24px;border-bottom:1px solid #e0e0e0}.checkout-review .review-section:last-of-type{border-bottom:none}.review-items{display:flex;flex-direction:column;gap:16px}.review-item{display:flex;justify-content:space-between;align-items:center;padding:12px;background:#f9f9f9;border-radius:4px}.review-item .item-details{display:flex;gap:16px;align-items:center}.review-item img{object-fit:cover}.review-item h5{margin-bottom:4px;font-size:16px}.review-item p{font-size:14px;color:#666;margin-bottom:4px}.item-price{font-weight:600;font-size:16px}.address-display p{margin-bottom:4px;line-height:1.6}.order-summary table{width:100%}.order-summary td,.order-summary th{padding:12px 0}.order-summary td:last-child,.order-summary th:last-child{text-align:right}.order-summary .total-row{border-top:2px solid #1c1c1c;font-size:18px;font-weight:600}.terms-section{margin:24px 0}.terms-section label{display:flex;align-items:flex-start;gap:8px;cursor:pointer}.terms-section input[type=checkbox]{margin-top:4px;width:18px;height:18px}.terms-section a{color:#1c1c1c;text-decoration:underline}.checkout-actions{justify-content:space-between;margin-top:32px}.btn{padding:14px 32px;border:none;border-radius:4px;font-size:16px;font-weight:600;text-transform:capitalize;cursor:pointer;transition:all .3s}.btn-primary{background:#1c1c1c;border-radius:4px;color:white}.btn-primary:hover:not(:disabled){background:#333}.btn-secondary{background:white;border-radius:4px;color:#1c1c1c;border:2px solid #1c1c1c}.btn-secondary:hover:not(:disabled){background:#f5f5f5}.btn:disabled{opacity:.5;cursor:not-allowed}.alert{padding:12px 16px;margin-bottom:20px}.alert-warning{background:#fff3cd;color:#856404;border:1px solid #ffeaa7}@media (max-width:768px){.checkout-flow{margin:20px auto;padding:10px}.checkout-content{padding:20px}.checkout-progress{flex-wrap:wrap;gap:12px}.step-label{font-size:12px}.step-number{width:32px;height:32px;font-size:14px}.checkoutDetailsFormRow{grid-template-columns:1fr}.checkout-actions,.review-item{flex-direction:column}.review-item{align-items:flex-start}}.stripe-payment-wrapper{width:100%;max-width:600px;margin:0 auto}.stripe-payment-error{padding:20px;background-color:#fee;border:1px solid #fcc;border-radius:4px;color:#c00;text-align:center}.stripe-payment-form{padding:20px}.stripe-payment-form h3{font-size:24px;font-weight:600;margin-bottom:24px;color:#222}.stripe-card-element{margin-bottom:30px}.stripe-card-element label{display:block;font-size:14px;font-weight:500;margin-bottom:8px;color:#30313d}.card-input-wrapper{padding:14px 16px;border:2px solid #e4e4e4;border-radius:4px;background:white;transition:border-color .3s ease}.card-input-wrapper:hover{border-color:#222}.card-input-wrapper:focus-within{border-color:#222;box-shadow:0 0 0 3px rgba(34,34,34,.1)}.payment-summary{background:#f9f9f9;padding:20px;border-radius:4px;margin-bottom:24px}.payment-summary h4{font-size:18px;font-weight:600;margin-bottom:16px;color:#222}.summary-row{display:flex;justify-content:space-between;padding:8px 0;font-size:14px;color:#666}.summary-row.discount{color:#059669}.summary-row.total{border-top:2px solid #222;margin-top:12px;padding-top:12px;font-size:18px;color:#222}.terms-checkbox{margin-bottom:24px}.terms-checkbox label{display:flex;align-items:flex-start;cursor:pointer}.terms-checkbox input[type=checkbox]{margin-right:10px;margin-top:2px;cursor:pointer;width:18px;height:18px}.terms-checkbox span{font-size:14px;color:#666;line-height:1.5}.terms-checkbox a{color:#222;text-decoration:underline}.terms-checkbox a:hover{text-decoration:none}.checkout-actions{display:flex;gap:16px;margin-bottom:20px}.checkout-actions .btn{flex:1;padding:14px 24px;font-size:16px;font-weight:500;border:none;border-radius:4px;cursor:pointer;transition:all .3s ease;text-align:center}.checkout-actions .btn-secondary{background:white;color:#222;border:2px solid #222;border-radius:4px}.checkout-actions .btn-secondary:hover:not(:disabled){background:#f5f5f5}.checkout-actions .btn-primary{background:#222;border-radius:4px;color:white}.checkout-actions .btn-primary:hover:not(:disabled){background:#000}.checkout-actions .btn:disabled{opacity:.5;cursor:not-allowed}.security-notice{text-align:center;padding:16px;background:#f0f9ff;border-radius:4px}.security-notice p{margin:0;font-size:13px;color:#0369a1;display:flex;align-items:center;justify-content:center}@media (max-width:768px){.stripe-payment-wrapper{padding:0 16px}.stripe-payment-form{padding:16px}.stripe-payment-form h3{font-size:20px}.checkout-actions{flex-direction:column}.checkout-actions .btn{width:100%}.payment-summary{padding:16px}.summary-row.total{font-size:16px}}@media (max-width:480px){.stripe-payment-form h3{font-size:18px}.card-input-wrapper{padding:12px}.checkout-actions .btn{padding:12px 20px;font-size:14px}.security-notice p{font-size:12px;flex-direction:column;gap:4px}}