/* Phase 1.9: product-picker layout. Colours and fonts come from STIPE Shared UI.
   The three links keep their normal destinations; artwork is decorative. */
#stcv2[data-game="products"] .concept-hub { padding-top: 0; }
#stcv2[data-game="products"] #games-heading { margin-top: 0; }

#stcv2 .concept-game-grid[data-game-picker] {
  display: flex; align-items: stretch; gap: 22px;
}
#stcv2 .game-tile {
  position: relative; flex: 1 1 0; min-width: 0;
  transition: flex-grow 520ms cubic-bezier(.2,.7,.2,1);
}
#stcv2 .game-tile.is-active { flex-grow: 1.42; }
#stcv2 .game-tile .concept-game-card {
  display: flex; flex-direction: column; width: 100%; height: 100%; min-height: 520px;
  padding: 28px; border-radius: var(--st-radius-lg);
  background: var(--st-surface); border-color: var(--st-line);
  transform: none; transition: border-color 250ms, box-shadow 350ms;
}
#stcv2 .game-tile.is-active .concept-game-card {
  border-color: var(--st-orange); box-shadow: 0 8px 32px #0002, 0 0 24px #ff845f0b;
}
#stcv2 .game-tile .concept-game-card:hover { transform: none; color: var(--st-text); }
#stcv2 .game-tile .game-art {
  position: absolute; inset: 10px 0 auto; height: 295px; pointer-events: none;
}
#stcv2 .game-tile .game-art::after {
  content: ''; position: absolute; inset: auto 0 0; height: 52px;
  background: linear-gradient(transparent, var(--st-surface));
}
#stcv2 .game-tile .game-scene {
  display: block; position: absolute; inset: 0; width: 100%; height: 100%;
  max-width: none; object-fit: contain; opacity: 0;
  transform: translateY(18px) scale(.86);
  transition: opacity 320ms ease, transform 600ms cubic-bezier(.2,.7,.2,1);
}
#stcv2 .game-tile .game-logo {
  display: block; position: absolute; top: 54px; left: 50%;
  width: 90px; height: 90px; margin: 0; object-fit: contain; opacity: 1;
  transform: translateX(-50%) scale(1);
  transition: opacity 240ms ease, transform 450ms cubic-bezier(.2,.7,.2,1);
}
#stcv2 .game-tile.is-active .game-scene { opacity: 1; transform: translateY(0) scale(1); }
#stcv2 .game-tile.is-active .game-logo { opacity: 0; transform: translate(-50%,-12px) scale(.75); }
#stcv2 .game-tile[data-scene-ready="false"] .game-scene { opacity: 0; }
#stcv2 .game-tile[data-scene-ready="false"] .game-logo { opacity: 1; transform: translateX(-50%) scale(1); }
#stcv2 .game-tile .game-card-copy {
  position: relative; z-index: 1; margin-top: 235px; gap: 15px;
  max-width: none; min-width: 0;
}
#stcv2 .game-tile .game-name { font-size: 30px; }
#stcv2 .game-tile .game-explore { margin-top: auto; padding-top: 9px; }
#stcv2 .game-preview {
  display: none; position: absolute; z-index: 2; top: 12px; right: 12px;
  align-items: center; gap: 7px; min-height: 44px; padding: 9px 12px;
  border: 1px solid var(--st-control-line); border-radius: var(--st-radius-sm);
  color: var(--st-text); background: var(--st-surface-raised); font-size: 11px;
}
#stcv2 .game-preview[aria-pressed="true"] { color: var(--st-orange); border-color: var(--st-orange); }
#stcv2 .game-preview .concept-icon { width: 14px; height: 14px; }
@media (max-width:1100px) and (min-width:761px) {
  #stcv2 .concept-game-grid[data-game-picker] { gap: 14px; }
  #stcv2 .game-tile .concept-game-card { padding: 22px; }
  #stcv2 .game-tile .game-name { font-size: 27px; }
  #stcv2 .game-tile .game-card-copy .eyebrow { font-size: 10px; }
}
@media (max-width:760px) {
  #stcv2 .concept-game-grid[data-game-picker] { flex-direction: column; gap: 20px; }
  #stcv2 .game-tile, #stcv2 .game-tile.is-active { flex: 0 0 auto; }
  #stcv2 .game-tile .concept-game-card { min-height: 0; padding: 24px; }
  #stcv2 .game-tile .game-art { height: 235px; top: 24px; }
  #stcv2 .game-tile .game-card-copy { margin-top: 220px; gap: 13px; }
  #stcv2 .game-tile .game-logo { width: 80px; height: 80px; top: 56px; }
}
@media (hover:none), (any-pointer:coarse) {
  #stcv2 .game-preview:not([hidden]) { display: flex; }
  #stcv2 .game-tile .game-art { top: 36px; }
}
@media (prefers-reduced-motion:reduce) {
  #stcv2 .game-tile, #stcv2 .game-tile .concept-game-card,
  #stcv2 .game-tile .game-scene, #stcv2 .game-tile .game-logo { transition: none; }
}
