.auth-page{min-height:100dvh;display:flex;align-items:center;justify-content:center;gap:95px;padding:50px 30px;background:radial-gradient(ellipse at 20% 40%,#e6eedf,transparent 55%),#f5f6f1}.auth-intro{max-width:360px;padding-bottom:30px}.auth-intro .eyebrow{margin-top:44px;font-size:10px}.auth-intro h1{font-family:Georgia,serif;font-size:78px;line-height:1.03;letter-spacing:-4px;font-weight:400;color:#2c503d;margin:18px 0 25px}.auth-intro h1 em{font-weight:400}.auth-intro p{font-size:14px;color:#829076;line-height:1.95;max-width:310px}.intro-note{display:flex;align-items:center;gap:7px;font-size:10px;color:#8b9c7b;margin-top:35px}.intro-note svg{width:15px;height:15px}.auth-card{width:420px;max-width:100%;padding:28px 34px;background:white;border:1px solid #e3e9dc;border-radius:20px;box-shadow:0 22px 85px #2c442b09}.auth-card h2{font-size:25px;font-weight:550;letter-spacing:-.7px;margin:15px 0}.auth-card .field{font-size:12px;margin:16px 0}.auth-card .field input{font-size:13px;padding:12px}.auth-card .field small{font-size:10px}.auth-card .search-hint{font-size:11px}.auth-submit{width:100%;margin:8px 0 0;min-height:45px}.auth-footnote{font-size:10px;color:#94a086;line-height:1.8;display:flex;gap:8px;margin-top:18px}.auth-footnote svg{width:14px;height:14px;flex-shrink:0;margin-top:2px}.text-action{display:block;padding:15px 0 0;color:var(--sub);font-size:11px;text-decoration:underline}.unlock-page{gap:0}.unlock-page .auth-card{width:420px;padding:35px}.live-account{border-top:1px solid var(--border);padding:12px 17px;display:flex;align-items:center;gap:8px;font-size:10px;color:var(--sub)}.live-account>span:nth-child(2){flex:1}.live-account .icon-button{height:30px;width:30px}.status-dot.offline{background:#ca9754}.live-security-strip{padding:10px 15px;font-size:10px;text-align:center;display:flex;justify-content:center;gap:7px;align-items:center;color:#7c9469;background:#eef4e8;border-bottom:1px solid #e2eadb}.live-security-strip svg{height:13px;width:13px}.invite-screen{display:flex;flex:1;flex-direction:column;align-items:center;justify-content:center;padding:35px;text-align:center}.invite-screen h2{font-size:22px;font-weight:500;letter-spacing:-.5px}.invite-screen p{max-width:380px;font-size:12px;color:var(--sub);line-height:1.9;margin-bottom:24px}.history-button{display:block;margin:0 auto 24px;background:var(--surface);border:1px solid var(--border);padding:8px 13px;border-radius:20px;font-size:10px;color:var(--sub)}.decryption-error{font-style:italic;color:var(--danger)}.queue-error{max-width:360px;font-size:10px;color:#ad7351;line-height:1.8;margin:8px 0}.queue-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:6px}.queue-actions button{font-size:10px;text-decoration:underline;text-underline-offset:3px;color:var(--green);padding:5px 0}.fingerprint{font-family:ui-monospace,Consolas,monospace;font-size:17px;line-height:1.9;letter-spacing:1.5px;background:var(--soft);border:1px solid var(--border);border-radius:10px;padding:18px;overflow-wrap:anywhere;margin:15px 0}.device-card{border:1px solid var(--border);border-radius:12px;padding:18px;margin:15px 0}.device-title{display:flex;justify-content:space-between;gap:12px;font-size:12px;flex-wrap:wrap;overflow-wrap:anywhere}.device-card p{font-size:10px}.verified{font-size:10px;color:var(--green)}.unverified{font-size:10px;color:#b27544}.device-code{display:block;overflow-wrap:anywhere;font-size:12px;letter-spacing:1px;line-height:1.9;color:var(--sub)}.verify-form .field{margin:14px 0 10px;font-size:10px}.verify-form .field input{font-size:12px;font-family:ui-monospace,Consolas,monospace}.live-shell .conversation-header{height:85px}.live-shell .message-row{max-width:80%}.live-shell .message-meta{font-size:9px}.live-shell .message-text{font-size:13px}.live-shell .message-scroll{padding:28px 50px 15px}.live-shell .sidebar{width:335px}.live-shell .sidebar-tagline{overflow-wrap:anywhere}.live-shell .composer-footer{font-size:9px}.live-shell #send-error:empty{display:none}.live-shell #send-error{padding:0 3px 9px}.live-shell .rail-button{font-size:10px}.live-shell .conversation-title{cursor:default}.live-shell .message-sender{overflow-wrap:anywhere}.dark .live-security-strip{background:#2c402b;border-color:#3b4d35;color:#a8c093}.dark .auth-page{background:var(--bg)}.dark .auth-card{background:var(--surface);border-color:var(--border)}.dark .auth-intro h1{color:var(--text)}

.live-shell .rail{overflow-y:auto}.live-shell .rail-nav{margin-top:24px;gap:4px}.live-shell .rail-bottom{padding-top:16px;gap:10px}.own-device-list{max-height:45dvh;overflow-y:auto;padding:0 3px}.own-device-list .danger-button{min-height:40px}

@media(max-width:600px){.live-shell .rail-nav{margin:0;gap:3px}.live-shell .rail-button{width:auto;min-width:0;flex:1;font-size:9px}}

@media(min-width:1600px){.live-shell .message-scroll{padding-left:90px;padding-right:90px}.live-shell .composer-area{padding-left:75px;padding-right:75px}.live-shell .message-row{max-width:76%}}

@media(max-width:1000px){.auth-page{gap:40px}.auth-intro{max-width:270px}.auth-intro h1{font-size:66px}.auth-card{padding:25px 28px}.live-shell .sidebar{width:290px}.live-shell .message-scroll{padding:24px}.live-shell .message-row{max-width:92%}}

@media(max-width:760px){.auth-intro{display:none}.auth-page{padding:28px 18px}.auth-card{width:440px}.auth-card h2{font-size:23px}.live-shell .sidebar{width:270px}.live-shell .message-scroll{padding:22px}.live-shell .message-row{max-width:95%}.live-shell .composer-footer span:last-child{display:none}}

@media(max-width:600px){.auth-page{padding:24px 16px;align-items:flex-start}.auth-card{margin-top:12px;padding:22px;border-radius:17px}.auth-card .field input{font-size:16px}.auth-card .field{margin:18px 0}.auth-card .field small{font-size:11px}.unlock-page{align-items:center}.unlock-page .auth-card{padding:27px}.live-shell .sidebar{width:100%}.live-shell .rail{height:68px}.live-shell .rail-nav{margin:0;gap:3px}.live-shell .rail-button{width:auto;min-width:0;flex:1;font-size:9px}.live-shell .conversation-header{height:75px}.live-security-strip{font-size:9px;line-height:1.7;padding:8px 14px}.live-shell .message-scroll{padding:22px 18px 10px}.live-shell .message-row{max-width:94%}.live-shell .composer textarea{font-size:16px}.live-shell .composer-footer{font-size:8px}.fingerprint{font-size:14px;padding:14px}.device-title{font-size:11px}.device-card{padding:14px}.verify-form .field input{font-size:15px}.live-account .icon-button{height:42px;width:42px}.live-shell .filter-tab{min-height:40px}.live-shell .history-button{padding:12px 16px}.live-shell .queue-actions button{min-height:40px}.live-shell .conversation-header .icon-button{min-height:44px;min-width:44px}}



.password-session-choice{display:flex;align-items:flex-start;gap:10px;line-height:1.6;margin:18px 0;font-size:12px}.password-session-choice input{margin-top:4px;accent-color:var(--green);flex-shrink:0}.password-session-choice small{display:block;color:var(--sub);font-size:10px;margin-top:4px}



.mfa-qr{text-align:center;margin:15px 0}.mfa-qr img{background:white;max-width:100%;height:auto}.mfa-recovery-codes{display:grid;gap:9px;background:var(--soft);border-radius:10px;padding:16px;margin:16px 0}.mfa-recovery-codes code{font-size:12px;overflow-wrap:anywhere}.recovery-login-note{font-size:10px;text-align:left;line-height:1.7;padding:0 0 14px}.modal-footer{flex-wrap:wrap}





.chat-item-wrap{position:relative}.live-shell .chat-item{width:100%;padding-right:44px;text-align:left}.chat-row-menu{position:absolute;right:5px;top:13px;width:36px;height:36px;border-radius:9px;font-size:22px;color:var(--sub);background:transparent}.chat-row-menu:hover,.chat-row-menu:focus-visible{background:var(--soft);color:var(--green)}.chat-flags{display:flex;flex-wrap:wrap;gap:4px 9px;font-size:9px;color:var(--sub);margin-top:4px}.chat-flags:empty{display:none}.chat-flags .chat-pending{color:#b27544}.chat-draft{font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:5px;color:var(--green)}.chat-settings-actions{display:grid;gap:10px;margin:16px 0}.chat-settings-actions button{text-align:left;min-height:42px}.live-shell .header-actions .icon-button{font-size:22px}.live-shell .title-row .row-gap{gap:3px}.live-shell .chat-body{min-width:0}

@media(max-width:600px){.chat-row-menu{width:44px;height:44px;right:4px;top:9px}.live-shell .chat-item{padding-right:52px}.chat-settings-actions button{min-height:44px}}

.attachment-card{display:grid;gap:8px;min-width:200px;max-width:100%;overflow-wrap:anywhere}.attachment-card strong,.attachment-selection-row strong{overflow-wrap:anywhere}.attachment-card small,.attachment-selection-row small,.attachment-progress{display:block;color:var(--muted,#64746f);font-size:12px}.attachment-card .row-gap{flex-wrap:wrap}.attachment-card button{min-height:40px}.attachment-preview{display:block;max-width:100%;max-height:55vh;object-fit:contain;margin:14px auto;border-radius:12px;background:#eef2ef}.attachment-selection-list{display:grid;gap:10px;max-height:32vh;overflow:auto}.attachment-selection-row{display:grid;gap:8px;padding:12px;border:1px solid var(--line,#dce5df);border-radius:12px}.attachment-selection-row .row-gap{flex-wrap:wrap}.attachment-selection-row button{min-height:40px}.attachment-selection{display:block;width:100%;text-align:left;border:1px solid #b9d5c6;background:#e9f2ec;color:#225b48;border-radius:10px;padding:10px;margin-bottom:8px}.attachment-progress{margin-top:8px}#attachment-view-result{overflow-wrap:anywhere}#attachment-caption{min-height:65px;resize:vertical}.composer>.icon-button{flex-shrink:0;align-self:flex-end;margin-bottom:3px}

@media(max-width:600px){.attachment-card{min-width:0}.attachment-selection-row .row-gap{gap:6px}.attachment-selection-row button{min-height:44px;padding:8px}.attachment-preview{max-height:45vh}}

.message-menu{border:0;background:transparent;color:var(--muted,#75877f);cursor:pointer;padding:5px 12px;font-size:24px;align-self:flex-end;min-height:36px}.message-menu:focus-visible{outline:2px solid #218864;border-radius:8px}.message-quote{display:flex;flex-direction:column;text-align:left;border:0;border-left:3px solid #218864;border-radius:6px;background:rgba(50,145,112,.09);padding:8px 11px;margin:0 0 8px;max-width:100%;color:inherit;cursor:pointer;overflow-wrap:anywhere}.message-quote strong{font-size:11px}.message-quote span{font-size:13px;white-space:pre-wrap}.reply-composer{display:flex;gap:8px;align-items:center;margin-bottom:8px}.reply-composer .message-quote{flex:1;margin:0}.reply-composer>button:last-child{border:0;background:transparent;font-size:24px;color:inherit;cursor:pointer}.message-action-list{display:flex;gap:10px;flex-wrap:wrap}.message-row .bubble{overflow-wrap:anywhere}.queue-actions{flex-wrap:wrap}



.reactions{display:flex;gap:5px;flex-wrap:wrap;margin-top:6px}.reaction{border:1px solid var(--border);border-radius:20px;padding:4px 10px;background:var(--surface);font-size:14px;cursor:pointer}.reaction.mine{background:#def0e2;border-color:#6f9b7e}.reaction span{font-size:11px}.reaction-picker{display:flex;gap:8px;flex-wrap:wrap;margin:14px 0}.reaction-picker button{font-size:25px;min-width:48px}.message-pin,.engagement-status{font-size:10px;color:var(--sub)}.pinned-strip{display:flex;gap:14px;align-items:center;justify-content:space-between;padding:7px 16px;border-bottom:1px solid var(--border);font-size:11px;background:var(--surface)}.pinned-strip button{text-decoration:underline;text-underline-offset:3px;color:var(--green)}.pinned-item{border:1px solid var(--border);border-radius:12px;padding:14px;margin:12px 0;overflow-wrap:anywhere}.pinned-item>p{white-space:pre-wrap;max-height:160px;overflow:auto}.pinned-item strong{font-size:11px}.dark .reaction.mine{background:#294936}



.source-message{overflow-wrap:anywhere}.source-message>strong{display:block;font-size:12px;margin-bottom:14px}.source-message>.message-text{white-space:pre-wrap;font-size:14px;line-height:1.8}.source-message>small{display:block;color:var(--sub);margin-top:8px}



.voice-button{touch-action:none;user-select:none}.voice-card{display:flex;flex-direction:column;gap:10px;min-width:180px}.voice-card small{font-size:11px;opacity:.7}.voice-recording{display:flex;flex-wrap:wrap;align-items:center;gap:16px;padding:18px;background:var(--surface-soft,#f1f5ed);border-radius:14px}.voice-recording>strong{font-size:24px;font-variant-numeric:tabular-nums}.voice-recording progress{width:100%;height:8px;accent-color:#287760}.voice-controls{display:flex;flex-wrap:wrap;gap:10px}.voice-destination{overflow-wrap:anywhere}#voice-preview audio,#voice-player audio{display:block;width:100%;margin:12px 0}#voice-record-draft{margin-bottom:6px}@media(max-width:600px){.composer{gap:4px}.voice-controls>button{flex:1 1 45%;min-height:44px}.voice-recording{gap:10px}}



.has-voice-draft{position:relative}.voice-draft-dot{position:absolute;right:2px;top:2px;font-size:10px;color:#b14a42}



.voice-controls [hidden],#voice-preview[hidden],#voice-player[hidden]{display:none!important}

.privacy-curtain #app,.privacy-curtain #modal-root,.privacy-curtain #toast{visibility:hidden}.report-selection{max-height:45dvh;overflow:auto}.report-item{display:grid;grid-template-columns:24px 1fr;gap:8px;margin:12px 0;padding:12px;border:1px solid var(--border);border-radius:10px;overflow-wrap:anywhere}.report-item span{grid-column:2;white-space:pre-wrap}.report-item strong{font-size:12px}.report-consent{display:flex;gap:10px;align-items:flex-start;margin:16px 0;line-height:1.7}.report-consent input{margin-top:5px;flex:none}.device-card[hidden]{display:none!important}#privacy-form .field,#client-preferences-form .field{margin:8px 0}#privacy-form select,#client-preferences-form select{width:100%;min-width:0;border:1px solid var(--border);border-radius:10px;padding:10px;background:var(--surface);color:var(--text)}



.history-search-form select,.history-search-form input{width:100%;min-width:0;background:var(--surface);color:var(--text);border:1px solid var(--border);border-radius:10px;padding:11px;font:inherit}.search-filter-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.history-search-results{list-style:none;padding:0;margin:16px 0;display:flex;flex-direction:column;gap:10px}.history-search-hit{width:100%;display:flex;flex-direction:column;gap:7px;text-align:left;border:1px solid var(--border);border-radius:12px;background:var(--surface);color:var(--text);padding:14px;cursor:pointer;overflow-wrap:anywhere}.history-search-hit:hover,.history-search-hit:focus-visible{border-color:var(--green);outline:2px solid var(--green)}.history-search-hit small{color:var(--sub);line-height:1.6}.history-search-hit span{white-space:pre-wrap;font-size:14px;line-height:1.6}.history-search-coverage{background:var(--surface);padding:12px;border:1px solid var(--border);border-radius:12px;font-size:12px;overflow-wrap:anywhere}.history-search-coverage p{margin:8px 0}.history-search-coverage summary{cursor:pointer;padding:8px 0}.search-coverage{padding-left:20px;max-height:160px;overflow:auto}.search-coverage li{margin:8px 0}.search-partial{font-weight:600}.search-empty{padding:18px;color:var(--sub)}.search-return{display:block;flex:none;text-align:left;margin:0;padding:10px 18px;border-bottom:1px solid var(--border)}.message-row.search-target .bubble{outline:3px solid var(--green);outline-offset:4px}#history-search-more[hidden]{display:none!important}@media(max-width:600px){.search-filter-grid{grid-template-columns:1fr}.history-search-form .modal-footer{flex-wrap:wrap}.history-search-form .modal-footer button{flex:1 1 45%}.history-search-hit{padding:12px}.conversation-header .header-actions{gap:0}.conversation-header .icon-button{width:36px;min-width:36px}}



.profile-photo{width:96px;height:96px;object-fit:cover;border-radius:50%}.profile-qr{width:240px;max-width:100%;height:auto;background:white}.forwarded-label{display:block;margin-bottom:7px;color:var(--muted);font-size:11px}.code-text{overflow-wrap:anywhere}dl dd{margin:5px 0 15px;overflow-wrap:anywhere}



.call-banner{display:flex;flex-wrap:wrap;gap:8px;align-items:center;padding:10px;background:var(--mint-soft,#e4f4ed)}.call-banner span{flex:1}.call-videos{display:flex;gap:8px}.call-videos video{max-width:70%;max-height:320px;background:#172724;border-radius:12px}.call-videos video:last-child{max-width:27%}.call-videos video:not([src]){min-height:60px}



.typing-status{min-height:20px;font-size:12px;color:var(--muted);padding:2px 24px}



.message-link{border:0;padding:0;color:var(--green,#196651);background:transparent;text-decoration:underline;cursor:pointer;overflow-wrap:anywhere;font:inherit;text-align:inherit}.location-card small{display:block;margin-top:8px}a.primary{display:inline-flex;text-decoration:none;align-items:center;justify-content:center}



.new-messages-button{align-self:center;margin:4px 12px;flex-shrink:0}.icon-button,.rail-button,.message-menu,.text-action{min-height:44px}.message-menu{min-width:44px}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #327bcb;outline-offset:3px}@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:0.01ms!important;transition-duration:0.01ms!important;scroll-behavior:auto!important}}@media(max-width:600px){.composer .icon-button{width:40px;min-width:40px}.composer{gap:3px}.composer textarea{min-width:40px}}



.expiry-strip{background:transparent;border:0;padding:7px 16px;color:var(--muted);font:inherit;font-size:12px;cursor:pointer;min-height:40px}.message-service{text-align:center;font-size:12px;color:var(--muted);padding:8px;overflow-wrap:anywhere}



.offline-page{max-width:1200px;margin:auto;padding:24px}.offline-page header{display:flex;justify-content:space-between;gap:16px;align-items:center}.offline-columns{display:grid;grid-template-columns:260px 1fr;gap:24px}.offline-columns nav{display:flex;flex-direction:column;gap:8px}.offline-message{padding:16px;border-bottom:1px solid var(--border,#ddd)}.offline-message p,.draft-version{white-space:pre-wrap;overflow-wrap:anywhere}.offline-message time{font-size:.8rem}.draft-version{max-height:220px;overflow:auto;padding:12px;border:1px solid #bbb;border-radius:12px;font:inherit}.draft-status{display:block;padding:4px 12px;color:var(--muted,#555)}@media(max-width:650px){.offline-columns{grid-template-columns:1fr}.offline-page{padding:12px}.offline-page header{align-items:flex-start;flex-direction:column}}



.poll-card{min-width:180px;display:flex;flex-direction:column;gap:8px}.poll-option{display:flex;align-items:center;gap:12px;border:1px solid var(--border,#bbb);border-radius:10px;padding:12px;margin:8px 0}.poll-option span{flex:1;overflow-wrap:anywhere}.poll-option input{width:20px;height:20px}.poll-option strong{font-variant-numeric:tabular-nums}



.group-policy-strip{border-bottom:1px solid var(--border,#ddd);padding:4px 16px;max-height:180px;overflow:auto}.group-policy-strip p{margin:4px 0;overflow-wrap:anywhere}


/* Group discussions share the existing conversation layout. */
.thread-nav{display:flex;flex-wrap:wrap;gap:12px;padding:8px 20px;border-bottom:1px solid var(--border)}
.topic-card{border-left:3px solid var(--green);padding-left:12px}.topic-card p{white-space:pre-wrap;margin:6px 0}
.thread-list{display:grid;gap:10px}.thread-list button{text-align:left;overflow-wrap:anywhere}.thread-list small{display:block;font-weight:400;opacity:.7;margin-top:4px}
.thread-root{padding:12px;border:1px solid var(--border);border-radius:12px;margin:12px 0;overflow-wrap:anywhere}
.thread-messages{display:grid;gap:12px;max-height:45vh;overflow:auto;overscroll-behavior:contain}
.thread-message{padding:12px;background:var(--surface);border:1px solid var(--border);border-radius:12px;overflow-wrap:anywhere}.thread-message small{opacity:.65}
.thread-notifications{margin:16px 0;padding:12px;border:1px solid var(--border);border-radius:12px}.thread-notifications button{margin:4px}
.member-filters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
@media(max-width:540px){.member-filters{grid-template-columns:1fr}.thread-nav{padding:8px 12px}.thread-messages{max-height:38vh}}

.bulk-chat-list{max-height:45vh;overflow:auto;overscroll-behavior:contain;margin:12px 0}.bulk-chat-list .password-session-choice{margin:8px 0}

.live-shell .filter-tabs{overflow-x:auto;scrollbar-width:thin}.live-shell .filter-tab{flex-shrink:0;max-width:160px;overflow:hidden;text-overflow:ellipsis}.folder-room-row{padding:10px;border-bottom:1px solid var(--border);overflow-wrap:anywhere}

.album-card{max-width:720px}.album-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:10px;margin:10px 0}.album-grid .attachment-card{min-width:0;overflow-wrap:anywhere}

.once-content{display:grid;place-items:center;max-height:65vh;overflow:auto}.once-content img,.once-content video{display:block;max-width:100%;max-height:60vh;object-fit:contain}.view-once-card{border-style:dashed}
.group-call-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:12px;max-height:58vh;overflow:auto}.group-call-grid video,#group-call-preview-video{display:block;width:100%;max-height:42vh;object-fit:contain;background:#151b20;border-radius:12px}.group-call-grid .device-card{min-width:0}.group-call-grid p{overflow-wrap:anywhere}
.channel-notice{padding:12px;border:2px solid var(--border);border-radius:12px;background:var(--surface);line-height:1.5}.channel-list,.channel-posts{display:grid;gap:16px;margin:16px 0}.channel-post{padding:16px;border:1px solid var(--border);border-radius:12px;overflow-wrap:anywhere}.channel-comment{padding:10px;margin-top:8px;border-inline-start:3px solid var(--border)}.channel-post .row-gap{flex-wrap:wrap}
.media-image-viewport{max-height:60vh;max-width:100%;overflow:auto;overscroll-behavior:contain;touch-action:pan-x pan-y pinch-zoom}.media-image-viewport .zoom-image{display:block;max-width:none;max-height:none;height:auto;object-fit:contain}.media-image-viewport .media-zoom-100{width:100%}.media-image-viewport .media-zoom-150{width:150%}.media-image-viewport .media-zoom-200{width:200%}.media-image-viewport .media-zoom-300{width:300%}.media-image-viewport .media-zoom-400{width:400%}
.composer-footer{flex-wrap:wrap;gap:6px}.composer-footer .composer-account{flex-basis:100%;font-weight:600;overflow-wrap:anywhere}.account-slot-list{display:grid;gap:12px}.account-slot-link{display:inline-flex;align-items:center;min-height:44px;text-decoration:none}

.transfer-qr{display:block;width:min(320px,100%);height:auto;background:white;margin:1rem auto}.transfer-comparison{overflow-wrap:anywhere;word-break:break-word}.transfer-room-list{max-height:40vh;overflow:auto;display:grid;gap:.6rem}.transfer-room-list label{display:flex;align-items:center;gap:.5rem}#transfer-camera{width:100%;max-height:40vh}#transfer-camera[hidden]{display:none}.transfer-saved{display:block;margin:.6rem 0;width:100%;text-align:left}

.contact-card{min-width:0;overflow-wrap:anywhere}.contact-card p{margin-block:.35rem}.contact-card small{display:block}.composer>textarea{min-width:6rem}.composer{flex-wrap:wrap}.composer>textarea{flex:1 1 12rem}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,[tabindex]:focus-visible,summary:focus-visible{outline:3px solid var(--accent,#196651);outline-offset:3px}.device-code{unicode-bidi:isolate;direction:ltr;text-align:start}.message-text{overflow-wrap:anywhere;unicode-bidi:plaintext}@media(forced-colors:active){button,a,input,textarea,select{border:1px solid ButtonText}.verified,.unverified,.notice{border:1px solid CanvasText}.privacy-curtain #app{visibility:hidden}}

#offline-media-view{margin-block:1rem;padding:1rem;border:1px solid var(--border);border-radius:12px}#offline-media-view:empty{display:none}#offline-media-files{display:grid;gap:.5rem;margin-block:.5rem}#offline-media-output img,#offline-media-output video{max-width:100%;max-height:50vh}#offline-media-output audio{width:100%}

.channel-file-preview{display:block;max-width:100%;max-height:55vh;margin-block:1rem}#channel-compose-assets{overflow-wrap:anywhere}

/* Readonly desktop column; sensitive confirmations remain real modal dialogs. */
.panel-members{padding-inline-start:1.25rem;overflow-wrap:anywhere}.panel-members li{margin-block:.75rem}.panel-actions{display:grid;gap:.5rem}.panel-actions button{min-height:44px;white-space:normal;overflow-wrap:anywhere}.privacy-curtain #modal-root,.privacy-curtain #toast{visibility:hidden}
.privacy-curtain #app{visibility:hidden}
@media(min-width:1180px){body.desktop-side-panel{--tiho-panel-width:clamp(320px,28vw,390px)}body.desktop-side-panel .live-shell{width:calc(100% - var(--tiho-panel-width));margin-inline-start:0;margin-inline-end:var(--tiho-panel-width)}.side-panel-root .modal-backdrop{position:fixed;inset-block:0;inset-inline-start:auto;inset-inline-end:0;width:var(--tiho-panel-width);padding:0;background:var(--surface);display:flex;align-items:stretch}.side-panel-root .modal{width:100%;max-width:none;min-width:0;height:100dvh;max-height:100dvh;border-radius:0;border-inline-start:1px solid var(--border);box-shadow:none;display:flex;flex-direction:column}.side-panel-root .modal-header{flex:none}.side-panel-root .modal-body{min-height:0;max-height:none;overflow-y:auto;flex:1;padding-inline:20px}.side-panel-root .modal-body h3,.side-panel-root .modal-body p{overflow-wrap:anywhere}.side-panel-root .history-search-filters{display:grid;grid-template-columns:1fr}}

html[data-motion="reduce"] *,html[data-motion="reduce"] *::before,html[data-motion="reduce"] *::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
body.dark .auth-page{background:#15251d}body.dark .auth-card{background:var(--surface);border-color:var(--border);color:var(--text)}body.dark .auth-intro h1{color:var(--text)}

/* Direction is an explicit display choice; account IDs, addresses and codes retain their exact order. */
.interface-settings{border:1px solid var(--border);border-radius:12px;padding:16px;margin-block:12px 20px;min-width:0}.interface-settings legend{padding-inline:6px}.preauth-language{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-block-end:16px}.preauth-language label{display:flex;align-items:center;gap:8px}.preauth-language select{max-width:170px;min-height:44px}.preauth-language small,.preauth-language [role="alert"]{flex-basis:100%}
.code-text,.device-code,.fingerprint,[autocomplete="username"],input[type="password"],input[type="email"],input[type="tel"],input[type="url"],input[name="secondFactor"],input[name="recoveryCode"],input[name="username"],input[name="phone"],input[name="email"]{direction:ltr;unicode-bidi:isolate;text-align:start}
.chat-name,.message-sender,.message-text,.draft-version,.thread-list strong,.panel-members li{unicode-bidi:plaintext}.recovery-login-note,.chat-settings-actions button,.attachment-selection,.message-quote,.history-search-hit,.search-return,.thread-list button,.transfer-saved{text-align:start}
.message-quote{border-left:0;border-inline-start:3px solid #218864}.topic-card{border-left:0;border-inline-start:3px solid var(--green);padding-left:0;padding-inline-start:12px}.search-coverage{padding-left:0;padding-inline-start:20px}
html[dir="rtl"] .rail{border-right:0;border-inline-end:1px solid var(--border)}html[dir="rtl"] .sidebar{border-right:0;border-inline-end:1px solid var(--border)}html[dir="rtl"] .live-shell .chat-item{padding-right:12px;padding-inline-end:52px;text-align:start}html[dir="rtl"] .chat-row-menu{right:auto;inset-inline-end:4px}html[dir="rtl"] .voice-draft-dot{right:auto;inset-inline-end:2px}html[dir="rtl"] .mobile-back{margin-left:0;margin-inline-start:-7px}html[dir="rtl"] .mobile-back svg{transform:scaleX(-1)}html[dir="rtl"] .right-panel{right:auto;inset-inline-end:0}html[dir="rtl"] .message-actions{right:auto;inset-inline-end:-27px}html[dir="rtl"] .outgoing .message-actions{left:auto;inset-inline-start:-27px;inset-inline-end:auto}html[dir="rtl"] .message-meta{margin-left:0;margin-inline-start:auto}html[dir="rtl"] .file-icon{margin-right:0;margin-inline-end:10px}
@media(max-width:600px){html[dir="rtl"] .rail{border-inline-end:0}html[dir="rtl"] .message-actions{inset-inline-end:-19px}html[dir="rtl"] .outgoing .message-actions{inset-inline-start:-19px}}

.organization-badge{display:flex;gap:12px;align-items:flex-start;border:2px solid var(--green);border-radius:12px;padding:12px;color:var(--text);background:var(--surface);margin-block:12px;overflow-wrap:anywhere}.organization-badge>svg{width:28px;height:28px;flex-shrink:0;color:var(--green)}.organization-badge p{margin-block:6px}.organization-badge bdi{unicode-bidi:isolate}

/* Shared readable palette. System forced colors keep their existing rules. */
@media (forced-colors: none) {
 :root {
  --sub:#526157;--muted:#526157;--orange:#78451e;--danger:#9e332f;
  --focus:#196651;--control-border:#718174;--button-bg:#196651;
  --button-hover:#105440;--on-green:#ffffff;--warning:#78451e;
  --warning-bg:#f6f2e9;--positive:#365d32;--positive-bg:#eef4e8;
  --negative-bg:#f9ece8;--bubble-in:#ffffff;--bubble-out:#e7f0df;
  --avatar-text:#354b3e;
 }
 .dark {
  --sub:#b3c0ac;--muted:#b3c0ac;--green:#b7d89f;--orange:#f0c794;
  --danger:#ffb4ac;--focus:#b9d9ff;--control-border:#8b9e85;
  --button-bg:#94b782;--button-hover:#b5d6a4;--on-green:#14291b;
  --warning:#f0c794;--warning-bg:#423b2e;--positive:#b6d7a4;
  --positive-bg:#2c402b;--negative-bg:#482b2c;
  --bubble-in:#27392d;--bubble-out:#344b30;
 }
 input::placeholder,textarea::placeholder{color:var(--sub);opacity:1}
 .rail-button,.search-box,.search-key,.list-label,.chat-time,.sidebar-footer,
 .day-marker,.welcome-note,.message-sender,.message-meta,.composer-footer,
 .detail-label,.detail-description,.member-role,.details-bottom,.eyebrow,
 .auth-intro p,.intro-note,.auth-footnote,.dark .day-marker,.dark .welcome-note {
  color:var(--sub);
 }
 .message-meta,.chat-time,.detail-label,.member-role,.composer-footer,.search-key,
 .auth-footnote,.intro-note{font-size:.75rem;line-height:1.5}
 .member-role{font-size:.75rem!important}
 .wordmark span,.chat-preview svg,.detail-row>svg,.security-grid svg,
 .settings-link .setting-icon{color:var(--green)}
 .bubble,.dark .bubble{background:var(--bubble-in)}
 .outgoing .bubble,.dark .outgoing .bubble{background:var(--bubble-out)}
 .primary,.send-button,.chat-badge,.dark .primary,.dark .send-button,.dark .chat-badge {
  background:var(--button-bg);color:var(--on-green);
 }
 .primary:hover,.send-button:hover,.dark .primary:hover,.dark .send-button:hover {
  background:var(--button-hover);color:var(--on-green);
 }
 .primary:disabled,.send-button:disabled,.dark .primary:disabled,.dark .send-button:disabled,
 .chat-badge.muted,.dark .chat-badge.muted{background:var(--soft);color:var(--sub)}
 .notice,.dark .notice,.connection-banner,.requests-link .count {
  color:var(--warning);background:var(--warning-bg);
 }
 .queue-error,.unverified,.chat-flags .chat-pending{color:var(--warning)}
 .notice.green,.dark .notice.green,.live-security-strip,.dark .live-security-strip,
 .profile-tag,.dark .profile-tag{color:var(--positive);background:var(--positive-bg)}
 .danger-button,.recording{color:var(--danger);background:var(--negative-bg)}
 .form-error,.voice-draft-dot{color:var(--danger)}
 .reply-quote{color:var(--sub)}
 :is(.avatar,.avatar.green,.avatar.peach,.avatar.blue,.avatar.lavender,
     .avatar.sand,.avatar.rose,.avatar.mint){color:var(--avatar-text)}
 input:not([type=checkbox]):not([type=radio]),textarea,select,.search-box,.composer {
  border-color:var(--control-border);
 }
 button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,
 select:focus-visible,[tabindex]:focus-visible,summary:focus-visible,
 .message-menu:focus-visible,.history-search-hit:focus-visible {
  outline:3px solid var(--focus);outline-offset:3px;
 }
 a[href],.message-link{text-decoration:underline;text-underline-offset:.15em}
}
[hidden]:not([hidden="until-found"]){display:none!important}
