.anonymous-checkout { font-family: system-ui, sans-serif; background: #090d1f; color: #f8f8ff; margin: 0; }
.anonymous-checkout main { max-width: 600px; margin: 3rem auto; padding: 1.5rem; }
.anonymous-checkout fieldset { border: 1px solid #64748b; border-radius: 8px; margin: 1rem 0; }
.anonymous-checkout fieldset label { display: block; margin: 1rem 0; }
.anonymous-checkout button, .anonymous-checkout input { font: inherit; }
.anonymous-checkout button { cursor: pointer; border-radius: 8px; padding: .8rem 1.2rem; margin-top: 1rem; }
.anonymous-checkout button:disabled { cursor: wait; }
.anonymous-checkout a { color: #8dd8ff; }
.anonymous-checkout [hidden] { display: none !important; }
#payment-element { margin: 1.5rem 0; }
#restore-code { display: block; overflow-wrap: anywhere; font-family: monospace; font-size: clamp(1.4rem, 5vw, 2rem); font-weight: 700; letter-spacing: .08em; padding: 1rem; background: #1e293b; }
.anonymous-restore { padding: 1rem; margin: .5rem auto; max-width: 600px; background: #1e293b; color: #f8f8ff; border-radius: 8px; position: relative; z-index: 2; }
.anonymous-restore summary { cursor: pointer; }
.family-code-dialog { width: min(600px, calc(100vw - 32px)); max-height: 85dvh; box-sizing: border-box; overflow-y: auto; padding: 24px; border: 1px solid #d9a441; border-radius: 14px; background: #172033; color: #f8f8ff; }
.family-code-dialog::backdrop { background: rgba(0, 0, 0, .7); }
.family-code-dialog button { min-height: 44px; cursor: pointer; }
.family-code-dialog .anonymous-restore { margin: 12px 0; }
.anonymous-restore input { max-width: 100%; box-sizing: border-box; }
.family-sharing-code { display: block; font-family: monospace; font-size: clamp(1.4rem, 5vw, 2rem); font-weight: 700; letter-spacing: .08em; overflow-wrap: anywhere; padding: 1rem 0; }
.family-sharing img { display: block; max-width: 100%; height: auto; margin: 1rem auto; }
.family-sharing [hidden] { display: none !important; }
#pack-play-links { display: flex; flex-wrap: wrap; gap: 1rem; margin-top: 1rem; }
.parent-notice { line-height: 1.45; border-top: 1px solid #64748b; margin-top: 1rem; }
.parent-notice h2 { font-size: 1.2rem; }
.parent-notice ul { padding-left: 1.25rem; }
.parent-notice li { margin: .4rem 0; }
.privacy-footer { max-width: 600px; margin: 1rem auto; padding: 1rem 1.5rem; line-height: 1.8; overflow-wrap: anywhere; }
.receipt-footer { font-size: .9rem; line-height: 1.5; }
#marketing-signup { border-top: 1px solid #64748b; margin-top: 1.5rem; }
#marketing-signup label { display: block; margin-bottom: .5rem; }
#marketing-email { width: 100%; box-sizing: border-box; padding: .65rem; }
@media (max-width: 600px) {
  .anonymous-checkout main { margin: .75rem auto; padding: 1rem; }
  .anonymous-checkout fieldset { padding: .5rem; }
  .parent-notice { font-size: .95rem; }
}
@media print {
  .family-sharing { display: none !important; }
  .anonymous-checkout { background: white; color: black; }
  .anonymous-checkout main { margin: 0; max-width: none; }
  .anonymous-checkout main > :not(#confirmation), .anonymous-checkout > footer, #play-link, #pack-play-links, #print-receipt, #marketing-signup, #copy-family-code, #copy-family-code-status { display: none !important; }
  #restore-code { background: white; color: black; border: 1px solid black; }
  .anonymous-checkout a { color: black; }
}
