/* the grown-ups-only check (parent-gate.js). System fonts only: no third-party calls. */
.pg-back { position: fixed; inset: 0; z-index: 100; display: grid; place-items: center; padding: 16px; background: rgba(42,10,74,.6); backdrop-filter: blur(4px); -webkit-backdrop-filter: blur(4px); }
.pg-card { position: relative; width: min(380px, 100%); max-height: calc(100vh - 32px); overflow: auto; text-align: center; color: #2a0a4a; background: #fffaf2;
  border: 4px solid #2a0a4a; border-radius: 24px; padding: 18px 20px 16px; box-shadow: 0 8px 0 #2a0a4a; font: 600 16px/1.4 ui-rounded, system-ui, -apple-system, sans-serif; }
.pg-card img { display: block; margin: -4px auto 2px; width: 110px; height: 110px; object-fit: contain; }
.pg-card h2 { font: 900 26px ui-rounded, system-ui, sans-serif; margin: 0 0 6px; }
.pg-card p { margin: 6px 0; } .pg-dest { font-size: 14px; opacity: .8; } .pg-q { font-size: 18px; }
.pg-x { position: absolute; top: 8px; right: 10px; width: 36px; height: 36px; border-radius: 50%; border: 3px solid #2a0a4a; background: #fff; font: 800 22px/1 system-ui, sans-serif; cursor: pointer; color: #2a0a4a; }
.pg-form { display: flex; gap: 8px; justify-content: center; margin-top: 10px; }
.pg-form input { width: 96px; font: 800 24px system-ui, sans-serif; text-align: center; border: 3px solid #2a0a4a; border-radius: 14px; padding: 6px; color: #2a0a4a; }
.pg-btn { font: 900 22px ui-rounded, system-ui, sans-serif; color: #fff; background: #ff8a00; border: 3px solid #2a0a4a; border-radius: 999px; padding: 6px 24px; box-shadow: 0 4px 0 #2a0a4a; cursor: pointer; }
.pg-msg { min-height: 1.4em; color: #d83a34; font-weight: 800; }
@media (max-height: 540px) { .pg-card img { width: 64px; height: 64px; } .pg-card h2 { font-size: 21px; } .pg-card { padding: 12px 16px; } .pg-card p { margin: 3px 0; } }
