.product-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-3); }
.product-card { display: flex; flex-direction: column; align-items: stretch; min-width: 0; text-decoration: none;
  padding: var(--space-3); background: var(--color-card); border: var(--border-width) solid var(--color-divider);
  border-radius: var(--radius-card); color: var(--color-text); }
.product-card:hover { color: var(--color-text); border-color: var(--color-primary); }
.product-card .price { overflow-wrap: anywhere; }
.product-name { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; overflow: hidden;
  font-size: var(--font-body); line-height: var(--line-body); margin-bottom: var(--space-2); }
.product-image { width: 100%; aspect-ratio: 1; max-height: none; object-fit: contain; background: var(--color-card); }
.image-placeholder { display: flex; align-items: center; justify-content: center; color: var(--color-secondary);
  border: var(--border-width) dashed var(--color-divider); font-size: var(--font-helper); }
.product-hero h2 { font-size: var(--font-title); line-height: var(--line-title); }
.product-description { white-space: pre-wrap; }
.sku-option { position: relative; display: flex; align-items: center; min-height: var(--control-height); }
.sku-option input[type="radio"] { position: absolute; width: var(--space-4); height: var(--space-4); min-height: 0;
  padding: 0; left: var(--space-3); accent-color: var(--color-primary); }
.sku-option > span { width: 100%; min-width: 0; padding: var(--space-3); padding-left: var(--space-8);
  border: var(--border-width) solid var(--color-border); border-radius: var(--radius-control); }
.sku-option input:checked + span { border-color: var(--color-primary); background: var(--color-primary-soft); }
.selected-mark { display: none; }
.sku-option input:checked + span .selected-mark { display: inline; }
.sku-option input:disabled + span { background: var(--color-disabled); color: var(--color-disabled-text); }
.sku-option:focus-within > span { outline: var(--focus-width) solid var(--color-primary); outline-offset: var(--focus-offset); }
.task-content { padding-bottom: calc(var(--action-reserve) + env(safe-area-inset-bottom)); }
.action-bar { position: sticky; bottom: 0; z-index: var(--layer-actions); display: flex; flex-wrap: wrap; align-items: center;
  gap: var(--space-3); min-height: var(--action-bar-height); padding: var(--space-3);
  padding-bottom: calc(var(--space-3) + env(safe-area-inset-bottom)); margin-inline: calc(0px - var(--space-4));
  background: var(--color-card); border-top: var(--border-width) solid var(--color-divider); }
/* Sticky follows normal flow, so enlarged text and keyboards cannot hide the last field. */
@supports (position: fixed) {
  .action-bar { position: fixed; left: 50%; transform: translateX(-50%); width: 100%; max-width: var(--buyer-width); margin: 0; }
  .task-content:focus-within .action-bar { position: sticky; left: auto; transform: none; margin-inline: calc(0px - var(--space-4)); }
}
.action-bar > button { flex: 1; }
.action-bar .form { margin: 0; flex: 1; }
.action-bar .helper { margin: var(--space-1) 0 0; }
.action-bar button { min-height: var(--control-height); }
.thumbnail { display: block; width: var(--thumbnail-size); height: var(--thumbnail-size); flex: 0 0 var(--thumbnail-size);
  object-fit: contain; background: var(--color-card); }
.item-summary { display: flex; align-items: start; gap: var(--space-3); margin-bottom: var(--space-4); }
.item-summary > div { min-width: 0; }
.item-summary h3 { font-size: var(--font-body); }
.item-summary p { margin-bottom: var(--space-2); }
.image-previews { display: flex; flex-wrap: wrap; gap: var(--space-3); margin-bottom: var(--space-4); }
.sku-table th, .sku-table td { min-width: var(--sku-cell-width); }
.order-heading { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: var(--space-2); margin-bottom: var(--space-3); }
.order-heading a { min-width: 0; }
.order-heading .status-tag { flex-shrink: 0; }
.status-tabs { flex-wrap: nowrap !important; overflow-x: auto; max-width: 100%; margin-bottom: var(--space-4); }
.status-tabs a { flex: 0 0 auto; padding-inline: var(--space-3); white-space: nowrap; }
.status-tabs a[aria-current="page"] { background: var(--color-primary-soft); border-bottom: var(--focus-width) solid var(--color-primary); font-weight: var(--weight-strong); }
.status-card h2 { font-size: var(--font-order-status); line-height: var(--line-order-status); }
.amount { text-align: right; }
@media (min-width: 1024px) {
  .action-bar button { font-size: var(--font-body); line-height: var(--line-body); padding: var(--space-2) var(--space-4); }
}
.dashboard-metrics, .shipping-summary { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-3); margin-bottom: var(--space-6); }
.metric-card { display: flex; flex-direction: column; align-items: start; text-decoration: none; color: var(--color-text); gap: var(--space-3); margin: 0; }
.metric-card strong { font-size: var(--font-order-status); line-height: var(--line-order-status); color: var(--color-primary); }
.metric-card:hover { background: var(--color-primary-soft); border-color: var(--color-primary); }
.shipping-summary a { display: flex; flex-direction: column; align-items: start; gap: var(--space-2); padding: var(--space-4); text-decoration: none; background: var(--color-card); border: var(--border-width) solid var(--color-divider); border-radius: var(--radius-card); }
.shipping-summary strong { font-size: var(--font-order-status); line-height: var(--line-order-status); }
.shipping-list td { word-break: break-word; }
.shipping-list table { table-layout: fixed; }
@media (min-width: 1024px) {
  .dashboard-metrics { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .shipping-summary { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .shipping-steps { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-4); }
  .mobile-shipping-hint { display: none; }
}
@media (max-width: 767px) {
  .dashboard-metrics, .shipping-summary { grid-template-columns: 1fr; }
  .shipping-list table, .shipping-list tbody, .shipping-list tr, .shipping-list td { display: block; width: 100%; }
  .shipping-list thead { display: none; }
  .shipping-list tr { padding-block: var(--space-3); border-bottom: var(--border-width) solid var(--color-divider); }
  .shipping-list td { height: auto; min-height: var(--touch-size); border: 0; padding: var(--space-2) 0; }
  .shipping-list td::before { content: attr(data-label); display: block; color: var(--color-secondary); font-size: var(--font-helper); }
}
.admin-links a[aria-current="page"] { background: var(--color-primary-soft); border-left: var(--focus-width) solid var(--color-primary); border-radius: var(--radius-control); font-weight: var(--weight-strong); }

.tracking-number { user-select: all; font-family: ui-monospace, SFMono-Regular, Consolas, monospace; overflow-wrap: anywhere; }
.profile-totals, .profile-grid { display: grid; gap: var(--space-3); grid-template-columns: 1fr; }
.profile-totals strong { font-size: var(--font-order-status); line-height: var(--line-order-status); }
@media (min-width: 1024px) {
  .profile-totals, .profile-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

.shop-heading { padding: var(--space-4) 0; }
.shop-heading h2 { color: var(--color-primary); font-size: var(--font-title); margin-bottom: var(--space-2); }
.account-identity { background: var(--color-primary-soft); }
.account-orders { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: var(--space-1); }
.account-orders a { display: flex; flex-direction: column; justify-content: center; text-align: center;
  gap: var(--space-2); min-width: 0; padding-block: var(--space-3); text-decoration: none; }
.account-orders span { font-size: var(--font-helper); }
.account-orders strong { font-size: var(--font-price); }
.account-actions > a { display: flex; }
.support-contact p { white-space: pre-wrap; }
.product-gallery { display: flex; gap: var(--space-3); overflow-x: auto; max-width: 100%;
  scroll-snap-type: x mandatory; overscroll-behavior-x: contain; }
.product-gallery > .product-image { flex: 0 0 var(--gallery-slide-width); width: var(--gallery-slide-width);
  min-width: 0; height: auto; scroll-snap-align: start; }
.product-gallery > .product-image:only-child { flex-basis: 100%; width: 100%; }
.detail-image { display: block; width: 100%; height: auto; margin-bottom: var(--space-3); }
.buyer-nav a[aria-current="page"] { background: var(--color-primary-soft); font-weight: var(--weight-strong); }
@media (max-width: 359px) {
  .account-orders { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
