/* Shared type, contrast and focus treatment; existing page structure stays intact. */
body.storefront-ui {
  --ui-text: 15px;
  --ui-small: 12px;
  --ink: #252b38;
  --muted: #5b6473;
  --text-color: var(--ink);
  --muted-text: var(--muted);
  color: var(--ink);
  font-synthesis: none;
  text-rendering: optimizeLegibility;
}
html[lang="hi"] body { --font:"Noto Sans Devanagari","Be Vietnam Pro",system-ui,sans-serif; }
html[lang="zh-hans"] body { --font:"Noto Sans SC","Be Vietnam Pro",system-ui,sans-serif; }
body.storefront-ui :is(button,input,select,textarea) { font-family:var(--font); }
body.storefront-ui :is(h1,h2,h3,h4,h5,h6,.form-label,.btn) { font-weight:600; }
body.storefront-ui :is(h1,h2,h3,.auth-title) { font-weight:700; }
body.storefront-ui :is(.sa-cta,.sa-utils>.sa-cta,.btn-primary,.btn-primary:focus,.btn-primary:active) {
  color:var(--navy)!important;
  background-color:var(--gold);
  border-color:var(--gold);
}
body.storefront-ui :is(.sa-cta,.btn-primary):hover { background-color:#e4c875;border-color:#e4c875;color:var(--navy)!important; }
body.storefront-ui :is(.form-control,.form-select) { color:var(--ink); }
body.storefront-ui :is(.form-control,.form-select)::placeholder { color:#687181;opacity:1; }
body.storefront-ui .form-label { color:var(--navy);font-size:14px; }
body.storefront-ui :is(.sa-key__meta,.sa-key__rate,.sa-key__stock,.form-text) { font-size:12px; }
body.storefront-ui .sa-key__title { font-size:14px;line-height:1.5; }
body.storefront-ui .sa-key__price b { font-size:19px;font-variant-numeric:tabular-nums; }
body.storefront-ui :is(.table,.pd-description,.pd-intro) { font-size:14px;line-height:1.65; }
body.storefront-ui :is(.card,.pd-panel,.auth-card) { border-color:rgba(22,29,51,.14); }
body.storefront-ui :is(.bg-dark,.bg-primary)>.text-white { color:#fff!important; }
body.storefront-ui :is(a,button,input,select,textarea,summary):focus-visible {
  outline:3px solid #8b293a;
  outline-offset:3px;
  box-shadow:0 0 0 2px #fff;
}
body.storefront-ui .sa-hero-overlay :is(h3,p,span) { text-shadow:0 1px 3px rgba(0,0,0,.28); }
@media(max-width:767.98px) {
  body.storefront-ui { --ui-text:14px; }
  body.storefront-ui :is(input:not([type=checkbox]):not([type=radio]),textarea,select) { font-size:16px; }
  body.storefront-ui :is(.sa-key__meta,.sa-key__rate,.sa-key__stock) { font-size:11px; }
  body.storefront-ui .sa-key__title { font-size:13px; }
  body.storefront-ui .sa-key__price b { font-size:17px; }
  body.storefront-ui .sa-category-tab span { font-size:11px;line-height:1.35;white-space:normal;min-height:28px; }
}
@media(prefers-reduced-motion:reduce) {
  html { scroll-behavior:auto!important; }
  *,*::before,*::after { animation-duration:.01ms!important;transition-duration:.01ms!important;animation-iteration-count:1!important; }
}

@media(max-width:767.98px) {
  body.storefront-ui .cart-item-row { display:grid!important;grid-template-columns:56px minmax(0,1fr);gap:12px!important; }
  body.storefront-ui .cart-item-row>img { width:56px!important;height:74px!important; }
  body.storefront-ui .cart-item-row>.flex-grow-1 { min-width:0;overflow-wrap:anywhere; }
  body.storefront-ui .cart-item-actions { grid-column:1 / -1;justify-content:flex-end;flex-wrap:wrap; }
  body.storefront-ui .cart-item-actions input[name=quantity] { width:70px!important;min-height:42px; }
  body.storefront-ui .cart-item-actions .btn { min-height:42px; }
}

body.storefront-ui :is(.sa-pill--in,.sa-pill--wait,.sa-pill--gold){color:var(--navy)!important;box-shadow:none}
body.storefront-ui .sa-pill--out{color:#7a1c28!important;box-shadow:none}
body.storefront-ui .sa-pill--ok{color:#f0d78a!important;box-shadow:none}
body.storefront-ui :is(.bg-dark.text-white,.bg-dark .text-white){color:#fff!important}
