/* Shared game signup invite + dialog, tinted by the page's --accent. */
.signup-invite{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:28px 0;margin-bottom:36px;border-bottom:1px solid color-mix(in oklch,var(--accent) 30%,#2a2f38)}
.signup-invite h2{margin:8px 0;color:#fff}
.signup-invite .eyebrow{color:var(--accent);text-shadow:none}
.signup-button{background:var(--accent);color:#0a0c10;border:0;border-radius:6px;padding:14px 22px;font:inherit;font-weight:800;cursor:pointer;white-space:nowrap}
.signup-button:hover{background:color-mix(in oklch,var(--accent) 85%,#fff)}
#signup-dialog{background:color-mix(in oklch,var(--accent) 8%,#16191f);color:#eef1f5;border:1px solid color-mix(in oklch,var(--accent) 45%,transparent);border-radius:14px;padding:40px;width:min(560px,calc(100% - 32px));max-height:calc(100dvh - 32px);overflow:auto;box-sizing:border-box}
#signup-dialog::backdrop{background:rgba(0,0,0,.75);backdrop-filter:blur(4px)}
#signup-dialog .eyebrow{color:var(--accent);text-shadow:none}
#close-signup{position:absolute;right:14px;top:10px;font:28px/1 system-ui;background:transparent;border:0;color:inherit;cursor:pointer;padding:8px}
#signup-dialog h2{font-size:32px;margin:12px 0;color:#fff}
#signup-dialog p{line-height:1.6}
#signup-form{display:grid;gap:16px;max-width:580px}
#signup-form input[type=email]{font:inherit;padding:14px;border-radius:5px;border:1px solid #888;background:#fff;color:#161616;width:100%;box-sizing:border-box}
#signup-form .signup-consent{display:flex;gap:10px;align-items:flex-start}
#signup-form .signup-consent input{margin-top:5px}
#signup-form .signup-trap{position:absolute;left:-10000px}
#signup-form button{font:inherit;font-weight:800;cursor:pointer;padding:14px 22px;border:0;border-radius:5px;background:var(--accent);color:#0a0c10}
#signup-dialog .signup-privacy{font-size:13px;color:#aeb5c0;margin:20px 0 0}
#signup-dialog input:focus-visible,#signup-dialog button:focus-visible,.signup-button:focus-visible{outline:3px solid color-mix(in oklch,var(--accent) 55%,#fff);outline-offset:3px}
html:has(#signup-dialog[open]){overflow:hidden}
@media(max-width:600px){.signup-invite{align-items:flex-start;flex-direction:column}#signup-dialog{padding:32px 22px}}
