.invite-share { background:#fff;padding:24px 20px;margin-bottom:12px; }
.invite-share h2 { font-size:19px;margin-bottom:20px; }
.invite-poster-frame { width:min(100%,320px);aspect-ratio:640/860;margin:0 auto 22px;background:#fafafa;border:1px solid #eee;display:grid;place-items:center; }
.invite-poster-frame img { display:block;width:100%;height:100%;object-fit:contain; }
.invite-poster-frame [hidden] { display:none; }
.invite-poster-status { text-align:center;font-size:13px;color:#777;padding:20px;line-height:1.8; }
.invite-code-row { display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap;margin-bottom:20px; }
.invite-code-row > span { font-size:13px;color:#75757f; }
.invite-code-row strong { font-size:20px;color:#c91f2d;overflow-wrap:anywhere; }
.invite-code-row button { display:grid;place-items:center;background:#f3f3f5;border-radius:6px;width:36px;height:36px;color:#575762; }
.invite-actions { display:grid;grid-template-columns:1fr 1fr;gap:12px; }
.invite-actions button { display:flex;align-items:center;justify-content:center;gap:7px;font-size:14px;padding:13px 8px; }
.invite-link { display:block;font-size:12px;line-height:1.7;color:#767681;overflow-wrap:anywhere;user-select:text;margin-top:18px; }
.invite-open-image { display:block;background:none;color:#a8232e;margin:16px auto 0;padding:8px 12px;font-size:13px; }
.invite-full-image { display:block;max-width:100%;height:auto;margin:auto; }
.clipboard-helper { position:fixed;left:-9999px;top:0; }
@media(max-width:360px){.invite-share{padding:20px 16px}.invite-actions{gap:8px}.invite-actions button{font-size:13px}}
