/* A separate entry screen; active gameplay sizing and action positions are untouched. */
html.pf-invitation-pending main{visibility:hidden}
body.pf-invitation-active main > :not(#pf-invitation),body.pf-invitation-active > .bottom-nav,body.pf-invitation-active > .pf-game-nav,body.pf-invitation-active .pf-header-profile{display:none!important}
body.pf-invitation-active main{display:block!important;min-height:0!important;height:auto!important;overflow:visible!important;padding:20px 16px 40px!important}
body.pf-invitation-active{overflow:auto!important}
#pf-invitation{box-sizing:border-box;width:100%;max-width:520px;margin:16px auto 40px;padding:clamp(20px,6vw,36px);border:1px solid var(--border);border-radius:24px;background:var(--surface);color:var(--text);text-align:left;box-shadow:0 12px 36px var(--shadow)}
#pf-invitation h1{font-size:clamp(27px,7vw,38px);line-height:1.15;letter-spacing:-.035em;margin:12px 0 18px;overflow-wrap:anywhere}
#pf-invitation .eyebrow{font-size:11px;letter-spacing:.12em;margin:0;color:var(--muted)}
#pf-invitation .pf-invitation-opponent{font-size:18px;line-height:1.5;font-weight:700;overflow-wrap:anywhere;margin:0 0 8px}
#pf-invitation .pf-invitation-detail{font-size:14px;line-height:1.55;margin:0 0 24px;color:var(--muted)}
#pf-invitation form{display:block;max-width:none;margin:0;padding:0}
#pf-invitation label{display:block;font-size:14px;font-weight:700;margin:0 0 8px}
#pf-invitation input{box-sizing:border-box;display:block;width:100%;min-height:52px;border:1px solid var(--border);border-radius:12px;background:var(--surface-raised);color:var(--text);padding:12px 14px;font:inherit;font-size:17px}
#pf-invitation .pf-invitation-accept{box-sizing:border-box;display:block;width:100%;min-height:58px;padding:16px;margin:18px 0 0;border:2px solid var(--accent);border-radius:14px;background:var(--accent);color:var(--accent-ink);font:inherit;font-size:18px;font-weight:800;line-height:1.25;cursor:pointer}
#pf-invitation .pf-invitation-accept:disabled{background:var(--surface-raised);border-color:var(--border);color:var(--muted);cursor:default;opacity:1}
#pf-invitation :focus-visible{outline:3px solid var(--selected-border,var(--accent));outline-offset:3px}
#pf-invitation .pf-invitation-identity{font-weight:650;font-size:14px;overflow-wrap:anywhere}
#pf-invitation .pf-invitation-hint{font-size:12px;line-height:1.6;color:var(--muted);margin:10px 0 0}
#pf-invitation .pf-invitation-error{font-size:14px;line-height:1.5;margin:14px 0 0;overflow-wrap:anywhere}
#pf-invitation .pf-invitation-error:empty{display:none}
#pf-invitation .pf-invitation-alternatives{margin:24px 0 0;padding:16px 0 0;border-top:1px solid var(--border);font-size:13px;color:var(--muted)}
#pf-invitation summary{min-height:32px;cursor:pointer}
#pf-invitation .pf-invitation-alternatives a{display:block;min-height:44px;padding:12px 0;box-sizing:border-box;color:var(--text);text-decoration:underline}
#pf-invitation [hidden]{display:none!important}
@media(max-width:360px){body.pf-invitation-active main{padding:12px 10px 28px!important}#pf-invitation{padding:20px 16px;margin-top:8px}}

/* The waiting host sees their link immediately, outside the tools menu. */
#game.friend-waiting #gameTable > :not(.friend-invite-panel){display:none!important}
#game.friend-waiting .friend-invite-panel{grid-column:1/-1;grid-row:1/4;align-self:center;width:min(100%,440px);min-width:0;box-sizing:border-box;margin:auto;padding:20px 16px;border:1px solid var(--border);border-radius:18px;background:var(--surface);text-align:left}
.friend-invite-panel h2{font-size:clamp(22px,6vw,32px);line-height:1.2;margin:8px 0 20px}
.friend-invite-panel label{display:block;font-size:13px;font-weight:700;margin:0 0 8px}
.friend-invite-panel input{box-sizing:border-box;width:100%;min-width:0;min-height:48px;padding:10px 12px;border:1px solid var(--border);border-radius:10px;background:var(--bg);color:var(--text);font:16px system-ui,sans-serif}
.friend-invite-panel p{font-size:12px;line-height:1.5;color:var(--muted);margin:12px 0 0}
#friendStartStatus{font-size:14px;color:var(--muted);line-height:1.5}#friendStartStatus:empty{display:none}
@media(max-height:500px) and (orientation:landscape){#game.friend-waiting .friend-invite-panel{padding:12px}.friend-invite-panel h2{margin:4px 0 10px;font-size:22px}.friend-invite-panel p{margin-top:8px}}

#friendInviteMatches{box-sizing:border-box;display:block;width:100%;min-height:44px;margin-top:16px;padding:10px 12px;font:inherit;font-size:14px}
