/* Local draft only. Palette 2 is fixed even when the OS prefers dark colors. */
:root[data-theme="light"][data-palette="2"] {
  color-scheme: light;
  --paper: #f4f5f0; --paper-2: #e9ebe3; --card: #ffffff;
  --ink: #1b1d1c; --ink-2: #3a403d; --muted: #535b58;
  --line: #d3d6cc; --line-strong: #7f8781;
  --sea: #0a5a8f; --sea-2: #0b6aa8; --sea-tint: #e1f0fa; --on-sea: #ffffff;
  --night: #0c2638; --night-2: #123349; --night-ink: #f3f5f2;
  --night-muted: #c4ccd0; --night-accent: #7fd0ff; --brand-line: #0391df;
  --focus-inner: #ffffff; --focus-outer: var(--ink);
  --w: 1240px; --radius: 4px; --radius-s: 3px; --shadow: none;
}
:root[data-theme="light"][data-palette="2"] :focus-visible { outline: 3px solid var(--focus-inner); outline-offset: 2px; box-shadow: 0 0 0 6px var(--focus-outer); }
:root[data-theme="light"][data-palette="2"] .btn.light,
:root[data-theme="light"][data-palette="2"] .assortment-choices button,
:root[data-theme="light"][data-palette="2"] .filters button,
:root[data-theme="light"][data-palette="2"] .pair button,
:root[data-theme="light"][data-palette="2"] .tile,
:root[data-theme="light"][data-palette="2"] .item:not([aria-pressed="true"]):not([data-verdict]),
:root[data-theme="light"][data-palette="2"] .sheetform input[type="text"],
:root[data-theme="light"][data-palette="2"] .sheetform input[type="number"],
:root[data-theme="light"][data-palette="2"] .sheetform select,
:root[data-theme="light"][data-palette="2"] .sheetform textarea,
:root[data-theme="light"][data-palette="2"] .bag-form input[type="text"],
:root[data-theme="light"][data-palette="2"] .bag-form select,
:root[data-theme="light"][data-palette="2"] .purpose a,
:root[data-theme="light"][data-palette="2"] .faq details { border-color: var(--line-strong); }
:root[data-theme="light"][data-palette="2"] .menu summary,
:root[data-theme="light"][data-palette="2"] .item:not([aria-pressed="true"]):not([data-verdict]) { border-color: var(--sea); }
:root[data-theme="light"][data-palette="2"] section.night .reason { border-top-color: var(--brand-line); }
:root[data-theme="light"][data-palette="2"] .herofacts li { border-left-color: var(--brand-line); }
:root[data-theme="light"][data-palette="2"] section.night .kicker,
:root[data-theme="light"][data-palette="2"] section.night .reason .n,
:root[data-theme="light"][data-palette="2"] .proto b { color: var(--night-accent); }
body { background: var(--paper); }
.ev, .evlegend, .evtoggle, .assortment-source, .src, .cap, .tbd-photo, .ph, .eyebrow { display: none !important; }
.site-foot .cols > div:last-child { display: none; }
body:has(.matstrip) h2[style*="margin-top:56px"] { display: none; }
.proto { background: var(--night); padding: 5px 0; }
.proto .wrap { justify-content: space-between; }
.proto a { font-weight: 600; }
.site { position: relative; background: var(--card); backdrop-filter: none; border-bottom: 3px solid var(--brand-line); }
.site .wrap { min-height: 76px; }
.brand img { width: 46px; }
.brand strong { font-size: 23px; }
.brand small { display: none; }
.nav { gap: 2px; }
.nav a { font-size: 14px; font-weight: 700; border-radius: 0; }
.nav a.cta { background: var(--sea); border-radius: 2px; }
.nav a[aria-current="page"]:not(.cta) { color: var(--sea); box-shadow: inset 0 -3px var(--brand-line); }
h1, h2, h3 { text-wrap: balance; }
.block { padding-block: clamp(56px, 6vw, 96px); }
.block h2 { font-size: clamp(29px, 3.2vw, 43px); line-height: 1.25; }
.block .intro { max-width: 57rem; }
.btn { border-radius: 3px; }
.hero.assortment { background: var(--paper-2); color: var(--night); }
.assortment-layout { display: grid; grid-template-columns: minmax(320px,.75fr) minmax(0,1.25fr); align-items: stretch; gap: 0; width: 100%; max-width: none; }
.assortment-copy { display: flex; flex-direction: column; justify-content: center; padding: clamp(40px,7vw,110px) clamp(24px,5vw,80px); }
.assortment-copy h1 { font-size: clamp(48px,5.8vw,82px); line-height: 1.16; margin: 0 0 28px; color: var(--night); }
.assortment-copy .lead { color: var(--ink-2); font-size: clamp(18px,1.6vw,23px); max-width: 27rem; }
.assortment-copy .ctas { margin-top: 28px; display: flex; flex-wrap: wrap; gap: 10px; }
.assortment-copy .btn.primary { background: var(--sea); color: var(--card); }
.assortment-copy .btn.ghost { border: 1px solid var(--sea); color: var(--sea); }
.assortment-bench { background: var(--card); display: flex; flex-direction: column; justify-content: end; min-width: 0; }
.assortment-bench figure { flex: 1; display: grid; align-items: center; justify-items: center; margin: 0; min-height: 540px; padding: 24px; background: var(--card); }
.assortment-bench figure img { width: min(100%,650px); height: min(600px,55vw); object-fit: contain; }
.assortment-bench figcaption { font-weight: 800; color: var(--night); font-size: 18px; }
.assortment-choices { display: flex; justify-content: center; gap: 8px; padding: 16px; border-top: 1px solid var(--line); }
.assortment-choices button { border-radius: 2px; }
.assortment-more { display: none; }
.eyes { gap: 24px; }
.eye, .card, .gate, .tile { border-radius: 3px !important; box-shadow: none !important; }
.eye img, .card img, .gate img { object-fit: cover; }
.eyes .eye:first-child { border-top: 5px solid var(--brand-line); }
.eyes .eye:nth-child(2) { border-top: 5px solid var(--night); }
.products, .productgrid, .product-grid { gap: 16px; }
#uses .cards .card:nth-child(-n+3) { border-left: 4px solid var(--brand-line); }
#uses .cards .card:nth-child(-n+3) img { display: none; }
.matstrip { display: grid; grid-template-columns: repeat(4,1fr); gap: 12px; }
.matstrip figure { background: var(--card); border: 1px solid var(--line); border-radius: 3px; }
.matstrip img { height: 230px; width: 100%; object-fit: contain; padding: 18px; }
.matstrip figcaption { padding: 4px 14px 14px; font-weight: 700; }
body:has(.matstrip) #main > .block:first-child { background: linear-gradient(120deg,var(--paper-2) 0%,var(--paper) 68%); padding-top: 75px; }
body:has(.matstrip) #main > .block:first-child h1 { font-size: clamp(42px,5vw,67px) !important; }
.oem-hero { background: var(--paper-2); }
.oem-hero .page-h1 { font-size: clamp(42px,5vw,68px); }
.oem-hero img { width: 100%; object-fit: cover; border-radius: 2px; }
.purpose a { border-radius: 2px; }
.gate img { max-height: 275px; }
.game-top { background: var(--paper-2); }
.game-top .page-h1 { font-size: clamp(42px,5vw,68px); }
.draft-game-note { max-width: 40rem; color: var(--ink-2); }
.draft-sorting-photo { margin: 30px 0 0; }
.draft-sorting-photo img { width: 100%; max-height: 260px; object-fit: cover; object-position: center 40%; border-radius: 2px; }
.site-foot { background: var(--night); }
/* Permission gate: the empty frame is intentional until an image is cleared. */
.photo-pending { display: grid; place-items: center; min-height: 145px; width: 100%; padding: 16px; border: 1px solid var(--line-strong); background: var(--paper-2); color: var(--ink-2); font-size: 14px; font-weight: 700; letter-spacing: .03em; text-align: center; }
.photo-pending::before { content: ''; width: 34px; height: 28px; margin-bottom: 6px; border: 2px solid var(--line-strong); border-radius: 2px; background: linear-gradient(135deg,transparent 52%,var(--line-strong) 53%,var(--line-strong) 57%,transparent 58%); }
.assortment-bench figure { align-content: center; gap: 18px; }
.assortment-bench figure > .photo-pending { max-width: 580px; min-height: 385px; font-size: 17px; border-color: var(--sea); }
.assortment-choices { justify-content: start; flex-wrap: nowrap; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-color: var(--sea) var(--paper-2); }
.assortment-choices button { flex: 0 0 118px; min-height: 104px; padding: 6px; border: 1px solid var(--line); background: var(--card); color: var(--night); font-weight: 700; scroll-snap-align: start; cursor: pointer; }
.assortment-choices button[aria-pressed="true"] { border: 2px solid var(--sea); box-shadow: inset 0 -4px var(--sea); }
.assortment-choices button .photo-pending { min-height: 58px; padding: 2px; font-size: 10px; font-weight: 500; }
.assortment-choices button .photo-pending::before { display: none; }
.assortment-choices button > span:last-child { display: block; margin-top: 5px; font-size: 12px; }
.assortment-status, .oem-product-status { margin: 4px 18px 18px; color: var(--ink-2); font-size: 13px; }
.photos2 .photo-pending { min-height: 210px; }
.eye > .photo-pending, .card > .photo-pending, .gate > .photo-pending { min-height: 200px; }
.lifeimg.photo-pending { min-height: 100px; }
.matstrip .photo-pending { min-height: 188px; }
.eye-shortcuts { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 12px; margin: 26px 0; }
.eye-shortcuts a { display: flex; flex-direction: column; justify-content: center; min-height: 90px; padding: 18px; border: 1px solid var(--line-strong); border-left: 5px solid var(--brand-line); background: var(--card); color: var(--night); font-size: 18px; font-weight: 800; text-decoration: none; }
.eye-shortcuts a span { color: var(--ink-2); font-size: 13px; font-weight: 500; }
.eye-shortcuts a:hover, .eye-shortcuts a:focus-visible { border-color: var(--sea); background: var(--sea-tint); }
.filters button[aria-pressed="true"] { background: var(--sea); border-color: var(--sea); color: var(--card); }
.oem-product-proof { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 10px; margin-top: 22px; }
.oem-product-proof figure { margin: 0; border: 1px solid var(--line); background: var(--card); }
.oem-product-proof .photo-pending { min-height: 100px; border: 0; }
.oem-product-proof figcaption { padding: 8px 10px; font-weight: 700; font-size: 13px; }
.oem-product-status { margin: 8px 0 18px; }
.oem-photo .photo-pending { min-height: 480px; }
.draft-sorting-photo .photo-pending { min-height: 150px; }
.draft-real-reference { display: grid; grid-template-columns: 260px minmax(0,1fr); align-items: center; column-gap: 16px; margin: 12px 0 18px; }
.draft-real-reference img { display: block; grid-row: span 2; width: 260px; height: 205px; object-fit: contain; }
.draft-real-reference .photo-pending { min-height: 130px; }
.draft-real-reference figcaption { display: none; }
.draft-game-start { display: inline-flex; margin-top: 12px; }
.photo-credit { display: block; padding: 5px 10px; background: var(--card); color: var(--ink-2); font-size: 11px; line-height: 1.45; font-weight: 600; }
.photo-credit[hidden], #assortment-photo[hidden], #assortment-unconfirmed[hidden] { display: none !important; }
.assortment-bench figure > .photo-credit { text-align: center; }
.assortment-choices button img { display: block; width: 100%; height: 62px; object-fit: contain; }
.assortment-choices button .photo-credit { font-size: 9px; padding: 2px 0; }
.assortment-choices button .photo-pending { font-size: 10px; }
.photos2 .photo-unit, .photos3 .photo-unit { display: flex; flex-direction: column; min-width: 0; }
.photos2 .photo-unit img, .photos3 .photo-unit img { width: 100%; min-height: 0; object-fit: cover; }
.photos2 .photo-unit img { aspect-ratio: 4 / 3; }
.photos3 .photo-unit img { aspect-ratio: 1 / 1; }
.eye .photo-credit, .card .photo-credit, .gate .photo-credit { border-bottom: 1px solid var(--line); }
.productgrid img, .product-grid img, .matstrip img, .oem-product-proof img { object-fit: contain; }
#uses .cards .card:nth-child(-n+3) img { display: block; object-fit: contain; }
.draft-real-reference figcaption { display: block; color: var(--ink-2); font-size: 12px; }
@media (max-width: 600px) { .draft-real-reference { grid-template-columns: 155px minmax(0,1fr); } .draft-real-reference img { width: 155px; height: 135px; } }
@media (max-width: 420px) { .page-sorting .tray:not(.zoom) { grid-template-columns: repeat(4,minmax(0,1fr)); } }
@media (max-width: 900px) {
  .site .wrap { min-height: 68px; }
  .nav a:not(.cta):not(.keep) { display: none; }
  .assortment-layout { grid-template-columns: 1fr; }
  .assortment-copy { padding: 35px 24px 30px; }
  .assortment-copy h1 { font-size: clamp(42px,9vw,65px); margin-bottom: 10px; }
  .assortment-bench figure { min-height: 360px; }
  .assortment-bench figure img { height: 320px; }
  .assortment-bench figure > .photo-pending { min-height: 250px; }
}
@media (max-width: 600px) {
  .block.oem-hero { padding-top: 36px; }
  .site .wrap { min-height: 62px; }
  .brand img { width: 35px; }
  .brand strong { font-size: 18px; }
  .nav a.cta { font-size: 14px; padding-inline: 11px; }
  .assortment-copy { padding: 28px 18px 18px; }
  .assortment-copy h1 { font-size: 43px; }
  .assortment-copy .lead { font-size: 17px; }
  .assortment-copy .ctas { margin-top: 14px; }
  .assortment-copy .btn { width: 100%; }
  .assortment-bench figure { min-height: 275px; padding: 12px; }
  .assortment-bench figure img { height: 245px; }
  .assortment-bench figure > .photo-pending { min-height: 200px; }
  .assortment-choices { flex-wrap: nowrap; }
  .eye-shortcuts { grid-template-columns: 1fr; gap: 8px; }
  .eye-shortcuts a { min-height: 68px; }
  .oem-photo .photo-pending { min-height: 220px; }
  .oem-product-proof .photo-pending { min-height: 74px; }
  .matstrip { grid-template-columns: repeat(2,1fr); }
  .matstrip img { height: 150px; padding: 8px; }
  .draft-sorting-photo img { max-height: 155px; }
}
