.gc-email-section-lock { position:absolute; inset:0; z-index:30; min-height:420px; display:flex; justify-content:center; align-items:flex-start; padding:clamp(65px,18vh,180px) 20px 35px; background:rgba(20,17,31,.48); backdrop-filter:blur(2px); }
.gc-email-section-lock .cabinet-load-error { position:sticky; top:20vh; width:min(100%,480px); padding:36px; border-radius:24px; background:#fff; text-align:center; box-shadow:0 14px 55px #17122433; }
.gc-email-section-lock h2,.gc-email-upgrade h2 { margin:0 0 16px; font-size:28px; }
/* A single centered OTP dialog opens after an explicit confirmation click. */
.gc-email-upgrade { position:sticky; top:10vh; box-sizing:border-box; width:min(100%,520px); padding:44px 32px 32px; border:0; border-radius:24px; color:var(--text,#26222e); background:#fff; text-align:center; box-shadow:0 20px 70px #17122444; }
.gc-email-floating { position:fixed; z-index:10000; overflow-y:auto; min-height:0; align-items:center; padding:24px 16px; }
.gc-email-floating .gc-email-upgrade { position:relative; top:auto; margin:auto; }
.gc-email-icon { display:grid; place-items:center; width:72px; height:72px; margin:0 auto 28px; border:1px solid #e9ddff; border-radius:22px; color:var(--gold,#7c3aed); background:#f2ebff; }
.gc-email-icon svg { width:34px; height:34px; }
.gc-email-upgrade p { margin:12px 0; line-height:1.5; }
.gc-email-upgrade .gc-email-address { font-weight:700; overflow-wrap:anywhere; }
.gc-email-dismiss { position:absolute; top:12px; right:16px; width:36px; height:36px; border:0; border-radius:10px; color:var(--muted,#6b7280); background:#f3f1f7; font-size:28px; cursor:pointer; }
.gc-email-upgrade .gc-email-otp { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:10px; margin:24px 0 12px; }
.gc-email-upgrade .gc-email-otp input { box-sizing:border-box; width:100%; min-width:0; height:64px; padding:0; border:1px solid #dedbe5; border-radius:14px; background:#faf9fc; text-align:center; font:inherit; font-size:26px; color:inherit; }
.gc-email-upgrade .gc-email-otp input:focus { outline:2px solid var(--gold,#7c3aed); outline-offset:2px; background:#fff; }
.gc-email-upgrade .gc-email-hint { font-size:13px; color:var(--muted,#6b7280); }
.gc-email-request { margin:12px 0; border:0; padding:8px; background:none; color:var(--gold,#7c3aed); font:inherit; font-size:14px; cursor:pointer; }
.gc-email-request:disabled,.gc-email-verify:disabled { opacity:.55; cursor:wait; }
.gc-email-upgrade .gc-email-verify { display:block; width:100%; margin-top:16px; }
.gc-email-upgrade .gc-email-error { color:#a52237; font-size:14px; }
.gc-email-error:empty { display:none; }
@media (max-width:480px) {
  .gc-email-upgrade { padding:44px 20px 24px; }
  .gc-email-upgrade .gc-email-otp { gap:7px; }
  .gc-email-upgrade .gc-email-otp input { height:52px; }
}
.gc-email-card-list { display:grid; grid-template-columns:repeat(auto-fit,minmax(250px,1fr)); gap:24px; margin:24px 0; }
.gc-email-card-preview { padding:24px; border-radius:24px; background:#fff; }
.gc-email-card-art { aspect-ratio:1.58; padding:26px; border-radius:22px; background:linear-gradient(125deg,#44238c,#8250dc); color:#fff; display:flex; flex-direction:column; justify-content:space-between; font-size:25px; }
.gc-email-card-art strong { font-size:clamp(18px,2vw,25px); white-space:nowrap; }
.gc-email-card-actions { display:flex; flex-wrap:wrap; gap:10px; margin-top:20px; }
