/* Shop: thông báo, form, đơn hàng, sổ địa chỉ, trang giỏ. Chỉ dùng biến skin. */
.kit-form label { display: block; margin-bottom: 4px; font-weight: 600; }
.kit-form input:not([type="checkbox"]), .kit-form select, .kit-form textarea { width: 100%; padding: 10px 12px; border: 1px solid var(--c-border); border-radius: var(--radius); background: var(--c-bg); color: var(--c-text); font: inherit; }
.kit-link-btn { padding: 0; border: 0; background: none; color: var(--c-primary); text-decoration: underline; font: inherit; cursor: pointer; }
.kit-inline-form { display: inline; margin-right: 12px; }
.kit-pay__qr { display: block; width: 270px; max-width: 100%; height: auto; aspect-ratio: 27 / 32; margin: 12px auto; background: var(--c-bg); }
.kit-pay__info { display: grid; grid-template-columns: max-content 1fr; gap: 6px 16px; }
.kit-pay__info dt { color: var(--c-muted); }
.kit-pay__info dd { margin: 0; overflow-wrap: anywhere; }
.kit-pay__amount, .kit-pay__code, .kit-pay__account { white-space: nowrap; }
@media (max-width: 420px) {
  .kit-pay__info { grid-template-columns: 1fr; gap: 0; }
  .kit-pay__info dd { margin-bottom: 8px; }
}
.kit-progress { display: grid; grid-template-columns: repeat(4, 1fr); gap: 4px; margin: 16px 0; padding: 0; list-style: none; counter-reset: step; }
.kit-progress li { padding-top: 10px; border-top: 4px solid var(--c-border); color: var(--c-muted); font-size: .9rem; }
.kit-progress li.is-done, .kit-progress li.is-current { border-color: var(--c-primary); color: var(--c-text); }
.kit-progress li.is-current { font-weight: 700; }
.kit-orders { width: 100%; border-collapse: collapse; }
.kit-orders th, .kit-orders td { padding: 8px; border-bottom: 1px solid var(--c-border); text-align: left; }
.kit-status { white-space: nowrap; font-weight: 600; }
.kit-addresses { margin: 0 0 16px; padding: 0; list-style: none; }
.kit-address { padding: 12px 0; border-bottom: 1px solid var(--c-border); }
.kit-badge { display: inline-block; margin: 0 12px 0 0; color: var(--c-primary); font-weight: 600; }
@media (max-width: 600px) {
  .kit-orders thead { display: none; }
  .kit-orders, .kit-orders tbody { display: block; }
  /* ô liền nhau không có khoảng trắng nên không xuống dòng được khi inline: dùng flex-wrap */
  .kit-orders tr { display: flex; flex-wrap: wrap; gap: 2px 12px; padding: 8px 0; border-bottom: 1px solid var(--c-border); }
  .kit-orders td { display: block; max-width: 100%; padding: 0; border: 0; }
  .kit-progress li { font-size: .8rem; }
}

.kit-stock-low { margin: 4px 0 12px; color: var(--c-accent); font-weight: 600; }
.kit-gallery { display: flex; flex-wrap: wrap; gap: 8px; margin: 12px 0 0; padding: 0; list-style: none; }
.kit-gallery li { margin: 0; }
.kit-gallery__thumb { display: block; padding: 0; border: 2px solid var(--c-border); border-radius: var(--radius); background: var(--c-bg); cursor: pointer; overflow: hidden; }
.kit-gallery__thumb img { display: block; width: 72px; height: 72px; object-fit: cover; }
.kit-gallery__thumb[aria-pressed="true"] { border-color: var(--c-primary); }
.kit-gallery__thumb:focus-visible { outline: 3px solid var(--c-primary); outline-offset: 2px; }

/* Trang giỏ (cart.js dựng) */
.kit-cart { min-height: 120px; }
.kit-cart__lines { margin: 0 0 16px; padding: 0; list-style: none; }
.kit-cart__line { display: grid; grid-template-columns: 72px minmax(0, 1fr); gap: 12px 16px; padding: 14px 0; border-bottom: 1px solid var(--c-border); }
.kit-cart__media { display: block; width: 72px; height: 72px; border-radius: var(--radius); background: var(--c-surface); overflow: hidden; }
.kit-cart__media img { width: 72px; height: 72px; object-fit: cover; }
.kit-cart__info { display: flex; flex-direction: column; gap: 4px; min-width: 0; }
.kit-cart__title { color: var(--c-text); font: 700 1.05rem/1.35 var(--f-head); text-decoration: none; overflow-wrap: anywhere; }
.kit-cart__price { color: var(--c-muted); font-size: .95rem; }
.kit-cart__controls { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 12px; margin-top: 4px; }
.kit-cart__qty { width: 4.5em; padding: 6px 8px; line-height: 1.3; border: 1px solid var(--c-border); border-radius: var(--radius); background: var(--c-bg); color: var(--c-text); font: inherit; }
.kit-cart__stock { order: 5; flex-basis: 100%; color: var(--c-muted); }
.kit-cart__sum { margin-left: auto; font-weight: 700; white-space: nowrap; }
.kit-cart__sold-out { color: var(--c-accent); }
.kit-cart__line.is-sold-out .kit-cart__title, .kit-cart__line.is-sold-out .kit-cart__price { color: var(--c-muted); }
.kit-cart__line.is-sold-out .kit-cart__media { opacity: .55; }
.kit-cart__foot { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px; }
.kit-cart__subtotal { margin: 0; font-size: 1.1rem; }
.kit-cart__total { font: 700 1.4rem/1.2 var(--f-head); color: var(--c-primary); }
.kit-cart__checkout { font-size: 1.05rem; padding: 12px 28px; }
.kit-cart__checkout:disabled { opacity: .55; cursor: not-allowed; }
@media (max-width: 420px) {
  .kit-cart__foot { flex-direction: column; align-items: stretch; }
  .kit-cart__checkout { width: 100%; }
}
.kit-order-lines { width: 100%; border-collapse: collapse; }
.kit-order-lines th, .kit-order-lines td { padding: 4px 8px 4px 0; border-bottom: 1px solid var(--c-border); text-align: left; overflow-wrap: anywhere; }
