:root{font-family:Space Grotesk,IBM Plex Sans,sans-serif;color:#f4efe8;background:radial-gradient(circle at top left,rgba(255,157,92,.28),transparent 30%),radial-gradient(circle at right center,rgba(93,198,255,.18),transparent 28%),linear-gradient(160deg,#111,#191919 42%,#262012);--panel: rgba(16, 16, 16, .78);--panel-strong: rgba(28, 28, 28, .92);--line: rgba(255, 255, 255, .08);--muted: rgba(255, 255, 255, .64);--accent: #ff9250;--accent-2: #6dd3ff;--danger: #ff7b7b}*{box-sizing:border-box}html,body{height:100%}body{margin:0;background:inherit;overflow:hidden}body[data-theme=day]{color:#18202a;background:radial-gradient(circle at top left,rgba(255,198,147,.36),transparent 28%),radial-gradient(circle at right center,rgba(135,204,255,.2),transparent 26%),linear-gradient(180deg,#f7f3ea,#eef6ea);--panel: rgba(255, 255, 255, .82);--panel-strong: rgba(255, 255, 255, .96);--line: rgba(28, 34, 44, .1);--muted: rgba(36, 44, 54, .6);--accent: #ef8a44;--accent-2: #2b8cd6;--danger: #e06363}body[data-theme=day] .auth-card,body[data-theme=day] .sidebar,body[data-theme=day] .group-builder-card,body[data-theme=day] .group-info-panel,body[data-theme=day] .settings-panel,body[data-theme=day] .call-card,body[data-theme=day] .forward-dialog,body[data-theme=day] .message-bubble,body[data-theme=day] .voice-message-card{box-shadow:0 20px 48px #2c364114}body[data-theme=day] .sidebar-brand-copy strong,body[data-theme=day] .chat-title-line h2,body[data-theme=day] .group-info-header strong,body[data-theme=day] .message-bubble,body[data-theme=day] .voice-message-play,body[data-theme=day] .voice-message-menu-button{color:#18202a}body[data-theme=day] .sidebar-brand-copy span,body[data-theme=day] .chat-title-members,body[data-theme=day] .chat-header p,body[data-theme=day] .group-info-header span,body[data-theme=day] .voice-message-meta{color:#242c369e}body[data-theme=day] .banner.error{color:#8f2d2d;background:#ff7a7a24;border-color:#cc4f4f6b}body[data-theme=day] .sidebar-icon-button,body[data-theme=day] .sidebar-popup-menu,body[data-theme=day] .sidebar-popup-action,body[data-theme=day] .chat-header-popup-menu,body[data-theme=day] .chat-header-popup-action,body[data-theme=day] input,body[data-theme=day] textarea,body[data-theme=day] select{color:#18202a;-webkit-text-fill-color:#18202a}body[data-theme=day] input,body[data-theme=day] textarea,body[data-theme=day] select,body[data-theme=day] .sidebar-icon-button,body[data-theme=day] .sidebar-popup-menu,body[data-theme=day] .group-builder-card,body[data-theme=day] .group-info-panel,body[data-theme=day] .settings-panel,body[data-theme=day] .message-file-card,body[data-theme=day] .message-quote,body[data-theme=day] .reply-preview-card,body[data-theme=day] .voice-message-card,body[data-theme=day] .chat-header-popup-menu{background:#ffffffd6;border-color:#18202a1a}body[data-theme=day] .chat-panel{background:radial-gradient(circle at top left,rgba(182,226,146,.22),transparent 30%),radial-gradient(circle at bottom right,rgba(109,211,255,.14),transparent 24%),linear-gradient(180deg,#f4faeccc,#e8f4e1bd),var(--panel)}body[data-theme=day] .message-bubble.mine{background:#6dd3ff29}body[data-theme=day] .message-bubble:not(.mine){background:#ffffffdb}body[data-theme=day] .conversation-call-button{background:#ffffffe0;border-color:#2b4f702e;color:#18202ac7;box-shadow:0 8px 18px #37587814}body[data-theme=day] .conversation-call-button:hover{background:#fffffffa;border-color:#2b8cd66b;color:#1c4f78}body[data-theme=day] .conversation-group-indicator{border-color:#cf643129;background:#ffe2d7db;color:#cf6431}body[data-theme=day] .chat-back-button{background:#ffffffe6;border-color:#18202a24;color:#18202ae0}body[data-theme=day] .chat-back-button:hover{background:#fff}body[data-theme=day] .voice-message-waveform-bar{background:#48626042}body[data-theme=day] .voice-message-waveform-bar.active{background:#6e767cb8}body[data-theme=day] .voice-message-waveform-bar.current{background:#5c646ceb}button,input,textarea,select{font:inherit}#root{height:100%}.auth-shell,.app-shell{padding:24px}.auth-shell{min-height:100vh;min-height:100dvh;width:100%;display:grid;align-content:start;justify-items:center;overflow-y:auto;overscroll-behavior-y:contain;-webkit-overflow-scrolling:touch;padding:clamp(16px,4vw,32px)}.auth-card{width:min(100%,520px);padding:clamp(20px,4.5vw,32px);border:1px solid var(--line);border-radius:28px;background:var(--panel);-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);box-shadow:0 24px 90px #00000052;display:grid;gap:16px}.auth-card-rich{width:min(100%,640px)}.auth-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.auth-card-copy{display:grid;gap:0;min-width:0}.eyebrow{text-transform:uppercase;letter-spacing:.16em;font-size:.72rem;color:var(--accent-2)}h1,h2,p{margin:0}.auth-card h1{margin-top:12px;font-size:clamp(2.4rem,5vw,4rem);line-height:.95}.auth-copy{margin-top:16px;margin-bottom:0;color:var(--muted);max-width:38ch}.auth-language-field{display:grid;gap:8px;margin-top:10px;min-width:152px;justify-items:end}.auth-language-field span{color:var(--muted);font-size:.74rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.auth-language-select{width:100%;min-width:152px;border-radius:16px;padding:12px 14px}.auth-card .mode-switch{margin-bottom:6px}.auth-helper-card{display:grid;gap:6px;padding:18px;border-radius:22px;border:1px solid var(--line);background:linear-gradient(135deg,#ff92501a,#6dd3ff14),#ffffff05}.auth-helper-card strong{font-size:1rem}.auth-helper-card span{color:var(--muted);line-height:1.5}.auth-field-grid{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:end}.auth-password-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.auth-inline-button{min-width:142px;width:auto;margin-top:14px;white-space:nowrap}.auth-status-row{display:grid;gap:8px;padding:14px 16px;border-radius:18px;border:1px solid var(--line);background:#ffffff08}.auth-status-row.verified{border-color:#ffc06a4d;background:#ffc06a14}.auth-status-pill{display:inline-flex;align-items:center;justify-content:center;width:fit-content;padding:7px 12px;border-radius:999px;background:#6dd3ff24;color:#aee6ff;font-size:.8rem;font-weight:700}.auth-status-row.verified .auth-status-pill{background:#ffc06a29;color:#ffd9a6}.auth-status-copy,.auth-info-banner{color:var(--muted)}.auth-info-banner{border:1px solid rgba(109,211,255,.22);background:#6dd3ff14}.mode-switch{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:20px}.mode-switch button,.ghost-button,.primary-button{border-radius:999px;border:1px solid var(--line);padding:10px 14px;font-size:.95rem;cursor:pointer}.settings-panel .ghost-button,.settings-modal .ghost-button{padding:8px 12px;font-size:.92rem}.mode-switch button,.ghost-button{background:transparent;color:inherit}.mode-switch button.active,.ghost-button.active,.primary-button{background:linear-gradient(135deg,var(--accent),#ffc06a);color:#111;border-color:transparent;font-weight:700}.ghost-button.danger{color:#ffb0b0;border-color:#ff7b7b47}label{display:grid;gap:8px;margin-top:14px}input,textarea,select{width:100%;padding:14px 16px;border-radius:18px;border:1px solid var(--line);background:#ffffff0a;color:inherit}.banner{margin-top:16px;padding:12px 14px;border-radius:16px}.banner.error{color:#ffdede;background:#ff51511f;border:1px solid rgba(255,81,81,.32)}.app-update-shell{position:fixed;inset:16px 16px auto;z-index:40;width:auto;min-height:0;padding:0;display:block;pointer-events:none}.app-update-shell .app-update-banner{pointer-events:auto}.primary-button{width:100%;margin-top:18px}.primary-button:disabled,.ghost-button:disabled{cursor:not-allowed;opacity:.6}.app-shell{display:grid;grid-template-columns:320px 1fr;gap:18px;height:100vh;height:100dvh;overflow:hidden}.app-update-banner{grid-column:1 / -1;margin-top:0;margin-bottom:4px;padding:14px 16px;border:1px solid rgba(109,211,255,.28);background:linear-gradient(135deg,#6dd3ff24,#ff92501a);display:flex;align-items:center;justify-content:space-between;gap:16px}.app-update-copy{display:grid;gap:4px}.app-update-copy span{color:var(--muted)}.sidebar,.chat-panel{background:var(--panel);border:1px solid var(--line);border-radius:28px;-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);min-height:0;overflow:hidden}.chat-panel{position:relative;container-type:inline-size}.sidebar{display:grid;grid-template-rows:auto 1fr;padding:12px 10px 10px}.sidebar-header{display:grid;gap:10px}.sidebar-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px}.sidebar-brand{display:flex;align-items:center;gap:12px;min-width:0}.sidebar-brand-avatar{display:grid;place-items:center;width:42px;height:42px;border-radius:999px;color:#111;font-size:.98rem;font-weight:800;flex-shrink:0;overflow:hidden}.sidebar-brand-copy{min-width:0;display:grid;gap:2px}.sidebar-brand-copy strong{font-size:1.5rem;line-height:1;color:#f6efe6}.sidebar-brand-copy span{color:#ffffff80;font-size:.8rem;font-weight:600}.sidebar-toolbar-actions{display:flex;align-items:center;gap:8px}.sidebar-menu-wrap{position:relative}.sidebar-icon-button{width:40px;height:40px;border-radius:999px;border:1px solid rgba(255,255,255,.08);background:#ffffff0a;color:#d5d0ca;cursor:pointer;flex-shrink:0;font-size:1.35rem;line-height:1}.sidebar-popup-menu{position:absolute;top:46px;right:0;display:grid;gap:4px;min-width:180px;padding:8px;border:1px solid rgba(255,255,255,.08);border-radius:18px;background:#121212f0;box-shadow:0 20px 40px #00000047;z-index:20}.sidebar-popup-action{display:block;width:100%;padding:10px 12px;border:0;border-radius:12px;background:transparent;color:#f6efe6;cursor:pointer;font:inherit;font-weight:600;line-height:1.25;text-align:left;-webkit-text-fill-color:currentColor}.sidebar-popup-action:hover{background:#ffffff0f}.sidebar-popup-action-danger{color:#ffb4b4}.group-builder-card{display:grid;gap:10px;padding:14px;border:1px solid var(--line);border-radius:20px;background:#ffffff08}.group-builder-copy{color:var(--muted);font-size:.92rem}.group-member-chips{display:flex;flex-wrap:wrap;gap:8px}.group-member-chip{border-radius:999px;border:1px solid var(--line);background:#ff92501f;color:inherit;padding:8px 12px;cursor:pointer}.search-input{border-radius:999px}.sidebar-search{display:flex;align-items:center;gap:10px;padding:0 12px;border:1px solid rgba(255,255,255,.08);border-radius:18px;background:#ffffff09}.sidebar-search-icon{color:#ffffff75;font-size:1rem;flex-shrink:0}.sidebar-search-input{border:0;background:transparent;padding:10px 0}.conversation-list,.search-results{display:flex;flex-direction:column;align-items:stretch;gap:2px;margin-top:8px;min-height:0;overflow:auto}.conversation-row{display:flex;align-items:center;gap:12px;width:100%;min-height:58px;padding:9px 12px;border-radius:18px;border:1px solid rgba(255,255,255,.05);background:#ffffff05;color:inherit;text-align:left;cursor:pointer;flex:0 0 auto;transition:background-color .14s ease,border-color .14s ease,transform .14s ease}.conversation-row:hover{background:#ffffff0d}.conversation-meta{display:flex;flex-direction:column;align-items:flex-end;align-self:center;gap:6px;margin-left:auto;justify-content:flex-start;min-height:44px}.conversation-call-actions{display:flex;align-items:center;gap:8px;min-height:28px}.conversation-call-button{width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;padding:0;border:1px solid rgba(255,255,255,.1);border-radius:999px;background:#ffffff0f;color:#ffffffbd;cursor:pointer;flex-shrink:0;transition:background-color .14s ease,border-color .14s ease,color .14s ease,transform .14s ease}.conversation-call-button:hover{background:#ffffff1f;border-color:#6dd3ff47;color:#d8f2ff}.conversation-call-button:active{transform:translateY(1px)}.conversation-group-indicator{position:relative;width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;border:1px solid rgba(255,196,174,.18);border-radius:999px;background:#ffc4ae14;color:#ffc4aeeb;flex-shrink:0;pointer-events:auto}.conversation-badges .conversation-group-badge{display:inline-flex;align-items:center;flex-direction:row;gap:6px}.conversation-badges .conversation-group-indicator{pointer-events:none}.conversation-group-icon{position:absolute;top:0;right:0;bottom:0;left:0;width:20px;height:20px;margin:auto;display:block}.conversation-call-icon{width:14px;height:14px;display:block}.conversation-avatar{display:grid;place-items:center;width:44px;height:44px;border-radius:999px;color:#111;font-size:.96rem;font-weight:800;flex-shrink:0;overflow:hidden;align-self:center}.unread-badge{min-width:22px;padding:4px 7px;border-radius:999px;background:var(--accent);color:#111;font-size:.75rem;font-weight:800;text-align:center}.group-pill{min-width:22px;padding:4px 8px;border-radius:999px;border:1px solid var(--line);color:var(--muted);font-size:.78rem;text-align:center}.conversation-row.active{background:#4a91e338;border-color:#6dd3ff33;box-shadow:inset 0 0 0 1px #ffffff0a}.conversation-copy strong,.conversation-copy span,.conversation-meta span{display:block}.conversation-copy{min-width:0;flex:1;align-self:center}.conversation-topline{display:flex;align-items:center;gap:8px;min-width:0}.conversation-topline strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:1rem}.conversation-date{color:#ffffff85;font-size:.78rem;white-space:nowrap}.conversation-preview{color:#ffffff8f;font-size:.84rem;margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.conversation-state-icons{display:flex;align-items:center;gap:4px;min-height:16px}.conversation-state-icon{color:#ffffff75;font-size:.74rem}.conversation-badges{display:flex;align-items:center;gap:6px;margin-top:auto}.conversation-state-icons,.conversation-badges{display:flex;align-items:center;gap:6px}.conversation-state-icons{min-height:18px;justify-content:flex-end}.conversation-state-icon{color:#ffffff85;font-size:.78rem;line-height:1}.conversation-preview{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-top:2px;max-width:100%;color:var(--muted);font-size:.95rem;line-height:1.25}.group-avatar-fallback{background:#ffc4ae2e;border:1px solid rgba(255,196,174,.34);color:#d66a34}.group-avatar-fallback-icon{width:58%;height:58%;display:block}body[data-theme=day] .group-avatar-fallback{background:#ffe2d7;border-color:#d66a3438;color:#cf6431}.status-dot{width:12px;height:12px;border-radius:999px;background:#ffffff2e}.status-dot.online{background:#8ef58a;box-shadow:0 0 18px #8ef58aa6}.chat-panel{display:flex;flex-direction:column;min-height:0;background:radial-gradient(circle at top left,rgba(201,236,153,.18),transparent 30%),radial-gradient(circle at bottom right,rgba(109,211,255,.12),transparent 24%),linear-gradient(180deg,#add69624,#1423142e),var(--panel)}.chat-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:nowrap;gap:16px;padding:16px 20px;border-bottom:1px solid var(--line)}.chat-header-main{display:flex;align-items:center;gap:10px;min-width:0;flex:1}.chat-back-button{width:36px;height:36px;border-radius:999px;border:1px solid rgba(255,255,255,.1);background:#ffffff0a;color:inherit;cursor:pointer;font-size:1.18rem;line-height:1;flex-shrink:0}.chat-back-button:hover{background:#ffffff1a}.chat-header-main .chat-heading,.chat-header-main .chat-heading-button{flex:1;min-width:0}.chat-heading{display:flex;align-items:center;gap:12px;min-width:0}.chat-heading-button{padding:0;border:0;background:transparent;color:inherit;text-align:left;cursor:pointer}.chat-heading-button.active .chat-heading{opacity:.92}.group-avatar{display:grid;place-items:center;width:44px;height:44px;border-radius:999px;color:#111;font-weight:800;flex-shrink:0}.chat-heading-copy{min-width:0}.chat-title-line{display:flex;align-items:center;gap:8px;min-width:0}.chat-title-line h2{flex:0 1 auto;min-width:0;font-size:1.9rem;line-height:1.05;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-title-member-chips{display:inline-flex;align-items:center;gap:8px;min-width:0;overflow-x:auto;scrollbar-width:none}.chat-title-member-chips::-webkit-scrollbar{display:none}.chat-title-member-chip{display:inline-flex;align-items:center;gap:8px;flex:0 0 auto;max-width:170px;padding:4px 10px 4px 6px;border-radius:999px;border:1px solid var(--line);background:#ffffff0d;font-size:.92rem;font-weight:700;line-height:1}.chat-title-member-avatar{width:26px;height:26px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;overflow:hidden;font-size:.92rem;font-weight:800}.chat-title-member-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.header-actions{display:flex;align-items:center;justify-content:flex-end;flex-shrink:0;flex-wrap:wrap;gap:6px;margin-left:auto}.header-actions .ghost-button{white-space:nowrap}.chat-action-button{display:inline-flex;align-items:center;gap:6px}.chat-action-button.compact{width:36px;height:36px;justify-content:center;padding:0}.chat-action-icon{width:18px;height:18px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.chat-action-icon svg{width:100%;height:100%;display:block}.chat-action-label{line-height:1}.chat-header-menu-wrap{position:relative;flex-shrink:0}.chat-header-menu-button{font-size:1.2rem;letter-spacing:-.1em}.chat-header-popup-menu{position:absolute;top:46px;right:0;display:grid;gap:4px;min-width:190px;padding:8px;border:1px solid rgba(255,255,255,.08);border-radius:18px;background:#121212f0;box-shadow:0 20px 40px #00000047;z-index:20}.chat-header-popup-action{display:flex;align-items:center;gap:10px;width:100%;padding:10px 12px;border:0;border-radius:12px;background:transparent;color:#f6efe6;cursor:pointer;font:inherit;font-weight:600;line-height:1.25;text-align:left;-webkit-text-fill-color:currentColor}.chat-header-popup-action:hover{background:#ffffff0f}.chat-header-popup-action-icon{width:18px;height:18px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.chat-header-popup-action-icon svg{width:100%;height:100%;display:block}@container (max-width: 1520px){.chat-header{gap:8px}.chat-header-main{min-width:0}.chat-header-main .chat-heading,.chat-header-main .chat-heading-button{flex:1 1 auto}.chat-heading{gap:10px}.group-avatar{width:40px;height:40px}.chat-title-line h2{font-size:1.58rem}.chat-title-member-chips{gap:6px}.chat-title-member-chip{max-width:132px;padding:3px 8px 3px 5px;font-size:.84rem}.chat-title-member-avatar{width:22px;height:22px;font-size:.82rem}.header-actions{gap:4px;flex-wrap:nowrap}.chat-action-button{width:36px;height:36px;justify-content:center;padding:0;gap:0}.chat-action-label{display:none}.chat-action-icon{width:16px;height:16px}}.chat-header p{margin-top:4px;color:var(--muted);font-size:.94rem}.group-info-panel{display:grid;gap:14px;padding:18px 24px;border-bottom:1px solid var(--line);background:#ffffff08}.group-info-header{display:grid;gap:4px}.group-info-header strong{font-size:.98rem}.group-info-header span{color:var(--muted);font-size:.9rem}.group-info-grid{display:grid;gap:10px}.group-manage-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.group-manage-input{flex:1;min-width:220px}.group-photo-row{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.group-photo-preview{display:grid;place-items:center}.group-info-photo-copy{color:var(--muted);font-size:.88rem}.group-info-member{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:18px;border:1px solid var(--line);background:#ffffff09}.group-info-member-button,.group-add-result{display:flex;align-items:center;gap:12px;flex:1;min-width:0;padding:0;border:0;background:transparent;color:inherit;text-align:left;cursor:pointer}.group-add-results{display:grid;gap:10px}.group-add-result{padding:12px 14px;border-radius:18px;border:1px solid var(--line);background:#ffffff09}.group-remove-button{flex-shrink:0}.group-info-avatar{display:grid;place-items:center;width:34px;height:34px;border-radius:999px;color:#111;font-size:.84rem;font-weight:800;flex-shrink:0;overflow:hidden}.group-info-copy{display:grid;gap:2px;min-width:0;flex:1}.group-info-copy strong{font-size:.92rem}.group-info-copy span{color:var(--muted);font-size:.84rem}.group-info-status{color:var(--muted);font-size:.8rem;font-weight:700}.group-info-status.online{color:#8fe388}.pinned-strip{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 24px;border-bottom:1px solid var(--line);background:#ffffff0a}.pinned-strip-target{display:flex;align-items:center;gap:16px;flex:1;min-width:0;padding:0;border:0;background:transparent;color:inherit;text-align:left;cursor:pointer}.pinned-thumb{width:52px;height:52px;border-radius:14px;object-fit:cover;border:1px solid var(--line);flex-shrink:0}.pinned-thumb-file{display:grid;place-items:center;background:#ffffff0f;color:var(--muted);font-size:.78rem;font-weight:700}.pinned-copy{display:grid;gap:4px;flex:1}.pinned-copy strong{color:var(--accent-2);font-size:.9rem}.pinned-sender{font-style:normal;font-size:.86rem;font-weight:800}.pinned-copy span{color:var(--muted)}.settings-panel{display:grid;gap:14px;padding:18px 24px;border-bottom:1px solid var(--line);background:#ffffff06}.settings-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;display:grid;place-items:center;padding:24px;background:#0003;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.settings-modal{width:min(960px,calc(100vw - 48px));max-height:calc(100vh - 48px);overflow:auto;border:1px solid var(--line);border-radius:28px;background:var(--panel);box-shadow:0 28px 80px #00000038}.settings-modal-header{position:sticky;top:0;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 24px 14px;border-bottom:1px solid var(--line);background:inherit}.settings-modal-header strong{font-size:1.08rem}.settings-modal .settings-panel{border-bottom:0;background:transparent}.settings-row{display:flex;align-items:center;justify-content:space-between;gap:16px}.call-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:90;display:grid;place-items:center;padding:24px;background:#04070c80;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.call-card{width:min(920px,calc(100vw - 48px));display:grid;grid-template-rows:auto auto auto minmax(0,1fr) auto auto;gap:14px;max-height:calc(100vh - 48px);padding:24px;border:1px solid var(--line);border-radius:32px;background:radial-gradient(circle at top left,rgba(255,146,80,.14),transparent 28%),radial-gradient(circle at bottom right,rgba(109,211,255,.14),transparent 24%),var(--panel-strong);box-shadow:0 32px 96px #00000061;overflow:hidden}.call-card.connecting{background:radial-gradient(circle at top left,rgba(255,167,87,.2),transparent 28%),radial-gradient(circle at bottom right,rgba(255,196,61,.14),transparent 24%),linear-gradient(180deg,rgba(32,24,18,.9) 0%,var(--panel-strong) 100%)}.call-card.connected{background:radial-gradient(circle at top left,rgba(123,227,168,.2),transparent 28%),radial-gradient(circle at bottom right,rgba(109,211,255,.12),transparent 24%),linear-gradient(180deg,rgba(10,28,20,.94) 0%,var(--panel-strong) 100%)}.call-card.video-connected{display:flex;flex-direction:column;gap:0;height:calc(100vh - 48px);max-height:calc(100vh - 48px);max-width:none;overflow:hidden;position:relative;padding:0;width:calc(100vw - 48px)}.connected-chrome{align-items:center;display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:16px;left:0;padding:18px 18px 0;position:absolute;right:0;top:0;z-index:4}.connected-peer-name{color:#dffbe9;font-size:clamp(1rem,2vw,1.45rem);font-weight:800;justify-self:center;letter-spacing:.01em;overflow:hidden;padding:0 16px;text-align:center;text-overflow:ellipsis;text-wrap:balance;white-space:nowrap}.connected-end-button{min-width:100px;padding-inline:16px;justify-self:end}.call-copy{display:grid;gap:4px;padding-left:18px;border-left:4px solid transparent}.call-copy strong{font-size:clamp(1.8rem,3vw,2.8rem);line-height:1}.call-copy.connecting{border-left-color:#ffa757c7}.call-copy.connected{border-left-color:#7be3a8d6}.call-status-pill{align-items:center;align-self:flex-start;border:1px solid rgba(255,255,255,.1);border-radius:999px;color:var(--muted);display:inline-flex;font-size:.74rem;font-weight:800;gap:8px;letter-spacing:.08em;padding:7px 12px;text-transform:uppercase;width:fit-content}.call-status-pill:before{background:currentColor;border-radius:999px;content:"";display:block;flex:0 0 auto;height:8px;width:8px}.call-status-pill.connecting{background:#ffa75724;border-color:#ffa75752;color:#ffb472}.call-status-pill.connecting:before{animation:callStatusPulse 1.3s ease-in-out infinite;box-shadow:0 0 0 6px #ffa7571f}.call-status-pill.connected{background:#7be3a829;border-color:#7be3a861;color:#9af0be}.call-status-pill.connected:before{box-shadow:0 0 0 6px #7be3a81f}.call-card.video-connected .call-copy strong{text-shadow:0 0 24px rgba(123,227,168,.18)}.call-card.connecting .call-copy strong{text-shadow:0 0 20px rgba(255,167,87,.14)}.call-ice-warning{display:grid;gap:4px;padding:12px 14px;border:1px solid rgba(255,196,61,.32);border-radius:18px;background:#ffc43d1a;color:#f8e8bb;font-weight:700}.call-video-layout{position:relative;min-height:min(420px,calc(100vh - 260px));height:min(56vh,520px);border:1px solid var(--line);border-radius:28px;overflow:hidden;background:#ffffff08}.call-remote-video-shell,.call-remote-video,.call-video-fallback{width:100%;min-height:420px;height:100%}.call-remote-video-shell{display:grid;place-items:center;background:#08090b}.call-remote-video{display:block;object-fit:contain;background:#08090b}.call-remote-video.hidden{display:none}.call-video-fallback{display:grid;place-items:center;gap:16px;padding:24px}.call-video-fallback span{color:var(--muted);font-weight:700}.call-local-video-shell{position:absolute;left:18px;top:18px;width:clamp(140px,20vw,208px);aspect-ratio:4 / 5;display:grid;grid-template-rows:30px minmax(0,1fr);border:1px solid rgba(255,255,255,.14);border-radius:22px;overflow:hidden;background:#080a0eeb;box-shadow:0 18px 38px #00000052;cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;will-change:transform;z-index:3}.call-local-video-shell.dragging{cursor:grabbing}.call-local-video-drag-handle{align-items:center;background:#ffffff0d;border:0;display:flex;justify-content:center;pointer-events:none;padding:0;width:100%}.call-local-video-drag-grip{background:#ffffff6b;border-radius:999px;height:4px;width:22px}.call-local-video-shell-content{min-height:0;overflow:hidden}.call-local-video{width:100%;height:100%;object-fit:cover;display:block}.call-local-video-off{display:grid;place-items:center;padding:18px;color:#ffffffb8;font-weight:700;text-align:center}.call-voice-shell{min-height:300px;display:grid;place-items:center;padding:24px;border:1px solid var(--line);border-radius:28px;background:#ffffff08}.call-voice-shell.connecting{border-color:#ffa75733;background:radial-gradient(circle at top,rgba(255,167,87,.14),transparent 36%),#ffffff08}.call-voice-shell.connected{border-color:#7be3a842;background:radial-gradient(circle at top,rgba(123,227,168,.16),transparent 36%),#ffffff08}.call-video-layout.connecting,.call-video-layout.connected{border-color:#ffffff24}.call-video-layout.connecting{box-shadow:inset 0 0 0 1px #ffa7571a}.call-video-layout.connected{box-shadow:inset 0 0 0 1px #7be3a81f}.call-card.video-connected .call-video-layout{flex:1;min-height:0;height:auto;width:100%;border:0;border-radius:inherit}.call-card.video-connected .call-remote-video-shell,.call-card.video-connected .call-remote-video,.call-card.video-connected .call-video-fallback{min-height:0}.call-card.video-connected .call-copy,.call-card.video-connected .call-ice-warning,.call-card.video-connected .call-diagnostics,.call-card.video-connected .call-actions{display:none}.call-diagnostics{display:grid;gap:10px;padding:16px 18px;border:1px solid var(--line);border-radius:22px;background:#0003;min-height:0;max-height:min(28vh,240px);overflow:auto}.call-diagnostics summary{cursor:pointer;color:var(--accent-2);font-weight:700;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:10px}.call-diagnostics summary::-webkit-details-marker{display:none}.call-diagnostics-count{display:inline-grid;place-items:center;min-width:1.7rem;height:1.4rem;padding:0 .45rem;border-radius:999px;background:#6dd3ff29;color:var(--accent-2);font-size:.72rem;font-weight:800}.call-diagnostics-list{display:grid;gap:10px}.call-diagnostics-entry{display:grid;gap:4px;padding:10px 12px;border-radius:16px;background:#ffffff0a}.call-diagnostics-entry span{color:var(--accent-2);font-size:.72rem;letter-spacing:.12em;text-transform:uppercase}.call-diagnostics-entry strong{font-size:.92rem}.call-diagnostics-entry small{color:var(--muted)}.call-diagnostics-entry code{white-space:pre-wrap;color:var(--muted);font-size:.8rem}@keyframes callStatusPulse{0%,to{transform:scale(.9);opacity:.72}50%{transform:scale(1.12);opacity:1}}.call-avatar-card{display:grid;justify-items:center;gap:10px;text-align:center}.call-avatar-image,.call-avatar-fallback{width:112px;height:112px;border-radius:999px}.call-avatar-image{object-fit:cover}.call-avatar-fallback{display:grid;place-items:center;color:#111;font-size:2rem;font-weight:800}.call-avatar-card strong{font-size:1.25rem}.call-avatar-card span{color:var(--muted)}.call-actions{display:flex;align-items:center;justify-content:flex-end;gap:12px;padding-top:2px}.call-primary-button{margin-top:0;width:auto;min-width:132px}.settings-copy{display:grid;gap:4px}.settings-copy strong{font-size:.96rem}.settings-copy span{color:var(--muted);font-size:.9rem}.settings-actions{display:flex;gap:10px;flex-wrap:wrap}.profile-avatar-actions{align-items:center}.profile-avatar-preview{display:grid;place-items:center}.profile-avatar{width:52px;height:52px;border-radius:999px;display:grid;place-items:center;color:#111;font-weight:800;overflow:hidden}.avatar-image{object-fit:cover}.clickable-avatar{cursor:zoom-in}.avatar-preset-grid{max-width:360px}.message-list{position:relative;z-index:1;display:flex;flex-direction:column;gap:12px;padding:24px;overflow:auto;height:100%;min-height:0;background:transparent}.message-history-shell{position:relative;display:grid;flex:1;min-height:0;overflow:hidden}.message-wallpaper{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:0;background:linear-gradient(180deg,#d4ebb93d,#739a6c29),radial-gradient(circle at top left,rgba(213,238,153,.2),transparent 34%),radial-gradient(circle at bottom right,rgba(109,211,255,.14),transparent 28%),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='220' viewBox='0 0 220 220' fill='none'%3E%3Cg stroke='%23698761' stroke-opacity='.34' stroke-width='1.8'%3E%3Ccircle cx='30' cy='34' r='12'/%3E%3Cpath d='M92 28l7 13 15 2-11 10 3 15-14-7-14 7 3-15-11-10 15-2 7-13z'/%3E%3Cpath d='M162 30c9 0 16 7 16 16 0 13-16 22-16 22s-16-9-16-22c0-9 7-16 16-16z'/%3E%3Cpath d='M24 106c7-8 21-8 28 0M20 124c10 11 26 11 36 0'/%3E%3Cpath d='M102 100l22 22M124 100l-22 22'/%3E%3Cpath d='M170 98l9 18 20 3-15 14 4 20-18-10-18 10 4-20-15-14 20-3 9-18z'/%3E%3Cpath d='M32 174h26M45 161v26'/%3E%3Cpath d='M104 172c14 0 21 9 21 21-12 0-21-9-21-21z'/%3E%3Ccircle cx='174' cy='178' r='14'/%3E%3Cpath d='M144 158c10 0 17 7 17 17 0 8-7 17-17 17-10 0-17-9-17-17 0-10 7-17 17-17z'/%3E%3C/g%3E%3C/svg%3E");background-size:auto,auto,auto,220px 220px;background-repeat:no-repeat,no-repeat,no-repeat,repeat}.message-list>*{position:relative;z-index:1}.load-older-button{align-self:center;border:1px solid rgba(255,255,255,.08);border-radius:999px;background:#ffffffe6;color:#3c424ad1;font:inherit;font-size:.82rem;font-weight:700;padding:.65rem 1rem}.load-older-button:disabled{cursor:progress;opacity:.72}.scroll-to-latest-button{position:absolute;right:24px;bottom:108px;width:38px;height:38px;border-radius:999px;border:1px solid rgba(255,255,255,.08);background:#ffffffeb;color:#3c424acc;font-size:1.2rem;line-height:1;display:grid;place-items:center;box-shadow:0 18px 48px #00000038;z-index:8}.scroll-to-latest-button:hover{transform:translateY(-1px)}.message-bubble{max-width:min(70%,620px);padding:10px 12px;border-radius:22px 22px 22px 8px;background:var(--panel-strong);border:1px solid var(--line);position:relative}.message-bubble.visual-media{padding:8px 8px 10px}.message-row{display:flex;align-items:flex-end;gap:10px}.message-row.mine{justify-content:flex-end}.message-row.with-avatar{justify-content:flex-start}.message-avatar{width:38px;height:38px;border-radius:999px;display:grid;place-items:center;color:#111;font-size:.82rem;font-weight:800;flex-shrink:0;margin-bottom:6px;overflow:hidden}.message-bubble.mine{align-self:flex-end;border-radius:22px 22px 8px;background:#6dd3ff1f}.message-bubble p{line-height:1.5}.message-sender{margin-bottom:8px;color:var(--accent-2);font-size:.84rem;font-weight:800;letter-spacing:.02em}.message-forwarded{margin-bottom:8px}.message-forwarded em{color:var(--muted);font-size:.82rem;font-style:italic}.message-quote,.reply-preview-card{display:grid;gap:4px;margin-bottom:10px;padding:10px 12px;border-radius:16px;border:1px solid var(--line);background:#ffffff0a}.message-quote strong,.reply-preview-copy strong{font-size:.84rem}.message-quote span,.reply-preview-copy span{color:var(--muted);font-size:.88rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.message-mention{display:inline-block;margin:0 1px;padding:1px 6px;border-radius:999px;font-weight:700}.message-media{margin-bottom:6px}.message-album-grid{display:grid;gap:4px;margin-bottom:6px;width:min(520px,100%)}.message-album-grid.columns-2{grid-template-columns:repeat(2,minmax(0,1fr))}.message-album-grid.columns-3{grid-template-columns:repeat(3,minmax(0,1fr))}.message-album-tile{padding:0;border:0;background:transparent;overflow:hidden;border-radius:14px;cursor:zoom-in;min-height:140px}.message-album-tile.featured{grid-column:span 2}.message-album-image{display:block;width:100%;height:100%;min-height:140px;object-fit:cover}.message-file-card{display:grid;gap:4px;margin-bottom:10px;padding:12px 14px;border-radius:16px;border:1px solid var(--line);background:#ffffff0a;color:inherit;text-decoration:none}.message-file-card span{color:var(--muted);font-size:.85rem}.message-media-image,.message-media-video{display:block;width:min(360px,100%);max-height:320px;object-fit:cover;border-radius:18px;border:1px solid var(--line);background:#ffffff0a}.message-media-image,.message-media-video{cursor:zoom-in}.media-viewer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;display:grid;place-items:center;padding:32px;background:#07080ae6;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);pointer-events:none}.media-viewer-dialog{display:grid;gap:8px;max-width:min(96vw,1200px);max-height:95vh;pointer-events:auto}.media-viewer-stage{display:grid;place-items:center;overflow:auto;max-width:100%;max-height:calc(95vh - 78px)}.media-viewer-content{display:block;max-width:100%;max-height:calc(95vh - 42px);border-radius:20px;object-fit:contain;background:#ffffff0a}.media-viewer-content.zoomable{cursor:zoom-in;transition:transform .14s ease;transform-origin:center center;max-height:none}.media-viewer-toolbar{display:flex;align-items:center;justify-content:center;gap:10px}.media-viewer-zoom-button{min-width:44px;padding:8px 12px;border-radius:999px;border:1px solid rgba(255,255,255,.16);background:#111111b8;color:#f6efe6;cursor:pointer}.media-viewer-zoom-label{min-width:58px;color:#f6efe6;text-align:center;font-weight:700}.media-viewer-close{position:absolute;top:16px;right:16px;width:38px;height:38px;padding:0;border-radius:999px;border:1px solid rgba(255,255,255,.16);background:#111111b3;color:#f6efe6;font-size:1.5rem;line-height:1;cursor:pointer;pointer-events:auto}.media-viewer-caption{color:var(--muted);text-align:center;word-break:break-word}.camera-capture{position:fixed;top:0;right:0;bottom:0;left:0;z-index:42;display:grid;place-items:center;padding:32px;background:#07080aeb;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);pointer-events:none}.camera-capture-dialog{width:min(92vw,760px);display:grid;gap:14px;pointer-events:auto}.camera-capture-header{display:grid;gap:12px}.camera-capture-title{color:#f6efe6;font-size:1rem;font-weight:800}.camera-capture-mode-switch,.camera-capture-facing-switch{margin-bottom:0}.camera-capture-stage{position:relative;overflow:hidden;min-height:min(70vh,520px);border:1px solid rgba(255,255,255,.12);border-radius:24px;background:radial-gradient(circle at top,rgba(255,214,102,.18),transparent 46%),linear-gradient(180deg,#ffffff0d,#ffffff05)}.camera-capture-video{display:block;width:100%;height:min(70vh,520px);object-fit:cover;background:#00000059}.camera-capture-flip-button{position:absolute;top:12px;right:12px;width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center;border:1px solid rgba(255,255,255,.2);border-radius:999px;background:#080c1294;color:#f6efe6;cursor:pointer;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.camera-capture-flip-button svg{width:20px;height:20px;display:block}.camera-capture-flip-button:disabled{opacity:.48;cursor:not-allowed}.camera-capture-toolbar{display:flex;justify-content:center;gap:10px}.camera-capture-toolbar .ghost-button,.camera-capture-toolbar .primary-button{width:auto;min-width:144px;margin-top:0}.camera-capture-cancel-button,.camera-capture-primary-button{min-height:48px}.camera-capture-toolbar .primary-button.recording{background:linear-gradient(135deg,#ff8585,#ffc06a)}.composer-inline-icon{width:20px;height:20px;display:block}.message-bubble time{display:block;margin-top:2px;color:var(--muted);font-size:.8rem}.message-meta{display:flex;align-items:center;gap:8px}.message-footer{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:1px}.message-actions{display:grid;margin-top:4px}.reaction-list,.quick-actions{display:flex;flex-wrap:wrap;gap:6px}.reaction-chip,.reaction-picker{border-radius:999px;border:1px solid var(--line);background:#ffffff0d;color:inherit;padding:4px 8px;cursor:pointer}.reaction-chip-inner{display:inline-flex;align-items:center;gap:5px}.reaction-chip-emoji{font-size:.72rem;line-height:1}.reaction-chip-count{font-size:.82rem;font-weight:700;line-height:1}.reaction-chip.active{background:#6dd3ff29;border-color:#6dd3ff52}.reaction-picker.active{background:#ffffff1a}.message-menu-trigger{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:999px;border:1px solid rgba(255,255,255,.08);background:#ffffff0a;color:var(--muted);cursor:pointer;font-size:1.05rem;line-height:1;opacity:0;transition:opacity .12s ease,background .12s ease,border-color .12s ease}.message-bubble:hover .message-menu-trigger,.message-bubble:focus-within .message-menu-trigger{opacity:1}.message-menu-trigger:hover{background:#ffffff14;border-color:#ffffff24}.message-menu-layer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:35}.message-context-menu{position:fixed;width:312px;display:grid;gap:12px;padding:14px;border-radius:24px;border:1px solid rgba(126,208,255,.12);background:#121418fa;box-shadow:0 24px 56px #00000042;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);overflow:hidden}body[data-theme=day] .message-context-menu{border-color:#4c74a824;background:#fcfdfaf7;box-shadow:0 18px 44px #46586c29}.message-context-reactions{display:flex;flex-wrap:wrap;gap:8px}.message-context-actions{display:grid;gap:0}.message-context-action{display:flex;align-items:center;gap:12px;width:100%;padding:12px 8px;border-radius:16px;border:1px solid transparent;background:transparent;color:#f6efe6;cursor:pointer;text-align:left;font-size:1rem;font-weight:700}.message-context-action:hover{background:#ffffff0f;border-color:#ffffff14}body[data-theme=day] .message-context-action{color:#22303a}body[data-theme=day] .message-context-action:hover{background:#4c74a814;border-color:#4c74a814}.message-context-action+.message-context-action{border-top:1px solid rgba(255,255,255,.06)}body[data-theme=day] .message-context-action+.message-context-action{border-top-color:#18202a14}.message-context-action-icon{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:12px;background:#ffffff0d;border:1px solid rgba(255,255,255,.08);color:inherit;font-size:1.15rem;line-height:1}body[data-theme=day] .message-context-action-icon{background:#4c74a80f;border-color:#4c74a81a}.message-context-menu .reaction-picker{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;padding:0;border-width:1px;border-radius:999px;background:#ffffff0a;font-size:1.25rem;box-shadow:none}body[data-theme=day] .message-context-menu .reaction-picker{background:#4c74a80a;color:#22303a}.forward-dialog-layer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:36;display:grid;place-items:center;padding:24px;background:#07080a85;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.forward-dialog{display:grid;gap:14px;width:min(520px,calc(100vw - 32px));max-height:min(78vh,760px);padding:20px;border-radius:30px;border:1px solid rgba(126,208,255,.12);background:#121418fa;box-shadow:0 28px 72px #00000057}.forward-dialog-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.forward-dialog-title{display:grid;gap:4px}.forward-dialog-title strong{font-size:1.12rem}.forward-dialog-title span{color:var(--muted);font-size:.94rem}.forward-preview-card{display:grid;gap:4px;padding:14px 16px;border-radius:20px;border:1px solid var(--line);background:#ffffff0a}.forward-preview-card span{color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.forward-dialog-search{width:100%}.forward-dialog-list{display:grid;gap:8px;overflow:auto;min-height:0}.forward-target-row{display:flex;align-items:center;gap:14px;width:100%;padding:12px 14px;border-radius:20px;border:1px solid rgba(255,255,255,.06);background:#ffffff08;color:inherit;cursor:pointer;text-align:left}.forward-target-row:hover{border-color:#7ed0ff33;background:#6dd3ff14}.forward-target-row:disabled{opacity:.6;cursor:wait}.forward-target-avatar{width:48px;height:48px;border-radius:999px;display:grid;place-items:center;flex-shrink:0;overflow:hidden;color:#111;font-size:1rem;font-weight:800}.forward-target-copy{display:grid;gap:3px;min-width:0;flex:1}.forward-target-copy strong,.forward-target-copy span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.forward-target-copy span,.forward-target-row time{color:var(--muted);font-size:.9rem}.forward-empty-state{padding:20px 8px;color:var(--muted);text-align:center}.message-search-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:34;display:grid;place-items:center;padding:18px;background:#04070c85;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.message-search-panel{display:grid;grid-template-rows:auto auto minmax(0,1fr);gap:14px;width:min(720px,calc(100vw - 36px));max-height:min(84vh,820px);padding:20px;border-radius:30px;border:1px solid rgba(126,208,255,.14);background:#121418fa;box-shadow:0 28px 72px #00000057;overflow:hidden}.message-search-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.message-search-title{display:grid;gap:4px}.message-search-title strong{font-size:1.12rem}.message-search-title span{color:var(--muted);font-size:.94rem}.message-search-controls{display:grid;gap:10px}.message-search-toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.message-search-count{margin-left:auto;color:var(--muted);font-size:.88rem;font-weight:700}.message-search-results{display:grid;gap:8px;overflow:auto;min-height:0}.message-search-result{display:grid;grid-template-columns:auto 1fr;gap:12px;align-items:center;width:100%;padding:12px 14px;border-radius:20px;border:1px solid rgba(255,255,255,.06);background:#ffffff08;color:inherit;text-align:left}.message-search-result.active{border-color:#6dd3ff61;background:#6dd3ff14}.message-search-result-avatar-shell{width:42px;height:42px;border-radius:999px;overflow:hidden;display:grid;place-items:center;flex-shrink:0;color:#111;font-size:.85rem;font-weight:800}.message-search-result-copy{min-width:0;display:grid;gap:4px}.message-search-result-topline{display:flex;align-items:center;justify-content:space-between;gap:10px;min-width:0}.message-search-result-topline strong,.message-search-result-topline time{font-size:.92rem}.message-search-result-topline time{color:var(--muted);white-space:nowrap;flex-shrink:0}.message-search-result-preview{color:var(--muted);font-size:.9rem;line-height:1.4;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical}.message-search-empty{padding:18px 14px;border-radius:18px;border:1px dashed rgba(255,255,255,.14);color:var(--muted);text-align:center}.message-search-highlight{padding:0 2px;border-radius:4px;background:#ff9d5c40;color:inherit}.message-status{letter-spacing:-.08em}.message-status.sending{color:#ffb36b;animation:message-status-pulse 1.1s ease-in-out infinite}.message-status.delivered{color:#d7d0c8}.message-status.read{color:var(--accent-2)}@keyframes message-status-pulse{0%,to{opacity:.62}50%{opacity:1}}.empty-state{margin:auto;color:var(--muted)}.timeline-divider{display:flex;justify-content:center;margin:4px 0}.timeline-divider span{padding:6px 12px;border-radius:999px;background:#a4d0912e;color:#ffffffe0;font-size:.84rem;font-weight:700}.timeline-divider.system-event span{background:#a4d0913d}.timeline-call-event{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;width:min(88%,480px);margin:10px auto;padding:14px 16px;border:1px solid rgba(255,255,255,.08);border-radius:22px;background:#ffffff0b;box-shadow:0 10px 24px #00000024}.timeline-call-event.mine{margin-left:auto;margin-right:0;background:linear-gradient(180deg,#6dd3ff21,#6dd3ff14),#ffffff0b;border-color:#6dd3ff2e}.timeline-call-event.other{margin-left:0;margin-right:auto;background:linear-gradient(180deg,#ffffff0b,#ffffff09),#ffffff0b}body[data-theme=day] .timeline-call-event{border-color:#18202a14;background:#ffffffe0}body[data-theme=day] .timeline-call-event.mine{border-color:#6dd3ff38;background:linear-gradient(180deg,#6dd3ff29,#6dd3ff1a),#ffffffe6}body[data-theme=day] .timeline-call-event.other{background:linear-gradient(180deg,#ffffffeb,#ffffffdb),#ffffffe6}.timeline-call-event-icon{width:46px;height:46px;border-radius:999px;display:grid;place-items:center;flex-shrink:0}.timeline-call-event-icon.voice{color:#ff9250;background:#ff925024}.timeline-call-event-icon.video{color:#6dd3ff;background:#6dd3ff24}.timeline-call-event-icon-svg{width:24px;height:24px}.timeline-call-event-copy{display:grid;gap:2px;min-width:0}.timeline-call-event-copy strong{color:inherit;font-size:.98rem;font-weight:800}.timeline-call-event-copy span{color:var(--muted);font-size:.92rem}.timeline-call-event-time{color:var(--muted);font-size:.78rem;white-space:nowrap;align-self:start}.unread-divider{display:flex;justify-content:center;margin:8px 0 12px}.unread-divider span{padding:6px 14px;border-radius:999px;background:#6dd3ff2e;color:var(--accent-2);font-size:.84rem;font-weight:800;border:1px solid rgba(109,211,255,.24)}.composer-shell{padding:20px 24px 24px;border-top:1px solid var(--line);flex-shrink:0}.reply-preview-card{grid-template-columns:1fr auto;align-items:center;margin-bottom:14px}.reply-preview-copy{display:grid;gap:4px;min-width:0}.attachment-preview-card{display:grid;gap:10px;margin-bottom:14px;padding:14px;border:1px solid var(--line);border-radius:20px;background:#ffffff08}.attachment-preview-grid{display:grid;gap:4px;grid-template-columns:repeat(3,minmax(0,1fr))}.attachment-preview-grid-image{display:block;width:100%;aspect-ratio:1 / 1;object-fit:cover;border-radius:16px;border:1px solid var(--line)}.attachment-preview-media img,.attachment-preview-media video{display:block;width:100%;max-width:100%;height:auto;max-height:360px;object-fit:contain;border-radius:16px;border:1px solid var(--line)}.attachment-preview-meta{display:flex;align-items:center;justify-content:space-between;gap:12px;color:var(--muted);font-size:.9rem;min-width:0}.attachment-preview-meta>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.attachment-remove-button{align-items:center;display:inline-flex;gap:6px;padding:6px 10px;min-height:30px;font-size:.8rem;font-weight:700;line-height:1;color:#c7d2dd;border-color:#ffffff1f;background:#ffffff0a;box-shadow:none}.attachment-remove-button:hover{background:#ffffff14;border-color:#ffffff2e}.attachment-remove-button span:first-child{font-size:.95rem;line-height:1}.attachment-remove-button span:last-child{line-height:1}.attachment-preview-audio{display:grid;gap:10px;width:min(320px,100%)}.attachment-preview-audio audio{width:100%}.attachment-preview-file{display:grid;place-items:center;min-height:92px;padding:12px;border-radius:16px;border:1px solid var(--line);background:#ffffff0a;color:var(--muted);text-align:center;word-break:break-word;font-size:.98rem;font-weight:600}.recording-preview-card{display:grid;grid-template-columns:1fr auto;align-items:center;gap:12px;margin-bottom:14px;padding:14px;border:1px solid rgba(255,123,123,.28);border-radius:20px;background:#ff7b7b14}.recording-preview-copy{display:grid;gap:4px}.recording-preview-actions{display:flex;align-items:center;gap:12px}.composer{display:grid;grid-template-columns:1fr auto;align-items:end;gap:10px}.composer-input-shell{display:flex;align-items:center;gap:6px;min-height:56px;padding:6px 14px;border:0;border-radius:28px;background:#1c2228f0;box-shadow:0 10px 18px #00000024}.composer textarea{border:0;background:transparent;color:#f6efe6;box-sizing:border-box;padding:10px 4px;min-height:40px;max-height:100px;overflow-y:hidden;resize:none;font:inherit;line-height:20px;width:100%}.composer textarea:focus,.composer textarea:focus-visible{outline:none;box-shadow:none}.composer textarea::placeholder{color:#9ca3ac;-webkit-text-fill-color:#9ca3ac;opacity:1}.composer textarea::-webkit-input-placeholder{color:#9ca3ac;-webkit-text-fill-color:#9ca3ac}.composer-actions{display:flex;align-items:end}.composer-inline-button{width:36px;height:36px;align-self:center;display:grid;place-items:center;border:0;background:transparent;color:#9ca3ac;cursor:pointer;font-size:1.55rem;line-height:1}.composer-inline-button:disabled{opacity:.45;cursor:not-allowed}.composer-camera-button{color:#7fcfff}.composer-attachment-button{font-size:inherit}.composer-trailing-tools{display:flex;align-items:center;gap:0;margin-left:-2px}.composer-attachment-icon{width:18px;height:18px;display:block}.composer-mic-icon{width:17px;height:17px;display:block}.composer-send-icon{width:18px;height:18px;display:block}.composer-stop-glyph{font-size:1rem;line-height:1}.file-input{display:none}.composer-primary-button{display:grid;place-items:center;width:56px;height:56px;border:0;border-radius:999px;background:#3492eb;color:#fff;cursor:pointer;box-shadow:0 10px 16px #1673d333}.composer-primary-button.recording{background:#ff7b7b24;color:#ffb7b7;border:1px solid rgba(255,123,123,.32);box-shadow:none}.composer-primary-button:disabled{opacity:.45;cursor:not-allowed}body[data-theme=day] .composer-input-shell{background:#fff;box-shadow:0 10px 18px #35546f1f}body[data-theme=day] .composer textarea{color:#18202a}body[data-theme=day] .composer textarea::placeholder{color:#7b828b;-webkit-text-fill-color:#7b828b}body[data-theme=day] .composer textarea::-webkit-input-placeholder{color:#7b828b;-webkit-text-fill-color:#7b828b}body[data-theme=day] .composer-inline-button{color:#7b828b}body[data-theme=day] .composer-camera-button{color:#2d8fd8;background:#2d8fd81f}.emoji-picker-panel{display:grid;gap:12px;margin-bottom:12px;padding:12px;border:1px solid var(--line);border-radius:20px;background:#ffffff08}.emoji-category-tabs{display:flex;flex-wrap:wrap;gap:8px}.emoji-category-tab{padding:8px 12px;border-radius:999px;border:1px solid var(--line);background:#ffffff0a;color:var(--muted);cursor:pointer}.emoji-category-tab.active{background:#ff925029;border-color:#ff925061;color:#f6efe6;font-weight:700}.emoji-picker{display:flex;flex-wrap:wrap;gap:10px}.emoji-chip{width:44px;height:44px;border-radius:14px;border:1px solid var(--line);background:#ffffff0a;color:inherit;cursor:pointer;font-size:1.25rem}.message-audio-card{width:fit-content;margin-bottom:2px}.message-bubble.audio-message{width:fit-content;max-width:min(70%,620px)}.voice-message-card{--voice-progress: 0%;display:inline-grid;gap:0;width:fit-content;max-width:100%;padding:5px 10px 3px;border:1px solid rgba(255,255,255,.08);border-radius:20px;background:#ffffff0a;position:relative;overflow:hidden}.voice-message-shell{display:inline-grid;grid-template-columns:auto auto auto;align-items:center;column-gap:6px;width:fit-content;min-width:0}.voice-message-play{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border:0;border-radius:999px;background:transparent;color:#e8edf0e6;cursor:pointer;font-size:.95rem;line-height:1}.voice-message-play{font-size:1rem}.voice-message-waveform{display:flex;align-items:center;gap:3px;width:fit-content;min-width:0;min-height:14px;overflow:hidden}.voice-message-rate-button{display:inline-flex;align-items:center;justify-content:center;min-width:28px;height:18px;padding:0 7px;border:0;border-radius:999px;background:#9aa4ab38;color:inherit;cursor:pointer;font:inherit;font-size:.62rem;font-weight:800;line-height:1;white-space:nowrap;justify-self:end}.voice-message-rate-button:hover{color:#fff}body[data-theme=day] .voice-message-rate-button:hover{color:#18202a}.voice-message-waveform-bar{width:3px;border-radius:999px;background:#bcc8c461;transform-origin:50% 100%;transition:background-color .14s ease,height .12s linear,opacity .12s linear,transform .12s linear}.voice-message-waveform-bar.active{background:#e4edebe6;opacity:1}.voice-message-waveform-bar.current{background:#fff;box-shadow:0 0 0 1px #ffffff14}.voice-message-card.playing .voice-message-waveform-bar.active{animation:voice-wave-pulse 1s ease-in-out infinite}.voice-message-card.playing .voice-message-waveform-bar.current{animation-duration:.6s}@keyframes voice-wave-pulse{0%,to{opacity:.72;transform:scaleY(.92)}50%{opacity:1;transform:scaleY(1.08)}}.voice-message-meta{display:flex;align-items:center;justify-content:flex-start;gap:0;color:#c4c8cddb;font-size:.7rem;font-weight:700;letter-spacing:.01em;width:fit-content;line-height:1;margin-top:-1px}.voice-message-card.playing .voice-message-rate-button{background:#9aa4ab5c}body[data-theme=day] .voice-message-rate-button{background:#a3aeb738}body[data-theme=day] .voice-message-card.playing .voice-message-rate-button{background:#a3aeb75c}.voice-message-card:not(.playing) .voice-message-rate-button{display:none}.voice-message-card.playing .voice-message-rate-button{margin-left:0}.voice-message-card audio{display:none}@media(max-width:900px){body{overflow:hidden}#root{height:100vh;height:100dvh}.app-shell{grid-template-columns:1fr;min-height:100vh;min-height:100dvh}.app-shell-mobile{display:block;height:100vh;height:100dvh;overflow:hidden;padding:max(10px,env(safe-area-inset-top)) max(10px,env(safe-area-inset-right)) max(10px,env(safe-area-inset-bottom)) max(10px,env(safe-area-inset-left))}.app-update-shell{inset:max(10px,env(safe-area-inset-top)) max(10px,env(safe-area-inset-right)) auto max(10px,env(safe-area-inset-left))}.app-update-banner{display:grid;gap:12px}.app-update-banner .ghost-button{width:100%}.app-shell-mobile .sidebar,.app-shell-mobile .chat-panel{height:100%;min-height:0;border-radius:22px}.app-shell-mobile .sidebar{padding:10px 10px 12px}.app-shell-mobile .sidebar-header{gap:9px}.app-shell-mobile .sidebar-toolbar,.app-shell-mobile .sidebar-brand{gap:11px}.app-shell-mobile .sidebar-brand-avatar{width:38px;height:38px;font-size:.88rem}.app-shell-mobile .sidebar-brand-copy strong{font-size:1.35rem}.app-shell-mobile .sidebar-brand-copy span{font-size:.72rem}.app-shell-mobile .sidebar-toolbar-actions{gap:7px}.app-shell-mobile .sidebar-icon-button{width:36px;height:36px;font-size:1.2rem}.app-shell-mobile .sidebar-popup-menu{top:42px}.app-shell-mobile .sidebar-search{gap:9px;padding:0 11px;border-radius:16px}.app-shell-mobile .sidebar-search-icon{font-size:.9rem}.app-shell-mobile .sidebar-search-input{padding:9px 0}.app-shell-mobile .chat-header{padding:9px 11px;gap:9px}.app-shell-mobile .chat-header-main{gap:7px}.app-shell-mobile .chat-heading{gap:9px}.app-shell-mobile .group-avatar{width:34px;height:34px}.app-shell-mobile .chat-title-line h2{font-size:clamp(.9rem,4vw,1.17rem)}.app-shell-mobile .chat-title-line{gap:5px}.app-shell-mobile .chat-heading-copy .eyebrow,.app-shell-mobile .chat-heading-copy h2,.app-shell-mobile .chat-heading-copy p{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.app-shell-mobile .chat-title-member-chips{display:none}.app-shell-mobile .chat-heading-copy .eyebrow{font-size:.56rem}.app-shell-mobile .chat-header p{font-size:.67rem}.app-shell-mobile .chat-back-button{width:27px;height:27px;font-size:.92rem}.app-shell-mobile .header-actions{gap:4px}.app-shell-mobile .header-actions .ghost-button{padding:5px 7px;font-size:.68rem}.app-shell-mobile .header-actions .chat-action-button{width:36px;height:36px;padding:0;gap:0;justify-content:center}.app-shell-mobile .header-actions .chat-action-icon{width:16px;height:16px}.camera-capture{place-items:stretch;padding:0}.camera-capture .media-viewer-close{top:max(10px,env(safe-area-inset-top));right:max(10px,env(safe-area-inset-right));width:34px;height:34px;z-index:2}.camera-capture-dialog{width:100vw;max-width:none;min-height:100dvh;padding:max(48px,calc(env(safe-area-inset-top) + 36px)) max(12px,env(safe-area-inset-right)) max(12px,env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left));grid-template-rows:auto minmax(0,1fr) auto auto;gap:10px}.camera-capture-header{gap:8px}.camera-capture-title{font-size:.9rem}.camera-capture-header .mode-switch{gap:8px;margin-bottom:0}.camera-capture-header .mode-switch button{padding:9px 10px;font-size:.86rem}.camera-capture-stage{min-height:0;border-radius:18px}.camera-capture-video{height:100%;min-height:0}.camera-capture-flip-button{width:40px;height:40px;top:10px;right:10px}.camera-capture-toolbar{gap:8px}.camera-capture-toolbar .ghost-button,.camera-capture-toolbar .primary-button{min-width:0;flex:1;padding:10px 12px;font-size:.9rem}.app-shell-mobile .composer-camera-button{width:28px;height:28px;padding:0;display:grid;place-items:center;border-radius:999px;background:#5fafe729;color:#8ad5ff;line-height:0;overflow:hidden}.app-shell-mobile .composer-camera-button .composer-inline-icon{width:12px;height:12px}.app-shell-mobile .message-list{padding:16px 12px}.app-shell-mobile .composer-shell{padding:10px 6px}.app-shell-mobile .composer{grid-template-columns:minmax(0,1fr) auto;gap:2px;align-items:center}.app-shell-mobile .composer-input-shell{min-height:42px;gap:1px;padding:4px 6px 4px 2px}.app-shell-mobile .composer textarea{flex:1 1 auto;min-width:0;padding:7px 2px;min-height:32px;line-height:18px}.app-shell-mobile .composer-inline-button{width:24px;height:24px;font-size:1rem}.app-shell-mobile .composer-input-shell>.composer-inline-button:first-child{margin-left:0;margin-right:0}.app-shell-mobile .composer-trailing-tools{margin-left:auto;margin-right:0;justify-content:flex-end}.app-shell-mobile .composer-camera-button{width:24px;height:24px}.app-shell-mobile .composer-primary-button{width:35px;height:35px}.app-shell-mobile .message-search-overlay{position:fixed;align-items:start;justify-items:center;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding:max(12px,env(safe-area-inset-top)) 12px max(12px,env(safe-area-inset-bottom)) 12px}.app-shell-mobile .message-search-panel{width:min(720px,calc(100vw - 24px));height:calc(100dvh - 24px);max-height:none;padding:16px;border-radius:24px;align-self:start}.app-shell-mobile .message-search-result-topline{align-items:flex-start;flex-direction:column}.app-shell-mobile .composer-send-icon,.app-shell-mobile .composer-mic-icon{width:12px;height:12px}.app-shell-mobile .composer-stop-glyph{font-size:.68rem}.message-bubble{max-width:calc(100% - 20px)}.composer-actions{justify-content:flex-end}.settings-row{align-items:flex-start;flex-direction:column}.call-overlay{padding:14px}.call-card{width:min(100%,calc(100vw - 28px));max-height:calc(100dvh - 28px);gap:12px;padding:16px;border-radius:24px;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.call-copy strong{font-size:clamp(1.4rem,7vw,2.1rem)}.call-copy{order:0}.call-ice-warning{order:1;padding:10px 12px}.call-diagnostics{order:3;max-height:min(16vh,144px)}.call-video-layout{order:2;min-height:min(48dvh,360px);height:min(48dvh,360px);border-radius:22px}.call-card.video-connected .call-video-layout{min-height:0;height:auto;border-radius:inherit}.call-card.video-connected{height:calc(100dvh - 28px);max-height:calc(100dvh - 28px);border-radius:24px;width:calc(100vw - 28px)}.connected-chrome{padding:14px 14px 0}.connected-peer-name{font-size:clamp(.95rem,4.2vw,1.15rem);padding:0 10px}.connected-end-button{min-width:88px;padding-inline:14px}.call-remote-video-shell,.call-remote-video,.call-video-fallback,.call-voice-shell{min-height:0}.call-actions{order:4;padding-top:8px;padding-bottom:0;background:transparent;-webkit-backdrop-filter:none;backdrop-filter:none}.call-local-video-shell{left:12px;top:12px;width:clamp(96px,22vw,132px);border-radius:18px}.auth-shell{align-items:start;height:100dvh;padding:max(14px,env(safe-area-inset-top)) max(14px,env(safe-area-inset-right)) max(14px,env(safe-area-inset-bottom)) max(14px,env(safe-area-inset-left));overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.auth-card{width:min(100%,560px);padding:18px;border-radius:24px}.auth-card-header{flex-direction:column;gap:12px}.auth-language-field{width:100%;min-width:0;justify-items:stretch}.auth-language-select{min-width:0}.auth-card h1{font-size:clamp(2.1rem,10vw,3rem)}.auth-copy{max-width:none}.mode-switch{gap:8px}.mode-switch button,.ghost-button,.primary-button{padding:11px 14px}.auth-field-grid,.auth-password-grid{grid-template-columns:1fr}.auth-inline-button{width:100%;min-width:0;margin-top:0}label{margin-top:12px}}.admin-shell{min-height:100vh;padding:24px;display:grid;place-items:center}.admin-card{width:min(100%,720px);border:1px solid var(--line);border-radius:28px;background:var(--panel);-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);box-shadow:0 24px 90px #00000052;padding:28px}.admin-card-wide{width:min(100%,1200px)}.admin-header-row{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:20px}.admin-subtitle{margin-top:8px;color:var(--muted)}.admin-row{display:flex;align-items:center;gap:10px}.admin-stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:20px 0}.admin-stat{border:1px solid var(--line);border-radius:18px;background:var(--panel-strong);padding:14px;display:grid;gap:6px}.admin-stat span{color:var(--muted);font-size:.86rem}.admin-stat strong{font-size:1.4rem}.admin-controls{display:grid;grid-template-columns:1fr auto auto;gap:10px;margin-bottom:16px}.admin-table-wrap{overflow-x:auto}.admin-table{width:100%;border-collapse:collapse;min-width:980px}.admin-table th,.admin-table td{border-bottom:1px solid var(--line);text-align:left;padding:10px 8px;vertical-align:middle}.admin-table th{color:var(--muted);font-size:.85rem;letter-spacing:.04em;text-transform:uppercase}.admin-muted{color:var(--muted);font-size:.9rem}.admin-empty{text-align:center;color:var(--muted);padding:18px}@media(max-width:980px){.admin-shell{padding:14px}.admin-card{border-radius:22px;padding:18px}.admin-header-row{flex-direction:column;align-items:flex-start}.admin-stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-controls{grid-template-columns:1fr}}
