.section-padding{padding:2rem 1rem;min-height:80vh;background:transparent}.container{max-width:1200px;margin:0 auto}.checkout-container{max-width:800px;margin:0 auto;background:#fff;border-radius:20px;box-shadow:0 10px 40px -10px #0000001a;padding:2rem;border:1px solid rgba(255,255,255,.5)}.step-indicator{display:flex;justify-content:space-between;margin-bottom:2.5rem;position:relative;border-bottom:1px solid #e2e8f0;padding-bottom:1rem}.step{font-size:.9rem;font-weight:500;color:#94a3b8;position:relative;cursor:default;transition:color .3s}.step.active{color:var(--primary);font-weight:700}.step.active:after{content:"";position:absolute;bottom:-17px;left:0;width:100%;height:3px;background:var(--primary);border-radius:3px 3px 0 0}.checkout-step{display:none;animation:fadeIn .4s ease}.checkout-step.active{display:block}h2{font-size:1.75rem;font-family:var(--font-heading);color:var(--text);margin-bottom:1.5rem}.cart-items-list{margin-bottom:2rem;display:flex;flex-direction:column;gap:1rem}.cart-summary{background:#f8fafc;border-radius:12px;padding:1.5rem;margin-bottom:2rem}.summary-row{display:flex;justify-content:space-between;margin-bottom:.5rem;color:#64748b;font-size:.95rem}.summary-row.total{margin-top:1rem;padding-top:1rem;border-top:1px dashed #cbd5e1;font-weight:700;color:var(--text);font-size:1.2rem}.step-actions{display:flex;justify-content:space-between;align-items:center;margin-top:2rem}.btn{display:inline-flex;align-items:center;justify-content:center;padding:.75rem 1.5rem;border-radius:50px;font-weight:600;border:none;cursor:pointer;text-decoration:none;transition:all .2s;font-size:.95rem}.btn-primary{background:var(--primary);color:#fff;box-shadow:0 4px 12px #00000026}.btn-primary:hover{background:var(--primary-dark);transform:translateY(-1px)}.btn-secondary{background:#f1f5f9;color:#475569}.btn-secondary:hover{background:#e2e8f0;color:#1e293b}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem}.full-width{grid-column:1 / -1}.form-group label{display:block;font-size:.85rem;font-weight:600;margin-bottom:.4rem;color:#475569}.form-group input,.form-group select,.form-group textarea{width:100%;padding:.75rem 1rem;border-radius:10px;border:1px solid #e2e8f0;font-family:inherit;font-size:.95rem;background:#fff;transition:border-color .2s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #0000000d}.payment-options{display:grid;gap:1rem;margin-bottom:2rem}.payment-card{display:flex;align-items:flex-start;gap:1rem;padding:1.25rem;border:1px solid #e2e8f0;border-radius:12px;cursor:pointer;transition:all .2s}.payment-card:hover{border-color:var(--primary);background:#fdfdfd}.payment-card input{margin-top:.3rem;accent-color:var(--primary)}.card-content h3{margin:0 0 .25rem;font-size:1rem;color:var(--text)}.card-content p{margin:0;font-size:.85rem;color:#64748b}.final-notice{background:#fffbeb;border:1px solid #fcd34d;padding:1rem;border-radius:8px;margin-bottom:1.5rem;font-size:.85rem;color:#92400e}.guest-notice{background-color:#eff6ff;border:1px solid #bfdbfe;color:#1e40af;padding:1rem;border-radius:8px;margin-bottom:1.5rem;font-size:.9rem}.guest-notice a{color:var(--primary);text-decoration:underline;font-weight:600}.empty-cart{text-align:center;padding:4rem 1rem}.hidden{display:none!important}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.cart-items-list{display:flex;flex-direction:column;gap:1rem}.cart-item-row{display:flex;gap:1.5rem;align-items:center;padding:1.5rem;border:1px solid #e2e8f0;border-radius:16px;position:relative;background:#fff;margin-bottom:1rem;transition:all .2s;box-shadow:0 2px 5px #00000005}.cart-item-row:hover{border-color:var(--primary);box-shadow:0 5px 15px #0000000d}.cart-item-image{width:100px;height:100px;object-fit:cover;border-radius:12px;flex-shrink:0;border:1px solid #f1f5f9}.cart-item-details{flex-grow:1;display:flex;flex-direction:column;padding-right:3rem}.cart-item-title{font-size:1.15rem;font-weight:700;margin:0 0 .5rem;font-family:var(--font-heading);color:var(--text)}.item-meta-row{display:flex;align-items:center;gap:1.5rem;flex-wrap:wrap;margin-top:.5rem}.size-badge{display:inline-flex;align-items:center;background:#f8fafc;padding:.25rem .75rem;border-radius:6px;font-size:.85rem;color:#64748b;font-weight:500;border:1px solid #e2e8f0}.remove-item{background:#fff;border:1px solid #e2e8f0;color:#ef4444;cursor:pointer;width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;position:absolute;top:1rem;right:1rem;transition:all .2s;z-index:10}.remove-item:hover{background:#fee2e2;border-color:#fee2e2;transform:rotate(90deg)}.qty-control{display:flex;align-items:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;overflow:hidden;height:36px}.qty-btn{border:none;background:transparent;width:32px;height:100%;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:1.1rem;color:#64748b;transition:background .2s}.qty-btn:hover{background:#e2e8f0;color:var(--text)}.qty-val{padding:0 1rem;font-weight:600;font-size:.95rem;min-width:20px;text-align:center}.item-total{font-size:1.1rem;font-weight:700;color:var(--primary);margin-left:auto}.cart-summary{background:#f8fafc;border-radius:16px;padding:1.5rem;margin-top:2rem;border:1px solid #e2e8f0}.summary-row{display:flex;justify-content:space-between;margin-bottom:.75rem;font-size:.95rem;color:#64748b}.summary-row.total{margin-top:1rem;padding-top:1rem;border-top:1px dashed #cbd5e1;font-weight:700;color:var(--primary);font-size:1.25rem;margin-bottom:0}.summary-row span:last-child{font-weight:600;color:var(--text)}.summary-row.total span:last-child{color:var(--primary)}@media(max-width:768px){.section-padding{padding:1.5rem 1rem}.checkout-container{padding:1.5rem}.form-grid{grid-template-columns:1fr}.cart-item-row{align-items:flex-start;padding:1rem;gap:1rem}.cart-item-image{width:80px;height:80px}.cart-item-title{font-size:1rem;padding-right:0}.cart-item-details{padding-right:2.5rem}.item-meta-row{gap:1rem;margin-top:.75rem}.item-total{margin-left:0;width:100%;margin-top:.5rem}.remove-item{width:32px;height:32px;top:.75rem;right:.75rem}}
