/* Minimal account and invitation surfaces share Enola's editorial typography. */
.inv-account.inv-card[data-step=admitted]>[data-show=admitted]{display:grid;gap:28px}
.inv-account .invite-box{padding:0}
.flow-page main{flex:1;width:100%}.flow-page .access-header{padding-bottom:18px}.flow-page .access-footer nav{display:flex;gap:12px}.flow-page .access-footer{flex-wrap:wrap}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
.inv{max-width:600px;margin:32px auto 65px;padding:0 24px;min-height:450px}.inv-card{width:100%;border:0;background:transparent;box-shadow:none}.inv-stub{display:none}.inv-perf{display:none}.inv-body{padding:0}.inv-card [data-show]{display:none}.inv-card[data-step] [data-show]{display:none}.inv-card[data-step=state] [data-show=state],.inv-card[data-step=phone] [data-show=phone],.inv-card[data-step=code] [data-show=code],.inv-card[data-step=agree] [data-show=agree],.inv-card[data-step=one-tap] [data-show=one-tap],.inv-card[data-step=done] [data-show=done],.inv-card[data-step=missing] [data-show=missing],.inv-card[data-step=expired] [data-show=expired],.inv-card[data-step=conflict] [data-show=conflict],.inv-card[data-step=failed] [data-show=failed],.inv-card[data-step=redeem] [data-show=redeem],.inv-card[data-step=loading] [data-show=loading],.inv-card[data-step=load-error] [data-show=load-error],.inv-card[data-step=redeem-error] [data-show=redeem-error],.inv-card[data-step=connecting] [data-show=connecting],.inv-card[data-step=open] [data-show=open],.inv-card[data-step=waiting] [data-show=waiting],.inv-card[data-step=not-invited] [data-show=not-invited],.inv-card[data-step=signed-out] [data-show=signed-out],.inv-invites[data-step=ready] [data-show=ready],.inv-invites[data-step=not-member] [data-show=not-member],.inv-invites[data-step=error] [data-show=error]{display:grid;gap:20px}
.inv-title,.inv-h2{font:400 44px/1.12 var(--serif);letter-spacing:-1.5px;text-wrap:balance}.inv-lead,.muted{font-size:17px;line-height:1.6;color:var(--muted)}.inv-foot,.fine{font-size:12px;line-height:1.65;color:var(--muted)}.inv-foot{margin-top:28px}.inv-foot a,.fine a,.inv-consent a{text-decoration:underline;text-underline-offset:3px}.inv .btn{display:flex;align-items:center;justify-content:center;gap:15px;padding:13px 20px;min-height:50px;background:var(--accent);color:#fff;border:1px solid var(--accent);border-radius:3px;font:600 16px/1.4 var(--font-sans)}.inv .btn:disabled{opacity:.5}.inv .btn-ghost{background:transparent;color:var(--accent)}.inv-wide{width:100%}.inv-link-btn{background:transparent;border:0;border-bottom:1px solid currentColor;padding:4px 0;justify-self:start;font-size:14px;color:var(--accent)}.inv-phone-row{display:grid;grid-template-columns:auto 1fr;gap:8px}.field{min-width:0;width:100%;height:52px;background:#fffdf9;border:1px solid #aeb8a7;border-radius:3px;padding:12px 14px;font-size:17px;color:var(--ink)}.field-label{display:block;font-size:13px;margin-bottom:8px}.inv-cc{width:auto}.inv-cc-fixed{display:flex;align-items:center;padding:0 13px;font-size:14px;border:1px solid var(--line);border-radius:3px}.inv-field{display:grid;gap:5px}.inv-optin{display:none!important}.inv-consent{font-size:12px;color:var(--muted);line-height:1.65}.inv-row{display:flex;align-items:center;justify-content:space-between;gap:14px}.inv-note{font-size:13px;border-left:2px solid var(--accent);padding-left:14px;line-height:1.6}.inv-done svg{width:28px;height:28px;color:var(--accent)}.inv-preview{font:11px/1.5 var(--app-font-native-sans);color:var(--muted);margin-bottom:18px}.form-error,#inv-live{font-family:var(--app-font-native-sans);font-size:13px;color:#923b31}.inv-spin,.inv-skel{height:30px;width:30px;border:2px solid var(--line);border-top-color:var(--accent);border-radius:50%}.inv-count{display:flex;align-items:baseline;gap:12px}.inv-count strong{font:42px var(--serif)}.inv-copy-row{display:flex;gap:10px}.inv-copy-row input{font-size:12px}.inv-invites{display:grid;gap:18px}.inv-texts{padding-top:30px;margin-top:30px;border-top:1px solid var(--line)}
.simple-flow{width:min(940px,calc(100% - 48px));margin:35px auto 65px}.flow-intro{max-width:550px;margin-bottom:48px}.flow-intro .eyebrow{margin-bottom:20px}.simple-flow h1,.consent-proof h1{font:400 clamp(39px,5vw,54px)/1.1 var(--serif);letter-spacing:-1.8px}.flow-lead{font-size:17px;line-height:1.6;color:var(--muted);margin-top:20px}.text-options{display:grid;grid-template-columns:1fr 1fr;gap:70px}.text-option{position:relative}.text-option h2{font:400 31px/1.2 var(--serif);letter-spacing:-.6px}.sender{font-size:19px;margin:18px 0 24px}.sender span{font-size:14px;color:var(--muted)}.text-option .button{width:100%;margin-top:24px;justify-content:space-between}.text-option .button-outline{background:transparent;color:var(--accent);border:1px solid var(--accent)}.text-disclosure{font-size:12px;color:var(--muted);line-height:1.7;margin-top:22px}.text-disclosure a,.flow-foot a{text-decoration:underline;text-underline-offset:3px}.whatsapp-option{border-left:1px solid var(--line);padding-left:45px}.or-label{position:absolute;left:-9px;top:50%;font-size:10px;background:var(--paper);color:var(--muted);padding-block:10px}.text-option .fine{margin-top:20px}.flow-foot{font-size:13px;color:var(--muted);margin-top:45px}.consent-proof{width:min(720px,calc(100% - 48px));margin:40px auto 75px}.consent-proof .eyebrow{margin-bottom:20px}.consent-proof section{margin-top:42px}.consent-proof h2{font:400 28px/1.25 var(--serif);letter-spacing:-.6px;margin-bottom:15px}.consent-proof p{font-size:16px;color:var(--muted);line-height:1.7}.consent-proof a{text-decoration:underline;text-underline-offset:3px}.consent-proof blockquote{font-size:14px;line-height:1.7;margin:22px 0;padding:20px 24px;background:var(--sage);border-left:2px solid var(--accent)}
html.wf-loading .inv p:not(.form-error):not(.inv-preview),html.wf-loading .inv h1,html.wf-loading .inv h2,html.wf-loading .inv h3,html.wf-loading .inv label,html.wf-loading .inv a,html.wf-loading .inv select{visibility:hidden}.inv [data-show] .form-error{visibility:visible}.inv-preview{visibility:visible!important}
@media(prefers-reduced-motion:no-preference){.inv-spin,.inv-skel{animation:flow-spin 1.2s linear infinite}.inv-card[data-step] [data-show]{animation:flow-in .24s ease-out}@keyframes flow-spin{to{transform:rotate(360deg)}}@keyframes flow-in{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}}
@media(max-width:640px){.inv{margin-top:40px;min-height:380px}.inv-title,.inv-h2{font-size:38px}.text-options{grid-template-columns:1fr;gap:38px}.whatsapp-option{border:0;border-top:1px solid var(--line);padding:35px 0 0}.or-label{left:50%;top:-10px;padding:0 10px}.simple-flow{margin-top:30px}.flow-intro{margin-bottom:35px}.flow-page .access-footer{gap:14px}.flow-page .access-footer nav{order:3;width:100%;gap:8px}}

html.wf-loading .inv input{color:transparent;caret-color:transparent}html.wf-loading .inv input::placeholder{color:transparent}html.wf-loading .inv button{color:transparent;position:relative}html.wf-loading .inv button::after{content:"→";color:var(--paper);position:absolute;right:18px}html.wf-loading .inv .inv-link-btn::after{color:var(--accent)}

.consent-entries{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:24px}.consent-entries figure{margin:0}.consent-entries img{width:100%;height:auto;display:block;border:1px solid var(--line)}.consent-entries figcaption{font-size:13px;margin-top:12px;color:var(--muted)}

.message-entry{width:min(520px,calc(100% - 48px));margin:70px auto 80px;text-align:center}
.message-mark{display:block;width:88px;height:88px;object-fit:contain;margin:0 auto 24px}
.message-entry h1{font:400 clamp(42px,5vw,54px)/1.1 var(--serif);letter-spacing:-1.8px}
.message-greeting{display:flex;justify-content:center;margin:36px 0 28px}
.message-greeting p{font-size:17px;line-height:1.55;background:var(--sage);padding:19px 26px;border-radius:22px 22px 22px 4px}
.message-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px}
.message-actions .button{gap:12px;padding-inline:16px}
.message-actions .button-outline{background:transparent;color:var(--accent)}
.message-actions .button-outline:hover{background:var(--sage)}
.message-number{font-size:13px;letter-spacing:.02em;color:var(--muted);margin-top:18px}
.message-entry .text-disclosure{border-top:1px solid var(--line);padding-top:25px;margin-top:32px;text-align:left;font-size:12px;line-height:1.75}
.login-entry{max-width:405px}.login-entry .button{width:100%;margin-top:32px;justify-content:space-between}.login-entry .native-feedback{margin-top:18px}
@media(max-width:600px){.message-entry{margin-top:43px;margin-bottom:55px}.message-greeting{margin-top:30px}.message-actions{grid-template-columns:1fr}.message-entry .text-disclosure{font-size:11px}}

/* Account content has its own page hierarchy, separate from invitation steps. */
/* The account page follows the website's typography and open section layout. */
.account-page{width:min(880px,calc(100% - 96px));max-width:none;margin:64px auto 80px;min-height:440px;padding:0}
.account-heading{margin-bottom:44px}
.account-heading h1{font:400 clamp(38px,5vw,50px)/1.1 var(--serif);letter-spacing:-1.6px}
.account-page .inv-h2{font:400 27px/1.2 var(--serif);letter-spacing:-.65px;text-wrap:pretty}
.account-page .inv-lead,.account-page .muted{font-size:16px;line-height:1.6}
.account-panel{min-width:0;background:transparent;border:0;border-radius:0}
.account-page .account-access{max-width:560px;gap:20px;padding:0}
.account-page .account-access .invite-box{padding-top:4px}
.account-page .inv-account.inv-card[data-step=admitted]>[data-show=admitted]{grid-template-columns:1fr;gap:0}
.account-page .inv-invites,.account-page .inv-texts{display:grid;grid-template-columns:200px minmax(0,1fr);column-gap:48px;row-gap:20px;margin:0;padding:32px 0;border-top:1px solid var(--line);align-items:start}
.account-page .inv-invites>[data-show]{grid-column:2}
.account-page .inv-invites>[data-show=ready]{gap:18px}
.account-page .inv-count{gap:6px;font-size:16px;color:var(--muted)}
.account-page .inv-count strong{font:600 16px/1.6 var(--font-sans);color:var(--ink)}
.account-page .inv-copy-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px}
.account-page .inv-copy-row input{font-size:14px;background:transparent}
.account-page .inv-copy-row .btn{height:52px;align-self:start;padding-inline:20px;white-space:nowrap}
.account-page .inv-row{flex-wrap:wrap;justify-content:start;gap:12px 24px}
.account-page .inv-row .btn{background:transparent;color:var(--accent);border:0;padding:0;min-height:32px;font-size:14px;font-weight:400;text-decoration:underline;text-underline-offset:4px}
.account-text-content{display:grid;justify-items:start;gap:20px}
.account-page .inv-texts .muted{font-size:15px;max-width:460px}
.account-page .inv-link-btn{font-family:var(--font-sans);min-height:32px;border:0;text-decoration:underline;text-underline-offset:4px}
.account-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px;margin-top:8px;padding-top:20px;border-top:1px solid var(--line);max-width:560px;font-size:14px;color:var(--muted)}
.inv-account[data-step=admitted] .account-actions{max-width:none}
.account-actions>a{display:inline-flex;align-items:center;gap:8px;min-height:44px}
.account-actions .form-error{flex-basis:100%}
html.wf-loading .account-heading h1,html.wf-loading .account-page .inv-count{visibility:hidden}
@media(max-width:760px){.account-page{width:calc(100% - 44px);margin:40px auto 56px}.account-heading{margin-bottom:32px}.account-page .inv-invites,.account-page .inv-texts{grid-template-columns:1fr;gap:20px;padding:28px 0}.account-page .inv-invites>[data-show]{grid-column:1}.account-page .inv-h2{font-size:26px}.account-page .inv-copy-row{grid-template-columns:1fr}.account-page .inv-copy-row .btn{width:100%}.account-actions{margin-top:4px}}
