/* MPShift offers: compact, native-looking extension of the existing cards. */
.offers {
  position:relative;
  z-index:1;
  min-width:0;
  color:var(--text);
  background:var(--surface-soft);
  border-top:1px solid var(--line);
  font-family:var(--font);
}
.offers__summary {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  min-height:58px;
  padding:11px 23px;
  list-style:none;
  cursor:pointer;
  color:var(--text);
  background:var(--accent-soft);
  user-select:none;
}
.offers__summary::-webkit-details-marker { display:none; }
.offers__summary::marker { content:""; }
.offers__summary:hover { background:color-mix(in srgb,var(--accent) 15%,transparent); }
.offers__summary:focus-visible,
.offers__shop:focus-visible {
  outline:2px solid var(--accent);
  outline-offset:-3px;
  border-radius:var(--radius-sm);
}
.offers__summary-copy { display:flex; min-width:0; flex-direction:column; gap:2px; }
.offers__prompt { color:var(--muted); font-size:10px; line-height:1.4; }
.offers__toggle-label { font-size:12px; font-weight:650; line-height:1.45; }
.offers__chevron { width:17px; height:17px; flex:0 0 auto; color:var(--accent); transition:transform .18s ease; }
.offers[open] > .offers__summary .offers__chevron { transform:rotate(180deg); }
.offers__panel { min-width:0; padding:0 23px 16px; }
.offers:not([open]) > .offers__panel { display:none; }

/* One calm compatibility line instead of another card inside the card. */
.offers__intro { padding:7px 0 10px; }
.offers__notice { margin:0; color:var(--muted); font-size:10px; line-height:1.5; overflow-wrap:anywhere; }
.offers__notice strong { color:var(--text); font-weight:650; }
.offers__caution,.offers-policy__warning{margin:11px 0 7px;padding:10px 12px;border:1px solid color-mix(in srgb,#d77e79 38%,var(--line));border-left:3px solid #d77e79;border-radius:6px;background:color-mix(in srgb,#d77e79 8%,var(--surface-soft));color:#e9b3ae;font-size:12px;line-height:1.6;overflow-wrap:anywhere}
.offers__caution strong,.offers-policy__warning strong{color:#f1c5c0;font-weight:750}
.offers__verified-mark { color:var(--accent); font-weight:800; }
.offers__region { margin:8px 0 0; color:var(--subtle); font-size:9px; line-height:1.5; }

.offers__list { display:grid; gap:8px; margin:0; padding:0; list-style:none; }
.offers__item {
  min-width:0;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  grid-template-areas:"copy actions" "verified actions";
  align-items:center;
  gap:4px 16px;
  padding:11px 12px;
  border:1px solid var(--line);
  border-radius:var(--radius-sm);
  background:var(--surface);
}
.offers__deal-copy { grid-area:copy; min-width:0; display:flex; flex-direction:column; gap:2px; }
.offers__merchant { color:var(--text); font-size:12px; line-height:1.35; font-weight:750; }
.offers__edition { color:var(--muted); font-size:9px; line-height:1.4; overflow-wrap:anywhere; }
.offers__deal-actions { grid-area:actions; display:flex; align-items:center; justify-content:flex-end; gap:10px; }
.offers__price { display:flex; align-items:center; justify-content:flex-end; gap:7px; min-width:78px; text-align:right; }
.offers__price-stack { display:flex; flex-direction:column; align-items:flex-end; gap:0; }
.offers__amount { color:var(--text); font-size:14px; line-height:1.2; font-weight:800; white-space:nowrap; }
.offers__regular { color:var(--subtle); font-size:9px; line-height:1.1; white-space:nowrap; }
.offers__discount {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:24px;
  padding:3px 6px;
  border:1px solid color-mix(in srgb,var(--accent) 45%,transparent);
  border-radius:5px;
  background:var(--accent-soft);
  color:var(--accent);
  font-size:10px;
  line-height:1;
  font-weight:800;
  white-space:nowrap;
}
.offers__price-fallback { color:var(--muted); font-size:9px; line-height:1.35; white-space:nowrap; }
.offers__verified { grid-area:verified; display:flex; align-items:center; gap:4px; color:var(--subtle); font-size:9px; line-height:1.35; }
.offers__shop {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:34px;
  margin:0;
  padding:7px 10px;
  border:1px solid var(--line);
  border-radius:7px;
  background:var(--surface-raised);
  color:var(--text);
  font-size:10px;
  line-height:1.2;
  font-weight:700;
  text-decoration:none;
  white-space:nowrap;
}
.offers__shop:hover { border-color:var(--accent); color:var(--accent); text-decoration:none; }
.offers__affiliate { grid-column:1 / -1; margin:4px 0 0; color:var(--warning); font-size:9px; line-height:1.5; }

.offers-group { margin:30px 0; min-width:0; }
.offers-group__heading { margin:0 0 15px; color:var(--text); font-family:var(--display); font-size:21px; line-height:1.4; font-weight:700; }
.offers--detail { border:1px solid var(--line); border-radius:var(--radius); }
.offers--detail + .offers--detail { margin-top:12px; }
body[data-page="detail"] .seopage__cover { min-width:0; min-height:0; width:100%; max-width:100%; }

/* One short explanation for the whole result set. */
.offers-policy {
  display:grid;
  grid-template-columns:max-content minmax(0,1fr);
  align-items:flex-start;
  gap:8px 14px;
  margin:0 0 12px;
  padding:9px 12px;
  border:1px solid var(--line);
  border-left:2px solid var(--accent);
  border-radius:var(--radius-sm);
  background:var(--surface-soft);
  color:var(--muted);
  font-family:var(--font);
}
.offers-policy__title { flex:0 0 auto; color:var(--text); font-size:10px; line-height:1.5; font-weight:700; }
.offers-policy__body { margin:0; min-width:0; font-size:10px; line-height:1.5; overflow-wrap:anywhere; }
.offers-policy__warning{grid-column:1/-1;margin:2px 0 0}

/* For a rejected/uncertain offer, keep the reason visible but quiet. */
.offers-unavailable {
  position:relative;
  z-index:1;
  min-width:0;
  display:flex;
  align-items:flex-start;
  gap:5px 8px;
  padding:8px 23px 10px;
  border-top:1px solid var(--line);
  background:var(--surface-soft);
  color:var(--muted);
  font-family:var(--font);
  font-size:9px;
  line-height:1.5;
}
.offers-unavailable__title { flex:0 0 auto; color:var(--subtle); font-weight:700; }
.offers-unavailable__reason { min-width:0; overflow-wrap:anywhere; }
.offers-unavailable--detail { margin-top:12px; padding:10px 12px; border:1px solid var(--line); border-radius:var(--radius-sm); background:var(--surface-soft); }

@media(min-width:901px) {
  .offers--card { flex:none; }
  @supports(grid-template-rows:subgrid) {
    .game-grid > .game-card { grid-row:span 12; }
    .game-grid > .game-card > :is(.offers--card,.offers-unavailable--card) { grid-row:12; grid-column:1 / -1; align-self:start; }
  }
}
@media(min-width:641px) and (max-width:900px) {
  .game-grid > .game-card > :is(.offers--card,.offers-unavailable--card) { grid-column:1 / -1; }
  .offers__summary,.offers__panel { padding-left:20px; padding-right:20px; }
}
@media(max-width:640px) {
  .offers__summary { min-height:58px; padding:12px 17px; }
  .offers__toggle-label { font-size:12px; }
  .offers__panel { padding:0 17px 14px; }
  .offers__notice { font-size:10px; }
  .offers__item {
    grid-template-columns:minmax(0,1fr);
    grid-template-areas:"copy" "actions" "verified";
    gap:8px;
    padding:11px;
  }
  .offers__deal-actions { justify-content:space-between; gap:9px; }
  .offers__price { justify-content:flex-start; text-align:left; }
  .offers__price-stack { align-items:flex-start; }
  .offers__shop { min-height:38px; padding:8px 12px; font-size:11px; }
  .offers__edition,.offers__verified,.offers__price-fallback,.offers__region { font-size:10px; }
  .offers__amount { font-size:15px; }
  .offers-policy { display:block; padding:9px 11px; }
  .offers-policy__title { display:block; margin-bottom:3px; }
  .offers-policy__body { font-size:10px; }
  .offers-unavailable { display:block; padding:8px 17px 10px; font-size:10px; }
  .offers-unavailable__title { display:block; margin-bottom:2px; }
  .offers-group__heading { font-size:20px; }
}
