body[data-design="mukunal-editorial-v2"][data-layout="reference-v7"] .gift-card-offer {
  position: relative;
  overflow: hidden;
  margin-top: 34px;
  padding: clamp(28px, 4vw, 46px);
  border: 1px solid rgba(255, 255, 255, 0.16);
  border-radius: 32px;
  color: #fff;
  background:
    radial-gradient(circle at 88% 6%, rgba(30, 185, 151, 0.18), transparent 32%),
    linear-gradient(135deg, rgba(7, 57, 71, 0.82), rgba(2, 35, 46, 0.9));
  box-shadow: 0 28px 80px rgba(0, 15, 22, 0.22);
  backdrop-filter: blur(28px) saturate(124%);
  -webkit-backdrop-filter: blur(28px) saturate(124%);
}

body[data-design="mukunal-editorial-v2"][data-layout="reference-v7"] .gift-card-heading {
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(280px, 0.8fr);
  gap: clamp(24px, 5vw, 72px);
  align-items: end;
}

body[data-design="mukunal-editorial-v2"][data-layout="reference-v7"] .gift-card-status {
  display: inline-flex;
  width: fit-content;
  margin: 0 0 12px;
  padding: 7px 11px;
  border: 1px solid rgba(121, 231, 205, 0.34);
  border-radius: 999px;
  color: #8fe6d1;
  background: rgba(4, 131, 107, 0.14);
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.14em;
}

body[data-design="mukunal-editorial-v2"][data-layout="reference-v7"] .gift-card-heading h3 {
  max-width: 720px;
  margin: 0;
  color: #fff;
  font-size: clamp(2rem, 4vw, 4rem);
  line-height: 1.08;
  letter-spacing: -0.045em;
}

body[data-design="mukunal-editorial-v2"][data-layout="reference-v7"] .gift-card-provider {
  display: block;
  margin-top: 12px;
  color: rgba(255, 255, 255, 0.5);
  font-size: 0.7rem;
  font-weight: 600;
  letter-spacing: 0.04em;
}

body[data-design="mukunal-editorial-v2"][data-layout="reference-v7"] .gift-card-heading > p {
  max-width: 520px;
  margin: 0;
  color: rgba(255, 255, 255, 0.72);
  font-size: 0.92rem;
  line-height: 1.9;
}

body[data-design="mukunal-editorial-v2"][data-layout="reference-v7"] .gift-card-tier-grid {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 12px;
  margin-top: 30px;
}

body[data-design="mukunal-editorial-v2"][data-layout="reference-v7"] .gift-card-tier {
  min-width: 0;
  min-height: 250px;
  display: grid;
  align-content: start;
  gap: 12px;
  padding: 20px;
  border: 1px solid rgba(255, 255, 255, 0.13);
  border-radius: 22px;
  background: rgba(255, 255, 255, 0.065);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.05);
}

body[data-design="mukunal-editorial-v2"][data-layout="reference-v7"] .gift-card-tier.is-featured {
  border-color: rgba(117, 236, 208, 0.4);
  background: linear-gradient(155deg, rgba(12, 145, 118, 0.24), rgba(255, 255, 255, 0.075));
}

body[data-design="mukunal-editorial-v2"][data-layout="reference-v7"] .gift-card-tier-label {
  color: #8fe6d1;
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.08em;
}

body[data-design="mukunal-editorial-v2"][data-layout="reference-v7"] :where(.gift-card-purchase, .gift-card-usable) {
  display: grid;
  gap: 4px;
}

body[data-design="mukunal-editorial-v2"][data-layout="reference-v7"] :where(.gift-card-purchase, .gift-card-usable) small {
  color: rgba(255, 255, 255, 0.56);
  font-size: 0.7rem;
  letter-spacing: 0.06em;
}

body[data-design="mukunal-editorial-v2"][data-layout="reference-v7"] .gift-card-purchase strong {
  color: rgba(255, 255, 255, 0.78);
  font-size: clamp(1.15rem, 1.7vw, 1.45rem);
}

body[data-design="mukunal-editorial-v2"][data-layout="reference-v7"] .gift-card-usable strong {
  color: #fff;
  font-size: clamp(1.45rem, 2.2vw, 2rem);
  line-height: 1.15;
}

body[data-design="mukunal-editorial-v2"][data-layout="reference-v7"] .gift-card-arrow {
  color: rgba(143, 230, 209, 0.74);
  font-size: 1.05rem;
}

body[data-design="mukunal-editorial-v2"][data-layout="reference-v7"] .gift-card-bonus {
  width: fit-content;
  padding: 6px 9px;
  border-radius: 999px;
  color: #032f3a;
  background: #8fe6d1;
  font-size: 0.75rem;
  font-weight: 900;
}

body[data-design="mukunal-editorial-v2"][data-layout="reference-v7"] .gift-card-tier-note {
  align-self: end;
  color: rgba(255, 255, 255, 0.62);
  font-size: 0.7rem;
  line-height: 1.6;
}

body[data-design="mukunal-editorial-v2"][data-layout="reference-v7"] .gift-card-availability {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 12px 22px;
  align-items: start;
  margin: 22px 0 0;
  padding-top: 20px;
  border-top: 1px solid rgba(255, 255, 255, 0.13);
}

body[data-design="mukunal-editorial-v2"][data-layout="reference-v7"] .gift-card-availability strong {
  color: #8fe6d1;
  font-size: 0.82rem;
}

body[data-design="mukunal-editorial-v2"][data-layout="reference-v7"] .gift-card-availability span {
  color: rgba(255, 255, 255, 0.62);
  font-size: 0.78rem;
  line-height: 1.75;
}

@media (max-width: 1100px) and (min-width: 721px) {
  body[data-design="mukunal-editorial-v2"][data-layout="reference-v7"] .gift-card-tier-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 720px) {
  body[data-design="mukunal-editorial-v2"][data-layout="reference-v7"] .gift-card-offer {
    margin-top: 22px;
    padding: 24px 16px;
    border-radius: 22px;
  }

  body[data-design="mukunal-editorial-v2"][data-layout="reference-v7"] .gift-card-heading {
    grid-template-columns: 1fr;
    gap: 14px;
  }

  body[data-design="mukunal-editorial-v2"][data-layout="reference-v7"] .gift-card-heading h3 {
    font-size: clamp(2rem, 11vw, 3rem);
  }

  body[data-design="mukunal-editorial-v2"][data-layout="reference-v7"] .gift-card-tier-grid {
    grid-template-columns: 1fr;
    gap: 10px;
    margin-top: 22px;
  }

  body[data-design="mukunal-editorial-v2"][data-layout="reference-v7"] .gift-card-tier {
    min-height: 0;
    grid-template-columns: minmax(0, 0.85fr) auto minmax(0, 1.15fr);
    gap: 9px 12px;
    align-items: center;
    padding: 16px;
    border-radius: 18px;
  }

  body[data-design="mukunal-editorial-v2"][data-layout="reference-v7"] .gift-card-tier-label,
  body[data-design="mukunal-editorial-v2"][data-layout="reference-v7"] .gift-card-bonus,
  body[data-design="mukunal-editorial-v2"][data-layout="reference-v7"] .gift-card-tier-note {
    grid-column: 1 / -1;
  }

  body[data-design="mukunal-editorial-v2"][data-layout="reference-v7"] .gift-card-purchase {
    grid-column: 1;
  }

  body[data-design="mukunal-editorial-v2"][data-layout="reference-v7"] .gift-card-arrow {
    grid-column: 2;
  }

  body[data-design="mukunal-editorial-v2"][data-layout="reference-v7"] .gift-card-usable {
    grid-column: 3;
  }

  body[data-design="mukunal-editorial-v2"][data-layout="reference-v7"] .gift-card-availability {
    grid-template-columns: 1fr;
    gap: 7px;
  }
}

/* prepaid-compact-20260910: 回数券には適用しない */
body[data-design="mukunal-editorial-v2"][data-layout="reference-v7"] .js-gift-card-offer { padding: 24px 28px; border-radius: 22px; }
.js-gift-card-offer .prepaid-heading { display: flex; align-items: center; flex-wrap: wrap; gap: 8px 18px; }
.js-gift-card-offer .prepaid-heading h3 { margin: 0; color: #fff; font-size: clamp(1.4rem, 3vw, 2rem); line-height: 1.4; }
.js-gift-card-offer .prepaid-heading span { color: #8fe6d1; font-size: .85rem; }
.js-gift-card-offer .prepaid-intro { margin: 8px 0 16px; font-size: .875rem; color: #d1e4e4; }
.js-gift-card-offer .prepaid-table { width: 100%; min-width: 0; max-width: 100%; border-collapse: collapse; table-layout: fixed; font-size: .95rem; color: #fff; background: transparent; }
.js-gift-card-offer .prepaid-table th, .js-gift-card-offer .prepaid-table td { padding: 9px 8px; text-align: right; border: 0; border-bottom: 1px solid #ffffff24; background: transparent; font-variant-numeric: tabular-nums; white-space: nowrap; }
.js-gift-card-offer .prepaid-table th { color: #c6dddd; font-size: .8rem; font-weight: 500; }
.js-gift-card-offer .prepaid-table td, .js-gift-card-offer .prepaid-table td strong { color: #fff; }
.js-gift-card-offer .prepaid-table td:last-child { color: #8fe6d1; }
.js-gift-card-offer .prepaid-status { margin: 14px 0 6px; font-size: .8rem; color: #c6dddd; }
.js-gift-card-offer .prepaid-details { margin: 0; padding: 0; border: 0; background: none; box-shadow: none; font-size: .8rem; color: #c6dddd; }
.js-gift-card-offer .prepaid-details summary { padding: 4px 0; cursor: pointer; color: #c6dddd; }
.js-gift-card-offer .prepaid-details p { margin: 8px 0 0; line-height: 1.7; }
@media(max-width:720px) {
  body[data-design="mukunal-editorial-v2"][data-layout="reference-v7"] .js-gift-card-offer { padding: 20px 14px; }
  .js-gift-card-offer .prepaid-table { font-size: .875rem; }
  .js-gift-card-offer .prepaid-table th, .js-gift-card-offer .prepaid-table td { padding: 9px 3px; }
}
