.invitation-gate{box-sizing:border-box;max-width:42rem;margin:clamp(1rem,6vh,4rem) auto;padding:1.5rem;min-height:60vh}
.invitation-card{padding:clamp(1rem,4vw,2rem);border:1px solid var(--line);border-radius:var(--radius,16px);background:var(--surface);overflow-wrap:anywhere}
.invitation-card h1,.invitation-card h2{margin-top:.4rem}
.invitation-card+.invitation-card{margin-top:1.5rem}
.invitation-name{display:flex;flex-direction:column;gap:.5rem;margin:1.5rem 0}
.invitation-name input{box-sizing:border-box;width:100%;min-width:0;background:transparent;color:inherit;border:0;border-bottom:1px solid var(--line);border-radius:0;padding:.65rem 0;font:inherit}
.invitation-actions{display:flex;flex-wrap:wrap;gap:.75rem}
.invitation-actions button,.invitation-card>button{min-height:44px;padding:.65rem 1.1rem}
.invitation-note{font-size:.9em;color:var(--muted);margin-top:1rem}
.settings-trigger,.nav-button[data-view="settings"]{position:relative}
.invitation-icon{position:relative;display:inline-flex;align-items:center;justify-content:center;line-height:0}
.invitation-dot{position:absolute;z-index:2;top:0;left:0;transform:translate(-25%,-25%);width:9px;height:9px;border-radius:50%;background:#43a56b;box-shadow:0 0 0 2px var(--surface);pointer-events:none}
.invitation-check-notice{font-size:.9rem;padding:.5rem;flex-basis:100%}
@media(max-width:480px){.invitation-gate{padding:1rem;margin:1rem auto}.invitation-card{padding:1.25rem}.invitation-actions{gap:.5rem}}
