.invitation-page{min-height:100vh}.invitation-page main{padding-top:64px;padding-bottom:80px}.invitation-page h1{letter-spacing:-.045em;margin:18px 0 36px;font-size:clamp(2.5rem,7vw,4.8rem);line-height:1.04}.invitation-card{background:var(--g-panel);border:1px solid var(--g-line);border-radius:12px;max-width:720px;padding:32px}.invitation-card h2{margin:0 0 16px;font-size:1.6rem}.invitation-card p{color:var(--g-muted);margin:16px 0;line-height:1.7}.invitation-card strong{color:var(--g-ink);overflow-wrap:anywhere}.invitation-card .g-button{white-space:normal;text-align:left;min-height:48px;margin-top:12px}.invitation-switch{margin-top:24px;text-decoration:underline;display:block}.invitation-footnote{max-width:650px;color:var(--g-muted);margin-top:24px;font-size:.9rem;line-height:1.7}.invitation-form{flex-wrap:wrap;align-items:end;gap:12px;display:flex}.invitation-form label{flex:1;gap:8px;min-width:220px;display:grid}.invitation-form input{background:var(--g-bg);color:var(--g-ink);border:1px solid var(--g-line);border-radius:6px;min-height:48px;padding:12px;font-size:1rem}.invitation-form button{margin:0!important}.invitation-list{gap:12px;max-width:1000px;margin-top:32px;display:grid}.invitation-row{background:var(--g-panel);border:1px solid var(--g-line);border-radius:8px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:20px;display:flex}.invitation-row strong{overflow-wrap:anywhere}.invitation-row small{color:var(--g-muted);margin-top:6px;display:block}.invitation-row button{border:1px solid var(--g-line);color:var(--g-ink);background:0 0;border-radius:6px;padding:10px 16px}.invitation-message{border:1px solid var(--g-accent);overflow-wrap:anywhere;border-radius:8px;max-width:720px;margin-top:20px;padding:16px}.invitation-message a{text-decoration:underline}.invitation-confirm{flex-wrap:wrap;align-items:center;gap:12px;width:100%;display:flex}.invitation-confirm p{flex:1;min-width:200px}.invitation-page button:disabled{cursor:wait}:is(.invitation-page button:focus-visible,.invitation-page a:focus-visible){outline:2px solid var(--g-accent);outline-offset:4px}@media (max-width:600px){.invitation-page main{padding-top:36px}.invitation-card{padding:24px}.invitation-form{display:grid}.invitation-form label{min-width:0}.invitation-page .g-brand{max-width:150px}}
