.guest-page { margin: 0; min-height: 100dvh; display: grid; place-items: center; background: #101316; color: #f4f5f6; font: 16px/1.5 system-ui, sans-serif; padding: 24px; box-sizing: border-box; }
.guest-card { width: min(100%, 440px); }
.guest-mark { display: grid; place-items: center; height: 56px; width: 56px; border-radius: 18px; background: #0dbd8b; color: #082d25; font-size: 38px; margin-bottom: 24px; }
.guest-eyebrow { font-size: 12px; font-weight: 650; letter-spacing: .16em; color: #9aaba5; }
.guest-card h1 { font-size: clamp(24px, 6vw, 34px); line-height: 1.2; overflow-wrap: anywhere; margin: 14px 0; }
.guest-description { color: #aeb6bc; margin-bottom: 30px; }
.guest-card label { display: block; font-size: 14px; font-weight: 600; margin-bottom: 8px; }
.guest-card input { box-sizing: border-box; width: 100%; border: 1px solid #50595f; border-radius: 9px; padding: 13px 14px; font: inherit; background: #1b2025; color: #f4f5f6; margin-bottom: 18px; }
.guest-card input:focus { outline: 2px solid #0dbd8b; outline-offset: 2px; }
.guest-button { border: 0; border-radius: 8px; background: #0dbd8b; color: #092c24; padding: 12px 16px; font: 600 14px/1.4 system-ui, sans-serif; cursor: pointer; }
.guest-card .guest-button { width: 100%; padding: 15px; }
.guest-button:disabled { opacity: .65; cursor: wait; }
.guest-button:focus-visible { outline: 2px solid #0dbd8b; outline-offset: 3px; }
.guest-button-secondary { background: transparent; color: inherit; border: 1px solid #717a81; }
.guest-footnote, .guest-invite-expiration { font-size: 12px; color: #8e9ca5; margin-top: 22px; }
.guest-error { color: #ffa9a1; overflow-wrap: anywhere; }
.guest-invite-create { margin-top: 10px; }
.guest-invite-result { width: 100%; margin-top: 12px; text-align: left; font: 14px/1.45 system-ui, sans-serif; overflow-wrap: anywhere; }
.guest-invite-result:empty { display: none; }
.guest-invite-description { margin: 12px 0; }
.guest-invite-url { box-sizing: border-box; width: 100%; padding: 10px; background: transparent; color: inherit; border: 1px solid #717a81; border-radius: 6px; font: 13px/1.4 system-ui, sans-serif; }
.guest-invite-actions { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 12px; }
.guest-account-caption { margin: 24px 0 12px; padding-top: 18px; border-top: 1px solid #50595f; color: #8e9ca5; font: 12px/1.4 system-ui, sans-serif; }
.guest-private-open { white-space: nowrap; }
.guest-host-dialog { box-sizing: border-box; width: min(440px, calc(100vw - 32px)); background: #1b2025; color: #f4f5f6; border: 1px solid #50595f; border-radius: 14px; padding: 28px; font: 16px/1.5 system-ui, sans-serif; }
.guest-host-dialog::backdrop { background: #0009; }
.guest-host-dialog h2 { font-size: 22px; padding-right: 20px; margin: 0 0 18px; }
.guest-dialog-close { position: absolute; top: 10px; right: 12px; background: transparent; border: 0; color: inherit; font: 28px/1 system-ui, sans-serif; cursor: pointer; padding: 4px; }
[hidden] { display: none !important; }
