:root{color-scheme:light;--background:#eef3f8;--surface:#ffffff;--surface-soft:#f7f9fc;--border:#dbe3ee;--text:#162032;--muted:#68758a;--primary:#2563eb;--primary-dark:#1d4ed8;--primary-soft:#eff6ff;--danger:#b91c1c;--danger-bg:#fef2f2;--danger-border:#fecaca;--mine:#dbeafe;--mine-border:#bfdbfe;--success-bg:#ecfdf5;--success-border:#a7f3d0;--success-text:#047857}[data-theme=dark]{color-scheme:dark;--background:#0d1720;--surface:#15212c;--surface-soft:#1b2b38;--border:#263847;--text:#edf6ff;--muted:#98aabd;--primary:#4ea3ff;--primary-dark:#2f8fe9;--primary-soft:#20384c;--danger:#ffb4bf;--danger-bg:#351b22;--danger-border:#5f2933;--mine:#1f5f4a;--mine-border:#2c7a5e;--success-bg:#17372f;--success-border:#275f4f;--success-text:#9de7cb}.accountSettings{background:var(--background);grid-row:1/-1;overflow-y:auto;padding:24px}.accountSettings fieldset{border:0;padding:0;display:grid;grid-gap:16px;gap:16px;max-width:560px}.accountSettings label{display:grid;grid-gap:8px;gap:8px}.accountSettings input{background:var(--surface);color:var(--text);width:100%;min-width:0;padding:10px;border:1px solid var(--border);border-radius:6px}.accountSettings button{padding:10px}.accountSettings .dangerButton{color:var(--danger)}.settingsPage{background:var(--background);grid-row:1/-1;min-height:100%;overflow-y:auto}.settingsContent{display:grid;grid-gap:14px;gap:14px;margin:0 auto;max-width:680px;padding:24px 0;width:calc(100% - 32px)}.settingsItem,.settingsSection{background:var(--surface);border:1px solid var(--border);border-radius:8px;color:var(--text);padding:16px}.settingsSection h3{margin:0 0 12px}.themeSelector{background:var(--surface-soft);border:1px solid var(--border);border-radius:8px;display:grid;grid-gap:4px;gap:4px;grid-template-columns:repeat(3,minmax(0,1fr));padding:4px}.themeSelector button{background:transparent;border:0;border-radius:6px;color:var(--muted);font-weight:700;min-height:40px;padding:8px}.themeSelector button.active{background:var(--primary);color:#ffffff}.settingsItem{align-items:center;display:flex;justify-content:space-between;text-align:left;width:100%}.settingsItem span{display:grid;grid-gap:4px;gap:4px}.settingsItem small{color:var(--muted)}.settingsItem b{color:var(--primary);font-size:26px}.e2eeIntro{display:grid;grid-gap:12px;gap:12px}.e2eeIntro p{color:var(--muted);line-height:1.5;margin:0}.e2eeIntro button{justify-self:start;min-height:42px;padding:10px 14px}.e2eeWarning{border-left:3px solid var(--primary);padding-left:12px}.e2eeDeviceList{display:grid;grid-gap:10px;gap:10px}.e2eeDevice{align-items:center;background:var(--surface-soft);border:1px solid var(--border);border-radius:8px;display:flex;gap:16px;justify-content:space-between;padding:14px}.e2eeDevice>div{display:grid;grid-gap:4px;gap:4px;min-width:0}.e2eeDevice small{color:var(--muted);overflow-wrap:anywhere}.e2eeDevice.revoked{opacity:.68}.e2eeDevice .dangerButton{color:var(--danger);flex:0 0 auto}.e2eeRevoked{color:var(--muted);font-size:13px;font-weight:700}.recoverySettings{display:grid;grid-gap:12px;gap:12px;min-width:0}.recoverySettings h3,.recoverySettings p{margin:0}.recoverySettings p{color:var(--muted);line-height:1.5}.recoverySettings p[role=status]{color:var(--text);border-left:3px solid var(--primary);padding-left:12px}.recoverySettings label{display:grid;grid-gap:6px;gap:6px;min-width:0;font-size:14px;line-height:1.5}.recoverySettings label:has(input[type=checkbox]){display:flex;align-items:flex-start;gap:10px}.recoverySettings input:not([type=checkbox]){width:100%;min-width:0;min-height:44px;box-sizing:border-box;background:var(--surface-soft);color:var(--text);border:1px solid var(--border);border-radius:8px;padding:10px 12px;font:inherit}.recoverySettings input[type=checkbox]{flex:0 0 auto;width:18px;height:18px;margin:2px 0;accent-color:var(--primary)}.recoverySettings button{min-width:0;min-height:44px;border:1px solid var(--border);border-radius:8px;background:var(--surface-soft);color:var(--primary);padding:10px 14px;font:inherit;text-align:left;overflow-wrap:anywhere;cursor:pointer}.recoverySettings button:hover:not(:disabled){background:var(--primary-soft)}.recoverySettings button:disabled{cursor:default;opacity:.45}.recoverySettings .dangerButton{color:var(--danger)}.recoverySettings code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:14px;line-height:1.6}.secretConversation{background:var(--background)}.secretHeader{border-bottom-color:var(--success-border)}.secretHeader>div{min-width:0}.secretBack{background:transparent;border:0;color:var(--primary);font-size:34px;height:42px;line-height:1;width:42px}.secretShield{align-items:center;background:var(--success-bg);border:1px solid var(--success-border);border-radius:50%;color:var(--success-text);display:flex;flex:0 0 auto;height:38px;justify-content:center;width:38px}.secretChatButton{color:var(--success-text)!important}.secretNotice{background:var(--success-bg);border-bottom:1px solid var(--success-border);color:var(--success-text);font-size:12px;line-height:1.4;padding:8px 20px;text-align:center}.secretMessages{background-color:var(--background)}.reactionBadges{display:flex;flex-wrap:wrap;gap:4px;margin-top:5px}.reactionBadges:empty{display:none}.reactionBadges button{display:inline-flex;align-items:center;gap:4px;min-height:28px;padding:3px 8px;border:1px solid transparent;border-radius:14px;background:var(--surface);color:var(--muted)}.reactionBadges button[aria-pressed=true]{border-color:var(--primary);color:var(--primary);background:var(--primary-soft)}.reactionBadges span{font-size:16px}.reactionBackdrop{position:fixed;inset:0;z-index:150;background:rgb(0 0 0/12%)}.reactionPicker{position:absolute;width:min(312px,calc(100vw - 24px));display:flex;flex-wrap:wrap;gap:0;padding:8px;border-radius:8px;background:var(--surface);box-shadow:0 4px 16px rgb(0 0 0/20%);max-height:calc(100dvh - 24px);overflow-y:auto}.reactionPicker button{width:42px;height:44px;font-size:25px;padding:0;border:0;border-radius:8px;background:transparent}.reactionPicker button:hover,.reactionPicker button[aria-pressed=true]{background:var(--primary-soft)}.secretMessageMeta{align-items:center;display:flex;gap:10px;justify-content:flex-end}.secretMessageMeta button{background:transparent;border:0;color:var(--muted);font-size:11px;padding:2px}.secretTrustButton{background:var(--surface-soft);border:1px solid var(--border);border-radius:7px;color:var(--muted);flex:0 0 auto;font-size:12px;font-weight:800;min-height:38px;padding:7px 10px}.secretTrustButton.verified{background:var(--success-bg);border-color:var(--success-border);color:var(--success-text)}.secretTrustWarning{background:var(--danger-bg);border-bottom:1px solid var(--danger-border);color:var(--danger);font-size:13px;font-weight:700;margin:0;padding:10px 16px;text-align:center}.secretVerification{background:var(--surface);border-bottom:1px solid var(--border);display:grid;grid-gap:14px;gap:14px;max-height:min(70dvh,680px);overflow-y:auto;padding:16px 20px}.secretVerificationHeading{align-items:center;display:flex;gap:16px;justify-content:space-between}.secretQrBox h4,.secretVerificationHeading h3{margin:3px 0 0}.secretTrustBadge{background:var(--surface-soft);border:1px solid var(--border);border-radius:6px;color:var(--muted);font-size:11px;font-weight:800;padding:6px 8px}.secretTrustBadge.verified{background:var(--success-bg);border-color:var(--success-border);color:var(--success-text)}.secretDeviceSelect{color:var(--muted);display:grid;font-size:12px;grid-gap:6px;gap:6px}.secretDeviceSelect select{background:var(--surface-soft);border:1px solid var(--border);border-radius:6px;color:var(--text);min-height:38px;padding:7px 9px}.secretVerificationGrid{display:grid;grid-gap:12px;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr))}.secretQrBox{align-content:start;background:var(--surface-soft);border:1px solid var(--border);border-radius:8px;display:grid;grid-gap:10px;gap:10px;justify-items:start;min-width:0;padding:14px}.secretQrBox p,.secretVerificationHelp{color:var(--muted);font-size:12px;line-height:1.45;margin:0}.secretQrBox img{background:#ffffff;border-radius:6px;display:block;height:min(240px,100%);justify-self:center;max-width:100%;object-fit:contain;width:240px}.secretScanButton{background:var(--primary);border-radius:6px;color:#ffffff;cursor:pointer;font-size:13px;font-weight:800;padding:10px 12px}.secretScanButton.disabled{cursor:default;opacity:.55}.secretScanButton input{display:none}.secretFingerprint{display:grid;grid-gap:4px;gap:4px;max-width:100%}.secretFingerprint span,.secretShortCode span{color:var(--muted);font-size:11px;text-transform:uppercase}.secretFingerprint strong{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px;overflow-wrap:anywhere}.secretShortCode{align-items:center;background:var(--surface-soft);border:1px solid var(--border);border-radius:8px;display:flex;gap:16px;justify-content:space-between;padding:12px 14px}.secretShortCode>div{display:grid;grid-gap:4px;gap:4px}.secretShortCode strong{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:22px;letter-spacing:1px}.secretShortCode button{background:var(--primary);border:0;border-radius:6px;color:#ffffff;font-weight:800;min-height:38px;padding:8px 12px}.secretShortCode button:disabled{background:var(--success-bg);border:1px solid var(--success-border);color:var(--success-text)}.adminSearchInput{border:1px solid var(--border);border-radius:8px;min-height:40px;padding:8px 10px;width:100%}.conversation{display:flex;flex-direction:column;height:calc(100dvh - 40px);min-height:0;min-width:0}.conversation .chatHeader{flex:0 0 auto}.conversation .chatHeader>div{min-width:0;overflow-wrap:anywhere}.conversation .chatHeader>.searchButton{width:40px;height:40px;flex-shrink:0;border:1px solid var(--border);border-radius:6px;background:var(--surface-soft);color:var(--text);font-size:22px}.conversationBody{position:relative}.conversationBody .messages{height:100%;overflow-y:auto;overflow-anchor:none;display:flex;flex-direction:column;align-items:flex-start}.conversationBody .messages .message{flex-shrink:0}.conversationBody .messages .mine{align-self:flex-end}.conversationBody .historyLoader{align-self:stretch}.conversationBody .dateDivider{align-self:center;flex-shrink:0}.conversationBody .message{overflow-wrap:anywhere}.messageActions{display:flex;align-items:center;gap:10px;margin-top:4px}.replyAction{border:0;border-radius:4px;background:transparent;color:var(--muted);width:32px;height:32px;font-size:20px}.replyAction:hover{background:var(--surface-soft);color:var(--primary)}.conversationSearch{padding:12px 20px;background:var(--surface)}.conversationSearch form{display:flex;gap:8px}.conversationSearch input{min-width:0;flex:1 1;padding:10px}.searchHits{max-height:210px;overflow-y:auto}.searchHits button{display:grid;grid-gap:4px;gap:4px;text-align:left;width:100%;border:0;border-bottom:1px solid var(--border);padding:10px;background:var(--surface);color:var(--text)}.searchHits span{overflow-wrap:anywhere}.historyLoader{min-height:40px;color:var(--muted)}.historyLoader button{background:transparent;color:var(--primary);padding:8px}.messageQuote{display:grid;text-align:left;border:0;border-left:3px solid var(--primary);border-radius:4px;padding:8px;margin:6px 0;background:var(--surface-soft);color:var(--text);max-width:100%}.messageQuote span{white-space:normal;overflow-wrap:anywhere}.highlightMessage{outline:2px solid var(--primary);outline-offset:2px}.jumpDown{position:absolute;right:20px;bottom:14px;border:0;border-radius:24px;min-height:44px;padding:10px;background:var(--primary);color:white}.replyComposer{display:flex;justify-content:space-between;align-items:center;padding:10px 20px;background:var(--surface)}.replyComposer button{display:grid;text-align:left;background:transparent;border:0;color:var(--text);min-width:0}.replyComposer span{overflow-wrap:anywhere;max-height:42px;overflow:hidden}.conversation .composer{flex:0 0 auto}*{box-sizing:border-box}body,html{height:100%;margin:0}.maintenancePage{align-items:center;background:var(--background);display:flex;justify-content:center;min-height:100vh;padding:24px}.maintenanceCard{background:var(--surface);border:1px solid var(--border);border-radius:8px;display:grid;grid-gap:14px;gap:14px;max-width:520px;padding:28px;width:100%}.maintenanceCard h1,.maintenanceCard p{margin:0}.maintenanceCard p{color:var(--muted);line-height:1.55}.maintenanceCard a{color:var(--primary);font-weight:700;text-align:center}body{background:var(--background);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,input{font:inherit}input{background:var(--surface);color:var(--text)}.legalPage{align-items:center;background:radial-gradient(circle at 20% 20%,rgba(37,99,235,.11),transparent 28%),radial-gradient(circle at 78% 8%,rgba(14,165,233,.12),transparent 24%),var(--background);display:flex;min-height:100vh;padding:24px}.legalCard{background:var(--surface);border:1px solid var(--border);border-radius:8px;box-shadow:0 18px 48px rgba(22,32,50,.08);margin:0 auto;max-width:760px;padding:28px}.legalCard h1{margin:6px 0 18px}.legalCard p{color:var(--muted);line-height:1.65}.legalMeta{border-top:1px solid var(--border);font-size:13px;margin-top:22px;padding-top:16px}.shell{grid-template-columns:minmax(280px,360px) minmax(0,1fr);min-height:100vh}.sidebar{background:var(--surface);border-right:1px solid var(--border);display:flex;flex-direction:column;gap:16px;padding:20px}.brand,.chatHeader,.panelHeader{align-items:center;display:flex;justify-content:space-between;gap:16px}.conversationIdentity{align-items:center;background:transparent;border:0;color:var(--text);display:flex;gap:12px;min-width:0;padding:0;text-align:left}.conversationIdentityText{display:block}.webAvatar{align-items:center;background:var(--primary);border-radius:50%;color:#ffffff;display:inline-flex;flex:0 0 auto;font-weight:800;justify-content:center;overflow:hidden}.webAvatar img{height:100%;object-fit:cover;width:100%}.webAvatarSmall{font-size:13px;height:42px;width:42px}.avatarViewer,.profileOverlay{align-items:center;background:rgba(4,10,18,.72);display:flex;inset:0;justify-content:center;padding:20px;position:fixed;z-index:100}.contactProfileCard{align-items:center;background:var(--surface);border:1px solid var(--border);border-radius:8px;box-shadow:0 24px 64px rgba(0,0,0,.3);display:flex;flex-direction:column;max-width:420px;padding:30px 28px 26px;position:relative;width:100%}.profileCloseButton{background:transparent;border:0;color:var(--muted);font-size:28px;height:40px;line-height:1;position:absolute;right:10px;top:8px;width:40px}.largeAvatarButton{background:transparent;border:0;border-radius:50%;padding:0}.largeAvatarButton:disabled{cursor:default}.webAvatarLarge{font-size:48px;height:164px;width:164px}.contactProfileCard h2{margin:20px 0 0;text-align:center}.profilePresence{color:var(--primary);font-size:14px;margin:7px 0 0}.profileStatus{color:var(--muted);line-height:1.5;margin:18px 0 0;overflow-wrap:anywhere;text-align:center}.profileDoneButton{background:var(--primary);border:0;border-radius:8px;color:#ffffff;font-weight:800;margin-top:26px;min-height:44px;padding:10px 16px;width:100%}.avatarViewer{background:rgba(0,0,0,.94);flex-direction:column;padding:0;z-index:110}.avatarViewerHeader{align-items:center;color:#ffffff;display:flex;gap:16px;justify-content:space-between;padding:14px 20px;width:100%}.avatarViewerHeader button{background:transparent;border:0;color:#ffffff;font-size:30px;height:42px;width:42px}.avatarViewerImage{flex:1 1;min-height:0;object-fit:contain;padding:12px;width:100%}.headerActions{align-items:center;display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.authCard h1,.brand h1,.chatHeader h2,.welcome h2{margin:4px 0 0}.eyebrow{color:var(--primary);font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.ghostButton{background:transparent;border:1px solid var(--border);border-radius:8px;color:var(--muted);padding:8px 10px}.linkButton{background:transparent;border:0;color:var(--primary);font-size:13px;font-weight:700;padding:0}.panel{min-height:0}.panel h2{font-size:15px;margin:0}.panelHeader span{color:var(--muted);font-size:13px}.panelHeaderActions{align-items:center;display:flex;gap:10px}.groupCreator{background:var(--surface-soft);border:1px solid var(--border);border-radius:8px;display:grid;grid-gap:10px;gap:10px;margin-top:10px;padding:12px}.groupCreator>input{background:var(--surface);border:1px solid var(--border);border-radius:6px;color:var(--text);min-width:0;padding:9px 10px;width:100%}.groupCreatorHint{color:var(--muted);font-size:12px}.groupContactList{display:grid;grid-gap:6px;gap:6px;max-height:220px;overflow-y:auto}.groupContact{align-items:center;background:var(--surface);border-radius:6px;display:grid;grid-gap:8px;gap:8px;grid-template-columns:auto minmax(0,1fr);padding:8px}.groupContact>span,.groupMember>span:nth-child(2){display:grid;min-width:0}.groupContact small,.groupMember small{color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.groupCreatorActions{display:flex;gap:8px;justify-content:flex-end}.groupCreatorActions button{border-radius:6px;min-height:36px;padding:7px 10px}.groupMemberList{display:grid;grid-gap:8px;gap:8px;margin-top:20px;max-height:280px;overflow-y:auto;width:100%}.groupMember{align-items:center;background:var(--surface-soft);border-radius:8px;display:grid;grid-gap:10px;gap:10px;grid-template-columns:auto minmax(0,1fr) auto auto;padding:9px 10px}.groupProfileCard{max-height:min(860px,calc(100vh - 40px));overflow-y:auto}.groupAvatarPicker{align-items:center;display:flex;flex-direction:column;gap:6px}.groupAvatarPicker.editable{color:var(--primary);cursor:pointer}.groupAvatarPicker input{display:none}.groupTitleEditor{display:grid;grid-gap:8px;gap:8px;grid-template-columns:minmax(0,1fr) auto;margin-top:14px;width:100%}.groupTitleEditor input{background:var(--input-bg);border:1px solid var(--border);border-radius:8px;color:var(--text);min-width:0;padding:10px 12px}.groupAddMembers>button,.groupTitleEditor button{background:var(--primary);border:0;border-radius:8px;color:#ffffff;font-weight:800;min-height:40px;padding:8px 12px}.groupAddMembers>button:disabled,.groupTitleEditor button:disabled{opacity:.55}.groupProfileError{margin:12px 0 0;width:100%}.groupAddMembers{border-top:1px solid var(--border);display:grid;grid-gap:7px;gap:7px;margin-top:14px;padding-top:14px;width:100%}.groupAddMembers h3{font-size:14px;margin:0 0 3px}.groupAddMembers label{align-items:center;display:grid;grid-gap:8px;gap:8px;grid-template-columns:auto minmax(0,1fr)}.groupAddMembers label>span{display:grid}.groupAddMembers small{color:var(--muted)}.dangerAction{background:var(--danger-bg);border:1px solid var(--danger-border);border-radius:8px;color:var(--danger);font-weight:800;margin-top:8px;min-height:40px;padding:8px 12px;width:100%}.list{display:grid;grid-gap:8px;gap:8px;margin-top:10px}.listItem,.listItemRow{background:var(--surface-soft);border:1px solid transparent;border-radius:8px;color:inherit;gap:4px;padding:12px;text-align:left;width:100%}.listItem{display:grid}.listItemRow{align-items:center;display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:8px;gap:8px}.listItemMain{background:transparent;border:0;color:inherit;display:grid;grid-gap:4px;gap:4px;min-width:0;padding:0;text-align:left}.listItem span,.listItemMain span{color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.listItemTitle{align-items:center;display:grid;grid-gap:8px;gap:8px;grid-template-columns:minmax(0,1fr) auto}.listItemTitle strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.listItemTitle small{color:var(--muted);font-weight:700}.listItem.active,.listItemRow.active{background:var(--primary-soft);border-color:var(--mine-border)}.listItem.compact,.listItemRow.compact{background:transparent;border-color:transparent;padding:10px 12px}.rowActions{display:grid;grid-gap:6px;gap:6px}.miniAction{background:var(--surface);border:1px solid var(--border);border-radius:8px;color:var(--muted);font-size:12px;font-weight:700;min-height:30px;padding:4px 8px}.miniAction.danger{background:var(--danger-bg);border-color:var(--danger-border);color:var(--danger)}.adminUser{align-items:center;background:var(--surface-soft);border:1px solid var(--border);border-radius:8px;display:grid;grid-gap:8px;gap:8px;grid-template-columns:minmax(0,1fr) auto;padding:10px 12px}.adminUserMain{background:transparent;border:0;color:inherit;display:grid;min-width:0;padding:0;text-align:left}.adminUser small,.adminUser span,.adminUser strong,.adminUserMain small,.adminUserMain span,.adminUserMain strong{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.adminUser small,.adminUser span,.adminUserMain small,.adminUserMain span{color:var(--muted);font-size:12px;margin-top:2px}.adminActions{display:grid;grid-gap:6px;gap:6px}.adminActions button{background:var(--surface);border:1px solid var(--border);border-radius:8px;color:var(--muted);font-size:12px;font-weight:700;min-height:30px;padding:4px 8px}.adminActions .dangerButton{background:var(--danger-bg);border-color:var(--danger-border);color:var(--danger)}.subheading{color:var(--muted);font-size:13px;margin:8px 0 0}.auditItem,.moderationChat,.reportItem{background:var(--surface-soft);border:1px solid var(--border);border-radius:8px;color:inherit;display:grid;grid-gap:3px;gap:3px;padding:10px 12px;text-align:left;width:100%}.reportItem{align-items:center;display:grid;grid-template-columns:minmax(0,1fr) auto}.reportMain{background:transparent;border:0;color:inherit;display:grid;grid-gap:3px;gap:3px;min-width:0;padding:0;text-align:left}.auditItem small,.auditItem span,.moderationChat small,.moderationChat span,.reportMain small,.reportMain span{color:var(--muted);font-size:12px}.reportedMessage{border:2px solid var(--danger)}.reportButton{align-self:flex-end;background:transparent;border:0;color:var(--muted);font-size:11px;font-weight:700;margin-top:4px;padding:0}.moderationList{display:grid;grid-gap:10px;gap:10px;margin:0 auto;max-width:760px;padding:24px;width:100%}.moderationList h3{margin:0}.adminActions button:disabled{cursor:default;opacity:.5}.chat{background-color:var(--background);display:grid;grid-template-rows:auto 1fr auto;min-height:100vh;padding:20px}[data-theme=dark] .chat{background-image:linear-gradient(rgba(13,23,32,.24),rgba(13,23,32,.24)),url(/chat-dark-pattern.png);background-position:top;background-repeat:repeat;background-size:auto,470px auto}.chatHeader{border:1px solid var(--border);border-radius:8px;padding:16px}.presence{color:var(--muted);font-size:13px;margin:4px 0 0}.messages{align-content:end;display:grid;grid-gap:10px;gap:10px;overflow:auto;padding:20px 0}.dateDivider{background:var(--surface-soft);color:var(--muted);font-weight:700;justify-self:center;padding:5px 10px}.dateDivider,.message{border:1px solid var(--border);border-radius:8px}.message{background:var(--surface);justify-self:start;max-width:min(620px,90%);padding:10px 12px}.message.mine{background:var(--mine);border-color:var(--mine-border);justify-self:end}.message span{color:var(--muted);display:block;font-size:12px;font-weight:700;margin-bottom:4px}.message p{line-height:1.45;margin:0;white-space:pre-wrap}.message time{color:var(--muted);display:block;font-size:11px;margin-top:6px;text-align:right}.systemMessage{background:var(--primary-soft);border-radius:8px;color:var(--muted);justify-self:center;max-width:min(620px,90%);padding:7px 11px;text-align:center}.systemMessage p{font-size:12px;font-weight:700;margin:0}.systemMessage time{display:block;font-size:10px;margin-top:2px}.deliveryStatus{color:var(--muted);display:inline-block;height:14px;margin-top:2px;position:relative;text-align:right;width:17px}.deliveryStatus span{border-bottom:1.6px solid;border-right:1.6px solid;height:9px;left:0;position:absolute;top:1px;transform:rotate(45deg);width:5px}.deliveryStatus .second{left:6px}.deliveryStatus.read{color:#59b9f5}.messageImage{border-radius:8px;max-height:320px;max-width:min(360px,100%);object-fit:cover}.fileLink,.messageImage{display:block;margin:6px 0}.fileLink{background:var(--surface-soft);color:var(--primary);font-weight:700;text-decoration:none}.composer,.fileLink{border:1px solid var(--border);border-radius:8px;padding:10px}.composer{display:grid;grid-gap:10px;gap:10px;grid-template-columns:1fr auto}.authForm input,.composer input{border:1px solid var(--border);border-radius:8px;min-width:0;padding:12px}.authForm button,.composer button{background:var(--primary);border:0;border-radius:8px;color:white;font-weight:700;padding:0 16px}.authForm button:hover,.composer button:hover{background:var(--primary-dark)}.authShell,.welcome{align-items:center;display:grid;justify-items:center;min-height:100vh}.welcome{color:var(--muted);text-align:center}.welcome h2{color:var(--text)}.authShell{padding:20px}.authCard{background:var(--surface);border:1px solid var(--border);border-radius:8px;max-width:440px;padding:24px;width:100%}.authCard p,.empty{color:var(--muted)}.tabs{background:var(--surface-soft);border-radius:8px;display:grid;grid-template-columns:1fr 1fr;margin:20px 0;padding:4px}.tabs button{background:transparent;border:0;border-radius:6px;color:var(--muted);padding:10px}.tabs button.active{background:var(--surface);color:var(--text);font-weight:700}.authForm{display:grid;grid-gap:14px;gap:14px}.authForm label{display:grid;grid-gap:6px;gap:6px;font-weight:700}.authForm .legalConsent{align-items:flex-start;color:var(--muted);display:flex;font-size:13px;font-weight:400;line-height:1.45}.authForm .legalConsent input{flex:0 0 auto;height:20px;margin:0;padding:0;width:20px}.legalConsent a{color:var(--primary)}.authForm button{min-height:44px}.error{background:var(--danger-bg);border:1px solid var(--danger-border);border-radius:8px;color:var(--danger);padding:10px 12px}.successNotice{background:var(--success-bg);border:1px solid var(--success-border);border-radius:8px;color:var(--success-text);padding:10px 12px}.textButton{background:transparent;border:0;color:var(--primary);min-height:36px;padding:6px}.authCard button:disabled{cursor:default;opacity:.6}@media (max-width:800px){.shell{grid-template-columns:1fr}.sidebar{border-bottom:1px solid var(--border);border-right:0}.chat{min-height:70vh}.e2eeDevice{align-items:stretch;flex-direction:column}.e2eeDevice .dangerButton{align-self:flex-start}.secretVerification{max-height:66dvh;padding:14px}.secretVerificationGrid{grid-template-columns:1fr}.secretShortCode,.secretVerificationHeading{align-items:stretch;flex-direction:column}.secretTrustBadge{align-self:flex-start}.groupProfileCard{max-height:calc(100vh - 20px);padding:24px 16px 18px}.groupMember{grid-template-columns:auto minmax(0,1fr)}.groupMember>button{grid-column:2}}:root{--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--radius-small:8px;--radius-regular:12px;--radius-component:16px;--radius-surface:22px;--radius-floating:26px;--radius-pill:999px;--messenger-background:#b4ce98;--messenger-pattern:url(/chat-light-pattern.png);--surface-hover:#f0f4f8;--surface-selected:#328cec;--selected-text:#fff;--text-primary:var(--text);--text-secondary:var(--muted);--accent:var(--primary);--bubble-incoming:var(--surface);--bubble-outgoing:#e7f1fe;--bubble-meta:#7b8590;--floating-shadow:0 2px 12px rgb(27 49 65/5%);--date-surface:rgba(69,103,74,.55);--date-text:#fff;--sidebar-width:clamp(280px,26.667vw,720px);--conversation-width:clamp(560px,48.6vw,1240px);--outer-margin:16px}[data-theme=dark]{--messenger-background:#0d1720;--messenger-pattern:url(/chat-dark-pattern.png);--surface-hover:#1d2e3c;--surface-selected:#25425b;--selected-text:#edf6ff;--bubble-outgoing:var(--mine);--bubble-meta:#a1b1bf;--date-surface:rgba(21,33,44,.85);--date-text:#d4e2ec;--floating-shadow:0 2px 12px rgb(0 0 0/10%)}button,input,select,textarea{font:inherit}a,button,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer;transition:background-color .15s,color .15s,opacity .15s}button:disabled{cursor:default;opacity:.5}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.shell{position:relative;isolation:isolate;background-color:var(--messenger-background);background-image:none;display:grid;grid-template-columns:var(--sidebar-width) minmax(0,1fr);grid-gap:var(--space-6);gap:var(--space-6);padding:var(--outer-margin) 0 var(--outer-margin) var(--outer-margin);height:100dvh;min-height:0;overflow:hidden}.shell:before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background-image:var(--messenger-pattern);background-position:top;background-size:380px auto;opacity:1;mix-blend-mode:multiply}[data-theme=dark] .shell:before{mix-blend-mode:normal}.shell .sidebar{border:0;border-radius:var(--radius-floating);box-shadow:var(--floating-shadow);min-height:0;min-width:0;gap:0;padding:var(--space-2);height:100%;overflow:hidden}.sidebarToolbar{align-items:center;display:flex;gap:var(--space-2);padding:var(--space-1) var(--space-1) var(--space-3)}.iconButton{align-items:center;justify-content:center;display:inline-flex;flex:0 0 auto;background:transparent;border:0;border-radius:var(--radius-pill);color:var(--text-secondary);width:40px;height:40px;padding:var(--space-2)}.composerLock svg,.iconButton svg{width:22px;height:22px;flex-shrink:0}.iconButton:hover{background:var(--surface-hover);color:var(--text-primary)}.iconButton[aria-expanded=true]{color:var(--accent);background:var(--primary-soft)}.sidebarSearch{display:flex;align-items:center;gap:var(--space-2);min-width:0;flex:1 1;background:var(--surface-soft);border-radius:var(--radius-pill);min-height:44px;padding:0 var(--space-3)}.sidebarSearch:focus-within{box-shadow:inset 0 0 0 2px var(--accent)}.sidebarSearch svg{height:20px;width:20px;flex:0 0 auto;color:var(--text-secondary)}.sidebarSearch input{background:transparent;color:var(--text-primary);border:0;outline:0;padding:0;min-width:0;width:100%;height:42px;font-size:15px}.composer textarea::placeholder,.sidebarSearch input::placeholder{color:var(--text-secondary);opacity:.85}.messengerAvatar{align-items:center;justify-content:center;display:inline-flex;flex:0 0 auto;height:54px;width:54px;border-radius:50%;overflow:hidden;color:#fff;font-size:22px;font-weight:600}.messengerAvatar img{object-fit:cover;height:100%;width:100%}.avatarTone0{background:#527ecc}.avatarTone1{background:#608e91}.avatarTone2{background:#8a76b9}.avatarTone3{background:#c27088}.avatarSelf{width:36px;height:36px;font-size:14px}.selfAvatarButton{background:transparent;border:0;border-radius:50%;padding:0;height:36px;width:36px;flex-shrink:0}.sidebarTabs{display:flex;gap:var(--space-1);padding:var(--space-1);margin:0 0 8px;box-shadow:0 2px 8px rgb(27 49 65/8%)}.sidebarTabs,.sidebarTabs button{border:0;border-radius:var(--radius-pill)}.sidebarTabs button{background:transparent;color:var(--text-secondary);padding:var(--space-2) var(--space-4);min-height:36px;font-size:15px;display:inline-flex;align-items:center;gap:var(--space-2);flex:0 1 auto;min-width:0}.sidebarTabs button:hover{background:var(--surface-hover)}.sidebarTabs .active{background:var(--primary-soft);color:var(--accent);font-weight:600}.tabBadge,.unreadBadge{color:#fff;background:var(--accent);border-radius:var(--radius-pill);font-size:11px;min-width:20px;padding:2px 6px;text-align:center}.sidebarScroll{flex:1 1;min-height:0;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin}.sidebarFeedback{display:none}.sidebar .panel{padding:0;margin:0;border:0;background:transparent}.sidebar .panelHeader{padding:var(--space-1) var(--space-3);min-height:26px}.sidebar .panelHeader h2{font-size:12px;font-weight:500;color:var(--text-secondary);margin:0}.sidebar .panelHeader span{font-size:11px}.contactTabs{display:flex;flex-wrap:wrap;gap:4px;padding:4px 8px 8px}.contactTabs button{display:inline-flex;align-items:center;gap:4px;min-height:36px;min-width:0;padding:6px 8px;border:0;border-radius:8px;background:transparent;color:var(--text-secondary);font-size:12px}.contactTabs button[aria-current=page]{background:var(--primary-soft);color:var(--accent)}.contactTabs .tabBadge{font-size:10px;padding:1px 5px;min-width:18px}.contactPerson{display:flex;align-items:center;min-width:0;gap:8px}.contactPerson .chatListPreview{color:var(--text-secondary);font-size:12px;overflow-wrap:anywhere}.contactRequest{padding:8px;min-width:0}.contactRequestActions{display:flex;flex-wrap:wrap;gap:8px;padding:8px 0 0 62px}.contactRequestActions button{min-height:36px;padding:6px 12px;border-radius:8px;font-size:13px}.contactRequestActions button:not(.ghostButton){background:var(--accent);color:#fff;border:1px solid transparent}.contactRequestActions button:disabled{opacity:.6;cursor:default}.contactDirectory .subheading{margin:12px 12px 4px}.contactsPanel .contactFeedback{margin:8px;padding:8px;overflow-wrap:anywhere;font-size:13px}.sidebar .list{grid-template-columns:minmax(0,1fr);gap:0;margin-top:0}.sidebar .listItemRow{position:relative;display:flex;align-items:center;min-height:72px;padding:0;margin:0;border:0;border-radius:var(--radius-component);gap:0;background:transparent}.sidebar .listItemRow:hover{background:var(--surface-hover)}.sidebar .listItemRow.active{background:var(--surface-selected)}.sidebar .listItemMain{padding:var(--space-2);display:flex;align-items:center;gap:var(--space-2);flex:1 1;min-width:0;background:transparent;border:0;border-radius:var(--radius-component);color:var(--text-primary);min-height:72px;text-align:left}.sidebar .listItemMain:focus-visible{outline-offset:-3px}.sidebar .listItemMain:focus:not(:focus-visible){outline:none}.sidebar .listItemMain span{margin:0}.sidebar .listItemMain .messengerAvatar{display:inline-flex;font-size:22px;color:#fff}.chatListCopy{display:flex!important;flex-direction:column;min-width:0;flex:1 1;gap:var(--space-1)}.chatListCopy>strong,.listItemTitle strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:16px;font-weight:600}.sidebar .chatListCopy>strong,.sidebar .listItemTitle strong{color:var(--text-primary)}.sidebar .listItemTitle{display:flex;gap:var(--space-2);align-items:baseline}.listItemTitle strong{flex:1 1;min-width:0}.listItemTitle small{flex-shrink:0;color:var(--text-secondary);font-size:12px;font-weight:400;padding-right:4px;display:inline-flex;align-items:center;gap:4px}.listItemTitle .deliveryStatus{margin:0;flex-shrink:0}.sidebar .listItemMain .deliveryStatus span{overflow:visible;color:inherit}.sidebar .listItemRow.active .deliveryStatus,.sidebar .listItemRow.active .deliveryStatus span{color:var(--selected-text)}.sidebar .listItemMain .chatListPreview{color:#8b9097;font-size:14px!important;font-weight:400;line-height:20px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}[data-theme=dark] .sidebar .listItemMain .chatListPreview{color:var(--text-secondary)}.sidebar .listItemRow.active .chatListIndicators svg,.sidebar .listItemRow.active .chatListPreview,.sidebar .listItemRow.active .listItemMenu,.sidebar .listItemRow.active .listItemTitle small,.sidebar .listItemRow.active .listItemTitle strong{color:var(--selected-text)}.sidebar .listItemRow.active .listItemMain:focus-visible{outline-color:var(--selected-text)}.chatListPreviewRow{display:flex!important;align-items:center;gap:8px;min-width:0}.chatListPreviewRow .chatListPreview{flex:1 1;min-width:0}.chatListIndicators{display:inline-flex!important;align-items:center;gap:4px;flex:0 0 auto}.chatListIndicators:empty{display:none!important}.chatListIndicators svg{width:14px;height:14px;color:var(--text-secondary)}.sidebar .chatListIndicators .unreadBadge{background:#00bf3a;color:#fff;font-size:12px;line-height:18px;padding:1px 7px;min-width:22px;overflow:visible}.sidebar .chatListIndicators .unreadBadge.muted{background:#bec4c8}[data-theme=dark] .sidebar .chatListIndicators .unreadBadge.muted{background:#566771}.sidebar .listItemRow.active .chatListIndicators .unreadBadge{background:#fff;color:#328cec}.sidebar .listItemRow:focus-within .chatListIndicators,.sidebar .listItemRow:hover .chatListIndicators{margin-right:20px}.sidebar .listItemRow:focus-within .chatListPreviewRow .chatListPreview,.sidebar .listItemRow:hover .chatListPreviewRow .chatListPreview{padding-right:0}.messageAttachment span{overflow-wrap:anywhere;min-width:0}.sidebar .listItemMenu{position:absolute;right:4px;bottom:6px;width:24px;height:24px;padding:4px;margin:0;opacity:0}.sidebar .listItemRow:focus-within .chatListPreview,.sidebar .listItemRow:hover .chatListPreview{padding-right:20px}.listItemMenu[aria-expanded=true],.listItemRow:focus-within .listItemMenu,.listItemRow:hover .listItemMenu{opacity:1}.sidebarFooter{display:flex;align-items:center;justify-content:space-between;padding:var(--space-2) var(--space-3) var(--space-1);color:var(--text-secondary);gap:var(--space-2);font-size:11px}.sidebarFooter strong{color:var(--accent);font-size:12px;font-weight:600}.sidebarFooter span{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.shell .chat,[data-theme=dark] .shell .chat{background:transparent;padding:0;min-height:0;min-width:0;width:100%;height:100%;display:flex;flex-direction:column;position:relative;container-type:inline-size}.chat>.accountSettings,.chat>.error,.chat>.settingsPage,.chatHeader,.composerArea,.conversation>.error,.conversationSearch,.messageStream,.secretNotice,.secretTrustWarning,.secretVerification{width:min(var(--conversation-width),calc(100% - 32px));margin-left:auto;margin-right:auto}.chat>.error{flex:0 0 auto;margin-bottom:var(--space-2)}.chat .conversation{height:100%;min-height:0;background:transparent}.chatHeader{min-height:48px;border:0;padding:4px 8px 4px 4px;gap:var(--space-2);border-radius:var(--radius-floating);background:var(--surface);box-shadow:var(--floating-shadow);flex-shrink:0}.chatHeader h2{font-size:16px;font-weight:600;line-height:20px;margin:0}.chatHeader .iconButton{width:36px;height:36px}.chatHeader .iconButton svg{width:20px;height:20px}.conversationIdentity{flex:1 1;gap:var(--space-2)}.conversationIdentityText{min-width:0;flex:1 1}.conversationIdentityText h2,.presence{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.presence{font-size:12px;line-height:16px;display:block;margin:0}.headerAvatar{width:40px;height:40px;font-size:16px}.conversationBody{flex:1 1;min-height:0;margin:var(--space-2) 0}.conversationBody .messages{display:block;background:transparent;padding:var(--space-2) 0;scrollbar-width:thin;scrollbar-gutter:stable both-edges;scrollbar-color:rgb(44 75 64/35%) transparent;overscroll-behavior:contain}[data-theme=dark] .conversationBody .messages{scrollbar-color:rgb(178 205 215/35%) transparent}.messageStream{display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-end;min-height:100%;padding:0 8px}.conversationBody .messageStream{width:min(var(--conversation-width),calc(100cqw - 32px))}.messageStream>.historyLoader{align-self:stretch}.conversationBody .message{width:-moz-fit-content;width:fit-content;max-width:min(78%,680px);padding:6px 10px;border:0;border-radius:12px 12px 12px 4px;background:var(--bubble-incoming);margin:10px 0 0;font-size:15px;position:relative;box-shadow:0 1px 2px rgb(26 44 31/7%)}.conversationBody .message.mine{border-radius:12px 12px 4px 12px;background:var(--bubble-outgoing)}.conversationBody .message.continued{margin-top:2px;border-top-left-radius:4px}.conversationBody .message.mine.continued{border-top-left-radius:12px;border-top-right-radius:4px}.conversationBody .message:not(.groupEnd){border-bottom-left-radius:12px}.conversationBody .message.mine:not(.groupEnd){border-bottom-right-radius:12px}.message p{display:inline;line-height:1.4;overflow-wrap:anywhere}.message:after{content:"";display:block;clear:both}.conversationBody .groupIncoming{margin-left:40px}.message .messageAvatar{position:absolute;left:-40px;bottom:0;height:32px;width:32px;font-size:12px;color:#fff;margin:0}.message .messageAuthor{color:var(--accent);font-size:12px;font-weight:600;margin:0 0 4px}.messageMeta{display:inline-flex;float:right;align-items:center;justify-content:flex-end;gap:4px;margin:6px 0 0 8px}.messageMeta time{margin:0;line-height:14px;color:var(--bubble-meta);font-size:11px;white-space:nowrap}.messageMeta .deliveryStatus{margin:0;flex-shrink:0;color:var(--bubble-meta)}.messageMeta .deliveryStatus.read{color:#59b9f5}.message .deliveryStatus span{margin:0;color:inherit}.messageActions{position:absolute;right:-32px;top:0;margin:0;opacity:0}.mine .messageActions{left:-32px;right:auto}.message:focus-within .messageActions,.message:hover .messageActions{opacity:1}.messageActions .iconButton{width:28px;height:28px;padding:6px;color:var(--text-secondary);background:var(--surface)}.imageAttachment{display:block}.messageImage{width:320px;height:240px;max-width:100%;max-height:360px;object-fit:contain;background:transparent;border-radius:var(--radius-small);margin:0 0 4px}.conversationBody .photoMessage{padding:4px 4px 6px}.photoMessage>p{padding-left:6px}.photoMessage .messageMeta{margin-right:6px}.messageAttachment{display:flex;align-items:center;gap:8px;padding:8px 0;color:var(--accent);text-decoration:none}.messageAttachment svg{width:24px;height:24px;flex-shrink:0}.messageAttachment span{font-size:13px;font-weight:500;margin:0;color:inherit}.messageAttachment:hover{text-decoration:underline}.messageQuote{margin:0 0 6px;padding:6px 8px;font-size:12px}.messageQuote span{font-weight:400;margin:2px 0 0;font-size:12px}.dateDivider{align-self:center;margin:16px 0 4px;border:0;background:var(--date-surface);color:var(--date-text);font-size:12px;font-weight:500;border-radius:var(--radius-pill);padding:4px 10px}.historyLoader{color:var(--text-secondary);font-size:11px;text-align:center;height:32px;flex:0 0 32px;display:flex;align-items:center;justify-content:center}.historyLoader button{border:0;padding:6px 12px;color:var(--accent)}.historyLoader button,.systemMessage{border-radius:var(--radius-pill);background:var(--date-surface)}.systemMessage{align-self:center;color:var(--date-text);margin:8px 0;font-size:12px}.systemMessage p{font-weight:400}.systemMessage time{color:inherit;opacity:.8}.jumpDown{border-radius:50%;height:44px;min-width:44px;right:max(16px,calc((100% - var(--conversation-width)) / 2 + 8px));bottom:8px;box-shadow:var(--floating-shadow)}.composerArea{flex:0 0 auto;min-width:0}.composer{display:flex;align-items:flex-end;gap:var(--space-2);min-height:48px;padding:4px 4px 4px 8px;border:0;border-radius:var(--radius-floating);box-shadow:var(--floating-shadow);background:var(--surface)}.composer:focus-within{box-shadow:var(--floating-shadow),0 0 0 1px var(--primary)}.composer textarea{background:transparent;border:0;outline:0;resize:none;flex:1 1;min-width:0;min-height:40px;max-height:136px;padding:10px 0;line-height:20px;color:var(--text-primary);font-size:15px;overflow-y:auto;scrollbar-width:thin}.composer .composerFileInput{display:none}.attachmentComposer{display:flex;align-items:center;gap:12px;padding:8px 12px;margin-bottom:6px;border-radius:16px;background:var(--surface)}.attachmentComposer>svg{width:24px;height:24px;flex-shrink:0;color:var(--accent)}.attachmentComposer>span{flex:1 1;min-width:0}.attachmentComposer small,.attachmentComposer strong{display:block;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.attachmentComposer strong{font-size:13px;font-weight:500}.attachmentComposer small{font-size:11px;color:var(--text-secondary)}.composer .iconButton{background:transparent;color:var(--text-secondary);border-radius:50%;padding:8px}.composer .iconButton:hover{background:var(--surface-hover)}.composer .sendButton{width:40px;height:40px;padding:10px;border-radius:50%;flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center}.sendButton svg{width:22px;height:22px}.composer .sendButton:disabled{background:var(--surface-soft);color:var(--text-secondary);opacity:1}.composerLock{color:var(--success-text);align-self:center;display:flex}.replyComposer{margin-bottom:6px;padding:8px 12px;border-radius:var(--radius-component);min-height:48px}.replyComposer>button:first-child{border-left:2px solid var(--accent);padding-left:8px;flex:1 1}.replyComposer strong{font-size:12px;color:var(--accent)}.replyComposer span{white-space:nowrap;text-overflow:ellipsis;font-size:12px;color:var(--text-secondary)}.conversationSearch{margin-top:8px;padding:12px;border-radius:var(--radius-component)}.searchHits{max-height:180px}.menuSurface{position:fixed;z-index:150;width:min(240px,calc(100vw - 24px));max-height:calc(100dvh - 24px);overflow:auto;border:1px solid var(--border);background:var(--surface);border-radius:var(--radius-regular);padding:6px;box-shadow:0 6px 24px rgb(0 0 0/12%)}.menuSurface>button{display:flex;align-items:center;gap:12px;width:100%;text-align:left;padding:10px;min-height:40px;border:0;border-radius:var(--radius-small);background:transparent;color:var(--text-primary);font-size:13px}.menuSurface button:hover{background:var(--surface-hover)}.menuSurface button svg{width:20px;height:20px;flex:0 0 auto;color:var(--text-secondary)}.menuAccount{padding:8px;margin-bottom:4px;display:flex;align-items:center;gap:12px;border-bottom:1px solid var(--border)}.menuAccount .messengerAvatar{height:36px;width:36px;font-size:14px}.menuAccount>div{min-width:0}.menuAccount small,.menuAccount strong{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.menuAccount strong{font-size:13px}.menuAccount small{color:var(--text-secondary);font-size:11px}.emojiGrid{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:4px;gap:4px}.emojiGrid button{min-height:40px;background:transparent;border:0;border-radius:8px;font-size:22px}.loadingSpinner{width:18px;height:18px;border:2px solid;border-right:2px solid transparent;border-radius:50%;animation:messenger-spin .7s linear infinite}@keyframes messenger-spin{to{transform:rotate(1turn)}}.welcome{flex:1 1;min-height:0;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:12px}.welcomeMark{background:var(--date-surface);color:var(--accent);border-radius:50%;width:64px;height:64px;padding:18px}.welcomeMark svg{width:100%;height:100%}.welcome h2,.welcome p{margin:0}.welcome h2{font-size:20px}.welcome p{font-size:13px}.chat .settingsPage{background:transparent;min-height:0;height:100%;flex:1 1;display:flex;flex-direction:column}.settingsPage .chatHeader{width:100%}.settingsPage .settingsHeader{display:grid;grid-template-columns:40px minmax(0,1fr) 40px;padding:4px 8px}.settingsHeader h2{text-align:center}.settingsHeader>.iconButton{justify-self:end}.profilePhotoIdentity{display:flex;align-items:center;gap:16px;min-width:0}.profilePhotoIdentity>div{flex:1 1;min-width:0}.profilePhotoIdentity h3,.profilePhotoIdentity p{margin:0;overflow-wrap:anywhere}.profilePhotoIdentity p{margin-top:4px;color:var(--text-secondary);font-size:13px}.profilePhotoButton{background:transparent;border:0;border-radius:50%;padding:0;flex:0 0 auto}.profilePhotoButton:disabled{opacity:1}.profilePhotoAvatar{width:80px;height:80px;font-size:28px}.profilePhotoInput{display:none}.profilePhotoActions{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}.profilePhotoActions button{width:auto;min-height:36px;padding:8px 12px}.profilePhotoActions button:not(.ghostButton){background:var(--primary);color:#fff;border:0;border-radius:8px}.profilePhotoActions button:not(.ghostButton):hover{background:var(--primary-dark)}.profilePhotoNotice{margin:12px 0 0;color:var(--text-secondary);font-size:13px}.chat .accountSettings{background:var(--surface);border-radius:var(--radius-surface);min-height:0;flex:1 1;padding:24px}.chat>.messages{flex:1 1;min-height:0}.settingsPage .settingsContent{min-height:0;overflow:auto;padding:16px 0}.settingsItem,.settingsSection{border-radius:var(--radius-component)}.settingsItem:hover{background:var(--surface-hover)}.chat>.mobileBack,.mobileBack{display:none}.secretNotice{border:0;border-radius:12px;margin-top:8px;padding:6px 12px;font-size:11px}.secretHeader{border:0}.secretTrustButton{display:flex;align-items:center;gap:4px;border-radius:999px;font-weight:500;min-height:32px;padding:6px 8px}.secretTrustButton svg{height:16px;width:16px}.secretVerification{flex:0 1 auto;margin-top:8px;min-height:0;border:0;border-radius:16px}.secretTrustWarning{margin-top:8px;border-radius:12px}.authCard{border-radius:var(--radius-surface);box-shadow:var(--floating-shadow)}@media (min-width:768px) and (max-width:1023px){:root{--outer-margin:8px;--radius-floating:22px}.shell{gap:12px}}@media (max-width:767px){:root{--outer-margin:0px;--radius-floating:22px}.shell{display:block;padding:0}.shell .sidebar{width:100%;height:100%;border-radius:0;padding:8px}.sidebarFeedback{display:block;margin:0 0 8px;font-size:12px}.shell .chat{display:none;width:100%;padding:8px;height:100dvh}.chat>.accountSettings,.chat>.error,.chat>.settingsPage,.chatHeader,.composerArea,.conversation>.error,.conversationSearch,.messageStream,.secretNotice,.secretTrustWarning,.secretVerification{width:100%}.shell.conversationOpen .sidebar{display:none}.shell.conversationOpen .chat{display:flex;padding-bottom:max(8px,env(safe-area-inset-bottom))}.chat>.mobileBack,.mobileBack{display:inline-flex}.chat>.mobileBack{margin:0 0 6px;background:var(--surface)}.chatHeader{gap:4px;padding:6px 8px}.chatHeader .iconButton{width:32px;height:36px}.headerAvatar{width:36px;height:36px}.chatHeader h2{font-size:14px}.conversationIdentity{gap:8px}.conversationBody .message{max-width:min(84%,520px)}.conversationBody .groupIncoming{max-width:calc(100% - 72px)}.conversationBody .messages{width:calc(100% + 8px);padding:8px 0;scrollbar-gutter:auto}.conversationBody .messageStream{width:calc(100% - 8px);padding:0 4px;margin:0}.jumpDown{right:8px}.messageActions{right:-24px}.mine .messageActions{left:-24px}.messageActions .iconButton{width:24px;height:28px;background:transparent;opacity:.7}.messageActions,.sidebar .listItemMenu{opacity:1}.sidebar .chatListPreview{padding-right:20px}.secretTrustButton{font-size:11px}.secretVerificationGrid{grid-template-columns:1fr}.secretShortCode,.secretVerificationHeading{flex-wrap:wrap}}@media (prefers-reduced-motion:reduce){button{transition:none}.loadingSpinner{animation:none}}.galleryOverlay{position:fixed;inset:0;z-index:1600;display:flex;align-items:center;justify-content:center;padding:12px;background:rgba(0,0,0,.45)}.galleryPanel{background:var(--surface);color:var(--text);width:min(720px,100%);height:min(760px,calc(100dvh - 24px));min-height:0;border-radius:8px;display:flex;flex-direction:column;overflow:hidden}.galleryHeader{display:flex;align-items:center;gap:8px;padding:8px 12px;border-bottom:1px solid var(--border);flex-shrink:0}.galleryHeader>div{flex:1 1;min-width:0}.galleryHeader h2{font-size:16px;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.galleryHeader small,.galleryRow small{color:var(--muted);font-size:12px}.galleryTabs{display:flex;border-bottom:1px solid var(--border);flex-shrink:0}.galleryTabs button{flex:1 1;min-height:44px;border:0;border-bottom:2px solid transparent;background:none;color:var(--muted);border-radius:0}.galleryTabs button[aria-selected=true]{color:var(--primary);border-bottom-color:var(--primary)}.galleryContent{overflow-y:auto;min-height:0;flex:1 1;padding:12px}.galleryGrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:4px;gap:4px}.galleryTile{min-width:0;aspect-ratio:1;padding:0;background:var(--surface-soft);border:0;border-radius:4px;overflow:hidden}.galleryPhoto,.galleryPhoto img{display:block;width:100%;height:100%}.galleryPhoto img{object-fit:cover}.galleryPhotoFallback{width:100%;height:100%;min-height:64px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:8px;color:var(--muted)}.galleryPhotoFallback svg{width:24px;height:24px}.galleryRow{display:flex;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid var(--border)}.galleryRow>svg{width:24px;height:24px;color:var(--primary);flex-shrink:0}.galleryRowText{min-width:0;flex:1 1;display:flex;flex-direction:column;align-items:flex-start;gap:4px;overflow-wrap:anywhere}.galleryRow a,.galleryRow strong{font-size:14px;word-break:break-word}.galleryJump,.galleryRow a{color:var(--primary)}.galleryJump{background:none;border:0;font-size:12px;padding:4px 0}.galleryLoadMore{display:block;margin:16px auto}.galleryFullPhoto{flex:1 1;min-height:0;display:flex;align-items:center;justify-content:center;padding:8px}.galleryFullPhoto img{width:100%;height:100%;object-fit:contain}.galleryViewerActions{display:flex;align-items:center;justify-content:center;gap:16px;padding:8px;border-top:1px solid var(--border)}.galleryNext svg{transform:rotate(180deg)}.secretPhotoButton{display:block;padding:0;width:240px;max-width:100%;height:200px;border:0;overflow:hidden;background:var(--surface-soft)}.galleryPanel .error{padding:8px 12px;margin:0}@media(max-width:600px){.galleryOverlay{padding:0}.galleryPanel{width:100%;height:100dvh;border-radius:0}.galleryGrid{grid-template-columns:repeat(3,minmax(0,1fr))}}