@media (max-width: 760px), (max-width: 1000px) and (max-height: 500px) and (pointer: coarse) {
  .purchase-layout { padding: 20px 16px 40px; gap: 24px; }
  .purchase-intro h1 { font-size: 26px; line-height: 1.4; word-break: keep-all; }
  .purchase-intro > p { font-size: 15px; line-height: 1.7; }
  .purchase-help a { display: inline-flex; align-items: center; min-height: 44px; font-size: 15px; }
  .purchase-form-shell { padding: 20px 16px; border-radius: 16px; }
  .purchase-form-shell h2 { font-size: 24px; line-height: 1.4; word-break: keep-all; }
  .purchase-form-shell > p { font-size: 14px; line-height: 1.6; margin-bottom: 20px; }
  .purchase-form-shell .field { font-size: 15px; line-height: 1.5; margin-bottom: 18px; }
  .purchase-form-shell .field small, .purchase-form-shell .required { font-size: 12px; }
  .purchase-form-shell input:not([type='checkbox']):not([type='hidden']), .purchase-form-shell textarea { min-height: 48px; padding: 12px 13px; border-radius: 10px; font-size: 16px; line-height: 1.5; }
  .purchase-form-shell input::placeholder, .purchase-form-shell textarea::placeholder { font-size: 16px; }
  .purchase-form-shell textarea { min-height: 104px; }
  .purchase-layout .row { grid-template-columns: minmax(0, 1fr); gap: 0; }
  .purchase-components { margin-bottom: 20px; }
  .purchase-components legend { font-size: 15px; line-height: 1.5; }
  .purchase-components legend small { font-size: 12px; }
  .purchase-checks { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
  .purchase-checks label { min-height: 52px; padding: 12px 10px; font-size: 14px; line-height: 1.5; }
  .purchase-checks input { width: 18px; height: 18px; margin: 0; }
  .purchase-form-shell .consent { font-size: 13px; line-height: 1.7; }
  .purchase-form-shell .consent input { width: 18px; height: 18px; margin: 2px 0 0; }
  .purchase-form-shell .primary, #purchase-review .primary, #purchase-review .secondary { min-height: 48px; padding: 12px 14px; border-radius: 10px; font-size: 16px; line-height: 1.5; word-break: keep-all; }
  #purchase-form > .primary { margin-top: 18px; }
  #purchase-review { width: calc(100% - 24px); max-width: none; max-height: calc(100dvh - 24px); padding: 24px 16px 16px; overflow-y: auto; }
  #purchase-review h2 { font-size: 23px; line-height: 1.4; word-break: keep-all; padding-right: 30px; }
  #purchase-review .close { width: 44px; height: 44px; right: 4px; top: 4px; }
  #purchase-review .summary div { grid-template-columns: 76px minmax(0, 1fr); font-size: 14px; }
  #purchase-review .summary { padding: 14px; }
  .purchase-embedded .purchase-layout { padding: 16px 16px 24px; }
  .purchase-embedded .purchase-form-shell { padding: 0; }
  html:not([lang='ko']) .purchase-intro h1,
  html:not([lang='ko']) .purchase-form-shell h2,
  html:not([lang='ko']) #purchase-review h2,
  html:not([lang='ko']) .purchase-form-shell .primary,
  html:not([lang='ko']) #purchase-review .primary,
  html:not([lang='ko']) #purchase-review .secondary { word-break: normal; overflow-wrap: anywhere; }
}

