.participation-welcome { max-width: 660px; margin: 2rem auto; }
.participation-welcome > h1 { font-size: clamp(2rem, 5vw, 3.2rem); overflow-wrap: anywhere; }
.participation-welcome .card { margin-top: 1.5rem; }
.invite-optional { margin: 1rem 0; }
.invite-optional .field { margin-top: 1rem; }
.invite-account-help p { margin-top: 0; }
.invite-account-help .actions { display: flex; align-items: center; gap: 1rem; flex-wrap: wrap; }
.invite-registration > summary { cursor: pointer; color: var(--green-dark); font-weight: 650; }
.participation-tabs, .conversation-tabs { display: flex; gap: .5rem; flex-wrap: wrap; margin: 1.2rem 0; }
.participation-tabs a, .conversation-tabs a { border: 1px solid var(--line); border-radius: 12px; padding: .75rem 1rem; text-decoration: none; font-weight: 700; }
.participation-tabs a[aria-current], .conversation-tabs a[aria-current] { background: var(--ink); color: white; border-color: var(--ink); }
.unread-count { background: #ffdb83; color: #24362c; border-radius: 20px; padding: .12rem .5rem; font-size: .8rem; }
.participant-result, .waiting-card { text-align: center; padding: clamp(1.5rem, 5vw, 3rem); }
.participant-result .friend-name { color: var(--ink); font-size: clamp(2rem, 5vw, 3rem); font-weight: 800; overflow-wrap: anywhere; margin: 1rem 0; }
.participation-data { margin-top: 1.5rem; }
.secret-chat { max-width: 850px; margin: 0 auto; }
.chat-history { display: flex; flex-direction: column; gap: .8rem; max-height: 460px; overflow-y: auto; padding: .6rem .4rem; scroll-behavior: smooth; }
.chat-bubble { max-width: 88%; border: 1px solid #e0e6df; border-radius: 18px 18px 18px 4px; background: #f4f6f2; padding: .9rem 1rem; align-self: flex-start; }
.chat-bubble.mine { align-self: flex-end; border-color: #c9dfd3; background: #eaf5ee; border-radius: 18px 18px 4px 18px; }
.chat-bubble strong { font-size: .8rem; }
.chat-bubble p { margin: .4rem 0; white-space: pre-wrap; overflow-wrap: anywhere; }
.chat-bubble time { font-size: .7rem; color: #59675f; }
.secret-chat form[data-chat-send] { margin-top: 1.2rem; }
.conversation-options { border-top: 1px solid var(--line); margin-top: 1rem; padding-top: 1rem; }
.conversation-options form { margin-top: 1rem; }
.invite-panel { margin-bottom: 1.5rem; background: #eff7f1; border-color: #d1e4d7; }
.invite-panel .field input, .activation-share textarea { font-size: .85rem; }
.activation-share { margin: 1rem 0; }
.participant-account { margin-top: .5rem; font-size: .85rem; }
.participation-list-card .button { margin-top: 1rem; }
.owner-participation-choice { margin: 1rem 0 1.25rem; border-color: #c8dfd0; background: #f0f8f2; }
.owner-participation-notice { margin: 1rem 0; }
.owner-participation-notice a { font-weight: 700; }
.owner-participation-access { margin: .55rem 0; }
.owner-claim-form { border-bottom: 1px solid var(--line); padding: .35rem 0 1rem; margin-bottom: 1rem; }
.owner-claim-form p { margin: 0 0 .7rem; }
.participating-heading { margin-top: 1.5rem; }
@media (max-width: 600px) { .invite-header .nav { flex-wrap: nowrap; } .invite-header .nav-actions { width: auto; } .participation-welcome { margin-top: 1rem; } .chat-bubble { max-width: 94%; } .conversation-tabs a { flex: 1; text-align: center; font-size: .86rem; padding: .65rem; } .chat-history { max-height: 380px; } }
