.checkout-container{max-width:1400px;margin:0 auto;padding:2rem}.checkout-container h1{margin-bottom:2rem;color:#66c2ff}.empty-cart{text-align:center;padding:4rem 2rem;background:#66c2ff0d;border:1px solid rgba(102,194,255,.2);border-radius:12px}.empty-cart p{font-size:1.2rem;color:#888;margin-bottom:2rem}.checkout-grid{display:grid;grid-template-columns:1fr 400px;gap:3rem}.checkout-form{background:#66c2ff08;border:1px solid rgba(102,194,255,.2);border-radius:12px;padding:2rem}.form-section{margin-bottom:2rem;padding-bottom:2rem;border-bottom:1px solid rgba(102,194,255,.2)}.form-section:last-of-type{border-bottom:none;margin-bottom:1rem;padding-bottom:0}.form-section h2{margin:0 0 1.5rem;font-size:1.3rem;color:#66c2ff}.form-group{margin-bottom:1.5rem}.form-group label{display:block;margin-bottom:.5rem;color:#888;font-size:.9rem}.form-group input,.form-group textarea{width:100%;box-sizing:border-box;padding:.75rem;background:#0000004d;border:1px solid rgba(102,194,255,.3);border-radius:8px;color:#fff;font-size:1rem;font-family:inherit}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:#66c2ff;background:#0006}.form-group input[readonly]{background:#0003;cursor:not-allowed}.form-group textarea{resize:vertical;min-height:80px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.cgv-acceptance{display:flex;align-items:flex-start;gap:.75rem;padding:1rem;background:#66c2ff0d;border:1px solid rgba(102,194,255,.2);border-radius:8px}.cgv-acceptance input[type=checkbox]{margin-top:.25rem;width:18px;height:18px;cursor:pointer}.cgv-acceptance label{color:#ccc;font-size:.95rem;line-height:1.5}.cgv-acceptance a{color:#66c2ff;text-decoration:none}.cgv-acceptance a:hover{text-decoration:underline}.checkout-form .btn-primary{width:100%;padding:1rem;font-size:1.1rem;margin-top:1rem;background:#66c2ff;color:#0a0a0a;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:all .3s ease}.checkout-form .btn-primary:hover:not(:disabled){background:#88d4ff;transform:translateY(-2px)}.checkout-form .btn-primary:disabled{background:#66c2ff4d;color:#ffffff80;cursor:not-allowed}.checkout-message{margin-top:1rem;padding:1rem;border-radius:8px;font-weight:500;text-align:center}.checkout-message.success{background:#4caf501a;border:1px solid rgba(76,175,80,.3);color:#4caf50}.checkout-message.error{background:#f443361a;border:1px solid rgba(244,67,54,.3);color:#f44336}.checkout-message.info{background:#66c2ff1a;border:1px solid rgba(102,194,255,.3);color:#66c2ff}.order-summary{position:sticky;top:2rem;height:fit-content;background:#66c2ff0d;border:1px solid rgba(102,194,255,.2);border-radius:12px;padding:1.5rem}.order-summary h2{margin:0 0 1.5rem;font-size:1.2rem;color:#66c2ff}.summary-items{margin-bottom:1.5rem;max-height:400px;overflow-y:auto}.summary-item{display:grid;grid-template-columns:60px 1fr auto;gap:1rem;align-items:center;padding:1rem;background:#0003;border-radius:8px;margin-bottom:1rem}.summary-item:last-child{margin-bottom:0}.summary-item img{width:60px;height:40px;object-fit:cover;border-radius:4px}.summary-item-details h3{margin:0 0 .25rem;font-size:.9rem;color:#fff}.summary-item-details p{margin:0;font-size:.8rem;color:#888}.summary-item-price{font-weight:600;color:#66c2ff}.summary-totals{padding:1rem 0;border-top:1px solid rgba(102,194,255,.2)}.summary-line{display:flex;justify-content:space-between;margin-bottom:.75rem;font-size:.95rem}.summary-line:last-child{margin-bottom:0}.summary-line.total{margin-top:1rem;padding-top:1rem;border-top:2px solid rgba(102,194,255,.3);font-size:1.2rem;font-weight:700;color:#66c2ff}.edit-cart-link{display:block;text-align:center;margin-top:1.5rem;padding:.75rem;color:#66c2ff;text-decoration:none;border:1px solid rgba(102,194,255,.3);border-radius:8px;transition:all .3s ease}.edit-cart-link:hover{background:#66c2ff1a;border-color:#66c2ff80}@media (max-width: 1024px){.checkout-grid{grid-template-columns:1fr}.order-summary{position:static;order:-1}}@media (max-width: 768px){.checkout-container{padding:1rem}.checkout-form{padding:1.5rem}.form-row{grid-template-columns:1fr}.summary-item{grid-template-columns:50px 1fr}.summary-item-price{grid-column:2;text-align:right;margin-top:.5rem}}
