.recipient-public main { max-width: none; min-height: 100svh; padding: 0; }
.recipient-public .recipient-view { display: flex; flex-direction: column; min-height: 100svh; padding: 20px 24px 0; }
.recipient-public .recipient-boutique { min-height: 40px; margin: 0 auto 16px; }
.recipient-public .recipient-stage { flex: 1; width: 100%; max-width: 810px; min-height: calc(100svh - 128px); }
.recipient-public .recipient-letter-wrap { max-width: 680px; }
.recipient-public .recipient-footer { display: flex; align-items: center; justify-content: space-between; gap: 16px; width: 100%; max-width: 680px; margin: 0 auto; padding: 12px 20px; text-align: left; }
.recipient-public .footer-wordmark { font: 500 1.4rem/1 var(--serif); letter-spacing: -.04em; }
.recipient-public .recipient-settings { margin: 0; }
.recipient-public .motion-button { min-height: 44px; font-size: .6875rem; }
.recipient-public .recipient-letter-actions { margin: 0; padding: 8px 20px; }
.recipient-public .recipient-access { margin: 0; padding: 16px 24px 0; font-size: .6875rem; line-height: 1.7; }
.recipient-public .replay-button { min-height: 44px; }
.recipient-public .recipient-atmosphere { inset: 0; }
.recipient-public .letter-card.valentine > .occasion-art { right: 12px; top: 8px; transform: none; }
.recipient-public .letter-card.floral { overflow: clip; }

@media (max-width: 650px) {
  .recipient-public .recipient-view { padding: 0; }
  .recipient-public .recipient-boutique { width: 100%; min-height: 44px; margin: 0; padding: 12px 14px; font-size: .625rem; letter-spacing: .08em; gap: 10px; }
  .recipient-public .recipient-boutique .tiny-line { width: 18px; }
  .recipient-public .recipient-stage { max-width: none; min-height: calc(100svh - 44px); }
  .recipient-public .recipient-view[data-opened="true"] .recipient-boutique { display: none; }
  .recipient-public .recipient-view[data-opened="true"] .recipient-stage { min-height: 100svh; }
  .recipient-public .recipient-cover { max-width: none; padding: 32px 24px 24px; }
  .recipient-public .envelope { width: min(82vw, 340px); }
  .recipient-public .recipient-cover h1 { font-size: clamp(2.6rem, 11vw, 3.4rem); }
  .recipient-public .recipient-letter-wrap { max-width: none; }
  .recipient-public .recipient-letter-wrap .letter-card { display: flex; flex-direction: column; width: 100%; min-height: 100svh; border-radius: 0; padding-inline: clamp(24px, 6.5vw, 36px); padding-bottom: 36px; box-shadow: none; }
  .recipient-public .recipient-letter-wrap .letter-card:not(:has(> .occasion-art)) { padding-top: 48px; }
  .recipient-public .recipient-letter-wrap .letter-card.raya { padding-top: 80px; }
  .recipient-public .recipient-letter-wrap .letter-card h2 { font-size: clamp(2.3rem, 9.5vw, 3.25rem); max-width: none; line-height: 1.08; }
  .recipient-public .recipient-letter-wrap .letter-message { font-size: clamp(1.125rem, 5vw, 1.35rem); line-height: 1.8; }
  .recipient-public .recipient-letter-wrap .letter-kicker { font-size: .6875rem; }
  .recipient-public .recipient-letter-wrap .letter-brand { margin-top: auto; padding-top: 28px; }
  .recipient-public .greeting-media[data-orientation="portrait"] { max-width: none; }
  .recipient-public .greeting-media :is(img, video) { max-height: 70svh; }
  .recipient-public .recipient-notice { max-width: calc(100% - 32px); margin: 16px; padding: 32px 24px; }
  .recipient-public .recipient-footer { max-width: none; padding: 8px 24px; }
  .recipient-public .footer-wordmark { font-size: 1.2rem; }
  .recipient-public .recipient-atmosphere { inset: 0; }
}
