.checkout-layout{display:grid;grid-template-columns:1.4fr 1fr;gap:var(--space-4);align-items:flex-start}@media(max-width:880px){.checkout-layout{grid-template-columns:1fr}}.checkout-form{display:flex;flex-direction:column;gap:var(--space-3)}.checkout-section{border:1px solid var(--color-border);border-radius:var(--radius);padding:var(--space-3);background:var(--color-card);margin:0}.checkout-section legend{font-family:var(--font-heading);font-size:1.05rem;font-weight:600;padding:0 .5rem;color:var(--color-text)}.checkout-section__hint{margin:0 0 var(--space-2);font-size:.88rem;color:var(--color-text-muted)}.checkout-field{display:block;font-size:.85rem;font-weight:600;color:var(--color-text)}.checkout-field input,.checkout-field select,.checkout-field textarea{margin-top:.4em;width:100%;padding:.7em .85em;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg);font:inherit;font-weight:400;font-size:.95rem;color:var(--color-text);box-sizing:border-box}.checkout-field input:focus,.checkout-field select:focus,.checkout-field textarea:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 3px var(--color-accent-soft)}.checkout-field textarea{resize:vertical;font-family:inherit}.checkout-consent{display:flex;align-items:flex-start;gap:.7rem;font-size:.9rem;line-height:1.5;color:var(--color-text);background:var(--color-surface);padding:var(--space-2);border-radius:var(--radius-sm)}.checkout-consent input{flex-shrink:0;margin-top:.25em;width:18px;height:18px}.error-box{padding:12px 14px;background:#fee2e2;border:1px solid #fca5a5;color:#b91c1c;border-radius:var(--radius-sm);font-size:.92rem}.checkout-submit{align-self:flex-start}.checkout-summary{position:sticky;top:90px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-3)}.checkout-summary h3{margin:0 0 var(--space-2);font-size:1rem}.summary-items{list-style:none;padding:0;margin:0 0 var(--space-2);display:flex;flex-direction:column;gap:.7rem}.summary-items li{display:flex;justify-content:space-between;gap:var(--space-2);align-items:flex-start;padding-bottom:.7rem;border-bottom:1px solid var(--color-border);font-size:.92rem}.summary-items li:last-child{border-bottom:0;padding-bottom:0}.summary-item__title{display:flex;flex-direction:column;gap:.2em}.summary-item__title .muted{font-size:.82rem;color:var(--color-text-muted)}.summary-item__personalization{display:block;font-size:.82rem;color:var(--color-text);line-height:1.5;margin:0}.cart-pers-item{display:inline}.cart-pers-item strong{color:var(--color-text-muted);font-weight:500;margin-right:.15em}.cart-pers-item .muted{color:var(--color-text-muted)}.cart-pers-sep{color:var(--color-border-strong);margin:0 .4em}.cart-pers-file{display:inline-flex;align-items:center;gap:.2em;padding:.05em .45em;background:var(--color-surface-alt);border:1px solid transparent;border-radius:4px;text-decoration:none;color:var(--color-text);font-size:.8rem;font-family:inherit;cursor:pointer;margin-right:.2em}.cart-pers-file--icon{padding:.05em .4em;font-size:.95rem;line-height:1}.cart-pers-file:hover{background:var(--color-accent-soft);text-decoration:none}.pers-image-modal{position:fixed;inset:0;display:none;align-items:center;justify-content:center;background:#1f1b16d9;z-index:200;padding:1rem;backdrop-filter:blur(2px)}.pers-image-modal.is-open{display:flex}.pers-image-modal__close{position:absolute;top:1rem;right:1rem;width:44px;height:44px;border:0;border-radius:999px;background:#ffffffeb;color:var(--color-text);font-size:1.6rem;line-height:1;cursor:pointer}.pers-image-modal__close:hover{background:#fff}.pers-image-modal__figure{margin:0;max-width:min(96vw,1100px);max-height:90vh;display:flex;flex-direction:column;align-items:center;gap:.8rem}.pers-image-modal__figure img{max-width:100%;max-height:80vh;object-fit:contain;border-radius:8px;box-shadow:0 24px 48px #0006;background:#fff}.pers-image-modal__figure figcaption{color:#ffffffeb;font-size:.95rem;text-align:center}.summary-item__total{font-weight:600;white-space:nowrap}.summary-subtotal,.summary-shipping{display:flex;justify-content:space-between;align-items:baseline;gap:var(--space-2);padding:.4em 0;font-size:.92rem;color:var(--color-text-muted)}.summary-shipping small{color:var(--color-text-muted);font-weight:500}.summary-total{display:flex;justify-content:space-between;align-items:baseline;padding-top:var(--space-2);border-top:2px solid var(--color-border-strong);font-family:var(--font-heading);font-size:1.2rem}.summary-total strong{color:var(--color-accent)}.shipping-methods{display:flex;flex-direction:column;gap:.6rem}.shipping-method{display:flex;align-items:center;gap:.85rem;padding:.8em 1em;background:var(--color-bg);border:1.5px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer;transition:all .15s ease}.shipping-method:hover{border-color:var(--color-accent-soft)}.shipping-method.is-selected{background:#fff;border-color:var(--color-accent);box-shadow:0 0 0 3px var(--color-accent-soft)}.shipping-method input[type=radio]{flex-shrink:0;accent-color:var(--color-accent)}.shipping-method__body{flex:1;display:flex;flex-direction:column;gap:.15em;min-width:0}.shipping-method__name{font-weight:600;color:var(--color-text)}.shipping-method__meta{font-size:.82rem;color:var(--color-text-muted)}.shipping-method__branch-btn{align-self:flex-start;margin-top:.35rem;padding:.45em .7em;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-text);font:inherit;font-size:.82rem;font-weight:600;cursor:pointer}.shipping-method__branch-btn:hover{border-color:var(--color-accent);color:var(--color-accent)}.shipping-method__price{font-family:var(--font-heading);font-weight:600;font-size:1.05rem;color:var(--color-accent);white-space:nowrap}.checkout-section__loading{font-size:.92rem;color:var(--color-text-muted);padding:.7em 0}.checkout-section__error{padding:.85em 1em;background:#fee2e2;border:1px solid #fca5a5;color:#b91c1c;border-radius:var(--radius-sm);font-size:.9rem}.checkout-summary__edit{display:inline-block;margin-top:var(--space-2);font-size:.85rem;color:var(--color-text-muted)}.cart-empty{text-align:center;background:var(--color-surface);padding:var(--space-6) var(--space-4);border-radius:var(--radius-lg)}
