.login-container{display:flex;flex-direction:column;align-items:center;justify-content:center;width:100vw;height:var(--app-height, 100dvh);overflow-y:auto;padding:calc(56px + var(--safe-area-top, env(safe-area-inset-top))) 0 16px;background:var(--bg-primary);font-family:var(--font-family)}.login-card{width:100%;max-width:420px;padding:48px;text-align:center;display:flex;flex-direction:column;gap:32px;background:var(--bg-primary);border-radius:16px;border:1px solid var(--border-color);box-shadow:0 12px 24px var(--message-shadow);animation:cardAppear .6s cubic-bezier(.16,1,.3,1);margin:auto;flex-shrink:0}@keyframes cardAppear{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.login-logo-container{display:flex;justify-content:center;align-items:center}.login-logo{width:80px;height:auto;margin-bottom:-16px}.login-title{font-family:var(--font-serif);font-size:32px;font-weight:500;color:var(--text-primary);letter-spacing:-.5px;margin:0}.login-subtitle{font-size:15px;color:var(--text-secondary);line-height:1.5;margin-top:-16px;font-weight:400}.login-form{display:flex;flex-direction:column;gap:20px}.login-input{width:100%;padding:14px 16px;font-size:15px;border:1px solid var(--border-color);border-radius:8px;background:var(--bg-secondary);color:var(--text-primary);transition:all .2s cubic-bezier(.4,0,.2,1);outline:none}.login-input::placeholder{color:var(--text-tertiary)}.login-input:focus{background:var(--bg-primary);border-color:var(--accent-color);box-shadow:0 0 0 2px #da775633}.login-button{width:100%;padding:14px;font-size:15px;font-weight:500;color:#fff;background-color:var(--accent-color);border-radius:8px;border:none;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1)}.login-button:hover{background-color:var(--accent-hover)}.login-button:active{transform:translateY(1px)}.login-button-secondary{width:100%;padding:14px;font-size:14px;font-weight:500;color:var(--text-secondary);background:transparent;border:1px solid var(--border-color);border-radius:8px;cursor:pointer;transition:all .2s}.login-button-secondary:hover{background:var(--bg-secondary);color:var(--text-primary)}.login-input:disabled{opacity:.6;cursor:not-allowed}.login-input-code{text-align:center;letter-spacing:8px;font-size:20px;font-weight:600;font-family:monospace}.login-button:disabled{opacity:.6;cursor:not-allowed}.login-button:disabled:hover{background-color:var(--accent-color)}.login-button-secondary:disabled{opacity:.6;cursor:not-allowed}.login-error{color:#d32f2f;font-size:14px;background:#ffebee;padding:12px;border-radius:8px;border:1px solid #FFCDD2}:root[data-theme=dark] .login-error{background:#d32f2f26;border:1px solid rgba(211,47,47,.3);color:#ff8a80}.login-lang-selector{position:fixed;top:calc(16px + var(--safe-area-top, env(safe-area-inset-top)));right:24px;z-index:10}.login-back-button{position:fixed;top:calc(12px + var(--safe-area-top, env(safe-area-inset-top)));left:16px;z-index:10;width:40px;height:40px;display:flex;align-items:center;justify-content:center;border:none;background:transparent;color:var(--text-primary);border-radius:50%;cursor:pointer;transition:background .2s}.login-back-button:hover{background:var(--sidebar-hover)}.login-lang-button{display:flex;align-items:center;gap:8px;padding:8px 12px;border:1px solid var(--border-color);border-radius:8px;background:var(--bg-primary);color:var(--text-secondary);font-size:13px;font-weight:500;cursor:pointer;transition:all .2s}.login-lang-button:hover{background:var(--bg-secondary);color:var(--text-primary)}.login-lang-menu{position:absolute;top:100%;right:0;margin-top:8px;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:8px;box-shadow:0 4px 12px var(--message-shadow);overflow:hidden;min-width:120px;animation:contextMenuIn .15s ease-out}.login-lang-menu-item{width:100%;padding:10px 16px;border:none;background:none;color:var(--text-primary);font-size:13px;font-weight:500;cursor:pointer;text-align:left;transition:background .1s}.login-lang-menu-item:hover{background:var(--bg-secondary)}.login-lang-menu-item.active{background:var(--bg-tertiary);font-weight:500}@keyframes contextMenuIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.profile-settings-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1001;animation:fadeIn .2s ease-out}.profile-settings{width:90%;max-width:600px;height:85vh;max-height:800px;background-color:var(--bg-primary);border-radius:12px;overflow:hidden;box-shadow:0 8px 32px #0000003d;animation:slideUp .3s ease-out;display:flex;flex-direction:column}.profile-settings-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--border-color);background-color:var(--bg-primary)}.profile-settings-header h2{margin:0;font-size:18px;font-weight:600;color:var(--text-primary)}.profile-back-button,.profile-save-button{padding:8px 16px;border:none;background:none;cursor:pointer;font-size:16px;color:var(--accent-color);font-weight:500;transition:opacity .15s}.profile-back-button{font-size:32px;padding:4px 8px}.profile-back-button:hover,.profile-save-button:hover{opacity:.7}.profile-settings-content{flex:1;overflow-y:auto;padding:24px 20px}.profile-avatar-section{display:flex;flex-direction:column;align-items:center;gap:16px;margin-bottom:32px}.profile-avatar-large{width:120px;height:120px;border-radius:50%;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;align-items:center;justify-content:center;color:#fff;font-size:40px;font-weight:600}.profile-avatar-upload{padding:10px 24px;border:none;background:var(--accent-color);color:#fff;border-radius:8px;cursor:pointer;font-size:14px;font-weight:500;transition:background-color .15s}.profile-avatar-upload:hover{background:var(--accent-hover)}.profile-form{margin-bottom:32px}.profile-form-group{margin-bottom:20px}.profile-form-group label{display:block;font-size:14px;font-weight:500;color:var(--text-secondary);margin-bottom:8px}.profile-form-group input,.profile-form-group textarea{width:100%;padding:12px 16px;background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;font-size:15px;color:var(--text-primary);transition:border-color .15s;font-family:inherit}.profile-form-group input:focus,.profile-form-group textarea:focus{outline:none;border-color:var(--accent-color)}.profile-form-group textarea{resize:vertical;min-height:100px}.profile-form-hint{display:block;margin-top:6px;font-size:13px;color:var(--text-tertiary)}.profile-info-section{margin-top:32px;padding-top:24px;border-top:1px solid var(--border-color)}.profile-info-section h3{font-size:14px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;margin:0 0 16px}.profile-info-item{display:flex;justify-content:space-between;align-items:center;padding:12px 0;border-bottom:1px solid var(--border-color)}.profile-info-item:last-child{border-bottom:none}.profile-info-label{font-size:15px;color:var(--text-secondary)}.profile-info-value{font-size:15px;color:var(--text-primary);font-weight:500}@media(max-width:768px){.profile-settings{width:100%;height:100vh;max-height:none;border-radius:0}.profile-settings-content{padding:20px 16px}}.account-settings-overlay{position:fixed;inset:0;background-color:#0000004d;display:flex;align-items:stretch;justify-content:flex-start;z-index:1000;animation:fadeIn .3s ease-out;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}@keyframes fadeIn{0%{opacity:0;-webkit-backdrop-filter:blur(0px);backdrop-filter:blur(0px)}to{opacity:1;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}}.account-settings{display:flex;width:100%;max-width:800px;height:100vh;background-color:var(--bg-primary);overflow:hidden;box-shadow:20px 0 60px #0006;animation:slideFromLeft .4s cubic-bezier(.1,.9,.2,1);position:relative;border-right:1px solid var(--border-color)}@keyframes slideFromLeft{0%{transform:translate(-100%)}to{transform:translate(0)}}.settings-sidebar{width:280px;background-color:var(--bg-primary);border-right:1px solid var(--border-color);display:flex;flex-direction:column}.settings-sidebar-header{display:flex;align-items:center;gap:16px;padding:max(12px,var(--safe-area-top, env(safe-area-inset-top))) 16px 12px 16px;border-bottom:1px solid var(--border-color)}.settings-sidebar-header h2{font-size:18px;font-weight:600;margin:0;color:var(--text-primary)}.settings-sidebar-header .icon-button{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--text-secondary);background:transparent;border:none;cursor:pointer;transition:all .2s}.settings-sidebar-header .icon-button:hover{background:var(--sidebar-hover);color:var(--accent-color)}.settings-profile{padding:32px 24px 16px;display:flex;flex-direction:column;align-items:center;gap:16px;text-align:center}.settings-profile-avatar{width:100px;height:100px;border-radius:50%;background:var(--accent-color);display:flex;align-items:center;justify-content:center;color:#fff;font-size:36px;font-weight:600;flex-shrink:0;box-shadow:0 4px 12px #0000001a}.settings-profile-info{width:100%}.settings-profile-name{font-size:20px;font-weight:600;color:var(--text-primary);margin-bottom:4px}.settings-profile-phone{font-size:14px;color:var(--text-secondary)}.settings-nav{flex:1;overflow-y:auto;padding:16px 8px}.settings-nav-item{width:100%;padding:10px 16px;border-radius:8px;cursor:pointer;display:flex;align-items:center;gap:16px;font-size:14px;font-weight:500;color:var(--text-secondary);transition:all .15s ease;background:transparent;border:none}.settings-nav-item:hover{background-color:var(--bg-secondary);color:var(--text-primary)}.settings-nav-item.active{background-color:var(--bg-tertiary);color:var(--text-primary);font-weight:600}.settings-nav-item.active .settings-nav-icon{color:var(--accent-color)}.settings-nav-icon{display:flex;align-items:center;justify-content:center;width:24px;color:var(--text-secondary)}.settings-main{flex:1;display:flex;flex-direction:column;background:var(--bg-primary);overflow:hidden}.settings-close{position:absolute;top:24px;right:24px;width:32px;height:32px;border-radius:50%;color:var(--text-secondary);display:flex;align-items:center;justify-content:center;font-size:24px;z-index:10;background:transparent;border:none;cursor:pointer;transition:all .2s}.settings-close:hover{background-color:var(--bg-secondary);color:var(--text-primary)}.settings-content{flex:1;overflow-y:auto;padding:48px;max-width:600px;margin:0 auto;width:100%}.settings-content h2{font-family:var(--font-serif);font-size:28px;font-weight:500;color:var(--text-primary);margin:0 0 40px;letter-spacing:-.5px}.settings-group{margin-bottom:40px}.settings-group h3{font-size:13px;font-weight:600;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.5px;padding:0 0 12px;margin:0}.settings-item{display:flex;align-items:center;justify-content:space-between;padding:16px 0;transition:background-color .1s}.settings-item+.settings-item{border-top:1px solid var(--border-color)}.settings-item.clickable{cursor:pointer}.settings-item.clickable:hover .settings-item-title{color:var(--accent-color)}.settings-item-title{font-size:15px;font-weight:500;color:var(--text-primary);transition:color .1s}.settings-item-description{font-size:14px;color:var(--text-secondary);margin-top:4px}.toggle-switch{position:relative;display:inline-block;width:40px;height:22px}.toggle-switch input{opacity:0;width:0;height:0}.toggle-slider{position:absolute;cursor:pointer;inset:0;background-color:var(--border-color);transition:.2s;border-radius:24px}.toggle-slider:before{position:absolute;content:"";height:16px;width:16px;left:3px;bottom:3px;background-color:#fff;transition:.2s;border-radius:50%;box-shadow:0 1px 2px #0000001a}input:checked+.toggle-slider{background-color:var(--accent-color)}input:checked+.toggle-slider:before{transform:translate(18px)}.theme-options{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;padding:16px 0}.theme-option{display:flex;flex-direction:column;align-items:center;gap:12px;padding:16px;border:1px solid var(--border-color);border-radius:12px;background:var(--bg-primary);cursor:pointer;transition:all .2s ease}.theme-option:hover{background:var(--bg-secondary)}.theme-option.active{border-color:var(--accent-color);background:color-mix(in srgb,var(--accent-color) 2%,var(--bg-primary))}.theme-option input{display:none}.theme-preview{width:100%;aspect-ratio:16/10;border-radius:8px;border:1px solid var(--border-color);overflow:hidden;display:flex}.theme-preview-half{flex:1;height:100%}.theme-preview.light,.theme-preview-half.light{background:#fdfbfa}.theme-preview.dark,.theme-preview-half.dark{background:#1a1817}.theme-preview.blue{background:#0f171e}.theme-option span{font-size:14px;font-weight:500;color:var(--text-primary)}.downloads-stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(80px,1fr));gap:12px;padding:16px}.downloads-stat-card{display:flex;flex-direction:column;align-items:center;gap:4px;padding:12px 8px;background:var(--bg-secondary);border-radius:8px}.downloads-stat-value{font-size:24px;font-weight:700}.downloads-stat-label{font-size:11px;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.5px}.downloads-item-active,.downloads-item-queued{display:flex;align-items:center;gap:8px}.settings-nav-badge{margin-left:auto;min-width:20px;height:20px;border-radius:10px;background:var(--accent-color);color:#fff;font-size:11px;font-weight:600;display:flex;align-items:center;justify-content:center;padding:0 6px}.settings-nav-item.active .settings-nav-badge{background:#ffffff4d}.settings-nav-icon svg{display:block}.stt-provider-options{display:flex;flex-direction:column;gap:8px;padding:12px 16px}.stt-provider-option{display:flex;align-items:flex-start;gap:12px;padding:12px;border:2px solid var(--border-color);border-radius:10px;cursor:pointer;transition:all .15s;background:var(--bg-secondary)}.stt-provider-option:hover{border-color:var(--text-secondary)}.stt-provider-option.active{border-color:var(--accent-color);background:var(--active-bg, rgba(0, 136, 255, .06))}.stt-provider-option input[type=radio]{margin-top:3px;accent-color:var(--accent-color)}.stt-provider-info{flex:1}.stt-provider-name{font-size:15px;font-weight:600;color:var(--text-primary);margin-bottom:4px}.stt-provider-desc{font-size:13px;color:var(--text-secondary);line-height:1.4}.stt-provider-warning{font-size:12px;color:#e67e22;margin-top:6px;padding:4px 8px;background:#e67e2214;border-radius:6px}.stt-language-select{width:100%;padding:14px 16px;margin-top:12px;border:1px solid var(--border-color);border-radius:8px;background-color:var(--bg-secondary);color:var(--text-primary);font-size:15px;font-family:inherit;cursor:pointer;outline:none;appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23A69C94' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m7 15 5 5 5-5'/%3E%3Cpath d='m7 9 5-5 5 5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center;transition:all .2s cubic-bezier(.4,0,.2,1)}:root[data-theme=dark] .stt-language-select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%236E6966' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m7 15 5 5 5-5'/%3E%3Cpath d='m7 9 5-5 5 5'/%3E%3C/svg%3E")}.stt-language-select:focus{background-color:var(--bg-primary);border-color:var(--accent-color);box-shadow:0 0 0 2px #da775633}.stt-models-list{padding:4px 16px 12px}.stt-model-item{display:flex;align-items:center;justify-content:space-between;padding:10px 0}.stt-model-item+.stt-model-item{border-top:1px solid var(--border-color)}.stt-model-name{font-size:14px;font-weight:500;color:var(--text-primary)}.stt-model-active{color:var(--accent-color);font-weight:600;font-size:12px}.stt-model-size{font-size:12px;color:var(--text-secondary);margin-top:2px}.stt-model-actions{display:flex;align-items:center;gap:8px}.stt-model-downloaded{font-size:12px;color:#27ae60;font-weight:500}.stt-model-select-btn,.stt-model-download-btn{padding:5px 12px;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:all .15s;border:none}.stt-model-select-btn{background:var(--bg-secondary);color:var(--accent-color)}.stt-model-select-btn:hover,.stt-model-download-btn{background:var(--accent-color);color:#fff}.stt-model-download-btn:hover{opacity:.85}.stt-model-download-btn:disabled{opacity:.5;cursor:not-allowed}.settings-sidebar-footer{padding:8px;border-top:1px solid var(--border-color);flex-shrink:0}.settings-nav-item.logout-button,.settings-nav-item.logout-button .settings-nav-icon{color:#e74c3c}.settings-nav-item.logout-button:hover{background-color:#e74c3c1a}.settings-nav-item.logout-button:disabled{opacity:.5;cursor:not-allowed}.folder-edit-box{background:var(--bg-secondary);padding:24px;border-radius:12px;margin-bottom:24px;border:1px solid var(--border-color)}.input-group{margin-bottom:20px}.input-group label{display:block;margin-bottom:8px;font-size:13px;font-weight:600;color:var(--text-tertiary);text-transform:uppercase}.chat-type-chips{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px}.type-chip{padding:8px 16px;border-radius:20px;border:1px solid var(--border-color);background:transparent;color:var(--text-primary);font-size:14px;cursor:pointer;transition:all .2s ease}.type-chip:hover{background:var(--bg-tertiary)}.type-chip.active{background:var(--accent-color);color:#fff;border-color:var(--accent-color)}.icon-chip{width:44px;height:44px;display:flex!important;align-items:center;justify-content:center;padding:0!important;border-radius:12px!important}.icon-chip.active{background:var(--accent-color)!important;box-shadow:0 4px 12px #da77564d}.folder-actions{display:flex;gap:12px;margin-top:24px}.text-button{background:transparent;border:none;color:var(--accent-color);font-size:14px;font-weight:600;cursor:pointer;padding:4px 8px;border-radius:4px}.text-button:hover{background:color-mix(in srgb,var(--accent-color) 10%,transparent)}.delete-folder:hover{background-color:#e74c3c1a!important}.sortable-tab-item{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:8px;background:var(--bg-secondary, #1e1e1e);margin-bottom:4px;-webkit-user-select:none;user-select:none}.sortable-tab-item:hover{background:var(--bg-hover, #2a2a2a)}.drag-handle{cursor:grab;display:flex;align-items:center;color:var(--text-secondary, #888);flex-shrink:0;padding:4px;border-radius:4px}.drag-handle:hover{color:var(--text-primary, #fff);background:#ffffff0d}.drag-handle:active{cursor:grabbing}.tab-toggle-label{display:flex;align-items:center;gap:10px;flex:1;cursor:pointer}.tab-toggle-label input[type=checkbox]{width:18px;height:18px;accent-color:var(--accent-color, #7c5cfc);cursor:pointer;flex-shrink:0}.tab-badge{font-size:10px;padding:2px 6px;border-radius:4px;text-transform:uppercase;letter-spacing:.5px}.tab-badge.builtin{background:#7c5cfc26;color:var(--accent-color, #7c5cfc)}.settings-back-mobile{display:none}@media(max-width:768px){.account-settings{max-width:100%;width:100%}.settings-sidebar{width:100%;min-width:100%}.settings-main{display:none;position:absolute;inset:0;background:var(--bg-primary);z-index:20}.account-settings.mobile-content-open .settings-sidebar{display:none}.account-settings.mobile-content-open .settings-main{display:flex}.settings-back-mobile{display:flex;position:absolute;top:calc(12px + var(--safe-area-top, env(safe-area-inset-top)));left:12px;width:40px;height:40px;align-items:center;justify-content:center;background:transparent;border:none;color:var(--text-primary);border-radius:50%;cursor:pointer;z-index:5}.settings-back-mobile:hover{background:var(--sidebar-hover)}.account-settings.mobile-content-open .settings-close{display:none}.settings-content{padding:calc(48px + var(--safe-area-top, env(safe-area-inset-top))) 16px 24px 16px;max-width:100%}.settings-section-title{font-size:13px}}.qr-overlay{position:fixed;inset:0;background:#0000008c;display:flex;align-items:center;justify-content:center;z-index:1000}.qr-card{position:relative;background:var(--bg-primary);color:var(--text-primary);border-radius:16px;padding:28px 32px 24px;max-width:320px;width:calc(100% - 48px);text-align:center;box-shadow:0 12px 40px #00000059}.qr-close{position:absolute;top:10px;right:10px;color:var(--text-secondary);padding:6px;border-radius:50%}.qr-close:hover{background:var(--bg-secondary)}.qr-title{margin:0 0 16px;font-size:17px;font-weight:600}.qr-code-box{display:inline-flex;padding:12px;background:#fff;border-radius:12px}.qr-name{margin-top:14px;font-size:16px;font-weight:600}.qr-handle{margin-top:2px;font-size:14px;color:var(--accent-color)}.qr-hint{margin-top:10px;font-size:13px;color:var(--text-secondary);line-height:1.4}.qr-hint-warn{color:#e8a838}.qr-copy-btn{margin-top:14px;padding:8px 18px;border-radius:8px;background:var(--accent-color);color:#fff;font-size:14px}.qr-copy-btn:hover{background:var(--accent-hover)}.account-circles{display:flex;align-items:center}.circles-group{display:flex;position:relative;height:48px;align-items:center}.account-circle{width:48px;height:48px;border-radius:50%;border:3px solid var(--sidebar-bg);background:var(--bg-secondary);cursor:pointer;padding:0;display:flex;align-items:center;justify-content:center;overflow:hidden;transition:all .4s cubic-bezier(.175,.885,.32,1.275);position:relative;z-index:calc(10 - var(--index));margin-left:-20px;box-shadow:0 4px 12px #0003}.account-circle:first-child{margin-left:0}.account-circle.active{border-color:var(--accent-color);z-index:11;box-shadow:0 0 15px #3390ec4d}.circles-group:hover .account-circle{margin-left:8px;box-shadow:0 8px 20px #0000004d}.circles-group:hover .account-circle:first-child{margin-left:0}.avatar-placeholder{font-size:18px;font-weight:700;color:#fff;background:var(--accent-color);width:100%;height:100%;display:flex;align-items:center;justify-content:center}.add-account{background:#ffffff0d;border:2px dashed var(--border-color);color:var(--text-secondary);z-index:1}.circles-group:hover .add-account{opacity:1;transform:scale(1)}.account-circle:hover{transform:scale(1.15) translateY(-4px)!important;z-index:20!important;border-color:#fff}.account-circle.logging-out{opacity:.4;pointer-events:none}.account-context-menu{position:fixed;z-index:1000;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:8px;box-shadow:0 8px 24px #00000040;padding:4px;min-width:160px;animation:contextMenuIn .15s ease-out}@keyframes contextMenuIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.account-context-menu-item{width:100%;display:flex;align-items:center;gap:10px;padding:8px 12px;border:none;background:none;border-radius:6px;font-size:14px;font-weight:500;color:var(--text-primary);cursor:pointer;transition:background .1s}.account-context-menu-item:hover{background:var(--hover-bg, rgba(0, 0, 0, .05))}.account-context-menu-item.logout{color:#e74c3c}.account-context-menu-item.logout:hover{background:#e74c3c1a}.voice-message{display:flex;flex-direction:column;gap:8px;min-width:240px;max-width:320px;padding:8px 12px;background:var(--bg-secondary);border-radius:12px;-webkit-user-select:none;user-select:none}.voice-player{display:flex;align-items:center;gap:12px}.voice-play-button{width:44px;height:44px;border-radius:50%;background-color:var(--accent-color);display:flex;align-items:center;justify-content:center;border:none;cursor:pointer;flex-shrink:0;color:#fff;transition:transform .1s ease,background-color .2s}.voice-play-button:hover{transform:scale(1.05);background-color:var(--accent-hover)}.voice-play-button:active{transform:scale(.95)}.voice-waveform-container{flex:1;display:flex;flex-direction:column;justify-content:center;gap:4px;height:44px;position:relative}.voice-waveform{display:flex;align-items:center;gap:2px;height:24px;width:100%;cursor:pointer}.waveform-bar{flex:1;background-color:var(--text-tertiary);border-radius:2px;transition:background-color .1s;min-width:2px}.waveform-bar.active{background-color:var(--accent-color)}.voice-meta{display:flex;justify-content:space-between;font-size:12px;color:var(--text-secondary);margin-top:-2px}.voice-stt-button{width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:6px;border:1px solid var(--border-color);background:transparent;color:var(--text-primary);cursor:pointer;font-size:12px;font-weight:600;transition:all .2s;margin-left:4px}.voice-stt-button:hover{background:var(--sidebar-hover);border-color:var(--accent-color);color:var(--accent-color)}.voice-stt-button.active{background:var(--accent-color);color:#fff;border-color:var(--accent-color)}.voice-stt-button.error{border-color:#e74c3c;color:#e74c3c}.voice-transcription-error{font-size:12px;color:#e74c3c;padding:4px 0;border-top:1px solid var(--border-color)}.voice-transcription-container{margin-top:4px;animation:fadeIn .3s ease}.voice-transcription{font-size:14px;line-height:1.5;color:var(--text-primary);padding:8px 0;border-top:1px solid var(--border-color)}.voice-transcription-loading{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--text-secondary);padding:8px 0;border-top:1px solid var(--border-color)}.loading-dots{display:flex;gap:3px}.loading-dot{width:4px;height:4px;border-radius:50%;background-color:var(--text-secondary);animation:bounce 1.4s infinite ease-in-out both}.loading-dot:nth-child(1){animation-delay:-.32s}.loading-dot:nth-child(2){animation-delay:-.16s}@keyframes bounce{0%,80%,to{transform:scale(0)}40%{transform:scale(1)}}@keyframes fadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.image-viewer-overlay{position:fixed;inset:0;z-index:9999;background:#000000f2;display:flex;flex-direction:column;align-items:center;justify-content:center;animation:imageViewerFadeIn .2s ease}.image-viewer-overlay.image-viewer-closing{animation:imageViewerFadeOut .2s ease forwards}.image-viewer-topbar{position:absolute;top:0;left:0;right:0;z-index:10001;display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:linear-gradient(to bottom,rgba(0,0,0,.6),transparent)}.image-viewer-sender{display:flex;align-items:center;gap:12px;color:#fff}.image-viewer-sender-avatar{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:16px;font-weight:600;color:#fff;flex-shrink:0}.image-viewer-sender-info{display:flex;flex-direction:column;gap:2px}.image-viewer-sender-name{font-size:15px;font-weight:600;color:#fff}.image-viewer-sender-date{font-size:13px;color:#fff9}.image-viewer-close{background:none;border:none;border-radius:50%;width:40px;height:40px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#fff;transition:background .15s;flex-shrink:0}.image-viewer-close:hover{background:#ffffff26}.image-viewer-content{flex:1;display:flex;align-items:center;justify-content:center;width:100%;padding:60px 0;overflow:hidden}.image-viewer-img{max-width:92vw;max-height:calc(100vh - 140px);object-fit:contain;-webkit-user-select:none;user-select:none;transition:transform .15s ease;border-radius:2px}.image-viewer-bottombar{position:absolute;bottom:0;left:0;right:0;z-index:10001;display:flex;align-items:center;justify-content:center;gap:8px;padding:12px 16px;background:linear-gradient(to top,rgba(0,0,0,.6),transparent)}.image-viewer-action{background:none;border:none;border-radius:50%;width:44px;height:44px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#fffc;transition:background .15s,color .15s}.image-viewer-action:hover{background:#ffffff1f;color:#fff}.image-viewer-caption{position:absolute;bottom:68px;left:50%;transform:translate(-50%);max-width:600px;text-align:center;color:#fff;font-size:14px;line-height:1.5;padding:8px 16px;background:#00000080;border-radius:8px;z-index:10001}.image-viewer-counter{position:absolute;top:18px;left:50%;transform:translate(-50%);font-size:14px;color:#fff9;z-index:10001}@keyframes imageViewerFadeIn{0%{opacity:0}to{opacity:1}}@keyframes imageViewerFadeOut{0%{opacity:1}to{opacity:0}}.voice-transcription{margin-top:6px;padding:6px 10px;font-size:13px;line-height:1.4;color:var(--text-primary);background:var(--bg-secondary);border-radius:8px;border-left:3px solid var(--accent-color)}.voice-transcription-loading{margin-top:6px;font-size:12px;color:var(--text-secondary);font-style:italic}.media-audio{display:flex;flex-direction:column;gap:4px}.file-name{font-size:12px;color:var(--text-secondary);margin-top:4px}.media-webpage.rich{display:block;max-width:420px;margin-top:4px;padding:6px 10px;border-left:3px solid var(--accent-color);border-radius:8px;background:var(--bg-secondary);text-decoration:none;color:var(--text-primary)}.media-webpage.rich:hover{filter:brightness(1.05)}.media-webpage.rich .webpage-site{color:var(--accent-color);font-weight:600;font-size:13px}.media-webpage.rich .webpage-title{font-weight:600;font-size:14px;margin-top:1px;word-break:break-word}.media-webpage.rich .webpage-desc{font-size:13px;color:var(--text-secondary);margin-top:2px;white-space:pre-wrap;word-break:break-word;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}.voice-record-btn{min-width:40px;height:40px;padding:0;border:none;border-radius:50%;background:transparent;color:var(--text-secondary);cursor:pointer;transition:background-color .2s ease,color .2s ease;display:flex;align-items:center;justify-content:center}.voice-record-btn:hover{background:var(--sidebar-hover);color:var(--accent-color)}.voice-record-btn:active{transform:scale(.95)}.voice-recorder-active{display:flex;align-items:center;gap:10px;width:100%;padding:6px 0}.voice-cancel-btn{min-width:36px;height:36px;padding:0;border:none;border-radius:50%;background:transparent;color:var(--text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background-color .2s,color .2s}.voice-cancel-btn:hover{background:#e539351a;color:#e53935}.voice-recording-indicator{display:flex;align-items:center;gap:6px;flex-shrink:0}.recording-dot{width:8px;height:8px;border-radius:50%;background:#e53935;animation:recording-pulse 1s ease-in-out infinite}@keyframes recording-pulse{0%,to{opacity:1}50%{opacity:.3}}.recording-time{font-size:14px;font-weight:500;color:var(--text-primary);font-variant-numeric:tabular-nums;min-width:36px}.voice-waveform{flex:1;display:flex;align-items:center;gap:2px;height:28px;overflow:hidden}.waveform-bar{width:3px;min-height:3px;border-radius:2px;background:var(--accent-color);transition:height .1s ease;opacity:.7}.voice-send-btn{min-width:40px;height:40px;padding:0;border:none;border-radius:50%;background:var(--accent-color);color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:transform .15s,opacity .2s;flex-shrink:0}.voice-send-btn:hover{opacity:.9}.voice-send-btn:active{transform:scale(.95)}.attachment-menu{position:absolute;bottom:calc(100% + 8px);left:14px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;box-shadow:0 4px 24px #0000001f;padding:6px;z-index:20;min-width:200px;animation:attachment-menu-in .15s ease-out}@keyframes attachment-menu-in{0%{opacity:0;transform:translateY(8px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.attachment-menu-item{display:flex;align-items:center;gap:12px;width:100%;padding:10px 12px;border:none;border-radius:8px;background:transparent;color:var(--text-primary);font-size:14px;cursor:pointer;transition:background-color .15s;text-align:left}.attachment-menu-item:hover{background:var(--sidebar-hover)}.attachment-menu-item:active{background:color-mix(in srgb,var(--sidebar-hover) 80%,var(--accent-color) 20%)}.attachment-menu-icon{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0}.attachment-icon-photo{background:#4fc3f7;color:#fff}.attachment-icon-document{background:#7c4dff;color:#fff}.attachment-icon-camera{background:#e53935;color:#fff}.attachment-menu-label{font-weight:500}.attach-btn{min-width:40px;height:40px;padding:0;border:none;border-radius:50%;background:transparent;color:var(--text-secondary);cursor:pointer;transition:background-color .2s ease,color .2s ease,transform .2s ease;display:flex;align-items:center;justify-content:center}.attach-btn:hover{background:var(--sidebar-hover);color:var(--accent-color)}.attach-btn:active{transform:scale(.95)}.attach-btn.active{color:var(--accent-color);transform:rotate(45deg)}.camera-overlay{position:fixed;inset:0;z-index:100;background:#000000d9;display:flex;align-items:center;justify-content:center;animation:camera-fade-in .2s ease}@keyframes camera-fade-in{0%{opacity:0}to{opacity:1}}.camera-container{display:flex;flex-direction:column;width:100%;max-width:640px;max-height:90vh;background:var(--bg-primary);border-radius:16px;overflow:hidden}.camera-header{display:flex;justify-content:flex-end;padding:12px 16px;background:var(--bg-secondary)}.camera-close-btn{width:36px;height:36px;border:none;border-radius:50%;background:transparent;color:var(--text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background-color .2s,color .2s}.camera-close-btn:hover{background:var(--sidebar-hover);color:var(--text-primary)}.camera-viewport{position:relative;width:100%;aspect-ratio:16 / 9;background:#000;display:flex;align-items:center;justify-content:center;overflow:hidden}.camera-video{width:100%;height:100%;object-fit:cover;transform:scaleX(-1)}.camera-preview-img{width:100%;height:100%;object-fit:cover}.camera-error{color:var(--text-secondary);font-size:14px;text-align:center;padding:32px}.camera-controls{display:flex;align-items:center;justify-content:center;gap:16px;padding:20px;background:var(--bg-secondary)}.camera-shutter-btn{width:64px;height:64px;border-radius:50%;border:3px solid var(--text-primary);background:transparent;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:4px;transition:transform .15s}.camera-shutter-btn:hover{transform:scale(1.05)}.camera-shutter-btn:active{transform:scale(.95)}.shutter-inner{width:100%;height:100%;border-radius:50%;background:var(--text-primary);transition:background .15s}.camera-btn{padding:10px 24px;border:none;border-radius:10px;font-size:14px;font-weight:500;cursor:pointer;transition:background-color .2s,transform .15s}.camera-btn:active{transform:scale(.97)}.camera-btn-primary{background:var(--accent-color);color:#fff}.camera-btn-primary:hover{opacity:.9}.camera-btn-secondary{background:var(--sidebar-hover);color:var(--text-primary)}.camera-btn-secondary:hover{background:var(--border-color)}.message-input-wrapper{background-color:transparent;display:flex;flex-direction:column;position:relative;padding:0 16px;padding-bottom:max(8px,calc(var(--safe-area-bottom, env(safe-area-inset-bottom)) - var(--keyboard-height, 0px)));transition:padding-bottom .15s ease-out;max-width:800px;width:100%;margin:0 auto}.message-input-wrapper.drag-over{border-color:var(--accent-color);background-color:color-mix(in srgb,var(--accent-color) 2%,transparent)}.drop-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:color-mix(in srgb,var(--accent-color) 5%,transparent);border:2px dashed var(--accent-color);border-radius:16px;color:var(--accent-color);font-size:14px;font-weight:500;z-index:10;pointer-events:none}.message-input-container{display:flex;gap:8px;padding:5px 12px;align-items:center;background-color:var(--bg-secondary);border-radius:12px;border:1px solid var(--border-color);box-shadow:0 4px 16px #00000005;position:relative}.attach-btn-wrapper{position:relative}.message-input{flex:1;min-height:20px;max-height:200px;padding:3px 0;border:none;border-radius:0;background-color:transparent;color:var(--text-primary);font-size:15px;line-height:1.5;font-family:inherit;resize:none;overflow-y:auto}.message-input:focus{outline:none;border-color:transparent}.message-input:disabled{opacity:.6;cursor:not-allowed}.message-input::placeholder{color:var(--text-tertiary)}.send-button{min-width:40px;height:40px;padding:0;border:none;border-radius:50%;background:transparent;color:var(--text-secondary);cursor:pointer;transition:background-color .2s ease,color .2s ease;display:flex;align-items:center;justify-content:center}.send-button:hover:not(:disabled){background:var(--sidebar-hover);color:var(--accent-color)}.send-button:active:not(:disabled){transform:scale(.95)}.send-button:disabled{opacity:.3;cursor:not-allowed}.media-preview-container{padding:12px 16px 0;display:flex;gap:12px;overflow-x:auto}.media-preview-item{position:relative;width:120px;height:120px;border-radius:12px;overflow:hidden;border:1px solid var(--border-color);background:var(--bg-primary);flex-shrink:0;box-shadow:0 4px 12px #0000001a}.media-preview-item img{width:100%;height:100%;object-fit:cover}.file-preview{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;padding:8px;gap:4px}.file-icon{font-size:32px;color:var(--text-secondary);display:flex;align-items:center;justify-content:center}.file-name{font-size:11px;color:var(--text-secondary);text-align:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.file-size{font-size:10px;color:var(--text-tertiary)}.media-preview-video{width:100%;height:100%;object-fit:cover}.remove-media{position:absolute;top:4px;right:4px;width:24px;height:24px;border-radius:50%;background:#0009;color:#fff;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:18px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);transition:background .2s}.remove-media:hover{background:#e53935cc}.spin{animation:spin 1.5s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.message-context-menu-overlay{position:fixed;top:0;left:0;width:100%;height:100%;z-index:1000}.message-context-menu{position:fixed;z-index:1001;background:var(--bg-secondary, rgba(30, 30, 30, .98));border:1px solid var(--border-color, rgba(255, 255, 255, .08));border-radius:10px;box-shadow:0 4px 24px #00000059,0 0 0 1px #ffffff0a;padding:0;min-width:200px;animation:context-menu-in .15s ease-out;overflow:hidden}@keyframes context-menu-in{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.context-menu-emoji-bar{display:flex;align-items:center;justify-content:center;gap:2px;padding:8px 8px 4px}.context-menu-emoji-btn{width:38px;height:38px;display:flex;align-items:center;justify-content:center;border:none;border-radius:50%;background:transparent;font-size:22px;cursor:pointer;transition:background-color .15s,transform .15s;line-height:1;padding:0}.context-menu-emoji-btn:hover{background:var(--sidebar-hover, rgba(255, 255, 255, .08));transform:scale(1.15)}.context-menu-emoji-btn:active{transform:scale(.95)}.context-menu-divider{height:1px;background:var(--border-color, rgba(255, 255, 255, .08));margin:4px 0}.context-menu-items{padding:4px 0}.context-menu-item{display:flex;align-items:center;gap:12px;width:100%;padding:9px 16px;border:none;background:transparent;color:var(--text-primary, #fff);font-size:14px;font-weight:400;cursor:pointer;transition:background-color .15s;text-align:left;white-space:nowrap}.context-menu-item:hover{background:var(--sidebar-hover, rgba(255, 255, 255, .08))}.context-menu-item:active{background:color-mix(in srgb,var(--sidebar-hover, rgba(255, 255, 255, .08)) 80%,var(--accent-color, #7c4dff) 20%)}.context-menu-item-icon{width:20px;height:20px;display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--text-secondary, rgba(255, 255, 255, .5))}.context-menu-item-label{flex:1}.context-menu-item--danger,.context-menu-item--danger .context-menu-item-icon{color:#e53935}.selection-bar{display:flex;align-items:center;gap:12px;padding:8px 16px;background:var(--surface-bg, rgba(30, 30, 30, .95));border-top:1px solid var(--border-color, rgba(255, 255, 255, .08));animation:slide-up .2s ease-out}@keyframes slide-up{0%{transform:translateY(100%);opacity:0}to{transform:translateY(0);opacity:1}}.selection-bar-close{background:none;border:none;color:var(--text-secondary);cursor:pointer;padding:4px;border-radius:50%;display:flex;align-items:center;justify-content:center}.selection-bar-close:hover{background:var(--hover-bg, rgba(255, 255, 255, .08));color:var(--text-primary)}.selection-bar-count{font-size:14px;font-weight:500;color:var(--text-primary);flex:1}.selection-bar-actions{display:flex;gap:4px}.selection-bar-btn{background:none;border:none;color:var(--accent-color, #3390ec);cursor:pointer;padding:8px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:background .15s}.selection-bar-btn:hover{background:var(--hover-bg, rgba(255, 255, 255, .08))}.selection-bar-btn-delete{color:#e53935}.selection-bar-btn-delete:hover{background:#e539351a}.md-rendered{white-space:normal;line-height:1.5}.md-rendered .md-paragraph{margin:0;padding:0}.md-rendered .md-paragraph+.md-paragraph{margin-top:6px}.md-rendered .md-bold{font-weight:600}.md-rendered .md-italic{font-style:italic}.md-rendered .md-inline-code{font-family:SF Mono,Fira Code,Cascadia Code,Menlo,Monaco,Courier New,monospace;font-size:.9em;padding:1px 5px;border-radius:4px;background:var(--md-code-bg, rgba(0, 0, 0, .08));color:var(--md-code-color, var(--text-primary));word-break:break-all}.md-rendered .md-code-block-wrapper{margin:6px 0;border-radius:8px;overflow:hidden;background:var(--md-code-block-bg, rgba(0, 0, 0, .06))}.md-rendered .md-code-lang{font-size:11px;padding:4px 12px;color:var(--text-tertiary);background:var(--md-code-lang-bg, rgba(0, 0, 0, .04));font-family:SF Mono,Fira Code,Menlo,Monaco,monospace;-webkit-user-select:none;user-select:none}.md-rendered .md-code-block{margin:0;padding:8px 12px;overflow-x:auto;font-family:SF Mono,Fira Code,Cascadia Code,Menlo,Monaco,Courier New,monospace;font-size:13px;line-height:1.45;white-space:pre;color:var(--md-code-color, var(--text-primary))}.md-rendered .md-heading{margin:8px 0 4px;line-height:1.3;font-weight:600}.md-rendered .md-heading:first-child{margin-top:0}.md-rendered .md-h1{font-size:1.4em}.md-rendered .md-h2{font-size:1.25em}.md-rendered .md-h3{font-size:1.15em}.md-rendered .md-h4{font-size:1.05em}.md-rendered .md-h5{font-size:1em}.md-rendered .md-h6{font-size:.95em;color:var(--text-secondary)}.md-rendered .md-blockquote{margin:6px 0;padding:4px 12px;border-left:3px solid var(--accent-color, #3390ec);background:var(--md-blockquote-bg, rgba(0, 0, 0, .04));border-radius:0 6px 6px 0;color:var(--text-secondary)}.md-rendered .md-blockquote .md-paragraph{margin:0}.md-rendered .md-list{margin:4px 0;padding-left:20px}.md-rendered .md-ul{list-style-type:disc}.md-rendered .md-ol{list-style-type:decimal}.md-rendered .md-list-item{margin:2px 0;padding-left:2px}.md-rendered .md-link{color:var(--accent-color, #3390ec);text-decoration:none;cursor:pointer}.md-rendered .md-link:hover{text-decoration:underline}.md-rendered .md-image{max-width:100%;border-radius:6px;margin:4px 0}:root[data-theme=dark] .md-rendered .md-inline-code,:root[data-theme=blue] .md-rendered .md-inline-code{background:#ffffff1a}:root[data-theme=dark] .md-rendered .md-code-block-wrapper,:root[data-theme=blue] .md-rendered .md-code-block-wrapper{background:#00000040}:root[data-theme=dark] .md-rendered .md-code-lang,:root[data-theme=blue] .md-rendered .md-code-lang{background:#ffffff0d}:root[data-theme=dark] .md-rendered .md-blockquote,:root[data-theme=blue] .md-rendered .md-blockquote{background:#ffffff0d}:root[data-theme=blue] .message.outgoing .md-rendered .md-inline-code{background:#ffffff26}:root[data-theme=blue] .message.outgoing .md-rendered .md-code-block-wrapper{background:#00000026}:root[data-theme=blue] .message.outgoing .md-rendered .md-blockquote{background:#ffffff1a;border-left-color:#ffffff80;color:#fffc}:root[data-theme=blue] .message.outgoing .md-rendered .md-link{color:#ffffffe6;text-decoration:underline}.forward-dialog-overlay{position:fixed;inset:0;z-index:9998;background:#0000008c;display:flex;align-items:center;justify-content:center;animation:forward-overlay-in .15s ease-out}@keyframes forward-overlay-in{0%{opacity:0}to{opacity:1}}.forward-dialog{background:var(--bg-secondary, #212121);border-radius:12px;width:90vw;max-width:420px;max-height:70vh;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 8px 40px #00000080;animation:forward-dialog-in .15s ease-out}@keyframes forward-dialog-in{0%{transform:scale(.95);opacity:0}to{transform:scale(1);opacity:1}}.forward-dialog-header{display:flex;align-items:center;justify-content:space-between;padding:14px 16px 10px;flex-shrink:0}.forward-dialog-title{font-size:17px;font-weight:600;color:var(--text-primary, #fff)}.forward-dialog-close{background:none;border:none;color:var(--text-secondary, #aaa);cursor:pointer;padding:4px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:color .15s,background .15s}.forward-dialog-close:hover{color:var(--text-primary, #fff);background:var(--sidebar-hover, rgba(255, 255, 255, .1))}.forward-dialog-search-wrapper{padding:0 12px 8px;flex-shrink:0}.forward-dialog-search{width:100%;padding:8px 12px;border:none;border-radius:8px;background:var(--bg-primary, #181818);color:var(--text-primary, #fff);font-size:14px;outline:none;box-sizing:border-box}.forward-dialog-search::placeholder{color:var(--text-tertiary, #888)}.forward-dialog-search:focus{background:var(--bg-tertiary, #1a1a1a);box-shadow:0 0 0 2px #65aadd4d}.forward-dialog-status{padding:6px 16px;font-size:13px;text-align:center;flex-shrink:0}.forward-dialog-status-success{color:#7bc862;background:#7bc8621a}.forward-dialog-status-error{color:#e17076;background:#e170761a}.forward-dialog-list{flex:1;overflow-y:auto;padding:4px 0 8px}.forward-dialog-list::-webkit-scrollbar{width:6px}.forward-dialog-list::-webkit-scrollbar-thumb{background:var(--scroll-thumb, rgba(255, 255, 255, .15));border-radius:3px}.forward-dialog-list::-webkit-scrollbar-track{background:transparent}.forward-dialog-item{display:flex;align-items:center;gap:12px;width:100%;padding:8px 16px;border:none;background:none;cursor:pointer;text-align:left;transition:background .12s}.forward-dialog-item:hover{background:var(--sidebar-hover, rgba(255, 255, 255, .08))}.forward-dialog-item:active{background:var(--sidebar-active, rgba(255, 255, 255, .12))}.forward-dialog-item:disabled{opacity:.5;cursor:default}.forward-dialog-avatar-wrapper{flex-shrink:0;width:40px;height:40px}.forward-dialog-avatar{width:40px;height:40px;border-radius:50%;object-fit:cover}.forward-dialog-avatar-initial{display:flex;align-items:center;justify-content:center;font-size:16px;font-weight:600;color:var(--text-primary, #fff)}.forward-dialog-info{display:flex;flex-direction:column;min-width:0}.forward-dialog-name{font-size:14px;font-weight:500;color:var(--text-primary, #fff);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.forward-dialog-username{font-size:13px;color:var(--text-secondary, #8b8b8b);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.forward-dialog-empty{padding:32px 16px;text-align:center;color:var(--text-tertiary, #888);font-size:14px}.messages-wrapper{display:flex;flex-direction:column;height:100%;width:100%}.back-to-topics{display:flex;align-items:center;gap:6px;padding:8px 16px;background:var(--surface-bg, rgba(0, 0, 0, .03));border:none;border-bottom:1px solid var(--border-color, rgba(0, 0, 0, .08));color:var(--accent-color, #3390ec);font-size:13px;font-weight:500;cursor:pointer;flex-shrink:0}.back-to-topics:hover{background:var(--hover-bg, rgba(0, 0, 0, .06))}.messages-container{flex:1;overflow-y:auto;display:flex;flex-direction:column;min-height:0;padding:0;background:var(--bg-primary)}.messages-list{display:flex;flex-direction:column;max-width:720px;width:100%;margin:0 auto;padding:8px 16px 16px}.message{display:flex;align-items:flex-end;width:100%;padding:0 8px}.message.group-start{margin-top:8px}.message.group-continue{margin-top:2px}.message.outgoing{justify-content:flex-end}.message.incoming{justify-content:flex-start}.message.highlighted .message-bubble,.message.highlighted .message-media-standalone{animation:highlight-flash 2s ease-out}@keyframes highlight-flash{0%{box-shadow:0 0 0 3px var(--accent-color)}to{box-shadow:none}}.message-avatar-col{flex-shrink:0;width:36px;margin-right:8px;display:flex;align-items:flex-end}.message-avatar{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-size:14px;font-weight:600;flex-shrink:0;-webkit-user-select:none;user-select:none}.message-avatar-spacer{width:36px;height:0;flex-shrink:0}.message-content{display:flex;flex-direction:column;max-width:65%;min-width:80px}.message.outgoing .message-content{align-items:flex-end}.message.incoming .message-content{align-items:flex-start}.message-sender-name{font-size:13px;font-weight:600;padding:0 12px;margin-bottom:2px;cursor:pointer;-webkit-user-select:none;user-select:none}.message-bubble{padding:6px 10px 6px 12px;word-wrap:break-word;word-break:break-word;overflow-wrap:break-word;position:relative;display:inline-flex;flex-direction:row;flex-wrap:wrap;align-items:flex-end;font-family:var(--font-family);font-size:14.5px;line-height:1.4;box-shadow:0 1px 2px var(--message-shadow)}.message.outgoing .message-bubble{background:var(--message-out-bg);color:var(--text-primary)}.message.incoming .message-bubble{background:var(--message-in-bg);color:var(--text-primary)}.message-bubble.bubble-single-out,.message-bubble.bubble-first-out{border-radius:14px 14px 4px}.message-bubble.bubble-mid-out,.message-bubble.bubble-last-out{border-radius:14px 4px 4px 14px}.message-bubble.bubble-single-in,.message-bubble.bubble-first-in{border-radius:14px 14px 14px 4px}.message-bubble.bubble-mid-in,.message-bubble.bubble-last-in{border-radius:4px 14px 14px 4px}.message-text{white-space:pre-wrap;flex:1 1 auto;min-width:0;user-select:text;-webkit-user-select:text;font-size:var(--message-font-size, 14.5px)}.message-text.text-muted{color:var(--text-tertiary);font-style:italic}.message-meta{display:inline-flex;align-items:center;gap:3px;font-size:11px;color:var(--text-tertiary);margin-left:8px;padding-top:2px;flex-shrink:0;pointer-events:none;-webkit-user-select:none;user-select:none;opacity:.7;white-space:nowrap;align-self:flex-end}.message-time{line-height:1}.message-status{display:inline-flex;align-items:center;margin-left:2px}.status-icon{width:16px;height:11px}.status-icon.status-sent{color:var(--text-tertiary)}.message.outgoing .status-icon.status-sent{color:var(--accent-color);opacity:.7}.status-failed{color:#e53935;font-weight:700;font-size:12px}.messages-loading,.messages-error,.messages-empty{flex:1;display:flex;align-items:center;justify-content:center;padding:32px;text-align:center;color:var(--text-tertiary)}.loading-more{padding:12px;text-align:center;color:var(--accent-color);font-size:14px}.message-media-standalone{overflow:hidden;max-width:400px;box-shadow:0 1px 2px var(--message-shadow);margin-bottom:2px}.message-media-standalone.bubble-single-out,.message-media-standalone.bubble-first-out{border-radius:14px 14px 4px}.message-media-standalone.bubble-mid-out,.message-media-standalone.bubble-last-out{border-radius:14px 4px 4px 14px}.message-media-standalone.bubble-single-in,.message-media-standalone.bubble-first-in{border-radius:14px 14px 14px 4px}.message-media-standalone.bubble-mid-in,.message-media-standalone.bubble-last-in{border-radius:4px 14px 14px 4px}.media-photo img,.media-video video{display:block;width:100%;max-height:400px;cursor:pointer;object-fit:contain;background:var(--bg-tertiary)}.message-meta-standalone{font-size:11px;background:#0006;color:#fff;padding:2px 8px;border-radius:10px;margin-top:-26px;margin-right:6px;margin-bottom:6px;z-index:2;position:relative;display:inline-block;align-self:flex-end}.media-sticker img{display:block;max-width:200px;max-height:200px;background:transparent}.media-audio,.media-document,.media-other{padding:10px;background:var(--message-in-bg);border-radius:12px;margin-bottom:4px;display:flex;align-items:center;gap:12px;min-width:200px}.message.outgoing .media-audio,.message.outgoing .media-document,.message.outgoing .media-other{background:var(--message-out-bg)}.document-link{color:var(--accent-color);text-decoration:none;font-weight:500;font-size:14px}.document-link:hover{text-decoration:underline}.media-webpage{display:flex;flex-direction:row;align-items:center;gap:8px;padding:5px 10px;background:var(--bg-secondary);border-left:3px solid var(--accent-color);border-radius:4px;margin:2px 0;font-size:13px}.webpage-icon{font-size:13px;line-height:1;flex-shrink:0;opacity:.8}.webpage-content{display:flex;flex-direction:column;gap:0;min-width:0;flex:1}.webpage-title{font-weight:600;color:var(--accent-color);font-size:12px;line-height:1.3}.webpage-url{color:var(--text-secondary);text-decoration:none;font-size:12px;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.media-placeholder{padding:16px;background:var(--bg-tertiary);border-radius:12px;text-align:center;font-size:14px;color:var(--text-secondary);min-width:200px}@keyframes pulse{0%,to{opacity:.6}50%{opacity:1}}.media-placeholder div{animation:pulse 1.5s infinite}.media-click-download{padding:20px;background:var(--bg-tertiary);border-radius:12px;text-align:center;min-width:200px;cursor:pointer;transition:background .2s}.media-click-download:hover{background:var(--sidebar-hover)}.media-download-prompt{display:flex;flex-direction:column;align-items:center;gap:6px}.media-download-icon{color:var(--accent-color);opacity:.8}.media-download-label{font-size:14px;font-weight:500;color:var(--text-primary)}.media-download-tap{font-size:12px;color:var(--text-tertiary)}.media-download-progress{display:flex;align-items:center;justify-content:center;gap:8px;color:var(--text-secondary);font-size:14px}.media-download-spinner{width:16px;height:16px;border:2px solid var(--border-color);border-top-color:var(--accent-color);border-radius:50%;animation:spin .8s linear infinite}@keyframes mediaSpin{to{transform:rotate(360deg)}}.messages-container.dragging-selection{user-select:none;-webkit-user-select:none}.message.selection-mode{cursor:pointer;position:relative;padding-right:44px}.message.selection-mode:hover{background:var(--sidebar-hover, rgba(255, 255, 255, .04))}.message.selected{background:color-mix(in srgb,var(--accent-color, #3390ec) 12%,transparent)}.message.selected:hover{background:color-mix(in srgb,var(--accent-color, #3390ec) 18%,transparent)}.message-checkbox-col{position:absolute;right:8px;top:50%;transform:translateY(-50%);width:32px;display:flex;align-items:center;justify-content:center;animation:checkbox-appear .15s ease-out}@keyframes checkbox-appear{0%{opacity:0;transform:scale(.5)}to{opacity:1;transform:scale(1)}}.message-checkbox{width:22px;height:22px;border-radius:50%;border:2px solid var(--text-tertiary, rgba(255, 255, 255, .3));display:flex;align-items:center;justify-content:center;transition:all .15s ease;flex-shrink:0}.message-checkbox.checked{background:var(--accent-color, #3390ec);border-color:var(--accent-color, #3390ec);color:#fff}:root[data-theme=blue] .message.outgoing .message-bubble{color:#fff}:root[data-theme=blue] .message.outgoing .message-meta{color:#fff9}:root[data-theme=blue] .message.outgoing .status-icon.status-sent{color:#ffffffb3}.merged-indicator{display:inline-flex;align-items:center;gap:3px;cursor:pointer;pointer-events:auto;margin-right:4px;padding:1px 5px;border-radius:8px;background:var(--accent-color, #3390ec);opacity:.6;transition:opacity .15s;-webkit-user-select:none;user-select:none}.merged-indicator:hover{opacity:1}.merged-dot{width:4px;height:4px;border-radius:50%;background:#fff;flex-shrink:0}.merged-count{font-size:10px;font-weight:600;color:#fff;line-height:1}.merged-expanded{display:flex;flex-direction:column;width:100%}.merged-expanded-part{display:flex;flex-direction:column}.merged-separator{height:1px;background:var(--border-color, rgba(0, 0, 0, .08));margin:4px 0;opacity:.5}:root[data-theme=blue] .message.outgoing .merged-indicator{background:#ffffff4d}:root[data-theme=blue] .message.outgoing .merged-dot{background:#fff}@media(max-width:768px){.messages-list{padding-left:8px;padding-right:8px}.message{padding:0 4px}.message-content{max-width:82%}.message.group-start{margin-top:6px}}:root[data-theme=blue] .message.outgoing .merged-count{color:#fff}.day-separator{display:flex;justify-content:center;margin:14px 0 10px;pointer-events:none}.day-separator span{background:#00000059;color:#fff;font-size:13px;font-weight:500;line-height:1;padding:5px 12px;border-radius:14px;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}.avatar-viewer-overlay{position:fixed;inset:0;z-index:9999;background:#000000f2;display:flex;flex-direction:column;align-items:center;justify-content:center;animation:avatarViewerFadeIn .2s ease}.avatar-viewer-overlay.avatar-viewer-closing{animation:avatarViewerFadeOut .2s ease forwards}.avatar-viewer-close{position:absolute;top:16px;right:16px;z-index:10001;background:none;border:none;border-radius:50%;width:40px;height:40px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--text-primary, #fff);transition:background .15s;flex-shrink:0}.avatar-viewer-close:hover{background:var(--sidebar-hover, rgba(255, 255, 255, .15))}.avatar-viewer-counter{position:absolute;top:18px;left:50%;transform:translate(-50%);font-size:14px;color:var(--text-tertiary, rgba(255, 255, 255, .6));z-index:10001;-webkit-user-select:none;user-select:none}.avatar-viewer-title{position:absolute;top:18px;left:20px;font-size:15px;font-weight:600;color:var(--text-primary, #fff);z-index:10001;-webkit-user-select:none;user-select:none;max-width:30%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.avatar-viewer-content{flex:1;display:flex;align-items:center;justify-content:center;width:100%;padding:60px 0;overflow:hidden}.avatar-viewer-img{max-width:92vw;max-height:calc(100vh - 100px);object-fit:contain;-webkit-user-select:none;user-select:none;transition:transform .15s ease;border-radius:2px}.avatar-viewer-nav{position:absolute;top:50%;transform:translateY(-50%);z-index:10001;background:var(--sidebar-hover, rgba(255, 255, 255, .08));border:none;border-radius:50%;width:48px;height:48px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--text-secondary, rgba(255, 255, 255, .8));transition:background .15s,color .15s}.avatar-viewer-nav:hover{background:var(--sidebar-active, rgba(255, 255, 255, .18));color:var(--text-primary, #fff)}.avatar-viewer-nav.left{left:16px}.avatar-viewer-nav.right{right:16px}.avatar-viewer-spinner{width:40px;height:40px;border:3px solid var(--border-color, rgba(255, 255, 255, .15));border-top-color:var(--text-primary, #fff);border-radius:50%;animation:avatarViewerSpin .8s linear infinite}@keyframes avatarViewerSpin{to{transform:rotate(360deg)}}@keyframes avatarViewerFadeIn{0%{opacity:0}to{opacity:1}}@keyframes avatarViewerFadeOut{0%{opacity:1}to{opacity:0}}.search-section{margin-bottom:4px}.search-section-header{display:flex;align-items:center;justify-content:space-between;padding:8px 12px 4px;font-size:12px;font-weight:600;color:var(--accent-color);text-transform:uppercase;letter-spacing:.5px;-webkit-user-select:none;user-select:none}.search-section-badge{font-size:11px;font-weight:500;color:var(--text-tertiary);text-transform:none;letter-spacing:0}.search-section-loading{display:flex;align-items:center;justify-content:center;padding:16px}.search-spinner{width:20px;height:20px;border:2px solid var(--border-color);border-top-color:var(--accent-color);border-radius:50%;animation:spin .8s linear infinite}.search-section-empty{padding:8px 12px;font-size:13px;color:var(--text-tertiary);text-align:center}.global-result-item{cursor:pointer}.global-result-meta{display:flex;align-items:center;gap:8px}.global-result-username{color:var(--accent-color);font-size:13px}.global-result-subs{color:var(--text-tertiary);font-size:12px}.global-result-type{display:flex;align-items:center;color:var(--text-tertiary)}.message-result-item{cursor:pointer}.message-result-preview{display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}.show-more-btn{width:100%;padding:8px 12px;background:transparent;border:none;color:var(--accent-color);font-size:13px;font-weight:500;cursor:pointer;text-align:center;transition:background .15s;border-radius:8px}.show-more-btn:hover{background:var(--sidebar-hover)}.topic-list{display:flex;flex-direction:column;flex:1;overflow-y:auto;padding:8px}.topic-list-empty{display:flex;align-items:center;justify-content:center;height:100%;color:var(--text-secondary);font-size:14px}.topic-item{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:8px;cursor:pointer;transition:background-color .15s}.topic-item:hover{background:var(--hover-bg, rgba(0, 0, 0, .05))}.topic-item.closed{opacity:.6}.topic-icon{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0}.topic-info{flex:1;min-width:0;overflow:hidden}.topic-title-row{display:flex;align-items:center;gap:6px}.topic-title{font-size:14px;font-weight:500;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.topic-badge{font-size:11px;padding:1px 6px;border-radius:4px;flex-shrink:0}.topic-badge.pinned{background:var(--accent-color, #3390ec);color:#fff}.topic-badge.closed{background:var(--text-secondary);color:#fff}.topic-unread{background:var(--accent-color, #3390ec);color:#fff;font-size:12px;font-weight:600;min-width:20px;height:20px;border-radius:10px;display:flex;align-items:center;justify-content:center;padding:0 6px;flex-shrink:0}.new-chat-dialog-overlay{position:fixed;inset:0;z-index:9998;background:#0000008c;display:flex;align-items:center;justify-content:center;animation:new-chat-overlay-in .15s ease-out}@keyframes new-chat-overlay-in{0%{opacity:0}to{opacity:1}}.new-chat-dialog{background:var(--bg-secondary, #212121);border-radius:12px;width:90vw;max-width:420px;max-height:80vh;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 8px 40px #00000080;animation:new-chat-dialog-in .15s ease-out}@keyframes new-chat-dialog-in{0%{transform:scale(.95);opacity:0}to{transform:scale(1);opacity:1}}.new-chat-dialog-header{display:flex;align-items:center;justify-content:space-between;padding:14px 16px 10px;flex-shrink:0}.new-chat-dialog-title{font-size:17px;font-weight:600;color:var(--text-primary, #fff)}.new-chat-dialog-close{background:none;border:none;color:var(--text-secondary, #aaa);cursor:pointer;padding:4px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:color .15s,background .15s}.new-chat-dialog-close:hover{color:var(--text-primary, #fff);background:var(--sidebar-hover, rgba(255, 255, 255, .1))}.new-chat-dialog-body{padding:0 16px 12px;flex-shrink:0}.new-chat-dialog-field{margin-bottom:12px}.new-chat-dialog-label{display:block;font-size:13px;color:var(--text-secondary, #aaa);margin-bottom:6px}.new-chat-dialog-input{width:100%;padding:10px 12px;border:none;border-radius:8px;background:var(--bg-primary, #181818);color:var(--text-primary, #fff);font-size:14px;outline:none;box-sizing:border-box}.new-chat-dialog-input::placeholder{color:var(--text-tertiary, #888)}.new-chat-dialog-input:focus{background:var(--bg-tertiary, #1a1a1a);box-shadow:0 0 0 2px #65aadd4d}.new-chat-dialog-textarea{width:100%;padding:10px 12px;border:none;border-radius:8px;background:var(--bg-primary, #181818);color:var(--text-primary, #fff);font-size:14px;outline:none;box-sizing:border-box;resize:vertical;min-height:60px;max-height:120px;font-family:inherit}.new-chat-dialog-textarea::placeholder{color:var(--text-tertiary, #888)}.new-chat-dialog-textarea:focus{background:var(--bg-tertiary, #1a1a1a);box-shadow:0 0 0 2px #65aadd4d}.new-chat-dialog-section-label{font-size:13px;color:var(--text-secondary, #aaa);padding:8px 16px 4px;flex-shrink:0}.new-chat-dialog-search-wrapper{padding:0 12px 8px;flex-shrink:0}.new-chat-dialog-search{width:100%;padding:8px 12px;border:none;border-radius:8px;background:var(--bg-primary, #181818);color:var(--text-primary, #fff);font-size:14px;outline:none;box-sizing:border-box}.new-chat-dialog-search::placeholder{color:var(--text-tertiary, #888)}.new-chat-dialog-search:focus{background:var(--bg-tertiary, #1a1a1a);box-shadow:0 0 0 2px #65aadd4d}.new-chat-dialog-list{flex:1;overflow-y:auto;padding:4px 0 8px;min-height:0}.new-chat-dialog-list::-webkit-scrollbar{width:6px}.new-chat-dialog-list::-webkit-scrollbar-thumb{background:var(--scroll-thumb, rgba(255, 255, 255, .15));border-radius:3px}.new-chat-dialog-list::-webkit-scrollbar-track{background:transparent}.new-chat-dialog-contact{display:flex;align-items:center;gap:12px;width:100%;padding:8px 16px;border:none;background:none;cursor:pointer;text-align:left;transition:background .12s}.new-chat-dialog-contact:hover{background:var(--sidebar-hover, rgba(255, 255, 255, .08))}.new-chat-dialog-contact:active{background:var(--sidebar-active, rgba(255, 255, 255, .12))}.new-chat-dialog-contact.selected{background:#65aadd26}.new-chat-dialog-avatar-wrapper{flex-shrink:0;width:40px;height:40px}.new-chat-dialog-avatar{width:40px;height:40px;border-radius:50%;object-fit:cover}.new-chat-dialog-avatar-initial{display:flex;align-items:center;justify-content:center;font-size:16px;font-weight:600;color:var(--text-primary, #fff)}.new-chat-dialog-info{display:flex;flex-direction:column;min-width:0;flex:1}.new-chat-dialog-name{font-size:14px;font-weight:500;color:var(--text-primary, #fff);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.new-chat-dialog-username{font-size:13px;color:var(--text-secondary, #8b8b8b);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.new-chat-dialog-checkbox{flex-shrink:0;width:22px;height:22px;border-radius:50%;border:2px solid var(--text-tertiary, #555);display:flex;align-items:center;justify-content:center;transition:all .15s}.new-chat-dialog-checkbox.checked{background:var(--accent-color, #65AADD);border-color:var(--accent-color, #65AADD)}.new-chat-dialog-checkbox.checked svg{opacity:1}.new-chat-dialog-checkbox svg{opacity:0;transition:opacity .15s}.new-chat-dialog-empty{padding:32px 16px;text-align:center;color:var(--text-tertiary, #888);font-size:14px}.new-chat-dialog-footer{padding:8px 16px 14px;flex-shrink:0;display:flex;justify-content:flex-end;gap:8px}.new-chat-dialog-btn{padding:8px 20px;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:background .15s,opacity .15s}.new-chat-dialog-btn-primary{background:var(--accent-color, #65AADD);color:#fff}.new-chat-dialog-btn-primary:hover{opacity:.9}.new-chat-dialog-btn-primary:disabled{opacity:.5;cursor:default}.new-chat-dialog-btn-secondary{background:var(--sidebar-hover, rgba(255, 255, 255, .1));color:var(--text-primary, #fff)}.new-chat-dialog-btn-secondary:hover{background:var(--sidebar-active, rgba(255, 255, 255, .15))}.new-chat-dialog-status{padding:6px 16px;font-size:13px;text-align:center;flex-shrink:0}.new-chat-dialog-status-error{color:#e17076;background:#e170761a}.new-chat-dialog-notice{padding:12px 16px;font-size:13px;color:var(--text-secondary, #aaa);line-height:1.5;text-align:center}.new-chat-dialog-chips{display:flex;flex-wrap:wrap;gap:6px;padding:0 16px 8px;flex-shrink:0}.new-chat-dialog-chip{display:flex;align-items:center;gap:4px;padding:4px 10px;border-radius:16px;background:#65aadd33;color:var(--accent-color, #65AADD);font-size:13px;border:none;cursor:pointer;transition:background .12s}.new-chat-dialog-chip:hover{background:#65aadd4d}.new-chat-dialog-chip svg{flex-shrink:0}.main-layout{display:flex;height:100vh;height:100dvh;height:var(--app-height, 100dvh);width:100vw;overflow:hidden;background-color:var(--bg-primary)}.sidebar{width:320px;min-width:320px;min-height:0;background:var(--sidebar-bg);border-right:1px solid var(--border-color);display:flex;flex-direction:column;z-index:10}.layout-vertical .folder-sidebar{width:72px;min-width:72px;background:var(--sidebar-bg);border-right:1px solid var(--border-color);display:flex;flex-direction:column;align-items:center;padding:12px 0;z-index:11;overflow-y:auto;scrollbar-width:none}.layout-vertical .folder-sidebar::-webkit-scrollbar{display:none}.chat-filters.vertical{display:flex!important;flex-direction:column;gap:8px;width:100%;padding:0}.chat-filters.vertical .filter-button{padding:10px 4px;width:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;border-radius:0;border-left:3px solid transparent;background:transparent;color:var(--text-tertiary)}.chat-filters.vertical .filter-button:hover{background:var(--sidebar-hover);color:var(--text-primary)}.chat-filters.vertical .filter-button .filter-label{font-size:10px;max-width:68px;overflow:hidden;text-overflow:ellipsis;text-align:center;white-space:nowrap}.chat-filters.vertical .filter-button.active{color:var(--accent-color)!important;background:#da775614!important;border-left-color:var(--accent-color)}.chat-filters.vertical .filter-button.active:after{display:none}.filter-icon{opacity:.7;transition:all .2s;color:inherit}.filter-button:hover .filter-icon,.filter-button.active .filter-icon{opacity:1}.filter-icon-wrapper{position:relative;display:inline-flex;align-items:center;justify-content:center}.folder-unread-badge{position:absolute;top:-6px;right:-10px;background:var(--accent-color);color:#fff;min-width:18px;height:18px;border-radius:9px;display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:700;padding:0 4px;line-height:1;box-sizing:border-box;pointer-events:none;z-index:1}.chat-filters.horizontal .filter-icon-wrapper{position:relative;display:inline-flex}.chat-filters.horizontal .folder-unread-badge{position:relative;top:auto;right:auto;margin-left:6px}.layout-vertical .sidebar{border-left:none}.sidebar-header{padding:12px 12px 8px;display:flex;flex-direction:column;gap:12px;flex:1;overflow:hidden;min-height:0}.sidebar-header-top{display:flex;align-items:center;justify-content:space-between;height:48px;padding:4px 0;transition:all .3s ease}.sidebar-header-top.search-active{justify-content:flex-start}.header-left{display:flex;align-items:center;gap:12px}.sidebar-logo{width:38px;height:38px;filter:drop-shadow(0 4px 8px rgba(0,0,0,.1))}.sidebar-title{margin:0;font-family:Outfit,sans-serif;font-size:22px;font-weight:700;color:var(--text-primary);letter-spacing:-.8px}.sidebar-actions{display:flex;align-items:center;gap:8px;background:#ffffff0a;padding:4px 6px;border-radius:20px;transition:all .3s ease;min-width:40px;justify-content:flex-end}.sidebar-actions.full-width{flex:1;background:var(--bg-secondary);border-radius:12px;padding:4px 8px;justify-content:flex-start;box-shadow:0 2px 8px #0003}.sidebar-actions:focus-within{background:#ffffff0f}.search-container-inline{display:flex;align-items:center;width:32px;height:32px;transition:all .4s cubic-bezier(.175,.885,.32,1.275);overflow:hidden;border-radius:16px;background:transparent}.search-container-inline.expanded{width:180px;background:var(--bg-secondary);box-shadow:inset 0 2px 4px #0000001a}.sidebar-actions.full-width .search-container-inline.expanded{width:100%;background:transparent;box-shadow:none}.inline-search-input{width:100%;border:none;background:transparent;color:var(--text-primary);font-size:14px;padding:0 12px 0 4px;outline:none;opacity:0;transition:opacity .3s ease}.search-container-inline.expanded .inline-search-input{opacity:1}.icon-button{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--text-secondary);background:transparent;border:none;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);flex-shrink:0}.icon-button:hover{background:var(--sidebar-hover);color:var(--accent-color)}.search-container{padding:0}.search-input{width:100%;padding:10px 14px;background:var(--bg-secondary);border:1px solid transparent;border-radius:10px;font-size:15px;color:var(--text-primary);transition:all .2s}.search-input::placeholder{color:var(--text-tertiary)}.search-input:focus{background:var(--bg-primary);border-color:var(--accent-color);box-shadow:0 0 0 1px var(--accent-color)}.chat-filters{display:flex;gap:8px;padding:4px 10px;overflow-x:auto;scrollbar-width:none}.chat-filters::-webkit-scrollbar{display:none}.filter-button{padding:6px 14px;background:transparent;border-radius:20px;font-size:13px;font-weight:500;cursor:pointer;color:var(--text-tertiary);white-space:nowrap;position:relative;transition:all .2s cubic-bezier(.4,0,.2,1);border:1px solid transparent}.filter-button:hover{color:var(--text-primary);background:var(--bg-secondary)}.filter-button.active{color:var(--accent-color);background:transparent;border-color:transparent}.filter-button.active:hover{background:transparent}.filter-button.active:after{content:"";position:absolute;bottom:0;left:12px;right:12px;height:3px;background:var(--accent-color);border-radius:3px 3px 0 0}.chat-list{flex:1;min-height:0;overflow-y:auto;padding:4px}.chat-item{display:flex;gap:12px;padding:8px;cursor:pointer;border-radius:10px;margin-bottom:1px;transition:background .1s ease}.chat-item:hover{background:var(--sidebar-hover)}.chat-item.keyboard-highlighted{background:var(--sidebar-hover);outline:2px solid var(--accent-color);outline-offset:-2px}.chat-item.selected{background:var(--sidebar-active)}.chat-list.density-compact .chat-item{padding:6px 8px;gap:10px}.chat-list.density-compact .chat-avatar{width:40px;height:40px;font-size:15px}.chat-list.density-compact .chat-title{font-size:14.5px}.chat-list.density-compact .chat-preview{font-size:13px}.chat-list.density-very-compact .chat-item{padding:4px 8px;gap:8px}.chat-list.density-very-compact .chat-avatar{width:32px;height:32px;font-size:13px}.chat-list.density-very-compact .chat-title{font-size:14px}.chat-list.density-very-compact .chat-preview{display:none}.chat-list.density-very-compact .chat-info{justify-content:center}.chat-item.selected .chat-title{color:var(--text-primary)}.chat-item.selected .chat-preview,.chat-item.selected .chat-time{color:var(--text-secondary)}.chat-avatar{width:50px;height:50px;border-radius:50%;background:var(--accent-color);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:18px;flex-shrink:0;overflow:hidden}.avatar-image{width:100%;height:100%;object-fit:cover}.chat-info{flex:1;min-width:0;display:flex;flex-direction:column;justify-content:center;gap:2px}.chat-info-top{display:flex;justify-content:space-between;align-items:center}.chat-title-row{display:flex;align-items:center;gap:6px;min-width:0}.chat-title{font-weight:600;font-size:15px;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-forum-badge{display:flex;align-items:center;color:var(--accent-color, #3390ec);flex-shrink:0}.pinned-icon{font-size:12px;transform:rotate(45deg);opacity:.6}.chat-meta-right{display:flex;align-items:center;gap:4px;flex-shrink:0}.status-ticks{color:#4fae4e;font-size:12px;font-weight:700}.chat-time{font-size:12px;color:var(--text-tertiary)}.chat-info-bottom{display:flex;justify-content:space-between;align-items:center}.chat-preview{font-size:14px;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.2}.preview-sender{color:var(--accent-color);font-weight:500}.unread-count{background:var(--accent-color);color:#fff;min-width:20px;height:20px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:600;padding:0 6px;flex-shrink:0}.unread-count.muted{background:var(--text-tertiary, #8e8e93)}.chat-item.selected .unread-count{background:var(--accent-color);color:#fff}.chat-item.selected .preview-sender{color:var(--accent-color)}.chat-item.selected .pinned-icon{opacity:.8}.chat-item.selected .status-ticks{color:#4fae4e}.content{flex:1;display:flex;flex-direction:column;background:var(--bg-primary);position:relative}.content-bg{position:absolute;inset:0;background:var(--bg-primary);pointer-events:none}:root[data-theme=dark] .content-bg{background:var(--bg-primary)}.content-header{height:56px;flex-shrink:0;padding:0 24px;background:var(--bg-primary);border-bottom:1px solid var(--border-color);display:flex;align-items:center;justify-content:space-between;z-index:5}.content-header .header-left{flex:1;min-width:0;overflow:hidden}.content-header-info{display:flex;flex-direction:column;min-width:0;overflow:hidden}.content-header h3{margin:0;font-size:16px;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.content-header .status{font-size:13px;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.content-header-actions{display:flex;align-items:center;gap:4px;flex-shrink:0}.messages-area{flex:1;display:flex;flex-direction:column;overflow:hidden;z-index:1}.empty-chat{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;z-index:2}.empty-chat-bubble{background:transparent;color:var(--text-tertiary);font-family:var(--font-serif);font-size:20px}:root[data-theme=dark] .empty-chat-bubble{background:transparent}.context-menu{position:fixed;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:8px;box-shadow:0 4px 16px #0003;z-index:2000;min-width:180px;padding:4px;animation:contextMenuFadeIn .1s ease-out}@keyframes contextMenuFadeIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.context-menu-item{width:100%;padding:10px 12px;text-align:left;border-radius:6px;font-size:14px;color:var(--text-primary);display:flex;align-items:center;gap:8px}.context-menu-item:hover{background:var(--sidebar-hover)}.context-menu-submenu-trigger{position:relative;cursor:default}.context-submenu{position:absolute;left:100%;top:-4px;margin-left:2px;animation:contextMenuFadeIn .1s ease-out}.context-menu .context-menu-divider{height:1px;background:var(--border-color);margin:4px 0}.context-menu-item--danger{color:#e53935!important}.context-menu-item--danger svg{color:#e53935}.header-search{display:flex;align-items:center;gap:8px;width:100%}.header-search-nav{display:flex;align-items:center;gap:2px}.header-search-input{flex:1;padding:6px 12px;background:var(--bg-secondary);border:1px solid transparent;border-radius:8px;font-size:14px;color:var(--text-primary);transition:all .2s}.header-search-input:focus{background:var(--bg-primary);border-color:var(--accent-color);box-shadow:0 0 0 1px var(--accent-color)}.header-search-input::placeholder{color:var(--text-tertiary)}.header-search-info{min-width:50px;text-align:center}.search-status{font-size:13px;color:var(--text-secondary);white-space:nowrap}.icon-button-sm{width:30px;height:30px}.chat-options-menu{position:absolute;top:100%;right:0;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:8px;box-shadow:0 4px 16px #0003;z-index:2000;min-width:200px;padding:4px;animation:contextMenuFadeIn .1s ease-out}.chat-options-menu-item{width:100%;padding:10px 12px;text-align:left;border-radius:6px;font-size:14px;color:var(--text-primary);display:flex;align-items:center;gap:10px;background:none;border:none;cursor:pointer}.chat-options-menu-item:hover{background:var(--sidebar-hover)}.chat-options-menu-item.danger{color:#e53935}.chat-options-menu-item.danger:hover{background:#e5393514}.chat-options-menu-separator{height:1px;background:var(--border-color);margin:4px 0}.new-chat-menu{position:absolute;top:100%;right:0;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:8px;box-shadow:0 4px 16px #0003;z-index:2000;min-width:200px;padding:4px;animation:contextMenuFadeIn .1s ease-out}.new-chat-menu-item{width:100%;padding:10px 12px;text-align:left;border-radius:6px;font-size:14px;color:var(--text-primary);display:flex;align-items:center;gap:10px;background:none;border:none;cursor:pointer}.new-chat-menu-item:hover{background:var(--sidebar-hover)}.message.highlighted .message-bubble,.message.highlighted .message-media-standalone{animation:messageHighlight 2s ease-out}@keyframes messageHighlight{0%{background-color:#3390ec4d}to{background-color:transparent}}:root[data-theme=dark] .message.highlighted .message-bubble,:root[data-theme=dark] .message.highlighted .message-media-standalone{animation:messageHighlightDark 2s ease-out}@keyframes messageHighlightDark{0%{background-color:#5288c166}to{background-color:transparent}}.empty-state{padding:32px 16px;text-align:center;color:var(--text-tertiary);font-size:14px}.download-item-spinner{width:12px;height:12px;border:2px solid var(--border-color);border-top-color:var(--accent-color);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.download-item-dot{width:8px;height:8px;border-radius:50%;background:var(--text-tertiary)}.chat-info-panel{position:absolute;top:0;right:0;bottom:0;width:320px;background:var(--bg-primary);border-left:1px solid var(--border-color);z-index:10;display:flex;flex-direction:column;animation:slideInRight .2s ease-out;box-shadow:-4px 0 16px #0000001a}@keyframes slideInRight{0%{transform:translate(100%)}to{transform:translate(0)}}.chat-info-panel-header{display:flex;align-items:center;justify-content:space-between;padding:max(12px,var(--safe-area-top, env(safe-area-inset-top))) 16px 12px 16px;border-bottom:1px solid var(--border-color)}.chat-info-panel-header h3{margin:0;font-size:16px;font-weight:600;color:var(--text-primary)}.chat-info-panel-body{flex:1;overflow-y:auto;padding:24px 16px;display:flex;flex-direction:column;align-items:center;gap:16px}.chat-info-avatar{width:100px;height:100px;border-radius:50%;background:var(--accent-color);color:#fff;display:flex;align-items:center;justify-content:center;font-size:36px;font-weight:600;overflow:hidden}.chat-info-avatar img{width:100%;height:100%;object-fit:cover}.chat-info-details{width:100%;text-align:center}.chat-info-title{font-size:20px;font-weight:600;color:var(--text-primary);margin-bottom:4px}.chat-info-username{font-size:14px;color:var(--accent-color);margin-bottom:8px}.chat-info-type{font-size:13px;color:var(--text-secondary);text-transform:capitalize}.chat-info-section{width:100%;background:var(--bg-secondary);border-radius:12px;padding:12px 16px}.chat-info-section-title{font-size:12px;font-weight:600;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px}.chat-info-row{display:flex;justify-content:space-between;padding:6px 0;font-size:14px}.chat-info-row-label{color:var(--text-secondary)}.chat-info-row-value{color:var(--text-primary);font-weight:500}@media(max-width:768px){.sidebar{width:100%;min-width:100%;border-right:none}.content{display:none;width:100%;position:fixed;top:var(--vv-offset-top, 0px);left:0;height:100dvh;height:var(--app-height, 100dvh);z-index:20}.main-layout.chat-open .sidebar{display:none}.main-layout.chat-open .content{display:flex}.chat-info-panel{width:100%;z-index:30}.sidebar-header{padding-top:max(12px,var(--safe-area-top, env(safe-area-inset-top)))}.content-header{padding-top:var(--safe-area-top, env(safe-area-inset-top));height:calc(56px + var(--safe-area-top, env(safe-area-inset-top)));align-items:center;padding-left:10px;padding-right:8px}.back-button{display:flex!important;margin-right:8px}.icon-button{width:40px;height:40px}.sidebar-header-top{height:56px}}.back-button{display:none;width:40px;height:40px;align-items:center;justify-content:center;margin-right:8px;background:transparent;border:none;color:var(--text-primary);border-radius:50%;cursor:pointer}.back-button:hover{background:var(--sidebar-hover)}.confirm-dialog-overlay{position:fixed;inset:0;background:#00000080;z-index:5000;display:flex;align-items:center;justify-content:center;animation:fadeIn .15s ease-out}.confirm-dialog{background:var(--bg-primary);border-radius:12px;padding:24px;max-width:400px;width:90%;box-shadow:0 8px 32px #0000004d}.confirm-dialog h3{margin:0 0 12px;font-size:18px;font-weight:600;color:var(--text-primary)}.confirm-dialog p{margin:0 0 20px;font-size:14px;color:var(--text-secondary);line-height:1.5}.confirm-dialog-actions{display:flex;justify-content:flex-end;gap:8px}.confirm-dialog-btn{padding:8px 20px;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;border:none;transition:all .15s}.confirm-dialog-btn.cancel{background:var(--bg-secondary);color:var(--text-primary)}.confirm-dialog-btn.cancel:hover{background:var(--border-color)}.confirm-dialog-btn.danger{background:#e53935;color:#fff}.confirm-dialog-btn.danger:hover{background:#c62828}.api-settings-container{display:flex;align-items:center;justify-content:center;width:100vw;height:100vh;background-color:var(--bg-primary)}.api-settings-card{width:100%;max-width:480px;padding:40px;background:var(--bg-primary);display:flex;flex-direction:column;gap:24px}.api-settings-title{font-size:28px;font-weight:700;color:var(--text-primary);text-align:center}.api-settings-description{font-size:15px;color:var(--text-secondary);line-height:1.6;text-align:center}.api-settings-link{color:var(--accent-color);text-decoration:none;font-weight:500}.api-settings-link:hover{text-decoration:underline}.api-settings-form{display:flex;flex-direction:column;gap:20px}.form-group{display:flex;flex-direction:column;gap:8px}.form-label{font-size:14px;font-weight:600;color:var(--text-secondary);padding-left:4px}.form-input{width:100%;padding:12px 16px;font-size:16px;border:1px solid var(--border-color);border-radius:12px;background:var(--bg-secondary);color:var(--text-primary);transition:all .2s}.form-input:focus{border-color:var(--accent-color);background:var(--bg-primary);box-shadow:0 0 0 2px #3390ec33}.form-error{color:var(--error-color);font-size:14px;background:#e539351a;padding:10px;border-radius:8px;text-align:center}.form-button{width:100%;padding:14px;font-size:16px;font-weight:600;color:#fff;background-color:var(--accent-color);border-radius:12px;margin-top:8px}.form-button:hover{background-color:var(--accent-hover)}.api-settings-help{margin-top:8px;padding:20px;background:var(--bg-secondary);border-radius:16px}.help-title{font-size:14px;font-weight:600;color:var(--text-primary);margin-bottom:12px}.help-steps{padding-left:20px;font-size:14px;color:var(--text-secondary);display:flex;flex-direction:column;gap:8px}.help-steps a{color:var(--accent-color);text-decoration:none}.call-overlay{position:fixed;inset:0;z-index:10000;display:flex;align-items:center;justify-content:center}.call-overlay-bg{position:absolute;inset:0;background:#000000d9;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.call-overlay-content{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;height:100%;padding:40px 20px;color:#fff}.call-avatar{width:120px;height:120px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:48px;font-weight:600;color:#fff;-webkit-user-select:none;user-select:none;flex-shrink:0}.call-peer-name{font-size:28px;font-weight:600;margin-top:24px;text-align:center;color:#fff}.call-status{font-size:16px;color:#fff9;margin-top:8px;text-align:center}.call-timer{font-size:18px;font-weight:500;color:#fffc;margin-top:8px;font-variant-numeric:tabular-nums}.call-pulse-ring{position:relative}.call-pulse-ring:before,.call-pulse-ring:after{content:"";position:absolute;top:50%;left:50%;width:120px;height:120px;border-radius:50%;transform:translate(-50%,-50%);border:2px solid rgba(255,255,255,.3);animation:call-pulse 2s ease-out infinite}.call-pulse-ring:after{animation-delay:.6s}@keyframes call-pulse{0%{width:120px;height:120px;opacity:.6}to{width:200px;height:200px;opacity:0}}.call-pulse-ring--incoming:before,.call-pulse-ring--incoming:after{border-color:#4cd96466}.call-actions{display:flex;align-items:center;gap:32px;margin-top:auto;padding-bottom:40px}.call-action-btn{width:64px;height:64px;border-radius:50%;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:transform .15s ease,opacity .15s ease;color:#fff;font-size:0;outline:none}.call-action-btn:hover{transform:scale(1.08)}.call-action-btn:active{transform:scale(.95)}.call-action-btn--accept{background:#4cd964}.call-action-btn--accept:hover{background:#3ec455}.call-action-btn--decline,.call-action-btn--hangup{background:#ff3b30}.call-action-btn--decline:hover,.call-action-btn--hangup:hover{background:#e0342b}.call-action-btn--toggle{background:#ffffff26}.call-action-btn--toggle:hover{background:#ffffff40}.call-action-btn--toggle.active{background:#ffffffe6;color:#1a1a1a}.call-action-label{font-size:12px;color:#fff9;margin-top:8px;text-align:center}.call-action-group{display:flex;flex-direction:column;align-items:center}.call-incoming-text{font-size:16px;color:#fff9;margin-top:12px;text-align:center}.call-overlay{animation:call-overlay-in .3s ease-out}@keyframes call-overlay-in{0%{opacity:0}to{opacity:1}}.video-call-screen{background:#000}.video-call-remote{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;z-index:1}.video-call-remote-video{width:100%;height:100%;object-fit:cover}.video-call-remote-placeholder{display:flex;align-items:center;justify-content:center;width:100%;height:100%}.video-call-large-avatar{width:160px;height:160px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:64px;font-weight:600;color:#fff;-webkit-user-select:none;user-select:none}.video-call-pip{position:absolute;bottom:120px;right:20px;width:160px;height:213px;border-radius:12px;overflow:hidden;background:#1a1a2e;z-index:10;box-shadow:0 4px 20px #00000080;cursor:grab}.video-call-local-video{width:100%;height:100%;object-fit:cover}.video-call-pip-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:#fff6}.video-call-top-bar{position:absolute;top:0;left:0;right:0;z-index:5;display:flex;flex-direction:column;align-items:center;padding:24px 20px 16px;background:linear-gradient(180deg,rgba(0,0,0,.6) 0%,transparent 100%)}.video-call-peer-name{font-size:20px;font-weight:600;color:#fff;text-shadow:0 1px 4px rgba(0,0,0,.5)}.video-call-duration{font-size:14px;color:#ffffffb3;margin-top:4px;font-variant-numeric:tabular-nums}.video-call-bottom-bar{position:absolute;bottom:0;left:0;right:0;z-index:5;display:flex;align-items:flex-start;justify-content:center;gap:28px;padding:20px 20px 40px;background:linear-gradient(0deg,rgba(0,0,0,.6) 0%,transparent 100%)}.video-call-minimized{position:fixed;top:8px;right:8px;z-index:10000;background:#1a1a2e;border-radius:12px;padding:10px 16px;cursor:pointer;box-shadow:0 4px 20px #0006;transition:transform .15s ease;animation:call-overlay-in .3s ease-out}.video-call-minimized:hover{transform:scale(1.03)}.video-call-minimized-info{display:flex;align-items:center;gap:10px}.video-call-minimized-avatar{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:600;color:#fff;flex-shrink:0}.video-call-minimized-details{display:flex;flex-direction:column}.video-call-minimized-name{font-size:14px;font-weight:500;color:#fff}.video-call-minimized-duration{font-size:12px;color:#fff9;font-variant-numeric:tabular-nums}.group-call-screen{background:#000}.group-call-content{position:relative;z-index:1;display:flex;flex-direction:column;width:100%;height:100%;color:#fff}.group-call-header{display:flex;flex-direction:column;align-items:center;padding:24px 20px 16px;flex-shrink:0}.group-call-title{font-size:22px;font-weight:600;color:#fff}.group-call-count{font-size:14px;color:#fff9;margin-top:4px}.group-call-grid{flex:1;overflow-y:auto;padding:16px 20px;display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:16px;align-content:start}.group-call-empty{grid-column:1 / -1;display:flex;align-items:center;justify-content:center;color:#fff6;font-size:16px;padding:40px}.group-call-participant{display:flex;flex-direction:column;align-items:center;gap:8px;padding:16px 8px;border-radius:12px;background:#ffffff0d;transition:background .2s ease}.group-call-participant--speaking{background:#4cd9641a}.group-call-participant-avatar-wrap{position:relative;width:64px;height:64px}.group-call-participant-avatar{width:64px;height:64px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:24px;font-weight:600;color:#fff;-webkit-user-select:none;user-select:none}.group-call-speaking-ring{position:absolute;inset:-4px;border-radius:50%;border:3px solid #4cd964;animation:group-call-pulse 1.2s ease-in-out infinite}@keyframes group-call-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.06)}}.group-call-participant-name{font-size:13px;font-weight:500;color:#fff;text-align:center;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.group-call-participant-self{color:#fff6;font-weight:400}.group-call-participant-status{display:flex;align-items:center;gap:4px;min-height:16px}.group-call-muted-icon{color:#fff6}.group-call-speaking-text{font-size:11px;color:#4cd964;font-weight:500}.group-call-raise-hand{display:flex;align-items:center}.group-call-bottom-bar{display:flex;align-items:flex-start;justify-content:center;gap:32px;padding:20px 20px 40px;flex-shrink:0;background:linear-gradient(0deg,rgba(0,0,0,.4) 0%,transparent 100%)}*{margin:0;padding:0;box-sizing:border-box;-webkit-user-select:none;user-select:none}input,textarea{-webkit-user-select:text;user-select:text}:root{--font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--font-serif: "Newsreader", Georgia, serif;--bg-primary: #FDFBFA;--bg-secondary: #F3EFE9;--bg-tertiary: #EBE4D9;--sidebar-bg: #FDFBFA;--sidebar-hover: #F3EFE9;--sidebar-active: #F3EFE9;--sidebar-active-text: #1C1A1A;--text-primary: #1C1A1A;--text-secondary: #5C5855;--text-tertiary: #A69C94;--accent-color: #DA7756;--accent-hover: #C56648;--border-color: #E6DFDA;--message-out-bg: #F3EFE9;--message-in-bg: #FFFFFF;--message-shadow: rgba(0, 0, 0, .04);--scroll-thumb: #D1CAC3;--scroll-track: transparent;font-family:var(--font-family);font-size:14.5px;line-height:1.5}:root[data-theme=dark]{--bg-primary: #1A1817;--bg-secondary: #221F1E;--bg-tertiary: #2D2826;--sidebar-bg: #1A1817;--sidebar-hover: #2D2826;--sidebar-active: #2D2826;--sidebar-active-text: #EDEBE8;--text-primary: #EDEBE8;--text-secondary: #A6A09C;--text-tertiary: #6E6966;--accent-color: #DA7756;--accent-hover: #E8896A;--border-color: #36322F;--message-out-bg: #2D2826;--message-in-bg: #221F1E;--message-shadow: rgba(0, 0, 0, .2);--scroll-thumb: #45403C}:root[data-theme=blue]{--font-serif: var(--font-family);--bg-primary: #0F171E;--bg-secondary: #17212B;--bg-tertiary: #1B2733;--sidebar-bg: #17212B;--sidebar-hover: #232E3C;--sidebar-active: #2B5278;--sidebar-active-text: #FFFFFF;--text-primary: #FFFFFF;--text-secondary: #B0C4DE;--text-tertiary: #92A8C1;--accent-color: #3390EC;--accent-hover: #4BA3FF;--border-color: #0F171E;--message-out-bg: #2B5278;--message-in-bg: #182533;--message-shadow: rgba(16, 22, 26, .2);--scroll-thumb: #3A4B5D}html{overflow:hidden;overscroll-behavior:none}body{margin:0;padding:0;overflow:hidden;position:fixed;inset:0;width:100%;height:100%;overscroll-behavior:none;touch-action:manipulation;color:var(--text-primary);background-color:var(--bg-primary);font-smoothing:antialiased;-webkit-font-smoothing:antialiased}#root,.app{width:100vw;height:100vh;height:100dvh;height:var(--app-height, 100dvh);display:flex;overflow:hidden}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:var(--scroll-track)}::-webkit-scrollbar-thumb{background:var(--scroll-thumb);border-radius:10px}::-webkit-scrollbar-thumb:hover{background:var(--text-tertiary)}button{cursor:pointer;border:none;outline:none;background:none;font-family:inherit;transition:background-color .2s ease,color .2s ease,opacity .2s ease}input{outline:none;border:none;font-family:inherit}
