/* nola-checkout: Claude Design "Nola Kids v2" screens. Loaded after nola.css.
 * Checkout (r08, r09), gift card (r10), payment result (r11), order confirmation/detail/tracking (r12, r13),
 * printable invoice (r14), returns and size exchange (r15, r16). Every rule is scoped to .nk-ck pages. */

/* Shared building blocks */
.nk-ck .nk-alert { padding: 12px 16px; border: 1px solid var(--line); border-radius: 12px; background: var(--surface); font-size: 14px; font-weight: 600; line-height: 1.9; color: var(--ink); }
.nk-ck .nk-alert a { color: var(--accent-dark); }
.nk-ck .nk-alert.is-error { border-color: color-mix(in oklab, var(--red) 35%, var(--line)); background: color-mix(in oklab, var(--red) 8%, var(--surface)); color: var(--red); }
.nk-ck .nk-alert ul { margin: 0; padding: 0; list-style: none; }
.nk-ck .nk-panel { display: flex; flex-direction: column; gap: 14px; padding: 22px 26px; border: 1px solid var(--line); border-radius: calc(var(--r) + 6px); background: var(--surface); }
.nk-ck .nk-panel > h2, .nk-ck .nk-group > h2, .nk-ck .nk-group-head h2 { font-size: 17px; font-weight: 600; line-height: 1.6; }
.nk-ck .nk-card-box { display: flex; flex-direction: column; gap: 8px; padding: 18px 20px; border: 1px solid var(--line); border-radius: var(--r); background: var(--surface); font-size: 14px; font-weight: 600; }
.nk-ck .nk-card-box > b { font-size: 14px; }
.nk-ck .nk-card-box p, .nk-ck .nk-card-box span { color: var(--muted); line-height: 1.9; }
.nk-ck .nk-mono { font-family: ui-monospace, 'Courier New', monospace; letter-spacing: 1px; direction: ltr; unicode-bidi: isolate; }
.nk-ck .nk-pill-sm { padding: 3px 10px; font-size: 12px; }
.nk-ck .nk-status-pill { display: inline-flex; align-items: center; padding: 6px 14px; border-radius: 999px; background: var(--tint); color: var(--accent-dark); font-size: 14px; font-weight: 600; line-height: 1.4; white-space: nowrap; }
.nk-ck .nk-status-pill.is-delivered { background: color-mix(in oklab, var(--green) 12%, var(--surface)); color: var(--green); }
.nk-ck .nk-status-pill.is-cancelled { background: color-mix(in oklab, var(--red) 10%, var(--surface)); color: var(--red); }
.nk-ck .nk-field-note { font-size: 14px; font-weight: 600; line-height: 1.8; color: var(--muted); }
.nk-ck .nk-field-note.is-error { color: var(--red); }
.nk-ck .field-errors, .nk-ck .errorlist { margin: 0; padding: 0; list-style: none; font-size: 14px; font-weight: 600; color: var(--red); }
.nk-ck .form-field { display: flex; flex-direction: column; gap: 6px; min-width: 0; }
.nk-ck .form-field > label, .nk-ck .form-field legend { font-size: 14px; font-weight: 600; color: var(--muted); }
.nk-ck .form-field input:not([type=checkbox]):not([type=radio]), .nk-ck .form-field select, .nk-ck .form-field textarea {
  min-height: 48px; padding: 0 16px; border: 1px solid var(--line); border-radius: 12px; background: var(--surface); color: var(--ink); font: 600 14px/1.8 var(--font);
}
.nk-ck .form-field textarea { min-height: 76px; padding: 13px 16px; line-height: 1.9; }
.nk-ck .form-field input:focus, .nk-ck .form-field select:focus, .nk-ck .form-field textarea:focus { border-color: var(--accent-dark); outline: 0; }
.nk-ck .form-field.has-error input, .nk-ck .form-field.has-error select, .nk-ck .form-field.has-error textarea { border-color: var(--red); }
.nk-ck .checkbox-field { flex-direction: row; flex-wrap: wrap; align-items: center; gap: 10px; }
.nk-ck .checkbox-field input { width: 20px; height: 20px; min-height: 20px; margin: 0; accent-color: var(--accent-dark); }
.nk-ck .checkbox-field label { flex: 1; min-height: 44px; display: flex; align-items: center; font-size: 14px; font-weight: 600; line-height: 1.8; color: var(--ink); }
.nk-ck .checkbox-field .field-errors { flex-basis: 100%; }
.nk-ck .radio-group { margin: 0; padding: 0; border: 0; }
.nk-ck .radio-group > div, .nk-ck .radio-group ul { display: flex; flex-wrap: wrap; gap: 8px; margin: 0; padding: 0; list-style: none; }
.nk-ck .radio-group label { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; padding: 0 16px; border: 1px solid var(--line); border-radius: 999px; background: var(--surface); font-size: 14px; font-weight: 600; cursor: pointer; }
.nk-ck .radio-group label:has(input:checked) { border-color: var(--accent-dark); background: var(--tint); color: var(--accent-dark); }
.nk-ck .radio-group input { accent-color: var(--accent-dark); }
.nk-ck .help-text { font-size: 12px; font-weight: 600; color: var(--muted); }
.nk-ck .nk-actions { display: flex; flex-wrap: wrap; gap: 12px; }
.nk-ck .nk-btn.nk-btn-sm { min-height: 44px; font-size: 14px; }
.nk-ck .nk-choice-row { display: flex; align-items: center; justify-content: space-between; gap: 12px; font-size: 14px; font-weight: 600; color: var(--muted); }
.nk-ck .nk-choice-row b { color: var(--ink); }

/* Selectable cards (addresses, delivery, payment) */
.nk-ck .nk-group { display: flex; flex-direction: column; gap: 12px; }
.nk-ck .nk-group-head { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.nk-ck .nk-fieldset { display: flex; flex-direction: column; gap: 12px; min-width: 0; margin: 0; padding: 0; border: 0; }
.nk-ck .nk-choice {
  position: relative; display: flex; align-items: center; gap: 14px; padding: 18px 20px; border: 1px solid var(--line); border-radius: var(--r);
  background: var(--bg); color: var(--ink); cursor: pointer; transition: border-color .15s ease-out, background-color .15s ease-out;
}
.nk-ck a.nk-choice { align-items: flex-start; }
.nk-ck .nk-choice:hover { border-color: color-mix(in oklab, var(--accent) 45%, var(--line)); }
.nk-ck .nk-choice > input[type=radio] { position: absolute; inset: 0; width: 100%; height: 100%; margin: 0; opacity: 0; cursor: inherit; }
.nk-ck .nk-choice > input:focus-visible ~ .nk-radio { outline: 2px solid var(--accent-dark); outline-offset: 3px; }
.nk-ck .nk-choice.is-selected, .nk-ck .nk-choice:has(> input[type=radio]:checked) { padding: 17px 19px; border: 2px solid var(--accent); background: var(--surface); }
.nk-ck .nk-choice.is-static { cursor: default; }
.nk-ck .nk-radio { position: relative; display: flex; flex: none; align-items: center; justify-content: center; width: 22px; height: 22px; margin-top: 2px; border: 2px solid var(--line); border-radius: 999px; background: var(--surface); }
.nk-ck .nk-choice.is-selected .nk-radio, .nk-ck .nk-choice:has(> input[type=radio]:checked) .nk-radio { border-color: var(--btn); background: var(--btn); }
.nk-ck .nk-choice.is-selected .nk-radio::after, .nk-ck .nk-choice:has(> input[type=radio]:checked) .nk-radio::after { content: ''; width: 8px; height: 8px; border-radius: 999px; background: var(--on-accent); }
.nk-ck .nk-choice-body { display: flex; flex: 1; flex-direction: column; gap: 5px; min-width: 0; }
.nk-ck .nk-choice-body > b, .nk-ck .nk-choice-title b { font-size: 17px; font-weight: 600; line-height: 1.5; }
.nk-ck .nk-choice-title { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
.nk-ck .nk-choice-text { font-size: 14px; font-weight: 600; line-height: 1.9; color: var(--muted); }
.nk-ck .nk-choice-meta { font-size: 14px; font-weight: 600; color: var(--ink); }
.nk-ck .nk-choice-action { position: relative; z-index: 1; display: inline-flex; align-items: center; min-height: 44px; margin: -12px 0; color: var(--accent-dark); font-size: 14px; font-weight: 600; }
.nk-ck .nk-choice-price { flex: none; font-size: 14px; font-weight: 600; white-space: nowrap; }
.nk-ck .nk-choice-price.is-free { color: var(--green); }
.nk-ck .nk-choice-add { display: flex; align-items: center; justify-content: center; gap: 8px; min-height: 52px; padding: 16px; border: 1px dashed var(--line); border-radius: var(--r); color: var(--accent-dark); font-size: 14px; font-weight: 600; }
.nk-ck .nk-choice-add:hover { background: var(--tint); }
.nk-ck .nk-slot-options { display: flex; flex-wrap: wrap; gap: 9px; padding-inline-start: 36px; }
.nk-ck .nk-slot { position: relative; cursor: pointer; }
.nk-ck .nk-slot input { position: absolute; inset: 0; width: 100%; height: 100%; margin: 0; opacity: 0; cursor: inherit; }
.nk-ck .nk-slot span { display: inline-flex; align-items: center; min-height: 44px; padding: 0 16px; border: 1px solid var(--line); border-radius: 999px; background: var(--surface); color: var(--muted); font-size: 14px; font-weight: 600; }
.nk-ck .nk-slot input:checked + span { border-color: var(--btn); background: var(--btn); color: var(--on-btn); }
.nk-ck .nk-slot input:checked + span::after { content: ' ✓'; white-space: pre; }
.nk-ck .nk-slot input:focus-visible + span { outline: 2px solid var(--accent-dark); outline-offset: 3px; }
.nk-ck .nk-address-fields { border: 1px solid var(--line); border-radius: var(--r); background: var(--surface); }
.nk-ck .nk-address-fields > summary { display: flex; align-items: center; justify-content: space-between; min-height: 52px; padding: 0 20px; font-size: 14px; font-weight: 600; list-style: none; cursor: pointer; }
.nk-ck .nk-address-fields > summary::-webkit-details-marker { display: none; }
.nk-ck .nk-address-fields > summary::after { content: '⌄'; color: var(--muted); transition: transform .15s ease-out; }
.nk-ck .nk-address-fields[open] > summary::after { transform: rotate(180deg); }
.nk-ck .nk-address-fields > .nk-field-grid { padding: 4px 20px 20px; }
.nk-ck .nk-field-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px 16px; }
.nk-ck .nk-field-grid > .form-field:has(textarea), .nk-ck .nk-field-grid > .checkbox-field, .nk-ck .nk-field-grid > button, .nk-ck .nk-field-grid > .map-tools, .nk-ck .nk-field-grid > .address-map { grid-column: 1 / -1; }
.nk-ck .nk-field-grid > button { justify-self: start; min-height: 44px; padding: 0 20px; border: 1px solid var(--line); border-radius: 999px; background: var(--surface); font-size: 14px; font-weight: 600; }

/* Checkout frame: its own secure top bar replaces the store header, as in the design */
body.nk-checkout-page .nk-announcement, body.nk-checkout-page .nk-header { display: none; }
body.nk-checkout-page .mobile-bottom-nav.nk-tabbar { display: none !important; }
body.nk-checkout-page .nk-footer-newsletter, body.nk-checkout-page .nk-footer-grid, body.nk-checkout-page .nk-footer-pay { display: none; }
body.nk-checkout-page .nk-footer { margin-top: 0; }
.nk-ck .nk-checkout-top { display: flex; align-items: center; justify-content: space-between; gap: 24px; padding: 18px var(--gutter); border-bottom: 1px solid var(--line); background: var(--surface); }
.nk-ck .nk-checkout-brand { display: flex; align-items: center; gap: 10px; color: var(--ink); }
.nk-ck .nk-checkout-brand .nk-monogram { width: 44px; height: 44px; font-size: 17px; }
.nk-ck .nk-checkout-brand b { font: 400 17px/1 var(--lat); letter-spacing: .18em; }
.nk-ck .nk-checkout-brand span:last-child { font-size: 14px; font-weight: 600; color: var(--muted); }
.nk-ck .nk-secure { min-width: 120px; font-size: 14px; font-weight: 600; color: var(--muted); text-align: left; }
.nk-ck .nk-stepper { display: flex; align-items: center; gap: 10px; font-size: 14px; font-weight: 600; }
.nk-ck .nk-step { display: flex; align-items: center; gap: 7px; min-height: 44px; color: var(--muted); }
.nk-ck .nk-step-dot { display: inline-flex; align-items: center; justify-content: center; width: 24px; height: 24px; border: 1px solid var(--line); border-radius: 999px; font-size: 14px; line-height: 1; }
.nk-ck .nk-step-line { width: 44px; height: 2px; background: var(--line); }
.nk-ck .nk-step.is-done { color: var(--green); }
.nk-ck .nk-step.is-done .nk-step-dot, .nk-ck .nk-step-line.is-done { border-color: var(--green); background: var(--green); color: #fff; }
.nk-ck .nk-step[aria-current] { color: var(--ink); }
.nk-ck .nk-step[aria-current] .nk-step-dot { border-color: var(--accent-dark); background: var(--accent-dark); color: var(--on-accent); }
.nk-ck .nk-stepper:has([data-checkout-progress="payment"][aria-current]) [data-checkout-progress="delivery"] { color: var(--green); }
.nk-ck .nk-stepper:has([data-checkout-progress="payment"][aria-current]) [data-checkout-progress="delivery"] .nk-step-dot { border-color: var(--green); background: var(--green); color: transparent; position: relative; }
.nk-ck .nk-stepper:has([data-checkout-progress="payment"][aria-current]) [data-checkout-progress="delivery"] .nk-step-dot::after { content: '✓'; position: absolute; color: #fff; }
.nk-ck .nk-stepper:has([data-checkout-progress="payment"][aria-current]) [data-step-line="payment"] { background: var(--green); }
.nk-ck .nk-when-payment { display: none; }
body.nk-checkout-page:has([data-checkout-progress="payment"][aria-current]) .nk-when-payment { display: inline; }
body.nk-checkout-page:has([data-checkout-progress="payment"][aria-current]) .nk-when-delivery { display: none; }
.nk-ck .nk-checkout { display: grid; grid-template-columns: minmax(0, 1fr) 400px; gap: 28px; align-items: start; max-width: 1440px; margin: 0 auto; padding: 32px var(--gutter) 56px; }
.nk-ck .nk-checkout-form { display: flex; flex-direction: column; gap: 24px; min-width: 0; margin: 0; padding: 0; border: 0; background: none; }
.nk-ck .nk-checkout-step { display: flex; flex-direction: column; gap: 24px; }
.nk-ck .nk-checkout-back { display: inline-flex; align-items: center; min-height: 44px; color: var(--accent-dark); font-size: 14px; font-weight: 600; }
.nk-ck .nk-pay-options { gap: 14px; }
.nk-ck .nk-pay-option { display: flex; flex-direction: column; overflow: hidden; border-radius: var(--r); }
.nk-ck .nk-pay-option:has(> .nk-choice > input:checked) { border: 2px solid var(--accent); background: var(--surface); }
.nk-ck .nk-pay-option:has(> .nk-choice > input:checked) > .nk-choice { padding: 18px 20px; border: 0; border-radius: 0; }
.nk-ck .nk-pay-icon { display: flex; flex: none; align-items: center; justify-content: center; width: 44px; height: 44px; border-radius: 12px; background: var(--soft); color: var(--muted); font: 400 17px/1 var(--lat); }
.nk-ck .nk-pay-icon .icon { width: 20px; height: 20px; }
.nk-ck .nk-pay-wallet { background: var(--tint-strong); color: var(--accent-dark); }
.nk-ck .nk-installments { display: none; flex-direction: column; gap: 14px; padding: 18px 22px; border-top: 1px dashed var(--line); background: var(--tint); }
.nk-ck .nk-pay-option:has(> .nk-choice > input:checked) > .nk-installments { display: flex; }
.nk-ck .nk-installment-plan { display: flex; flex-direction: column; gap: 14px; }
.nk-ck .nk-installment-head { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; font-size: 14px; font-weight: 600; }
.nk-ck .nk-installment-head b { font-size: 21px; font-weight: 600; }
.nk-ck .nk-installment-head b span:last-child { font-size: 14px; color: var(--muted); }
.nk-ck .nk-installment-steps { display: grid; grid-template-columns: repeat(auto-fit, minmax(96px, 1fr)); gap: 10px; }
.nk-ck .nk-installment-steps span { display: flex; flex-direction: column; align-items: center; gap: 6px; padding: 10px 6px; border: 1px solid var(--line); border-radius: 12px; background: var(--surface); font-size: 14px; font-weight: 600; text-align: center; }
.nk-ck .nk-installment-steps span b { font-size: 12px; color: var(--muted); }
.nk-ck .nk-installment-steps span.is-first { border: 1.5px solid var(--accent); }
.nk-ck .nk-installment-steps span.is-first b { color: var(--accent-dark); }
.nk-ck .nk-installment-plan p { font-size: 14px; font-weight: 600; line-height: 1.9; color: var(--muted); }
.nk-ck .nk-toggle-option input[type=checkbox] { position: absolute; inset: 0; width: 100%; height: 100%; margin: 0; opacity: 0; cursor: pointer; }
.nk-ck .nk-toggle-option .nk-switch { position: relative; flex: none; width: 46px; height: 26px; border: 1px solid var(--line); border-radius: 999px; background: var(--soft); transition: background-color .15s ease-out; }
.nk-ck .nk-toggle-option .nk-switch::after { content: ''; position: absolute; top: 2px; right: 3px; width: 19px; height: 19px; border: 1px solid var(--line); border-radius: 999px; background: var(--surface); transition: transform .15s ease-out; }
.nk-ck .nk-toggle-option:has(input:checked) { border: 2px solid var(--accent); background: var(--surface); padding: 17px 19px; }
.nk-ck .nk-toggle-option input:checked ~ .nk-switch { border-color: var(--btn); background: var(--btn); }
.nk-ck .nk-toggle-option input:checked ~ .nk-switch::after { border-color: transparent; transform: translateX(-19px); }
.nk-ck .nk-toggle-option input:focus-visible ~ .nk-switch { outline: 2px solid var(--accent-dark); outline-offset: 3px; }
.nk-ck .nk-code-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; margin-top: 6px; }
.nk-ck .nk-code-field { display: flex; flex-direction: column; gap: 9px; }
.nk-ck .nk-code-field > label, .nk-ck .nk-code-label { font-size: 14px; font-weight: 600; color: var(--ink); }
.nk-ck .nk-code-field input { height: 52px; min-height: 52px; padding: 0 14px; border: 1.5px solid var(--line); border-radius: 12px; background: var(--surface); font: 600 17px/1 ui-monospace, 'Courier New', monospace; letter-spacing: 1.5px; text-align: left; }
.nk-ck .nk-code-field.has-error input { border-color: var(--red); }
.nk-ck .nk-code-box { display: flex; align-items: center; justify-content: space-between; gap: 9px; min-height: 52px; padding: 0 6px 0 14px; border: 1.5px solid var(--line); border-radius: 12px; background: var(--surface); font-size: 14px; font-weight: 600; color: var(--muted); }
.nk-ck .nk-code-box a { display: inline-flex; align-items: center; min-height: 40px; padding: 0 16px; border-radius: 9px; background: var(--soft); color: var(--ink); }
.nk-ck .nk-code-box.is-ok { border-color: var(--green); color: var(--ink); }
.nk-ck .nk-code-box.is-ok b { color: var(--green); }
.nk-ck .nk-code-box.is-error { border-color: var(--red); }
.nk-ck .nk-consent .checkbox-field label { font-size: 14px; }
.nk-ck .nk-checkout-summary { position: sticky; top: 24px; display: flex; flex-direction: column; gap: 14px; padding: 22px; border: 1px solid var(--line); border-radius: calc(var(--r) + 6px); background: var(--surface); }
.nk-ck .nk-checkout-summary h2 { font-size: 17px; font-weight: 600; }
.nk-ck .nk-summary-items { display: flex; flex-direction: column; gap: 12px; margin: 0; padding: 0; list-style: none; }
.nk-ck .nk-summary-items li { display: flex; align-items: center; gap: 10px; }
.nk-ck .nk-summary-items img { flex: none; width: 44px; height: 52px; border-radius: 8px; background: var(--soft); object-fit: cover; }
.nk-ck .nk-summary-items li > span:not(.nk-summary-price) { display: flex; flex: 1; flex-direction: column; gap: 2px; min-width: 0; }
.nk-ck .nk-summary-items b { font-size: 14px; font-weight: 600; line-height: 1.6; }
.nk-ck .nk-summary-items small { font-size: 12px; font-weight: 600; color: var(--muted); }
.nk-ck .nk-summary-price { font-size: 14px; font-weight: 600; white-space: nowrap; }
.nk-ck .nk-summary-rows { display: flex; flex-direction: column; gap: 9px; padding-top: 12px; border-top: 1px dashed var(--line); font-size: 14px; font-weight: 600; }
.nk-ck .nk-summary-rows > div { display: flex; justify-content: space-between; gap: 12px; color: var(--muted); }
.nk-ck .nk-summary-rows > div.is-ok { color: var(--green); }
.nk-ck .nk-summary-rows .nk-summary-total { align-items: baseline; padding-top: 10px; border-top: 1px solid var(--line); color: var(--ink); }
.nk-ck .nk-summary-total b { font-size: 17px; font-weight: 600; }
.nk-ck .nk-summary-total small { font-size: 12px; color: var(--muted); }
.nk-ck .nk-checkout-controls:empty { display: none; }
.nk-ck .nk-checkout-cta { width: 100%; min-height: 52px; }
.nk-ck .nk-checkout-controls .nk-checkout-cta[hidden] { display: none; }
.nk-ck [data-checkout-submit] { display: none; }
body.nk-checkout-page:has([data-checkout-progress="payment"][aria-current]) [data-checkout-submit],
body.nk-checkout-page:not(:has([data-checkout-progress][aria-current])) [data-checkout-submit] { display: inline-flex; }
.nk-ck .nk-summary-note { font-size: 14px; font-weight: 600; line-height: 1.8; color: var(--muted); text-align: center; }

@media (max-width: 1080px) {
  .nk-ck .nk-checkout { grid-template-columns: minmax(0, 1fr) 340px; gap: 20px; }
  .nk-ck .nk-checkout-brand > span:last-child { display: none; }
}
@media (max-width: 800px) {
  .nk-ck .nk-checkout-top { display: none; }
  body.nk-checkout-page .nk-header { display: block; }
  .nk-ck .nk-checkout-bar-step { min-width: 44px; font-size: 14px; font-weight: 600; color: var(--muted); text-align: left; }
  .nk-ck .nk-checkout { display: flex; flex-direction: column; gap: 12px; padding: 16px var(--gutter) 32px; }
  .nk-ck .nk-checkout-form, .nk-ck .nk-checkout-step, .nk-ck .nk-group { gap: 12px; }
  .nk-ck .nk-group > h2, .nk-ck .nk-group-head h2 { font-size: 14px; }
  .nk-ck .nk-choice { gap: 10px; padding: 14px 16px; }
  .nk-ck .nk-choice.is-selected, .nk-ck .nk-choice:has(> input[type=radio]:checked) { padding: 13px 15px; }
  .nk-ck .nk-choice-body > b, .nk-ck .nk-choice-title b { font-size: 14px; }
  .nk-ck .nk-choice-text { font-size: 14px; }
  .nk-ck .nk-radio { width: 20px; height: 20px; }
  .nk-ck .nk-pay-icon { width: 36px; height: 36px; border-radius: 10px; }
  .nk-ck .nk-slot-options { display: grid; grid-template-columns: repeat(auto-fill, minmax(96px, 1fr)); gap: 7px; padding-inline-start: 0; }
  .nk-ck .nk-slot span { justify-content: center; width: 100%; padding: 0 8px; text-align: center; }
  .nk-ck .nk-field-grid { grid-template-columns: 1fr; }
  .nk-ck .nk-code-grid { grid-template-columns: 1fr; }
  .nk-ck .nk-installments { padding: 14px 16px; }
  .nk-ck .nk-installment-head b { font-size: 14px; }
  .nk-ck .nk-installment-steps { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 6px; }
  .nk-ck .nk-installment-steps span { padding: 6px 2px; font-size: 12px; }
  .nk-ck .nk-checkout-summary { position: static; gap: 10px; padding: 13px 16px; border-radius: var(--r); }
  .nk-ck .nk-checkout-summary > h2, .nk-ck .nk-summary-items, .nk-ck .nk-summary-rows > div:not(.nk-summary-total) { display: none; }
  .nk-ck .nk-summary-rows { padding: 0; border: 0; }
  .nk-ck .nk-summary-rows .nk-summary-total { padding: 0; border: 0; }
  .nk-ck .nk-summary-total b:first-child { font-size: 14px; }
  .nk-ck .nk-checkout-summary:has(.nk-checkout-cta) { background: none; border: 0; padding: 0; }
  .nk-ck .nk-summary-rows { padding: 13px 16px; border: 1px solid var(--line); border-radius: var(--r); background: var(--surface); }
  .nk-ck .nk-summary-note { font-size: 12px; }
}

/* Order confirmation (r12) */
.nk-ck .nk-placed { display: flex; justify-content: center; padding: 48px var(--gutter); }
.nk-ck .nk-placed-card { width: 640px; max-width: 100%; overflow: hidden; border: 1px solid var(--line); border-radius: calc(var(--r) + 8px); background: var(--surface); }
.nk-ck .nk-placed-head { display: flex; align-items: center; gap: 16px; padding: 26px 30px; border-bottom: 1px solid var(--line); background: var(--tint); }
.nk-ck .nk-placed-mark { display: flex; flex: none; align-items: center; justify-content: center; width: 54px; height: 54px; border-radius: 999px; background: var(--green); color: #fff; }
.nk-ck .nk-placed-mark .icon { width: 26px; height: 26px; stroke-width: 2.5; }
.nk-ck .nk-placed-head > span:last-child { display: flex; flex-direction: column; gap: 3px; }
.nk-ck .nk-placed-head h1 { font-size: 21px; font-weight: 600; line-height: 1.5; }
.nk-ck .nk-placed-head span span { font-size: 14px; font-weight: 600; color: var(--muted); }
.nk-ck .nk-placed-head .nk-mono { color: var(--ink); }
.nk-ck .nk-placed-body { display: flex; flex-direction: column; gap: 12px; padding: 22px 30px; }
.nk-ck .nk-line-items { display: flex; flex-direction: column; gap: 12px; margin: 0; padding: 0; list-style: none; }
.nk-ck .nk-line-items li { display: flex; align-items: center; gap: 12px; }
.nk-ck .nk-line-items li > span:nth-child(2) { display: flex; flex: 1; flex-direction: column; gap: 2px; min-width: 0; }
.nk-ck .nk-line-items b { font-size: 14px; font-weight: 600; }
.nk-ck .nk-line-items small { font-size: 12px; font-weight: 600; color: var(--muted); }
.nk-ck .nk-thumb { display: block; flex: none; width: 48px; height: 58px; overflow: hidden; border-radius: 9px; background: var(--soft); }
.nk-ck .nk-thumb img { width: 100%; height: 100%; object-fit: cover; }
.nk-ck .nk-info-pair { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; padding-top: 14px; border-top: 1px dashed var(--line); }
.nk-ck .nk-info-pair > span { display: flex; flex-direction: column; gap: 4px; padding: 13px 15px; border: 1px solid var(--line); border-radius: 12px; background: var(--bg); }
.nk-ck .nk-info-pair small { font-size: 12px; font-weight: 600; color: var(--muted); }
.nk-ck .nk-info-pair b { font-size: 14px; font-weight: 600; line-height: 1.7; }
.nk-ck .nk-placed-actions { margin-top: 6px; }
.nk-ck .nk-placed-actions .nk-btn { flex: 1; min-height: 48px; }
.nk-ck .nk-placed-body .nk-more { align-self: center; }

/* Order detail and step tracking (r13, r26, r64) */
.nk-ck .nk-order { max-width: 1440px; margin: 0 auto; padding: 0 0 56px; }
.nk-ck .nk-order-head { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 32px var(--gutter) 14px; }
.nk-ck .nk-order-head .nk-breadcrumb { margin-bottom: 5px; }
.nk-ck .nk-order-title { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; }
.nk-ck .nk-order-title h1 { font-size: 28px; font-weight: 600; line-height: 1.4; }
.nk-ck .nk-order-meta { margin-top: 5px; font-size: 14px; font-weight: 600; color: var(--muted); }
.nk-ck .nk-mobile-link { display: none; }
.nk-ck .nk-order-cancelled { display: flex; flex-direction: column; gap: 6px; margin: 14px var(--gutter) 0; padding: 18px 22px; border: 1px solid color-mix(in oklab, var(--red) 35%, var(--line)); border-radius: var(--r); background: color-mix(in oklab, var(--red) 8%, var(--surface)); font-size: 14px; font-weight: 600; line-height: 1.9; }
.nk-ck .nk-order-cancelled b { color: var(--red); }
.nk-ck .nk-track { display: flex; align-items: flex-start; margin: 14px var(--gutter) 0; padding: 28px 36px; border: 1px solid var(--line); border-radius: calc(var(--r) + 6px); background: var(--surface); list-style: none; counter-reset: none; }
.nk-ck .nk-track-step { position: relative; display: flex; flex: 1; flex-direction: column; align-items: center; gap: 8px; text-align: center; }
.nk-ck .nk-track-step + .nk-track-step::before { content: ''; position: absolute; top: 20px; right: calc(-50% + 30px); left: calc(50% + 30px); height: 3px; border-radius: 999px; background: var(--line); }
.nk-ck .nk-track-step.is-done + .nk-track-step::before { background: var(--green); }
.nk-ck .nk-track-dot { position: relative; z-index: 1; display: flex; align-items: center; justify-content: center; width: 44px; height: 44px; border: 2px dashed var(--line); border-radius: 999px; background: var(--surface); color: var(--muted); font-size: 14px; font-weight: 600; }
.nk-ck .nk-track-step.is-done .nk-track-dot { border: 0; background: var(--green); color: #fff; }
.nk-ck .nk-track-step.is-current .nk-track-dot { border: 0; background: var(--accent-dark); color: var(--on-accent); outline: 5px solid var(--tint); }
.nk-ck .nk-track-text { display: flex; flex-direction: column; align-items: center; gap: 4px; }
.nk-ck .nk-track-text b { font-size: 14px; font-weight: 600; color: var(--ink); }
.nk-ck .nk-track-step.is-next .nk-track-text b { color: var(--muted); }
.nk-ck .nk-track-step.is-current .nk-track-text b { color: var(--accent-dark); }
.nk-ck .nk-track-text small { font-size: 12px; font-weight: 600; color: var(--muted); }
.nk-ck .nk-track-box { display: flex; flex-direction: column; margin-top: 4px; padding: 10px 13px; border: 1px solid var(--line); border-radius: 12px; background: var(--bg); font-size: 14px; font-weight: 600; line-height: 1.9; color: var(--ink); }
.nk-ck .nk-track-actions { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; margin-top: 4px; }
.nk-ck .nk-track-actions:empty { display: none; }
@media (min-width: 801px) {
  .nk-ck .nk-track-box { display: block; margin: 0; padding: 0; border: 0; background: none; font-size: 12px; line-height: 1.8; color: var(--muted); }
  .nk-ck .nk-track-box span { display: block; }
  .nk-ck .nk-track-actions { display: none; }
}
.nk-ck .nk-order-grid { display: grid; grid-template-columns: minmax(0, 1fr) 400px; gap: 24px; align-items: start; padding: 20px var(--gutter) 0; }
.nk-ck .nk-order-main, .nk-ck .nk-order-side { display: flex; flex-direction: column; gap: 14px; min-width: 0; }
.nk-ck .nk-order-side .nk-btn { width: 100%; min-height: 48px; }
.nk-ck .nk-order-item { display: flex; align-items: center; gap: 14px; padding: 12px 14px; border: 1px solid var(--line); border-radius: var(--r); background: var(--bg); }
.nk-ck .nk-order-item .nk-thumb { width: 56px; height: 68px; border-radius: 10px; }
.nk-ck .nk-order-item-text { display: flex; flex: 1; flex-direction: column; gap: 3px; min-width: 0; }
.nk-ck .nk-order-item-text b, .nk-ck .nk-order-item-price { font-size: 14px; font-weight: 600; }
.nk-ck .nk-order-item-text small { font-size: 14px; font-weight: 600; color: var(--muted); }
.nk-ck .nk-order-item-price { white-space: nowrap; }
.nk-ck .nk-order-item-actions { display: flex; gap: 8px; }
.nk-ck .nk-order-item .nk-chip { min-height: 40px; cursor: pointer; font: 600 14px/1.2 var(--font); }
.nk-ck .nk-chip.is-muted { color: var(--muted); }
.nk-ck .nk-panel-text { font-size: 14px; font-weight: 600; line-height: 1.9; color: var(--muted); }
.nk-ck .nk-ok-text { font-size: 14px; font-weight: 600; color: var(--green); }
.nk-ck .nk-events { display: flex; flex-direction: column; gap: 10px; margin: 0; padding: 0; list-style: none; }
.nk-ck .nk-events li { position: relative; display: flex; flex-direction: column; gap: 2px; padding-inline-start: 18px; }
.nk-ck .nk-events li::before { content: ''; position: absolute; top: 10px; right: 0; width: 8px; height: 8px; border-radius: 999px; background: var(--accent); }
.nk-ck .nk-events b { font-size: 14px; font-weight: 600; }
.nk-ck .nk-events time { font-size: 12px; font-weight: 600; color: var(--muted); }
.nk-ck .nk-return-case { display: flex; flex-direction: column; gap: 8px; padding: 14px 16px; border: 1px solid var(--line); border-radius: var(--r); background: var(--bg); }
.nk-ck .nk-self-start { align-self: flex-start; }
.nk-ck .nk-pay-box .nk-choice-row { color: var(--muted); }
.nk-ck .nk-pay-box .nk-choice-row span { line-height: 1.8; }
.nk-ck .nk-pay-box .nk-choice-row.is-ok { color: var(--green); }
.nk-ck .nk-pay-box .nk-choice-row.is-accent { color: var(--accent-dark); }
.nk-ck .nk-pay-box .nk-pay-total { padding-top: 9px; border-top: 1px solid var(--line); color: var(--ink); }
.nk-ck .nk-pay-box .nk-pay-total small { font-size: 12px; color: var(--muted); }
.nk-ck .nk-pay-box .nk-more { min-height: 36px; }
.nk-ck .table-scroll { overflow-x: auto; }
.nk-ck .table-scroll table { width: 100%; border-collapse: collapse; font-size: 14px; font-weight: 600; }
.nk-ck .table-scroll th, .nk-ck .table-scroll td { padding: 9px 12px; border-bottom: 1px solid var(--line); text-align: right; white-space: nowrap; }
.nk-ck .table-scroll th { background: var(--soft); }
.nk-ck .nk-bar-link { display: inline-flex; align-items: center; min-width: 44px; min-height: 44px; color: var(--accent-dark); font-size: 14px; font-weight: 600; }
.nk-ck .nk-bar-status { color: var(--accent-dark) !important; }

/* Size exchange dialog (r16) */
.nk-ck dialog.nk-exchange { width: 580px; max-width: calc(100vw - 24px); padding: 0; overflow: hidden; border: 1px solid var(--line); border-radius: calc(var(--r) + 8px); background: var(--surface); }
.nk-ck dialog.nk-exchange::backdrop { background: var(--dim); }
.nk-ck .nk-exchange form { margin: 0; }
.nk-ck .nk-exchange-head { display: flex; align-items: center; justify-content: space-between; padding: 20px 26px; border-bottom: 1px solid var(--line); }
.nk-ck .nk-exchange-head h2 { font-size: 17px; font-weight: 600; }
.nk-ck .nk-exchange-close { display: flex; align-items: center; justify-content: center; width: 44px; height: 44px; border: 1px solid var(--line); border-radius: 999px; font-weight: 600; color: var(--ink); }
.nk-ck .nk-exchange-body { display: flex; flex-direction: column; gap: 16px; max-height: calc(90dvh - 90px); overflow: auto; padding: 22px 26px; }
.nk-ck .nk-order-item.is-compact .nk-thumb { width: 52px; height: 62px; }
.nk-ck .nk-soft-pill { flex: none; padding: 6px 13px; border-radius: 999px; background: var(--soft); color: var(--muted); font-size: 12px; font-weight: 600; }
.nk-ck .nk-exchange-legend { margin-bottom: 9px; padding: 0; font-size: 14px; font-weight: 600; }
.nk-ck .nk-exchange-sizes { display: grid; grid-template-columns: repeat(auto-fill, minmax(92px, 1fr)); gap: 9px; }
.nk-ck .nk-exchange-size { position: relative; cursor: pointer; }
.nk-ck .nk-exchange-size input { position: absolute; inset: 0; width: 100%; height: 100%; margin: 0; opacity: 0; cursor: inherit; }
.nk-ck .nk-exchange-size span { display: flex; flex-direction: column; align-items: center; justify-content: center; min-height: 48px; padding: 4px 6px; border: 1px solid var(--line); border-radius: 12px; background: var(--surface); text-align: center; }
.nk-ck .nk-exchange-size b { font-size: 14px; font-weight: 600; }
.nk-ck .nk-exchange-size small { font-size: 12px; font-weight: 600; color: var(--muted); }
.nk-ck .nk-exchange-size input:disabled + span { border-style: dashed; background: var(--soft); color: var(--muted); cursor: not-allowed; }
.nk-ck .nk-exchange-size input:disabled:not([value]) + span b, .nk-ck .nk-exchange-size input:disabled + span b { text-decoration: none; }
.nk-ck .nk-exchange-size input:checked + span { border-color: var(--btn); background: var(--btn); color: var(--on-btn); }
.nk-ck .nk-exchange-size input:checked + span small { color: var(--on-accent); }
.nk-ck .nk-exchange-size input:checked + span b::after { content: ' ✓'; }
.nk-ck .nk-exchange-size input:focus-visible + span { outline: 2px solid var(--accent-dark); outline-offset: 3px; }
.nk-ck .nk-exchange-note { padding: 14px 17px; border-radius: var(--r); background: var(--tint); font-size: 14px; font-weight: 600; line-height: 2; }
.nk-ck .nk-exchange-confirm { display: flex; align-items: center; gap: 10px; min-height: 44px; font-size: 14px; font-weight: 600; cursor: pointer; }
.nk-ck .nk-exchange-confirm input { width: 20px; height: 20px; min-height: 20px; accent-color: var(--accent-dark); }
.nk-ck .nk-exchange-submit { flex: 1; min-height: 50px; }

@media (max-width: 1080px) {
  .nk-ck .nk-order-grid { grid-template-columns: minmax(0, 1fr) 320px; }
  .nk-ck .nk-order-item { flex-wrap: wrap; }
  .nk-ck .nk-order-item-actions { width: 100%; padding-inline-start: 70px; }
}
@media (max-width: 800px) {
  .nk-ck .nk-placed { padding: 16px var(--gutter) 32px; }
  .nk-ck .nk-placed-head { padding: 18px; }
  .nk-ck .nk-placed-head h1 { font-size: 17px; }
  .nk-ck .nk-placed-body { padding: 16px 18px; }
  .nk-ck .nk-info-pair { grid-template-columns: 1fr; }
  .nk-ck .nk-placed-actions { flex-direction: column; }
  .nk-ck .nk-order-head { display: none; }
  .nk-ck .nk-desktop-link { display: none; }
  .nk-ck .nk-mobile-link { display: inline-flex; }
  .nk-ck .nk-order { padding: 14px 0 26px; }
  .nk-ck .nk-order-cancelled { margin: 0 var(--gutter); }
  .nk-ck .nk-track { flex-direction: column; margin: 0 var(--gutter); padding: 16px; border-radius: calc(var(--r) + 4px); }
  .nk-ck .nk-track-step { flex-direction: row; align-items: flex-start; gap: 12px; padding-bottom: 16px; text-align: right; }
  .nk-ck .nk-track-step:last-child { padding-bottom: 0; }
  .nk-ck .nk-track-step + .nk-track-step::before { display: none; }
  .nk-ck .nk-track-step:not(:last-child)::after { content: ''; position: absolute; top: 34px; right: 15px; bottom: 0; width: 2px; background: var(--line); }
  .nk-ck .nk-track-step.is-done:not(:last-child)::after { background: var(--green); }
  .nk-ck .nk-track-dot { flex: none; width: 32px; height: 32px; }
  .nk-ck .nk-track-step.is-current .nk-track-dot { outline-width: 4px; }
  .nk-ck .nk-track-text { flex: 1; align-items: flex-start; padding-top: 4px; }
  .nk-ck .nk-track-text small { font-size: 12px; }
  .nk-ck .nk-track-actions { justify-content: flex-start; }
  .nk-ck .nk-track-actions .nk-btn { flex: 1; min-height: 44px; }
  .nk-ck .nk-order-grid { display: flex; flex-direction: column; align-items: stretch; gap: 12px; padding: 12px var(--gutter) 0; }
  .nk-ck .nk-order-main, .nk-ck .nk-order-side { display: contents; }
  .nk-ck .nk-order-main > *, .nk-ck .nk-order-side > * { order: 5; }
  .nk-ck .nk-order-main > section[aria-labelledby="order-items-title"] { order: 1; }
  .nk-ck .nk-order-side > section[aria-labelledby="address-title"] { order: 2; }
  .nk-ck .nk-order-side > section[aria-labelledby="pay-title"] { order: 3; }
  .nk-ck .nk-order-side > .nk-btn { order: 4; }
  .nk-ck .nk-order-main > section[aria-labelledby="shipment-title"], .nk-ck .nk-order-main > section[aria-labelledby="events-title"] { order: 6; }
  .nk-ck .nk-order-side > form { order: 7; }
  .nk-ck .nk-panel { padding: 16px; border-radius: calc(var(--r) + 4px); }
  .nk-ck .nk-panel > h2 { font-size: 14px; }
  .nk-ck .nk-order-item { padding: 9px 11px; background: var(--surface); }
  .nk-ck .nk-order-item .nk-thumb { width: 42px; height: 50px; border-radius: 8px; }
  .nk-ck .nk-order-item-text small { font-size: 12px; }
  .nk-ck .nk-order-item-actions { padding-inline-start: 0; }
  .nk-ck .nk-order-item-actions .nk-chip { flex: 1; justify-content: center; }
  .nk-ck .nk-card-box { padding: 16px; border-radius: calc(var(--r) + 4px); }
  .nk-ck .nk-exchange-head, .nk-ck .nk-exchange-body { padding-inline: 18px; }
}

/* Public tracking lookup */
.nk-ck .nk-tracking { display: flex; flex-direction: column; gap: 16px; width: 640px; max-width: 100%; margin: 0 auto; padding: 48px var(--gutter) 56px; }
.nk-ck .nk-tracking-head h1 { font-size: 28px; font-weight: 600; line-height: 1.4; }
.nk-ck .nk-tracking-head p { margin-top: 6px; font-size: 14px; font-weight: 600; color: var(--muted); }
.nk-ck .nk-tracking-form { gap: 16px; }
@media (max-width: 800px) {
  .nk-ck .nk-tracking { padding: 16px var(--gutter) 32px; }
  .nk-ck .nk-tracking-head { display: none; }
}

/* Printable invoice (r14): paper colours stay fixed regardless of site theme */
.nk-ck .nk-invoice-wrap { display: flex; flex-direction: column; align-items: center; gap: 16px; padding: 32px var(--gutter) 56px; }
.nk-ck .nk-invoice-tools { display: flex; align-items: center; justify-content: space-between; gap: 12px; width: 820px; max-width: 100%; }
.nk-ck .nk-invoice-tools .icon { width: 18px; height: 18px; }
.nk-ck .nk-invoice {
  display: flex; flex-direction: column; gap: 24px; width: 820px; max-width: 100%; padding: 52px 56px; border: 1px solid #e8e2d6; border-radius: 8px;
  background: #fff; color: #231d15; font-size: 14px; font-weight: 600;
}
.nk-ck .nk-invoice-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 16px; padding-bottom: 20px; border-bottom: 2.5px solid #231d15; }
.nk-ck .nk-invoice-brand { display: flex; align-items: center; gap: 12px; }
.nk-ck .nk-invoice-brand .nk-monogram { width: 44px; height: 44px; border-color: #a8781a; color: #7f5a0d; font-size: 21px; }
.nk-ck .nk-invoice-brand > span:last-child { display: flex; flex-direction: column; }
.nk-ck .nk-invoice-brand b { font: 400 17px/1.4 var(--lat); letter-spacing: .16em; }
.nk-ck .nk-invoice-brand small { font-size: 12px; font-weight: 600; color: #6f6352; }
.nk-ck .nk-invoice-id { display: flex; flex-direction: column; align-items: flex-end; gap: 4px; text-align: left; }
.nk-ck .nk-invoice-id h1 { font-size: 17px; font-weight: 600; }
.nk-ck .nk-invoice-id span { font-size: 14px; color: #6f6352; }
.nk-ck .nk-invoice-id .nk-mono { color: #231d15; }
.nk-ck .nk-invoice-parties { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.nk-ck .nk-invoice-parties section { display: flex; flex-direction: column; gap: 6px; padding: 14px 18px; border: 1px solid #e3ddd0; border-radius: 10px; }
.nk-ck .nk-invoice-parties h2 { font-size: 14px; font-weight: 600; color: #6f6352; }
.nk-ck .nk-invoice-parties p { line-height: 2; }
.nk-ck .nk-invoice-table { overflow-x: auto; border: 1px solid #e3ddd0; border-radius: 10px; }
.nk-ck .nk-invoice-table table { width: 100%; border-collapse: collapse; font-size: 14px; font-weight: 600; }
.nk-ck .nk-invoice-table th, .nk-ck .nk-invoice-table td { padding: 11px 12px; text-align: right; }
.nk-ck .nk-invoice-table th { background: #f6f1e7; white-space: nowrap; }
.nk-ck .nk-invoice-table td { border-top: 1px solid #eee7d9; }
.nk-ck .nk-invoice-table tbody tr:nth-child(even) { background: #fcfaf5; }
.nk-ck .nk-invoice-table td:nth-child(n+3) { white-space: nowrap; }
.nk-ck .nk-invoice-foot { display: flex; align-items: flex-end; justify-content: space-between; gap: 24px; }
.nk-ck .nk-invoice-notes { display: flex; flex: 1; flex-direction: column; gap: 16px; min-width: 0; }
.nk-ck .nk-invoice-notes p { line-height: 2; color: #6f6352; }
.nk-ck .nk-invoice-signs { display: flex; gap: 40px; }
.nk-ck .nk-invoice-signs span { display: flex; flex-direction: column; align-items: center; gap: 24px; color: #6f6352; }
.nk-ck .nk-invoice-signs i { display: block; width: 110px; height: 74px; border: 1.5px dashed #d8d0bf; border-radius: 12px; }
.nk-ck .nk-invoice-totals { display: flex; flex: none; flex-direction: column; gap: 9px; width: 300px; padding: 16px 18px; border: 1px solid #e3ddd0; border-radius: 10px; }
.nk-ck .nk-invoice-totals > div { display: flex; justify-content: space-between; gap: 12px; color: #6f6352; }
.nk-ck .nk-invoice-totals .nk-invoice-payable { padding-top: 9px; border-top: 1.5px solid #231d15; color: #231d15; }
.nk-ck .nk-invoice-disclaimer { padding-top: 14px; border-top: 1px dashed #e3ddd0; font-size: 12px; color: #6f6352; }
@media (max-width: 800px) {
  .nk-ck .nk-invoice-wrap { padding: 16px var(--gutter) 32px; }
  .nk-ck .nk-invoice { padding: 22px 18px; }
  .nk-ck .nk-invoice-head, .nk-ck .nk-invoice-foot { flex-direction: column; align-items: stretch; }
  .nk-ck .nk-invoice-id { align-items: flex-start; text-align: right; }
  .nk-ck .nk-invoice-parties { grid-template-columns: 1fr; }
  .nk-ck .nk-invoice-totals { width: auto; }
}
@media print {
  body.nk-invoice-page { background: #fff; }
  body.nk-invoice-page .nk-announcement, body.nk-invoice-page .nk-header, body.nk-invoice-page .nk-page-bar,
  body.nk-invoice-page .site-footer, body.nk-invoice-page .mobile-bottom-nav, body.nk-invoice-page .messages,
  body.nk-invoice-page .nk-invoice-tools, body.nk-invoice-page .cookie-choice { display: none !important; }
  .nk-ck .nk-invoice-wrap { padding: 0; }
  .nk-ck .nk-invoice { width: 100%; padding: 0; border: 0; }
  @page { size: A4; margin: 14mm; }
}

/* Returns (r15) */
.nk-ck .nk-return { max-width: 1440px; margin: 0 auto; padding-bottom: 56px; }
.nk-ck .nk-return-alert { margin: 0 var(--gutter) 12px; }
.nk-ck .nk-return .nk-order-grid { padding-top: 16px; }
.nk-ck .nk-return-form { display: flex; flex-direction: column; gap: 24px; min-width: 0; }
.nk-ck .nk-kind-toggle { display: flex; flex-direction: row; gap: 6px; align-self: flex-start; padding: 5px; border: 1px solid var(--line); border-radius: 999px; background: var(--surface); }
.nk-ck .nk-kind-toggle label { position: relative; cursor: pointer; }
.nk-ck .nk-kind-toggle input { position: absolute; inset: 0; width: 100%; height: 100%; margin: 0; opacity: 0; cursor: inherit; }
.nk-ck .nk-kind-toggle span { display: inline-flex; align-items: center; min-height: 40px; padding: 0 18px; border-radius: 999px; color: var(--muted); font-size: 14px; font-weight: 600; }
.nk-ck .nk-kind-toggle input:checked + span { background: var(--ink); color: var(--bg); }
.nk-ck .nk-kind-toggle input:focus-visible + span { outline: 2px solid var(--accent-dark); outline-offset: 2px; }
.nk-ck .nk-return-item { overflow: hidden; border: 1px solid var(--line); border-radius: var(--r); background: var(--bg); }
.nk-ck .nk-return-item.is-selected { border: 2px solid var(--accent); background: var(--surface); }
.nk-ck .nk-return-item.has-error { border-color: var(--red); }
.nk-ck .nk-return-pick { position: relative; display: flex; align-items: center; gap: 13px; padding: 14px 16px; cursor: pointer; }
.nk-ck .nk-return-pick input { position: absolute; inset: 0; width: 100%; height: 100%; margin: 0; opacity: 0; cursor: inherit; }
.nk-ck .nk-return-pick .nk-thumb { width: 50px; height: 60px; }
.nk-ck .nk-check { display: flex; flex: none; align-items: center; justify-content: center; width: 24px; height: 24px; border: 1px solid var(--line); border-radius: 8px; background: var(--surface); color: transparent; font-size: 14px; font-weight: 600; }
.nk-ck .nk-return-pick input:checked ~ .nk-check { border-color: var(--btn); background: var(--btn); color: var(--on-btn); }
.nk-ck .nk-return-pick input:focus-visible ~ .nk-check { outline: 2px solid var(--accent-dark); outline-offset: 3px; }
.nk-ck .nk-return-details { display: grid; grid-template-columns: 110px minmax(0, 1fr); gap: 14px; padding: 0 16px 16px; }
.nk-ck [data-return-form] .nk-return-item:not(.is-selected) .nk-return-details { display: none; }
.nk-ck .nk-return-details .nk-reason-options { grid-column: 2; grid-row: 1 / span 2; }
.nk-ck .nk-reason-options legend { margin-bottom: 8px; padding: 0; font-size: 14px; font-weight: 600; color: var(--muted); }
.nk-ck .nk-reason-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.nk-ck .nk-choice.nk-reason { gap: 10px; padding: 13px 16px; border-radius: 12px; }
.nk-ck .nk-choice.nk-reason:has(input:checked) { padding: 12px 15px; }
.nk-ck .nk-reason b { font-size: 14px; font-weight: 600; }
.nk-ck .nk-reason .nk-radio { width: 20px; height: 20px; margin: 0; }
.nk-ck .nk-exchange-only { grid-column: 1 / -1; }
.nk-ck [data-kind="return"] .nk-exchange-only { display: none; }
.nk-ck [data-kind="exchange"] .nk-return-only, .nk-ck .nk-return-page:has([data-kind="exchange"]) .nk-return-only { display: none; }
body.nk-return-page:has([data-return-form][data-kind="exchange"]) .nk-return-only { display: none; }
.nk-ck .nk-upload { grid-column: 1 / -1; }
.nk-ck .nk-upload > label { display: flex; align-items: center; justify-content: center; gap: 8px; min-height: 52px; border: 1px dashed var(--line); border-radius: 12px; background: var(--bg); color: var(--muted); cursor: pointer; }
.nk-ck .nk-upload { position: relative; }
.nk-ck .nk-upload input[type=file] { position: absolute; width: 1px; height: 1px; opacity: 0; }
.nk-ck .nk-upload:focus-within > label { outline: 2px solid var(--accent-dark); outline-offset: 3px; }
.nk-ck .nk-refund-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.nk-ck .nk-choice.nk-refund { align-items: stretch; padding: 16px 18px; }
.nk-ck .nk-choice.nk-refund:has(input:checked) { padding: 15px 17px; }
.nk-ck .nk-choice.nk-refund:has(input:disabled) { cursor: not-allowed; opacity: .65; }
.nk-ck .nk-refund-body { display: flex; flex: 1; flex-direction: column; align-items: flex-start; gap: 6px; }
.nk-ck .nk-refund-body .nk-choice-row { width: 100%; }
.nk-ck .nk-refund-body b { font-size: 14px; }
.nk-ck .nk-refund .nk-radio { width: 20px; height: 20px; margin: 0; }
.nk-ck .nk-iban { max-width: 420px; }
.nk-ck .nk-return-form:not(:has([name=refund_method][value=bank]:checked)) .nk-iban { display: none; }
.nk-ck .nk-policy-list { display: flex; flex-direction: column; gap: 8px; margin: 0; padding: 13px 15px; border: 1px solid var(--line); border-radius: 12px; background: var(--bg); list-style: none; font-size: 14px; font-weight: 600; line-height: 1.8; color: var(--muted); }
.nk-ck .nk-return-summary .nk-summary-note a { color: var(--accent-dark); }
@media (max-width: 800px) {
  .nk-ck .nk-return .nk-order-grid { padding-top: 14px; }
  .nk-ck .nk-return-details { grid-template-columns: 1fr; }
  .nk-ck .nk-return-details .nk-reason-options { grid-column: auto; grid-row: auto; }
  .nk-ck .nk-reason-grid, .nk-ck .nk-refund-grid { grid-template-columns: 1fr; }
  .nk-ck .nk-kind-toggle { align-self: stretch; }
  .nk-ck .nk-kind-toggle label { flex: 1; }
  .nk-ck .nk-kind-toggle span { justify-content: center; width: 100%; }
  .nk-ck .nk-return-summary .nk-summary-rows > div:not(.nk-summary-total) { display: flex; }
  .nk-ck .nk-return-summary > h2 { display: block; }
}

/* Gift card (r10, r65) */
.nk-ck .nk-gift { display: grid; grid-template-columns: minmax(0, 1fr) 560px; gap: 40px; align-items: start; max-width: 1440px; margin: 0 auto; padding: 32px var(--gutter) 56px; }
.nk-ck .nk-gift-form { display: flex; flex-direction: column; gap: 24px; min-width: 0; margin: 0; }
.nk-ck .nk-gift-intro { display: flex; flex-direction: column; gap: 6px; }
.nk-ck .nk-gift-intro h1 { font-size: 40px; font-weight: 600; line-height: 1.35; }
.nk-ck .nk-gift-intro p { font-size: 17px; line-height: 1.9; color: var(--muted); }
.nk-ck .nk-gift-step, .nk-ck legend.nk-gift-step { margin-bottom: 0; padding: 0; font-size: 17px; font-weight: 600; color: var(--ink); }
.nk-ck .nk-gift-designs { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 11px; }
.nk-ck .nk-gift-design { position: relative; display: flex; flex-direction: column; gap: 6px; font-size: 14px; font-weight: 600; color: var(--muted); cursor: pointer; }
.nk-ck .nk-gift-design input { position: absolute; inset: 0; width: 100%; height: 100%; margin: 0; opacity: 0; cursor: inherit; }
.nk-ck .nk-gift-swatch { display: flex; align-items: flex-end; justify-content: flex-start; width: 120px; height: 78px; padding: 10px; border-radius: 14px; font: 400 17px/1 var(--lat); color: rgba(255, 255, 255, .92); }
.nk-ck .nk-gift-swatch i, .nk-ck .nk-gift-card i { font-style: normal; }
.nk-ck .nk-gift-design input:checked ~ .nk-gift-swatch { outline: 2.5px solid var(--accent); outline-offset: 2px; }
.nk-ck .nk-gift-design input:checked ~ span:last-child { color: var(--ink); }
.nk-ck .nk-gift-design input:focus-visible ~ .nk-gift-swatch { outline: 2.5px dashed var(--accent-dark); outline-offset: 2px; }
.nk-ck .nk-gift-swatch, .nk-ck .nk-gift-card { position: relative; overflow: hidden; isolation: isolate; }
.nk-ck .nk-gift-swatch::before, .nk-ck .nk-gift-card::before { content: ''; position: absolute; top: -30%; left: -18%; z-index: -1; width: 44%; aspect-ratio: 1; border-radius: 999px; background: var(--gift-glow); opacity: .35; }
.nk-ck .is-bloom { --gift-glow: #e8b4bc; background: linear-gradient(145deg, #5f6f47, #37412a); }
.nk-ck .is-moon { --gift-glow: #f3ecdf; background: linear-gradient(145deg, #3d2c3e, #1f1a2b); }
.nk-ck .is-birthday { --gift-glow: var(--accent); background: linear-gradient(145deg, color-mix(in oklab, var(--ink) 80%, var(--accent)), var(--ink)); }
.nk-ck .nk-gift-amounts { display: flex; flex-wrap: wrap; gap: 9px; margin-top: 11px; }
.nk-ck .nk-amount { min-height: 44px; padding: 0 22px; border: 1px solid var(--line); border-radius: 999px; background: var(--surface); color: var(--ink); font: 600 14px/1.2 var(--font); cursor: pointer; }
.nk-ck .nk-amount.is-custom { border-style: dashed; color: var(--muted); }
.nk-ck .nk-amount[aria-pressed="true"] { border-color: var(--btn); background: var(--btn); color: var(--on-btn); }
.nk-ck .nk-amount[aria-pressed="true"]::after { content: ' ✓'; }
.nk-ck .nk-gift-amount-field { max-width: 320px; }
.nk-ck [data-gift-form].is-enhanced .nk-gift-amount-field:not(.is-open):not(.has-error) { display: none; }
.nk-ck .nk-schedule-toggle { padding: 14px 16px; }
.nk-ck .nk-schedule-toggle:has(input:checked) { padding: 13px 15px; }
.nk-ck [data-gift-form].is-enhanced .nk-schedule-toggle:not(:has(input:checked)) + .nk-schedule-field { display: none; }
.nk-ck .nk-gift-submit { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; }
.nk-ck .nk-gift-submit > span { font-size: 14px; font-weight: 600; color: var(--muted); }
.nk-ck .nk-gift-side { position: sticky; top: 24px; display: flex; flex-direction: column; gap: 24px; }
.nk-ck .nk-gift-card { display: flex; flex-direction: column; gap: 24px; padding: 30px; border-radius: calc(var(--r) + 10px); color: #fffdf8; }
.nk-ck .nk-gift-card-top, .nk-ck .nk-gift-card-bottom { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.nk-ck .nk-gift-card-bottom { align-items: flex-end; }
.nk-ck .nk-gift-card-top > span { display: flex; align-items: center; gap: 10px; }
.nk-ck .nk-gift-card-top i { display: flex; align-items: center; justify-content: center; width: 38px; height: 38px; border-radius: 12px; background: rgba(255, 253, 248, .22); font: 400 17px/1 var(--lat); }
.nk-ck .nk-gift-card-top b { font-size: 17px; font-weight: 600; }
.nk-ck .nk-gift-card small { font-size: 14px; font-weight: 600; opacity: .85; }
.nk-ck .nk-gift-card-amount { display: flex; flex-direction: column; gap: 6px; }
.nk-ck .nk-gift-card-amount b { font-size: 40px; font-weight: 600; line-height: 1.2; }
.nk-ck .nk-gift-card-amount b .nk-unit { font-size: 17px; opacity: .85; }
.nk-ck .nk-gift-card-bottom > span { display: flex; flex-direction: column; gap: 4px; }
.nk-ck .nk-gift-card-bottom small { font-size: 12px; }
.nk-ck .nk-gift-card-bottom .nk-mono { font-size: 17px; font-weight: 600; letter-spacing: 2px; overflow-wrap: anywhere; }
.nk-ck .nk-gift-card-bottom > span { min-width: 0; }
.nk-ck .nk-gift-steps { display: flex; flex-direction: column; gap: 12px; margin: 0; padding: 0; list-style: none; }
.nk-ck .nk-gift-steps li { display: flex; flex-direction: column; gap: 4px; padding: 16px 20px; border: 1px solid var(--line); border-radius: var(--r); background: var(--surface); }
.nk-ck .nk-gift-steps b { font-size: 17px; font-weight: 600; }
.nk-ck .nk-gift-steps span { font-size: 14px; font-weight: 600; line-height: 1.9; color: var(--muted); }
.nk-ck .nk-copy { display: flex; gap: 9px; align-items: center; padding: 4px 4px 4px 14px; border: 1.5px solid var(--green); border-radius: 12px; background: var(--surface); }
.nk-ck .nk-copy input { flex: 1; min-width: 0; min-height: 44px; border: 0; background: none; font: 600 17px/1 ui-monospace, 'Courier New', monospace; letter-spacing: 1.5px; text-align: left; }
.nk-ck .nk-receipt-form { display: flex; flex-direction: column; gap: 14px; }
.nk-ck .nk-receipt-form .nk-btn { align-self: flex-start; }
.nk-ck .nk-gift-list { display: flex; flex-direction: column; gap: 12px; }
.nk-ck .nk-gift-list-head h1 { font-size: 28px; font-weight: 600; }
.nk-ck .nk-gift-row { display: flex; align-items: center; gap: 14px; padding: 12px 14px; border: 1px solid var(--line); border-radius: var(--r); background: var(--surface); color: var(--ink); }
.nk-ck .nk-gift-row:hover { border-color: var(--accent); }
.nk-ck .nk-gift-row .nk-gift-swatch { width: 64px; height: 42px; padding: 6px; border-radius: 9px; font-size: 14px; }
@media (max-width: 1080px) {
  .nk-ck .nk-gift { grid-template-columns: minmax(0, 1fr) 400px; gap: 24px; }
  .nk-ck .nk-gift-card-amount b { font-size: 28px; }
}
@media (max-width: 800px) {
  .nk-ck .nk-gift { display: flex; flex-direction: column-reverse; gap: 14px; padding: 16px 18px 26px; }
  .nk-ck .nk-gift-side { position: static; align-items: center; gap: 14px; }
  .nk-ck .nk-gift-card { width: 300px; max-width: 100%; aspect-ratio: 1.6; justify-content: space-between; gap: 8px; padding: 22px; border-radius: 18px; }
  .nk-ck .nk-gift-card-top b, .nk-ck .nk-gift-card-amount > small { display: none; }
  .nk-ck .nk-gift-card-amount b { font-size: 28px; }
  .nk-ck .nk-gift-card-bottom .nk-mono { font-size: 14px; letter-spacing: .14em; }
  .nk-ck .nk-gift-howto { display: none; }
  .nk-ck .nk-gift-intro { display: none; }
  .nk-ck .nk-gift-page .nk-gift-form { gap: 14px; }
  .nk-ck .nk-gift-designs { gap: 8px; }
  .nk-ck .nk-gift-swatch { width: 96px; height: 60px; }
  .nk-ck .nk-gift-amounts { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; }
  .nk-ck .nk-amount { padding: 0 6px; border-radius: 999px; }
  .nk-ck .nk-amount[aria-pressed="true"]::after { content: none; }
  .nk-ck .nk-gift-submit .nk-btn { width: 100%; min-height: 52px; }
  .nk-ck .nk-gift-submit > span { font-size: 12px; }
  body.nk-gift-page:not(:has(.nk-gift-steps)) .nk-gift-intro { display: none; }
  .nk-ck .nk-gift-steps + .nk-gift-submit, .nk-ck .nk-gift-page .nk-gift-intro { display: flex; }
}

/* Payment results (r11, r66, r67) and manual receipts */
body.nk-result-page .nk-announcement, body.nk-result-page .nk-header { display: none; }
.nk-ck .nk-result-top { display: flex; justify-content: center; padding: 18px var(--gutter); border-bottom: 1px solid var(--line); background: var(--surface); }
.nk-ck .nk-result { display: flex; justify-content: center; padding: 70px var(--gutter) 84px; }
.nk-ck .nk-result-card { display: flex; flex-direction: column; align-items: center; gap: 16px; width: 620px; max-width: 100%; padding: 44px 48px; border: 1px solid var(--line); border-radius: calc(var(--r) + 10px); background: var(--surface); text-align: center; }
.nk-ck .nk-result-mark { display: flex; align-items: center; justify-content: center; width: 88px; height: 88px; border-radius: 999px; }
.nk-ck .nk-result-mark .icon { width: 40px; height: 40px; stroke-width: 2.2; }
.nk-ck .nk-result-mark.is-ok { background: color-mix(in oklab, var(--green) 14%, var(--surface)); color: var(--green); }
.nk-ck .nk-result-mark.is-error { background: color-mix(in oklab, var(--red) 13%, var(--surface)); color: var(--red); }
.nk-ck .nk-result-mark.is-wait { background: var(--tint); color: var(--accent-dark); }
.nk-ck .nk-result-card h1 { font-size: 28px; font-weight: 600; line-height: 1.4; }
.nk-ck .nk-result-card > p { font-size: 17px; font-weight: 600; line-height: 2; color: var(--muted); }
.nk-ck .nk-result-card > p.nk-result-note { font-size: 14px; line-height: 1.9; }
.nk-ck .nk-result-error { display: flex; flex-direction: column; gap: 6px; width: 100%; padding: 16px 18px; border: 1px solid color-mix(in oklab, var(--red) 35%, var(--line)); border-radius: var(--r); background: color-mix(in oklab, var(--red) 8%, var(--surface)); text-align: right; }
.nk-ck .nk-result-error b { font-size: 14px; font-weight: 600; color: var(--red); }
.nk-ck .nk-result-error span { font-size: 14px; font-weight: 600; line-height: 2; }
.nk-ck .nk-result-facts { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; width: 100%; margin: 8px 0 0; }
.nk-ck .nk-result-facts > div { display: flex; flex-direction: column; gap: 4px; padding: 12px; border: 1px solid var(--line); border-radius: 12px; background: var(--bg); }
.nk-ck .nk-result-facts dt { font-size: 12px; font-weight: 600; color: var(--muted); }
.nk-ck .nk-result-facts dd { margin: 0; font-size: 17px; font-weight: 600; overflow-wrap: anywhere; }
.nk-ck .nk-result-actions { justify-content: center; margin-top: 10px; }
.nk-ck .nk-result-facts dd .nk-mono { font-size: 14px; }
body.nk-result-page .mobile-bottom-nav.nk-tabbar { display: none !important; }
body.nk-result-page .nk-footer-newsletter, body.nk-result-page .nk-footer-grid, body.nk-result-page .nk-footer-pay { display: none; }
body.nk-result-page .nk-footer { margin-top: 0; }
.nk-ck .nk-result-card form { margin: 0; }
.nk-ck .nk-receipt-amount { flex-direction: row; align-items: baseline; justify-content: space-between; }
.nk-ck .nk-receipt-amount b { font-size: 21px; color: var(--ink); }
.nk-ck .nk-receipt-amount small { font-size: 14px; color: var(--muted); }
@media (max-width: 800px) {
  body.nk-result-page .nk-header { display: block; }
  body.nk-result-page .nk-header .nk-header-row, body.nk-result-page .nk-header .nk-mobile-search { display: none; }
  .nk-ck .nk-result-top { display: none; }
  .nk-ck .nk-result { padding: 44px 22px 36px; }
  .nk-ck .nk-result-card { gap: 14px; padding: 0; border: 0; background: none; }
  .nk-ck .nk-result-card h1 { font-size: 21px; }
  .nk-ck .nk-result-card > p { font-size: 14px; }
  .nk-ck .nk-result-facts { grid-template-columns: 1fr; gap: 8px; }
  .nk-ck .nk-result-facts > div { flex-direction: row; align-items: center; justify-content: space-between; padding: 12px 16px; background: var(--surface); }
  .nk-ck .nk-result-facts dt { font-size: 14px; }
  .nk-ck .nk-result-actions { flex-direction: column; width: 100%; }
  .nk-ck .nk-result-actions .nk-btn { width: 100%; min-height: 50px; }
}

/* Basket peek (checkout) — phones only; desktop already has the sticky summary aside. */
.nk-ck .nk-order-peek { display: none; }
.nk-ck .nk-map-field { display: contents; }
.nk-ck .nk-map-pinned { margin: 6px 0 0; color: var(--green); font-size: 13px; font-weight: 600; }
@media (max-width: 800px) {
  .nk-ck .nk-order-peek { display: block; border: 1px solid var(--line); border-radius: var(--r); background: var(--surface); }
  .nk-ck .nk-order-peek > summary { display: flex; align-items: center; justify-content: space-between; gap: 10px; min-height: 52px; padding: 0 16px; font-size: 14px; font-weight: 600; cursor: pointer; }
  .nk-ck .nk-order-peek > summary::-webkit-details-marker { display: none; }
  /* Physical borders, not logical: in RTL the logical pair rotates the chevron sideways. */
  .nk-ck .nk-order-peek > summary::after { content: ""; flex: none; width: 8px; height: 8px; border: 2px solid var(--muted); border-top: 0; border-left: 0; transform: rotate(45deg) translateY(-2px); transition: transform .2s ease-out; }
  .nk-ck .nk-order-peek[open] > summary::after { transform: rotate(-135deg) translateY(-2px); }
  .nk-ck .nk-order-peek ul { display: flex; flex-direction: column; gap: 12px; margin: 0; padding: 4px 16px 0; list-style: none; border-top: 1px solid var(--line); }
  .nk-ck .nk-order-peek li { display: flex; align-items: center; gap: 10px; padding-top: 12px; }
  .nk-ck .nk-order-peek img { flex: none; width: 40px; height: 48px; border-radius: 8px; background: var(--soft); object-fit: cover; }
  .nk-ck .nk-order-peek li > span:not(.nk-order-peek-price) { display: flex; flex: 1; flex-direction: column; gap: 2px; min-width: 0; }
  .nk-ck .nk-order-peek b { font-size: 14px; font-weight: 600; line-height: 1.6; }
  .nk-ck .nk-order-peek small { font-size: 12px; font-weight: 600; color: var(--muted); }
  .nk-ck .nk-order-peek-price { font-size: 14px; font-weight: 600; white-space: nowrap; }
  .nk-ck .nk-order-peek-edit { display: inline-flex; align-items: center; min-height: 44px; padding: 0 16px; color: var(--accent-dark); font-size: 14px; font-weight: 600; }
}
