:root{font-family:'Segoe UI','Malgun Gothic',sans-serif;color:var(--skin-text,#213a36);background:var(--skin-bg,#f4f6f3);font-size:14px;--green:var(--skin-accent,#174c43);--muted:color-mix(in srgb,var(--skin-text,#213a36) 65%,var(--skin-surface,#fff));--border:var(--skin-border,#e8ece8)}*{box-sizing:border-box}body{margin:0}button,input,textarea,select{font:inherit}button{cursor:pointer;border:0;background:transparent;color:inherit}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #79bca7;outline-offset:3px}button:hover{filter:brightness(.96)}input,textarea,select{border:1px solid var(--border);padding:12px;border-radius:10px;color:inherit;background:var(--skin-surface,#fff);min-width:0}h1,h2,h3,p{margin-top:0}h1{font-size:27px;letter-spacing:-1px}h2{font-size:18px}p{line-height:1.7}small{color:var(--muted)}.prototype-banner{min-height:36px;display:flex;gap:16px;align-items:center;justify-content:center;padding:8px 16px;background:#e8eee6;color:#506348;font-size:11px}.workspace{height:calc(100dvh - 36px);display:grid;grid-template-columns:88px 330px minmax(320px,1fr) 240px;max-width:1800px;margin:auto;background:var(--skin-surface,#fff);overflow:hidden}.rail{border-right:1px solid var(--border);display:flex;flex-direction:column;align-items:center;padding:29px 8px;background:var(--skin-bg,#f4f6f3)}.brand{font-weight:800;color:var(--green);text-decoration:none;font-size:25px;letter-spacing:-2px}.brand span{color:#8cb07c}.nav-items{margin-top:48px;width:100%;display:flex;flex-direction:column;gap:15px}.nav-item{display:flex;flex-direction:column;gap:6px;align-items:center;font-size:11px;color:#82908a;padding:12px 0;border-radius:14px}.nav-item>span{font-size:24px}.nav-item.active{color:var(--green);background:var(--skin-mine,#e4eddf);font-weight:700}.rail-bottom{margin-top:auto;border:1px solid #cbd5ca;border-radius:50%;height:25px;width:25px;color:#81907f}.sidebar{border-right:1px solid var(--border);display:flex;flex-direction:column;min-height:0;background:var(--skin-surface,#fff)}.list-head{padding:30px 25px 20px;display:flex;justify-content:space-between;align-items:center}.eyebrow{font-size:9px;letter-spacing:2px;color:#8e9e8b;font-weight:700}.list-head h1{margin:8px 0 0}.new-room{width:35px;height:35px;border-radius:50%;background:#edf3ec;color:var(--green);font-size:25px}.search{display:flex;align-items:center;gap:8px;margin:0 22px;background:var(--skin-bg,#f4f6f3);border-radius:10px;padding:0 12px}.search span{font-size:23px;color:#8b998f}.search input{width:100%;border:0;background:transparent;padding:12px 0;font-size:12px}.filters{display:flex;gap:5px;padding:18px 20px;flex-wrap:wrap}.filters button{font-size:11px;padding:7px 12px;border-radius:20px;color:#7a877d}.filters .selected{background:var(--green);color:white}.room-list{flex:1;overflow:auto}.room-item{display:flex;width:100%;gap:12px;text-align:left;padding:19px 20px;align-items:center;position:relative}.room-item.selected{background:var(--skin-mine,#e4eddf)}.room-item.selected:before{content:'';position:absolute;left:0;top:0;bottom:0;width:3px;background:#426d56}.avatar{height:46px;width:46px;flex-shrink:0;border-radius:17px;background:var(--skin-mine,#e4eddf);color:#4e7050;display:flex;align-items:center;justify-content:center;font-size:26px}.avatar.private{background:#eae8f1;color:#827298}.avatar.contacts{background:#f3e8dd;color:#9a7e59}.avatar.real{background:#e0ecee;color:#53868b}.room-copy{flex:1;min-width:0}.room-copy>div{display:flex;gap:8px;align-items:center}.room-copy strong{font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.room-copy p{font-size:11px;color:#8b958e;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin:5px 0}.room-tag{font-size:9px;color:#7d8d7d}.unread{border-radius:20px;background:#78956e;color:white;min-width:19px;text-align:center;font-size:10px;padding:3px}.demo-switch{border-top:1px solid var(--border);padding:16px 22px;display:grid;gap:7px}.demo-switch label{font-size:11px;font-weight:600}.demo-switch select{font-size:12px;padding:9px}.demo-switch small{font-size:9px}.main{display:flex;flex-direction:column;min-height:0;min-width:0;background:var(--skin-bg,#f4f6f3)}.chat-head{display:flex;align-items:center;gap:12px;padding:21px 27px;background:var(--skin-surface,#fff);border-bottom:1px solid var(--border);min-height:88px}.chat-title{flex:1;min-width:0}.chat-title h2{margin:0 0 6px;font-size:16px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-title span{color:#8a978d;font-size:11px}.icon{font-size:23px;width:36px;height:36px;flex-shrink:0;border-radius:10px}.pinned{margin:20px 26px 0;background:#edf2e8;border:1px solid #e5ebdf;border-radius:12px;padding:14px 16px;display:flex;gap:12px;align-items:center}.pinned>span{font-size:24px;color:#82946c}.pinned div{flex:1}.pinned strong{display:block;font-size:12px;margin-bottom:5px}.pinned small{font-size:10px}.pinned button{font-size:10px;white-space:nowrap}.messages{flex:1;overflow:auto;padding:0 32px 24px;scroll-behavior:smooth}.date-divider{text-align:center;font-size:10px;color:#9ca594;margin:25px 0}.message{margin:20px 0;max-width:85%;width:fit-content}.message.mine{margin-left:auto}.author{font-size:11px;margin:0 3px 7px;font-weight:600}.author span{font-size:9px;color:#9aa594;font-weight:400;margin-left:5px}.mine>.author{text-align:right}.bubble{background:var(--skin-surface,#fff);border:1px solid #e8ece2;border-radius:3px 16px 16px;padding:14px 17px;min-width:150px}.mine>.bubble{background:var(--skin-mine,#e4eddf);border-color:#dee8d7;border-radius:16px 3px 16px 16px}.bubble p{margin:0;white-space:pre-wrap;overflow-wrap:anywhere;font-size:13px;line-height:1.8}.shared{min-width:min(350px,90%)}.shared>.bubble{border:1px solid #b6ccb0;background:#f0f5e9}.shared-label{font-size:10px;color:#608053;margin-bottom:12px;padding-bottom:10px;border-bottom:1px solid #d9e4d0}.message-tools{display:flex;gap:12px;flex-wrap:wrap;margin-top:11px}.message-tools button{padding:0;font-size:10px;color:#73846c;min-height:24px}.time{font-size:9px;color:#9aa590;margin:6px 4px}.mine>.time{text-align:right}.comments{margin:6px 0 0 15px;border-left:2px solid #d2decb;padding-left:12px}.comments>div{background:#f0f3eb;border-radius:9px;padding:10px 13px;margin-top:5px}.comments strong{font-size:10px}.comments p{margin:4px 0 0;white-space:pre-wrap;overflow-wrap:anywhere;font-size:12px}.changed{font-size:10px;color:#986c23;display:inline-block;background:#fff4dc;padding:4px 7px;border-radius:6px;margin-top:8px}.change-banner{padding:10px;background:#f8edd4;color:#836b38;font-size:11px}.composer{background:var(--skin-surface,#fff);border-top:1px solid var(--border);padding:16px 25px 13px}.compose-row{display:flex;gap:10px;align-items:center}.compose-row textarea{flex:1;background:var(--skin-bg,#f4f6f3);border:0;resize:vertical;max-height:180px;min-height:43px;font-size:12px}.send{background:var(--green);color:white;font-size:25px;border-radius:14px;width:43px;height:43px}.compose-foot{display:flex;justify-content:space-between;gap:10px;margin:9px 0 0 47px;font-size:9px;color:#a0aa9b}.compose-foot button{font-size:10px;color:#5e7b55}.compose-context{display:flex;justify-content:space-between;font-size:11px;padding:0 0 12px;color:#6a815f}.context-panel{border-left:1px solid var(--border);padding:32px 24px;background:var(--skin-surface,#fff)}.context-art{margin:54px 0 20px;color:#a9bc95;font-size:105px;position:relative;text-align:center}.context-art span{font-size:47px;position:absolute;right:24px;bottom:17px;color:#517650}.context-panel h2{text-align:center;font-size:19px}.context-panel>p{text-align:center;color:#91a08b;font-size:11px}.context-note{border-top:1px solid var(--border);margin:45px 0 22px;padding-top:24px;font-size:11px}.context-note p{margin:10px 0 0;color:#8d9b87}.subtle{border:1px solid #dfe6d9;border-radius:8px;padding:9px 12px;font-size:11px;background:var(--skin-bg,#f4f6f3)}.primary{background:var(--green);color:white;padding:11px 18px;border-radius:10px}.content-page{padding:45px;overflow:auto;flex:1}.content-page h1{margin-top:14px}.content-page>p{color:#83917e;font-size:12px}.content-page form{display:flex;gap:10px;margin:30px 0}.content-page form input{flex:1}.discover-card{display:flex;gap:15px;align-items:center;border:1px solid var(--border);border-radius:15px;padding:20px;margin:15px 0;background:var(--skin-surface,#fff)}.discover-card>div:nth-child(2){flex:1}.discover-card h3{font-size:14px;margin:0}.discover-card p{font-size:11px;color:#8b9785;margin:6px 0}.discover-card small{font-size:10px}.settings-card{background:var(--skin-surface,#fff);border:1px solid var(--border);padding:23px;border-radius:14px;margin:20px 0}.settings-card p{font-size:12px;color:#7a8974}.settings-card small{display:block;margin-top:12px;font-size:11px;line-height:1.7}.settings-card h3{font-size:14px}.profile-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.profile-grid .settings-card{margin-bottom:0}.settings-card>span{font-size:11px;color:#8c9b85}.settings-card h2{margin-top:12px}.check{display:flex;gap:12px;align-items:center;margin:18px 0;font-size:13px}.privacy-note{padding:10px 20px;background:#f5ede2;color:#947e59;font-size:11px;line-height:1.7}.privacy-note button{text-decoration:underline}.empty{display:flex;flex:1;flex-direction:column;align-items:center;justify-content:center;padding:35px;text-align:center;color:#809174}.empty p{font-size:12px}.empty-icon{font-size:70px}.list-empty{padding:20px;color:#8a9781;font-size:12px}dialog{border:1px solid #dfe6db;border-radius:18px;padding:26px;width:min(520px,calc(100% - 32px));max-height:85dvh;color:var(--skin-text,#213a36);box-shadow:0 20px 80px #243c3426}dialog::backdrop{background:#1d332b66;backdrop-filter:blur(3px)}dialog header{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}dialog h2{margin:0}dialog p{font-size:13px}dialog label{display:grid;gap:9px;margin:18px 0;font-size:12px}dialog footer{display:flex;justify-content:flex-end;gap:10px;margin-top:25px}.hint{color:#8c987f;font-size:11px!important;line-height:1.8}.member-row{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--border);padding:13px 0;font-size:12px}.member-row small{display:block;margin-top:5px;font-size:10px}.member-row>span{font-size:10px;color:#829577}.dialog-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}.dialog-actions button{border:1px solid var(--border);border-radius:8px;padding:9px;font-size:11px}.history{border-bottom:1px solid var(--border);padding:16px 0}.history small{display:block;font-size:10px;margin-top:8px}.history p,.preview-text{white-space:pre-wrap;overflow-wrap:anywhere}.history p{margin:10px 0}.permission-box,.preview-text{background:#eef3e8;border-radius:12px;padding:16px;font-size:12px}.permission-box small{font-size:10px}.warning{color:#9b7538!important}#toast{position:fixed;bottom:28px;left:50%;transform:translateX(-50%) translateY(20px);background:#203e35;color:white;box-shadow:0 5px 25px #0002;border-radius:12px;padding:14px 22px;font-size:12px;opacity:0;pointer-events:none;transition:.2s;z-index:20;max-width:90vw}#toast.visible{opacity:1;transform:translateX(-50%)}.mobile-back{display:none}@media(min-width:1600px){.workspace{grid-template-columns:100px 360px minmax(320px,1fr) 280px}.messages{padding-left:50px;padding-right:50px}}@media(max-width:1200px){.workspace{grid-template-columns:78px 300px minmax(320px,1fr)}.context-panel{display:none}}@media(max-width:800px){.workspace{grid-template-columns:68px 250px minmax(0,1fr)}.chat-head{padding:16px}.pinned{margin:15px 12px 0;padding:12px}.pinned button{display:none}.messages{padding:0 15px 20px}.message{max-width:95%}.composer{padding:12px}.content-page{padding:25px}.list-head{padding:25px 18px}.room-item{padding:16px 12px;gap:8px}.room-item .avatar{width:38px;height:38px}.profile-grid{grid-template-columns:1fr}.prototype-banner span{max-width:70%}}@media(max-width:650px){.prototype-banner{height:50px;font-size:10px;gap:8px}.workspace{height:calc(100dvh - 50px);grid-template-columns:1fr;grid-template-rows:minmax(0,1fr) 65px}.rail{grid-row:2;flex-direction:row;padding:0;border-right:0;border-top:1px solid var(--border)}.brand,.rail-bottom{display:none}.nav-items{margin:0;flex-direction:row;gap:0;justify-content:space-around}.nav-item{width:25%;padding:6px;font-size:10px;border-radius:0;gap:2px}.nav-item>span{font-size:20px}.sidebar{grid-row:1;grid-column:1}.main{display:none;grid-row:1;grid-column:1}.workspace:has(.content-page) .sidebar{display:none}.workspace:has(.content-page) .main{display:flex}.chat-open .main{display:flex}.chat-open .sidebar{display:none}.chat-open .rail{display:none}.chat-open .workspace{grid-template-rows:minmax(0,1fr)}.mobile-back{display:block}.chat-head{gap:9px;min-height:75px}.chat-head .avatar{width:38px;height:38px}.messages{padding:0 18px 20px}.message{max-width:90%}.composer{padding-bottom:max(14px,env(safe-area-inset-bottom))}.compose-foot{margin-left:0}.demo-switch{padding:12px 20px}.list-head{padding:24px}.room-item{padding:18px 22px}.room-item .avatar{width:46px;height:46px}.content-page{padding:28px 22px}.discover-card{padding:15px;gap:10px}.shared{min-width:min(280px,90%)}.context-panel{display:none}}

.settings-card>label:not(.check){display:grid;gap:10px;font-size:12px}.invitation-card{border-bottom:1px solid var(--border);padding:16px 0}.invitation-card:last-child{border-bottom:0}.invitation-card>p{margin:10px 0}.invitation-actions{display:flex;gap:8px;flex-wrap:wrap}.invitation-actions .primary{font-size:11px}

.room-settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.room-settings-grid[hidden]{display:none}.material-options{border:1px solid var(--border);border-radius:12px;padding:12px 16px;display:flex;flex-wrap:wrap;gap:10px 18px}.material-options legend{font-size:12px;padding:0 5px}.material-options .check{display:flex;gap:6px;margin:4px 0;font-size:12px}dialog details{font-size:12px;margin-top:18px}dialog summary{cursor:pointer}dialog .room-settings-grid label{margin:12px 0}@media(max-width:450px){.room-settings-grid{grid-template-columns:1fr;gap:0}}

.retention-settings{border:1px solid var(--border);border-radius:12px;padding:12px 16px;margin:18px 0}.retention-settings legend{font-size:12px;padding:0 5px}.retention-settings .check{display:flex;gap:8px;align-items:center;margin:12px 0}.retention-settings small{display:block;font-size:10px;color:var(--muted);line-height:1.7}.retention-details{border-top:1px solid var(--border);padding-top:16px}.retention-details summary{font-weight:600}input:disabled,select:disabled{opacity:.5;background:#f3f5ef}

.message-link{color:#246c62;text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}.link-preview{border:1px solid #cddbc8;border-radius:10px;background:#fbfdf9;margin-top:12px;padding:12px;max-width:360px;min-width:180px;overflow:hidden}.link-preview a{display:grid;gap:6px;color:inherit;text-decoration:none}.link-preview a small{font-size:10px;color:#5b806e}.link-preview strong{font-size:12px;line-height:1.6}.link-preview a span{font-size:10px;color:#7e8c78;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.link-preview .preview-status{display:block;font-size:10px;line-height:1.6;margin-top:8px;overflow-wrap:anywhere}

.lifetime-settings{border:1px solid var(--border);border-radius:12px;padding:12px 16px;margin:20px 0}.lifetime-settings legend{font-size:12px;padding:0 5px}.room-expiry-banner{display:grid;gap:5px;padding:12px 22px;background:#fff3df;color:#805522;border-bottom:1px solid #ecd8b4;flex-shrink:0}.room-expiry-banner strong{font-size:13px}.room-expiry-banner span{font-size:11px;line-height:1.6}.dialog-actions .danger{color:#a04435;border-color:#dfbfb7}

.people-heading{display:flex;justify-content:space-between;align-items:center;gap:12px}.people-heading h1{margin-bottom:8px}.people-legend{display:flex;flex-wrap:wrap;gap:18px;margin:24px 0;font-size:11px;color:#687b70}.people-legend>span{display:flex;align-items:center;gap:7px}.people-legend i{width:13px;height:13px;border-radius:5px}.person-avatar.registered,.people-legend .registered{background:#d7e9df;color:#265e4d}.person-avatar.unregistered,.people-legend .unregistered{background:#f6e6c7;color:#815f28}.people-section{margin:26px 0;background:var(--skin-surface,#fff);border:1px solid var(--border);border-radius:14px;padding:20px}.people-section h2{font-size:14px;margin:0 0 10px}.people-section h2 span{color:#82937e;font-size:12px;margin-left:6px}.person-card{display:flex;align-items:center;gap:13px;padding:16px 0;border-top:1px solid #edf0e8}.person-avatar{width:44px;height:44px;border-radius:16px;display:flex;align-items:center;justify-content:center;flex-shrink:0;font-weight:600}.person-copy{flex:1;min-width:0;display:grid;gap:4px}.person-copy strong{font-size:13px;overflow-wrap:anywhere}.person-copy span,.person-copy small{font-size:10px;color:#7a897c}.friend-status{font-size:11px;color:#4e7865}.signup-url{overflow-wrap:anywhere}.sms-compose{display:inline-block;text-decoration:none;font-size:12px}#sms-draft{width:100%;resize:vertical;font-size:13px;line-height:1.8}.dialog-actions a{display:inline-flex;align-items:center}.nav-item{white-space:nowrap}@media(max-width:650px){.nav-item{width:20%;font-size:10px}.nav-item>span{font-size:19px}.people-section{padding:15px}.person-card{gap:10px}.person-card button{padding:9px;font-size:10px}}

.person-avatar{width:60px;height:60px;border-radius:50%;overflow:hidden}.person-avatar svg,.profile-avatar svg{width:100%;height:100%;display:block}.person-avatar img,.profile-avatar img{width:100%;height:100%;object-fit:cover;display:block}.profile-card{text-align:center}.profile-avatar{width:108px;height:108px;margin:20px auto;border-radius:50%;overflow:hidden;background:#d7e9df;color:#265e4d}.profile-avatar.anonymous{background:#ebe5f3;color:#77558a}.profile-photo-actions{display:flex;justify-content:center;gap:8px;flex-wrap:wrap}.profile-card>p{line-height:1.7}.profile-card .hint{margin-bottom:12px}.profile-grid{align-items:start}.person-copy .number-change{color:#936b27}

.person-name{padding:0;text-align:left;width:fit-content;max-width:100%;color:inherit}.person-name:hover{text-decoration:underline;text-underline-offset:3px}

.invite-qr{width:min(240px,75%);margin:15px auto;background:var(--skin-surface,#fff);padding:10px;border-radius:12px}.invite-qr svg{width:100%;height:auto;display:block}.pending-entry{position:fixed;right:18px;bottom:16px;z-index:8;background:#174c43;color:white;border:1px solid #fff;border-radius:24px;padding:12px 18px;box-shadow:0 4px 18px #203e3526;font-size:12px}#share-link{width:100%;font-size:12px}dialog:has(.invite-qr) .dialog-actions{justify-content:center}@media(max-width:650px){.pending-entry{bottom:76px;right:12px;font-size:11px}}

.workspace.friends-view{grid-template-columns:78px 320px minmax(0,1fr)}.friends-view .context-panel{display:none}.friend-list{flex:1;min-height:0;overflow:auto}.friend-filters{gap:4px;padding:16px 13px}.friend-filters button{font-size:10px;padding:7px 9px;white-space:nowrap}.friend-row{display:flex;align-items:center;gap:13px;width:100%;padding:16px 22px;text-align:left;border-left:3px solid transparent}.friend-row.selected{background:var(--skin-mine,#e4eddf);border-left-color:#426d56}.friend-row .person-avatar{width:52px;height:52px;flex-shrink:0}.friend-row .person-copy{overflow:hidden}.friend-row strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.friend-detail{padding:42px;overflow:auto;flex:1;text-align:center}.friend-detail-profile .person-avatar{width:112px;height:112px;margin:0 auto 20px}.friend-detail-profile h1{font-size:24px;margin-bottom:8px}.friend-detail-profile p{font-size:13px;color:#7a897c}.contact-methods{display:flex;justify-content:center;gap:12px;margin:25px 0;flex-wrap:wrap}.contact-methods button{min-width:110px}.contact-methods button:disabled{opacity:.4;cursor:default}.sms-panel{display:block!important;max-width:540px;margin:28px auto!important;text-align:left}.sms-panel label{font-size:13px;display:block;margin:14px 0}.sms-panel textarea{width:100%;resize:vertical;font-size:13px;line-height:1.8}.sms-panel .contact-methods{margin:16px 0}.sms-compose[aria-disabled="true"]{opacity:.4;cursor:default}.friend-empty{padding:35px}.friend-empty h2{font-size:21px}@media(max-width:800px){.workspace.friends-view{grid-template-columns:68px 280px minmax(0,1fr)}.friend-detail{padding:24px}.friend-row{padding:14px 16px;gap:10px}}@media(max-width:650px){.workspace.friends-view{grid-template-columns:1fr}.friends-view .main{display:none}.friend-open .friends-view .sidebar{display:none}.friend-open .friends-view .main{display:flex}.friend-row{padding:16px 24px}.friend-detail{padding:22px}.friend-detail>.mobile-back{position:absolute;left:16px;top:66px}.friends-view .friend-filters{padding:16px 20px}.friend-filters button{font-size:11px;padding:8px 12px}}

.workspace.room-section-view{grid-template-columns:78px 320px minmax(0,1fr)}.room-section-view .context-panel{display:none}.joined-room-actions{display:flex;gap:12px;flex-wrap:wrap;margin:25px 0}.section-mobile-filters{display:none}.room-section-view .content-page{padding:38px}#public-room-results{margin-top:20px}#public-room-results .discover-card{padding:12px}#public-room-results h3{font-size:13px}@media(max-width:800px){.workspace.room-section-view{grid-template-columns:68px 280px minmax(0,1fr)}.room-section-view .content-page{padding:24px}}@media(max-width:650px){.nav-item{width:calc(100% / 6);font-size:9px}.nav-item>span{font-size:18px}.workspace.room-section-view{grid-template-columns:1fr}.section-mobile-filters{display:flex;padding:10px 0}.room-section-view .content-page{padding:25px 20px}}

.friend-new-chat{display:flex;flex-direction:column;flex:1;min-height:0}.friend-new-chat>.messages{display:flex}.friend-sms-view{display:flex;flex-direction:column;flex:1;min-height:0}.sms-routing-banner{padding:16px 25px;background:#fff1d5;color:#805b23;border-bottom:1px solid #e9d9b8;display:grid;gap:7px;flex-shrink:0}.sms-routing-banner strong{font-size:13px;line-height:1.6}.sms-routing-banner span{font-size:11px;line-height:1.6}.sms-invite-note{background:#fff7e9;border:1px solid #eadcc2;border-radius:12px;padding:15px;margin-top:15px;font-size:12px}.sms-invite-note p{white-space:pre-wrap;overflow-wrap:anywhere;font-size:12px;margin:10px 0 0}.friend-sms-view .friend-detail{padding-top:26px}.friend-sms-view .friend-detail>.mobile-back{position:static;text-align:left}

/* Navigation: common 24px geometry and consistent labels across all six sections. */
.nav-items{margin-top:36px;gap:8px}
.nav-item{position:relative;width:100%;min-height:66px;padding:10px 2px;gap:6px;color:#596e65;border-radius:14px;font-weight:500;line-height:1.3}
.nav-item .nav-icon{display:flex;align-items:center;justify-content:center;width:26px;height:26px;flex-shrink:0}
.nav-icon svg{width:24px;height:24px;display:block;stroke-width:1.8}
.nav-item .nav-label{font-size:11px;line-height:1.35;font-weight:inherit;letter-spacing:-.2px;white-space:nowrap}
.nav-item:hover{background:#eef3ed}
.nav-item.active{color:#174c43;background:#e5efe6;font-weight:700}
.nav-item.active .nav-icon svg{stroke-width:2.1}
.nav-item.active:before{content:'';position:absolute;left:-8px;top:18px;bottom:18px;width:3px;border-radius:0 3px 3px 0;background:#174c43}
@media(max-width:650px){.nav-items{margin-top:0;gap:0}.nav-item{width:calc(100% / 6);min-height:60px;padding:6px 2px;gap:3px;border-radius:10px}.nav-item .nav-icon{width:24px;height:24px}.nav-icon svg{width:22px;height:22px}.nav-item .nav-label{font-size:9.5px;letter-spacing:-.3px}.nav-item.active:before{display:none}}

.public-room-mobile-actions{display:none}
@media(max-width:650px){.workspace.public-room-landing .sidebar{display:flex}.workspace.public-room-landing .main{display:none}.public-room-mobile-actions{display:flex;padding:0 22px 14px}.public-room-mobile-actions button{width:100%}}

.room-list-actions{display:flex;padding:0 22px 14px}.room-list-actions button{width:100%}.room-selection-empty h2{font-size:21px}.room-selection-empty p{max-width:320px}

.list-head-actions{display:flex;align-items:center;gap:5px;flex-shrink:0}.find-public-room{display:flex;align-items:center;justify-content:center;width:35px;height:35px;border:1px solid #dce5dc;border-radius:50%;background:var(--skin-surface,#fff);color:#174c43}.find-public-room svg{width:19px;height:19px;stroke-width:1.9}
#public-room-search{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;gap:12px;align-items:end;margin:25px 0 12px}#public-room-search label{display:grid;gap:9px;font-size:12px;min-width:0}#public-room-search input{width:100%;font-size:12px}#public-room-results{margin-top:24px}.room-tags{display:flex;gap:6px;flex-wrap:wrap;margin-top:9px}.room-tags span{display:inline-block;background:#eaf1e7;color:#42644d;border-radius:14px;padding:4px 9px;font-size:11px}#public-room-tags-settings[hidden]{display:none}
@media(max-width:900px){#public-room-search{grid-template-columns:1fr}#public-room-search button{justify-self:start}}
@media(max-width:650px){.workspace.public-room-landing.public-room-search-open .sidebar{display:none}.workspace.public-room-landing.public-room-search-open .main{display:flex}.public-room-discovery>.mobile-back{margin:0 0 16px -8px}.list-head-actions{gap:8px}.find-public-room{width:38px;height:38px}}

/* Room creation keeps guidance in overlays and inputs close to their labels. */
.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
dialog.room-create-dialog{padding:20px;width:min(540px,calc(100% - 24px));max-height:92dvh}
.room-create-dialog header{margin-bottom:10px}
.room-create-dialog h2{font-size:17px}
.room-create-dialog label{gap:4px;margin:5px 0;font-size:12px}
.room-create-dialog input:not([type=checkbox]):not([type=radio]),.room-create-dialog select,.room-create-dialog textarea{width:100%;padding:7px 10px;min-height:34px;font-size:12px;border-radius:8px}
.room-create-dialog textarea{resize:vertical;height:44px;min-height:44px;line-height:1.5}
.room-create-dialog .room-create-field{display:grid;gap:4px;min-width:0;margin:5px 0}
.room-create-dialog .room-settings-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px}
.room-create-dialog .room-settings-grid[hidden]{display:none}
.room-create-dialog .room-settings-grid label{margin:5px 0}
.room-create-dialog .room-identity-settings{align-items:start}
.room-create-dialog .room-setting-help{display:flex;align-items:center;gap:6px;margin:0;min-width:0;min-height:24px;font-size:12px}
.retention-details>summary:focus-visible{outline:3px solid #79bca7;outline-offset:2px}
.help-symbol{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:22px;height:22px;padding:0;border:1px solid #afc1b2;border-radius:50%;font-size:11px;line-height:1;color:#4f7059;background:#f6faf4;cursor:help}
.help-symbol[aria-expanded=true]{color:#fff;background:#174c43;border-color:#174c43}
.room-help-popover{display:none;position:fixed;inset:auto;width:320px;max-width:calc(100vw - 24px);max-height:min(350px,calc(100dvh - 24px));overflow:auto;margin:0;padding:12px 14px;background:#f7faf3;color:#334b3c;border:1px solid #cddcc9;border-radius:10px;box-shadow:0 8px 28px #243c3430;font-size:12px;line-height:1.7;overflow-wrap:anywhere}
.room-help-popover:popover-open,.room-help-popover[data-open]{display:block}
.room-help-content ul{margin:0;padding-left:16px}
.room-help-content li+li{margin-top:5px}
.room-create-dialog .room-create-materials{min-width:0;border:1px solid var(--border);border-radius:10px;padding:8px 11px;margin:5px 0}
.room-create-dialog .material-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px 9px;border:0;padding:5px 0;margin:0}
.room-create-dialog .check{display:flex;align-items:center;gap:6px;font-size:12px;margin:0;min-height:25px;line-height:1.5}
.room-create-dialog .check input{margin:0;flex-shrink:0}
.room-create-dialog .room-preview-option{border-top:1px solid var(--border);padding-top:7px;margin-top:3px}
.room-create-dialog .retention-details{margin-top:10px;padding-top:10px}
.room-create-dialog .retention-details>summary{min-height:28px}
.room-create-dialog .retention-details>.room-setting-help{margin-top:8px}
.room-create-dialog .retention-settings{margin:9px 0 0;padding:9px 11px}
.room-create-dialog .retention-settings .check{margin:6px 0}
.room-create-dialog footer{margin-top:12px}
@media(max-width:450px){dialog.room-create-dialog{padding:16px}.room-create-dialog .room-settings-grid{gap:9px}.room-create-dialog .material-options{gap:7px 5px}.room-create-dialog .material-options .check{font-size:11px;gap:4px}}

/* Role-aware room controls fill each row; participant actions remain separate. */
dialog.room-info-dialog{padding:22px}
.room-info-dialog header{margin-bottom:12px}
.room-info-dialog .room-info-summary{margin-bottom:14px;font-size:12px}
.room-info-dialog .room-controls,.share-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:12px}
.room-info-dialog .room-controls>button,.share-actions>button,.share-actions>a{display:flex;align-items:center;justify-content:center;width:100%;min-height:40px;padding:9px 10px;border:1px solid #dce5d8;border-radius:8px;background:var(--skin-bg,#f4f6f3);font-size:12px;line-height:1.45;text-align:center;text-decoration:none}
.room-info-dialog .room-controls>:last-child:nth-child(odd),.share-actions>:last-child:nth-child(odd){grid-column:1/-1}
.room-info-dialog .room-controls .danger{color:#a04435;border-color:#dfbfb7;background:#fffaf7}
.room-info-dialog .room-policy-summary{margin:10px 0 14px}
.room-info-dialog .room-policy-summary p{margin:3px 0;font-size:11px;line-height:1.6;color:#75866e;overflow-wrap:anywhere}
.share-actions>a{color:inherit}
.room-info-dialog .room-history-setting{display:flex;align-items:center;justify-content:space-between;gap:8px;border-top:1px solid var(--border);padding:9px 0 0}
.room-info-dialog .room-history-setting .check{display:flex;align-items:center;gap:7px;font-size:12px;margin:0}
.room-info-dialog .room-setting-help{display:flex;align-items:center;gap:6px;font-size:11px;min-height:24px}
.room-info-dialog .room-information{margin-top:10px;font-size:11px}
.room-info-dialog .room-information p{margin:8px 0}
.room-info-dialog .room-members-heading{font-size:13px;margin:18px 0 0}
.room-info-dialog .member-row{gap:12px;padding:9px 0}
.member-identity{flex:1;min-width:0;overflow-wrap:anywhere}
.member-actions{display:flex;align-items:center;justify-content:flex-end;gap:14px;flex-shrink:0}
.member-role-button,.member-role-label{display:inline-flex;align-items:center;justify-content:center;width:76px;flex:0 0 76px;min-width:0;min-height:32px;font-size:11px;white-space:nowrap}
.member-role-button{border:1px solid #dce5d8;border-radius:8px;padding:6px 8px;background:#f2f7ef;color:#365f43}
.member-role-label{color:#7a8974}
.room-info-dialog footer{display:grid;grid-template-columns:1fr;margin-top:14px}
.room-info-dialog footer button{width:100%;min-height:40px}
.ownership-controls{margin-top:12px;padding-top:10px;border-top:1px solid var(--border)}
.ownership-controls>button{width:100%;min-height:40px;border:1px solid #dfe6d9;border-radius:8px;padding:9px 12px;font-size:11px;background:var(--skin-bg,#f4f6f3)}
.ownership-controls p{margin:0 0 8px}
.ownership-banner{display:flex;flex-shrink:0;align-items:center;justify-content:space-between;gap:12px;padding:10px 22px;background:#edf4ea;border-bottom:1px solid var(--border);font-size:12px}
.ownership-banner button{flex-shrink:0;min-height:32px;border:1px solid #dfe6d9;border-radius:8px;background:var(--skin-surface,#fff);padding:6px 10px;font-size:11px}
#admin-rights{border:1px solid var(--border);border-radius:10px;padding:10px 14px;margin-top:14px;min-width:0}
#admin-rights[hidden]{display:none}
#admin-rights legend{font-size:12px;padding:0 5px}
.pinned-message-bar{display:flex;align-items:center;flex-shrink:0;gap:8px;margin:12px 22px 0;padding:9px 12px;border:1px solid #d9e5d3;border-left:3px solid #6b8a58;border-radius:10px;background:#eef4e9;min-width:0}
.pinned-message-preview{display:flex;align-items:center;gap:10px;flex:1;min-width:0;text-align:left;padding:3px}
.pin-symbol{font-size:23px;color:#5b7952;flex-shrink:0}
.pinned-message-copy{display:grid;gap:4px;min-width:0}
.pinned-message-copy strong{font-size:11px;color:#47633f}
.pinned-message-copy>span{font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.unpin-message-button{flex-shrink:0;min-height:34px;padding:6px 9px;font-size:11px;border:1px solid #d3dfcd;border-radius:8px;background:var(--skin-bg,#f4f6f3)}
.message:focus{outline:2px solid #82a270;outline-offset:5px;border-radius:8px}
.compose-foot{align-items:center;flex-wrap:wrap;gap:8px}
.compose-key-hint{flex:1;line-height:1.6;min-width:140px}
.compose-foot .bullet-toggle{padding:4px 8px;min-height:28px;border:1px solid #dce5d8;border-radius:7px;background:var(--skin-bg,#f4f6f3);white-space:nowrap}
.compose-foot .bullet-toggle[aria-pressed="true"]{background:#e5eedf;color:#315d3d;border-color:#abc19f}
.compose-tools{display:flex;align-items:center;flex-wrap:wrap;gap:6px;margin:8px 0 0 47px}
.compose-tools button{min-height:30px;border:1px solid #dce5d8;border-radius:8px;background:var(--skin-bg,#f4f6f3);padding:5px 9px;font-size:11px}
.compose-tools .expression-trigger{font-size:21px;padding:0 8px;line-height:1}
.compose-tools .bullet-toggle[aria-pressed="true"]{background:#e5eedf;border-color:#abc19f;color:#315d3d}
button:disabled{opacity:.4;cursor:not-allowed}
.expression-picker{position:fixed;inset:auto;margin:0;width:min(340px,calc(100vw - 16px));max-height:calc(100dvh - 30px);padding:12px;border:1px solid #dce6d6;border-radius:14px;background:var(--skin-surface,#fff);color:var(--skin-text,#213a36);box-shadow:0 10px 38px #243c3430;overflow:auto}
.expression-head{display:flex;align-items:center;gap:6px;margin-bottom:8px}
.expression-head [role="tablist"]{display:flex;gap:3px;flex-shrink:0}
.expression-category-slot{flex:1;min-width:0}
.expression-head .expression-category{width:100%;min-width:0;font-size:11px;padding:7px 4px;border-radius:8px}
.expression-head .expression-close{flex-shrink:0}
.expression-head [role="tab"]{padding:8px 16px;border-radius:8px;background:var(--skin-bg,#f4f6f3);font-size:12px}
.expression-head [aria-selected="true"]{background:#174c43;color:white}
.expression-close{font-size:23px;width:32px;height:32px}
.expression-body{max-height:240px;overflow:auto}
.emoji-category-label{display:flex;align-items:center;gap:10px;font-size:12px;margin-bottom:10px}
.emoji-category{flex:1;padding:8px;font-size:12px}
.emoji-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:5px}
.emoji-grid button{font-size:25px;min-height:42px;border-radius:8px;background:#f6f8f3}
.sticker-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:5px}
.sticker-choice{border:1px solid transparent;border-radius:10px;padding:3px;min-width:0;background:#fafcf8}
.sticker-choice[aria-pressed="true"]{border-color:#7b9d6b;background:#eaf2e3}
.sticker-choice svg{display:block;width:100%;height:auto}
.expression-preview{display:flex;align-items:center;justify-content:space-between;gap:10px}
.expression-preview:not(:empty){margin-top:10px;border-top:1px solid #e8ece8;padding-top:9px}
.selected-sticker{width:85px;height:85px;flex-shrink:0}
.selected-sticker svg{width:100%;height:100%}
.sticker-send{font-size:12px}
.expression-note{font-size:11px;line-height:1.8;color:#7a8974;margin:4px 0}
.emoji-family-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}
.expression-family{position:relative;display:flex;flex-direction:column;align-items:center;gap:4px;padding:8px;border-radius:10px;background:#f5f8f1;border:1px solid #e4eadf;min-width:0}
.emoji-family-grid .expression-family>span{font-size:30px}
.expression-family small{font-size:10px;color:#466444}
.expression-family em{font-size:9px;color:#8a9984;font-style:normal}
.expression-group-label{text-align:right;font-size:11px;margin:7px 0}
.expression-back{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;padding:5px;border:1px solid #dce6d6;border-radius:8px;background:#eef4e8;color:#466444;min-width:0}
.expression-back svg{width:22px;height:22px}
.expression-back small{font-size:9px;line-height:1.2}
.expression-cache-status{font-size:9px;color:#8b9882;line-height:1.7;margin-top:10px}
.expression-admin-link{display:inline-block;font-size:10px;color:#54794d;margin-top:5px}
.message-sticker{width:180px;height:auto}
.message-sticker svg{height:auto}
.selected-sticker{height:105px;width:90px}
.sticker-edit-grid{max-height:360px;overflow:auto}
.message-sticker{width:160px;height:160px}
.message-sticker svg{display:block;width:100%;height:100%}
.comments .message-sticker{width:120px;height:120px}
.sticker-edit-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}
.sticker-edit-grid label{display:flex;flex-direction:column;align-items:center;margin:0;border:1px solid var(--border);border-radius:10px;padding:4px;cursor:pointer}
.sticker-edit-grid label:has(input:checked){background:#eaf2e3;border-color:#82a270}
.sticker-edit-grid span,.sticker-edit-grid svg{display:block;width:100%;height:auto}
.attachment-card{display:grid;gap:8px;max-width:320px;min-width:180px;overflow-wrap:anywhere}
.attachment-card strong{font-size:12px;font-weight:600}
.attachment-card small{font-size:10px;line-height:1.6}
.attachment-card a{justify-self:start;text-decoration:none;color:var(--green)}
.attachment-photo,.attachment-video{max-width:100%;max-height:240px;border-radius:8px;object-fit:contain;background:#f3f5ef}
.attachment-status:empty{display:none}
.attachment-confirm-preview{display:flex;align-items:center;justify-content:center;min-height:100px;background:#f4f7ef;border-radius:10px;font-size:26px;margin-bottom:14px}
.attachment-confirm-preview img,.attachment-confirm-preview video{max-width:100%;max-height:260px;object-fit:contain;border-radius:10px}
.attachment-inspection{display:grid;grid-template-columns:72px 1fr;gap:8px 12px;padding:12px;border:1px solid #dce5d8;border-radius:10px;font-size:12px;background:#f7faf4}
.attachment-inspection dt{color:#7a8974}
.attachment-inspection dd{margin:0;overflow-wrap:anywhere}
@media(max-width:650px){.compose-tools{margin-left:0;gap:5px}.compose-tools button{font-size:10px;padding:5px 7px}.compose-tools .expression-trigger{font-size:20px}.attachment-card{max-width:240px;min-width:150px}.message-sticker{width:140px;height:140px}.sticker-edit-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:650px){.pinned-message-bar{margin:10px 12px 0;padding:8px;gap:5px}.chat-head .icon{width:30px;height:32px;font-size:21px}.chat-head{gap:5px}.unpin-message-button{font-size:10px;padding:5px 7px}}
@media(max-width:450px){.member-actions{gap:10px}.member-role-button,.member-role-label{width:70px;flex-basis:70px;min-width:0;font-size:10px}.room-info-dialog .member-row{gap:8px}.room-info-dialog .room-controls>button{font-size:11px}}

.expression-head [role="tab"]{padding:7px 10px}
.expression-settings{font-size:21px;line-height:1;padding:4px 7px;flex-shrink:0;border-radius:7px;background:#f3f6ef}
.character-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin:10px 0}
.character-grid button{padding:5px;border:1px solid #e1e8dc;border-radius:9px;background:#f7faf4;min-width:0}
.character-grid button[aria-pressed="true"]{border-color:#5e8054;background:#eaf2e1;box-shadow:inset 0 0 0 1px #5e8054}
.character-grid svg{width:100%;height:86px}.character-grid small{display:block;font-size:10px;line-height:1.5}
.character-actions{display:flex;gap:6px}.character-actions button{flex:1;font-size:11px;padding:8px 5px}
.sticker-send-row{display:flex;gap:5px;align-items:center;flex:1;min-width:0}.sticker-send-row button{padding:9px 6px;font-size:11px;white-space:nowrap}
.list-settings-trigger{margin-left:-5px!important;padding:5px 7px!important}
.list-settings-panel{position:fixed;inset:auto;margin:0;width:min(290px,calc(100vw - 16px));padding:13px;border:1px solid #dce6d6;border-radius:12px;background:var(--skin-surface,#fff);color:var(--skin-text,#213a36);box-shadow:0 8px 30px #243c3430}
.list-settings-panel strong{font-size:12px}.list-settings-panel small{display:block;font-size:10px;line-height:1.7;color:#7d8c76;margin-top:10px}
.bullet-symbol-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:5px;margin:8px 0 13px}.bullet-symbol-grid button{font-size:22px;background:#f5f8ef;border-radius:7px;min-height:36px}
.bullet-symbol-grid [aria-pressed="true"],.bullet-color-grid [aria-pressed="true"]{outline:2px solid #66845a;outline-offset:1px}
.bullet-color-grid,.writing-palette{display:flex;flex-wrap:wrap;gap:5px;margin:8px 0}
.bullet-color-grid button,.writing-palette button{padding:4px;border:1px solid #dce5d6;border-radius:6px;background:var(--skin-surface,#fff)}
.bullet-color-grid span,.writing-palette span{display:block;width:17px;height:17px;border-radius:50%}.bullet-color-grid input{width:29px;height:28px;padding:2px}
.styled-document{min-width:0;max-width:100%}.styled-block{white-space:pre-wrap;line-height:1.7;margin-bottom:10px;overflow-wrap:anywhere}.styled-block:last-child{margin-bottom:0}.styled-bullet{font-weight:700}
.styled-compose-dialog{width:min(980px,calc(100vw - 24px));max-width:none;max-height:92dvh;padding:0;overflow:hidden;color:var(--skin-text,#213a36)}
.styled-compose-dialog>header{display:flex;justify-content:space-between;gap:15px;padding:18px 23px;border-bottom:1px solid #e0e7d9}
.styled-compose-dialog h2{margin:0;font-size:20px}.styled-compose-dialog header p{font-size:12px;color:#7b8b76;margin:6px 0 0}.styled-close{font-size:24px;padding:0 7px}
.styled-compose-layout{display:grid;grid-template-columns:215px minmax(0,1fr);height:min(650px,calc(92dvh - 155px));min-height:280px}
.styled-choices{padding:16px;background:#f6f9f2;overflow:auto;border-right:1px solid #e0e7d9}.styled-choices h3{font-size:12px;margin:17px 0 9px}.styled-choices hr{border:0;border-top:1px solid #dfe6d9;margin:18px 0}
.styled-mode-tabs{display:flex;gap:4px;margin-bottom:15px}.styled-mode-tabs button{flex:1;font-size:11px;padding:8px 5px;border:1px solid #dce5d6;border-radius:7px}.styled-mode-tabs [aria-selected="true"]{background:#174c43;color:white}
.writing-field-list,.writing-style-list,.writing-block-list{display:grid;gap:5px;margin:12px 0}.writing-field-list button,.writing-style-list button,.writing-block-list button{text-align:left;font-size:12px;background:var(--skin-surface,#fff);border:1px solid #e1e8da;border-radius:7px;padding:9px}.writing-block-list .active{background:#e4efdc;border-color:#8ca17c}
.writing-style-row{display:grid;grid-template-columns:minmax(0,1fr) 44px;gap:4px}.writing-style-row button{min-height:44px;overflow-wrap:anywhere}.writing-style-row [data-edit-text-style]{text-align:center;font-size:18px}.writing-style-row [aria-pressed=true]{background:color-mix(in srgb,var(--green) 15%,var(--skin-surface,#fff));border:2px solid var(--green);box-shadow:inset 4px 0 var(--green)}.writing-style-row small{display:block;font-size:10px;color:var(--muted);margin-top:3px}.styled-choices .add-text-style,.styled-choices .save-writing-template,.styled-choices .update-writing-template{width:100%;min-height:44px;margin-bottom:6px}.text-style-dialog{max-height:85dvh;overflow:auto}.text-style-dialog .inline-field-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.text-style-dialog .inline-field-options input,.text-style-dialog .inline-field-options select{min-height:44px;max-width:100%}.text-style-sample{padding:20px 12px;min-height:90px;border:1px solid var(--border);border-radius:10px;margin:16px 0;overflow-wrap:anywhere;white-space:pre-wrap}.text-style-dialog footer{justify-content:flex-end}
.writing-field-tools{display:flex;gap:6px;align-items:stretch}.writing-field-tools button{flex:1;min-width:0;min-height:44px;padding:8px 4px;white-space:nowrap;font-size:11px}
.writing-field-row,.writing-field-tools{display:flex;gap:4px}.writing-field-row>button:first-child{flex:1;min-width:0}.writing-field-row>[data-remove-field]{padding:6px;color:#9a6b61}.writing-field-tools{flex-wrap:nowrap}.writing-field-tools button,.new-writing-template{font-size:11px;padding:7px 6px;border:1px solid #dce5d6;border-radius:7px}
.styled-compose-dialog label{display:grid;gap:7px;font-size:12px;margin:10px 0}.styled-compose-dialog .check{display:flex;align-items:center;gap:7px}.styled-compose-dialog input,.styled-compose-dialog select,.styled-compose-dialog textarea{width:100%;min-width:0;font:inherit;font-size:13px;padding:9px;border:1px solid #d8e2d0;border-radius:7px;background:var(--skin-surface,#fff);color:var(--skin-text,#213a36)}.styled-compose-dialog input[type="checkbox"]{width:auto}
.styled-editor{padding:18px 22px;overflow:auto;min-width:0}.writing-block-actions{display:flex;gap:5px;align-items:center;margin-bottom:10px}.writing-block-actions strong{flex:1;font-size:13px}.writing-block-actions button{font-size:11px;padding:6px 8px;border:1px solid #dfe6d8;border-radius:6px}
.writing-text-options{display:grid;grid-template-columns:repeat(4,minmax(0,1fr)) auto;gap:10px;align-items:center}.writing-text-options label{margin:4px 0}.writing-text-options input[type="color"]{height:36px;padding:3px}.styled-editor textarea{min-height:150px;max-height:280px;resize:vertical;line-height:1.7}
.writing-preview-heading{display:flex;justify-content:space-between;gap:8px;font-size:12px;margin:20px 0 10px}.styled-length{font-size:11px;color:#85917c}.styled-preview{border:1px solid #e0e8d9;border-radius:10px;background:#fbfdf8;padding:18px;min-height:110px}.writing-empty{padding:40px 15px;text-align:center;background:#f7faf2;border-radius:10px;font-size:13px;color:#819174}
.styled-compose-dialog>footer{display:flex;align-items:center;justify-content:flex-end;gap:9px;padding:13px 20px;border-top:1px solid #e0e7d9}.styled-compose-dialog>footer button{padding:10px 15px;border-radius:8px}.styled-error{flex:1;font-size:11px;line-height:1.7;color:#b84336}
@media(max-width:650px){.styled-compose-layout{grid-template-columns:135px minmax(0,1fr)}.styled-choices{padding:10px}.styled-editor{padding:12px}.writing-text-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.styled-mode-tabs{flex-direction:column}.writing-block-actions{flex-wrap:wrap}.styled-compose-dialog>header{padding:14px}.styled-compose-dialog>footer{padding:10px}.styled-error{max-width:45%}.compose-tools{flex-wrap:wrap}}
.messages{overflow-anchor:none;scroll-behavior:auto!important;scrollbar-gutter:stable;overscroll-behavior:contain}
.attachment-media-slot{width:100%;height:220px;background:#f3f5ef;border-radius:8px;overflow:hidden}.attachment-media-slot img,.attachment-media-slot video{width:100%;height:220px;max-height:220px;object-fit:contain}
.attachment-download-slot{min-height:30px}.attachment-status{min-height:16px}.attachment-status:empty{display:block;visibility:hidden}
.link-preview{height:152px}.link-preview strong{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;overflow:hidden;height:38px}.link-preview .preview-status{height:32px;overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2}

.prototype-banner{height:36px;overflow:hidden;white-space:nowrap}.prototype-banner>span{overflow:hidden;text-overflow:ellipsis}.event-relay-status{flex:0 0 150px;text-align:right;font-size:10px}.messages:focus-visible{outline:2px solid #79bca7;outline-offset:-2px}
.styled-compose-dialog[open]{display:flex;flex-direction:column;height:min(810px,92dvh)}.styled-compose-dialog>header,.styled-compose-dialog>footer{flex-shrink:0}.styled-compose-dialog .styled-compose-layout{height:auto;flex:1;min-height:0}



/* All picker modes share the same frame; only the catalogue scrolls. */
.expression-picker{height:clamp(400px,58dvh,620px);min-height:0;max-height:calc(100dvh - 16px);overflow:hidden}
.expression-picker:popover-open{display:flex;flex-direction:column}
.expression-head{flex:0 0 32px;min-height:32px}
.expression-body{flex:1 1 0;min-height:0;max-height:none;overflow:auto;overscroll-behavior:contain;scrollbar-gutter:stable}
.expression-preview,.expression-preview:not(:empty){flex:0 0 52px;min-height:52px;height:52px;overflow:hidden;margin:0;padding:4px 0;border-top:1px solid #e8ece8}
.expression-preview .selected-sticker{width:44px;height:44px}
.expression-preview .sticker-send-row{flex:1;justify-content:flex-end;gap:6px}
.expression-preview .sticker-send-row button{padding:8px;font-size:11px;white-space:nowrap}
.expression-preview .character-actions{width:100%}
.expression-footer{flex:0 0 20px;min-height:20px;display:flex;align-items:center;gap:8px;overflow:hidden}
.expression-footer .expression-cache-status{flex:1;min-width:0;margin:0;line-height:1.4;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.expression-footer .expression-admin-link{flex-shrink:0;margin:0;font-size:9px}
.expression-picker .sticker-choice svg{height:94px}

.expression-body:has(.sticker-flow-layout){overflow:hidden;scrollbar-gutter:auto}
.sticker-flow-layout{display:grid;grid-template-columns:minmax(0,1fr) 104px;gap:8px;height:100%;min-height:0}
.sticker-phrase-list{min-height:0;overflow:auto;overscroll-behavior:contain;scrollbar-gutter:stable}
.sticker-phrase-count{font-size:10px;color:#7b8d78;margin:0 0 5px}
.sticker-phrase-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;padding-bottom:4px}
.sticker-phrase-choice{min-height:31px;padding:6px 4px;border:1px solid #e0e8dc;border-radius:7px;background:#f7faf4;font-size:11px;line-height:1.45;overflow-wrap:anywhere}
.sticker-phrase-choice[aria-pressed="true"]{background:#e9f2e1;border-color:#7b9d6b;color:#174c43;font-weight:700}
.sticker-current-preview{display:flex;align-items:center;justify-content:center;align-self:start;min-height:104px;border-radius:9px;background:#f8faf6;text-align:center;color:#8b9982;font-size:11px;line-height:1.7}
.sticker-current-preview svg{display:block;width:104px;height:104px}
.sticker-current-character{font-size:10px;color:#7b8d78;max-width:86px;line-height:1.4}
.sticker-flow-empty{display:grid;place-items:center;height:100%;padding:12px;text-align:center;font-size:11px;color:#7b8d78;line-height:1.8}

.composer{position:relative}
.styled-source-hidden{display:none!important}
.inline-styled-fields{background:var(--skin-surface,#fff);border-radius:10px;padding:8px}
.inline-styled-fields .inline-styled-field{display:block;position:relative;border:1px dashed transparent;background:transparent;padding:3px;margin:0 0 8px;border-radius:7px}.inline-styled-field .inline-field-preview{display:block;width:100%;min-height:44px;text-align:left;padding:8px 34px 8px 8px;white-space:pre-wrap}.inline-field-preview .styled-block{margin:0;line-height:1.7}.inline-styled-field:not([data-editing="true"])>textarea{display:none}.inline-styled-field:not([data-editing="true"])>.inline-field-heading>button:first-child{display:none}.inline-styled-fields .inline-field-heading>button:last-child{position:absolute;right:2px;top:3px;width:32px;min-width:32px;min-height:44px;padding:2px;z-index:1}.inline-styled-field:not([data-editing="true"])>.inline-field-heading{height:0;padding:0}.inline-styled-field[data-editing="true"]>.inline-field-preview{display:none}.inline-styled-fields .inline-styled-field:hover,.inline-styled-field[data-editing="true"]{border-color:var(--border)}.inline-styled-fields .styled-body-field{border-left:3px solid color-mix(in srgb,var(--green) 25%,transparent)}
.room-title-trigger{display:inline-flex;align-items:center;gap:7px;max-width:100%;padding:5px 0;font:inherit;font-weight:inherit;text-align:left;overflow-wrap:anywhere;border-radius:7px}.room-title-trigger>span{font-size:13px;opacity:.65}.room-title-trigger:hover{color:var(--green)}
.room-profile-menu,.room-friend-picker{padding:0;width:min(510px,calc(100vw - 24px));max-height:90dvh;overflow:auto;background:var(--skin-surface,#fff);color:var(--skin-text,#213a36)}
.room-profile-menu>header,.room-friend-picker>header{display:flex;align-items:center;gap:12px;margin:0;padding:14px 20px;border-bottom:1px solid var(--border);position:sticky;top:0;background:var(--skin-surface,#fff);z-index:1}.room-profile-menu>header button,.room-friend-picker>header button{min-width:44px;min-height:44px;font-size:26px}.room-profile-menu>header{justify-content:flex-start}
.room-profile-identity{text-align:center;padding:22px 24px 12px}.room-profile-symbol{width:76px;height:76px;border-radius:50%;background:color-mix(in srgb,var(--green) 10%,var(--skin-surface,#fff));display:grid;place-items:center;margin:0 auto 12px;overflow:hidden;font-size:36px}.room-profile-symbol img,.room-profile-symbol svg{width:100%;height:100%;object-fit:cover}.room-profile-identity h2{overflow-wrap:anywhere;font-size:22px}.room-profile-identity p{margin:10px 0 0;color:var(--muted);font-size:13px;white-space:pre-wrap}
.room-profile-actions{display:flex;gap:8px;padding:12px 20px 20px}.room-profile-actions>button{flex:1;min-height:76px;border:1px solid var(--border);border-radius:12px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;font-size:23px;color:var(--green);background:color-mix(in srgb,var(--green) 5%,var(--skin-surface,#fff))}.room-profile-actions span{font-size:12px;font-weight:600}
.room-invite-methods{margin:0 20px 18px;border:1px solid var(--border);border-radius:12px;overflow:hidden}.room-invite-methods[hidden]{display:none}.room-invite-methods>button{display:flex;justify-content:space-between;align-items:center;min-height:48px;width:100%;padding:12px 14px;text-align:left;font-size:13px}.room-invite-methods>button+button{border-top:1px solid var(--border)}
.room-personal-name{padding:0 20px 18px;border-bottom:1px solid var(--border)}.room-personal-name label{margin:0 0 8px}.room-personal-name input{width:100%}.room-personal-name small{font-size:11px}.room-personal-name>div{display:flex;justify-content:flex-end;gap:8px;margin-top:10px}.room-personal-name button{border:1px solid var(--border);border-radius:8px;min-height:44px;padding:9px 14px}.room-notify-hint,.room-profile-menu>[role=alert],.room-profile-menu>.hint{margin:14px 20px;font-size:11px;color:var(--muted)}.room-profile-menu>[role=alert]{color:#b84336}.room-menu-leave{display:block;width:100%;min-height:52px;text-align:left;padding:14px 20px;color:#b84336;border-top:1px solid var(--border)}
.room-friend-picker>p,.room-friend-picker>label{margin:16px 20px}.room-friend-picker input{width:100%}.room-picker-list{margin:0 20px;max-height:48dvh;overflow:auto}.room-picker-person{display:block;width:100%;min-height:52px;border-bottom:1px solid var(--border);padding:13px 8px;text-align:left}.room-picker-person:disabled{opacity:.5;cursor:default}
@media(max-width:650px){.room-profile-menu,.room-friend-picker{max-height:88dvh;border-radius:18px}.room-profile-actions{gap:6px;padding:8px 14px 16px}.room-profile-actions>button{min-height:72px}.room-profile-identity{padding-top:15px}.room-profile-symbol{width:64px;height:64px}.room-invite-methods{margin-left:14px;margin-right:14px}.room-profile-menu>header,.room-friend-picker>header{padding:8px 12px}}
.inline-styled-composer{grid-column:1;min-width:0;max-height:min(42dvh,380px);overflow:auto;border:1px solid var(--border);border-radius:12px;padding:10px;background:var(--skin-surface,#fff);overscroll-behavior:contain}
.inline-styled-composer[hidden]{display:none}
@media(min-width:651px){.messenger-app .workspace{grid-template-rows:minmax(0,1fr)}}
.inline-styled-composer>header{display:flex;flex-wrap:wrap;gap:6px;align-items:center;justify-content:space-between;font-size:12px;margin:0 0 10px}
.inline-styled-composer>header small{font-size:10px}.inline-styled-field{padding:8px;border-radius:9px;border:1px solid var(--border);margin-bottom:8px}
.inline-field-heading{display:flex;align-items:center;justify-content:space-between;gap:8px}.inline-field-heading button{min-height:36px;text-align:left;font-weight:600;overflow-wrap:anywhere}.inline-field-heading button:first-child{flex:1;touch-action:pan-y;user-select:none;-webkit-touch-callout:none}.inline-field-heading button:last-child{min-width:44px;font-size:20px}
.inline-styled-field textarea{width:100%;resize:vertical;min-height:46px;max-height:180px;border:0;padding:8px 4px;line-height:1.6;background:transparent}
.inline-styled-composer>footer{display:flex;gap:8px;justify-content:space-between}.inline-styled-composer>footer button,.inline-field-undo{border:1px solid var(--border);border-radius:8px;padding:8px 10px;font-size:12px;min-height:40px}
.styled-field-dialog{background:var(--skin-surface,#fff)}.styled-field-dialog label:has(input[type=checkbox]){display:flex;align-items:center}.styled-field-dialog input[type=checkbox]{width:auto}.inline-field-options{display:flex;flex-wrap:wrap;gap:12px}.inline-field-options label{flex:1}.styled-field-dialog footer{flex-wrap:wrap}.styled-field-dialog footer button{min-height:44px;padding:10px 14px;border:1px solid var(--border);border-radius:9px}.styled-field-dialog [data-field-delete]{color:#b84336;margin-right:auto}
.styled-compose-dialog .styled-preview{max-height:none;margin-bottom:16px}.styled-preview [data-preview-block]{padding:10px;border:1px dashed transparent;border-radius:9px;cursor:pointer;min-height:44px}.styled-preview [data-preview-block]:hover,.styled-preview [data-preview-block].active{border-color:var(--green);background:color-mix(in srgb,var(--green) 7%,var(--skin-surface,#fff))}.styled-preview-placeholder{font-size:12px;font-weight:400;color:var(--muted);margin-left:8px}
@media(max-width:650px){.styled-compose-dialog .styled-compose-layout{display:flex;flex-direction:column}.styled-compose-dialog .styled-choices{flex:0 0 auto;max-height:185px;overflow:auto;border-bottom:1px solid var(--border)}.styled-compose-dialog .styled-editor{flex:1;min-height:0}.styled-choices .writing-field-list,.styled-choices .writing-block-list{display:none}.styled-choices .styled-mode-tabs{flex-direction:row}.styled-choices>hr,.styled-choices>h3{display:none}.styled-compose-dialog>footer{flex-wrap:wrap;gap:6px}.inline-styled-composer{max-height:38dvh}}
.emotion-recommendation{position:absolute;left:24px;bottom:calc(100% + 8px);z-index:8;display:flex;align-items:center;gap:5px;max-width:min(340px,calc(100vw - 50px));padding:5px 7px 5px 4px;border:1px solid #cfdcc8;border-radius:12px;background:#fffef7;box-shadow:0 5px 20px #243c3420}
.emotion-recommendation[hidden]{display:none}
.emotion-recommend-open{display:flex;align-items:center;gap:8px;text-align:left;padding:0;min-width:0}
.emotion-recommend-art{display:block;flex:0 0 58px;width:58px;height:58px}.emotion-recommend-art svg{display:block;width:100%;height:100%}
.emotion-recommend-open strong{display:block;font-size:11px;color:#426a46}.emotion-recommend-label{display:block;font-size:12px;font-weight:700;color:var(--skin-text,#213a36);margin:3px 0}.emotion-recommend-open small{display:block;font-size:10px;color:#84917d}
.emotion-recommend-close{align-self:flex-start;font-size:20px;padding:0 4px;color:#87927d}
/* Face studio keeps previews stable while ComfyUI works. */
.settings-sidebar-note{padding:20px;line-height:1.8;color:#718477;font-size:13px}.face-studio{max-width:880px}.face-studio h2{font-size:19px}.face-studio .settings-card{padding:22px}.face-provider{font-size:12px;background:#eef4ea;border-radius:8px;padding:10px}.face-upload{display:flex;gap:12px;flex-wrap:wrap;font-weight:600}.face-upload input{max-width:100%;font-size:12px}.face-source{display:flex;gap:12px;align-items:center;font-size:12px;color:#718477;margin:16px 0}.face-source[hidden]{display:none}.face-source img{width:76px;height:76px;object-fit:contain;border-radius:12px;background:#fafbf7}.face-strength{margin:20px 0}.face-strength label{display:block;font-size:13px;font-weight:600}.face-strength output{float:right}.face-strength input{display:block;width:100%;accent-color:#174c43;margin:14px 0}.face-strength-labels{display:flex;justify-content:space-between;color:#7b8d78;font-size:11px}.face-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.face-actions button{border:1px solid #d6e1cf;border-radius:8px;padding:11px}.face-samples{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:14px 0}.face-samples button{border:2px solid #e7ece1;border-radius:12px;padding:5px;background:var(--skin-surface,#fff)}.face-samples button[aria-pressed=true]{border-color:#174c43;background:#eef4ea}.face-samples img{width:100%;aspect-ratio:1;object-fit:contain;border-radius:8px}.face-samples span{display:block;font-size:12px;padding:6px}.face-progress{font-size:13px;min-height:24px;color:#426a46}.face-moods{display:flex;flex-wrap:wrap;gap:12px;padding:12px;margin:15px 0;border:1px solid #dce5d6;border-radius:9px}.face-moods legend{font-size:13px}.face-moods label{font-size:12px}.face-generate{width:100%;padding:12px;border-radius:9px}.face-results{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:16px}.face-results img{width:100%;aspect-ratio:512/580;object-fit:contain}.face-pack{padding:12px 0;border-bottom:1px solid #e8ece4}.face-pack strong{font-size:12px}.face-pack-thumbs{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0}.face-pack-thumbs img{width:72px;height:82px;object-fit:contain}.personal-stickers-dialog{width:min(620px,92vw);max-height:85dvh;border:1px solid #dce5d6;border-radius:16px;padding:20px}.personal-stickers-dialog::backdrop{background:#183a3566}.personal-stickers-dialog header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.personal-stickers-dialog h2{font-size:18px}.personal-sticker-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.personal-sticker-grid img{width:100%}.personal-sticker-grid button{border:1px solid #e4eadf;border-radius:10px}.personal-sticker-grid p{grid-column:1/-1;font-size:13px;line-height:1.8}#face-studio-mount{height:100%;overflow:auto}.rail .nav-items{overflow-y:auto;min-height:0}
@media(max-width:650px){.face-studio .settings-card{padding:14px}.face-results,.personal-sticker-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.face-actions{grid-template-columns:1fr}.face-samples{gap:5px}}
.sticker-type-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.sticker-type-grid>button{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4px;border:1px solid #e0e8da;border-radius:9px;min-height:91px;background:var(--skin-bg,#f4f6f3)}.sticker-type-grid>button[aria-pressed=true]{background:var(--skin-mine,#e4eddf);border-color:#829e71}.sticker-type-grid svg{display:block;width:66px;height:66px}.sticker-type-grid small{display:block;font-size:10px;line-height:1.4}.sticker-types-back{background:var(--skin-mine,#e4eddf)!important;color:#174c43!important;font-weight:700}
/* Appearance and message tools are fixed overlays, never extra message height. */
:root{background:var(--skin-bg,#f4f6f3);color:var(--skin-text,#213a36)}html[data-skin] .rail,html[data-skin] .sidebar,html[data-skin] .chat-head,html[data-skin] .context-panel,html[data-skin] .composer,html[data-skin] dialog,html[data-skin] .expression-picker{background:var(--skin-surface);color:var(--skin-text)}html[data-skin] .main{background:var(--skin-bg)}html[data-skin] .bubble{background:var(--skin-surface);border-color:var(--skin-border)}html[data-skin] .mine>.bubble{background:var(--skin-mine);border-color:var(--skin-border)}html[data-skin] .hint,html[data-skin] .room-copy p,html[data-skin] .settings-card p,html[data-skin] .settings-card small,html[data-skin] .face-progress,html[data-skin] .settings-sidebar-note{color:var(--muted)}html[data-skin] input,html[data-skin] select,html[data-skin] textarea{border-color:var(--skin-border)}html[data-skin] .subtle,html[data-skin] .sticker-type-grid>button,html[data-skin] .sticker-phrase-choice{background:var(--skin-bg);border-color:var(--skin-border)}html[data-skin] .primary,html[data-skin] .send{background:var(--skin-accent);color:white}html[data-skin] .nav-item.active,html[data-skin] .room-item.selected{background:var(--skin-mine)}
.app-settings{padding:28px 36px;max-width:1000px;width:100%;margin:0 auto}.app-settings .face-studio{padding:0;overflow:visible}.app-settings .face-studio>.eyebrow,.app-settings .face-studio>h1{display:none}.app-settings #face-studio-mount{height:auto;overflow:visible}.interface-options{display:grid;grid-template-columns:1fr 1fr;gap:16px}.interface-options label,.skin-editor label{display:grid;gap:8px;font-size:12px}.skin-swatch{display:flex;gap:6px;margin:15px 0}.skin-swatch span{display:block;width:30px;height:30px;border:1px solid var(--border);border-radius:8px;background:var(--swatch)}.settings-preferences details{padding-top:10px;font-size:12px}.settings-preferences summary{cursor:pointer}.skin-editor{display:grid!important;gap:14px!important;margin:18px 0!important}.skin-color-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.skin-color-grid input{width:100%;height:40px;padding:4px}.skin-file-actions{display:flex;gap:15px;flex-wrap:wrap;margin:12px 0}.skin-file-actions button{font-size:12px;text-decoration:underline}.offering-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.offering-grid article{padding:14px;border:1px solid var(--border);border-radius:10px}.offering-grid article h3{font-size:13px}.offering-grid article strong{font-size:12px;color:var(--green)}.offering-grid article p{font-size:11px;line-height:1.8;margin:12px 0 0}.interface-feedback{min-height:20px;font-size:12px}
.bubble{position:relative}.message-tools{position:absolute;top:-40px;right:0;display:flex;flex-wrap:nowrap;gap:2px;margin:0;padding:4px;background:var(--skin-surface,#fff);border:1px solid var(--border);border-radius:10px;box-shadow:0 4px 16px #0002;opacity:0;visibility:hidden;pointer-events:none;z-index:7;white-space:nowrap}.message:not(.mine) .message-tools{left:0;right:auto}.message:hover>.bubble>.message-tools,.message:focus-within>.bubble>.message-tools{opacity:1;visibility:visible;pointer-events:auto}.message-tools .message-action-icon,.message-action-popover .message-action-icon{position:relative;display:grid;place-items:center;width:31px;height:30px;min-width:31px;min-height:30px;padding:5px;border-radius:6px;color:var(--skin-text,#213a36)}.message-action-icon svg{width:19px;height:19px}.message-action-icon small{position:absolute;right:-1px;top:-2px;font-size:8px;line-height:12px;padding:0 2px;border-radius:4px;background:var(--skin-mine,#e4eddf);color:inherit}.message-more{display:none}.message-action-popover{position:fixed;inset:auto;margin:0;max-width:calc(100vw - 16px);padding:7px;gap:5px;border:1px solid var(--border);border-radius:12px;background:var(--skin-surface,#fff);color:var(--skin-text,#213a36);box-shadow:0 6px 26px #0003}.message-action-popover:popover-open{display:flex}.message{touch-action:pan-y}.message-tools [data-action=delete]{color:#b64c45}
@media(hover:none),(pointer:coarse){.message-tools{display:none}.message-more{display:block;position:absolute;right:-24px;top:3px;width:23px;height:27px;font-size:18px;color:var(--muted)}.mine>.bubble>.message-more{right:auto;left:-24px}.message-action-popover .message-action-icon{width:40px;height:40px}.message-action-popover .message-action-icon svg{width:22px;height:22px}}
@media(max-width:650px){.app-settings{padding:18px}.interface-options,.offering-grid{grid-template-columns:1fr}.skin-color-grid{grid-template-columns:repeat(2,1fr)}.nav-item{min-width:54px}.rail .nav-items{justify-content:flex-start;overflow-x:auto;overflow-y:hidden;flex-wrap:nowrap}.nav-item .nav-label{white-space:nowrap;font-size:9px}.message-tools{display:none}.message-more{display:block;position:absolute;right:-24px;top:3px;width:23px;height:27px;font-size:18px;color:var(--muted)}.mine>.bubble>.message-more{right:auto;left:-24px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
html[data-skin] .nav-item.active,html[data-skin] .brand,html[data-skin] .offering-grid article strong{color:var(--skin-text)}
html[data-skin] .link-preview,html[data-skin] .permission-box,html[data-skin] .preview-text,html[data-skin] .face-provider,html[data-skin] .pinned-message-bar{background:var(--skin-bg);color:var(--skin-text);border-color:var(--skin-border)}
/* Settings navigation stays in the room-list column; details use the chat column. */
.workspace.settings-view{grid-template-columns:88px 330px minmax(320px,1fr)}.settings-view>.context-panel{display:none}.settings-section-list{flex:1;overflow:auto;padding:6px 0}.settings-section-list button{display:grid;grid-template-columns:1fr 18px;gap:6px;width:100%;padding:19px 25px;text-align:left;border-left:3px solid transparent}.settings-section-list button strong{font-size:13px;font-weight:600}.settings-section-list button small{grid-column:1;font-size:11px;line-height:1.6}.settings-section-list button>span{grid-column:2;grid-row:1/3;align-self:center;font-size:23px;color:var(--muted)}.settings-section-list button[aria-current=page]{border-left-color:var(--green);background:var(--skin-mine,#e4eddf)}.settings-detail-heading{display:flex;align-items:center;gap:10px;margin:10px 0 25px}.settings-detail-heading h1{margin:8px 0 0}.settings-detail .settings-card{margin-top:0}.settings-detail .settings-preferences>.settings-card>h2{display:none}.settings-preferences [hidden],.face-studio[data-settings-section=face-create]>.settings-card:last-child,.face-studio[data-settings-section=face-library]>.settings-card:first-of-type{display:none!important}.single-setting-option{grid-template-columns:1fr;max-width:560px}.app-settings.settings-detail{max-width:1100px}.settings-detail .face-studio{max-width:none}
/* The backdrop is outside scrolling content and never changes message dimensions. */
.main{position:relative;isolation:isolate}.room-backdrop{position:absolute;z-index:0;overflow:hidden;pointer-events:none;contain:paint}.room-backdrop-image{display:block;width:100%;height:100%;object-fit:cover;object-position:center;transform:scale(1.035)}.main>.messages{position:relative;z-index:1;background:transparent}.main>.chat-head,.main>.composer,.main>.pinned-message-bar,.main>.privacy-note,.main>.change-banner,.main>.ownership-banner,.main>.room-expiry-banner{position:relative;z-index:2}
.room-background-dialog{width:min(700px,calc(100vw - 28px));padding:22px}.room-background-choices{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}.room-background-choices button{padding:5px;border:2px solid var(--border);border-radius:11px;text-align:center;background:var(--skin-bg,#f4f6f3)}.room-background-choices button[aria-pressed=true]{border-color:var(--green);background:var(--skin-mine,#e4eddf)}.room-background-choices img,.room-background-none{display:block;width:100%;height:66px;object-fit:cover;border-radius:6px}.room-background-none{display:grid;place-items:center;font-size:32px;color:var(--muted)}.room-background-choices strong{display:block;font-size:11px;margin:7px 0 3px}.room-background-choices small{display:block;font-size:9px;line-height:1.5}.room-background-upload{margin:16px 0!important;gap:8px!important}.room-background-upload input{font-size:12px;max-width:100%}.room-background-sample{position:relative;height:180px;overflow:hidden;border:1px solid var(--border);border-radius:12px;background:var(--skin-bg,#f4f6f3)}.room-background-sample-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transform:scale(1.035)}.room-background-sample-image[hidden]{display:none}.room-background-sample-messages{position:relative;display:flex;flex-direction:column;gap:18px;padding:26px;align-items:flex-start}.room-background-sample-messages span{padding:11px 14px;border-radius:4px 12px 12px;background:var(--skin-surface,#fff);font-size:12px;border:1px solid var(--border)}.room-background-sample-messages span:last-child{align-self:flex-end;background:var(--skin-mine,#e4eddf);border-radius:12px 4px 12px 12px}.room-background-adjust{display:grid;grid-template-columns:1fr 1fr;gap:20px}.room-background-adjust label{display:block}.room-background-adjust output{float:right}.room-background-adjust input{display:block;width:100%;padding:0;margin-top:8px;accent-color:var(--green)}.room-background-feedback{min-height:20px;color:var(--muted);font-size:11px}.room-background-dialog footer{display:grid;grid-template-columns:1fr 1fr;margin-top:14px}
@media(min-width:1600px){.workspace.settings-view{grid-template-columns:100px 360px minmax(320px,1fr)}}@media(max-width:1200px){.workspace.settings-view{grid-template-columns:78px 300px minmax(320px,1fr)}}@media(max-width:800px){.workspace.settings-view{grid-template-columns:68px 250px minmax(0,1fr)}.settings-section-list button{padding:17px 18px}}
@media(max-width:650px){.workspace.settings-view{grid-template-columns:1fr;grid-template-rows:minmax(0,1fr) 65px}.workspace.settings-view .sidebar{display:flex}.workspace.settings-view .main{display:none}.settings-detail-open .workspace.settings-view .sidebar{display:none}.settings-detail-open .workspace.settings-view .main{display:flex}.settings-view .settings-section-list button{padding:20px 24px}.room-background-choices{grid-template-columns:repeat(3,minmax(0,1fr))}.room-background-dialog{padding:16px}.room-background-choices img,.room-background-none{height:55px}.room-background-adjust{gap:12px}}
.room-background-dialog .hint{margin-bottom:8px}.room-background-dialog .room-background-sample{height:140px}.room-background-dialog .room-background-adjust label{margin:12px 0}.room-background-dialog footer{position:sticky;bottom:-22px;padding:10px 0;background:var(--skin-surface,#fff)}
.face-moods{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.face-moods label{display:flex;align-items:center;gap:5px}.face-mood-controls{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin:0 0 14px}.face-mood-controls button{border:1px solid var(--skin-line,#dce5d6);padding:7px 10px;border-radius:7px;font-size:12px}.face-mood-count{margin-left:auto;font-size:12px;color:var(--skin-muted,#718477)}@media(max-width:540px){.face-moods{grid-template-columns:repeat(2,minmax(0,1fr))}}
.invitation-preview-dialog{width:min(560px,92vw);max-height:82dvh;border:1px solid var(--skin-line,#dce5d6);border-radius:16px;background:var(--skin-surface,#fff);color:var(--skin-text,#284537);padding:20px}.invitation-preview-dialog::backdrop{background:#183a3566}.invitation-preview-dialog header{display:flex;align-items:center;justify-content:space-between;gap:14px}.invitation-preview-dialog h2{font-size:18px}.invitation-preview-dialog header button{font-size:24px}.invitation-preview-dialog>p{font-size:13px;color:var(--skin-muted,#718477)}.invitation-preview-messages{overflow:auto;max-height:56dvh}.invitation-preview-messages article{background:var(--skin-bg,#f4f7f1);border-radius:12px;padding:12px;margin:8px 0}.invitation-preview-messages p{white-space:pre-wrap;overflow-wrap:anywhere;font-size:14px;margin:6px 0}.invitation-preview-messages strong{font-size:12px}.blocked-inviters{margin-top:14px;border-top:1px solid var(--skin-line,#dce5d6);padding-top:14px}.blocked-inviters summary{cursor:pointer;font-weight:600}.blocked-inviter-row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:9px 0}.blocked-search-result{display:block;width:100%;text-align:left;border:1px solid var(--skin-line,#dce5d6);border-radius:8px;padding:10px;margin:7px 0}.invitation-actions{gap:8px;flex-wrap:wrap}
.message-avatar{display:inline-flex;width:calc(36px * var(--ui-font-scale,1));height:calc(36px * var(--ui-font-scale,1));flex:0 0 calc(36px * var(--ui-font-scale,1));border-radius:50%;overflow:hidden;background:var(--skin-mine,#e4eddf);color:var(--skin-text,#213a36);vertical-align:middle}
.message-avatar svg,.message-avatar img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.messages .message>.author,.comments .comment-author,.connection-messages .message>.message-author{display:flex;align-items:center;gap:6px;flex-wrap:wrap;text-align:left;min-width:0}
.messages .message.mine>.author,.connection-messages .message.mine>.message-author{justify-content:flex-end}
.messages .message.shared>.author,.connection-messages .message.shared>.message-author{justify-content:center}
.author .message-author-name,.comment-author .message-author-name,.message-author .message-author-name{font-size:inherit;font-weight:600;color:inherit;margin:0;min-width:0;overflow-wrap:anywhere}
.author .message-author-role,.comment-author .message-author-role,.message-author .message-author-role{font-size:calc(9px * var(--ui-font-scale,1));font-weight:400;color:var(--muted,#718477);margin:0}
.comments .message-avatar,.connection-messages .comment .message-avatar{width:calc(28px * var(--ui-font-scale,1));height:calc(28px * var(--ui-font-scale,1));flex-basis:calc(28px * var(--ui-font-scale,1))}

.author .message-avatar,.comment-author .message-avatar,.message-author .message-avatar{color:var(--skin-text,#213a36)}

.message-avatar{width:calc(44px * var(--ui-font-scale,1));height:calc(44px * var(--ui-font-scale,1));flex-basis:calc(44px * var(--ui-font-scale,1))}.friend-avatar{min-width:46px;min-height:46px}.author .message-avatar,.comment-author .message-avatar,.message-author .message-avatar{color:var(--skin-text,#241b3a)}

.capability-editor details{border-top:1px solid var(--line,#ddd);padding:10px 0}.capability-editor summary{cursor:pointer;font-weight:600}.capability-editor [hidden]{display:none!important}.capability-row{display:flex!important;align-items:center;justify-content:space-between;gap:12px;margin:9px 0!important}.capability-row>span{flex:1}.capability-row small{display:block;font-size:11px;opacity:.8;margin-top:3px}.capability-row select{width:128px!important;flex:0 0 128px}.capability-editor>label{display:flex;align-items:center;gap:12px}.capability-editor [data-cap-reset]{width:100%}

.capability-row .capability-choices{display:flex;flex:0 0 auto;gap:0;align-items:stretch;isolation:isolate}.capability-choices label,.message-kind-buttons label{position:relative;cursor:pointer;margin:0!important;display:block!important}.capability-choices input,.message-kind-buttons input{position:absolute;inset:0;opacity:0;pointer-events:none;width:100%;height:100%}.capability-choices label>span{display:block;padding:8px 9px;border:1px solid var(--skin-border,#ddd);font-size:12px!important;line-height:1.3;color:var(--skin-text);background:var(--skin-surface)}.capability-choices label:first-child>span{border-radius:8px 0 0 8px}.capability-choices label:last-child>span{border-radius:0 8px 8px 0}.capability-choices label+label>span{border-left:0}.capability-choices input:checked+span,.message-kind-buttons input:checked+span{background:var(--skin-accent,#5741a4);border-color:var(--skin-accent,#5741a4);color:var(--skin-accent-contrast,#fff);font-weight:700;box-shadow:inset 0 0 0 1px currentColor}.capability-choices input:focus-visible+span,.message-kind-buttons input:focus-visible+span{outline:3px solid var(--skin-text);outline-offset:3px}.capability-choices input:disabled+span,.message-kind-buttons input:disabled+span{opacity:.45;cursor:not-allowed}.message-kind-buttons{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.message-kind-buttons label>span{display:flex;flex-direction:column;justify-content:center;min-height:92px;padding:14px;border:1px solid var(--skin-border,#ddd);border-radius:12px;text-align:center;background:var(--skin-surface);color:var(--skin-text)}.message-kind-buttons strong{font-size:16px}.message-kind-buttons small{font-size:11px;line-height:1.5;margin-top:7px}
.main,.connection-main{container-type:inline-size;container-name:chat-pane}
@container chat-pane (max-width:620px){.chat-head .chat-title>span,.connected-chat-head #connected-room-description{display:none}.chat-head .chat-title h2{margin-bottom:0}}
@media(max-width:760px){.chat-head .chat-title>span,.connected-chat-head #connected-room-description{display:none}.chat-head .chat-title h2{margin-bottom:0}}
html .chat-head button.reading-trigger,html .connected-chat-head button.reading-trigger{font-size:calc(14px * var(--ui-font-scale))!important;line-height:1.2;white-space:nowrap;min-width:42px;width:42px;flex:0 0 42px;padding:4px;letter-spacing:-.04em;box-sizing:border-box}
html[data-large-ui=true] .chat-head button.reading-trigger,html[data-large-ui=true] .connected-chat-head button.reading-trigger{min-width:44px;width:44px;flex-basis:44px}
.mobile-back svg,.connection-back svg{width:22px;height:22px;display:block;flex-shrink:0}.mobile-back,.connection-back{align-items:center;justify-content:center}

.interaction-card{min-width:min(260px,100%);max-width:420px}.interaction-heading{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}.interaction-heading small,.interaction-card form>small{font-size:11px}.interaction-card h3{font-size:1.1em;margin:12px 0;white-space:pre-wrap;overflow-wrap:anywhere}.interaction-card p{white-space:pre-wrap;overflow-wrap:anywhere}.interaction-card form{margin-top:12px}.interaction-card fieldset{border:0;padding:0;margin:0;min-width:0}.interaction-option{display:flex;align-items:center;gap:10px;padding:10px;border:1px solid var(--skin-border);border-radius:8px;margin:6px 0}.interaction-option input{width:18px;height:18px;flex:0 0 18px;accent-color:var(--skin-accent)}.interaction-option span{flex:1;min-width:0;overflow-wrap:anywhere}.interaction-card button{width:100%;margin:8px 0;min-height:38px}.interaction-editor{width:min(520px,calc(100vw - 24px));max-height:calc(100dvh - 32px);border:1px solid var(--skin-border);border-radius:18px;padding:24px;background:var(--skin-surface);color:var(--skin-text)}.interaction-editor::backdrop{background:#0005;backdrop-filter:blur(3px)}.interaction-editor header,.interaction-editor footer{display:flex;align-items:center;justify-content:space-between;gap:12px}.interaction-editor h2{font-size:18px}.interaction-editor label{display:grid;gap:7px;margin:14px 0}.interaction-editor input:not([type=checkbox]),.interaction-editor textarea{width:100%;box-sizing:border-box;font:inherit;padding:10px;border:1px solid var(--skin-border);border-radius:9px;color:inherit;background:var(--skin-bg)}.interaction-editor .interaction-check{display:flex;align-items:center}.interaction-editor [data-error]{color:var(--skin-text);font-weight:bold}.interaction-editor footer button{flex:1;min-height:40px}

html[data-contrast=high] .capability-choices input:checked+span,html[data-contrast=high] .message-kind-buttons input:checked+span{background:var(--skin-text);color:var(--skin-bg);border-color:var(--skin-text)}
.capability-choices label>span{font-size:calc(12px * var(--ui-font-scale))!important}
@media(max-width:650px){html[data-large-ui=true] .capability-row{flex-wrap:wrap}html[data-large-ui=true] .capability-row .capability-choices{flex:1 0 100%;width:100%}html[data-large-ui=true] .capability-choices label{flex:1}html[data-large-ui=true] .capability-choices label>span{text-align:center}}

.message-kind-buttons input:checked+span small,.message-kind-buttons input:checked+span strong{color:inherit!important}
.sticker-management-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:16px}.sticker-management-tabs button{border:1px solid var(--border);border-radius:10px;padding:12px 16px;min-height:44px}.sticker-management-tabs button[aria-selected=true]{background:var(--green);color:white}.sticker-management [hidden]{display:none!important}.sticker-management-status{font-size:13px;line-height:1.7;min-height:22px}.sticker-management-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.sticker-management-heading p{font-size:13px;line-height:1.8}.sticker-management-tools{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0 24px}.sticker-management-tools button,.sticker-set-card>button{border:1px solid var(--border);border-radius:8px;padding:9px 12px;min-height:44px}.sticker-set-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:14px;margin:12px 0 28px}.sticker-set-card{display:flex;flex-direction:column;align-items:center;text-align:center;gap:10px;padding:16px;background:var(--skin-surface,#fff);border:2px solid var(--border);border-radius:16px;min-width:0}.sticker-set-card.selected{border-color:var(--green)}.sticker-set-picture{width:110px;height:125px;display:flex;align-items:center;justify-content:center}.sticker-set-picture svg,.sticker-set-picture img{max-width:110px;max-height:125px;object-fit:contain}.sticker-set-card>label{display:flex;align-items:center;gap:8px;min-height:44px;font-size:14px;cursor:pointer}.sticker-set-card input{width:19px;height:19px;accent-color:var(--green)}.sticker-set-card>small{font-size:12px;color:var(--muted)}.sticker-set-card details{width:100%;font-size:12px}.sticker-set-card summary{cursor:pointer;padding:10px 0}.sticker-set-expressions{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;max-height:320px;overflow:auto;margin-top:10px}.sticker-set-expressions figure{margin:0;min-width:0}.sticker-set-expressions img{width:100%;object-fit:contain}.sticker-set-expressions figcaption{font-size:11px}.sticker-management .face-studio{padding:0!important}.sticker-management .face-studio>h1,.sticker-management .face-studio>.eyebrow{display:none}@media(max-width:550px){.sticker-set-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.sticker-set-card{padding:12px 8px}.sticker-set-card>label{font-size:12px}.sticker-set-card>button{font-size:12px}.sticker-management-heading{display:block}}
.sponsors-page{max-width:1100px;width:100%;padding:30px}.sponsor-thanks{text-align:center;padding:32px 20px;background:var(--skin-mine,#f0edfc);border:1px solid var(--border);border-radius:22px;margin-bottom:28px}.sponsor-thanks>span{font-size:44px;color:var(--green)}.sponsor-thanks h2{font-size:24px;margin:14px 0}.sponsor-thanks p{font-size:15px;line-height:1.9}.sponsor-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:18px}.sponsor-card{display:flex;flex-direction:column;align-items:center;text-align:center;padding:24px 18px;background:var(--skin-surface,#fff);border:1px solid var(--border);border-radius:18px;gap:14px;min-width:0}.sponsor-card>img{width:160px;height:90px;object-fit:contain}.sponsor-card h2{font-size:18px;margin:0;overflow-wrap:anywhere}.sponsor-card a{color:var(--green);font-size:13px}.sponsor-logo-placeholder{font-size:45px;color:var(--green);height:90px;display:grid;place-items:center}.sponsor-address{font-size:14px;line-height:1.8;margin:0;user-select:text;overflow-wrap:anywhere}.sponsor-location-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:center}.sponsor-location-actions button,.sponsor-location-actions a{display:flex;align-items:center;min-height:44px;border:1px solid var(--border);border-radius:9px;padding:10px;font-size:13px;background:var(--skin-surface,#fff);text-decoration:none}.sponsor-empty{grid-column:1/-1;text-align:center;font-size:14px;padding:30px;color:var(--muted)}.sponsors-sidebar .settings-sidebar-note{flex:1}@media(max-width:650px){.sponsors-page{padding:20px 15px}.sponsors-sidebar{display:none!important}.workspace:has(.sponsors-page){grid-template-columns:1fr}.workspace:has(.sponsors-page)>.main{display:block}.sponsor-thanks{padding:24px 16px}.sponsor-thanks h2{font-size:21px}.sponsor-thanks p{font-size:14px}}
.sponsor-support{text-align:center;margin:0 0 28px}.sponsor-support-link{display:inline-flex;align-items:center;justify-content:center;min-height:48px;min-width:180px;border-radius:12px;padding:14px 26px;background:var(--green);color:#fff!important;text-decoration:none;font-size:16px;font-weight:700}.sponsor-support-link[hidden]{display:none}.sponsor-support-note{margin:10px 0}
.workspace.sponsors-view{grid-template-columns:88px 345px minmax(0,1fr)}.sponsors-view>.room-board,.sponsors-view>.context-panel{display:none!important}.sponsors-view>.main{overflow:auto;display:block;min-width:0}.sponsors-view .sponsors-sidebar{display:flex!important;min-height:0}.sponsors-view #sponsor-directory-mount{display:flex;flex:1;min-height:0;overflow:hidden}.sponsor-directory{display:flex;flex:1;flex-direction:column;min-width:0;min-height:0;width:100%}.sponsor-directory-tools{padding:0 16px 14px;border-bottom:1px solid var(--border);flex-shrink:0}.sponsor-directory-tools button,.sponsor-filter-fields select,.sponsor-nearby select{min-height:40px;border:1px solid var(--border);border-radius:9px;padding:8px 10px;background:var(--skin-surface,#fff);font-size:12px}.sponsor-directory-tools>[data-sponsor-summary]{width:100%;color:var(--green);font-weight:600;background:var(--skin-mine,#eeedf9);margin-bottom:12px}.sponsor-search{display:block}.sponsor-search input{width:100%;box-sizing:border-box;min-height:42px;border:1px solid var(--border);border-radius:10px;padding:10px 12px;background:var(--skin-bg,#f7f6fb);font-size:13px}.sponsor-kind-tabs{display:flex;gap:6px;margin:10px 0}.sponsor-kind-tabs button{flex:1}.sponsor-kind-tabs button[aria-pressed=true]{color:white;background:var(--green);border-color:var(--green)}.sponsor-filter-fields{display:grid;grid-template-columns:1fr 1fr;gap:9px}.sponsor-filter-fields label,.sponsor-nearby label{display:grid;gap:5px;font-size:11px;color:var(--muted)}.sponsor-filter-fields select{width:100%;min-width:0}.sponsor-discount-filter{display:flex;align-items:center;gap:8px;font-size:12px;margin:12px 0}.sponsor-discount-filter input{width:17px;height:17px;accent-color:var(--green)}.sponsor-nearby{display:flex;gap:7px;align-items:end;flex-wrap:wrap}.sponsor-nearby>[data-sponsor-locate]{flex:1;color:var(--green)}.sponsor-nearby label{display:flex;align-items:center}.sponsor-location-note{font-size:11px;line-height:1.6;margin:8px 0;color:var(--muted)}.sponsor-count{font-size:11px;color:var(--muted)}.sponsor-directory-rows{flex:1;overflow:auto;min-height:0}.sponsor-list-item{display:flex;align-items:center;gap:9px;text-align:left;width:100%;padding:16px 13px;min-height:92px;border-bottom:1px solid var(--border);background:var(--skin-surface,#fff)}.sponsor-list-item.selected{background:var(--skin-mine,#eeeaf9);box-shadow:inset 3px 0 var(--green)}.sponsor-rank{width:15px;text-align:center;color:var(--muted);font-size:11px;flex-shrink:0}.sponsor-list-logo{width:44px;height:44px;display:grid;place-items:center;border:1px solid var(--border);border-radius:12px;overflow:hidden;flex-shrink:0;background:var(--skin-bg,#f6f4fc);color:var(--green);font-size:22px}.sponsor-list-logo img{width:100%;height:100%;object-fit:contain;background:white}.sponsor-list-copy{display:flex;flex-direction:column;gap:5px;flex:1;min-width:0}.sponsor-list-copy strong{font-size:14px;overflow-wrap:anywhere}.sponsor-list-copy small{font-size:11px;color:var(--muted)}.sponsor-list-copy b{font-size:13px;color:var(--green)}.sponsor-discount-badge{display:inline-block;align-self:flex-start;background:var(--skin-mine,#ece6fb);color:var(--green);font-size:10px;padding:3px 6px;border-radius:5px}.sponsor-list-empty{font-size:13px;line-height:1.8;text-align:center;padding:28px 16px;color:var(--muted)}.sponsors-view .sponsors-page{padding:24px 28px;max-width:1080px;margin:auto}.sponsors-view .settings-detail-heading{margin:0 0 16px}.sponsors-view .settings-detail-heading h1{font-size:23px}.sponsor-thanks{padding:22px 20px;margin-bottom:18px}.sponsor-thanks>span{font-size:30px}.sponsor-thanks h2{font-size:21px;margin:8px 0}.sponsor-thanks p{font-size:13px;margin:0}.sponsor-feedback{font-size:13px;line-height:1.6;color:var(--green);margin:8px 0}.sponsor-feedback:empty{display:none}.sponsor-selected,.sponsor-finance,.sponsor-server,.sponsor-selection-empty{background:var(--skin-surface,#fff);border:1px solid var(--border);border-radius:17px;padding:22px;margin-bottom:18px}.sponsor-selection-empty{display:flex;gap:14px;align-items:center;color:var(--muted);font-size:13px;line-height:1.8}.sponsor-selection-empty>span{font-size:30px;color:var(--green)}.sponsor-detail-heading{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:16px}.sponsor-detail-heading h2{font-size:23px;margin:7px 0}.sponsor-detail-heading p{font-size:12px;color:var(--muted);margin:0}.sponsor-detail-heading>div:last-child{display:flex;flex-direction:column;gap:5px;text-align:right;flex-shrink:0}.sponsor-detail-heading small{font-size:11px;color:var(--muted)}.sponsor-detail-heading strong{font-size:21px;color:var(--green)}.sponsor-hero-photo{width:100%;height:260px;object-fit:contain;background:var(--skin-bg,#f6f5fa);border-radius:12px}.sponsor-photo-thumbs{display:flex;gap:9px;margin:10px 0}.sponsor-photo-thumbs button{width:66px;height:52px;border:2px solid var(--border);border-radius:7px;overflow:hidden;background:white}.sponsor-photo-thumbs button[aria-pressed=true]{border-color:var(--green)}.sponsor-photo-thumbs img{width:100%;height:100%;object-fit:contain}.sponsor-photo-empty{padding:35px;text-align:center;background:var(--skin-bg,#f6f5fa);border-radius:12px;color:var(--muted);font-size:13px}.sponsor-place{margin-top:18px}.sponsor-place h3,.sponsor-deal h3,.sponsor-growth h3{font-size:15px;margin:0 0 10px}.sponsor-place>a{display:inline-block;margin-top:12px;color:var(--green);font-size:13px}.sponsor-deal{margin-top:18px;padding:16px;background:var(--skin-mine,#f3edff);border-radius:12px}.sponsor-deal>strong{font-size:19px;color:var(--green)}.sponsor-deal p{font-size:13px;line-height:1.8;white-space:pre-wrap;margin:7px 0}.sponsor-deal small{font-size:11px;color:var(--muted)}.sponsor-section-title{display:flex;justify-content:space-between;gap:12px;align-items:center;flex-wrap:wrap;margin-bottom:16px}.sponsor-section-title h2{font-size:18px;margin:0}.sponsor-section-title>span{font-size:11px;color:var(--muted)}.sponsor-funding-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.sponsor-funding-cards article{background:var(--skin-bg,#f7f6fb);padding:16px;border-radius:12px;min-width:0}.sponsor-funding-cards span{font-size:12px;color:var(--muted)}.sponsor-funding-cards strong{display:block;margin-top:10px;font-size:22px;overflow-wrap:anywhere;color:var(--green)}.sponsor-server-specs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.sponsor-server-specs>div{border:1px solid var(--border);padding:14px;border-radius:10px;display:grid;gap:8px}.sponsor-server-specs span{font-size:11px;color:var(--muted)}.sponsor-server-specs strong{font-size:15px}.sponsor-server .hint,.sponsor-finance .hint{font-size:11px;line-height:1.8;color:var(--muted);margin:12px 0 0}.sponsor-runtime{margin-top:16px;font-size:12px;line-height:1.8}.sponsor-runtime summary{cursor:pointer;min-height:36px;color:var(--green)}.sponsor-growth{margin-top:20px;padding-top:18px;border-top:1px solid var(--border)}.sponsor-growth label{display:inline-flex;flex-direction:column;gap:6px;font-size:12px;margin-right:9px}.sponsor-growth input{border:1px solid var(--border);border-radius:8px;padding:11px;width:180px;max-width:100%;font-size:14px;background:var(--skin-surface,#fff)}.sponsor-growth button,.sponsor-list-back{border:1px solid var(--border);padding:12px;border-radius:8px;font-size:12px;color:var(--green)}.sponsor-growth p{font-size:13px;line-height:1.8;margin:12px 0 0}.sponsor-scale-plan{white-space:pre-wrap}.sponsor-list-back{display:none}.sponsor-overview .sponsor-support{display:flex;flex-direction:column;align-items:center;gap:13px;margin:24px 0}.sponsor-overview .sponsor-support-link{font-size:14px}.sponsor-directory button:focus-visible,.sponsor-overview button:focus-visible,.sponsor-overview a:focus-visible{outline:3px solid var(--green);outline-offset:2px}.sponsor-directory button:disabled{opacity:.55;cursor:wait}.sponsors-content>.sponsor-directory{max-height:650px;margin-bottom:20px;border:1px solid var(--border);border-radius:12px;padding-top:12px}
@media(max-width:1100px){.workspace.sponsors-view{grid-template-columns:78px 300px minmax(0,1fr)}.sponsors-view .sponsors-page{padding:22px 18px}.sponsor-funding-cards{gap:7px}.sponsor-funding-cards article{padding:12px}.sponsor-funding-cards strong{font-size:18px}.sponsor-detail-heading{flex-wrap:wrap}.sponsor-detail-heading>div:last-child{text-align:left}.sponsor-selected,.sponsor-finance,.sponsor-server{padding:18px}}
@media(max-width:650px){.workspace.sponsors-view{grid-template-columns:1fr;grid-template-rows:minmax(0,1fr) 65px}.workspace.sponsors-view>.main{display:none}.workspace.sponsors-view .sponsors-sidebar{display:flex!important}.sponsor-detail-open .workspace.sponsors-view .sponsors-sidebar{display:none!important}.sponsor-detail-open .workspace.sponsors-view>.main{display:block}.sponsor-list-back{display:inline-flex;min-height:44px;align-items:center;margin-bottom:15px}.sponsors-view .sponsors-page{padding:18px 14px}.sponsor-hero-photo{height:210px}.sponsor-funding-cards{grid-template-columns:1fr}.sponsor-funding-cards article{display:flex;justify-content:space-between;align-items:center;gap:10px}.sponsor-funding-cards strong{margin:0;font-size:20px}.sponsor-growth label{display:flex;margin:0 0 10px}.sponsor-growth input{width:100%;box-sizing:border-box}.sponsor-growth button{min-height:44px;width:100%}.sponsor-directory-tools button,.sponsor-filter-fields select,.sponsor-nearby select{min-height:44px}.sponsor-directory-rows{padding-bottom:10px}.sponsors-view .sponsor-list-item{padding:17px 18px}.sponsor-server-specs{gap:8px}.sponsor-server-specs>div{padding:12px}.sponsor-server-specs strong{font-size:13px}.sponsor-server-specs span{font-size:11px}}
.sponsor-business-title{font-size:13px;margin:13px 0 10px}.sponsor-personal-total{display:flex;justify-content:space-between;gap:12px;padding:13px 12px;background:var(--skin-mine,#f0eafa);border-radius:10px;font-size:13px;margin:10px 0}.sponsor-personal-total strong{color:var(--green)}.sponsor-support-buttons{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}.sponsor-improvement{min-height:48px;padding:12px 24px;border:1px solid var(--green);border-radius:12px;color:var(--green);font-size:14px;font-weight:600;background:var(--skin-surface,#fff)}.sponsor-thanks p+p{margin-top:12px}.sponsor-thanks h2{line-height:1.65}.improvement-request-dialog{width:min(560px,calc(100vw - 24px));padding:24px;max-height:88dvh;border:1px solid var(--border);border-radius:16px;background:var(--skin-surface,#fff);color:var(--skin-text,#203c34)}.improvement-request-dialog::backdrop{background:#15203577;backdrop-filter:blur(3px)}.improvement-request-dialog header{display:flex;align-items:center;justify-content:space-between;gap:15px}.improvement-request-dialog h2{font-size:20px;margin:0}.improvement-request-dialog p{font-size:13px;line-height:1.8}.improvement-request-dialog label{display:grid;gap:8px;margin:16px 0;font-size:13px}.improvement-request-dialog input,.improvement-request-dialog select,.improvement-request-dialog textarea{border:1px solid var(--border);border-radius:9px;padding:12px;color:inherit;background:var(--skin-bg,#fff);font:inherit;min-width:0;max-width:100%;box-sizing:border-box}.improvement-request-dialog textarea{resize:vertical}.improvement-request-dialog footer{display:flex;gap:10px;justify-content:flex-end;margin-top:20px}.improvement-request-dialog button{border:1px solid var(--border);border-radius:9px;padding:12px 16px;min-height:44px}.improvement-request-dialog [data-improvement-status]{overflow-wrap:anywhere;color:var(--green)}.improvement-request-dialog .hint{font-size:11px;color:var(--muted)}@media(max-width:650px){.sponsor-support-buttons{width:100%}.sponsor-support-buttons>*{flex:1;min-width:0;min-height:48px;box-sizing:border-box}.sponsor-overview .sponsor-support-link{min-width:0;padding:13px 9px;font-size:12px}.sponsor-improvement{font-size:12px;padding:13px 12px}.sponsor-thanks h2{font-size:18px}.improvement-request-dialog{padding:18px}.improvement-request-dialog footer{display:grid;grid-template-columns:1fr 1fr}.improvement-request-dialog footer button{padding:12px 8px}}
.sponsors-sidebar #sponsor-personal-mount{flex-shrink:0;border-top:1px solid var(--border);padding:16px;background:var(--skin-surface,#fff)}.sponsors-sidebar #sponsor-personal-mount .sponsor-personal-total{margin:0;padding:14px 12px}.sponsors-sidebar #sponsor-directory-mount{flex-direction:column}.sponsors-sidebar .demo-switch{flex-shrink:0}.sponsor-personal-total{flex-shrink:0}

.sponsor-sample-notice{padding:14px 18px;margin-bottom:18px;border:1px solid #d4a851;border-radius:14px;background:#fff7df;color:#654700}.sponsor-sample-notice p{margin:5px 0 0;line-height:1.55;font-size:13px}.sponsor-directory-tools [data-sponsor-samples]{width:100%;margin-bottom:8px}

.sponsor-thanks-title{display:flex;align-items:center;justify-content:center;gap:12px}.sponsor-thanks-title>span:first-child,.sponsor-thanks-title>span:last-child{flex:none;color:var(--green);font-size:26px}.sponsor-thanks-title>span:nth-child(2){min-width:0}.sponsor-panel-toggle{display:none}.sponsor-panel-toggle svg{width:24px;height:24px}.sponsor-plan-label{color:var(--green);font-weight:700}.sponsor-growth-track{display:flex;gap:26px;max-width:100%;overflow-x:auto;list-style:none;margin:14px 0 0;padding:3px 3px 14px}.sponsor-growth-step{position:relative;flex:1 0 140px;box-sizing:border-box;border:1px solid var(--border);background:var(--skin-bg,#f7f6fb);border-radius:12px;padding:14px 12px}.sponsor-growth-step:not(:last-child)::after{content:'→';position:absolute;right:-23px;top:34px;font-size:22px;color:var(--green)}.sponsor-growth-step.selected{border:2px solid var(--green);padding:13px 11px}.sponsor-growth-step h4{font-size:11px;font-weight:500;margin:0 0 16px;color:var(--muted)}.sponsor-growth-step h4 strong{display:block;margin-top:7px;font-size:24px;color:var(--green)}.sponsor-growth-step h4 small{font-size:12px;margin-left:4px}.sponsor-growth-step dl{margin:0;display:grid;gap:12px}.sponsor-growth-step dl div{min-width:0}.sponsor-growth-step dt{font-size:11px;color:var(--muted)}.sponsor-growth-step dd{font-size:14px;font-weight:700;margin:4px 0 0;overflow-wrap:anywhere}.sponsor-growth-step>p{font-size:11px;border-top:1px solid var(--border);padding-top:10px;margin-top:12px}.sponsor-growth-assumptions{font-size:12px;margin:14px 0 18px;line-height:1.7}.sponsor-growth-assumptions summary{min-height:40px;display:list-item;cursor:pointer;color:var(--green)}.sponsor-growth-assumptions p{font-size:12px}.sponsor-growth-assumptions a{color:var(--green);text-decoration:underline}.sponsor-growth-plan{min-width:0}.sponsor-growth-track:focus-visible{outline:3px solid var(--green)}
@media(max-width:650px){.sponsor-panel-toggle{display:inline-flex!important;align-items:center;justify-content:center;flex:none;width:44px!important;height:44px;min-width:44px}.sponsors-sidebar .list-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.sponsor-detail-head{position:sticky;top:-18px;z-index:3;display:flex;align-items:center;gap:10px;background:var(--skin-surface,#fff);padding:12px 0;border-bottom:1px solid var(--border)}.sponsor-growth-track{flex-direction:column;gap:28px;overflow:visible;padding-bottom:4px}.sponsor-growth-step{flex:auto;width:100%;padding:16px}.sponsor-growth-step.selected{padding:15px}.sponsor-growth-step:not(:last-child)::after{content:'↓';top:auto;bottom:-27px;right:calc(50% - 7px)}.sponsor-growth-step dl{grid-template-columns:1fr 1fr;gap:14px}.sponsor-growth-step h4{margin-bottom:14px}.sponsor-thanks-title{gap:7px}.sponsor-thanks-title>span:first-child,.sponsor-thanks-title>span:last-child{font-size:23px}.sponsors-view .sponsor-detail-head h1{margin:0}}

.sponsor-growth-step.sponsor-server-current{border:4px solid var(--green);padding:11px 9px;background:var(--skin-surface,#fff);box-shadow:0 3px 14px color-mix(in srgb,var(--green) 18%,transparent);min-width:190px}.sponsor-growth-step.sponsor-server-previous{opacity:.85;background:var(--skin-bg,#f7f6fb)}.sponsor-stage-badge{display:inline-block;font-size:11px;line-height:1.5;margin-bottom:13px;font-weight:700;color:var(--green)}.sponsor-server-current>.sponsor-stage-badge{background:var(--green);color:var(--skin-surface,#fff);padding:4px 10px;border-radius:7px}.sponsor-growth-step .sponsor-stage-date{border:0;padding:0;margin:0 0 14px;font-size:11px;color:var(--muted);min-height:32px;overflow-wrap:anywhere}.sponsor-host-note{display:block;font-size:10px;color:var(--muted);line-height:1.6}.sponsor-growth-controls{margin-top:0}.sponsor-growth-plan>.sponsor-plan-label{margin-top:0}.sponsor-server-current h4>strong{font-size:20px}
@media(max-width:650px){.sponsor-growth-step.sponsor-server-current{padding:13px;min-width:0}.sponsor-growth-step .sponsor-stage-date{min-height:0}.sponsor-growth-step.sponsor-server-current dl{grid-template-columns:1fr 1fr}}

/* One messenger layout in browser and installed app; fit the real keyboard viewport. */
html:has(body.messenger-app){height:100%;overflow:hidden}
body.messenger-app{position:fixed;inset:0;width:100%;height:var(--messenger-height,100dvh);overflow:hidden}
body.messenger-app .workspace{height:calc(var(--messenger-height,100dvh) - var(--messenger-banner-height,36px))}
@media(max-width:650px){
 .messenger-app .workspace{grid-template-rows:minmax(0,1fr) calc(65px + env(safe-area-inset-bottom,0px))}
 .messenger-app .rail{padding-bottom:env(safe-area-inset-bottom,0px)}
 .messenger-app.chat-open .workspace{grid-template-rows:minmax(0,1fr)}
 .messenger-app .nav-item{min-width:44px;min-height:48px;touch-action:manipulation}
 .messenger-app .nav-items{overflow-x:auto;overscroll-behavior-inline:contain}
 .messenger-app .new-room,.messenger-app .mobile-back{min-width:44px;min-height:44px}
}

.list-indent-controls{display:flex;gap:8px;margin-bottom:12px}.list-indent-controls button{flex:1;min-height:44px;border:1px solid var(--border);border-radius:8px;padding:8px}

.composer .send.mobile-submit,.connected-compose>button.mobile-submit{width:68px;min-width:68px;border-radius:14px;font-size:12px;padding:6px;white-space:normal}.connected-compose:has(>button.mobile-submit){grid-template-columns:minmax(0,1fr) 68px}

/* Authoring placeholders use the same font metrics and colors as the posted block. */
.inline-styled-field textarea::placeholder{color:inherit;opacity:1;font:inherit}.styled-preview-placeholder{font:inherit;color:inherit;opacity:1;margin-left:0;white-space:pre-wrap}.styled-preview [data-has-label="false"]{border:1px dashed var(--border);background:color-mix(in srgb,var(--green) 3%,var(--skin-surface,#fff))}.inline-styled-field.styled-body-field{border-style:dashed;background:color-mix(in srgb,var(--green) 3%,var(--skin-surface,#fff))}.styled-body-field .inline-field-heading button:first-child{font-size:11px;color:var(--muted);font-weight:400}.styled-named-field{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:4px;position:relative}.styled-named-field .inline-field-heading{padding-top:7px}.styled-named-field .inline-field-heading button:last-child{position:absolute;right:4px;top:4px;z-index:1}.styled-named-field textarea{padding-right:40px}.styled-heading-symbol{white-space:pre}

.styled-title-field[data-editing="true"]>.inline-field-heading>button:first-child{display:none}.styled-title-field[data-editing="true"]>.inline-field-heading{height:0;padding:0}.styled-title-field[data-editing="true"]>textarea{padding-right:40px}

.room-title-trigger{min-height:44px}.inline-styled-fields .inline-field-heading>button:last-child{width:44px;min-width:44px}.inline-styled-field .inline-field-preview{padding-right:48px}.styled-named-field textarea,.styled-title-field[data-editing="true"]>textarea{padding-right:48px}

.writing-block-actions .save-writing-template{min-height:44px;padding:8px 12px;border:1px solid var(--green);border-radius:8px;color:var(--green);white-space:nowrap}

.writing-preview-row{display:grid;grid-template-columns:minmax(0,1fr) 44px;gap:4px;align-items:start;margin:4px 0}.writing-preview-edit{min-height:44px;width:44px;border:1px solid var(--border);border-radius:8px;color:var(--green);font-size:18px}.writing-paragraph-heading{font-size:14px;margin:16px 0 8px}

.improvement-request-dialog label.connection-inline-check{display:flex;align-items:flex-start;gap:9px}.improvement-request-dialog .connection-inline-check input{flex:none;width:18px;height:18px;margin:3px 0 0;padding:0;accent-color:var(--green)}

.writing-block-actions{flex-wrap:wrap}.writing-item-edit-actions{display:inline-flex;flex-wrap:nowrap;gap:5px;margin-left:auto}.writing-item-edit-actions button{min-height:44px;padding:8px;font-size:12px;white-space:nowrap}.writing-empty .insert-writing-field{display:block;margin:14px auto 0;min-height:44px;padding:8px 14px;border:1px solid var(--border);border-radius:8px}
