.checkout-container{min-height:100vh;background:#f8f9fa}.checkout-header{background:white;border-bottom:1px solid #e5e7eb;padding:1rem 0}.header-content{max-width:1200px;margin:0 auto;padding:0 2rem;display:flex;justify-content:space-between;align-items:center}.logo{font-size:1.5rem;font-weight:700;color:#1f2937}.checkout-steps{display:flex;align-items:center;gap:.5rem;font-size:.875rem}.step{color:#6b7280}.step.active{color:#1f2937;font-weight:500}.step-divider{color:#d1d5db}.checkout-layout{max-width:1200px;margin:0 auto;padding:2rem;display:grid;grid-template-columns:1fr 400px;gap:3rem}.checkout-form-section{background:white;border-radius:12px;padding:2rem;box-shadow:0 1px 3px rgba(0,0,0,.1)}.checkout-summary-section{position:sticky;top:2rem;height:fit-content}.checkout-section{margin-bottom:2rem}.section-title{font-size:1.25rem;font-weight:600;color:#1f2937;margin-bottom:1rem}.section-subtitle{color:#6b7280;font-size:.875rem;margin-bottom:1.5rem;line-height:1.5}.section-divider{height:1px;background:#e5e7eb;margin:2rem 0}.form-group{margin-bottom:1.5rem;width:fit-content}.form-label{display:block;font-size:.875rem;font-weight:500;color:#374151;margin-bottom:.5rem}.required{color:#ef4444}.form-input{width:100%;padding:.75rem 1rem;border:1px solid #d1d5db;border-radius:6px;font-size:.875rem;transition:all .2s}.form-input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px rgba(59,130,246,.1)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}.form-grid .form-group:last-child{grid-column:1/-1}.shipping-options{display:flex;flex-direction:column;gap:1rem}.shipping-option{display:flex;align-items:center;gap:1rem;padding:1rem;border:1px solid #e5e7eb;border-radius:8px;cursor:pointer;transition:all .2s}.shipping-option:hover{border-color:#3b82f6}.shipping-option input[type=radio]{display:none}.radio-custom{width:1.25rem;height:1.25rem;border:2px solid #d1d5db;border-radius:50%;position:relative;transition:all .2s}.shipping-option input[type=radio]:checked+.radio-custom{border-color:#3b82f6}.shipping-option input[type=radio]:checked+.radio-custom:after{content:"";width:.5rem;height:.5rem;background:#3b82f6;border-radius:50%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.shipping-info{flex:1;display:flex;justify-content:space-between;align-items:center}.shipping-name{font-weight:500;color:#1f2937}.shipping-price{color:#6b7280;font-weight:500}.order-summary-card{background:white;border-radius:12px;padding:2rem;box-shadow:0 4px 6px -1px rgba(0,0,0,.1);border:1px solid #e5e7eb}.summary-title{font-size:1.25rem;font-weight:600;color:#1f2937;padding-bottom:1rem;border-bottom:1px solid #e5e7eb}.order-items,.summary-title{margin-bottom:1.5rem}.order-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem 0;border-bottom:1px solid #f3f4f6}.item-info{display:flex;flex-direction:column;gap:.25rem}.item-name{font-weight:500;color:#1f2937;font-size:.875rem}.item-quantity{color:#6b7280;font-size:.75rem}.item-price{font-weight:500;color:#1f2937;font-size:.875rem}.summary-totals{border-top:1px solid #e5e7eb;padding-top:1rem}.total-row{display:flex;justify-content:space-between;align-items:center;padding:.5rem 0;color:#6b7280;font-size:.875rem}.total-row.discount{color:#10b981}.total-row.shipping{border-bottom:1px solid #e5e7eb;padding-bottom:1rem;margin-bottom:.5rem}.total-row.final-total{font-weight:600;color:#1f2937;font-size:1rem}.place-order-btn{width:100%;background:#000;color:white;border:none;padding:1rem 2rem;border-radius:8px;font-weight:600;font-size:1rem;cursor:pointer;transition:all .2s;margin-top:1.5rem}.place-order-btn:hover{background:#333;transform:translateY(-1px);box-shadow:0 4px 12px rgba(0,0,0,.15)}.checkout-loading{min-height:100vh;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:1rem}.spinner{width:3rem;height:3rem;border:3px solid #e5e7eb;border-top-color:#000;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.error-message{background:#fef2f2;border:1px solid #fecaca;border-radius:8px;padding:1rem;margin-bottom:2rem}.error-message h3{color:#dc2626;font-size:.875rem;font-weight:600;margin-bottom:.5rem}.error-message p{color:#b91c1c;font-size:.875rem}.logo{width:100px;height:100px;object-fit:contain}@media (max-width:768px){.checkout-layout{padding:1rem;gap:2rem}.checkout-layout,.form-grid{grid-template-columns:1fr}.form-group{margin-bottom:1rem;width:100%}.header-content{flex-direction:column;gap:1rem}}