.checkout-card{background:#fff;border-radius:1rem;padding:2rem;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a;border:1px solid var(--color-border)}:global(.dark) .checkout-card{background:var(--color-darkmode-body);border-color:var(--color-darkmode-border)}.checkout-header{margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:1px solid var(--color-border)}.checkout-grid{display:grid;grid-template-columns:1fr;gap:2rem}@media(min-width:1024px){.checkout-grid{grid-template-columns:1fr 400px}}.checkout-section{margin-bottom:2rem;padding-bottom:2rem;border-bottom:1px solid var(--color-border)}.checkout-section:last-child{border-bottom:none}.checkout-section__title{font-size:1.25rem;font-weight:600;margin-bottom:1rem}.form-group{margin-bottom:1rem}.form-group label{display:block;margin-bottom:.5rem;font-weight:500;font-size:.875rem}.form-group input,.form-group select,.form-group textarea{width:100%;padding:.75rem;border:1px solid var(--color-border);border-radius:.375rem;font-size:1rem}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #1e5a8d1a}.form-row{display:grid;grid-template-columns:1fr;gap:1rem}@media(min-width:640px){.form-row{grid-template-columns:1fr 1fr}}.checkbox-label{display:flex;align-items:center;gap:.5rem;cursor:pointer}.checkbox-label input[type=checkbox]{width:auto}.payment-methods{display:flex;flex-direction:column;gap:.75rem}.payment-method{display:block;padding:1rem;border:2px solid var(--color-border);border-radius:.5rem;cursor:pointer;transition:all .2s}.payment-method:has(input:checked){border-color:var(--color-primary);background-color:#1e5a8d0d}.payment-method input[type=radio]{margin-right:.75rem}.payment-method__label{display:flex;align-items:center;gap:.75rem;font-weight:500}.payment-method__icon{width:1.5rem;height:1.5rem;stroke-width:2}.payment-method__note{display:block;font-size:.75rem;font-weight:400;color:var(--color-text-light);margin-top:.25rem}.checkout-summary{background:linear-gradient(135deg,var(--color-light) 0%,white 100%);border:1px solid var(--color-border);border-radius:1rem;padding:1.5rem;height:fit-content;position:sticky;top:2rem}:global(.dark) .checkout-summary{background:linear-gradient(135deg,var(--color-darkmode-light) 0%,var(--color-darkmode-body) 100%);border-color:var(--color-darkmode-border)}@media(max-width:640px){.checkout-card{padding:1.5rem;border-radius:.75rem}}.checkout-summary__title{font-size:1.25rem;font-weight:600;margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid var(--color-border)}.checkout-summary__items{margin-bottom:1.5rem}.checkout-summary__item{display:grid;grid-template-columns:100px 1fr auto;gap:.75rem;margin-bottom:.75rem;padding-bottom:.75rem;border-bottom:1px solid var(--color-border);align-items:center}.checkout-summary__item:last-child{border-bottom:none}.checkout-summary__item img{width:100px;height:100px;object-fit:contain;border-radius:.25rem;background:var(--color-light)}.checkout-summary__item-name{font-weight:500;font-size:.875rem}.checkout-summary__item-qty{font-size:.75rem;color:var(--color-text-light);margin-top:.25rem}.checkout-summary__item-price{font-weight:600;text-align:right}.checkout-summary__banner{display:flex;align-items:center;gap:.5rem;background:#dcfce7;color:#166534;padding:.75rem 1rem;border-radius:.5rem;font-weight:600;margin-bottom:1rem}:global(.dark) .checkout-summary__banner{background:#14532d;color:#bbf7d0}.checkout-summary__progress{margin-bottom:1rem}.progress-bar{height:8px;background:var(--color-border);border-radius:4px;overflow:hidden;margin-bottom:.5rem}.progress-bar__fill{height:100%;background:var(--color-primary);border-radius:4px;transition:width .3s ease}.progress-text{font-size:.8125rem;color:var(--color-text-light);text-align:center}.checkout-summary__totals{border-top:1px solid var(--color-border);padding-top:1rem}.checkout-summary__line{display:flex;justify-content:space-between;margin-bottom:.75rem;font-size:.875rem}.checkout-summary__total{font-size:1.125rem;font-weight:700;padding-top:.75rem;border-top:1px solid var(--color-border)}.checkout-summary__note{margin-top:1rem;font-size:.75rem;color:var(--color-text-light)}.checkout-error{margin-top:1rem;padding:1rem;background-color:#fee;border:1px solid #fcc;border-radius:.375rem;color:#c33}.hidden{display:none!important}.btn-lg{padding:1rem 2rem;font-size:1.125rem}
