:root{font-family:Arial,Helvetica,sans-serif;color:#10100f;background:#ec673a;color-scheme:light;--paper:#fff2d8;--line:#211e1940;--ease:cubic-bezier(.2,.8,.2,1);--ink:#161510;font-synthesis:none;-webkit-font-smoothing:antialiased}
*{box-sizing:border-box}body{margin:0;cursor:default}button,input,textarea,select{font:inherit;color:inherit}button,a{touch-action:manipulation}button{cursor:pointer;background:none;border:0}button:disabled{cursor:default;opacity:.4}a{color:inherit;text-underline-offset:4px}button,a{transition:background .18s,color .18s,opacity .18s,transform .18s var(--ease)}button:active:not(:disabled){transform:scale(.97)}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid currentColor;outline-offset:4px}[hidden]{display:none!important}h1,h2,h3,p{margin:0}button,textarea{ -webkit-tap-highlight-color:transparent}.club-shell{max-width:840px;margin:0 auto;padding:24px 28px}.club-header{display:grid;grid-template-columns:1fr auto;align-items:center;gap:16px;margin-bottom:24px}.home{justify-self:start;display:block}.home svg{display:block}.club-header h1{grid-column:2;font-size:32px;line-height:1.15;letter-spacing:-1.2px;font-weight:500}.club-header #account{justify-self:end;font-size:13px;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.club-tabs{--gap:12px;--selected:0;position:relative;isolation:isolate;display:grid;grid-template-columns:repeat(3,1fr);gap:var(--gap);margin-bottom:12px;border-bottom:1px solid #211e1938}.club-tabs::before{content:"";position:absolute;z-index:-1;inset:auto auto -1px 0;width:calc((100% - 2 * var(--gap)) / 3);height:2px;border-radius:2px;background:var(--ink);transform:translateX(calc(var(--selected) * (100% + var(--gap))));transition:transform .3s var(--ease)}.club-tabs button{height:50px;border:0;border-radius:5px 5px 0 0;font-size:19px;letter-spacing:-.25px}.club-tabs button[aria-selected=true]{font-weight:600}.club-tabs button:hover:not([aria-selected=true]){background:#0000000a}.quiet{padding:9px 0;min-height:40px;font-size:14px;text-underline-offset:4px}.quiet:hover{opacity:.65}.solid{background:#11110f;color:var(--paper);padding:13px 18px;border-radius:7px;font-size:16px;line-height:1.25}.solid:hover:not(:disabled){background:#292721}.gate{min-height:360px;height:calc(100dvh - 124px);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:40px 12px}.gate-art{height:180px;width:180px;flex-shrink:0;overflow:hidden;margin-bottom:22px}.gate-art svg{display:block;width:100%;height:100%}.gate h1{font-size:28px;font-weight:500;letter-spacing:-.8px;line-height:1.2;text-wrap:balance;margin-bottom:28px}.gate #gate-note{font-size:14px;max-width:360px;line-height:1.55;margin:18px 0 0}.gate #gate-note p{font:inherit;margin:0}.gate #gate-note p+p{margin-top:7px}.gate #gate-note a{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}.gate #gate-note:empty{display:none}#inside{--context:0px}#inside:has(.club-context > :not([hidden])){--context:44px}.club-context:not(:has(> :not([hidden]))){display:none}.club-context{height:44px;display:flex;align-items:center;justify-content:space-between;gap:16px;font-size:12px}.club-context #admin{margin-left:auto}.update-link{font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:left;max-width:75%;padding:8px 0}.update-link::before{content:'✦';margin-right:9px}.update-link:hover{text-decoration:underline}.chat-panel{height:auto;min-height:0;max-height:calc(100dvh - 190px - var(--context));display:flex;flex-direction:column;background:transparent;border:0;overflow:hidden;position:relative}.feed{flex:0 1 auto;min-height:0;overflow:auto;overscroll-behavior:contain;padding:0 8px 0 0;scrollbar-width:thin;scrollbar-color:#29272150 transparent}.older{display:block;margin:0 auto 18px;color:#57534b}.empty{padding:32px 12px;text-align:center;line-height:1.5}.empty h2{font-size:23px;letter-spacing:-.5px;font-weight:500}.empty p{margin-top:8px;font-size:16px;color:#493326}.message{position:relative;padding:20px 0 17px;margin:0;border-bottom:1px solid #211e192b}.message:last-child{border-bottom:0}.message.fresh{animation:arrive .25s var(--ease) both}.message:target,.message.highlight{background:#ec673a18;transition:background .4s}.message-head{display:flex;flex-wrap:wrap;align-items:center;column-gap:9px;row-gap:4px;min-height:20px;margin-bottom:8px}.wallet{font-size:14px;font-weight:600;color:color-mix(in srgb,var(--wallet),#000 22%);font-variant-numeric:tabular-nums;letter-spacing:.1px;padding:0;cursor:default}.wallet.moderatable{cursor:pointer}.wallet.moderatable:hover{text-decoration:underline}.badge{font-size:11px;line-height:1;padding:3px 5px;border:1px solid #0003;border-radius:3px;color:#3e2c24}.message-time{font-size:12px;color:#523a2e;margin-left:1px}.message>.message-head>.message-time{margin-left:auto}.message>.message-head>.wallet::before{content:"";display:inline-block;width:6px;height:6px;margin:0 7px 1px 0;border-radius:50%;background:currentColor}.message-text,.rich-text{font-size:18px;line-height:1.5;white-space:pre-wrap;overflow-wrap:anywhere;user-select:text;cursor:default}.message-text a,.rich-text a{color:inherit;text-decoration:underline}.message-text.removed{color:#847a68;font-style:italic}.message-tools{display:flex;gap:16px;align-items:center;flex:1;min-height:30px}.message-tools>button{display:grid;place-items:center;width:34px;height:34px;border-radius:6px;color:#4e3025;padding:7px;opacity:.85;transition:opacity .2s,background .2s}.message-tools>button svg{width:20px;height:20px}.message-tools>button:hover,.message-tools>button[aria-expanded=true]{background:#2520140c;color:#17150f;opacity:1}.message:hover .message-tools>button,.message:focus-within .message-tools>button{opacity:1}.reactions{display:flex;gap:5px;flex-wrap:wrap}.reaction{font-size:12px;border:1px solid #0002;border-radius:6px;padding:3px 8px;min-height:27px;background:#fff5;white-space:nowrap}.reaction.mine{border-color:#3b3428;background:#ebcfab}.reaction:hover{background:#ec673a25}.reaction-picker{position:fixed;z-index:30;display:flex;gap:2px;padding:6px;background:var(--paper);border:1px solid #241e1933;border-radius:9px;box-shadow:0 5px 20px #21180d20}.reaction-picker button{display:grid;place-items:center;width:36px;height:36px;font-size:20px;padding:5px;border-radius:5px}.reaction-picker button[aria-pressed=true]{background:#ec673a24}.reaction-picker button:hover{background:#0001;transform:translateY(-2px)}.quoted{display:block;border-left:2px solid #84745c;padding:4px 9px;background:#00000005;margin:0 0 8px;font-size:12px;text-align:left;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.5}.quoted:hover{background:#0000000c}.pending{opacity:.65}.retry{font-size:12px;text-decoration:underline}.composer-wrap{flex-shrink:0;border:1px solid #211e1948;border-radius:11px;padding:8px 12px;background:var(--paper);margin-top:10px}.typing-line{height:0;min-height:0;opacity:0;overflow:hidden;display:flex;align-items:center;justify-content:space-between;font-size:12px;color:#726857;gap:12px;transition:height .2s var(--ease),opacity .2s var(--ease)}.typing-line:has(#typing.active),.typing-line:has(#slowmode:not(:empty)){height:25px;opacity:1}.typing-line #typing{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;opacity:0;transform:translateY(2px);transition:opacity .2s var(--ease),transform .2s var(--ease)}.typing-line #typing.active{opacity:1;transform:none}.dots{display:inline-flex;gap:3px;margin-right:8px;vertical-align:middle}.dots i{width:3px;height:3px;border-radius:50%;background:currentColor;animation:type 1.15s infinite}.dots i:nth-child(2){animation-delay:.14s}.dots i:nth-child(3){animation-delay:.28s}#composer{display:flex;align-items:flex-end;gap:16px}textarea{resize:none;width:100%;background:none;border:0;line-height:1.5;font-size:17px;padding:10px 0;min-height:46px;max-height:160px;scrollbar-width:thin}#message:focus{outline:none}textarea::placeholder{color:#8c806d}.send{width:46px;height:46px;padding:12px;flex-shrink:0}.send svg{width:22px;height:22px;display:block}.composer-status{min-height:0;font-size:11px;line-height:1.5;color:#775d40}.composer-status:not(:empty){padding-top:8px}.reply-draft{padding:2px 0 8px;display:flex;align-items:center;gap:12px;font-size:13px}.reply-draft>span{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border-left:2px solid #c26036;padding-left:10px}.reply-draft button{font-size:20px}.new-messages{position:absolute;bottom:115px;left:50%;transform:translateX(-50%);padding:9px 14px;font-size:12px;box-shadow:0 3px 10px #0001}.new-messages:active:not(:disabled){transform:translateX(-50%) scale(.97)}.list-panel{background:transparent;border:0;height:auto;min-height:0;max-height:calc(100dvh - 190px - var(--context));overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;padding:6px 8px 12px 0}.section-top{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:4px;font-size:15px;color:#493326}.section-top .solid{flex-shrink:0;margin-left:auto}.idea-card,.poll-card{padding:22px 0;border-bottom:1px solid #211e1933;animation:arrive .2s var(--ease)}.idea-card:last-child,.poll-card:last-child{border-bottom:0}.idea-card h3,.poll-card h3{font-size:25px;font-weight:500;letter-spacing:-.6px;line-height:1.3;margin:10px 0}.idea-title{display:block;text-align:left;padding:0;width:100%}.idea-title:hover h3{text-decoration:underline;text-underline-offset:4px}.card-meta{display:flex;gap:12px;align-items:center;flex-wrap:wrap;font-size:13px;color:#523a2e}.status-tag{font-size:10px;text-transform:uppercase;letter-spacing:.8px}.idea-preview{font-size:17px;line-height:1.5;color:#38281e;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere;white-space:pre-wrap}.card-actions{display:flex;gap:20px;align-items:center;margin-top:10px}.card-actions button{font-size:14px;padding:8px 0}.card-actions .liked{font-weight:bold}.poll-options{display:grid;gap:8px;margin-top:18px}.poll-option{position:relative;border:1px solid #95877380;border-radius:3px;overflow:hidden;text-align:left;padding:13px 15px;min-height:48px;font-size:14px;display:flex;justify-content:space-between;gap:20px}.poll-option::before{content:'';position:absolute;inset:0 auto 0 0;width:var(--result,0%);background:#ec673a21;transition:width .5s var(--ease)}.poll-option span{position:relative}.poll-option[aria-pressed=true]{border-color:#191812;background:#ec673a13}.poll-option:hover:not(:disabled){background:#ec673a12}.poll-option:disabled{opacity:1}.poll-note{font-size:14px;color:#493326;margin-top:12px;line-height:1.6}.poll-description{font-size:17px;color:#38281e;margin-top:6px}.toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);max-width:calc(100vw - 32px);padding:13px 20px;background:#161612;color:var(--paper);border-radius:4px;font-size:13px;line-height:1.5;z-index:20;box-shadow:0 4px 30px #0002;animation:arrive .2s}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}dialog{background:var(--paper);color:#17150f;border:1px solid #17130f;border-radius:10px;padding:28px;width:min(460px,calc(100vw - 28px));max-height:85dvh;box-shadow:0 18px 65px #22170c26;overflow:auto;scrollbar-width:thin}dialog::backdrop{background:#241b1459;backdrop-filter:blur(4px);animation:backdrop-in .34s var(--ease)}.dialog-head{position:relative;display:flex;justify-content:center;align-items:center;gap:24px;margin-bottom:18px;padding:0 32px;text-align:center}.dialog-head .icon{position:absolute;right:-7px;top:-4px}.dialog-head h2{font-size:26px;font-weight:500;line-height:1.3;letter-spacing:-.6px;overflow-wrap:anywhere}.icon{font-size:25px;min-width:32px;padding:0;line-height:30px}.dialog-stack{display:grid;gap:12px}.dialog-stack>button{border:0;border-bottom:1px solid var(--line);border-radius:0;text-align:left;padding:14px 2px;font-size:16px}.dialog-stack>button:hover{background:#ec673a12}.form-field{display:grid;gap:8px;font-size:14px;line-height:1.5;margin:17px 0}.form-field input,.form-field select,.form-field textarea{width:100%;border:1px solid #8b7c6455;border-radius:6px;padding:12px;background:#fff5;font-size:14px}.form-field textarea{min-height:110px}.form-field input,.form-field select,.form-field textarea{transition:border-color .18s,background .18s}.form-field input:focus,.form-field select:focus,.form-field textarea:focus{outline:0;border-color:#6d5844;background:#fff8;box-shadow:0 0 0 2px #6d584414}.form-actions{display:flex;gap:14px;align-items:center;justify-content:flex-end;margin-top:22px}.form-error{font-size:12px;color:#a0301d;line-height:1.5}.form-copy{font-size:16px;line-height:1.7;color:#71634c}.member-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 0;border-bottom:1px solid var(--line)}.member-row small{display:block;margin-top:5px;font-size:11px;color:#79674e}.update-item+.update-item{margin-top:28px;padding-top:24px;border-top:1px solid var(--line)}.update-item h3{font-size:17px;margin-bottom:9px}.update-item time{display:block;font-size:11px;color:#79674e;margin-bottom:12px}.comment{padding:17px 0;border-top:1px solid var(--line)}.comment .rich-text{margin-top:7px}.idea-comments{margin-top:25px}.comment-form{margin-top:12px}@keyframes backdrop-in{from{opacity:0}to{opacity:1}}
@keyframes arrive{from{opacity:0;translate:0 6px}to{opacity:1;translate:0 0}}@keyframes type{0%,70%,100%{opacity:.3;transform:translateY(0)}35%{opacity:1;transform:translateY(-2px)}}@keyframes modal-in{from{opacity:0;transform:translateY(7px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes modal-out{to{opacity:0;transform:translateY(5px) scale(.99)}}
@media(hover:none){.message-tools>button{opacity:1}.message-tools>button{min-height:32px}.reaction{min-height:32px}}@media(max-width:600px){.club-shell{padding:16px 14px max(14px,env(safe-area-inset-bottom))}.club-header{gap:8px;margin-bottom:20px}.club-header h1{font-size:27px;letter-spacing:-1px}.club-header #account{font-size:11px}.home svg{width:42px;height:42px}.club-tabs{--gap:8px}.club-tabs button{height:48px;font-size:18px}.club-context{height:44px;gap:10px}.chat-panel,.list-panel{height:auto;min-height:0;max-height:calc(100dvh - 158px - var(--context))}.feed{padding:0 4px 0 0}.composer-wrap{padding:6px 10px}.message{padding:18px 0 14px}.message-text{font-size:17px}.message-head{gap:7px}.wallet{font-size:13px}.message-tools{gap:14px}.message-tools>button{width:32px;height:32px}.message-tools>button{opacity:1}.message-time{font-size:11px}.gate{height:calc(100dvh - 93px);min-height:360px}.gate h1{font-size:25px}.gate p{font-size:13px}.list-panel{padding:6px 4px 12px 0}.section-top{font-size:14px;gap:12px}.section-top .solid{padding:11px 14px;font-size:15px}.new-messages{bottom:110px}.idea-card,.poll-card{padding:20px 0}dialog{padding:22px}.update-link{font-size:12px;max-width:68%}.club-context #admin{font-size:11px}.club-header #account{min-width:80px}.solid{min-height:42px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

.reactions:empty{display:none}.reactions:not(:empty){margin-top:8px}

@media(max-width:600px){#message,.form-field input,.form-field textarea,.form-field select{font-size:16px}.reaction-picker button{width:38px;height:38px}.dialog-head{margin-bottom:20px}}

/* A single readable column for the conversation and its composer. */
#messages,#composer,.typing-line,.reply-draft,.composer-status{width:100%;max-width:none;margin-left:auto;margin-right:auto}
.session-check #gate>:not(.gate-art){visibility:hidden}
.message-footer{display:flex;align-items:center;gap:18px;margin-top:7px;min-height:34px}
.message-tools>[data-action=more]{margin-left:auto}
.heart-button{--heart:#b5193c;display:inline-flex;align-items:center;justify-content:flex-start;gap:7px;position:relative;min-width:45px;min-height:30px;padding:3px 0;border-radius:5px;color:#4e3025;font-size:14px;line-height:1;transition:color .2s;overflow:visible}
.heart-button:disabled{opacity:1}.heart-button.is-liked,.heart-button:hover:not(:disabled){color:var(--heart)}
.heart-symbol{display:grid;place-items:center;position:relative;width:26px;height:26px;flex-shrink:0}
.heart-symbol svg{width:21px;height:21px;fill:transparent;transition:fill .18s,stroke .18s;overflow:visible}
.heart-button.is-liked .heart-symbol svg{fill:currentColor;stroke:currentColor}
.heart-count{font-variant-numeric:tabular-nums;min-width:1ch;text-align:left}
.heart-symbol::before,.heart-symbol::after{content:"";position:absolute;pointer-events:none;opacity:0}
.heart-symbol::before{inset:4px;border:2px solid var(--heart);border-radius:50%}
.heart-symbol::after{width:3px;height:3px;border-radius:50%;background:transparent;color:var(--heart);box-shadow:0 -17px,15px -8px,15px 8px,0 17px,-15px 8px,-15px -8px}
.heart-pop .heart-symbol svg{animation:heart-beat .44s var(--ease)}.heart-pop .heart-symbol::before{animation:heart-ring .4s ease-out}.heart-pop .heart-symbol::after{animation:heart-spark .46s ease-out}.heart-pop .heart-count{animation:heart-count .28s var(--ease)}
@keyframes heart-beat{0%{transform:scale(.75)}40%{transform:scale(1.24)}72%{transform:scale(.94)}100%{transform:scale(1)}}
@keyframes heart-ring{0%{transform:scale(.3);opacity:.7}80%,100%{transform:scale(1.8);opacity:0}}
@keyframes heart-spark{0%{transform:scale(.3);opacity:0}30%{opacity:.8}100%{transform:scale(1.15);opacity:0}}
@keyframes heart-count{from{transform:translateY(3px);opacity:.5}to{transform:none;opacity:1}}
.picker-heart svg{width:21px;height:21px;fill:#e83c58;stroke:#e83c58}
.card-actions>.heart-button{padding:3px 0;font-size:14px}
.wallet-dialog{max-width:408px;padding:24px}.wallet-options{display:grid;gap:0}
.wallet-option{display:flex;align-items:center;gap:16px;min-height:68px;width:100%;padding:12px 6px;text-align:left;border:0;border-bottom:1px solid #211e1929;border-radius:0;font-size:18px;animation:wallet-arrive .32s var(--ease) both}
.wallet-option:nth-child(2){animation-delay:45ms}.wallet-option:nth-child(3){animation-delay:90ms}
.wallet-option img{display:block;width:36px;height:36px;object-fit:contain;flex-shrink:0}
.wallet-option:nth-of-type(3){border-bottom:0}.wallet-option:hover{background:#00000005;transform:translateX(3px)}
.wallet-note{font-size:12px;line-height:1.6;color:#75654f;text-align:center;margin:4px 0 0}.wallet-note:empty{display:none}
@keyframes wallet-arrive{from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:600px){.message-footer{gap:16px;margin-top:7px}.message-tools{gap:12px}.wallet-dialog{padding:22px}.wallet-option{min-height:64px}.composer-wrap{padding-left:12px;padding-right:10px}.gate{height:calc(100dvh - 94px)}}
@media(prefers-reduced-motion:reduce){.heart-pop .heart-symbol svg,.heart-pop .heart-symbol::before,.heart-pop .heart-symbol::after,.heart-pop .heart-count,.wallet-option{animation:none!important}}

.poll-option{font-size:17px;min-height:50px;border-color:#211e1960;border-radius:6px}.poll-option::before{background:#211e1917}.poll-option[aria-pressed=true]{background:#211e1912}.quoted{font-size:14px;white-space:pre-wrap;line-height:1.4;padding:8px 10px;border-color:#472e22;background:#00000007}.card-actions .heart-button.is-liked{color:var(--heart)}
@media(max-width:600px){.club-shell{padding:16px 16px max(14px,env(safe-area-inset-bottom))}.club-header #account{font-size:11px;min-width:0}.club-header{grid-template-columns:1fr auto;gap:5px}.club-header h1{font-size:25px}.idea-card h3,.poll-card h3{font-size:23px}.form-field input,.form-field textarea,.form-field select{font-size:16px}.message-tools>button{height:34px;width:34px}}

/* All three club rooms stay open. Each room owns its scrolling area. */
body.club-connected .club-shell{max-width:1440px}
.club-header:has(#club-title:not([hidden])){grid-template-columns:1fr auto 1fr}
.club-header h1{font-size:30px;text-align:center}
.club-panels{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.club-panel{display:flex;flex-direction:column;min-width:0;height:clamp(520px,calc(100dvh - 150px - var(--context)),860px);min-height:0;max-height:none;overflow:hidden;padding:0;border:1px solid #211e1955;border-radius:11px;background:#ffffff05}
.panel-heading{height:66px;min-height:66px;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:0 18px;border-bottom:1px solid #211e1929}
.panel-heading h2{font-size:22px;font-weight:500;letter-spacing:-.45px;line-height:1.2}
.panel-actions{display:flex;align-items:center;gap:12px}
.panel-add{padding:8px 0;font-size:13px;white-space:nowrap;text-underline-offset:3px}
.panel-add:hover:not(:disabled){text-decoration:underline}
.vote-help{width:23px;height:23px;border:1px solid #211e1966;border-radius:50%;padding:0;font-size:13px;line-height:21px}
.feed,.panel-content{flex:1;min-height:0;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#29272150 transparent;padding:0 18px}
.feed{padding-top:2px}
.club-panel .empty{padding:32px 0;text-align:left}
.club-panel .empty h2{font-size:18px;font-weight:400;line-height:1.5;letter-spacing:0;color:#493326}
.club-panel .composer-wrap{margin:12px;padding:7px 9px;border-radius:8px;flex-shrink:0}
#composer{gap:8px;align-items:flex-end}
#message{display:block;flex:1;min-width:0;min-height:32px;max-height:120px;height:32px;padding:6px 0;font-size:16px;line-height:20px}
.send{width:32px;height:32px;padding:7px;border-radius:6px;display:grid;place-items:center}
.send svg{width:18px;height:18px}
.composer-status:empty{display:none}
.typing-line:has(#typing.active),.typing-line:has(#slowmode:not(:empty)){height:22px}
.message{padding:17px 0 13px}
.message-text{font-size:16px;line-height:1.5}
.message-head{column-gap:6px;row-gap:3px;margin-bottom:7px}
.wallet{font-size:12px}.message-time{font-size:11px}
.message-footer{gap:3px;margin-top:6px;min-height:30px}
.message-footer .heart-button{min-width:32px;min-height:30px;gap:3px;padding:0 3px 0 0}
.message-footer .heart-count:empty{display:none}
.message-tools{gap:3px;min-height:30px}
.message-tools>button{width:30px;height:30px;padding:6px}
.message-tools>button svg{width:18px;height:18px}
.message-tools>[data-action=more]{margin-left:0}
.ideas-toolbar{display:flex;justify-content:flex-end;padding:9px 14px 0;flex-shrink:0}
#idea-sort{max-width:100%;border:0;background:transparent;font-size:12px;padding:5px 3px;cursor:pointer;line-height:1.3}
.idea-card,.poll-card{padding:18px 0}
.idea-card h3,.poll-card h3{font-size:20px;line-height:1.3;letter-spacing:-.4px;margin:8px 0}
.idea-preview,.poll-description{font-size:15px;line-height:1.5}
.card-meta{font-size:11px;gap:8px}
.card-actions{gap:12px;margin-top:7px}
.card-actions button{font-size:12px}
.poll-options{gap:7px;margin-top:14px}
.poll-option{font-size:14px;min-height:42px;padding:10px 12px;gap:10px}
.poll-note{font-size:12px;line-height:1.5}
.new-messages{bottom:78px}
@media(max-width:1000px){.club-panels{grid-template-columns:1fr;gap:18px}.club-panel{height:480px}.chat-panel{height:clamp(460px,calc(100dvh - 150px - var(--context)),720px)}body.club-connected .club-shell{max-width:760px}.panel-heading{height:60px;min-height:60px}.message-text{font-size:17px}.wallet{font-size:13px}}
@media(max-width:600px){.club-header h1{font-size:25px}.club-header:has(#club-title:not([hidden])){grid-template-columns:1fr auto 1fr;gap:8px}.club-header .home svg{width:44px;height:44px}.club-panel{height:440px}.chat-panel{height:clamp(420px,calc(100dvh - 150px - var(--context)),660px)}.panel-heading{padding:0 15px}.feed,.panel-content{padding-left:15px;padding-right:15px}.club-panel .composer-wrap{margin:10px;padding:7px 9px}.panel-heading h2{font-size:21px}.message-tools{gap:3px}.message-footer{gap:3px}.message-tools>button{width:30px;height:30px}}

/* A personal entrance and three quiet, centered room headers. */
.club-brand{display:flex;flex-direction:column;align-items:flex-start;min-width:0}
.club-connected .club-header{display:grid;grid-template-columns:1fr auto 1fr;align-items:start;gap:16px;margin-bottom:16px}
.club-connected .club-brand{grid-column:2;align-items:center;gap:3px}
.club-connected .club-brand .home svg{width:72px;height:72px}
.club-connected .club-header h1{font-size:38px;line-height:1.15;letter-spacing:-1.3px;margin:0}
.club-connected .club-header #account{grid-column:3;max-width:100%;margin-top:18px;overflow-wrap:anywhere}
body.club-connected .club-shell{height:auto;min-height:100dvh;display:flex;flex-direction:column;padding-top:16px;padding-bottom:24px}
.club-connected #inside{display:flex;flex-direction:column;flex:none;min-height:0}
.club-connected .club-panels{flex:none;min-height:0;margin-top:clamp(24px,4vh,40px)}
.club-connected .club-panel{height:clamp(510px,78dvh,690px);min-height:0}
.panel-heading{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:8px;height:52px;min-height:52px;padding:0 15px}
.panel-heading h2{grid-column:2;grid-row:1;justify-self:center;text-align:center;font-size:21px}
.panel-start{grid-column:1;grid-row:1;justify-self:start}
.panel-end{grid-column:3;grid-row:1;justify-self:end}
.panel-add{display:grid;place-items:center;font-size:25px;width:30px;height:34px;padding:0;line-height:1}
.panel-add:hover:not(:disabled){text-decoration:none;opacity:.65}
#idea-sort{width:96px;max-width:100%;font-size:11px;padding:6px 0;text-align:right}
.message{padding:10px 0}.message-text{font-size:15px;line-height:1.4}
.message-bar{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:4px;min-height:28px}
.message-bar .message-head{flex:1;min-width:0;margin:0;column-gap:6px;row-gap:2px}
.message-bar .wallet{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.message-bar .wallet::before{content:"";display:inline-block;width:5px;height:5px;margin:0 6px 1px 0;border-radius:50%;background:currentColor}
.message-bar .message-time{font-size:10px;margin:0;opacity:.8}
.message-actions{display:flex;align-items:center;flex:none;gap:1px;min-height:28px}
.message-actions .heart-button{min-width:28px;min-height:28px;font-size:11px;gap:2px;padding:0 2px}
.message-actions .heart-count:empty{display:none}
.message-actions .heart-symbol{width:23px;height:26px}
.message-actions .heart-symbol svg{width:17px;height:17px}
.message-actions .message-tools{flex:none;gap:0;min-height:28px}
.message-actions .message-tools>button{width:28px;height:28px;min-height:28px;padding:6px}
.message-actions .message-tools>button svg{width:16px;height:16px}
.message .quoted{margin-bottom:5px;padding-top:2px;padding-bottom:2px}
.message .reactions:not(:empty){margin-top:5px}
.idea-card{padding:12px 0}.idea-card h3{font-size:19px;line-height:1.3;margin:6px 0}
.idea-preview{font-size:14px;line-height:1.45;-webkit-line-clamp:3}
.idea-card .card-meta{min-height:0;line-height:1.3}
.idea-card .card-actions{gap:12px;margin-top:5px;min-height:26px}
.idea-card .card-actions button{padding:3px 0;font-size:12px}
.idea-card .card-actions .heart-button{font-size:12px;min-height:26px}
.read-more{text-decoration:underline;text-underline-offset:3px}
.idea-card .card-actions .idea-more{margin-left:auto;font-size:21px;line-height:1;min-width:26px}
.idea-dialog{width:min(500px,calc(100vw - 32px));max-height:80dvh}
.idea-dialog .dialog-head h2{font-size:24px;line-height:1.25}
.idea-reader>.card-meta{margin-bottom:14px}
.idea-reader>.rich-text{font-size:16px;line-height:1.6}
.idea-admin-actions{display:flex;gap:16px;border-top:1px solid #211e1929;margin-top:20px;padding-top:12px}
.idea-admin-actions button{font-size:12px;padding:5px 0}
.x-gate h1{font-size:28px;margin-bottom:24px}
.username-form{width:min(300px,100%)}
.username-field{display:flex;align-items:center;gap:9px;background:var(--paper);border:1px solid #211e1948;border-radius:8px;padding:12px 15px;text-align:left}
.username-field>span{opacity:.5}.username-field input{border:0;outline:0;background:transparent;min-width:0;width:100%;font-size:16px;line-height:24px;padding:0}
.username-field:focus-within{border-color:#211e19}
.username-form #username-error{font-size:13px;line-height:1.4;margin:10px 0 0}
.username-form #username-error:empty{display:none}.username-form .solid{margin-top:18px}
@media(max-width:1000px){body.club-connected .club-shell{height:auto;min-height:100dvh;display:block}.club-connected #inside{display:block}.club-connected .club-panel{height:clamp(510px,82.5dvh,630px);min-height:0}.message-text{font-size:16px}}
@media(max-width:600px){.club-connected .club-header{grid-template-columns:1fr auto 1fr;gap:8px}.club-connected .club-header h1{font-size:32px;letter-spacing:-1px}.club-connected .club-brand .home svg{width:64px;height:64px}.club-connected .club-header #account{margin-top:10px;font-size:11px;white-space:normal;line-height:1.35}.panel-heading{padding:0 13px}.x-gate h1{font-size:25px}}

/* A compact entrance, with one centered character and no corner mark. */
body:not(.club-connected) .club-header .home{display:none}
.club-header:has(#account[hidden]){display:none}
.club-shell:has(#gate:not([hidden])){display:flex;flex-direction:column;justify-content:center}
#gate{height:auto;min-height:0;gap:24px;padding:40px 12px;-webkit-user-select:none;user-select:none}
#gate .gate-art{width:240px;height:240px;margin:0;overflow:visible}
#gate h1{font-size:40px;line-height:1.15;letter-spacing:-1.3px;margin:0;text-wrap:balance}
#gate #gate-note{margin:0}
#gate.gate-denied #gate-note{order:1;font-size:18px;line-height:1.45}
#gate.gate-denied #enter{order:2}
#gate .gate-eye-cc,#gate .gate-eye-x{transform-box:fill-box;transform-origin:center;transition:opacity .32s ease,transform .46s cubic-bezier(.16,1,.3,1),stroke .32s ease}
#gate .gate-eye-x{opacity:0;transform:rotate(-12deg) scale(.65)}
#gate.gate-denied .gate-eye-cc{opacity:0;stroke:#ff4b55;transform:rotate(12deg) scale(.65)}
#gate.gate-denied .gate-eye-x{opacity:1;transform:rotate(0) scale(1)}
@media(max-width:600px){
  #gate{gap:20px;padding:28px 4px}
  #gate .gate-art{width:210px;height:210px}
  #gate h1{max-width:340px;font-size:34px;letter-spacing:-1px}
}
@media(max-height:800px) and (min-width:601px){#gate{gap:18px;padding:16px 4px}#gate .gate-art{width:200px;height:192px}#gate h1{font-size:34px}}
@media(max-height:650px){#gate{gap:18px;padding:20px 4px}#gate .gate-art{width:170px;height:170px}#gate h1{font-size:30px}}

/* Quiet cues for returning readers, mentions and linked votes. */
.unread-count{display:flex;align-items:center;gap:6px;font-size:11px;line-height:1;padding:8px 0;font-variant-numeric:tabular-nums}.unread-count::before{content:"";width:5px;height:5px;border-radius:50%;background:currentColor}
.mentions-button{display:flex;align-items:center;gap:4px;font-size:20px;line-height:1;padding:6px 0 6px 8px}
#mention-count{font-size:10px;min-width:16px;padding:3px;border-radius:10px;background:var(--ink,#17130f);color:var(--paper,#fff3d7)}
.mention{font-weight:600}.mention-self{background:#fff3d75c;border-radius:3px;padding:0 2px}
.composer-wrap{position:relative}
.mention-suggestions{position:absolute;bottom:calc(100% + 6px);left:0;right:0;z-index:10;max-height:240px;overflow:auto;padding:5px;background:var(--paper,#fff3d7);border:1px solid #211e1933;border-radius:9px;box-shadow:0 8px 22px #17130f18;animation:club-suggest-in 150ms ease-out}
.mention-suggestions>button{display:flex;align-items:center;gap:9px;width:100%;padding:10px;border-radius:5px;text-align:left;font-size:13px}
.mention-suggestions>button[aria-selected=true]{background:#211e190c}.mention-dot{width:7px;height:7px;flex:none;border-radius:50%;background:var(--wallet)}
.mentions-list{display:flex;flex-direction:column}.mention-item{display:grid;grid-template-columns:1fr auto;gap:5px 12px;text-align:left;padding:14px 0;border-bottom:1px solid #211e1925}
.mention-item:last-child{border-bottom:0}.mention-author{font-size:12px;font-weight:600}.mention-preview{grid-column:1/-1;grid-row:2;font-size:14px;line-height:1.5;overflow-wrap:anywhere}.mention-item time{font-size:11px;opacity:.6}
.idea-vote{font-size:12px;text-decoration:underline;text-underline-offset:3px;padding:5px 0;white-space:nowrap}.card-actions .idea-vote{margin-left:auto}.idea-card .card-actions .idea-more{margin-left:0;order:4}.idea-vote:disabled{opacity:.4}
.poll-card.highlight{animation:club-vote-highlight 1.5s ease-out}
@keyframes club-suggest-in{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}
@keyframes club-vote-highlight{from{background:#fff3d760}to{background:transparent}}
@media(prefers-reduced-motion:reduce){.mention-suggestions,.poll-card.highlight{animation:none}}

/* Compact jump cue, kept clear of the composer. */
.new-messages{display:flex;align-items:center;justify-content:center;gap:5px;min-width:32px;height:32px;padding:0 10px;border-radius:18px;font-size:11px;line-height:1;white-space:nowrap;animation:club-jump-in .2s var(--ease)}
.new-messages svg{width:14px;height:14px;flex:none}
@keyframes club-jump-in{from{opacity:0;transform:translate(-50%,5px)}to{opacity:1;transform:translate(-50%,0)}}
@media(prefers-reduced-motion:reduce){.new-messages{animation:none}}

.agent-badge{background:var(--ink);border-color:var(--ink);color:var(--paper)}
