.purchase-options-overlay .dialog,
.dialog:has(> .purchase-options) {
  width: min(580px, 100%);
  border-radius: 24px;
  background: #232729;
  border: 1px solid #ffffff20;
  box-shadow: 0 24px 80px #0006;
}

.purchase-options {
  padding: 38px 30px 28px;
  color: #f5f5f7;
}

.purchase-options__heading {
  margin: 0 28px 26px 0;
}

.purchase-options h2 {
  margin: 0 0 9px;
  font: 650 28px/1.15 var(--body, -apple-system, BlinkMacSystemFont, sans-serif);
  letter-spacing: -.7px;
}

.purchase-options__heading p {
  margin: 0;
  color: #b9bdc0;
  font-size: 14px;
  line-height: 1.5;
  overflow-wrap: anywhere;
}

.purchase-options__choices {
  display: grid;
  gap: 1px;
  margin: 0;
  padding: 0;
  list-style: none;
  border: 1px solid #ffffff12;
  border-radius: 16px;
  overflow: hidden;
  background: #ffffff10;
}

.purchase-options__choice,
.purchase-options__rental {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  padding: 18px;
  background: #2a2e30;
}

.purchase-options h3 {
  margin: 0 0 4px;
  font-size: 15px;
  line-height: 1.25;
  font-weight: 600;
}

.purchase-options__choice p,
.purchase-options__rental p {
  margin: 0;
  color: #aaafb2;
  font-size: 12px;
  line-height: 1.4;
}

.purchase-options__buy,
.purchase-options__unavailable {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  min-height: 38px;
  padding: 9px 18px;
  border: 0;
  border-radius: 999px;
  font-family: inherit;
  font-size: 13px;
  font-weight: 600;
  line-height: 1.25;
  white-space: nowrap;
  text-decoration: none;
}

.purchase-options__buy {
  background: #f5f5f7;
  color: #1d1d1f;
  transition: background .18s ease, transform .18s ease;
}

.purchase-options__buy svg {
  width: 14px;
  height: 14px;
  stroke-width: 1.7;
}

.purchase-options__buy:hover { background: #fff; transform: scale(1.025); }
.purchase-options__buy:active { transform: scale(.98); }
.purchase-options__buy:focus-visible { outline: 3px solid #a5d4c2; outline-offset: 4px; }

.purchase-options__store-note,
.purchase-options__empty {
  margin: 15px 4px 20px;
  color: #aeb3b6;
  font-size: 12px;
  line-height: 1.55;
}

.purchase-options__empty {
  padding: 18px;
  margin: 0 0 16px;
  background: #ffffff06;
  border-radius: 16px;
  font-size: 14px;
}

.purchase-options__rental {
  padding: 18px 0 0;
  border-top: 1px solid #ffffff13;
  background: none;
}

.purchase-options__unavailable {
  background: #ffffff08;
  color: #8e9497;
  cursor: default;
}

@media (max-width: 480px) {
  .purchase-options { padding: 34px 20px 24px; }
  .purchase-options h2 { font-size: 25px; }
  .purchase-options__choice { padding: 15px 13px; gap: 10px; }
  .purchase-options__buy,
  .purchase-options__unavailable { padding-inline: 13px; font-size: 12px; }
  .purchase-options__choice h3,
  .purchase-options__rental h3 { font-size: 14px; }
}

@media (prefers-reduced-motion: reduce) {
  .purchase-options__buy { transition: none; }
  .purchase-options__buy:hover,
  .purchase-options__buy:active { transform: none; }
}
