/* Pay gate (core/paygate.js): full screen, pay-first sign-ups that have not paid yet. */
body.paygate-on{overflow:hidden}
body.paygate-on .modal-backdrop,body.paygate-on .taxn-root,body.paygate-on .tour-root,body.paygate-on .askp-fly{display:none!important}
body.paygate-on .toast-root{z-index:1100}

.paygate{position:fixed;inset:0;z-index:1000;overflow-y:auto;display:flex;align-items:flex-start;justify-content:center;padding:48px 24px;
  background:radial-gradient(1200px 600px at 10% -10%,var(--orange-tint),transparent 60%),radial-gradient(900px 500px at 110% 110%,#F6ECE1,transparent 60%),var(--paper);
  animation:fade .2s ease}
.pg-card{width:min(920px,100%);margin:auto 0;background:#fff;border-radius:24px;box-shadow:0 30px 80px rgba(14,11,15,.12),0 2px 6px rgba(14,11,15,.05);padding:32px 36px 36px}
.pg-top{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:22px}
.pg-logo{height:40px;width:auto}
.pg-logout{font-size:13.5px;font-weight:700;color:var(--muted);padding:6px 4px;text-decoration:underline;text-underline-offset:3px}
.pg-logout:hover{color:var(--ink)}
.pg-title{font-family:var(--display);font-size:clamp(26px,3.2vw,34px);font-weight:700;color:var(--ink)}
.pg-lead{margin-top:6px;font-size:16px;color:var(--body)}
.pg-lead b{color:var(--orange-text)}
.pg-body{margin-top:24px}

.pg-steps{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.pg-step{display:flex;flex-direction:column;gap:14px;min-width:0;padding:20px;border:1px solid var(--line);border-radius:18px;background:var(--field)}
.pg-step-h{display:flex;align-items:center;gap:10px}
.pg-step-h h2{font-size:17px}
.pg-num{flex:none;display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:50%;background:var(--orange);color:#fff;font-family:var(--display);font-weight:700;font-size:15px}

.pg-qr{display:flex;justify-content:center}
.pg-qr img{display:block;width:min(260px,100%);height:auto;max-height:320px;object-fit:contain;border:1px solid var(--line);border-radius:16px;background:#fff;padding:8px}
.pg-payto{display:flex;flex-direction:column;gap:4px;padding:12px 14px;border-radius:14px;background:#fff;border:1px solid var(--line)}
.pg-payto-l{font-size:13px;color:var(--body)}
.pg-payto-l b{color:var(--ink)}
.pg-payto-name{font-weight:700;color:var(--ink)}
.pg-payto-row{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}
.pg-payto-num{padding:0;border:0;background:none;cursor:copy;font-family:var(--display);font-weight:700;font-size:21px;letter-spacing:.03em;color:var(--ink);text-decoration:underline dotted var(--tan);text-underline-offset:4px}
.pg-payto-note{font-size:13px;color:var(--body);white-space:pre-line;overflow-wrap:anywhere}

.pg-step .bp-sec{gap:12px}
.pg-step .bp-shot img{max-height:140px}
.pg-submit{min-height:48px;font-size:15.5px;margin-top:auto}
.pg-submit:disabled{opacity:.45;cursor:not-allowed}

.pg-wait,.pg-note{display:flex;align-items:center;gap:12px;padding:22px;border-radius:16px;background:var(--field);border:1px solid var(--line);font-size:15px;font-weight:600;color:var(--ink)}
.pg-note svg{flex:none;color:var(--orange)}
.pg-spin{flex:none;width:22px;height:22px;border-radius:50%;border:3px solid var(--orange-tint);border-top-color:var(--orange);animation:pg-spin .8s linear infinite}
@keyframes pg-spin{to{transform:rotate(360deg)}}
@media (prefers-reduced-motion:reduce){.pg-spin{animation-duration:2.4s}}

@media (max-width:760px){
  .paygate{padding:16px 12px}
  .pg-card{padding:20px 16px 22px;border-radius:20px}
  .pg-top{margin-bottom:16px}
  .pg-logo{height:32px}
  .pg-steps{grid-template-columns:1fr;gap:14px}
  .pg-step{padding:16px}
  .pg-lead{font-size:15px}
}
