/* GENERATED from app.css by scripts/port-cardquest-css.mjs — comments stripped.
   Read public/app.css for the reasoning behind every rule. */
@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/geist-latin.woff2) format("woff2")}
@font-face{font-family:"Space Grotesk";font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/space-grotesk-latin.woff2) format("woff2")}
:root {
  --bg:         #ffffff;
  --bg-page:    rgb(240, 240, 240);
  --surface:    rgb(241, 241, 241);
  --surface-2: rgb(226, 242, 255);
  --border: rgb(219, 222, 227);
  --border-2:   rgb(244, 244, 244);
  --text: rgb(11, 15, 23);
  --text-strong: rgb(10, 14, 23);
  --text-sub: rgb(93, 99, 111);
  --text-weak:   rgba(0, 0, 0, 0.4);
  --primary: rgb(0, 116, 238);
  --primary-hover: rgb(0, 86, 206);
  --psa-red:        #c8102e;
  --psa-blue:       #1b4fd8;
  --psa-ink:        #ffffff;
  --btn-secondary-bg: rgb(10, 14, 23);
  --disabled:       rgba(0, 0, 0, 0.2);
  --ok: rgb(0, 126, 70);
  --scrim:     rgba(0, 0, 0, 0.48);
  --focus:     rgba(66, 153, 225, 0.6);
  --radius-sm:   4px;
  --radius:      8px;
  --radius-full: 9999px;
  --shadow-card: 0 1px 4px rgba(0, 0, 0, 0.1);
  --shadow-box:  0 10px 15px -3px rgba(0, 0, 0, 0.1),
                 0 4px 6px -2px rgba(0, 0, 0, 0.05);
  --sp-1: 4px;
  --sp-2: 8px;
  --sp-3: 12px;
  --sp-4: 16px;
  --sp-5: 24px;
  --page: 900px;
  --hdr-h:  48px;
  --game-tabs-h: 36px;
  --chips-h: 41px;
  --t: 0.2s;
}
* { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; }
body {
  margin: 0;
  font-family: Geist, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto,
               "Helvetica Neue", Arial, sans-serif;
  font-size: 14px;
  line-height: 1.5;
  color: var(--text);
  background: var(--bg);
}
img { max-width: 100%; height: auto; }
a { color: var(--text); }
h1 { font-size: 20px; font-weight: 600; margin: var(--sp-4) 0 var(--sp-3); }
h2 { font-size: 16px; font-weight: 600; margin: var(--sp-5) 0 var(--sp-2); }
h3 { font-size: 14px; font-weight: 600; margin: var(--sp-4) 0 var(--sp-2); }
p { margin: 0 0 var(--sp-3); }
ul, ol { margin: 0 0 var(--sp-3); padding-left: var(--sp-5); }
nav ul, main > ul, section > ul, form > ul { list-style: none; padding-left: 0; }
code { font-family: ui-monospace, "Cascadia Mono", Consolas, monospace; }
.hdr {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: var(--sp-2);
  height: var(--hdr-h);
  padding: 0 var(--sp-4);
  background: var(--bg);
}
.hdr-logo {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: var(--sp-2);
  font-size: 18px;
  font-weight: 700;
  text-decoration: none;
  white-space: nowrap;
}
.logo {
  flex: 0 0 auto;
  color: var(--primary);
}
.hdr-search {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  margin: 0 0 0 auto;
}
.hdr-search-open {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  width: 32px;
  height: 32px;
  color: var(--text-strong);
  cursor: pointer;
}
.hdr-search-bar {
  position: absolute;
  top: var(--hdr-h);
  right: 0;
  left: 0;
  z-index: 1;
  height: var(--hdr-h);
  padding: var(--sp-2) var(--sp-3);
  background: var(--bg);
  box-shadow: var(--shadow-box);
  opacity: 0;
  pointer-events: none;
  transition: opacity var(--t);
}
.hdr-search:focus-within .hdr-search-bar,
.hdr-search:has(input:not(:placeholder-shown)) .hdr-search-bar {
  opacity: 1;
  pointer-events: auto;
}
.hdr-search-bar input[type="search"] {
  display: block;
  width: 100%;
  height: 32px;
  padding: 0 64px 0 var(--sp-3);
  font: inherit;
  color: var(--text);
  background: var(--bg);
  border: 1px solid var(--border);
  border-radius: var(--radius);
}
.hdr-search-bar input[type="search"]::-webkit-search-cancel-button {
  -webkit-appearance: none;
}
.hdr-search-clear,
.hdr-search-go {
  position: absolute;
  top: var(--sp-2);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  width: 32px;
  height: 32px;
  padding: 0;
  color: var(--text-strong);
  background: none;
  border: 0;
  cursor: pointer;
}
.hdr-search-go { right: var(--sp-3); }
.hdr-search-clear {
  right: calc(var(--sp-3) + 32px);
  opacity: 0;
  pointer-events: none;
  transition: opacity var(--t);
}
.hdr-search:has(input:not(:placeholder-shown)) .hdr-search-clear {
  opacity: 1;
  pointer-events: auto;
}
.hdr-actions {
  display: flex;
  align-items: center;
  gap: var(--sp-2);
  flex-wrap: wrap;
}
.btn-sm {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  height: 32px;
  padding: 0 var(--sp-4);
  font-size: 12px;
  font-weight: 700;
  line-height: 14.4px;
  text-decoration: none;
  white-space: nowrap;
  border: 1px solid transparent;
  border-radius: var(--radius);
  transition: background-color var(--t), border-color var(--t), color var(--t);
}
main {
  max-width: var(--page);
  margin: 0 auto;
  padding: var(--sp-2) var(--sp-3) var(--sp-5);
  background: var(--bg-page);
}
footer {
  display: flex;
  flex-wrap: wrap;
  gap: var(--sp-5);
  max-width: var(--page);
  margin: 0 auto;
  padding: var(--sp-5) 20px 10px;
  font-size: 12px;
  color: var(--text);
  border-top: 1px solid var(--border);
}
.btn {
  display: block;
  width: 100%;
  padding: var(--sp-3) var(--sp-4);
  font: inherit;
  font-weight: 600;
  text-align: center;
  text-decoration: none;
  border: 1px solid transparent;
  border-radius: var(--radius);
  cursor: pointer;
  transition: background-color var(--t), border-color var(--t), color var(--t);
}
.btn-primary {
  color: var(--bg);
  background: var(--primary);
  border-color: var(--primary);
}
.btn-primary:hover { background: var(--primary-hover); border-color: var(--primary-hover); }
.btn-secondary {
  color: var(--bg);
  background: var(--btn-secondary-bg);
  border-color: var(--btn-secondary-bg);
}
.btn:disabled{
  color: var(--bg);
  background: var(--disabled);
  border-color: var(--disabled);
  cursor: not-allowed;
}
.game-tabs {
  position: sticky;
  top: var(--hdr-h);
  z-index: 3;
  display: flex;
  gap: 0;
  overflow-x: auto;
  height: var(--game-tabs-h);
  background: var(--bg);
  border-bottom: 1px solid var(--border);
  scrollbar-width: none;
}
.game-tabs::-webkit-scrollbar { display: none; }
.game-tab {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  flex: 0 0 auto;
  padding: 0 var(--sp-4);
  font-size: 14px;
  font-weight: 700;
  line-height: 14px;
  color: var(--text-weak);
  text-decoration: none;
  white-space: nowrap;
  border-bottom: 3px solid transparent;
  transition: color var(--t), border-color var(--t);
}
.game-tab-on {
  color: var(--text-strong);
  border-bottom-color: var(--primary);
}
.toolbar {
  position: sticky;
  top: calc(var(--hdr-h) + var(--game-tabs-h) + var(--chips-h));
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: var(--sp-2);
  min-height: 40px;
  margin-bottom: var(--sp-3);
  padding: var(--sp-1) var(--sp-2) var(--sp-1) var(--sp-3);
  background: var(--surface);
}
.count-head {
  display: flex;
  flex-wrap: nowrap;
  overflow: hidden;
  align-items: baseline;
  gap: 2px;
  min-width: 0;
  margin: 0;
  font-size: 10px;
  font-weight: 700;
  color: var(--text-strong);
}
.count-head b {
  font-size: 12px;
  color: var(--primary);
}
.sort { position: relative; }
.sort > summary {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: var(--sp-1);
  height: 32px;
  padding: 5px 11px;
  font-size: 11px;
  font-weight: 700;
  color: var(--text-strong);
  white-space: nowrap;
  cursor: pointer;
  list-style: none;
  background: var(--bg);
  border: 1px solid var(--disabled);
  border-radius: var(--radius);
  transition: opacity var(--t);
}
.sort > summary svg { color: var(--primary); }
.sort > summary::-webkit-details-marker { display: none; }
.sort > summary::marker { content: ""; }
.sort > summary:hover { opacity: 0.8; }
.sort[open] > summary { opacity: 0.8; }
.sortmenu {
  position: absolute;
  top: 40px;
  right: 0;
  z-index: 2;
  min-width: 180px;
  margin: 0;
  padding: var(--sp-2) 0;
  list-style: none;
  background: var(--bg);
  border: 1px solid var(--border-2);
  border-radius: 6px;
  box-shadow: var(--shadow-card);
}
.sortmenu-item {
  display: block;
  padding: 6px var(--sp-3);
  font-size: 14px;
  line-height: 21px;
  color: var(--text);
  text-decoration: none;
  white-space: nowrap;
}
.sortmenu-item:hover { background: var(--border-2); }
.sortmenu-item-on { color: var(--primary); }
.btn:hover, .btn-sm:hover { opacity: 0.8; }
.btn:active, .btn-sm:active { transform: scale(0.98); }
.btn:disabled{ opacity: 0.4; }
.btn:disabled:hover{ opacity: 0.4; }
.btn:disabled:active{ transform: none; }
:focus-visible {
  outline: none;
  box-shadow: 0 0 0 3px var(--focus);
}
.grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--sp-3);
  margin: 0 0 var(--sp-4);
  padding-left: 0;
  list-style: none;
}
.game-tabs, .chips, .toolbar {
  margin-right: calc(-1 * var(--sp-3));
  margin-left: calc(-1 * var(--sp-3));
}
.tile {
  display: flex;
  flex-direction: column;
  gap: var(--sp-2);
  padding: var(--sp-2);
  background: var(--bg);
  border-radius: var(--radius);
  box-shadow: var(--shadow-card);
  min-width: 0;
}
.tile > a:not(.tile-grade) {
  display: flex;
  flex-direction: column;
  gap: var(--sp-2);
  text-decoration: none;
}
.tile-img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 5 / 7;
  object-fit: cover;
  border-radius: var(--radius-sm);
}
.tile-name {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
  font-size: 14px;
  font-weight: 700;
  line-height: 21px;
}
.tile-set {
  overflow: hidden;
  font-size: 12px;
  line-height: 18px;
  color: var(--text-sub);
  text-overflow: ellipsis;
  white-space: nowrap;
}
.tile-grade {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: var(--sp-2);
  min-width: 0;
  flex-wrap: nowrap;
  overflow: hidden;
  text-decoration: none;
}
.tile-grade-name {
  font-size: 12px;
  font-weight: 700;
  line-height: 18px;
  color: var(--text-sub);
  white-space: nowrap;
}
.tile-grade-value {
  font-size: 14px;
  font-weight: 700;
  line-height: 21px;
  color: var(--text-strong);
}
.tile-grade-state {
  overflow: hidden;
  font-size: 12px;
  line-height: 21px;
  color: var(--text-weak);
  text-align: right;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.gallery-track {
  display: flex;
  margin: 0 0 var(--sp-2);
  padding-left: 0;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  scroll-behavior: smooth;
  list-style: none;
  scrollbar-width: none;
}
.gallery-track::-webkit-scrollbar { display: none; }
@media (prefers-reduced-motion: reduce) {
  .gallery-track { scroll-behavior: auto; }
}
.gallery-item {
  flex: 0 0 100%;
  scroll-snap-align: center;
}
.gallery-item > a {
  display: block;
  max-width: 290px;
  margin: 0 auto;
}
.phero-img {
  display: block;
  width: 100%;
  aspect-ratio: 5 / 7;
  object-fit: cover;
  border-radius: var(--radius);
}
.phero-img-box { object-fit: contain; }
.gallery-thumbs {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: var(--sp-2);
  margin: 0 0 var(--sp-3);
  padding-left: 0;
  list-style: none;
}
.gallery-thumb { display: block; width: 60px; }
.gallery-thumb img {
  display: block;
  width: 100%;
  aspect-ratio: 5 / 7;
  object-fit: cover;
  border: 1px solid var(--border);
  border-radius: var(--radius-sm);
}
.gallery-zoom {
  display: none;
  position: fixed;
  inset: 0;
  z-index: 30;
  padding: var(--sp-4);
  background: var(--scrim);
}
.gallery-zoom:target {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
}
.gallery-zoom img {
  width: auto;
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
}
.gallery-zoom-close {
  position: absolute;
  top: var(--sp-4);
  right: var(--sp-4);
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  font-size: 24px;
  text-decoration: none;
  background: var(--bg);
  border-radius: var(--radius);
}
.phero-title {
  font-size: 20px;
  font-weight: 600;
  line-height: 30px;
  margin: var(--sp-3) 0 var(--sp-2);
}
.grades {
  display: flex;
  flex-direction: column;
  gap: var(--sp-1);
  max-width: 290px;
  margin: 0 0 var(--sp-3);
  padding-left: 0;
  list-style: none;
}
.grades .tile-grade {
  padding: var(--sp-2);
  border: 1px solid var(--border);
  border-radius: var(--radius-sm);
}
.grades .grade-on {
  border-color: var(--primary);
  background: var(--primary);
  color: var(--bg);
}
.grades .grade-on .tile-grade-value,
.grades .grade-on .tile-grade-state { color: inherit; }
.plaque {
  display: inline-flex;
  flex-wrap: nowrap;
  align-items: stretch;
  overflow: hidden;
  border-radius: 3px;
  font-size: 11px;
  font-weight: 700;
  line-height: 1;
  box-shadow: var(--shadow-card);
}
.plaque-mark,
.plaque-grade {
  padding: 4px 5px;
  color: var(--psa-ink);
}
.plaque-mark {
  background: var(--psa-red);
  letter-spacing: 0.08em;
}
.plaque-grade {
  background: var(--psa-blue);
  font-variant-numeric: tabular-nums;
}
.grades .grade-on .plaque-mark,
.grades .grade-on .plaque-grade { color: var(--psa-ink); }
.note { font-size: 12px; color: var(--text-sub); }
.ok { color: var(--ok); font-weight: 600; }
.rail { margin: 0 0 var(--sp-5); }
.rail-track {
  display: flex;
  gap: var(--sp-3);
  margin: 0;
  padding: 0 0 var(--sp-2);
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  list-style: none;
}
.rail-track > .tile {
  flex: 0 0 160px;
  scroll-snap-align: start;
}
.chips {
  position: sticky;
  top: calc(var(--hdr-h) + var(--game-tabs-h));
  z-index: 2;
  display: flex;
  gap: var(--sp-1);
  overflow-x: auto;
  align-items: center;
  min-height: var(--chips-h);
  padding: 0 var(--sp-2) 0 0;
  background: var(--bg);
  border-bottom: 1px solid var(--border);
  scrollbar-width: none;
}
.chips::-webkit-scrollbar { display: none; }
.chips > :first-child {
  position: relative;
  margin: 0 var(--sp-4) 0 var(--sp-3);
}
.chips > :first-child::after {
  content: "";
  position: absolute;
  top: -8px;
  right: -12px;
  bottom: -8px;
  width: 1px;
  background: var(--surface-2);
}
.chip {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  flex: 0 0 auto;
  height: 26px;
  padding: 0 7px;
  font-size: 10px;
  font-weight: 700;
  line-height: 10px;
  color: var(--text-strong);
  text-decoration: none;
  white-space: nowrap;
  background: var(--bg);
  border: 1px solid var(--text-strong);
  border-radius: var(--radius-full);
  opacity: 0.4;
  transition: opacity var(--t), background-color var(--t), color var(--t);
}
.chip-on {
  color: var(--bg);
  background: var(--text-strong);
  opacity: 1;
}
.chip-n {
  margin-left: 3px;
  font-size: 10px;
  font-weight: 700;
  opacity: 0.6;
}
.tags {
  display: flex;
  gap: var(--sp-1);
  overflow-x: auto;
  align-items: center;
  order: 1;
  flex: 1 1 200px;
  min-width: 0;
  scrollbar-width: none;
}
.tags::-webkit-scrollbar { display: none; }
.tag {
  display: flex;
  align-items: center;
  flex-wrap: nowrap;
  flex: 0 0 auto;
  height: 26px;
  padding: 0 7px;
  font-size: 10px;
  font-weight: 700;
  line-height: 10px;
  color: var(--text-strong);
  text-decoration: none;
  white-space: nowrap;
  background: var(--bg);
  border: 1px solid var(--border);
  border-radius: var(--radius-full);
  transition: background-color var(--t), color var(--t), border-color var(--t);
}
.tag-on {
  color: var(--bg);
  background: var(--primary);
  border-color: var(--primary);
}
input[type="text"], input[type="email"], input[type="tel"], input[type="password"], select, textarea {
  width: 100%;
  max-width: 420px;
  padding: var(--sp-2) var(--sp-3);
  font: inherit;
  color: var(--text);
  background: var(--bg);
  border: 1px solid var(--border);
  border-radius: var(--radius);
}
label { font-size: 14px; }
input[type="checkbox"] { width: 20px; height: 20px; accent-color: var(--primary); }
@media (min-width: 900px) {
  main {
    padding: var(--sp-2) 0 40px;
    background: var(--bg);
  }
  .game-tabs, .chips, .toolbar {
    margin-right: 0;
    margin-left: 0;
  }
  .hdr-search {
    flex: 1 1 auto;
    max-width: 360px;
    margin: 0 var(--sp-5);
  }
  .hdr-search-open { display: none; }
  .hdr-search-bar {
    position: relative;
    top: auto;
    right: auto;
    left: auto;
    width: 100%;
    height: 32px;
    padding: 0;
    background: none;
    box-shadow: none;
    opacity: 1;
    pointer-events: auto;
  }
  .hdr-search-clear, .hdr-search-go { top: 0; }
  .hdr-search-go { right: 0; }
  .hdr-search-clear { right: 32px; }
  :root { --game-tabs-h: 37px; }
  .game-tabs { align-items: flex-end; }
  .game-tab { height: 30px; }
  .toolbar { background: var(--bg); }
  .tags { order: 0; }
  .grid { grid-template-columns: repeat(5, minmax(0, 1fr)); }
  h1 { font-size: 28px; }
  .gallery-item > a { max-width: 380px; }
  .phero-title { font-size: 28px; line-height: 42px; margin-top: 0; }
}
h1, h2, h3, h4 {
  font-family: "Space Grotesk", Geist, system-ui, sans-serif;
  letter-spacing: -0.02em;
}
:root{color-scheme:light;
--background:oklch(1 0 0);
--foreground:oklch(0.17 0.018 264);
--ink:oklch(0.165 0.02 264);
--card:oklch(1 0 0);
--primary-foreground:oklch(0.99 0.01 250);
--secondary:oklch(0.971 0.014 240);
--muted-foreground:oklch(0.5 0.02 264);
--accent-foreground:oklch(0.46 0.18 258);
--destructive:oklch(0.577 0.245 27.325);
--ring:oklch(0.575 0.205 256);
--radius-md:calc(var(--radius) * 0.8);
--radius-lg:var(--radius);
--on-ink:oklch(0.985 0 0);
--on-ink-muted:oklch(0.78 0.015 264);
--svc-economy-edge:oklch(0.84 0.03 240);
--svc-insured-edge:oklch(0.72 0.12 248);
--svc-insured-wash:oklch(0.975 0.015 244);
--cover-yes:oklch(0.46 0.12 155);
--cover-no:oklch(0.50 0.10 40);
--ad-ink-ground:oklch(0.16 0.06 258);
--ad-ink-mid:oklch(0.30 0.14 232);
--ad-ink-from:oklch(0.26 0.11 248);
--ad-ink-fg:oklch(0.985 0 0);
--ad-ink-muted:oklch(0.86 0.04 232);
--ad-ink-accent:oklch(0.86 0.17 196);
--ad-brand-ground:oklch(0.19 0.13 282);
--ad-brand-mid:oklch(0.42 0.23 304);
--ad-brand-from:oklch(0.38 0.22 272);
--ad-brand-fg:oklch(0.985 0 0);
--ad-brand-muted:oklch(0.88 0.07 300);
--ad-brand-accent:oklch(0.89 0.19 88);
--ad-offer-ground:oklch(0.26 0.16 10);
--ad-offer-mid:oklch(0.52 0.24 18);
--ad-offer-from:oklch(0.46 0.23 20);
--ad-offer-fg:oklch(0.985 0 0);
--ad-offer-muted:oklch(0.90 0.07 28);
--ad-offer-accent:oklch(0.91 0.18 92);
--ad-quiet-ground:oklch(0.22 0.12 268);
--ad-quiet-mid:oklch(0.40 0.19 248);
--ad-quiet-from:oklch(0.33 0.17 258);
--ad-logo-plate:#faf9f6;
--ad-quiet-fg:oklch(0.985 0 0);
--ad-quiet-muted:oklch(0.88 0.05 248);
--ad-quiet-accent:oklch(0.90 0.18 96);
--ad-ink-lift:oklch(0.78 0.20 206/.42);
--ad-brand-lift:oklch(0.78 0.24 330/.46);
--ad-offer-lift:oklch(0.88 0.20 72/.46);
--ad-quiet-lift:oklch(0.80 0.21 222/.44);
--ad-on-dark-ornament:oklch(1 0 0/.13);
--ad-on-dark-glint:oklch(1 0 0/.17);
--ad-fig-face:oklch(1 0 0/.21);
--ad-fig-top:oklch(1 0 0/.33);
--ad-fig-mid:oklch(1 0 0/.26);
--ad-fig-dim:oklch(1 0 0/.17);
--ad-fig-mark:oklch(1 0 0/.37);
--ad-fig-line:oklch(1 0 0/.26);
--ad-fig-strike:oklch(1 0 0/.54);
--ad-fig-tick:oklch(1 0 0/.50);
--ad-rim-a:oklch(0.84 0.17 85);
--ad-rim-b:oklch(0.70 0.24 7);
--drawer-shadow:oklch(0 0 0/.45);
--ad-art-shadow:oklch(0 0 0/.55)}
*{box-sizing:border-box;border-color:var(--border)}
[hidden]{display:none!important}
html{font-family:Geist,system-ui,-apple-system,"Segoe UI",sans-serif;scroll-behavior:smooth}
body{margin:0;background:var(--background);color:var(--foreground);line-height:1.5;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;overflow-x:clip}
:root{--page:1200px}
:root{--co-col:1040px}
@media (max-width:1023px){body[data-page="pdp"]{padding-bottom:84px}}
@media (max-width:1023px){body[data-page="pdp"] .toast{bottom:84px}}
body:has(.zoom-state:checked){overflow:hidden}
body[data-page="pdp"]:has(.grade-row:nth-child(1) input:checked) .cta-grade:nth-of-type(1),
body[data-page="pdp"]:has(.grade-row:nth-child(2) input:checked) .cta-grade:nth-of-type(2),
body[data-page="pdp"]:has(.grade-row:nth-child(3) input:checked) .cta-grade:nth-of-type(3),
body[data-page="pdp"]:has(.grade-row:nth-child(4) input:checked) .cta-grade:nth-of-type(4){display:inline}
body[data-page="pdp"]:has(.grade-row:nth-child(1) input:checked) .qty-left:nth-of-type(1),
body[data-page="pdp"]:has(.grade-row:nth-child(2) input:checked) .qty-left:nth-of-type(2),
body[data-page="pdp"]:has(.grade-row:nth-child(3) input:checked) .qty-left:nth-of-type(3),
body[data-page="pdp"]:has(.grade-row:nth-child(4) input:checked) .qty-left:nth-of-type(4){display:inline}
body[data-page="pdp"]:has(.grade-row:nth-child(1) input:checked) .pick:nth-of-type(1),
body[data-page="pdp"]:has(.grade-row:nth-child(2) input:checked) .pick:nth-of-type(2),
body[data-page="pdp"]:has(.grade-row:nth-child(3) input:checked) .pick:nth-of-type(3),
body[data-page="pdp"]:has(.grade-row:nth-child(4) input:checked) .pick:nth-of-type(4){display:block}
form .btn{margin-top:12px;max-width:420px}
.btn-sm[disabled]{opacity:.55;cursor:not-allowed}
::selection{background-color:color-mix(in oklch,var(--primary) 22%,transparent)}
body > header{position:sticky;top:0;z-index:40;isolation:isolate;background:var(--background);color:var(--foreground);box-shadow:0 1px 0 var(--border)}
.logo{display:flex;align-items:center;gap:8px;font-size:1.125rem;font-weight:700;letter-spacing:-.025em;text-decoration:none;margin-right:6px;color:var(--ink);font-family:"Space Grotesk",Geist,system-ui,sans-serif}
.logo svg{display:block;width:28px;height:28px;flex:none}
.logo,.logo-w{min-width:0;overflow:hidden}
header .logo-w span{color:var(--accent-foreground)}
footer{display:block;max-width:none;border-top:0;margin-top:40px;font-size:14px;background:var(--ink);color:var(--on-ink-muted)}
footer a{color:var(--on-ink)}
footer h2,footer h3,footer strong{color:var(--on-ink)}
footer .muted{color:var(--on-ink-muted)}
.eyebrow{font-size:0.7rem;font-weight:700;text-transform:uppercase;letter-spacing:0.18em;color:var(--primary)}
.sr{position:absolute;left:-9999px}
.muted{color:var(--muted-foreground)}
.notice{border-radius:var(--radius-lg);padding:10px 12px;margin:10px 0;border:1px solid var(--border)}
.notice.err{border-color:var(--destructive);color:var(--destructive)}
.notice.ok{border-color:var(--ok);color:var(--ok)}
.ferr{display:block;color:var(--destructive);font-size:13px;margin-top:2px}
.empty{display:block;width:160px;height:160px;max-width:40vw;margin:4px auto 10px;opacity:.9}
.cart-row{display:flex;gap:10px;align-items:flex-start}
.thumb{width:56px;height:56px;object-fit:contain;border:1px solid var(--border);border-radius:var(--radius-sm)}
.qty{display:flex;gap:6px;align-items:center;margin:0}
dl.facts{display:grid;grid-template-columns:auto 1fr;gap:4px 14px;margin:0;font-size:15px}
dl.facts dt{color:var(--muted-foreground)}
table{border-collapse:collapse;width:100%;font-size:15px}
th,td{text-align:left;padding:8px 10px;border-bottom:1px solid var(--border);overflow-wrap:break-word}
.navbar-progress{position:absolute;left:0;right:0;bottom:-3px;height:3px;z-index:1;pointer-events:none;opacity:0;overflow:hidden}
.navbar-progress::after{content:"";display:block;width:0;height:100%;border-radius:0 3px 3px 0;background:linear-gradient(90deg,var(--primary),var(--accent-foreground));box-shadow:0 0 8px -1px var(--primary)}
[data-nav] .navbar-progress{opacity:1;transition:opacity .1s linear .08s}
[data-nav] .navbar-progress::after{animation:nav-fill 10s cubic-bezier(0,.6,.3,1) forwards}
@keyframes nav-fill{0%{width:0}40%{width:62%}70%{width:82%}100%{width:92%}}
[data-nav]{cursor:progress}
.nav-clicked{opacity:.55;transition:opacity .12s ease-out}
.nav-clicked.tile{transform:scale(.985);transition:opacity .12s ease-out,transform .12s ease-out}
@media (prefers-reduced-motion:reduce){
  .navbar-progress::after{animation-duration:0s;width:92%}
  [data-nav] .navbar-progress::after{animation:none;width:92%}
  .nav-clicked.tile{transform:none}
}
:where(.shop) .hdr{height:var(--hdr-h);max-width:var(--page);padding:0 12px}
:where(.shop) .bar-icon{position:relative;display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:999px;color:var(--foreground);text-decoration:none}
:where(.shop) .bar-icon:hover{background:var(--muted)}
:where(.shop) .bar-icon svg{display:block;width:22px;height:22px}
:where(.shop) .bar-cart{position:relative}
:where(.shop) .bar-cart-n{position:absolute;top:2px;right:0;min-width:16px;padding:0 3px;border-radius:999px;font-size:10px;font-weight:700;line-height:16px;text-align:center;font-variant-numeric:tabular-nums;color:var(--primary-foreground);background:var(--primary)}
:where(.shop) .bar-cart-n:empty{display:none}
:where(.shop) .flag{flex:none;width:20px;height:14px;border-radius:2px;box-shadow:0 0 0 1px rgba(0,0,0,.18)}
:where(.shop) .flag-none{color:var(--muted-foreground);box-shadow:none}
:where(.shop) .bar-market{position:relative}
:where(.shop) .bar-market>summary{display:flex;align-items:center;gap:6px;padding:0 10px;height:40px;list-style:none;cursor:pointer;font-size:13px;color:var(--foreground);border:1px solid var(--border);border-radius:999px;white-space:nowrap;transition:border-color .12s,background-color .12s}
:where(.shop) .bar-market>summary::-webkit-details-marker{display:none}
:where(.shop) .bar-market>summary:hover{background:var(--secondary)}
:where(.shop) .bar-market[open]>summary{border-color:var(--primary);background:var(--secondary)}
:where(.shop) .bar-market-k{overflow:hidden;text-overflow:ellipsis;max-width:11ch}
:where(.shop) .bar-market-chev{opacity:.6;font-size:10px;transition:transform .12s}
:where(.shop) .bar-market[open] .bar-market-chev{transform:rotate(180deg)}
:where(.shop) .bar-market-list{position:absolute;z-index:5;top:44px;right:0;display:grid;gap:2px;min-width:212px;padding:6px;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--card);box-shadow:0 10px 28px rgba(0,0,0,.14)}
:where(.shop) .bar-market-h{margin:2px 8px 6px;font-size:11px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--muted-foreground)}
:where(.shop) .bar-market-list a{display:flex;align-items:center;gap:9px;min-height:36px;padding:0 8px;border-radius:var(--radius-md);font-size:13px;color:var(--foreground);text-decoration:none}
:where(.shop) .bar-market-list a:hover{background:var(--secondary)}
:where(.shop) .bar-market-n{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
:where(.shop) .bar-market-tick{margin-left:auto;width:12px;text-align:right;font-size:12px;color:var(--primary)}
:where(.shop) .bar-market-list a[aria-current="true"]{background:var(--secondary);font-weight:600}
:where(.shop) .hdr-search-go{background:var(--primary);color:var(--primary-foreground);border-radius:var(--radius-sm)}
:where(.shop) .hdr-search-clear{color:var(--muted-foreground)}
:where(.shop) .sg{position:absolute;top:calc(100% + 4px);right:0;left:0;z-index:2;max-height:min(70vh,600px);overflow-y:auto;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-box)}
@media (max-width:899px){:where(.shop) .sg{right:var(--sp-3);left:var(--sp-3)}}
:where(.shop) .sg-row{display:flex;gap:10px;align-items:center;padding:8px 10px;color:var(--foreground);text-decoration:none}
:where(.shop) .sg-row:hover,:where(.shop) .sg-row[aria-selected="true"]{background:var(--accent)}
:where(.shop) .sg-img{flex:none;width:44px;height:44px;object-fit:contain;background:var(--muted);border-radius:var(--radius-sm)}
:where(.shop) .sg-txt{display:flex;min-width:0;flex-direction:column;gap:2px}
:where(.shop) .sg-name{overflow:hidden;font-size:13px;font-weight:600;line-height:1.3;text-overflow:ellipsis;white-space:nowrap}
:where(.shop) .sg-meta{overflow:hidden;color:var(--muted-foreground);font-size:11px;text-overflow:ellipsis;white-space:nowrap}
:where(.shop) .sg-price{flex:none;margin-left:auto;font-size:13px;font-weight:700;white-space:nowrap}
:where(.shop) .sg-all{position:sticky;bottom:0;display:block;padding:10px;color:var(--primary);font-size:13px;font-weight:600;text-align:center;text-decoration:none;background:var(--muted);border-top:1px solid var(--border)}
:where(.shop) .sg-all:hover{background:var(--accent)}
:where(.shop) .sg-none{margin:0;padding:14px 12px;color:var(--muted-foreground);font-size:13px;text-align:center}
:where(.shop) .wrap{max-width:calc(var(--page) + 24px);margin:0 auto;padding:8px 12px 40px}
:where(.shop) h1{font-size:1.75rem;font-weight:600;line-height:1.25;letter-spacing:-.02em;margin:.2em 0}
:where(.shop) h2{font-size:1.25rem;font-weight:700;line-height:1.3;letter-spacing:-.02em;margin:1.5em 0 .4em}
:where(.shop) h3{font-size:1.125rem;font-weight:700;line-height:1.35;letter-spacing:-.015em;color:var(--foreground);margin:1.2em 0 .3em}
@media (min-width:640px){:where(.shop) h2{font-size:1.5rem}:where(.shop) h3{font-size:1.25rem}}
:where(.shop) .crumbs{font-size:13px;color:var(--muted-foreground);margin-bottom:10px}
:where(.shop) .crumbs a{color:var(--muted-foreground)}
:where(.shop) ul.sects{padding-left:1.1em}
:where(.shop) img.phero-img{display:block;width:100%;height:auto;border:1px solid var(--border);border-radius:var(--radius-lg)}
:where(.shop) .gallery{min-width:0}
:where(.shop) .gallery-item>label{display:block;max-width:290px;margin:0 auto;cursor:zoom-in}
:where(.shop) .gallery-single{display:block;cursor:zoom-in}
:where(.shop) .zoom-state,:where(.shop) .sheet-state{position:fixed;top:0;left:0;width:1px;height:1px;margin:0;opacity:0;pointer-events:none}
:where(.shop) .gallery-zoom{z-index:90}
:where(.shop) .zoom-state:checked+.gallery-zoom{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;padding:calc(var(--sp-4) + env(safe-area-inset-top) + 44px + var(--sp-2)) var(--sp-4) calc(var(--sp-4) + env(safe-area-inset-bottom))}
:where(.shop) .gallery-zoom-close{top:calc(var(--sp-4) + env(safe-area-inset-top))}
:where(.shop) .gallery-zoom-scrim{position:absolute;inset:0;cursor:zoom-out}
:where(.shop) .gallery-zoom img{position:relative;object-fit:contain}
:where(.shop) .gallery-zoom img[data-fit="single"]{width:auto;height:min(100%,calc((100vw - 2 * var(--sp-4)) * 5 / 3));aspect-ratio:3/5;object-fit:cover}
:where(.shop) .gallery-zoom-close{cursor:pointer}
:where(.shop) .gallery-zoom img.zoomable{cursor:zoom-in;transition:transform .12s ease-out}
:where(.shop) .gallery-zoom img.zoomed{cursor:zoom-out;transition:none}
@media (prefers-reduced-motion:reduce){:where(.shop) .gallery-zoom img.zoomable{transition:none}}
:where(.shop) img.phero-img[data-fit="single"]{aspect-ratio:3/5;object-fit:cover}
:where(.shop) img.phero-img[data-fit="box"]{aspect-ratio:1/1;object-fit:contain}
:where(.shop) dl.facts dd{margin:0}
:where(.shop) .copy{margin-left:4px;padding:1px 8px;font-size:12px;border:1px solid var(--border);border-radius:var(--radius-full);background:var(--card);color:var(--muted-foreground);cursor:pointer}
:where(.shop) .promise{display:flex;flex-direction:column;gap:8px;margin:4px 0 0;padding:0;list-style:none;font-size:13px;line-height:1.35}
:where(.shop) .promise li{display:flex;gap:8px;align-items:flex-start}
:where(.shop) .promise svg{flex:none;width:18px;height:18px;margin-top:1px;color:var(--primary)}
:where(.shop) .promise a{margin-left:auto;padding-left:8px;white-space:nowrap;color:var(--muted-foreground)}
:where(.shop) .pdp-grid{display:grid;gap:20px 28px;grid-template-columns:minmax(0,1fr)}
:where(.shop) .pdp-grid>*{min-width:0}
@media (min-width:1024px){
  :where(.shop) .pdp-grid{grid-template-columns:minmax(0,1fr) 330px;grid-template-rows:auto auto 1fr;grid-template-areas:"media buy" "head buy" "info buy";align-items:start}
  :where(.shop) .pdp-media{grid-area:media}
  :where(.shop) .pdp-head{grid-area:head}
  :where(.shop) .pdp-info{grid-area:info}
  :where(.shop) .pdp-buy{grid-area:buy;position:sticky;top:60px}
  :where(.shop) .pdp-media{max-width:460px;margin-inline:auto}
  :where(.shop) .pdp-media:has(.phero-img[data-fit="single"]){max-width:360px}
  :where(.shop) .pdp-media .gallery-item>label{max-width:none}
}
@media (max-width:1023px){
  :where(.shop) img.phero-img[data-fit="single"]{
    aspect-ratio:3/5;object-fit:cover;object-position:center;
    max-height:min(560px,100vw - 60px);width:auto;max-width:100%;margin:0 auto
  }
  :where(.shop) .gallery-item:has(.phero-img[data-fit="single"])>label{max-width:100%}
}
:where(.shop) .by{margin:0 0 .6em;font-size:14px;color:var(--muted-foreground)}
:where(.shop) .buy{display:flex;flex-direction:column;gap:10px;margin:0;padding:14px;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--card)}
:where(.shop) .buy h2{margin:0;font-size:1.05rem}
:where(.shop) .buy .grades{max-width:none;margin:0}
:where(.shop) .grade-row{list-style:none}
:where(.shop) .grade-row .tile-grade{cursor:pointer}
:where(.shop) .grade-row input{flex:none;margin:0 2px 0 0}
:where(.shop) .grade-row:has(input:checked)>.tile-grade{border-color:var(--primary);box-shadow:inset 0 0 0 1px var(--primary);background:var(--secondary)}
:where(.shop) .grade-row:has(input:disabled)>.tile-grade{cursor:not-allowed;opacity:.55}
:where(.shop) .buy .tile-grade-value{font-size:20px;line-height:28px;font-variant-numeric:tabular-nums}
:where(.shop) .buy-cta{font-size:16px;padding:12px}
:where(.shop) .pick{display:none}
:where(.shop) .wise{font-size:13px;color:var(--muted-foreground)}
:where(.shop) .quotes{margin:0}
:where(.shop) .wise>div{padding:2px 0}
:where(.shop) .wise-head{display:flex;align-items:center;gap:7px;margin:0}
:where(.shop) .wise-mark{display:block;flex:none;width:36px;height:24px;object-fit:contain;border-radius:3px;border:1px solid var(--border);background:var(--card)}
:where(.shop) .wise-why{margin:2px 0 0;padding-left:43px;font-size:12px;line-height:1.45}
:where(.shop) .shipto-box{display:flex;flex-direction:column;gap:6px;padding:10px 12px;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--secondary)}
:where(.shop) .shipto summary{display:flex;align-items:center;gap:6px;list-style:none;cursor:pointer;font-size:14px}
:where(.shop) .shipto summary::-webkit-details-marker{display:none}
:where(.shop) .shipto-k{color:var(--muted-foreground)}
:where(.shop) .shipto-chev{margin-left:auto;opacity:.6;font-size:10px;transition:transform .12s}
:where(.shop) .shipto[open] .shipto-chev{transform:rotate(180deg)}
:where(.shop) .shipto-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin:8px 0 2px}
:where(.shop) .shipto-list a,:where(.shop) .shipto-list button{display:flex;align-items:center;gap:7px;min-height:38px;padding:0 9px;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--card);font:inherit;font-size:13px;color:var(--foreground);text-align:left;text-decoration:none;cursor:pointer}
:where(.shop) .shipto-list a:hover,:where(.shop) .shipto-list button:hover{border-color:var(--primary)}
:where(.shop) .shipto-n{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
:where(.shop) .shipto-tick{margin-left:auto;width:12px;text-align:right;font-size:12px;color:var(--primary)}
:where(.shop) .shipto-list a[aria-current="true"],:where(.shop) .shipto-list button[aria-current="true"]{border-color:var(--primary);box-shadow:inset 0 0 0 1px var(--primary);font-weight:600}
:where(.shop) .shipto-box>.muted{margin:0;font-size:13px}
:where(.shop) .plans{display:grid;gap:6px;margin:6px 0 0;padding:0;list-style:none}
:where(.shop) .plan{margin:0}
:where(.shop) .plan>input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}
:where(.shop) .plan>label{display:grid;grid-template-columns:1fr auto;gap:0 10px;padding:8px 10px;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--card);cursor:pointer}
:where(.shop) .plan-name{font-weight:600;font-size:14px}
:where(.shop) .plan-price{text-align:right;font-weight:700;font-size:14px}
:where(.shop) .plan-cover,:where(.shop) .plan-eta{font-size:12px;color:var(--muted-foreground)}
:where(.shop) .plan-eta{text-align:right}
:where(.shop) .plan>input:checked+label{border-color:var(--primary);box-shadow:inset 0 0 0 1px var(--primary);background:var(--svc-insured-wash)}
:where(.shop) .plan>input:focus-visible+label{outline:2px solid var(--ring);outline-offset:2px}
:where(.shop) .quote .plan-total{display:none}
:where(.shop) .quote:has(.plan:nth-child(1)>input:checked) .plan-total:nth-of-type(1),:where(.shop) .quote:has(.plan:nth-child(2)>input:checked) .plan-total:nth-of-type(2){display:grid}
:where(.shop) .plan-free{margin:6px 0 0;font-size:12px;color:var(--accent-foreground)}
:where(.shop) .quote dl{display:grid;grid-template-columns:1fr auto;gap:3px 12px;margin:2px 0 0;font-size:14px}
:where(.shop) .quote dt{color:var(--muted-foreground)}
:where(.shop) .quote dd{margin:0;text-align:right}
:where(.shop) .quote .quote-total{font-weight:700;color:var(--foreground);font-size:15px;border-top:1px solid var(--border);padding-top:4px}
:where(.shop) .quote>.muted{margin:4px 0 0;font-size:12px}
:where(.shop) .once{margin:0;font-size:12px;color:var(--muted-foreground)}
:where(.shop) .sheet-open{font-size:13px;color:var(--accent-foreground);text-decoration:underline;cursor:pointer}
:where(.shop) .marks{display:flex;flex-direction:column;gap:6px;padding-top:10px;border-top:1px solid var(--border)}
:where(.shop) .marks-row{display:flex;flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none}
:where(.shop) .marks-row img{display:block;width:36px;height:24px;object-fit:contain;border-radius:3px;border:1px solid var(--border);background:var(--card)}
:where(.shop) .marks-note{display:flex;gap:6px;align-items:flex-start;margin:0;font-size:12px;color:var(--muted-foreground)}
:where(.shop) .marks-note svg{flex:none;width:16px;height:16px;margin-top:1px;color:var(--primary)}
:where(.shop) .cta-grade{display:none}
:where(.shop) .cta-grade::before{content:" — "}
:where(.shop) .qty-lefts{font-size:13px;color:var(--muted-foreground)}
:where(.shop) .qty-left:only-child{display:inline}
:where(.shop) .qty-left:not(:only-child){display:none}
:where(.shop) .rail-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px}
:where(.shop) .rail-more{flex:none;padding:3px 10px;border:1px solid var(--border);border-radius:var(--radius-full);background:var(--card);font-size:12px;font-weight:600;color:var(--accent-foreground);text-decoration:none;white-space:nowrap}
:where(.shop) .rail-more::after{content:" ›"}
@media (hover:hover){:where(.shop) .rail-more:hover{background:var(--secondary)}}
:where(.shop) .buy-bar{position:fixed;left:0;right:0;bottom:0;z-index:70;padding:10px 12px calc(10px + env(safe-area-inset-bottom));background:var(--bg);border-top:1px solid var(--border);box-shadow:0 -8px 24px -12px rgb(0 0 0/.25)}
:where(.shop) .buy-bar .btn{font-size:16px;padding:12px}
@media (min-width:1024px){:where(.shop) .buy-bar{display:none}}
:where(.shop) .glance{display:flex;flex-wrap:wrap;gap:6px;margin:.4em 0 1em;padding:0;list-style:none}
:where(.shop) .glance li{padding:4px 10px;border:1px solid var(--border);border-radius:var(--radius-full);background:var(--card);font-size:13px}
:where(.shop) .glance li::before{content:"✓ ";font-weight:700;color:var(--primary)}
:where(.shop) .fold{position:relative}
:where(.shop) .fold-state{position:fixed;top:0;left:0;width:1px;height:1px;opacity:0;pointer-events:none}
:where(.shop) .fold-btn{display:block;margin:1.2em 0 .4em;font-size:1.25rem;font-weight:700;letter-spacing:-.02em;cursor:pointer}
:where(.shop) .fold-btn::after{content:" ▾";opacity:.6}
:where(.shop) .fold-state:checked~.fold-btn::after{content:" ▴"}
:where(.shop) .fold-state:not(:checked)~dl.facts{display:none}
:where(.shop) .about{padding:8px 0;border-top:1px solid var(--border)}
:where(.shop) .about summary{padding:6px 0;font-size:15px;font-weight:700;cursor:pointer}
:where(.shop) .sheet{display:none;position:fixed;inset:0;z-index:80}
:where(.shop) .sheet-state:checked~.sheet{display:block}
:where(.shop) .sheet-scrim{position:absolute;inset:0;background:var(--scrim);cursor:pointer}
:where(.shop) .sheet-panel{position:absolute;left:0;right:0;bottom:0;max-height:88vh;overflow:auto;padding:14px 14px calc(14px + env(safe-area-inset-bottom));background:var(--card);border-radius:var(--radius-lg) var(--radius-lg) 0 0;box-shadow:0 -8px 24px -12px rgb(0 0 0/.35)}
@media (min-width:900px){:where(.shop) .sheet-panel{left:50%;right:auto;top:50%;bottom:auto;width:min(860px,92vw);max-height:84vh;transform:translate(-50%,-50%);border-radius:var(--radius-lg)}}
:where(.shop) .sheet-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px}
:where(.shop) .sheet-head h2{margin:0;font-size:1.15rem}
:where(.shop) .sheet-close{display:grid;place-items:center;width:36px;height:36px;border:1px solid var(--border);border-radius:var(--radius-full);cursor:pointer}
:where(.shop) .table-scroll{overflow-x:auto}
:where(.shop) table.dest{font-size:13px}
:where(.shop) table.dest th{white-space:nowrap}
:where(.shop) table.dest tr[aria-current="true"] td{background:var(--secondary)}
:where(.shop) .lp{margin:1.5em 0}
:where(.shop) .lp>.muted{margin:.2em 0 .8em}
:where(.shop) .lp-grid{display:grid;gap:12px;grid-template-columns:minmax(0,1fr)}
@media (min-width:640px){:where(.shop) .lp-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:1024px){:where(.shop) .lp-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
:where(.shop) .lp-item{padding:12px 14px;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--card);scroll-margin-top:72px}
:where(.shop) .lp-item summary{display:flex;align-items:center;gap:12px}
:where(.shop) .lp-q{font-size:15px;font-weight:700;line-height:1.3}
:where(.shop) .lp-item .faq-body ul{display:grid;gap:5px;margin:0 0 8px;padding-left:1.1em;font-size:14px}
:where(.shop) .lp-item .faq-body>a{font-size:13px}
:where(.shop) .lp-art{display:grid;flex:none;place-items:center;width:56px;height:56px;border-radius:var(--radius-lg);background:color-mix(in srgb,var(--primary) 12%,var(--background));color:var(--primary)}
:where(.shop) .lp-art svg{width:30px;height:30px}
:where(.shop) .faq summary{list-style:none;cursor:pointer;font-size:15px;font-weight:700;padding:6px 0}
:where(.shop) .faq summary::-webkit-details-marker{display:none}
:where(.shop) .faq summary::after{content:"▾";float:right;opacity:.55;transition:transform .2s}
:where(.shop) .faq[open]>summary::after{transform:rotate(180deg)}
:where(.shop) .faq-body{padding:2px 0 6px}
:where(.shop) .faq::details-content{block-size:0;overflow:hidden;transition:block-size .25s ease,content-visibility .25s allow-discrete}
:where(.shop) .faq[open]::details-content{block-size:auto}
@supports (interpolate-size:allow-keywords){:where(.shop) .faq{interpolate-size:allow-keywords}}
@media (prefers-reduced-motion:reduce){:where(.shop) .faq::details-content{transition:none}:where(.shop) .faq summary::after{transition:none}}
@media (min-width:1024px){:where(.shop) .faq-wide:not([open])>summary::after{content:"▾"}}
:where(.shop) .grid{display:grid;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr));padding:0;margin:0;list-style:none}
@media (min-width:600px){:where(.shop) .grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (min-width:900px){:where(.shop) .grid{grid-template-columns:repeat(5,minmax(0,1fr))}}
:where(.shop) .tile{position:relative;isolation:isolate;display:flex;flex-direction:column;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--card);padding:6px;font-size:13px;transition:transform .15s,border-color .15s,box-shadow .15s}
:where(.shop) .tile:hover{transform:translateY(-2px);border-color:var(--foreground);box-shadow:0 8px 24px -8px rgba(0,0,0,.18)}
:where(.shop) .tile>a:not(.tile-name){display:block;overflow:hidden;border-radius:var(--radius-sm)}
:where(.shop) .tile img{display:block;width:100%;height:auto;transition:transform .3s}
:where(.shop) .tile img[data-fit="single"]{aspect-ratio:3/4;object-fit:cover}
:where(.shop) .tile img[data-fit="box"]{aspect-ratio:1/1;object-fit:contain}
:where(.shop) .recent .tile img{aspect-ratio:3/4}
:where(.shop) .recent .tile img[data-fit="box"]{object-fit:contain}
:where(.shop) .tile:hover img{transform:scale(1.05)}
:where(.shop) .tile>a.tile-name{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;height:2.5em;line-height:1.25;font-weight:600;margin:5px 0 1px;color:var(--foreground);text-decoration:none}
:where(.shop) .tile .tile-set{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px;height:1.5em;color:var(--muted-foreground)}
:where(.shop) .tile>div:last-child{display:flex;flex-direction:column;gap:2px;margin-top:auto;padding-top:4px}
:where(.shop) .tile .tile-grade{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:6px;height:22px}
:where(.shop) .tile .tile-grade-value{text-align:right;font-weight:700;font-variant-numeric:tabular-nums}
:where(.shop) .tile .tile-grade-out{opacity:.45}
:where(.shop) .tile .tile-grade-out .tile-grade-value{text-decoration:line-through}
:where(.shop) .gr{border:1px solid var(--border);border-radius:var(--radius-sm);padding:0 5px;font-size:10px;letter-spacing:.03em;text-transform:uppercase;color:var(--muted-foreground);white-space:nowrap}
:where(.shop) .gr[data-kind="single"]{border-color:var(--accent-foreground);color:var(--accent-foreground);font-weight:700}
:where(.shop) .trust{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));padding:0;margin:.6em 0;list-style:none}
:where(.shop) .trust li{display:flex;flex-direction:column;gap:4px;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--card);padding:12px 14px;font-size:13px}
:where(.shop) .trust strong,:where(.shop) .trust h3{font-size:14px;margin:0;text-transform:none;letter-spacing:normal;color:var(--foreground)}
:where(.shop) footer .trust strong,:where(.shop) footer .trust h3{color:var(--on-ink)}
:where(.shop) .foot{display:grid;gap:22px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));margin:4px 0 18px}
:where(.shop) .foot h2{font-size:.85rem;text-transform:uppercase;letter-spacing:.05em;margin:0 0 .4em}
:where(.shop) footer .trust li{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.15)}
:where(.shop) footer input{background:rgba(255,255,255,.1);color:var(--on-ink);border-color:rgba(255,255,255,.3)}
:where(.shop) footer input::placeholder{color:rgba(255,255,255,.5)}
:where(.shop) .back-top{display:inline-block;border:1px solid rgba(255,255,255,.3);border-radius:var(--radius-full);padding:4px 12px;font-size:12px;text-decoration:none;margin:0 0 14px}
:where(.shop) .pay{display:flex;flex-wrap:wrap;gap:6px;align-items:center;padding:0;margin:.2em 0 .5em;list-style:none}
:where(.shop) .pay img{display:block;width:36px;height:24px;object-fit:contain;border-radius:3px;background:var(--bg)}
:where(.shop) .brandline{display:flex;flex-wrap:wrap;gap:8px;align-items:baseline;border-top:1px solid rgba(255,255,255,.15);padding-top:14px;margin:0 0 .6em}
:where(.shop) .brandline .logo{color:var(--on-ink);font-size:1rem}
:where(.shop) .brandline .logo svg{width:24px;height:24px}
:where(.shop) footer nav{margin:.4em 0}
:where(.shop) footer nav a{display:inline-block;padding:3px 0;min-height:24px}
:where(.shop) .tb-controls{display:flex;align-items:center;gap:8px;margin-left:auto}
:where(.shop) .filters-btn{gap:6px}
:where(.shop) .filters-btn-w{white-space:nowrap}
@media (max-width:359px){:where(.shop) .filters-btn-w{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}}
:where(.shop) .game-tab:not(.game-tab-on){color:var(--muted-foreground)}
:where(.shop) .ad-strip{--ad-page:var(--page);margin:0 0 var(--sp-3);background:var(--secondary)}
:where(.shop) .wrap>.ad-strip{margin-left:calc(-1 * var(--sp-3));margin-right:calc(-1 * var(--sp-3))}
:where(.shop) .ad-track{display:flex;max-width:var(--ad-page);padding:0;margin:0 auto;list-style:none;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none}
:where(.shop) .ad-track::-webkit-scrollbar{display:none}
@media (prefers-reduced-motion:reduce){:where(.shop) .ad-track{scroll-behavior:auto}}
:where(.shop) .ad{flex:0 0 100%;box-sizing:border-box;scroll-snap-align:center;transition:opacity .5s ease}
:where(.shop) .ad>a{position:relative;display:flex;align-items:center;gap:14px;aspect-ratio:4/1;overflow:hidden;background:var(--ad-from);color:var(--ad-fg);padding:0 16px 0 0;text-decoration:none;isolation:isolate}
:where(.shop) .ad>a::before{content:"";position:absolute;inset:0;z-index:-2;background:linear-gradient(104deg,var(--ad-from) 0%,var(--ad-mid) 38%,var(--ad-to) 100%)}
:where(.shop) .ad>a::after{content:"";position:absolute;inset:0;z-index:-2;background:radial-gradient(132% 108% at 88% 10%,var(--ad-lift),transparent 58%),radial-gradient(44% 70% at 72% 4%,var(--ad-lift),transparent 70%)}
:where(.shop) .ad-decor{position:absolute;inset:0;z-index:-1;width:100%;height:100%;color:var(--ad-ornament);fill:currentColor;stroke:currentColor;pointer-events:none}
:where(.shop) .ad-rays{fill:var(--ad-glint);stroke:none}
:where(.shop) .ad-figure{position:absolute;right:0;top:0;z-index:-1;width:52%;height:100%;pointer-events:none}
:where(.shop) .ad-fig-face{fill:var(--ad-fig-face)}
:where(.shop) .ad-fig-top{fill:var(--ad-fig-top)}
:where(.shop) .ad-fig-mid,:where(.shop) .ad-fig-mid rect{fill:var(--ad-fig-mid)}
:where(.shop) .ad-fig-dim{fill:var(--ad-fig-dim)}
:where(.shop) .ad-fig-mark{fill:var(--ad-fig-mark)}
:where(.shop) .ad-fig-line path{fill:none;stroke:var(--ad-fig-line);stroke-width:2.4;stroke-linecap:round}
:where(.shop) .ad-fig-speed path{fill:none;stroke:var(--ad-fig-line);stroke-width:3.4;stroke-linecap:round}
:where(.shop) .ad-fig-speed{mask-image:linear-gradient(90deg,transparent 2%,#000 46%)}
:where(.shop) .ad-fig-rule{fill:none;stroke:var(--ad-fig-line);stroke-width:2.6}
:where(.shop) .ad-fig-strike{fill:none;stroke:var(--ad-fig-strike);stroke-width:3;stroke-linecap:round}
:where(.shop) .ad-fig-tick{fill:none;stroke:var(--ad-fig-tick);stroke-width:3.4;stroke-linecap:round;stroke-linejoin:round}
:where(.shop) .ad-fig-card{fill:var(--ad-logo-plate)}
:where(.shop) .ad-fig-join path{fill:none;stroke:var(--ad-fig-line);stroke-width:2.6;stroke-linecap:round}
:where(.shop) .ad-l-text:has(.ad-figure)>a::after{background:radial-gradient(132% 108% at 88% 10%,var(--ad-lift),transparent 58%),linear-gradient(95deg,var(--ad-from) 0%,color-mix(in oklab,var(--ad-from) 80%,transparent) 32%,transparent 64%)}
@media (max-width:479px){:where(.shop) .ad-figure:not([data-keep]){display:none}
:where(.shop) .ad-figure[data-keep]{width:44%}}
:where(.shop) .ad>a>.ad-rim{position:absolute;left:0;right:0;bottom:0;height:3px;z-index:0;background:linear-gradient(90deg,var(--ad-rim-a),var(--ad-rim-b))}
:where(.shop) .ad-art{display:block;flex:none;height:86%;width:auto;aspect-ratio:1/1;object-fit:contain;margin-left:10px;filter:drop-shadow(0 2px 10px var(--ad-art-shadow))}
:where(.shop) .ad-body{display:flex;min-width:0;flex-direction:column;gap:2px;padding:0 0 0 14px}
:where(.shop) .ad-l-text>a>.ad-body{padding-left:18px}
:where(.shop) .ad-l-wide>a{padding:0}
:where(.shop) .ad-l-wide .ad-art{position:absolute;inset:0;height:100%;width:100%;margin:0;object-fit:cover;filter:none}
:where(.shop) .ad-l-wide>a::after{background:linear-gradient(90deg,var(--ad-to) 0%,color-mix(in oklab,var(--ad-to) 78%,transparent) 46%,transparent 78%)}
:where(.shop) .ad-l-wide .ad-body{position:relative;z-index:1;padding-left:18px}
:where(.shop) .ad-eyebrow{font-size:10px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--ad-accent)}
:where(.shop) .ad-t{font-size:clamp(.82rem,3.4vw,1.25rem);font-weight:700;line-height:1.15;letter-spacing:-.01em;text-wrap:balance}
:where(.shop) .ad-s{font-size:clamp(10px,2.3vw,12px);color:var(--ad-muted)}
:where(.shop) .ad-cta{margin-top:2px;font-size:clamp(10px,2.3vw,12px);font-weight:700;color:var(--ad-accent)}
@media (max-width:479px){:where(.shop) .ad-s{display:none}}
:where(.shop) .ad-ink{--ad-from:var(--ad-ink-from);--ad-mid:var(--ad-ink-mid);--ad-to:var(--ad-ink-ground);--ad-lift:var(--ad-ink-lift);--ad-fg:var(--ad-ink-fg);--ad-muted:var(--ad-ink-muted);--ad-accent:var(--ad-ink-accent);--ad-ornament:var(--ad-on-dark-ornament);--ad-glint:var(--ad-on-dark-glint)}
:where(.shop) .ad-brand{--ad-from:var(--ad-brand-from);--ad-mid:var(--ad-brand-mid);--ad-to:var(--ad-brand-ground);--ad-lift:var(--ad-brand-lift);--ad-fg:var(--ad-brand-fg);--ad-muted:var(--ad-brand-muted);--ad-accent:var(--ad-brand-accent);--ad-ornament:var(--ad-on-dark-ornament);--ad-glint:var(--ad-on-dark-glint)}
:where(.shop) .ad-offer{--ad-from:var(--ad-offer-from);--ad-mid:var(--ad-offer-mid);--ad-to:var(--ad-offer-ground);--ad-lift:var(--ad-offer-lift);--ad-fg:var(--ad-offer-fg);--ad-muted:var(--ad-offer-muted);--ad-accent:var(--ad-offer-accent);--ad-ornament:var(--ad-on-dark-ornament);--ad-glint:var(--ad-on-dark-glint)}
:where(.shop) .ad-quiet{--ad-from:var(--ad-quiet-from);--ad-mid:var(--ad-quiet-mid);--ad-to:var(--ad-quiet-ground);--ad-lift:var(--ad-quiet-lift);--ad-fg:var(--ad-quiet-fg);--ad-muted:var(--ad-quiet-muted);--ad-accent:var(--ad-quiet-accent);--ad-ornament:var(--ad-on-dark-ornament);--ad-glint:var(--ad-on-dark-glint)}
:where(.shop) .ad-dots{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:8px;height:28px;margin:0;padding:0;list-style:none}
:where(.shop) .ad-dot{display:block;width:7px;height:7px;border-radius:999px;background:var(--foreground);opacity:.25}
:where(.shop) .ad-dot-on,:where(.shop) .ad-dot:hover,:where(.shop) .ad-dot:focus-visible{opacity:.75}
@media (min-width:640px){
  :where(.shop) .ad-track::before,:where(.shop) .ad-track::after{content:"";flex:0 0 17%}
  :where(.shop) .ad{flex:0 0 66%;padding:0 25px}
  :where(.shop) .ad-strip:has(.ad-on) .ad:not(.ad-on){opacity:.5}
  :where(.shop) .ad-on{opacity:1}
  :where(.shop) .ad-t{font-size:1.25rem}
}
:where(.shop) .pills{display:flex;flex-wrap:wrap;gap:6px;padding:0;margin:.4em 0 0;list-style:none}
:where(.shop) .pills a{display:inline-block;border:1px solid var(--border);border-radius:var(--radius-full);padding:3px 10px;font-size:13px;text-decoration:none;background:var(--card)}
:where(.shop) .pills a[aria-current]{border-color:var(--foreground);color:var(--foreground);font-weight:600}
:where(.shop) .account-rail{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:.4em 0 0}
:where(.shop) .account-rail a{display:inline-flex;align-items:center;height:32px;padding:0 12px;border:1px solid var(--border);border-radius:var(--radius-full);font-size:13px;text-decoration:none;background:var(--card)}
:where(.shop) .account-rail a[aria-current]{border-color:var(--foreground);color:var(--foreground);font-weight:600}
:where(.shop) .account-rail>strong{font-weight:600;font-size:13px;color:var(--muted-foreground);min-width:0;word-break:break-all}
:where(.shop) .account-rail>form{display:flex;margin:0}
:where(.shop) .pager{display:flex;flex-wrap:wrap;gap:4px;align-items:center;justify-content:center;margin:24px 0 8px;font-size:13px}
:where(.shop) .pager .pg-nums{flex:1 1 0;min-width:0;flex-wrap:nowrap;overflow-x:auto;justify-content:safe center;scrollbar-width:none;scroll-snap-type:x proximity}
:where(.shop) .pager .pg-nums::-webkit-scrollbar{display:none}
:where(.shop) .pager .pg-nums>li{flex:0 0 auto;scroll-snap-align:center}
:where(.shop) .pager .pg-nums{scroll-padding-inline:32px}
@media (min-width:600px){:where(.shop) .pager{gap:6px}}
:where(.shop) .pg-step{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:var(--radius-sm);color:var(--foreground);text-decoration:none}
:where(.shop) .pg-step:hover{background:var(--secondary)}
:where(.shop) .pg-off{opacity:.3}
:where(.shop) .pg-nums{display:flex;gap:4px;align-items:center;list-style:none;margin:0;padding:0}
:where(.shop) .pg-n{display:inline-flex;align-items:center;justify-content:center;min-width:32px;height:32px;padding:0 6px;border-radius:var(--radius-sm);font-variant-numeric:tabular-nums;color:var(--foreground);text-decoration:none}
:where(.shop) .pg-n:hover{background:var(--secondary)}
:where(.shop) .pg-on{background:var(--foreground);color:var(--background);font-weight:700}
:where(.shop) .pg-gap{display:inline-flex;align-items:center;justify-content:center;width:20px;height:32px;color:var(--muted-foreground)}
:where(.shop) .pg-of{flex-basis:100%;margin:6px 0 0;text-align:center;font-size:12px;color:var(--muted-foreground)}
:where(.shop) .filters{flex:0 0 auto}
:where(.shop) .filters-state{position:absolute;width:1px;height:1px;margin:0;opacity:0;pointer-events:none}
:where(.shop) .filters-btn{display:inline-flex;align-items:center;height:32px;padding:5px 11px;border:1px solid var(--border);border-radius:8px;background:var(--bg);font-size:11px;font-weight:700;color:var(--foreground);cursor:pointer;white-space:nowrap}
:where(.shop) .filters-btn::after{content:" ▾";opacity:.6}
:where(.shop) .filters-state:checked~.filters-btn{background:var(--secondary)}
:where(.shop) .filters-state:checked~.filters-btn::after{content:" ▴"}
:where(.shop) .filters-state:focus-visible~.filters-btn{outline:2px solid var(--primary);outline-offset:2px}
:where(.shop) .filters-panel,:where(.shop) .filters-close{display:none}
:where(.shop) .filters-state:checked~.filters-panel{display:grid}
:where(.shop) .filters-state:checked~.filters-close{display:block;position:fixed;inset:0;z-index:70;background:rgb(0 0 0/.4);border:0}
:where(.shop) .filters-panel{gap:16px 24px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));padding:16px 12px;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-lg)}
:where(.shop) .toolbar .filters-state:checked~.filters-panel{position:fixed;left:0;right:0;bottom:0;top:auto;z-index:80;max-height:min(70vh,520px);overflow-y:auto;border:0;border-radius:var(--radius-lg) var(--radius-lg) 0 0;box-shadow:0 -8px 24px -12px rgb(0 0 0/.35);padding-bottom:24px}
:where(.shop) .filters-head{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:12px;margin:-16px -12px 0;padding:12px;border-bottom:1px solid var(--border);font-weight:700;background:var(--bg);position:sticky;top:-16px;z-index:1}
:where(.shop) .filters-x{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:var(--radius-full);background:var(--secondary);color:var(--foreground);cursor:pointer;font-size:18px;line-height:1}
:where(.shop) .filters-brand h3{margin:0 0 4px;font-size:15px}
:where(.shop) .filters-brand h3 a{color:var(--foreground);text-decoration:none}
:where(.shop) .filters-brand h3 a[aria-current]{color:var(--primary)}
:where(.shop) .filters-brand h4,:where(.shop) .index-col h4{display:flex;justify-content:space-between;gap:12px;margin:10px 0 4px;padding-bottom:4px;border-bottom:1px solid var(--border);font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.025em;color:var(--foreground)}
:where(.shop) .filters-brand h4 a,:where(.shop) .index-col h4 a{color:inherit;text-decoration:none;display:inline-flex;align-items:center;min-height:24px}
:where(.shop) .filters-brand h4 a:hover,:where(.shop) .index-col h4 a:hover{color:var(--primary)}
:where(.shop) .filters-brand ul,:where(.shop) .index-col ul{list-style:none;margin:0;padding:0}
:where(.shop) .filters-brand li,:where(.shop) .index-col li{display:flex;align-items:baseline;justify-content:space-between;gap:12px;font-size:13px}
:where(.shop) .filters-brand li a,:where(.shop) .index-col li a{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted-foreground);text-decoration:none;display:inline-flex;align-items:center;min-height:24px}
:where(.shop) .filters-brand li a:hover,:where(.shop) .filters-brand li a[aria-current],:where(.shop) .index-col li a:hover,:where(.shop) .index-col li a[aria-current]{color:var(--foreground)}
:where(.shop) .filters-brand li a[aria-current],:where(.shop) .index-col li a[aria-current]{font-weight:600}
:where(.shop) .filters-brand .count,:where(.shop) .index-col .count{flex:none;font-size:12px;font-variant-numeric:tabular-nums;color:var(--muted-foreground)}
:where(.shop) .index{margin:2em 0 0;padding-top:1.2em;border-top:1px solid var(--border)}
:where(.shop) .index h2{margin:0 0 .6em;font-size:1.1rem}
:where(.shop) .index-grid{display:grid;gap:4px 16px;grid-template-columns:repeat(2,minmax(0,1fr))}
@media (min-width:640px){:where(.shop) .index-grid{gap:4px 24px}}
@media (min-width:1024px){:where(.shop) .index-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
:where(.shop) .index-col{min-width:0}
@media (min-width:900px){
  :where(.shop) .toolbar .filters-state:checked~.filters-panel{position:absolute;left:0;right:0;top:100%;bottom:auto;max-height:min(70vh,34rem);border:1px solid var(--border);border-top:0;border-radius:0 0 var(--radius-lg) var(--radius-lg);box-shadow:0 12px 24px -12px rgb(0 0 0/.35);padding-bottom:16px}
  :where(.shop) .filters-state:checked~.filters-close{background:transparent}
  :where(.shop) .filters-head{position:static;margin:-16px -12px 0}
}
:where(.shop) .browse-index{margin:28px 0 0;padding-top:16px;border-top:1px solid var(--border);display:grid;gap:14px 20px;grid-template-columns:repeat(2,minmax(0,1fr))}
@media (min-width:600px){:where(.shop) .browse-index{grid-template-columns:repeat(4,minmax(0,1fr))}}
:where(.shop) .browse-index>h2{grid-column:1/-1;margin:0;font-size:1rem}
:where(.shop) .browse-col h3{margin:0 0 4px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--muted-foreground)}
:where(.shop) .browse-col ul{list-style:none;margin:0;padding:0}
:where(.shop) .browse-col li{display:flex;align-items:baseline;justify-content:space-between;gap:8px;font-size:12px;line-height:1.5}
:where(.shop) .browse-col li a{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted-foreground);text-decoration:none;display:inline-flex;align-items:center;min-height:24px}
:where(.shop) .browse-col li a:hover{color:var(--foreground)}
:where(.shop) .browse-col .count{flex:none;font-size:11px;font-variant-numeric:tabular-nums;color:var(--muted-foreground);opacity:.7}
:where(.shop) .browse-all{grid-column:1/-1;margin:4px 0 0;font-size:13px}
:where(.shop) .browse-more{margin-top:2px}
:where(.shop) .browse-more a{color:var(--primary);font-weight:600}
:where(.shop) .set-index{display:grid;gap:0 20px;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));list-style:none;margin:.6em 0 1.4em;padding:0}
:where(.shop) .set-index li{display:flex;align-items:baseline;justify-content:space-between;gap:8px;font-size:13px;line-height:1.6}
:where(.shop) .set-index a{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-decoration:none;color:var(--foreground);display:inline-flex;align-items:center;min-height:24px}
:where(.shop) .set-index a:hover{color:var(--primary)}
:where(.shop) .set-index .count{flex:none;font-size:11px;font-variant-numeric:tabular-nums;color:var(--muted-foreground)}
:where(.shop) .shelf-head{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 10px;margin:10px 0 8px}
:where(.shop) .shelf-head h1{margin:0;font-size:1.05rem;font-weight:700;letter-spacing:-.01em}
:where(.shop) .shelf-head .crumbs{margin:0;font-size:12px}
:where(.shop) .shelf-intro{margin:24px 0 0;color:var(--muted-foreground);font-size:13px;max-width:70ch}
:where(.shop) .shelf-note{margin:0 0 16px;padding:10px 12px;border-left:3px solid var(--primary);
  border-radius:0 var(--radius-md) var(--radius-md) 0;background:var(--secondary);
  color:var(--foreground);font-size:13.5px;line-height:1.55;max-width:78ch}
:where(.shop) .shelf-note a{color:var(--primary);font-weight:600}
:where(.shop) .q{display:flex;gap:6px;margin:.4em 0 0}
:where(.shop) .q input{flex:1;min-width:0;padding:7px 10px;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg);color:var(--foreground);font-size:15px}
:where(.shop) .panel{border:1px solid var(--border);border-radius:var(--radius-lg);padding:12px 14px;background:var(--card);margin:1em 0}
:where(.shop) .freeship{margin:.75em 0 0}
:where(.shop) .freeship-track{height:10px;border-radius:var(--radius-full);background:var(--secondary);overflow:hidden}
:where(.shop) .freeship-fill{height:100%;border-radius:var(--radius-full);background:var(--primary);transition:width .2s ease}
:where(.shop) .freeship-note{margin:6px 0 0;font-size:13px;color:var(--foreground)}
:where(.shop) .freeship-on .freeship-fill{background:var(--cover-yes)}
:where(.shop) .freeship-on .freeship-note{color:var(--cover-yes);font-weight:600}
@media (prefers-reduced-motion:reduce){:where(.shop) .freeship-fill{transition:none}}
:where(.shop) .chart{width:100%;height:auto;max-width:520px}
:where(.shop) .qty input{width:4.5em;padding:5px 7px;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg);color:var(--foreground);font-size:14px}
:where(.shop) table.cart{table-layout:auto}
:where(.shop) table.cart th:first-child,:where(.shop) table.cart td:first-child{width:auto;min-width:11em}
:where(.shop) table.cart th:nth-child(n+2),:where(.shop) table.cart td:nth-child(n+2){width:1%}
:where(.shop) table.cart td:nth-child(2) .qty{flex-wrap:wrap}
:where(.shop) table.cart td:nth-child(2) .qty input{flex:0 1 auto;min-width:3.4em}
:where(.shop) table.cart th:nth-child(2),:where(.shop) table.cart td:nth-child(2){width:fit-content}
:where(.shop) table.cart td:first-child a{overflow-wrap:anywhere}
:where(.shop) table.cart th{white-space:nowrap}
@media (max-width:620px){
  :where(.shop) table.cart,:where(.shop) table.cart tbody,:where(.shop) table.cart tr,:where(.shop) table.cart td{display:block;width:auto}
  :where(.shop) table.cart thead{display:none}
  :where(.shop) table.cart tr{padding:10px 0;border-bottom:1px solid var(--border)}
  :where(.shop) table.cart tr:last-child{border-bottom:0}
  :where(.shop) table.cart td{padding:2px 0;border:0}
  :where(.shop) table.cart td:first-child{padding-bottom:6px}
  :where(.shop) table.cart td:nth-child(n+2){display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:34px}
  :where(.shop) table.cart td[data-label]::before{content:attr(data-label);color:var(--muted-foreground);font-size:13px}
  :where(.shop) table.cart td:nth-child(n+2) .qty{flex-wrap:nowrap;width:auto}
  :where(.shop) table.cart .btn-sm{white-space:nowrap}
}
:where(.shop) .svc-cards{display:grid;gap:10px;margin:1em 0;
  grid-template-columns:repeat(auto-fit,minmax(248px,1fr))}
:where(.shop) .svc{border:1px solid var(--border);border-radius:var(--radius-lg);
  padding:12px 14px;background:var(--card)}
:where(.shop) .svc-economy{border-color:var(--svc-economy-edge)}
:where(.shop) .svc-insured{border-color:var(--svc-insured-edge);background:var(--svc-insured-wash)}
:where(.shop) .svc-name{margin:0;font-size:15px}
:where(.shop) .svc-arrival{margin:2px 0 8px;font-size:20px;font-weight:700;line-height:1.15}
:where(.shop) .svc-caveat,:where(.shop) .svc-limit{margin:8px 0 0;font-size:13px;color:var(--muted-foreground)}
:where(.shop) .cover{display:inline-flex;align-items:center;gap:5px;font-size:13px;
  font-weight:600}
:where(.shop) .cover-yes{color:var(--cover-yes)}
:where(.shop) .cover-no{color:var(--cover-no)}
:where(.shop) .rate-cell{text-align:right;white-space:nowrap}
:where(.shop) table.dest .btn-sm{padding:4px 10px;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--card);color:var(--accent-foreground);font:inherit;font-size:12px;font-weight:600;white-space:nowrap;cursor:pointer}
@media (hover:hover){:where(.shop) table.dest .btn-sm:hover{background:var(--secondary)}}
:where(.shop) .th-sub{display:block;font-size:11px;font-weight:400;
  color:var(--muted-foreground)}
:where(.shop) .rate-none{color:var(--muted-foreground)}
@media (max-width:560px){
  :where(.shop) .svc-arrival{font-size:18px}
}
:where(.shop) .quote-svc{color:var(--muted-foreground);font-size:12px;white-space:nowrap}
:where(.shop) .doc-head{padding:4px 0 18px;margin-bottom:22px;border-bottom:1px solid var(--border)}
:where(.shop) .doc-head h1{margin:0 0 8px}
:where(.shop) .doc-lead{margin:0;max-width:62ch;font-size:17px;line-height:1.55;color:var(--muted-foreground)}
:where(.shop) .doc{display:grid;gap:28px;align-items:start}
@media (min-width:900px){
  :where(.shop) .doc:has(.doc-toc){grid-template-columns:216px minmax(0,1fr);gap:48px}
}
:where(.shop) .doc-toc{font-size:13px}
@media (min-width:900px){
  :where(.shop) .doc-toc{position:sticky;top:calc(var(--hdr-h) + 12px);max-height:calc(100vh - var(--hdr-h) - 32px);overflow:auto}
}
:where(.shop) .doc-toc-h{margin:0 0 8px;font-size:11px;font-weight:700;letter-spacing:.08em;
  text-transform:uppercase;color:var(--muted-foreground)}
:where(.shop) .doc-toc ol{margin:0;padding:0;list-style:none;counter-reset:toc}
:where(.shop) .doc-toc li{counter-increment:toc;border-left:2px solid var(--border)}
:where(.shop) .doc-toc a{display:block;padding:6px 10px;color:var(--muted-foreground);
  text-decoration:none;line-height:1.35}
:where(.shop) .doc-toc a::before{content:counter(toc,decimal-leading-zero) " ";
  font-variant-numeric:tabular-nums;color:var(--border)}
:where(.shop) .doc-toc li:hover{border-left-color:var(--primary)}
:where(.shop) .doc-toc a:hover{color:var(--foreground)}
:where(.shop) .doc-body{min-width:0}
:where(.shop) .doc-sec{scroll-margin-top:calc(var(--hdr-h) + 16px);padding-top:26px;
  border-top:1px solid var(--border)}
:where(.shop) .doc-sec:first-child{padding-top:0;border-top:0}
:where(.shop) .doc-sec h2{display:flex;align-items:baseline;gap:10px;margin:0 0 12px}
:where(.shop) .doc-num{flex:none;font-size:12px;font-weight:700;font-variant-numeric:tabular-nums;
  letter-spacing:.06em;color:var(--primary)}
:where(.shop) .doc-sec p{max-width:68ch;margin:0 0 12px;line-height:1.62}
:where(.shop) .doc-sec p:last-child{margin-bottom:0}
:where(.shop) .doc-lede{font-size:16.5px;color:var(--foreground)}
@media (min-width:900px){
  :where(.shop) .doc-wide{margin-left:-264px}
  :where(.shop) .doc-wide>h2,:where(.shop) .doc-wide>p{margin-left:264px}
}
:where(.shop) .doc-wide .table-scroll{max-width:none}
:where(.shop) table.dest th[scope="row"]{white-space:nowrap}
:where(.shop) table.dest td:nth-child(2),:where(.shop) table.dest td:nth-child(3){white-space:nowrap}
:where(.shop) .doc-sum{margin:0 0 28px;padding:16px 18px;border:1px solid var(--border);
  border-left:3px solid var(--ok);border-radius:var(--radius-md);background:var(--secondary)}
:where(.shop) .doc-sum h2{margin:0 0 10px;font-size:15px;letter-spacing:.01em}
:where(.shop) .doc-sum ul{margin:0;padding:0;list-style:none;display:grid;gap:7px}
:where(.shop) .doc-sum li{position:relative;padding-left:22px;font-size:14px;line-height:1.55}
:where(.shop) .doc-sum li::before{content:"";position:absolute;left:3px;top:.42em;width:9px;height:5px;
  border-left:2px solid var(--ok);border-bottom:2px solid var(--ok);
  transform:rotate(-45deg)}
:where(.shop) .doc-sum p{margin:10px 0 0;font-size:13px;color:var(--muted-foreground)}
:where(.shop) .doc-figs{display:grid;gap:14px;margin:4px 0 18px;max-width:68ch}
@media (min-width:620px){:where(.shop) .doc-figs-2{grid-template-columns:1fr 1fr}}
:where(.shop) .doc-fig{margin:0}
:where(.shop) .doc-fig img{display:block;width:100%;height:auto;border:1px solid var(--border);
  border-radius:var(--radius-md);background:var(--secondary)}
:where(.shop) .doc-fig figcaption{margin-top:7px;font-size:12.5px;line-height:1.5;
  color:var(--muted-foreground)}
:where(.shop) .doc-cmp{width:100%;border-collapse:collapse;font-size:13.5px;margin:4px 0 0}
:where(.shop) .doc-cmp th,:where(.shop) .doc-cmp td{padding:9px 11px;text-align:left;vertical-align:top;
  border-bottom:1px solid var(--border)}
:where(.shop) .doc-cmp thead th{font-size:12px;letter-spacing:.04em;text-transform:uppercase;
  color:var(--muted-foreground);border-bottom-width:2px;white-space:nowrap}
:where(.shop) .doc-cmp th[scope="row"]{font-weight:600;color:var(--foreground)}
:where(.shop) .doc-cmp tbody tr:last-child th,:where(.shop) .doc-cmp tbody tr:last-child td{border-bottom:0}
:where(.shop) .doc-cmp .cmp-win{background:var(--secondary);color:var(--foreground);font-weight:600}
:where(.shop) .doc-cmp thead .cmp-win{color:var(--primary);background:var(--secondary)}
:where(.shop) .doc-cmp-foot{margin:10px 0 0;font-size:12.5px;color:var(--muted-foreground);
  max-width:68ch}
:where(.shop) .faq{display:grid;gap:8px;max-width:860px}
:where(.shop) .faq-item{border:1px solid var(--border);border-radius:var(--radius-lg);
  background:var(--card);overflow:hidden}
:where(.shop) .faq-item summary{padding:12px 14px;font-weight:600;cursor:pointer;
  list-style:none;display:flex;align-items:center;gap:10px}
:where(.shop) .faq-item summary::-webkit-details-marker{display:none}
:where(.shop) .faq-item summary::marker{content:""}
:where(.shop) .faq-item summary::before{content:"▸";flex:none;color:var(--primary);
  font-size:12px;transition:transform .15s ease}
:where(.shop) .faq-item[open] summary::before{transform:rotate(90deg)}
:where(.shop) .faq-item summary:hover{background:var(--secondary)}
:where(.shop) .faq-item[open] summary{border-bottom:1px solid var(--border)}
:where(.shop) .faq-item p{margin:0;padding:12px 14px;max-width:68ch;line-height:1.62;
  color:var(--muted-foreground)}
:where(.shop) .doc-browse{margin-top:34px;padding-top:20px;border-top:1px solid var(--border)}
:where(.shop) .doc-browse h2{margin-top:0}
:where(.shop) .tile{min-height:46px}
:where(.shop) .tile>a:not(.tile-name):empty{display:block;min-height:40px}
:where(.shop) .save-btn{position:absolute;z-index:2;top:0;right:0;display:grid;place-items:center;width:44px;height:44px;padding:0;border:0;background:none;color:var(--muted-foreground);cursor:pointer;transition:color .15s}
:where(.shop) .save-btn::before{content:"";position:absolute;width:32px;height:32px;border:1px solid var(--border);border-radius:999px;background:var(--card);transition:border-color .15s,background .15s}
:where(.shop) .save-btn svg{position:relative;width:18px;height:18px}
:where(.shop) .save-btn:hover{color:var(--foreground)}
:where(.shop) .save-btn:hover::before{border-color:var(--foreground)}
:where(.shop) .save-btn[aria-pressed=true]{color:var(--destructive)}
:where(.shop) .save-btn[aria-pressed=true]::before{border-color:var(--destructive)}
:where(.shop) .save-btn[aria-pressed=true] svg{fill:var(--destructive)}
:where(.shop) .save-btn:focus-visible{outline:2px solid var(--ring);outline-offset:2px}
:where(.shop) .pdp-title-row{display:flex;align-items:flex-start;gap:12px}
:where(.shop) .pdp-title-row .phero-title{flex:1 1 auto;min-width:0}
:where(.shop) .save-btn-title{position:static;flex:none;width:40px;height:40px;margin-top:var(--sp-3)}
:where(.shop) .save-btn-title::before{width:40px;height:40px}
:where(.shop) .save-btn-title svg{width:20px;height:20px}
:where(.shop) .saved-tabs{display:flex;gap:4px;margin:0 0 18px;border-bottom:1px solid var(--border)}
:where(.shop) .saved-tabs a{padding:9px 14px;border:1px solid transparent;border-bottom:none;border-radius:var(--radius-sm) var(--radius-sm) 0 0;margin-bottom:-1px;color:var(--muted-foreground);font-weight:600;font-size:14px;text-decoration:none}
:where(.shop) .saved-tabs a:hover{color:var(--foreground)}
:where(.shop) .saved-tabs a[aria-current=page]{border-color:var(--border);background:var(--card);color:var(--foreground)}
:where(.shop) .saved-grid:empty{display:none}
:where(.shop) .saved-count{margin:0 0 12px;color:var(--muted-foreground);font-size:13px}
:where(.shop) .saved-empty{margin:28px 0;color:var(--muted-foreground)}
:where(.shop) .saved-cta{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-start;gap:12px;margin:0 0 18px;padding:14px 16px;border:1px solid var(--border);border-radius:var(--radius);background:var(--secondary)}
:where(.shop) .saved-cta p{flex:1 1 280px;margin:0;font-size:14px}
:where(.shop) .saved-cta .btn{flex:0 0 auto;display:inline-block;width:auto;padding:9px 16px;border-radius:var(--radius-sm);background:var(--primary);color:var(--primary-foreground);font-size:14px;font-weight:700;text-decoration:none;white-space:nowrap}
:where(.shop) .saved-cta .btn:hover{opacity:.9}
:where(.shop) .saved-tools{margin:18px 0 0}
:where(.shop) .btn-quiet{padding:8px 14px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--card);color:var(--foreground);font-size:13px;font-weight:600;cursor:pointer}
:where(.shop) .btn-quiet:hover{border-color:var(--foreground)}
:where(.shop) .tile-unavailable>a:not(.tile-name){opacity:.45}
:where(.shop) .tile-flag{align-self:flex-start;margin-top:4px;padding:2px 7px;border-radius:999px;background:var(--secondary);color:var(--muted-foreground);font-size:11px;font-weight:700;letter-spacing:.02em;text-transform:uppercase}
:where(.shop) .toast{position:fixed;z-index:50;right:16px;bottom:16px;display:flex;align-items:flex-start;gap:10px;width:min(380px,calc(100vw - 24px));padding:14px;border:1px solid var(--border);border-radius:var(--radius);background:var(--card);box-shadow:0 12px 32px -8px rgba(0,0,0,.3);font-size:14px}
@media (max-width:520px){:where(.shop) .toast{right:12px;left:12px;bottom:12px;width:auto}}
:where(.shop) .toast-tick{flex:none;display:flex;align-items:center;justify-content:center;width:20px;height:20px;margin-top:1px;border-radius:999px;background:var(--foreground);color:var(--card);font-size:12px;font-weight:700;line-height:1}
:where(.shop) .toast-txt{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:2px}
:where(.shop) .toast-txt strong{font-weight:700;color:var(--foreground)}
:where(.shop) .toast-sub{overflow:hidden;color:var(--text-sub);font-size:12px;line-height:1.4;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2}
:where(.shop) .toast-go{flex:none;align-self:center;padding:7px 12px;border-radius:var(--radius-sm);background:var(--primary);color:var(--primary-foreground);font-size:13px;font-weight:700;text-decoration:none;white-space:nowrap}
:where(.shop) .toast-go:hover{background:var(--primary-hover)}
:where(.shop) .toast-x{flex:none;width:24px;height:24px;margin:-4px -4px 0 0;padding:0;border:none;border-radius:999px;background:transparent;color:var(--muted-foreground);font-size:18px;line-height:1;cursor:pointer}
:where(.shop) .toast-x:hover{color:var(--foreground)}
@media (prefers-reduced-motion:no-preference){
  :where(.shop) .toast{animation:toast-in .2s ease-out}
  @keyframes toast-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
}
:where(.shop) main.wrap:not(:has(.game-tabs)){--game-tabs-h:0px}
:where(.shop) main.wrap:not(:has(.chips)){--chips-h:0px}
:where(.shop) .cartp-scrim{position:fixed;inset:0;z-index:95;background:var(--scrim);opacity:0;transition:opacity .2s ease}
:where(.shop) .cartp-scrim.cartp-in{opacity:1}
:where(.shop) .cartp{position:fixed;z-index:96;right:0;top:0;bottom:0;width:min(440px,92vw);max-height:100vh;display:flex;flex-direction:column;overflow:hidden;padding:18px 20px;border:1px solid var(--border);border-width:0 0 0 1px;background:var(--card);box-shadow:-18px 0 48px -12px var(--drawer-shadow);font-size:14px;opacity:0;transform:translateX(24px);transition:opacity .2s ease,transform .2s ease}
:where(.shop) .cartp.cartp-in{opacity:1;transform:translateX(0)}
:where(.shop) .cartp-grip{display:none}
:where(.shop) .cartp-head{display:flex;align-items:center;gap:8px;margin-bottom:12px}
:where(.shop) .cartp-tick{flex:none;display:flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:999px;background:var(--cover-yes,var(--foreground));color:var(--card);font-size:12px;font-weight:700;line-height:1}
:where(.shop) .cartp-title{flex:1 1 auto;min-width:0;font-weight:700;color:var(--foreground)}
:where(.shop) .cartp-x{flex:none;width:28px;height:28px;margin:-4px -4px 0 0;padding:0;border:none;border-radius:999px;background:transparent;color:var(--muted-foreground);font-size:20px;line-height:1;cursor:pointer}
:where(.shop) .cartp-x:hover{color:var(--foreground)}
:where(.shop) .cartp-item{display:flex;align-items:center;gap:10px;padding-bottom:12px;border-bottom:1px solid var(--border)}
:where(.shop) .cartp-thumb{flex:none;width:64px;height:64px;object-fit:contain;background:var(--muted);border-radius:var(--radius-sm)}
:where(.shop) .cartp-item-txt{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:2px}
:where(.shop) .cartp-name{overflow:hidden;font-weight:600;line-height:1.35;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2}
:where(.shop) .cartp-sub{color:var(--muted-foreground);font-size:12px}
:where(.shop) .cartp-totals{padding:12px 0;border-bottom:1px solid var(--border)}
:where(.shop) .cartp-sub-row{display:flex;align-items:baseline;justify-content:space-between;gap:12px}
:where(.shop) .cartp-sub-row strong{font-size:16px;font-variant-numeric:tabular-nums}
:where(.shop) .cartp-acts{display:flex;gap:8px;padding:12px 0}
:where(.shop) .cartp-act{flex:1 1 0;min-width:0;text-align:center;white-space:nowrap}
:where(.shop) .cartp-body{flex:1 1 auto;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch}
:where(.shop) .cartp-recs{margin-top:14px;padding-top:14px;border-top:1px solid var(--border)}
:where(.shop) .cartp-recs-h{margin:0 0 8px;font-size:13px;font-weight:700;color:var(--foreground)}
:where(.shop) .cartp-skel{display:flex;flex-direction:column;gap:10px}
:where(.shop) .cartp-skel-row{display:block;height:48px;border-radius:var(--radius-sm);background:var(--muted)}
:where(.shop) .cartp-skel-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:4px}
:where(.shop) .cartp-skel-grid span{display:block;height:132px;border-radius:var(--radius-md);background:var(--muted)}
@media (prefers-reduced-motion:no-preference){
  :where(.shop) .cartp-skel-row,:where(.shop) .cartp-skel-grid span{animation:cartp-pulse 1.2s ease-in-out infinite}
  @keyframes cartp-pulse{0%,100%{opacity:1}50%{opacity:.55}}
}
:where(.shop) .cartp-lines{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:10px}
:where(.shop) .cartp-line{display:flex;align-items:center;gap:10px}
:where(.shop) .cartp-line-thumb{flex:none;width:48px;height:48px;object-fit:contain;background:var(--muted);border-radius:var(--radius-sm)}
:where(.shop) .cartp-line-txt{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:1px}
:where(.shop) .cartp-line-name{overflow:hidden;font-size:13px;line-height:1.3;color:inherit;text-decoration:none;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2}
:where(.shop) .cartp-line-sub{color:var(--muted-foreground);font-size:12px}
:where(.shop) .cartp-line-price{flex:none;font-size:13px;font-weight:600;font-variant-numeric:tabular-nums}
:where(.shop) .cartp-more{margin:10px 0 0;font-size:12px}
:where(.shop) .cartp-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:0;padding:0;list-style:none}
:where(.shop) .cartp-tile{display:flex;flex-direction:column;gap:4px;padding:8px;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg)}
:where(.shop) .cartp-tile-link{display:flex;flex-direction:column;gap:4px;color:inherit;text-decoration:none}
:where(.shop) .cartp-tile-img{width:100%;height:72px;object-fit:contain;background:var(--muted);border-radius:var(--radius-sm)}
:where(.shop) .cartp-tile-name{overflow:hidden;font-size:12px;line-height:1.3;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2}
:where(.shop) .cartp-tile-price{display:flex;align-items:center;gap:4px;font-size:12px;font-weight:600;font-variant-numeric:tabular-nums}
:where(.shop) .cartp-add{margin:0}
:where(.shop) .cartp-add-btn{width:100%}
@media (max-width:640px){
  :where(.shop) .cartp{right:0;left:0;top:auto;bottom:0;width:auto;max-height:min(88vh,760px);padding:12px 14px calc(14px + env(safe-area-inset-bottom));border-width:1px 0 0;border-radius:var(--radius-lg) var(--radius-lg) 0 0;box-shadow:0 -18px 48px -12px var(--drawer-shadow);transform:translateY(100%)}
  :where(.shop) .cartp.cartp-in{transform:translateY(0)}
  :where(.shop) .cartp-grip{display:block;width:36px;height:4px;margin:0 auto 10px;border-radius:999px;background:var(--border)}
  :where(.shop) .cartp-acts{position:sticky;bottom:0;z-index:1;margin:0 -14px;padding:12px 14px;background:var(--card);border-top:1px solid var(--border)}
}
:where(.shop) .buy-bar[data-cartp-open]{display:none}
@media (prefers-reduced-motion:reduce){
  :where(.shop) .cartp,:where(.shop) .cartp-scrim{transition:none}
  :where(.shop) .cartp{transform:none}
}
:where(.co) .wrap{max-width:var(--page);margin:0 auto;padding:16px}
:where(.co) main.wrap{max-width:var(--co-col)}
:where(.co) header .wrap{display:flex;align-items:center;gap:12px;font-weight:700}
:where(.co) footer{padding:0}
:where(.co) main{max-width:none;padding:0}
:where(.co) main p{margin:.7em 0}
:where(.co) header .lock{margin-left:auto;display:inline-flex;align-items:center;gap:5px;font-size:13px;font-weight:400;color:var(--muted-foreground)}
:where(.co) .lock-mark{flex:0 0 auto;position:relative;top:.5px;color:var(--primary)}
:where(.co) main>h1{margin:10px 0 8px;font-size:20px;line-height:1.25}
:where(.co) .banner{border-bottom:1px solid var(--border);background:var(--card);padding:8px 16px;font-size:14px;text-align:center}
:where(.co) .panel{border:1px solid var(--border);border-radius:var(--radius-lg);padding:12px 14px;background:var(--card)}
:where(.co) .rail-marks{display:flex;align-items:center;gap:5px}
:where(.co) .rail-marks img{height:24px;width:auto;display:block}
:where(.co) .stripe-frame{min-height:540px;margin:0 0 8px}
:where(.co) .over-cap{margin:0;padding:16px 18px;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--card)}
:where(.co) .over-cap h2{margin:0 0 8px;font-size:18px;line-height:1.3}
:where(.co) .over-cap p{margin:0 0 12px}
:where(.co) .over-cap p:last-child{margin-bottom:0}
:where(.co) .trust-band{margin:14px 0 0;padding:14px 16px;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--card)}
:where(.co) .trust-head{display:flex;align-items:center;gap:11px;margin:0 0 12px;padding:0 0 12px;border-bottom:1px solid var(--border);font-size:15px;font-weight:600;line-height:1.35;color:var(--foreground)}
:where(.co) .trust-shield{flex:0 0 auto;color:var(--primary)}
:where(.co) .trust-band ul{list-style:none;margin:0;padding:0;display:grid;gap:6px}
:where(.co) .trust-band li{font-size:13px;line-height:1.5;color:var(--foreground);padding-left:20px;position:relative}
:where(.co) .trust-band li::before{content:"";position:absolute;left:3px;top:.45em;width:9px;height:5px;border-left:2px solid var(--primary);border-bottom:2px solid var(--primary);transform:rotate(-45deg)}
:where(.co) .trust-marks{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin:10px 0 0;padding-top:10px;border-top:1px solid var(--border)}
:where(.co) .trust-marks .muted{font-size:12px}
:where(.co) .ship-gate{border:1px solid var(--border);border-radius:var(--radius-lg);padding:14px;background:var(--card);margin:0 0 18px}
:where(.co) .ship-gate h2{margin-top:0}
:where(.co) .ship-gate-list{list-style:none;padding:0;margin:10px 0 0;display:flex;flex-wrap:wrap;gap:8px}
:where(.co) .ship-gate-list li{margin:0}
:where(.co) .sm{font-size:13px}
:where(.co) label{display:block;margin-top:10px}
:where(.co) input[type=number]{width:100%;max-width:420px;padding:var(--sp-2) var(--sp-3);font:inherit;color:var(--text);background:var(--bg);border:1px solid var(--border);border-radius:var(--radius)}
:where(.co) fieldset{border:1px solid var(--border);border-radius:var(--radius-lg);margin:10px 0}
:where(.co) fieldset label{display:flex;gap:10px;align-items:flex-start;margin:0;padding:8px 10px;border-bottom:1px solid var(--border)}
:where(.co) fieldset label:last-child{border-bottom:0}
:where(.co) fieldset input[type=radio],:where(.co) fieldset input[type=checkbox]{width:auto;margin-top:5px}
:where(.co) .q{display:flex;gap:6px;flex-wrap:wrap;align-items:center;margin:.6em 0}
:where(.co) .q input{flex:1;min-width:0}
:where(.co) td,:where(.co) th{vertical-align:top}
:where(.co) .co-dest{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:0 0 8px;padding:6px 10px;border-radius:var(--radius-lg);background:var(--secondary);font-size:14px}
:where(.co) .co-dest-label{color:var(--muted-foreground)}
:where(.co) .co-flag{flex:0 0 auto;width:21px;height:16px;border:1px solid var(--border);border-radius:2px;display:block}
:where(.co) .co-dest select{width:auto;min-width:0;flex:0 1 auto;margin:0}
:where(.co) .co-dest button{margin:0}
:where(.co) .co-items{margin:0 0 8px;padding:8px 0;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}
:where(.co) .co-items ul{list-style:none;margin:0;padding:0;display:grid;gap:10px}
:where(.co) .co-item{display:flex;gap:10px;align-items:center;min-width:0}
:where(.co) .co-photo{flex:0 0 auto;width:96px;height:96px;object-fit:contain;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg)}
:where(.co) .co-item-text{min-width:0}
:where(.co) .co-item-name{display:block;font-size:14px;font-weight:600;line-height:1.3;overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2}
:where(.co) .co-item-meta{display:block;margin-top:2px;font-size:13px;color:var(--muted-foreground)}
:where(.co) .co-count{margin:0 0 8px;font-size:13px;color:var(--muted-foreground)}
:where(.co) .co-items.is-many ul{grid-auto-flow:column;grid-auto-columns:max-content;overflow-x:auto;gap:12px;padding-bottom:4px}
:where(.co) .co-items.is-many .co-item{flex-direction:column;align-items:flex-start;gap:6px;max-width:150px}
:where(.co) .co-discount{margin:0 0 8px}
:where(.co) .co-discount p{margin:0}
:where(.co) .co-discount-open{position:relative;padding-left:18px;font-size:13px;color:var(--primary);text-decoration:underline}
:where(.co) .co-discount-open::before{content:"";position:absolute;left:2px;top:.3em;width:8px;height:8px;border:1.5px solid var(--primary);border-radius:1px;transform:rotate(45deg)}
:where(.co) .co-free{margin:0 0 10px;padding-left:18px;position:relative;font-size:13px;color:var(--muted-foreground)}
:where(.co) .co-free::before{content:"";position:absolute;left:3px;top:.45em;width:9px;height:5px;border-left:2px solid var(--primary);border-bottom:2px solid var(--primary);transform:rotate(-45deg)}
:where(.co) .co-back{margin:14px 0 0;font-size:13px}
:where(.co) .oc-head{margin:0 0 20px}
:where(.co) .oc-title{margin:2px 0 0;font-size:28px;line-height:1.2}
:where(.co) .oc-badge{display:inline-flex;align-items:center;gap:7px;margin:10px 0 0;padding:5px 11px 5px 9px;border:1px solid var(--ok);border-radius:999px;color:var(--ok);font-size:13px;font-weight:700;line-height:1}
:where(.co) .ok-tick{flex:0 0 auto;display:block}
:where(.co) .oc-detail{max-width:62ch}
:where(.co) .oc-code{margin:8px 0 0;font-size:15px;font-weight:700}
:where(.co) .oc-cols{display:grid;gap:20px;grid-template-columns:1fr;align-items:start}
@media (min-width:880px){:where(.co) .oc-cols{grid-template-columns:1fr 330px}}
:where(.co) .oc-items h2,:where(.co) .oc-ship h2,:where(.co) .oc-account h2{margin:0 0 10px}
:where(.co) .oc-side{display:grid;gap:14px;border:0;border-radius:0;padding:0;background:none}
:where(.co) .olines{list-style:none;margin:0;padding:0}
:where(.co) .oline{display:flex;align-items:flex-start;gap:12px;padding:12px 0;border-top:1px solid var(--border)}
:where(.co) .oline:first-child{border-top:0;padding-top:2px}
:where(.co) .oline-img{flex:0 0 auto;width:48px;height:64px;object-fit:contain;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg)}
:where(.co) .oline-img.is-box{width:64px}
:where(.co) .oline-img.is-empty{border:0;background:none}
:where(.co) .oline-main{flex:1 1 auto;min-width:0}
:where(.co) .oline-name{display:block;font-weight:600;line-height:1.35;text-decoration:none;color:var(--text)}
:where(.co) a.oline-name:hover{text-decoration:underline}
:where(.co) .oline-meta{display:block;margin-top:3px;font-size:13px}
:where(.co) .oline-price{flex:0 0 auto;font-weight:600;white-space:nowrap;font-variant-numeric:tabular-nums}
:where(.co) .oc-totals dl.facts{font-size:14px}
:where(.co) .oc-totals dl.facts dd{font-variant-numeric:tabular-nums}
:where(.co) .oc-total-k,:where(.co) .oc-total-v{margin-top:8px;padding-top:9px;border-top:1px solid var(--border);font-size:17px;font-weight:700}
:where(.co) .oc-addr{margin:0;font-size:14px;line-height:1.55}
:where(.co) .oc-actions{display:grid;gap:8px;margin:12px 0 0}
:where(.co) .oc-account .btn{margin-top:0;max-width:none;text-align:center}
:where(.co) .oc-next{margin-top:18px;padding-top:14px;border-top:1px solid var(--border)}
:where(.co) .oc-next h2{margin:0 0 6px}
:where(.co) .oc-next h2~h2{margin-top:16px}
:where(.co) .oc-next p{max-width:62ch}
