@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap";
:root{--bg-base:#090d16;--bg-surface:#0f172ab8;--bg-elevated:#1e293ba6;--bg-overlay:#0f172ad9;--bg-secondary:#0f172aa6;--bg-tertiary:#1e293b99;--bg-card:#1e293bf2;--border-subtle:#ffffff12;--border-default:#ffffff1f;--border-strong:#93c5fd40;--border-color:#ffffff1a;--glass-border:1px solid #ffffff17;--glass-border-specular:1px solid #93c5fd38;--glass-blur:16px;--text-primary:#f8fafc;--text-secondary:#94a3b8;--text-muted:#64748b;--text-inverse:#090d16;--accent-500:#3b82f6;--accent-400:#60a5fa;--accent-300:#93c5fd;--accent-600:#30afff;--accent-glow:#3b82f640;--accent-gradient:linear-gradient(135deg, #3b82f6 0%, #6366f1 100%);--accent-secondary:#818cf8;--accent-secondary-soft:#a5b4fc;--accent-secondary-glow:#818cf838;--secondary-gradient:linear-gradient(135deg, #818cf8 0%, #c084fc 100%);--accent-tertiary:#f472b6;--accent-tertiary-hover:#fb7185;--accent-tertiary-glow:#f472b64d;--tertiary-gradient:linear-gradient(135deg, #f472b6 0%, #e11d48 100%);--color-online:#34d399;--color-offline:#64748b;--color-error:#f87171;--color-warning:#fbbf24;--color-success:#10b981;--color-danger:#ef4444;--color-danger-strong:#dc2626;--bubble-self:linear-gradient(135deg, #3b82f6eb 0%, #6366f1eb 100%);--bubble-self-border:#93c5fd52;--bubble-peer:#1e293be0;--bubble-peer-border:#ffffff24;--bubble-system:#3b82f61a;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-12:3rem;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:24px;--radius-full:9999px;--shadow-sm:0 1px 3px #0006;--shadow-md:0 4px 16px #00000080;--shadow-lg:0 8px 32px #0009;--shadow-glow:0 0 24px var(--accent-glow);--transition-fast:.12s ease;--transition-base:.2s ease;--transition-normal:.2s ease;--transition-slow:.35s ease;--font-sans:"Inter", system-ui, -apple-system, sans-serif;--color-verified:#38bdf8;--color-sky:#38bdf8;--color-cyan-neon:#00f2fe;--text-on-accent:#fff;--tint-accent-05:#3b82f60d;--tint-accent-08:#3b82f614;--tint-accent-10:#3b82f61a;--tint-accent-12:#3b82f61f;--tint-accent-15:#3b82f626;--tint-accent-20:#3b82f633;--tint-accent-25:#3b82f640;--tint-accent-30:#3b82f64d;--tint-accent-35:#3b82f659;--tint-accent-40:#3b82f666;--tint-error-08:#ef444414;--tint-error-10:#ef44441a;--tint-error-15:#ef444426;--tint-error-25:#ef444440;--tint-error-30:#ef44444d;--wa-bg-dark:#111b21;--wa-bg-elevated:#1f2c34;--wa-text-primary:#e9edef;--wa-text-muted:#8696a0;--wa-border:#cbd5e1;--border-focus:#3b82f680;--bg-input:#0f172a99;--bg-surface-hover:#1e293bcc;--z-base:1;--z-dropdown:100;--z-sticky:110;--z-overlay:120;--z-modal:1100;--z-modal-top:1200;--z-toast:1300;--z-critical:1400}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body{overscroll-behavior:none;background-color:var(--bg-base);height:100%;min-height:100%;color:var(--text-primary);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:15px;line-height:1.6;overflow:hidden}h1{letter-spacing:-.02em;font-size:2rem;font-weight:700}h2{letter-spacing:-.01em;font-size:1.5rem;font-weight:600}h3{font-size:1.25rem;font-weight:600}h4{font-size:1rem;font-weight:600}.visually-hidden{clip:rect(0,0,0,0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.landing-page{min-height:100vh;padding:var(--space-6);background:radial-gradient(ellipse 80% 60% at 25% -10%, #3b82f62e 0%, transparent 60%), radial-gradient(ellipse 70% 50% at 85% 110%, #818cf829 0%, transparent 55%), radial-gradient(circle at 50% 50%, #f472b60f 0%, transparent 45%), var(--bg-base);justify-content:center;align-items:center;display:flex}.landing-card{background:var(--bg-surface);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid var(--border-default);border-radius:var(--radius-xl);width:100%;max-width:440px;padding:var(--space-8);animation:fadeSlideUp var(--transition-slow) ease both;box-shadow:0 16px 40px #0009,0 0 30px #3b82f61f}.landing-logo{align-items:center;gap:var(--space-3);margin-bottom:var(--space-6);display:flex}.landing-logo-icon{background:var(--accent-glow);border:1px solid var(--accent-500);border-radius:var(--radius-md);justify-content:center;align-items:center;width:44px;height:44px;font-size:1.4rem;display:flex}.landing-logo-brand{border-radius:var(--radius-md);background:url(/icon-192x192.png) 50%/cover no-repeat;width:44px;height:44px}.landing-logo h1{background:linear-gradient(135deg, var(--accent-300), var(--accent-500));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-size:1.5rem}.landing-subtitle{color:var(--text-secondary);margin-bottom:var(--space-8);font-size:.875rem}.form-group{gap:var(--space-2);margin-bottom:var(--space-4);flex-direction:column;display:flex}.form-label{color:var(--text-secondary);letter-spacing:.02em;text-transform:uppercase;font-size:.8125rem;font-weight:500}.form-input{width:100%;padding:var(--space-3) var(--space-4);background:var(--bg-elevated);border:1px solid var(--border-default);border-radius:var(--radius-md);color:var(--text-primary);font-family:var(--font-sans);transition:border-color var(--transition-fast), box-shadow var(--transition-fast);outline:none;font-size:.9375rem}.form-input::placeholder{color:var(--text-muted)}.form-input:focus{border-color:var(--accent-500);box-shadow:0 0 0 3px var(--accent-glow)}.form-input.input-error{border-color:var(--color-error);box-shadow:0 0 0 3px #f8514926}.form-hint{color:var(--text-muted);font-size:.75rem;line-height:1.5}.form-hint code{background:var(--bg-overlay);border-radius:var(--radius-sm);color:var(--accent-400);padding:1px 5px;font-size:.7rem}.form-divider{align-items:center;gap:var(--space-3);margin:var(--space-4) 0;color:var(--text-muted);font-size:.75rem;display:flex}.form-divider:before,.form-divider:after{content:"";background:var(--border-subtle);flex:1;height:1px}.btn{justify-content:center;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-5);border-radius:var(--radius-md);font-family:var(--font-sans);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;border:none;font-size:.9375rem;font-weight:500;display:inline-flex}.btn:disabled{opacity:.4;cursor:not-allowed}.btn-primary{background:var(--accent-gradient);color:var(--text-on-accent);width:100%;padding:var(--space-3) var(--space-4);box-shadow:0 4px 14px #3b82f659}.btn-primary:hover:not(:disabled){background:linear-gradient(135deg, var(--accent-400) 0%, var(--accent-secondary) 100%);transform:translateY(-1px);box-shadow:0 6px 20px #3b82f680}.btn-primary:active:not(:disabled){transform:translateY(0)}.btn-secondary{border:1px solid var(--border-default);color:var(--text-secondary);padding:var(--space-3) var(--space-4);background:#ffffff14}.btn-secondary:hover:not(:disabled){color:var(--text-primary);background:#ffffff24;border-color:#ffffff40;transform:translateY(-1px)}.btn-secondary:active:not(:disabled){transform:translateY(0)}.chat-layout{background:var(--bg-base);flex-direction:column;max-width:800px;height:100vh;margin:0 auto;display:flex}.status-bar{align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-5);background:var(--bg-surface);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border-bottom:1px solid var(--border-subtle);z-index:50;flex-shrink:0;min-height:60px;display:flex;position:sticky;top:0}.status-bar-left{align-items:center;gap:var(--space-3);flex:1;min-width:0;display:flex}.status-avatar{border-radius:var(--radius-full);background:var(--bg-elevated);border:1.5px solid var(--border-default);flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;font-size:1rem;display:flex}.status-info{min-width:0}.status-name{white-space:nowrap;text-overflow:ellipsis;font-size:.9375rem;font-weight:600;overflow:hidden}.status-sub{color:var(--text-secondary);white-space:nowrap;text-overflow:ellipsis;font-size:.75rem;overflow:hidden}.status-indicator{align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-3);border-radius:var(--radius-full);flex-shrink:0;font-size:.75rem;font-weight:500;display:flex}.status-indicator.connected{color:var(--color-online);background:#3fb9501f}.status-indicator.disconnected,.status-indicator.reconnecting{color:var(--text-secondary);background:#484f5833}.status-indicator.connecting{color:var(--color-warning);background:#d299221f}.status-dot{border-radius:var(--radius-full);background:currentColor;flex-shrink:0;width:7px;height:7px}.status-indicator.connected .status-dot{animation:2s infinite pulse-dot}.status-indicator.reconnecting .status-dot{animation:1s step-end infinite blink}.status-indicator-dot-only{border-radius:var(--radius-full);background:var(--bg-elevated);border:1px solid var(--border-subtle);flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;display:flex}.status-indicator-dot-only.connected{color:var(--color-success);background:#22c55e1f;border-color:#22c55e4d}.status-indicator-dot-only.connecting{color:#eab308;background:#eab3081f;border-color:#eab3084d}.status-indicator-dot-only.disconnected,.status-indicator-dot-only.reconnecting{color:var(--text-secondary);background:#94a3b81f;border-color:#94a3b84d}.status-indicator-dot-only .status-dot{border-radius:var(--radius-full);background:currentColor;flex-shrink:0;width:8px;height:8px}.status-indicator-dot-only.connected .status-dot{animation:2s infinite pulse-dot;box-shadow:0 0 6px #22c55ecc}.chat-window{padding:var(--space-5);gap:var(--space-3);scroll-behavior:smooth;background:radial-gradient(70% 50% at 85% 15%,#6366f114 0%,#0000 70%),radial-gradient(60% 50% at 15% 80%,#3b82f612 0%,#0000 70%),radial-gradient(50% 40% at 50% 95%,#f472b60d 0%,#0000 60%);flex-direction:column;flex:1;display:flex;overflow-y:auto}.chat-window::-webkit-scrollbar{width:4px}.chat-window::-webkit-scrollbar-track{background:0 0}.chat-window::-webkit-scrollbar-thumb{background:var(--border-default);border-radius:var(--radius-full)}.chat-empty{justify-content:center;align-items:center;gap:var(--space-3);color:var(--text-muted);text-align:center;padding:var(--space-8);flex-direction:column;flex:1;display:flex}.chat-empty-icon{opacity:.4;font-size:2.5rem}.chat-status-center{padding:var(--space-6);flex:1;justify-content:center;align-items:center;display:flex}.chat-sync-card{text-align:center;max-width:380px;padding:var(--space-6) var(--space-5);background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-lg);-webkit-backdrop-filter:var(--glass-blur);flex-direction:column;justify-content:center;align-items:center;animation:.3s fadeIn;display:flex;box-shadow:0 16px 40px #00000080,0 0 25px #3b82f61a}.chat-sync-card.error{background:#ef44440d;border-color:#ef444440}.sync-spinner{border:3px solid #ffffff1a;border-top-color:var(--accent-500);border-right-color:var(--accent-400);width:36px;height:36px;margin-bottom:var(--space-4);border-radius:50%;animation:.8s linear infinite spin}.sync-icon{margin-bottom:var(--space-3);opacity:.9;font-size:2.2rem}.sync-title{color:var(--text-primary);letter-spacing:-.01em;margin:0 0 6px;font-size:1.05rem;font-weight:600}.sync-desc{margin:0 0 var(--space-4) 0;color:var(--text-muted);font-size:.84rem;line-height:1.55}.sync-retry-btn{border-radius:var(--radius-md);cursor:pointer;align-items:center;gap:6px;padding:8px 18px;font-size:.875rem;font-weight:600;transition:all .2s;display:inline-flex}.sync-retry-btn:hover{transform:translateY(-1px);box-shadow:0 4px 16px #3b82f666}.message-row{flex-direction:column;max-width:76%;animation:.2s both fadeSlideUp;display:flex}.message-row.self{align-self:flex-end;align-items:flex-end}.message-row.peer{align-self:flex-start;align-items:flex-start}.message-row.system{align-self:center;align-items:center;max-width:90%}.message-row-inner{align-items:flex-end;gap:var(--space-2);width:100%;display:flex}.message-row.self .message-row-inner{justify-content:flex-end}.message-row.peer .message-row-inner{justify-content:flex-start}.message-row.system .message-row-inner{justify-content:center}.message-peer-avatar{border-radius:var(--radius-full);-webkit-user-select:none;user-select:none;cursor:default;flex-shrink:0;justify-content:center;align-items:center;width:28px;min-width:28px;height:28px;margin-bottom:2px;font-size:.75rem;font-weight:700;line-height:1;display:flex}.message-content-wrapper{flex-direction:column;min-width:0;max-width:100%;display:flex}.message-row.self .message-content-wrapper{align-items:flex-end}.message-row.peer .message-content-wrapper{align-items:flex-start}.message-row.system .message-content-wrapper{align-items:center}.message-bubble{padding:var(--space-3) var(--space-4);border-radius:var(--radius-lg);word-break:break-word;font-size:.9375rem;line-height:1.5}.message-row.self .message-bubble{background:var(--bubble-self);border:1px solid var(--bubble-self-border);border-bottom-right-radius:var(--radius-sm);color:var(--text-on-accent);box-shadow:0 4px 14px #3b82f638}.message-row.peer .message-bubble{background:var(--bubble-peer);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border:1px solid var(--bubble-peer-border);border-bottom-left-radius:var(--radius-sm);color:var(--text-primary);box-shadow:0 4px 16px #00000059,inset 0 1px #ffffff14}.message-row.system .message-bubble{background:var(--bubble-system);color:var(--accent-300);text-align:center;border-radius:var(--radius-full);padding:var(--space-1) var(--space-4);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid #3b82f640;font-size:.8125rem}.message-row.system.security-notice{max-width:88%}.message-row.system.security-notice .message-bubble{color:var(--color-warning);text-align:center;border-radius:var(--radius-lg);padding:var(--space-2) var(--space-4);background:#fbbf2414;border:1px solid #fbbf2459;font-size:.8rem;font-weight:500;line-height:1.5}.message-text-content{white-space:pre-wrap;word-break:break-word;transition:max-height .25s;position:relative}.message-text-clamped{max-height:160px;overflow:hidden;-webkit-mask-image:linear-gradient(#000 60%,#0000 100%);mask-image:linear-gradient(#000 60%,#0000 100%)}.read-more-actions{align-items:center;gap:var(--space-3);margin-top:6px;padding-top:4px;display:flex}.read-more-toggle-btn{color:var(--accent-300);cursor:pointer;border-radius:var(--radius-sm);transition:all var(--transition-fast);text-underline-offset:3px;background:0 0;border:none;align-items:center;gap:4px;padding:2px 4px;font-size:.8125rem;font-weight:600;text-decoration:underline;display:inline-flex}.read-more-toggle-btn:hover{color:var(--text-on-accent);background:#ffffff1a}.message-row.peer .read-more-toggle-btn{color:var(--accent-400)}.read-mode-modal-btn{color:var(--text-primary);cursor:pointer;border-radius:var(--radius-sm);transition:all var(--transition-fast);background:#ffffff14;border:1px solid #ffffff26;align-items:center;gap:4px;padding:2px 8px;font-size:.75rem;font-weight:500;display:inline-flex}.read-mode-modal-btn:hover{background:#ffffff2e;border-color:#ffffff4d}.message-sender{color:var(--accent-400);padding:0 var(--space-1);margin-bottom:2px;font-size:.75rem;font-weight:600}.message-meta{color:var(--text-muted);padding:0;font-size:.6875rem}.message-row.peer .message-meta,.message-row.peer .message-meta-row{color:#e2e8f0bf!important}.message-row.self .message-meta,.message-row.self .message-meta-row{color:#ffffffe0!important}.message-meta-row{color:var(--text-muted);margin-top:var(--space-1);padding:0 var(--space-1);align-items:center;gap:4px;font-size:.6875rem;display:flex}.msg-edited-label{opacity:.8;-webkit-user-select:none;user-select:none;margin-right:2px;font-size:.65rem;font-style:italic}.message-forwarded-badge{color:var(--text-muted);-webkit-user-select:none;user-select:none;align-items:center;gap:4px;margin-bottom:4px;font-size:.7rem;font-style:italic;display:inline-flex}.message-row.peer .message-forwarded-badge{color:#e2e8f0bf!important}.message-row.self .message-forwarded-badge{color:#fffc!important}.forwarded-icon{font-size:.75rem;font-style:normal}.forwarded-text{font-weight:500}.receipt-icon{-webkit-user-select:none;user-select:none;vertical-align:middle;transition:color var(--transition-fast), filter var(--transition-fast);justify-content:center;align-items:center;line-height:1;display:inline-flex}.receipt-icon .receipt-svg{vertical-align:middle;width:auto;height:12px;display:inline-block}.receipt-icon.receipt-pending{opacity:.75;font-size:.75rem}.receipt-icon.receipt-sent,.receipt-icon.receipt-delivered{color:var(--text-muted)}.receipt-icon.receipt-read{color:var(--color-cyan-neon);filter:drop-shadow(0 1px 2px #0009)drop-shadow(0 0 5px #00f2fe99)}.message-row.self .receipt-icon.receipt-sent,.message-row.self .receipt-icon.receipt-delivered{color:#ffffffd1;filter:drop-shadow(0 1px 2px #0009)}.message-row.self .receipt-icon.receipt-read{color:var(--color-cyan-neon);filter:drop-shadow(0 1px 2px #000000f2)drop-shadow(0 0 8px #00f2fee6)}.message-bubble-wrapper{flex-direction:column;display:inline-flex;position:relative}.ctx-dropdown{z-index:99990;transform-origin:0 0;background:#1e2730;border:1px solid #ffffff1a;border-radius:12px;flex-direction:column;gap:2px;min-width:210px;padding:6px;animation:.12s cubic-bezier(.16,1,.3,1) both ctxFadeIn;display:flex;position:fixed;overflow:hidden;box-shadow:0 16px 48px #000000b8,0 4px 12px #0006}@keyframes ctxFadeIn{0%{opacity:0;transform:scale(.92)translateY(-4px)}to{opacity:1;transform:scale(1)translateY(0)}}.ctx-emoji-row{justify-content:space-around;align-items:center;gap:2px;padding:6px 4px 8px;display:flex}.ctx-emoji-btn{cursor:pointer;background:0 0;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;font-size:1.5rem;line-height:1;transition:transform .12s cubic-bezier(.34,1.56,.64,1),background .12s;display:flex}.ctx-emoji-btn:hover,.ctx-emoji-btn:active{background:#ffffff1a;transform:scale(1.35)}.ctx-emoji-btn--active{background:#63b3ed2e;box-shadow:inset 0 0 0 1.5px #63b3ed80}.ctx-emoji-btn--active:hover{background:#63b3ed47}.ctx-separator{background:#ffffff12;flex-shrink:0;height:1px;margin:2px 0}.ctx-item{cursor:pointer;color:#ffffffd9;text-align:left;-webkit-user-select:none;user-select:none;background:0 0;border:none;border-radius:8px;align-items:center;gap:12px;width:100%;padding:9px 12px;font-size:.9rem;font-weight:500;transition:background .1s,color .1s;display:flex}.ctx-item:hover,.ctx-item:active{color:var(--text-on-accent);background:#ffffff12}.ctx-item-icon{text-align:center;opacity:.85;flex-shrink:0;width:22px;font-size:1rem}.ctx-item-label{flex:1}.ctx-item-badge{color:#ffffff59;white-space:nowrap;flex-shrink:0;font-size:.7rem}.ctx-item--pinned .ctx-item-icon{filter:drop-shadow(0 0 3px #fbbf24cc)}.ctx-item--danger{color:var(--color-error)}.ctx-item--danger:hover,.ctx-item--danger:active{color:var(--color-error);background:#ef44441f}.ctx-backdrop{z-index:99990;-webkit-backdrop-filter:blur(4px);background:#0000008c;align-items:flex-end;animation:.2s both ctxBackdropIn;display:flex;position:fixed;inset:0}@keyframes ctxBackdropIn{0%{opacity:0}to{opacity:1}}.ctx-bottom-sheet{width:100%;padding:8px 8px max(16px, env(safe-area-inset-bottom,16px));background:#1e2730;border-top:1px solid #ffffff14;border-top-left-radius:20px;border-top-right-radius:20px;flex-direction:column;gap:2px;max-height:85dvh;animation:.25s cubic-bezier(.16,1,.3,1) both ctxSheetUp;display:flex;overflow-y:auto}@keyframes ctxSheetUp{0%{opacity:.5;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}.ctx-bottom-sheet-handle{background:#fff3;border-radius:2px;flex-shrink:0;width:36px;height:4px;margin:0 auto 8px}.ctx-bottom-sheet-actions{flex-direction:column;gap:2px;display:flex}.ctx-bottom-sheet .ctx-item{border-radius:10px;padding:12px 16px;font-size:.95rem}.ctx-bottom-sheet .ctx-emoji-btn{width:44px;height:44px;font-size:1.7rem}.message-quote-box{border-left:3px solid var(--accent-500);border-radius:var(--radius-sm);cursor:pointer;-webkit-user-select:none;user-select:none;background:#00000040;flex-direction:column;margin-bottom:6px;padding:4px 8px;font-size:.75rem;transition:background .15s,border-left-color .15s,transform .12s;display:flex}.message-quote-box:hover{border-left-color:var(--accent-400);background:#00000061;transform:translate(2px)}.message-quote-box:active{transform:scale(.98)}.message-row.self .message-quote-box{background:#00000061!important;border-left:3px solid #67e8f9!important}.message-row.self .message-quote-box:hover{background:#00000080!important;border-left-color:#a5f3fc!important}@keyframes highlightPulse{0%{filter:brightness(1.3);box-shadow:0 0 #3b82f6cc,0 0 20px #3b82f666}35%{filter:brightness(1.4);box-shadow:0 0 0 8px #3b82f666,0 0 25px #3b82f680}70%{filter:brightness(1.1);box-shadow:0 0 0 14px #3b82f600,0 0 15px #3b82f633}to{filter:brightness();box-shadow:0 0 #3b82f600}}.message-row.highlight-pulse .message-bubble{animation:1.8s cubic-bezier(.2,.8,.2,1) highlightPulse;border-color:var(--accent-400)!important}.quote-sender{color:var(--accent-300);margin-bottom:2px;font-size:.72rem;font-weight:700}.message-row.self .quote-sender{font-weight:700;color:#67e8f9!important}.quote-text{color:#ffffffd1;white-space:nowrap;text-overflow:ellipsis;max-width:240px;overflow:hidden}.message-row.self .quote-text{opacity:.95;color:var(--text-on-accent)!important}.reaction-pills-container{flex-wrap:wrap;gap:4px;margin-top:4px;padding:0 2px;display:flex}.reaction-pill{background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-full);cursor:pointer;transition:all var(--transition-fast);color:var(--text-primary);-webkit-user-select:none;user-select:none;align-items:center;gap:4px;padding:2px 8px;font-size:.75rem;display:inline-flex}.reaction-pill:hover{border-color:var(--accent-500);background:var(--bg-elevated);transform:scale(1.05)}.reaction-pill.active{border-color:var(--accent-500);color:var(--accent-300);background:#3b82f629}.reaction-count{font-size:.7rem;font-weight:600}.reply-preview-bar{background:var(--bg-elevated);border:1px solid var(--border-default);border-left:4px solid var(--accent-500);border-radius:var(--radius-md);justify-content:space-between;align-items:center;margin-bottom:8px;padding:8px 12px;animation:.18s both fadeSlideUp;display:flex}.reply-preview-content{flex-direction:column;gap:2px;display:flex;overflow:hidden}.reply-preview-label{color:var(--text-secondary);font-size:.75rem}.reply-preview-sender{color:var(--accent-400)}.reply-preview-snippet{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;max-width:380px;font-size:.8125rem;overflow:hidden}.reply-preview-cancel{color:var(--text-muted);cursor:pointer;border-radius:var(--radius-sm);transition:color var(--transition-fast), background var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;padding:4px 8px;font-size:1rem;display:flex}.reply-preview-cancel:hover{color:var(--color-error);background:#f851491a}.edit-preview-bar{background:var(--bg-elevated);border:1px solid var(--border-default);border-left:4px solid var(--accent-500);border-radius:var(--radius-md);justify-content:space-between;align-items:center;margin-bottom:8px;padding:8px 12px;animation:.18s both fadeSlideUp;display:flex}.edit-preview-content{flex-direction:column;gap:2px;display:flex;overflow:hidden}.edit-preview-label{color:var(--accent-400);font-size:.75rem;font-weight:600}.edit-preview-snippet{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;max-width:380px;font-size:.8125rem;overflow:hidden}.edit-preview-cancel{color:var(--text-muted);cursor:pointer;border-radius:var(--radius-sm);transition:color var(--transition-fast), background var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;padding:4px 8px;font-size:1rem;display:flex}.edit-preview-cancel:hover{color:var(--color-error);background:#f851491a}.status-typing-label{color:var(--color-online);align-items:center;gap:4px;font-size:.75rem;font-weight:500;animation:1.5s ease-in-out infinite pulse;display:inline-flex}.typing-bubble-container{flex-direction:column;gap:3px;display:flex}.typing-author{color:var(--accent-400);margin-left:var(--space-1);font-size:.6875rem;font-weight:600}.typing-indicator{padding:var(--space-2) var(--space-4);background:var(--bubble-peer);border:1px solid var(--bubble-peer-border);border-radius:var(--radius-lg);border-bottom-left-radius:var(--radius-sm);align-items:center;gap:4px;width:fit-content;animation:.2s both fadeSlideUp;display:flex}.typing-dot{border-radius:var(--radius-full);background:var(--color-online);width:6px;height:6px;animation:1.2s infinite typing-bounce}.typing-dot:nth-child(2){animation-delay:.2s}.typing-dot:nth-child(3){animation-delay:.4s}.chat-input-area{padding:var(--space-4) var(--space-5);background:var(--bg-surface);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border-top:1px solid var(--border-subtle);flex-shrink:0}.chat-input-row{align-items:flex-end;gap:8px;width:100%;display:flex}.chat-input-pill,.chat-input-wrapper{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);min-height:48px;transition:border-color var(--transition-fast), box-shadow var(--transition-fast), background var(--transition-fast);background:#1e293bb8;border:1px solid #ffffff1f;border-radius:24px;flex:1;align-items:center;padding:4px 6px 4px 10px;display:flex;box-shadow:0 4px 16px #00000038,inset 0 1px #ffffff14}.chat-input-pill:focus-within,.chat-input-wrapper:focus-within{background:#1e293be6;border-color:#60a5fa8c;box-shadow:0 0 0 3px #3b82f633,inset 0 1px #ffffff24}.chat-pill-icon-btn{cursor:pointer;width:36px;min-width:36px;height:36px;color:var(--text-secondary);transition:all var(--transition-fast) ease;-webkit-user-select:none;user-select:none;background:0 0;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;margin:0;padding:0;line-height:1;display:flex}.chat-pill-icon-btn:hover:not(:disabled){color:var(--text-on-accent);background:#ffffff14;transform:scale(1.08)}.chat-pill-icon-btn:active:not(:disabled){transform:scale(.92)}.chat-pill-icon-btn:disabled{opacity:.35;cursor:not-allowed}.chat-emoji-btn{font-size:1.35rem}.chat-attach-btn{font-size:1.25rem}.chat-textarea{color:var(--text-on-accent);font-family:var(--font-sans);resize:none;background:0 0;border:none;outline:none;flex:1;align-items:center;min-height:24px;max-height:120px;padding:8px 6px;font-size:.9375rem;line-height:1.45;display:flex}.chat-textarea::placeholder{color:#ffffff73;font-size:.9375rem}.chat-floating-action-btn{cursor:pointer;width:48px;min-width:48px;height:48px;transition:all var(--transition-fast) cubic-bezier(.4, 0, .2, 1);-webkit-user-select:none;user-select:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;margin:0;padding:0;display:flex}.chat-mic-btn{color:var(--text-on-accent);background:linear-gradient(135deg,#3b82f638 0%,#818cf82e 100%);border:1px solid #93c5fd59;font-size:1.3rem;box-shadow:0 4px 14px #3b82f638,inset 0 1px #fff3}.chat-mic-btn:hover:not(:disabled){background:linear-gradient(135deg,#3b82f659 0%,#818cf847 100%);border-color:#93c5fd99;transform:scale(1.06);box-shadow:0 6px 18px #3b82f659,inset 0 1px #ffffff4d}.chat-send-btn{background:var(--accent-gradient);color:var(--text-on-accent);border:none;box-shadow:0 4px 16px #3b82f673}.chat-send-btn:hover:not(:disabled){transform:scale(1.06);box-shadow:0 6px 20px #3b82f699}.chat-floating-action-btn:active:not(:disabled){transform:scale(.92)}.chat-floating-action-btn:disabled{opacity:.4;cursor:not-allowed;box-shadow:none}.session-info-bar{padding:var(--space-2) var(--space-5);background:var(--bg-elevated);border-bottom:1px solid var(--border-subtle);align-items:center;gap:var(--space-2);color:var(--text-muted);flex-shrink:0;font-size:.75rem;display:flex}.session-info-bar code{color:var(--accent-400);background:var(--accent-glow);border-radius:var(--radius-sm);-webkit-user-select:all;user-select:all;cursor:text;padding:1px 6px;font-size:.6875rem}@keyframes fadeSlideUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse-dot{0%,to{opacity:1}50%{opacity:.4}}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}@keyframes typing-bounce{0%,60%,to{transform:translateY(0)}30%{transform:translateY(-5px)}}.status-btn{background:var(--bg-overlay);border:1px solid var(--border-default);color:var(--text-secondary);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast) ease;-webkit-user-select:none;user-select:none;align-items:center;gap:4px;padding:2px 8px;font-size:.6875rem;display:inline-flex}.status-btn:hover{background:var(--bg-surface);color:var(--text-primary);border-color:var(--border-focus)}.member-badge-btn{color:var(--accent-300);background:#3b82f61f;border:1px solid #3b82f64d;font-weight:500}.member-badge-btn:hover{border-color:var(--accent-400);color:var(--text-on-accent);background:#3b82f638}.status-circle-btn{justify-content:center;align-items:center;width:32px;height:32px;font-size:.85rem;display:inline-flex;border-radius:var(--radius-full)!important;padding:0!important}.subgroup-breadcrumb-link{color:var(--accent-400);cursor:pointer;transition:all var(--transition-fast) ease;text-overflow:ellipsis;white-space:nowrap;background:#3b82f61f;border:1px solid #3b82f640;border-radius:6px;align-items:center;gap:3px;max-width:140px;padding:1px 6px;font-size:.72rem;font-weight:500;text-decoration:none;display:inline-flex;overflow:hidden}.subgroup-breadcrumb-link:hover{border-color:var(--accent-400);color:var(--accent-300);background:#3b82f638}.subgroup-breadcrumb-text{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.status-actions-toggle{display:none!important}.status-actions-group{align-items:center;gap:6px;display:flex}.modal-backdrop{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:1000;padding:var(--space-4);background:#000000a6;justify-content:center;align-items:center;animation:.2s fadeIn;display:flex;position:fixed;inset:0}.member-drawer{background:var(--bg-surface);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid var(--border-default);border-radius:var(--radius-lg);flex-direction:column;width:100%;max-width:400px;max-height:80vh;animation:.25s cubic-bezier(.16,1,.3,1) scaleUp;display:flex;overflow:hidden;box-shadow:0 16px 40px #0009,0 0 25px #3b82f61a}.member-drawer-header{padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--border-subtle);background:var(--bg-elevated);justify-content:space-between;align-items:flex-start;display:flex}.member-drawer-title{color:var(--text-primary);margin:0;font-size:1.125rem;font-weight:600}.member-drawer-subtitle{color:var(--text-muted);margin-top:2px;font-size:.8125rem}.member-drawer-subtitle .highlight{color:var(--accent-400);font-weight:500}.member-drawer-close{color:var(--text-muted);cursor:pointer;border-radius:var(--radius-sm);transition:all var(--transition-fast) ease;background:0 0;border:none;padding:4px 8px;font-size:1.125rem}.member-drawer-close:hover{background:var(--bg-overlay);color:var(--text-primary)}.member-drawer-body{padding:var(--space-4) var(--space-5);flex:1;overflow-y:auto}.member-list{gap:var(--space-2);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.member-item{align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);background:var(--bg-base);border:1px solid var(--border-subtle);transition:background var(--transition-fast) ease;display:flex}.member-item:hover{background:var(--bg-elevated)}.member-item-me{background:#10b9810d;border-color:#10b9814d}.member-avatar{border-radius:var(--radius-full);background:var(--accent-glow);border:1px solid var(--accent-500);width:36px;height:36px;color:var(--accent-300);flex-shrink:0;justify-content:center;align-items:center;font-size:.9375rem;font-weight:600;display:flex;position:relative}.member-online-dot{background:var(--color-success);border:2px solid var(--bg-surface);border-radius:50%;width:10px;height:10px;position:absolute;bottom:0;right:0}.member-details{flex-direction:column;flex:1;min-width:0;display:flex}.member-name{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:.875rem;font-weight:500;overflow:hidden}.member-badge-you{color:var(--accent-400);margin-left:4px;font-size:.75rem;font-weight:400}.member-status-text{color:var(--text-muted);font-size:.75rem}.member-empty{text-align:center;color:var(--text-muted);padding:var(--space-6) 0;font-size:.875rem}.forward-modal-card{background:var(--bg-surface);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid var(--border-default);border-radius:var(--radius-lg);flex-direction:column;width:100%;max-width:440px;max-height:85vh;animation:.25s cubic-bezier(.16,1,.3,1) scaleUp;display:flex;overflow:hidden;box-shadow:0 16px 40px #0009,0 0 25px #38bdf81a}.forward-modal-header{padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items:flex-start;display:flex}.forward-modal-title{color:var(--text-primary);margin:0;font-size:1.125rem;font-weight:600}.forward-modal-subtitle{color:var(--text-secondary);margin:2px 0 0;font-size:.78125rem}.forward-modal-close{color:var(--text-muted);cursor:pointer;border-radius:var(--radius-sm);transition:color var(--transition-fast);background:0 0;border:none;padding:4px 8px;font-size:1.25rem}.forward-modal-close:hover{color:var(--color-error)}.forward-preview-box{background:var(--bg-elevated);border-bottom:1px solid var(--border-subtle);padding:10px 16px}.forward-preview-label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:2px;font-size:.6875rem;font-weight:600;display:block}.forward-preview-text{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:.8125rem;overflow:hidden}.forward-search-box{border-bottom:1px solid var(--border-subtle);padding:10px 16px}.forward-search-input{background:var(--bg-input,#ffffff0d);border:1px solid var(--border-default);border-radius:var(--radius-md);width:100%;color:var(--text-primary);transition:border-color var(--transition-fast);outline:none;padding:8px 12px;font-size:.84375rem}.forward-search-input:focus{border-color:var(--accent-500)}.forward-error-alert{color:var(--color-error);background:#f871711a;border-bottom:1px solid #f8717133;padding:8px 16px;font-size:.78125rem}.forward-list-body{flex:1;max-height:320px;padding:8px 0;overflow-y:auto}.forward-empty{text-align:center;color:var(--text-muted);margin:0;padding:24px 16px;font-size:.8125rem}.forward-list{margin:0;padding:0;list-style:none}.forward-item{cursor:pointer;transition:background var(--transition-fast);-webkit-user-select:none;user-select:none;align-items:center;gap:12px;padding:8px 16px;display:flex}.forward-item:hover{background:#ffffff0a}.forward-item.selected{background:#38bdf814}.forward-item-avatar{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;font-size:.875rem;font-weight:600;display:flex;overflow:hidden}.forward-avatar-img{object-fit:cover;width:100%;height:100%}.forward-item-info{flex-direction:column;flex:1;gap:2px;display:flex;overflow:hidden}.forward-item-title{color:var(--text-primary);align-items:center;gap:6px;font-size:.84375rem;font-weight:500;display:flex}.forward-item-badge{background:var(--bg-elevated);border:1px solid var(--border-default);border-radius:var(--radius-sm);color:var(--text-muted);padding:1px 5px;font-size:.65rem}.forward-item-desc{color:var(--text-muted);font-size:.71875rem}.forward-item-check{flex-shrink:0}.forward-item-check input[type=checkbox]{cursor:pointer;width:16px;height:16px;accent-color:var(--accent-500)}.forward-modal-footer{border-top:1px solid var(--border-subtle);background:var(--bg-surface);justify-content:flex-end;gap:8px;padding:12px 16px;display:flex}.forward-btn-cancel{border:1px solid var(--border-default);border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);background:0 0;padding:8px 14px;font-size:.8125rem}.forward-btn-cancel:hover{color:var(--text-primary);background:#ffffff0d}.forward-btn-submit{background:var(--accent-500);border-radius:var(--radius-md);color:#0b141a;cursor:pointer;transition:filter var(--transition-fast);border:none;padding:8px 18px;font-size:.8125rem;font-weight:600}.forward-btn-submit:hover:not(:disabled){filter:brightness(1.1)}.forward-btn-submit:disabled{opacity:.5;cursor:not-allowed}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes scaleUp{0%{opacity:0;transform:scale(.95)translateY(10px)}to{opacity:1;transform:scale(1)translateY(0)}}.chat-app-container{background:var(--bg-base);width:100vw;height:100dvh;display:flex;position:relative;overflow:hidden}.chat-app-container:before{content:"";filter:blur(60px);pointer-events:none;z-index:0;background:radial-gradient(circle,#3b82f62e 0%,#6366f114 50%,#0000 70%);border-radius:50%;width:55vw;max-width:650px;height:55vw;max-height:650px;position:absolute;top:-15%;left:-10%}.chat-app-container:after{content:"";filter:blur(65px);pointer-events:none;z-index:0;background:radial-gradient(circle,#818cf829 0%,#f472b617 45%,#0000 70%);border-radius:50%;width:55vw;max-width:650px;height:55vw;max-height:650px;position:absolute;bottom:-15%;right:-10%}.chat-sidebar{background:var(--bg-surface);width:400px;min-width:360px;max-width:450px;-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border-right:1px solid var(--border-subtle);transition:transform var(--transition-normal) ease;z-index:10;flex-direction:column;flex-shrink:0;display:flex;position:relative}.sidebar-header{-webkit-backdrop-filter:blur(20px)saturate(180%);backdrop-filter:blur(20px)saturate(180%);z-index:10;background:#0f172ad9;border-bottom:1px solid #ffffff14;flex-direction:column;padding:14px 16px;display:flex;position:relative;overflow:hidden}.sidebar-header:before{content:"";filter:blur(28px);pointer-events:none;z-index:0;background:radial-gradient(circle,#3b82f64d 0%,#6366f129 45%,#0000 70%);width:190px;height:130px;position:absolute;top:-50px;left:-20px}.sidebar-header:after{content:"";filter:blur(26px);pointer-events:none;z-index:0;background:radial-gradient(circle,#a855f738 0%,#f472b624 45%,#0000 70%);width:150px;height:110px;position:absolute;top:-40px;right:-10px}.sidebar-brand-row{z-index:1;justify-content:space-between;align-items:center;width:100%;display:flex;position:relative}.sidebar-brand-title{align-items:center;gap:10px;display:flex}.brand-logo-badge{width:36px;height:36px;transition:all var(--transition-fast) ease;background:linear-gradient(135deg,#3b82f63d 0%,#818cf824 100%);border:1px solid #93c5fd61;border-radius:11px;flex-shrink:0;justify-content:center;align-items:center;display:flex;box-shadow:0 4px 14px #3b82f640,inset 0 1px #ffffff4d}.brand-logo-badge:hover{transform:scale(1.06);box-shadow:0 6px 18px #3b82f666,inset 0 1px #ffffff73}.brand-title-text{letter-spacing:-.03em;align-items:baseline;font-size:1.35rem;font-weight:800;line-height:1;display:flex}.brand-wuzz{color:var(--text-on-accent);text-shadow:0 2px 12px #ffffff2e}.brand-chat{background:linear-gradient(135deg, var(--accent-400) 0%, #a78bfa 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;margin-left:2px}.sidebar-brand-actions{align-items:center;gap:8px;display:flex}.sidebar-profile-btn{cursor:pointer;transition:transform var(--transition-fast) cubic-bezier(.4, 0, .2, 1);background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;margin:0;padding:0;display:flex}.sidebar-profile-btn:hover{transform:scale(1.08)}.sidebar-profile-btn:active{transform:scale(.95)}.sidebar-profile-avatar{border:1.5px solid #ffffff40;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;font-size:.875rem;font-weight:700;display:flex;position:relative;box-shadow:0 4px 14px #0006,inset 0 1px #ffffff59}.sidebar-profile-status-dot{background:var(--color-success);border:2px solid #0f172a;border-radius:50%;width:10px;height:10px;position:absolute;bottom:-1px;right:-1px;box-shadow:0 0 6px #22c55ecc}.sidebar-install-btn{color:var(--accent-300);cursor:pointer;letter-spacing:.02em;transition:all var(--transition-fast) ease;white-space:nowrap;background:#3b82f626;border:1px solid #3b82f659;border-radius:9999px;align-items:center;gap:5px;padding:4px 10px;font-size:.75rem;font-weight:600;display:inline-flex}.sidebar-install-btn:hover{border-color:var(--accent-400);color:var(--text-on-accent);background:#3b82f640;transform:translateY(-1px);box-shadow:0 2px 10px #3b82f64d}.sidebar-install-btn:active{transform:translateY(0)}.sidebar-install-btn .install-icon{font-size:.85rem}.sidebar-action-btn,.sidebar-header-btn{border:1px solid var(--border-default,#ffffff1a);color:var(--text-muted);border-radius:var(--radius-md,8px);cursor:pointer;width:34px;height:34px;transition:all var(--transition-fast,.15s) ease;-webkit-user-select:none;user-select:none;background:#ffffff0d;flex-shrink:0;justify-content:center;align-items:center;font-size:1rem;display:inline-flex;position:relative}.sidebar-action-btn:hover,.sidebar-header-btn:hover{color:var(--text-primary);background:#ffffff1f;transform:translateY(-1px)}.sidebar-action-btn:active,.sidebar-header-btn:active{transform:translateY(0)}.sidebar-action-btn.push-active{color:var(--accent-400);background:#3b82f62e;border-color:#3b82f680;box-shadow:0 0 10px #3b82f64d}.sidebar-action-btn.push-active:hover{border-color:var(--accent-300);color:var(--text-on-accent);background:#3b82f64d}.sidebar-action-btn.push-denied{opacity:.6;border-color:#ef444466}.sidebar-push-toast{background:var(--bg-surface,#1e293b);color:var(--text-primary);border:1px solid var(--accent-500);border-radius:var(--radius-md,8px);text-align:center;margin-top:2px;padding:6px 12px;font-size:.78rem;font-weight:500;animation:.2s ease-in-out fadeIn;box-shadow:0 4px 14px #0000004d}.in-app-toast-banner{top:calc(56px + env(safe-area-inset-top,0px) + 12px);z-index:var(--z-toast);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);color:var(--text-primary);border:1px solid var(--border-strong);box-shadow:0 12px 32px #0000008c, 0 0 16px var(--accent-glow);border-radius:var(--radius-full);cursor:pointer;-webkit-user-select:none;user-select:none;max-width:min(100vw - 32px,520px);transition:transform var(--transition-fast) ease, border-color var(--transition-fast) ease, box-shadow var(--transition-fast) ease;background:#0f172af0;align-items:center;gap:10px;padding:8px 16px;font-size:.85rem;font-weight:500;animation:.28s cubic-bezier(.16,1,.3,1) inAppToastSlideDown;display:inline-flex;position:fixed;left:50%;transform:translate(-50%)}.in-app-toast-banner:hover{border-color:var(--accent-400);box-shadow:0 14px 36px #000000a6, 0 0 20px var(--accent-glow);transform:translate(-50%)translateY(2px)}.in-app-toast-icon{flex-shrink:0;align-items:center;font-size:1.05rem;display:flex}.in-app-toast-message{text-align:left;-webkit-line-clamp:2;-webkit-box-orient:vertical;flex:1;min-width:0;line-height:1.35;display:-webkit-box;overflow:hidden}.in-app-toast-close{color:var(--text-muted);cursor:pointer;background:#ffffff14;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:20px;height:20px;margin-left:2px;font-size:.72rem;transition:background .15s,color .15s;display:flex}.in-app-toast-close:hover{color:var(--text-primary);background:#fff3}@media (max-width:768px){.in-app-toast-banner{top:calc(56px + env(safe-area-inset-top,0px) + 8px);gap:8px;max-width:calc(100vw - 20px);padding:7px 12px;font-size:.8rem}}@keyframes inAppToastSlideDown{0%{opacity:0;transform:translate(-50%)translateY(-14px)}to{opacity:1;transform:translate(-50%)translateY(0)}}.sidebar-user-info{align-items:center;gap:var(--space-3);background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-md);min-width:0;transition:all var(--transition-fast) ease;padding:6px 10px;display:flex}.sidebar-user-info:hover{border-color:var(--border-default);background:var(--bg-surface-hover,#ffffff0a)}.sidebar-user-card{align-items:center;gap:var(--space-3);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-radius:var(--radius-lg);margin-top:var(--space-2);transition:all var(--transition-fast) cubic-bezier(.4, 0, .2, 1);background:linear-gradient(135deg,#1e293bb8 0%,#0f172ad9 100%);border:1px solid #ffffff1a;border-top-color:#ffffff38;padding:10px 12px;display:flex;position:relative;overflow:hidden;box-shadow:0 4px 20px #00000059,inset 0 1px #ffffff1a}.sidebar-user-card:hover{background:linear-gradient(135deg,#1e293be6 0%,#1e3a8a59 100%);border-color:#93c5fd99 #60a5fa73 #60a5fa73;transform:translateY(-1px);box-shadow:0 6px 24px #3b82f62e,inset 0 1px #ffffff2e}.sidebar-user-edit-hint{color:var(--text-muted);opacity:.55;transition:all var(--transition-fast) ease;flex-shrink:0;justify-content:center;align-items:center;margin-left:auto;display:flex}.sidebar-user-card:hover .sidebar-user-edit-hint{opacity:1;color:var(--accent-300);transform:translate(2px)}.sidebar-avatar{border-radius:var(--radius-full);background:var(--accent-glow);border:1px solid var(--accent-500);width:40px;height:40px;color:var(--accent-300);flex-shrink:0;justify-content:center;align-items:center;font-size:1rem;font-weight:600;display:flex}.sidebar-user-details{flex-direction:column;min-width:0;display:flex}.sidebar-user-name{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:.9375rem;font-weight:600;overflow:hidden}.sidebar-user-handle{color:var(--text-muted);font-size:.75rem}.sidebar-logout-btn{border:1px solid var(--border-default);color:var(--text-muted);border-radius:var(--radius-md);cursor:pointer;width:32px;height:32px;transition:all var(--transition-fast) ease;background:0 0;justify-content:center;align-items:center;font-size:1rem;display:flex}.sidebar-logout-btn:hover{color:var(--color-error);background:#ef44441a;border-color:#ef44444d}.sidebar-search-box{padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border-subtle)}.search-input-wrapper{align-items:center;width:100%;display:flex;position:relative}.search-input-icon{opacity:.6;pointer-events:none;font-size:.85rem;position:absolute;left:12px}.sidebar-search-input{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid var(--border-default);border-radius:var(--radius-full);width:100%;color:var(--text-primary);transition:all var(--transition-fast) ease;background:#1e293b73;outline:none;padding:8px 34px;font-size:.875rem}.sidebar-search-input:focus{border-color:var(--accent-400);box-shadow:0 0 0 3px var(--accent-glow);background:#1e293bb3}.search-clear-btn{color:var(--text-muted);cursor:pointer;border-radius:var(--radius-full);background:0 0;border:none;justify-content:center;align-items:center;padding:4px;font-size:.8rem;display:flex;position:absolute;right:8px}.search-clear-btn:hover{color:var(--text-primary)}.sidebar-filter-pills{scrollbar-width:none;border-bottom:1px solid var(--border-subtle);background:0 0;align-items:center;gap:8px;padding:8px 16px;display:flex;overflow-x:auto}.sidebar-filter-pills::-webkit-scrollbar{display:none}.filter-pill{border-radius:var(--radius-full);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#ffffffb8;cursor:pointer;white-space:nowrap;transition:all var(--transition-fast) ease;-webkit-user-select:none;user-select:none;background:#1e293b8c;border:1px solid #ffffff14;align-items:center;gap:6px;padding:5px 13px;font-size:.8125rem;font-weight:500;display:flex}.filter-pill:hover{color:var(--text-on-accent);background:#334155a6;border-color:#ffffff29}.filter-pill.active{color:var(--text-on-accent);background:linear-gradient(135deg,#3b82f647 0%,#818cf838 100%);border:1px solid #93c5fd73;font-weight:600;transform:translateY(-.5px);box-shadow:0 2px 10px #3b82f647,inset 0 1px #ffffff40}.filter-pill-badge{background:var(--tertiary-gradient);color:var(--text-on-accent);border-radius:var(--radius-full);text-align:center;min-width:16px;padding:1px 6px;font-size:.6875rem;font-weight:700;box-shadow:0 1px 6px #f472b659}.sidebar-fab{background:var(--accent-gradient);width:54px;height:54px;color:var(--text-on-accent);cursor:pointer;z-index:60;transition:all var(--transition-fast) cubic-bezier(.4, 0, .2, 1);border:none;border-radius:16px;justify-content:center;align-items:center;display:none;position:absolute;bottom:74px;right:20px;box-shadow:0 4px 16px #3b82f673}.sidebar-fab:hover{background:linear-gradient(135deg, var(--accent-400) 0%, var(--accent-secondary) 100%);transform:scale(1.06);box-shadow:0 6px 22px #3b82f699}.sidebar-fab:active{transform:scale(.95)}.mobile-bottom-nav{background:var(--bg-elevated);border-top:1px solid var(--border-subtle);z-index:50;justify-content:space-around;align-items:center;height:56px;padding:0 8px;display:none;position:sticky;bottom:0;left:0;right:0}.bottom-nav-item{color:var(--text-muted);cursor:pointer;transition:color var(--transition-fast) ease;background:0 0;border:none;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:2px;padding:6px 0;display:flex;position:relative}.bottom-nav-item:hover,.bottom-nav-item.active{color:var(--accent-400)}.bottom-nav-icon{font-size:1.15rem;line-height:1}.bottom-nav-label{font-size:.6875rem;font-weight:500}.bottom-nav-badge{background:var(--tertiary-gradient);color:var(--text-on-accent);border-radius:var(--radius-full);text-align:center;min-width:14px;padding:1px 5px;font-size:.625rem;font-weight:700;position:absolute;top:2px;right:25%;box-shadow:0 1px 6px #f472b666}.mobile-back-btn{color:var(--text-primary);border-radius:var(--radius-full);cursor:pointer;width:36px;height:36px;transition:background var(--transition-fast) ease;background:0 0;border:none;justify-content:center;align-items:center;margin-right:-4px;display:none}.mobile-back-btn:hover{background:#ffffff14}.sidebar-body{padding:var(--space-2) 0;flex:1;overflow-y:auto}.sidebar-section-title{text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);padding:0 var(--space-4);margin-bottom:var(--space-2);font-size:.75rem;font-weight:600}.conversations-list{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.conversation-item{align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);cursor:pointer;border-bottom:1px solid var(--border-subtle);transition:background var(--transition-fast) ease;display:flex}.conversation-item:hover{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#1e293b73}.conversation-item.active{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-left:3px solid var(--accent-500);background:#3b82f61f;box-shadow:inset 0 0 24px #3b82f60f}.conv-details{flex-direction:column;flex:1;justify-content:center;min-width:0;display:flex}.conv-top{justify-content:space-between;align-items:center;margin-bottom:2px;display:flex}.conv-name{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:.9375rem;font-weight:600;overflow:hidden}.conv-time{color:var(--text-muted);margin-left:var(--space-2);flex-shrink:0;font-size:.6875rem}.conv-bottom{justify-content:space-between;align-items:center;gap:var(--space-2);display:flex}.conv-last-msg{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:.8125rem;overflow:hidden}.conv-unread-badge{background:var(--tertiary-gradient);color:var(--text-on-accent);border-radius:var(--radius-full);flex-shrink:0;justify-content:center;align-items:center;min-width:18px;height:18px;padding:0 5px;font-size:.6875rem;font-weight:700;animation:.15s cubic-bezier(.175,.885,.32,1.275) both popIn;display:flex;box-shadow:0 2px 8px #f472b673}.conv-actions{align-items:center;gap:4px;display:none}.conversation-item:hover .conv-actions{display:flex}.conv-delete-btn{color:var(--text-muted);cursor:pointer;border-radius:var(--radius-sm);transition:all var(--transition-fast) ease;background:0 0;border:none;padding:2px 5px;font-size:.875rem;line-height:1}.conv-delete-btn:hover{color:var(--color-error);background:#ef444426}.conv-pin-btn{color:var(--text-muted);cursor:pointer;border-radius:var(--radius-sm);transition:all var(--transition-fast) ease;background:0 0;border:none;padding:2px 5px;font-size:.8125rem;line-height:1}.conv-pin-btn:hover{color:var(--accent-400);background:#38bdf826}.conv-pin-btn.active{color:var(--accent-400)}.conv-pinned-indicator{color:var(--accent-400);align-items:center;margin-left:2px;font-size:.75rem;line-height:1;display:inline-flex}@keyframes popIn{0%{opacity:0;transform:scale(0)}to{opacity:1;transform:scale(1)}}.sidebar-empty{padding:var(--space-6) var(--space-4);text-align:center;color:var(--text-muted);font-size:.875rem}.chat-main-pane{z-index:10;background:0 0;flex-direction:column;flex:1;min-width:0;height:100%;max-height:100%;display:flex;position:relative;overflow:hidden}.mobile-menu-btn{color:var(--text-primary);cursor:pointer;background:0 0;border:none;padding:4px 8px;font-size:1.25rem;display:none}.chat-welcome-placeholder{padding:var(--space-8);background:radial-gradient(60% 50%,#3b82f614 0%,#0000 60%),0 0;flex:1;justify-content:center;align-items:center;display:flex;position:relative}.welcome-content{text-align:center;max-width:440px;animation:.3s both fadeSlideUp}.welcome-icon{width:72px;height:72px;margin:0 auto var(--space-4);border-radius:var(--radius-xl);background:#3b82f61f;border:1px solid #93c5fd4d;justify-content:center;align-items:center;font-size:2.25rem;display:flex;box-shadow:0 0 30px #3b82f640}.welcome-content h2{color:var(--text-primary);margin-bottom:var(--space-2);font-size:1.5rem;font-weight:600}.welcome-content p{color:var(--text-secondary);font-size:.9375rem;line-height:1.6}@media (max-width:768px){.mobile-menu-btn{display:none!important}.mobile-bottom-nav{height:calc(56px + env(safe-area-inset-bottom,0px));padding-bottom:env(safe-area-inset-bottom,0px);background:var(--bg-elevated);border-top:1px solid var(--border-subtle);z-index:50;flex-shrink:0;display:flex}.sidebar-fab{bottom:calc(56px + 16px + env(safe-area-inset-bottom,0px));z-index:60;display:flex;right:16px}.mobile-back-btn{display:flex}.chat-app-container{width:100%;height:100%;position:fixed;inset:0;overflow:hidden}.chat-app-container.mobile-list-active .chat-sidebar{width:100vw;min-width:100vw;max-width:100vw;height:100%;max-height:100%;box-shadow:none;border-right:none;flex-direction:column;display:flex;position:relative;overflow:hidden;transform:none}.chat-app-container.mobile-list-active .chat-main-pane,.chat-app-container.mobile-chat-active .chat-sidebar{display:none!important}.chat-app-container.mobile-chat-active .chat-main-pane{flex-direction:column;width:100vw;min-width:100vw;max-width:100vw;height:100%;max-height:100%;display:flex;position:relative;overflow:hidden}.chat-sidebar{border-right:none;width:100vw;min-width:100vw;max-width:100vw;height:100%;max-height:100%;position:relative;overflow:hidden;transform:none}.sidebar-user-info{display:none}.sidebar-header{flex-shrink:0;padding:10px 14px}.brand-title-text{font-size:1.18rem}.brand-logo-badge{border-radius:9px;width:32px;height:32px}.sidebar-profile-avatar{width:32px;height:32px;font-size:.8125rem}.sidebar-search-box{padding:var(--space-2) var(--space-3);flex-shrink:0}.sidebar-filter-pills{padding:6px var(--space-3);flex-shrink:0}.sidebar-body{overscroll-behavior:contain;flex:1;min-height:0;overflow-y:auto}.status-bar{z-index:50;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);padding:var(--space-2) var(--space-3);background:#0f172ae0;flex-shrink:0;min-height:56px;position:sticky;top:0}.status-avatar{width:34px;height:34px;font-size:.9rem}.status-name{font-size:.875rem}.member-badge-btn{padding:2px 6px;font-size:.6875rem}.status-btn .status-btn-text{display:none}.status-btn.status-icon-btn{justify-content:center;align-items:center;width:32px;height:32px;font-size:.85rem;display:inline-flex;border-radius:var(--radius-full)!important;padding:0!important}.subgroup-breadcrumb-link{max-width:110px;padding:1px 5px;font-size:.6875rem}.status-actions-toggle{transition:transform var(--transition-fast) ease, background var(--transition-fast) ease;font-size:1.05rem;font-weight:700;display:inline-flex!important}.status-actions-toggle.active{color:var(--color-error)!important;background:#ef444426!important;border-color:#ef44444d!important}.status-actions-group.collapsed{display:none!important}.status-actions-group.expanded{align-items:center;gap:6px;animation:.22s cubic-bezier(.16,1,.3,1) forwards slideInActions;display:flex!important}@keyframes slideInActions{0%{opacity:0;transform:translate(12px)scale(.95)}to{opacity:1;transform:translate(0)scale(1)}}.chat-window{overscroll-behavior:contain;min-height:0;padding:var(--space-3) var(--space-3);flex:1;overflow-y:auto}.chat-input-area{z-index:40;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);padding:var(--space-2) var(--space-3);padding-bottom:max(8px, env(safe-area-inset-bottom,0px));background:#0f172ae0;flex-shrink:0;position:sticky;bottom:0}.emoji-picker-popover{max-width:calc(100vw - 16px);bottom:calc(100% + 6px);left:8px;right:8px}.emoji-grid-container{grid-template-columns:repeat(7,1fr)}.chat-input-hints{display:none!important}.chat-layout{max-width:100%}.message-row{max-width:93%}.message-peer-avatar{width:26px;min-width:26px;height:26px;font-size:.7rem}.landing-card{padding:var(--space-6)}}@media (min-width:769px){.mobile-bottom-nav,.sidebar-fab,.mobile-back-btn{display:none!important}}.chat-emoji-btn{cursor:pointer;border-radius:var(--radius-md);transition:transform var(--transition-fast) ease, opacity var(--transition-fast) ease;-webkit-user-select:none;user-select:none;background:0 0;border:none;justify-content:center;align-items:center;padding:0 4px 0 0;font-size:1.35rem;line-height:1;display:flex}.chat-emoji-btn:hover:not(:disabled){transform:scale(1.15)}.chat-emoji-btn:active:not(:disabled){transform:scale(.92)}.chat-emoji-btn.active{filter:drop-shadow(0 0 6px #60a5fa99)}.chat-emoji-btn:disabled{opacity:.4;cursor:not-allowed}.chat-attach-btn{color:var(--text-secondary);cursor:pointer;border-radius:var(--radius-md);transition:all var(--transition-fast) ease;-webkit-user-select:none;user-select:none;background:0 0;border:none;justify-content:center;align-items:center;padding:0 .4rem;font-size:1.25rem;display:flex}.chat-attach-btn:hover:not(:disabled){color:var(--accent-400);background:#ffffff0d}.chat-attach-btn:disabled{opacity:.4;cursor:not-allowed}.emoji-picker-popover{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:var(--radius-xl);z-index:100;background:#0f172af2;border:1px solid #ffffff24;flex-direction:column;max-width:380px;max-height:290px;animation:.18s cubic-bezier(.16,1,.3,1) fadeSlideUp;display:flex;position:absolute;bottom:calc(100% + 8px);left:16px;right:16px;overflow:hidden;box-shadow:0 12px 36px #0009,inset 0 1px #ffffff29}.emoji-picker-header{background:#ffffff08;border-bottom:1px solid #ffffff14;justify-content:space-between;align-items:center;padding:8px 12px;display:flex}.emoji-category-tabs{scrollbar-width:none;align-items:center;gap:4px;display:flex;overflow-x:auto}.emoji-category-tabs::-webkit-scrollbar{display:none}.emoji-category-tab{color:var(--text-muted);border-radius:var(--radius-full);cursor:pointer;white-space:nowrap;transition:all var(--transition-fast) ease;background:0 0;border:1px solid #0000;padding:4px 8px;font-size:.78rem;font-weight:600}.emoji-category-tab:hover{color:var(--text-primary);background:#ffffff14}.emoji-category-tab.active{color:var(--text-on-accent);background:#3b82f647;border-color:#93c5fd66;box-shadow:0 2px 8px #3b82f64d}.emoji-picker-close-btn{color:var(--text-muted);cursor:pointer;border-radius:var(--radius-sm);transition:color var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;padding:4px 6px;font-size:.85rem;display:flex}.emoji-picker-close-btn:hover{color:var(--text-on-accent)}.emoji-grid-container{scrollbar-width:thin;grid-template-columns:repeat(8,1fr);gap:3px;max-height:230px;padding:10px;display:grid;overflow-y:auto}.emoji-grid-item{cursor:pointer;border-radius:var(--radius-md);transition:transform var(--transition-fast), background var(--transition-fast);-webkit-user-select:none;user-select:none;background:0 0;border:none;justify-content:center;align-items:center;padding:6px 2px;font-size:1.4rem;line-height:1;display:flex}.emoji-grid-item:hover{background:#ffffff1f;transform:scale(1.22)}.emoji-grid-item:active{transform:scale(.92)}.media-preview-bar{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-md) var(--radius-md) 0 0;border-bottom:none;align-items:center;gap:.75rem;padding:.5rem .75rem;animation:.15s ease-out fadeIn;display:flex}.media-preview-thumb-box{border-radius:var(--radius-sm);background:var(--bg-elevated);border:1px solid var(--border-default);flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;display:flex;position:relative;overflow:hidden}.media-preview-thumb{object-fit:cover;width:100%;height:100%}.media-preview-file-icon{font-size:1.5rem}.media-preview-info{flex-direction:column;flex:1;min-width:0;display:flex}.media-preview-filename{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:.8125rem;font-weight:500;overflow:hidden}.media-preview-size{color:var(--text-muted);font-size:.6875rem}.media-preview-error{color:var(--color-error)}.media-preview-cancel{color:var(--text-muted);cursor:pointer;border-radius:var(--radius-sm);transition:all var(--transition-fast) ease;background:0 0;border:none;padding:4px 8px;font-size:1rem}.media-preview-cancel:hover:not(:disabled){color:var(--color-error);background:#ef444426}.sending-spinner{animation:1s infinite alternate pulse;display:inline-block}.chat-main-pane{position:relative}.chat-main-pane.chat-drag-over{outline:2px dashed var(--accent-500);outline-offset:-4px}.chat-drag-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:50;pointer-events:none;background:#0f172ad9;justify-content:center;align-items:center;animation:.2s ease-out fadeIn;display:flex;position:absolute;inset:0}.drag-overlay-card{text-align:center;padding:var(--space-8);background:var(--bg-surface);border:2px dashed var(--accent-400);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);max-width:360px}.drag-overlay-icon{margin-bottom:var(--space-2);font-size:3rem;animation:1s infinite alternate bounce;display:block}.drag-overlay-title{color:var(--text-primary);margin-bottom:4px;font-size:1.125rem;font-weight:600}.drag-overlay-subtitle{color:var(--text-secondary);font-size:.8125rem}.message-image-wrapper{border-radius:var(--radius-md);cursor:pointer;background:var(--bg-elevated);max-width:320px;transition:opacity var(--transition-fast) ease, transform var(--transition-fast) ease;margin-bottom:.375rem;position:relative;overflow:hidden}.message-image-wrapper:hover{opacity:.92;transform:scale(1.01)}.message-image-img{object-fit:cover;border-radius:var(--radius-md);width:100%;max-height:280px;display:block}.message-video-wrapper{border-radius:var(--radius-md);background:var(--bg-elevated);max-width:320px;margin-bottom:.375rem;overflow:hidden}.message-video{background:var(--bg-elevated);border-radius:var(--radius-md);width:100%;max-height:320px;display:block}.media-preview-play{color:var(--text-on-accent);background:var(--bg-overlay);pointer-events:none;justify-content:center;align-items:center;font-size:.875rem;display:flex;position:absolute;inset:0}.lightbox-overlay{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:2000;background:#000000e6;flex-direction:column;animation:.2s ease-out fadeIn;display:flex;position:fixed;inset:0}.lightbox-header{z-index:10;background:#0f172abf;border-bottom:1px solid #ffffff1a;justify-content:space-between;align-items:center;padding:.75rem 1.5rem;display:flex}.lightbox-title{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;max-width:400px;font-size:.9375rem;font-weight:500;overflow:hidden}.lightbox-controls{align-items:center;gap:.5rem;display:flex}.lightbox-btn{color:var(--text-primary);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast) ease;background:#ffffff1a;border:1px solid #ffffff26;padding:.375rem .75rem;font-size:.8125rem;font-weight:500}.lightbox-btn:hover:not(:disabled){background:#fff3;border-color:#ffffff4d}.lightbox-btn:disabled{opacity:.4;cursor:not-allowed}.lightbox-close-btn{color:var(--color-error);background:#ef444433;border-color:#ef444466;padding:.375rem .625rem;font-size:1rem}.lightbox-close-btn:hover{color:var(--text-on-accent);background:#ef444466}.lightbox-body{cursor:zoom-out;flex:1;justify-content:center;align-items:center;padding:1.5rem;display:flex;overflow:auto}.lightbox-image{object-fit:contain;border-radius:var(--radius-md);cursor:default;-webkit-user-select:none;user-select:none;max-width:90vw;max-height:85vh;box-shadow:0 25px 50px -12px #00000080}.message-doc-card{border-radius:var(--radius-md);min-width:220px;max-width:320px;transition:all var(--transition-fast) ease;background:#0f172a73;border:1px solid #ffffff14;align-items:center;gap:.75rem;margin-bottom:.375rem;padding:.625rem .875rem;display:flex}.message-doc-card:hover{background:#0f172aa6;border-color:#ffffff26}.doc-card-badge{border-radius:var(--radius-sm);width:42px;height:48px;box-shadow:var(--shadow-sm);border:1px solid #ffffff1a;flex-direction:column;flex-shrink:0;justify-content:center;align-items:center;display:flex}.doc-card-icon{font-size:1.25rem;line-height:1}.doc-card-ext-label{letter-spacing:.5px;text-transform:uppercase;margin-top:2px;font-size:.5625rem;font-weight:700}.file-pdf{color:var(--color-error);background:#ef444426;border-color:#ef44444d}.file-doc{color:var(--accent-300);background:#3b82f626;border-color:#3b82f64d}.file-sheet{color:#6ee7b7;background:#10b98126;border-color:#10b9814d}.file-slide{color:#fdba74;background:#f9731626;border-color:#f973164d}.file-zip{color:#d8b4fe;background:#a855f726;border-color:#a855f74d}.file-code{color:var(--wa-border);background:#94a3b826;border-color:#94a3b84d}.file-default{color:var(--text-secondary);background:#64748b26;border-color:#64748b4d}.doc-card-details{flex-direction:column;flex:1;min-width:0;display:flex}.doc-card-title{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:.8125rem;font-weight:500;overflow:hidden}.doc-card-meta{color:var(--text-muted);margin-top:2px;font-size:.6875rem}.doc-card-download-btn{background:var(--bg-elevated);border:1px solid var(--border-default);width:32px;height:32px;color:var(--text-primary);transition:all var(--transition-fast) ease;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.875rem;text-decoration:none;display:flex}.doc-card-download-btn:hover{background:var(--accent-500);border-color:var(--accent-400);color:var(--text-on-accent);transform:translateY(-1px)}.chat-mic-btn{width:38px;height:38px;color:var(--text-primary);cursor:pointer;transition:all var(--transition-fast) ease;background:0 0;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:1.25rem;display:flex}.chat-mic-btn:hover:not(:disabled){background:#10b98126;transform:scale(1.08)}.voice-recorder-bar{background:var(--bg-surface);border-radius:var(--radius-lg);border:1px solid #ef44444d;justify-content:space-between;align-items:center;padding:.625rem 1rem;animation:.2s ease-out fadeIn;display:flex;box-shadow:0 0 15px #ef44441a}.voice-recorder-error{border-color:var(--border-subtle);background:var(--bg-elevated);box-shadow:none}.voice-error-text{color:var(--color-error);font-size:.8125rem}.voice-cancel-btn{background:var(--bg-surface);border:1px solid var(--border-default);color:var(--text-primary);border-radius:var(--radius-sm);cursor:pointer;padding:4px 10px;font-size:.8125rem}.voice-action-btn{cursor:pointer;width:36px;height:36px;transition:all var(--transition-fast) ease;border:none;border-radius:50%;justify-content:center;align-items:center;font-size:1rem;display:flex}.voice-trash-btn{color:var(--color-error);background:#ef444426}.voice-trash-btn:hover:not(:disabled){background:#ef44444d;transform:scale(1.05)}.voice-send-btn{background:var(--accent-500);color:var(--text-on-accent)}.voice-send-btn:hover:not(:disabled){background:var(--accent-400);transform:scale(1.05)}.voice-recording-status{align-items:center;gap:.75rem;display:flex}.voice-recording-pulse{background:var(--color-danger);border-radius:50%;width:10px;height:10px;animation:1s infinite alternate pulse}.voice-recording-timer{font-variant-numeric:tabular-nums;color:var(--text-primary);font-size:.9375rem;font-weight:600}.voice-live-wave{align-items:center;gap:3px;height:18px;display:flex}.live-wave-bar{background:var(--color-danger);border-radius:2px;width:3px;animation:.8s ease-in-out infinite alternate soundWave}.live-wave-bar:first-child{height:6px;animation-delay:.1s}.live-wave-bar:nth-child(2){height:16px;animation-delay:.3s}.live-wave-bar:nth-child(3){height:10px;animation-delay:.2s}.live-wave-bar:nth-child(4){height:18px;animation-delay:.4s}.live-wave-bar:nth-child(5){height:8px;animation-delay:.15s}@keyframes soundWave{0%{transform:scaleY(.4)}to{transform:scaleY(1)}}.voice-player-bubble{align-items:center;gap:.75rem;min-width:240px;max-width:320px;padding:.5rem .625rem;display:flex}.voice-play-btn{background:var(--accent-500);width:40px;height:40px;color:var(--text-on-accent);cursor:pointer;transition:all var(--transition-fast) ease;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex;box-shadow:0 2px 8px #3b82f659}.voice-play-btn:hover{background:var(--accent-400);transform:scale(1.05)}.voice-playing{background:var(--accent-500)}.voice-waveform-wrapper{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.voice-scrubber-container{align-items:center;height:24px;display:flex;position:relative}.voice-scrubber-input{opacity:0;cursor:pointer;z-index:2;width:100%;height:100%;margin:0;position:absolute;inset:0}.voice-waveform-track{pointer-events:none;align-items:center;gap:2.5px;width:100%;height:100%;display:flex}.voice-waveform-bar{background:#fff3;border-radius:2px;flex:1;transition:background .1s}.voice-waveform-bar.bar-filled{background:var(--accent-400)}.voice-info-row{justify-content:space-between;align-items:center;display:flex}.voice-time-text{color:var(--text-muted);font-variant-numeric:tabular-nums;font-size:.6875rem}.voice-speed-btn{color:var(--text-secondary);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast) ease;background:#ffffff1a;border:1px solid #ffffff26;padding:1px 5px;font-size:.625rem;font-weight:600}.voice-speed-btn:hover{color:var(--text-primary);background:#fff3}.message-expired-media-box{align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);margin-bottom:var(--space-2);background:#00000040;border:1px dashed #ffffff26;display:flex}.expired-media-icon{opacity:.8;flex-shrink:0;font-size:1.5rem}.expired-media-info{flex-direction:column;display:flex}.expired-media-info strong{color:var(--color-error);font-size:.8125rem}.expired-media-info span{color:var(--text-muted);font-size:.6875rem}.media-loading-overlay{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);color:var(--text-secondary);z-index:2;border-radius:var(--radius-md);background:#0009;justify-content:center;align-items:center;font-size:.75rem;display:flex;position:absolute;inset:0}.link-preview-card{border-radius:var(--radius-md);color:inherit;transition:all var(--transition-fast) ease;background:#0f172a8c;border:1px solid #ffffff1a;flex-direction:column;max-width:320px;margin-top:.5rem;margin-bottom:.25rem;text-decoration:none;display:flex;overflow:hidden}.link-preview-card:hover{border-color:var(--accent-500);background:#0f172abf;transform:translateY(-1px);box-shadow:0 4px 12px #00000040}.link-preview-image-wrap{background:var(--bg-elevated);width:100%;max-height:160px;position:relative;overflow:hidden}.link-preview-image{object-fit:cover;width:100%;height:100%;max-height:160px;display:block}.link-preview-content{flex-direction:column;gap:.25rem;padding:.625rem .75rem;display:flex}.link-preview-header{align-items:center;gap:.375rem;display:flex}.link-preview-favicon{object-fit:contain;border-radius:2px;width:14px;height:14px}.link-preview-site{color:var(--accent-400);text-transform:uppercase;letter-spacing:.04em;white-space:nowrap;text-overflow:ellipsis;font-size:.6875rem;font-weight:600;overflow:hidden}.link-preview-title{color:var(--text-primary);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:.8125rem;font-weight:600;line-height:1.35;display:-webkit-box;overflow:hidden}.link-preview-description{color:var(--text-muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:.75rem;line-height:1.4;display:-webkit-box;overflow:hidden}.link-preview-skeleton{border-radius:var(--radius-md);background:#0f172a59;border:1px solid #ffffff0d;flex-direction:column;max-width:320px;min-height:80px;margin-top:.5rem;margin-bottom:.25rem;display:flex;overflow:hidden}.link-preview-skeleton-img{background:linear-gradient(90deg,#ffffff08 25%,#ffffff14 50%,#ffffff08 75%) 0 0/200% 100%;width:100%;height:90px;animation:1.5s infinite shimmer}.link-preview-skeleton-content{flex-direction:column;gap:.5rem;padding:.625rem .75rem;display:flex}.link-preview-skeleton-title{background:#ffffff14;border-radius:4px;width:80%;height:14px}.link-preview-skeleton-desc{background:#ffffff0d;border-radius:4px;width:95%;height:10px}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.message-bubble.deleted-bubble{opacity:.75;background:#ffffff0a!important;border:1px dashed #ffffff26!important}.message-deleted-text{color:var(--text-muted);align-items:center;gap:6px;font-size:.875rem;font-style:italic;display:flex}.delete-choice-card{border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);text-align:left;background:#ffffff08;border:1px solid #ffffff1a;align-items:flex-start;gap:12px;width:100%;padding:12px 14px;display:flex}.delete-choice-card:hover:not(:disabled){background:#ffffff14;border-color:#fff3}.delete-choice-card.danger:hover:not(:disabled){background:#ef44441f;border-color:#ef444466}.delete-choice-card:disabled{opacity:.45;cursor:not-allowed;border-color:#ffffff0d}.delete-choice-icon{margin-top:2px;font-size:1.25rem;line-height:1}.delete-choice-info{flex-direction:column;gap:2px;display:flex}.delete-choice-title{color:var(--text-primary);font-size:.9375rem;font-weight:600}.delete-choice-desc{color:var(--text-muted);font-size:.8125rem;line-height:1.35}.delete-countdown-badge{color:var(--color-warning);align-items:center;gap:4px;margin-top:4px;font-size:.75rem;font-weight:600;display:inline-flex}.call-modal-overlay{z-index:1200;-webkit-backdrop-filter:blur(8px);background:#000000bf;justify-content:center;align-items:center;padding:16px;animation:.25s ease-out fadeIn;display:flex;position:fixed;inset:0}.call-modal-content{text-align:center;background:#111b21;border:1px solid #ffffff1f;border-radius:24px;flex-direction:column;align-items:center;width:100%;max-width:360px;padding:32px 24px;display:flex;box-shadow:0 20px 40px #0009,0 0 30px #10b98126}.call-avatar-container{justify-content:center;align-items:center;width:96px;height:96px;margin-bottom:20px;display:flex;position:relative}.call-avatar-circle{background:var(--accent-gradient);width:80px;height:80px;color:var(--text-on-accent);z-index:2;border-radius:50%;justify-content:center;align-items:center;font-size:2rem;font-weight:700;display:flex;position:relative;box-shadow:0 8px 24px #3b82f673}.call-avatar-pulse{z-index:1;background:#3b82f666;border-radius:50%;animation:2s cubic-bezier(.215,.61,.355,1) infinite callPulseRing;position:absolute;inset:0}.call-avatar-pulse.delay-1{animation-delay:.6s}@keyframes callPulseRing{0%{opacity:.8;transform:scale(.85)}to{opacity:0;transform:scale(1.6)}}.call-caller-name{color:#f1f5f9;margin:0 0 6px;font-size:1.375rem;font-weight:700}.call-status-label{color:var(--accent-400);margin:0 0 28px;font-size:.875rem;font-weight:500;animation:1.5s infinite pulseOpacity}@keyframes pulseOpacity{0%,to{opacity:1}50%{opacity:.5}}.call-action-buttons{justify-content:center;align-items:center;gap:32px;width:100%;display:flex}.call-btn-reject,.call-btn-accept{cursor:pointer;color:var(--wa-border);background:0 0;border:none;flex-direction:column;align-items:center;gap:8px;font-size:.8125rem;font-weight:600;display:flex}.call-btn-reject svg,.call-btn-accept svg{width:56px;height:56px;color:var(--text-on-accent);border-radius:50%;padding:14px;transition:transform .15s,box-shadow .15s}.call-btn-reject svg{background:var(--color-danger);box-shadow:0 4px 14px #ef444466}.call-btn-reject:hover svg{transform:scale(1.08);box-shadow:0 6px 20px #ef444499}.call-btn-accept svg{background:var(--color-success);box-shadow:0 4px 14px #10b98166}.call-btn-accept:hover svg{transform:scale(1.08);box-shadow:0 6px 20px #10b98199}.audio-call-overlay{z-index:1100;-webkit-backdrop-filter:blur(12px);background:#0b141af0;justify-content:center;align-items:center;padding:20px;animation:.2s ease-out fadeIn;display:flex;position:fixed;inset:0}.audio-call-card{text-align:center;flex-direction:column;align-items:center;width:100%;max-width:420px;display:flex}.audio-call-header{margin-bottom:36px}.audio-call-badge{color:var(--text-secondary);background:#ffffff14;border:1px solid #ffffff1f;border-radius:20px;align-items:center;gap:6px;padding:6px 14px;font-size:.8125rem;font-weight:500;display:inline-flex}.audio-call-center{flex-direction:column;align-items:center;margin-bottom:48px;display:flex}.audio-call-avatar-wrapper{justify-content:center;align-items:center;width:120px;height:120px;margin-bottom:24px;display:flex;position:relative}.audio-call-avatar{background:linear-gradient(135deg, #0ea5e9 0%, var(--accent-600) 100%);width:100px;height:100px;color:var(--text-on-accent);z-index:2;border-radius:50%;justify-content:center;align-items:center;font-size:2.75rem;font-weight:700;display:flex;position:relative;box-shadow:0 10px 30px #0ea5e959}.audio-call-pulse-ring{z-index:1;background:#0ea5e959;border-radius:50%;position:absolute;inset:0}.audio-call-avatar-wrapper.ringing-wave .audio-call-pulse-ring{animation:2.2s cubic-bezier(.215,.61,.355,1) infinite callPulseRing}.audio-call-avatar-wrapper.ringing-wave .audio-call-pulse-ring.delay-1{animation-delay:.7s}.audio-call-avatar-wrapper.in-call-wave .audio-call-pulse-ring{animation:3s ease-in-out infinite inCallWave}@keyframes inCallWave{0%,to{opacity:.4;transform:scale(1.05)}50%{opacity:.15;transform:scale(1.25)}}.audio-call-name{color:var(--text-primary);margin:0 0 8px;font-size:1.625rem;font-weight:700}.audio-call-timer{color:var(--text-secondary);letter-spacing:.5px;margin:0;font-size:1rem;font-weight:500}.audio-call-timer.connected{color:var(--color-online);font-weight:600}.audio-call-controls{justify-content:center;align-items:center;gap:28px;display:flex}.audio-call-ctrl-btn{width:58px;height:58px;color:var(--text-on-accent);cursor:pointer;background:#ffffff1a;border:1px solid #ffffff26;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;gap:8px;transition:all .15s;display:flex}.audio-call-ctrl-btn:hover:not(:disabled){background:#ffffff2e;transform:translateY(-2px)}.audio-call-ctrl-btn.muted{color:var(--color-error);background:#ef444433;border-color:#ef444480}.audio-call-ctrl-btn.end-call{background:var(--color-danger);border-color:var(--color-danger-strong);width:64px;height:64px;box-shadow:0 6px 18px #ef444473}.audio-call-ctrl-btn.end-call:hover{background:var(--color-danger-strong);transform:scale(1.06);box-shadow:0 8px 24px #ef444499}.audio-call-ctrl-btn:disabled{opacity:.4;cursor:not-allowed}.audio-call-ctrl-btn .ctrl-label{display:none}.profile-modal-card{background:var(--bg-overlay);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--border-default);border-radius:var(--radius-xl);flex-direction:column;width:100%;max-width:480px;max-height:90vh;animation:.22s cubic-bezier(.16,1,.3,1) modalScaleIn;display:flex;position:relative;overflow:hidden;box-shadow:0 25px 60px #000000bf,0 0 35px #3b82f626}@keyframes modalScaleIn{0%{opacity:0;transform:scale(.96)translateY(8px)}to{opacity:1;transform:scale(1)translateY(0)}}@media (max-width:640px){.profile-modal-backdrop{align-items:flex-end!important;padding:0!important}.profile-modal-card{border-bottom:none!important;border-left:none!important;border-right:none!important;border-bottom-right-radius:0!important;border-bottom-left-radius:0!important;max-width:100%!important;max-height:92vh!important;animation:.25s cubic-bezier(.16,1,.3,1) modalSlideUp!important}}@keyframes modalSlideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.profile-hero-banner{background:linear-gradient(135deg,#3b82f673 0%,#818cf866 50%,#f472b659 100%);height:96px;position:relative;overflow:hidden}.profile-hero-banner:after{content:"";pointer-events:none;background:radial-gradient(circle at 75% 30%,#fff3,#0000 60%);position:absolute;inset:0}.profile-avatar-wrapper{margin-top:-46px;display:inline-block;position:relative}.profile-avatar-edit-btn{background:var(--accent-500);border:2px solid var(--bg-base);width:30px;height:30px;color:var(--text-on-accent);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;font-size:.85rem;transition:all .15s;display:flex;position:absolute;bottom:0;right:0;box-shadow:0 2px 8px #0006}.profile-avatar-edit-btn:hover{background:var(--accent-400);transform:scale(1.12)}.profile-segmented-nav{border:1px solid var(--border-subtle);border-radius:var(--radius-md);margin:var(--space-4) var(--space-5) 0;background:#0f172aa6;gap:3px;padding:3px;display:flex}.profile-tab-btn{border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;background:0 0;border:none;flex:1;justify-content:center;align-items:center;gap:5px;padding:7px 10px;font-size:.8rem;font-weight:500;transition:all .15s;display:flex}.profile-tab-btn:hover:not(.active){color:var(--text-primary);background:#ffffff0d}.profile-tab-btn.active{background:var(--accent-500);color:var(--text-on-accent);box-shadow:0 2px 8px var(--accent-glow);font-weight:600}.ios-glass-switch{flex-shrink:0;width:44px;height:24px;display:inline-block;position:relative}.ios-glass-switch input{opacity:0;width:0;height:0}.ios-glass-slider{cursor:pointer;background-color:#ffffff26;border:1px solid #ffffff26;border-radius:24px;transition:all .25s cubic-bezier(.4,0,.2,1);position:absolute;inset:0}.ios-glass-slider:before{content:"";background-color:#fff;border-radius:50%;width:18px;height:18px;transition:all .25s cubic-bezier(.4,0,.2,1);position:absolute;bottom:2px;left:2px;box-shadow:0 2px 4px #0000004d}.ios-glass-switch input:checked+.ios-glass-slider{background-color:var(--accent-500);border-color:var(--accent-400)}.ios-glass-switch input:checked+.ios-glass-slider:before{transform:translate(20px)}.profile-bio-chip{background:var(--bg-tertiary);border:1px solid var(--border-subtle);color:var(--text-secondary);border-radius:var(--radius-full);cursor:pointer;padding:4px 10px;font-size:.725rem;transition:all .15s}.profile-bio-chip:hover{border-color:var(--accent-400);color:var(--text-primary);background:#3b82f61a}.profile-bio-chip.active{border-color:var(--accent-secondary);color:#c7d2fe;background:#818cf826;font-weight:500;box-shadow:0 0 10px #818cf840}.group-modal-backdrop{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:1050;padding:var(--space-4);background:#000000c7;justify-content:center;align-items:center;animation:.2s fadeIn;display:flex;position:fixed;inset:0}.group-modal-card{background:var(--bg-surface);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border:1px solid var(--border-default);border-radius:var(--radius-xl);flex-direction:column;width:100%;max-width:520px;max-height:90vh;animation:.22s cubic-bezier(.16,1,.3,1) modalScaleIn;display:flex;position:relative;overflow:hidden;box-shadow:0 25px 60px #000000bf,0 0 35px #3b82f626}.group-modal-header{border-bottom:1px solid var(--border-subtle);background:var(--bg-elevated);flex-shrink:0;justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.group-modal-close-btn{color:var(--text-muted);cursor:pointer;width:32px;height:32px;transition:all var(--transition-fast) ease;background:#ffffff0f;border:1px solid #ffffff1f;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.9rem;display:flex}.group-modal-close-btn:hover{color:var(--color-error);background:#ef44442e;border-color:#ef444459;transform:scale(1.05)}.group-modal-body{flex:1;padding:18px 20px;overflow-y:auto}.group-form-input,.group-form-textarea{background:var(--bg-elevated);border:1px solid var(--border-default);border-radius:var(--radius-md);color:var(--text-primary);width:100%;transition:border-color var(--transition-fast) ease, box-shadow var(--transition-fast) ease;box-sizing:border-box;padding:10px 14px;font-family:inherit;font-size:.9rem}.group-form-input:focus,.group-form-textarea:focus{border-color:var(--accent-400);background:var(--bg-tertiary);outline:none;box-shadow:0 0 0 3px #3b82f640}.group-form-input::placeholder,.group-form-textarea::placeholder{color:var(--text-muted);opacity:.65}.group-modal-footer{border-top:1px solid var(--border-subtle);background:var(--bg-elevated);flex-shrink:0;justify-content:flex-end;align-items:center;gap:10px;padding:14px 20px;display:flex}.group-modal-card .btn{width:auto}@media (max-width:640px){.group-modal-backdrop{align-items:flex-end!important;padding:0!important}.group-modal-card{border-bottom:none!important;border-left:none!important;border-right:none!important;border-bottom-right-radius:0!important;border-bottom-left-radius:0!important;max-width:100%!important;max-height:92vh!important;animation:.25s cubic-bezier(.16,1,.3,1) modalSlideUp!important}}.mention-autocomplete-popover{-webkit-backdrop-filter:blur(20px)saturate(180%);z-index:60;background:#121826eb;border:1px solid #3b82f64d;border-radius:16px;flex-direction:column;max-width:420px;animation:.15s cubic-bezier(.16,1,.3,1) mentionFadeIn;display:flex;position:absolute;bottom:calc(100% + 8px);left:12px;right:12px;overflow:hidden;box-shadow:0 12px 32px #0000008c,0 0 16px #3b82f626}@keyframes mentionFadeIn{0%{opacity:0;transform:translateY(6px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.mention-popover-header{background:#ffffff08;border-bottom:1px solid #ffffff12;justify-content:space-between;align-items:center;padding:8px 14px;display:flex}.mention-popover-title{color:var(--accent-500);letter-spacing:.02em;text-transform:uppercase;font-size:.75rem;font-weight:600}.mention-popover-hint{color:var(--text-muted);font-size:.6875rem}.mention-popover-list{flex-direction:column;gap:2px;max-height:220px;padding:4px;display:flex;overflow-y:auto}.mention-popover-item{text-align:left;cursor:pointer;width:100%;color:inherit;background:0 0;border:none;border-radius:10px;align-items:center;gap:10px;padding:8px 10px;transition:all .15s;display:flex}.mention-popover-item:hover,.mention-popover-item.active{background:#3b82f626;box-shadow:inset 0 0 0 1px #3b82f640}.mention-item-info{flex-direction:column;flex:1;min-width:0;display:flex}.mention-item-name-row{align-items:center;gap:4px;display:flex}.mention-item-name{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:.8125rem;font-weight:600;overflow:hidden}.mention-item-username{color:var(--accent-400);white-space:nowrap;text-overflow:ellipsis;font-size:.6875rem;overflow:hidden}.mention-item-role{border-radius:6px;flex-shrink:0;margin-left:auto;padding:2px 6px;font-size:.65rem;font-weight:600}.mention-item-role.role-creator{color:var(--color-warning);background:#eab30826;border:1px solid #eab3084d}.mention-item-role.role-admin{color:var(--accent-secondary-soft);background:#818cf826;border:1px solid #818cf84d}.mention-tag{color:var(--accent-400);-webkit-user-select:text;user-select:text;background:#3b82f624;border-radius:5px;margin:0 1px;padding:1px 5px;font-weight:600;line-height:1.3;transition:all .15s;display:inline-block}.mention-tag:hover{color:var(--accent-300);background:#3b82f647}.mention-tag.mention-tag-self{color:var(--color-cyan-neon);background:#00f2fe2e;border:1px solid #00f2fe66;box-shadow:0 0 8px #00f2fe40}.message-bubble-mentioned{border-left:3px solid #00f2fe!important;box-shadow:0 0 14px #00f2fe1f!important}@media (max-width:640px){.mention-autocomplete-popover{max-width:calc(100% - 16px);bottom:calc(100% + 6px);left:8px;right:8px}.mention-popover-item{padding:10px 8px}}.pinned-message-banner{z-index:45;-webkit-backdrop-filter:blur(12px);background:#0f172ae0;border-bottom:1px solid #ffffff14;width:100%;padding:6px 16px;animation:.2s cubic-bezier(.16,1,.3,1) slideDown;position:sticky;top:0;box-shadow:0 4px 16px #00000040}.pinned-banner-bar{cursor:pointer;background:#ffffff0a;border:1px solid #ffffff14;border-radius:10px;align-items:center;gap:10px;padding:6px 10px;transition:background .15s,border-color .15s;display:flex}.pinned-banner-bar:hover{background:#ffffff14;border-color:#3b82f64d}.pinned-banner-indicator{flex-shrink:0;align-items:center;gap:6px;display:flex}.pinned-icon{font-size:.95rem;line-height:1}.pinned-bar-pill{background:var(--accent-500);border-radius:2px;width:3px;height:24px}.pinned-banner-content{flex:1;min-width:0}.pinned-banner-header{align-items:center;gap:6px;display:flex}.pinned-sender-name{color:var(--accent-400);white-space:nowrap;text-overflow:ellipsis;font-size:.78rem;font-weight:600;overflow:hidden}.pinned-count-badge{color:var(--accent-300);background:#3b82f633;border:1px solid #3b82f659;border-radius:8px;padding:1px 5px;font-size:.68rem;font-weight:700}.pinned-text-preview{color:var(--text-secondary);white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:.75rem;line-height:1.3;overflow:hidden}.pinned-banner-actions{flex-shrink:0;align-items:center;gap:4px;display:flex}.pinned-nav-controls{flex-direction:column;gap:1px;display:flex}.pinned-nav-btn{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:4px;padding:2px 4px;font-size:.55rem;line-height:1;transition:all .15s}.pinned-nav-btn:hover{color:var(--text-on-accent);background:#ffffff1a}.pinned-unpin-btn{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;width:26px;height:26px;font-size:.85rem;transition:all .15s;display:flex}.pinned-unpin-btn:hover{color:var(--color-error);background:#ef444426}.message-pinned-badge{color:var(--color-warning);align-items:center;gap:3px;margin-bottom:3px;font-size:.68rem;font-weight:500;display:inline-flex}@keyframes highlightGlow{0%{transform:scale(1.02);box-shadow:0 0 #f59e0bb3}50%{transform:scale(1.02);box-shadow:0 0 25px 6px #f59e0b8c}to{box-shadow:none;transform:scale(1)}}.msg-highlight-glow{border-radius:12px;border:1px solid #f59e0b99!important;animation:2.2s cubic-bezier(.2,.8,.2,1) highlightGlow!important}.status-search-wrapper{background:#0f172abf;border:1px solid #3b82f659;border-radius:20px;align-items:center;gap:6px;padding:3px 8px;animation:.18s fadeIn;display:flex;box-shadow:0 2px 10px #0000004d}.status-search-input{color:var(--text-primary);background:0 0;border:none;outline:none;width:130px;font-size:.8rem;transition:width .2s}.status-search-input:focus{width:170px}.status-search-counter{color:var(--accent-300);white-space:nowrap;padding:1px 4px;font-size:.68rem;font-weight:600}.status-search-btn{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;padding:3px 5px;font-size:.75rem;transition:all .15s;display:flex}.status-search-btn:hover{color:var(--text-on-accent);background:#ffffff1a}.status-search-close-btn:hover{color:var(--color-error);background:#ef444433}.msg-search-highlight{border-radius:12px;transition:box-shadow .3s;box-shadow:0 0 0 2px var(--accent-500), 0 0 20px #3b82f680!important}@keyframes slideDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.u-flex{display:flex}.u-flex-col{flex-direction:column;display:flex}.u-flex-center{align-items:center;display:flex}.u-flex-between{justify-content:space-between;align-items:center;display:flex}.u-flex-wrap{flex-wrap:wrap}.u-flex-1{flex:1}.u-flex-shrink-0{flex-shrink:0}.u-min-w-0{min-width:0}.u-gap-1{gap:var(--space-1)}.u-gap-2{gap:var(--space-2)}.u-gap-3{gap:var(--space-3)}.u-gap-4{gap:var(--space-4)}.u-gap-6{gap:var(--space-6)}.u-text-xs{font-size:.75rem}.u-text-sm{font-size:.85rem}.u-text-base{font-size:.9rem}.u-text-md{font-size:1rem}.u-text-lg{font-size:1.1rem}.u-text-xl{font-size:1.25rem}.u-fw-500{font-weight:500}.u-fw-600{font-weight:600}.u-fw-700{font-weight:700}.u-text-primary{color:var(--text-primary)}.u-text-secondary{color:var(--text-secondary)}.u-text-muted{color:var(--text-muted)}.u-text-accent{color:var(--accent-500)}.u-text-verified{color:var(--color-verified)}.u-text-error{color:var(--color-error)}.u-text-success{color:var(--color-success)}.u-text-warning{color:var(--color-warning)}.u-text-on-accent{color:var(--text-on-accent)}.u-uppercase{text-transform:uppercase}.u-truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.u-scroll-y{overflow-y:auto}.u-overflow-hidden{overflow:hidden}.u-p-3{padding:var(--space-3)}.u-p-4{padding:var(--space-4)}.u-p-5{padding:var(--space-5)}.u-px-4{padding-left:var(--space-4);padding-right:var(--space-4)}.u-py-2{padding-top:var(--space-2);padding-bottom:var(--space-2)}.u-mt-2{margin-top:var(--space-2)}.u-mt-3{margin-top:var(--space-3)}.u-mt-4{margin-top:var(--space-4)}.u-mb-2{margin-bottom:var(--space-2)}.u-mb-4{margin-bottom:var(--space-4)}.u-m-0{margin:0}.u-block{display:block}.u-inline-flex{align-items:center;display:inline-flex}.u-text-center{text-align:center}.u-cursor-pointer{cursor:pointer}.u-w-full{width:100%}.u-w-auto{width:auto}.u-leading-snug{line-height:1.4}.u-bg-accent-tint{background:var(--tint-accent-10);border:1px solid var(--tint-accent-30);border-radius:var(--radius-md)}.u-bg-error-tint{background:var(--tint-error-10);border:1px solid var(--tint-error-30);border-radius:var(--radius-md)}.btn-ghost{cursor:pointer;padding:var(--space-1);border-radius:var(--radius-sm);transition:background var(--transition-fast);background:0 0;border:none}.btn-ghost:hover{background:var(--bg-surface-hover)}.btn-ghost.text-muted{color:var(--text-muted)}.btn-ghost.text-accent{color:var(--accent-500)}.btn-ghost.text-danger{color:var(--color-danger)}.btn-ghost.text-error{color:var(--color-error)}.drawer-body{flex:1;padding:20px;overflow-y:auto}.drawer-content-col{gap:var(--space-5);flex-direction:column;display:flex}.z-modal{z-index:var(--z-modal)}.z-modal-top{z-index:var(--z-modal-top)}.z-dropdown{z-index:var(--z-dropdown)}.z-overlay{z-index:var(--z-overlay)}.z-critical{z-index:var(--z-critical)}.modal-overlay{-webkit-backdrop-filter:blur(4px);z-index:var(--z-modal);animation:fadeIn var(--transition-base) ease;background:#000000a6;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-overlay.drawer{justify-content:flex-end;align-items:stretch}.modal-card-unified{background:var(--bg-surface);border:var(--glass-border);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);width:100%;max-width:480px;max-height:90vh;animation:slideUp var(--transition-base) ease;flex-direction:column;display:flex;overflow:hidden}.modal-card-unified.drawer-card{border-radius:var(--radius-xl) 0 0 var(--radius-xl);max-width:400px;max-height:100vh;animation:slideInRight var(--transition-base) ease}.modal-card-unified.modal-wide{max-width:640px}.modal-header-unified{padding:var(--space-4) var(--space-5);border-bottom:var(--glass-border);flex-shrink:0;justify-content:space-between;align-items:center;display:flex}.modal-header-unified h2,.modal-header-unified h3{color:var(--text-primary);margin:0;font-size:1.1rem;font-weight:600}.modal-close-btn{cursor:pointer;color:var(--text-muted);padding:var(--space-1);border-radius:var(--radius-sm);transition:color var(--transition-fast), background var(--transition-fast);background:0 0;border:none;font-size:1.25rem;line-height:1}.modal-close-btn:hover{color:var(--text-primary);background:var(--bg-surface-hover)}.modal-body-unified{padding:var(--space-5);flex:1;overflow-y:auto}.modal-body-unified.no-pad{padding:0}.modal-footer-unified{justify-content:flex-end;align-items:center;gap:var(--space-3);padding:var(--space-4) var(--space-5);border-top:var(--glass-border);flex-shrink:0;display:flex}.modal-footer-unified.centered{justify-content:center}.modal-danger-zone{background:var(--tint-error-08);border:1px solid var(--tint-error-25);border-radius:var(--radius-lg);padding:var(--space-4);gap:var(--space-3);flex-direction:column;display:flex}.modal-danger-zone h3{margin:0 0 var(--space-2);font-size:1.1rem}.modal-danger-zone p{color:var(--text-muted);margin:0;font-size:.85rem}.modal-danger-actions{justify-content:center;gap:var(--space-3);margin-top:var(--space-2);display:flex}.modal-confirm-overlay{background:var(--bg-overlay);-webkit-backdrop-filter:blur(8px);border-radius:var(--radius-xl);z-index:var(--z-overlay);animation:fadeIn var(--transition-fast) ease;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.modal-confirm-card{background:var(--bg-elevated);border:var(--glass-border);border-radius:var(--radius-lg);padding:var(--space-5);gap:var(--space-4);text-align:center;flex-direction:column;width:90%;max-width:320px;display:flex}@keyframes slideUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}.encrypted-messages-banner{margin:var(--space-2) auto var(--space-4) auto;max-width:480px;width:calc(100% - var(--space-4));padding:var(--space-3) var(--space-4);background:var(--bg-glass-card);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--border-default);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);align-items:flex-start;gap:var(--space-3);text-align:left;animation:fadeIn var(--transition-fast) ease-in-out;line-height:1.4;display:flex}.encrypted-banner-icon{flex-shrink:0;margin-top:2px;font-size:1.25rem}.encrypted-banner-content{flex-direction:column;gap:2px;display:flex}.encrypted-banner-title{color:var(--text-primary);font-size:.8125rem;font-weight:600}.encrypted-banner-desc{color:var(--text-secondary);font-size:.75rem}.memory-review-card{background:var(--bg-surface);border:1px solid var(--border-default);transition:border-color var(--transition-fast) ease, box-shadow var(--transition-fast) ease;border-radius:14px;flex-direction:column;gap:12px;padding:16px;display:flex}.memory-review-card:hover{border-color:#3b82f64d}.memory-textarea{border-radius:var(--radius-md);background:var(--bg-base);border:1px solid var(--accent-500);width:100%;color:var(--text-primary);box-sizing:border-box;resize:vertical;padding:10px 14px;font-family:inherit;font-size:.85rem;line-height:1.5}.memory-textarea:focus{outline:none;box-shadow:0 0 0 3px #3b82f640}.memory-evidence-item{border:1px solid var(--border-subtle);border-left:3px solid var(--accent-500);background:#0f172a99;border-radius:10px;flex-direction:column;gap:4px;padding:10px 12px;font-size:.78rem;display:flex}.legal-page{height:100dvh;padding:var(--space-6) var(--space-4);background:var(--bg-base);overscroll-behavior:contain;-webkit-overflow-scrolling:touch;justify-content:center;align-items:flex-start;display:flex;overflow-y:auto}.legal-card{width:100%;max-width:760px;color:var(--text-secondary);font-size:.9375rem;line-height:1.7}.legal-header{margin-bottom:var(--space-6)}.legal-brand{color:var(--text-primary);font-weight:700;text-decoration:none}.legal-header h1{color:var(--text-primary);margin-top:var(--space-3);font-size:1.75rem}.legal-meta{color:var(--text-muted);margin-top:var(--space-1);font-size:.8125rem}.legal-body h2{color:var(--text-primary);margin:var(--space-6) 0 var(--space-2);font-size:1.125rem}.legal-body p,.legal-body ul,.legal-body ol{margin-bottom:var(--space-3)}.legal-body ul,.legal-body ol{padding-left:var(--space-5)}.legal-body li{margin-bottom:var(--space-1)}.legal-body strong{color:var(--text-primary)}.legal-body a{color:var(--text-primary);text-decoration:underline}.legal-note{padding:var(--space-3) var(--space-4);background:var(--bg-elevated);border:1px solid var(--border-strong);border-radius:var(--radius-md,12px);margin-bottom:var(--space-4)}.legal-footer{gap:var(--space-4);margin-top:var(--space-8);padding-top:var(--space-4);border-top:1px solid var(--border-subtle);flex-wrap:wrap;font-size:.8125rem;display:flex}.legal-footer a{color:var(--text-muted);text-decoration:none}.legal-footer a:hover{color:var(--text-primary)}
