@font-face{font-family:Vazir;src:url(/fonts/Vazir-Thin.woff2) format("woff2");font-weight:100;font-display:swap}@font-face{font-family:Vazir;src:url(/fonts/Vazir-Light.woff2) format("woff2");font-weight:300;font-display:swap}@font-face{font-family:Vazir;src:url(/fonts/Vazir-Regular.woff2) format("woff2");font-weight:500;font-display:swap}@font-face{font-family:Vazir;src:url(/fonts/Vazir-Medium.woff2) format("woff2");font-weight:600;font-display:swap}@font-face{font-family:Vazir;src:url(/fonts/Vazir-Bold.woff2) format("woff2");font-weight:700;font-display:swap}@font-face{font-family:Vazir;src:url(/fonts/Vazir-Black.woff2) format("woff2");font-weight:900;font-display:swap}@font-face{font-family:AppleEmoji;src:url(/system/fonts/NotoColorEmoji.ttf) format("truetype");font-weight:400;font-style:normal;font-display:swap}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}body{overflow:hidden;font-family:Vazir,AppleEmoji,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{scrollbar-width:thin;scrollbar-color:#d1d5db transparent}*::-webkit-scrollbar{width:6px}*::-webkit-scrollbar-track{background:transparent}*::-webkit-scrollbar-thumb{background-color:#d1d5db;border-radius:20px}*::-webkit-scrollbar-thumb:hover{background-color:#9ca3af}.dot-grid{display:flex;align-items:center;justify-content:center;height:100%;width:100%;position:relative}.dot-grid__wrap{width:100%;height:100%;position:relative}.dot-grid__canvas{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.file-upload-container{display:flex;align-items:center;position:relative}.file-upload-button{display:flex;align-items:center;justify-content:center;background:none;border:none;border-radius:12px;padding:8px 8px 10px;color:var(--text-secondary);cursor:pointer;transition:all .15s}.file-upload-button:hover{background:var(--hover-bg);color:var(--text-primary)}.file-upload-button:active{transform:scale(.95)}.file-upload-button:disabled{opacity:.55;cursor:default}.file-upload-picker-menu{position:absolute;inset-inline-start:0;bottom:calc(100% + 8px);display:flex;flex-direction:column;gap:4px;min-width:120px;background:var(--bg-primary);border:1px solid var(--border-primary);border-radius:12px;box-shadow:0 8px 26px #00000029;padding:6px;z-index:12;transform-origin:bottom left;will-change:transform,opacity}.file-upload-picker-item{border:none;border-radius:8px;background:transparent;color:var(--text-primary);font-size:13px;font-family:Vazir,sans-serif;text-align:right;padding:8px 10px;cursor:pointer;transition:background .16s ease,color .16s ease}.file-upload-picker-item:hover{background:var(--hover-bg)}.file-upload-picker-item__label{display:inline-flex;align-items:center;gap:8px}.chat-room__input-wrapper{position:relative;overflow:visible}.file-upload-progress-inline{position:absolute;left:8px;right:8px;top:-6px;height:3px;background:var(--border-secondary);border-radius:999px;overflow:hidden;z-index:6;pointer-events:none}.file-upload-progress-inline__fill{position:absolute;left:0;top:0;bottom:0;width:0%;background:linear-gradient(90deg,#3b82f6,#2563eb);transition:width .2s ease}@media(max-width:640px){.file-upload-progress-inline{left:6px;right:6px;top:-5px;height:2px}}.file-upload-progress{display:flex;align-items:center;gap:8px;padding:8px 12px;background:var(--bg-tertiary);border-radius:12px;max-width:300px}.file-upload-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.file-upload-name{font-size:13px;font-weight:500;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.file-upload-size{font-size:11px;color:var(--text-secondary)}.file-upload-bar{position:relative;width:100%;height:4px;background:var(--border-secondary);border-radius:2px;overflow:hidden;margin-top:4px}.file-upload-bar-fill{position:relative;height:100%;background:linear-gradient(90deg,#3b82f6,#2563eb);border-radius:2px;transition:width .3s ease;display:flex;align-items:center;justify-content:flex-end;padding-right:4px}.file-upload-percentage{position:absolute;right:4px;top:-18px;font-size:10px;font-weight:600;color:#3b82f6}.file-upload-cancel{flex-shrink:0;display:flex;align-items:center;justify-content:center;background:none;border:none;border-radius:8px;padding:4px;color:var(--text-secondary);cursor:pointer;transition:all .15s}.file-upload-cancel:hover{background:var(--hover-bg);color:#dc2626}.file-message{margin-top:8px}.file-attachment{display:flex;align-items:center;gap:12px;padding:10px 12px;background:#0000000d;border-radius:12px;cursor:pointer;transition:all .15s;max-width:280px}.dark-mode .file-attachment{background:#ffffff0d}.file-attachment:hover{background:#00000014;transform:translateY(-1px)}.dark-mode .file-attachment:hover{background:#ffffff14}.message-bubble--mine .file-attachment{background:#ffffff26}.message-bubble--mine .file-attachment:hover{background:#ffffff40}.file-icon{font-size:28px;line-height:1;flex-shrink:0}.file-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.file-name{font-size:13px;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%;color:var(--text-primary);direction:ltr;text-align:left}.message-bubble--mine .file-name{color:color-mix(in srgb,var(--message-mine-text) 96%,transparent)}.file-size{font-size:11px;color:var(--text-secondary)}.message-bubble--mine .file-size{color:color-mix(in srgb,var(--message-mine-text) 74%,transparent)}.file-download-btn{flex-shrink:0;display:flex;align-items:center;justify-content:center;background:#0000000d;border:none;border-radius:8px;padding:6px;color:var(--text-primary);cursor:pointer;transition:all .15s}.dark-mode .file-download-btn{background:#ffffff1a;color:var(--text-primary)}.file-download-btn:hover{background:#0000001a;transform:scale(1.05)}.dark-mode .file-download-btn:hover{background:#ffffff26}.message-bubble--mine .file-download-btn{background:#fff3;color:#fff}.message-bubble--mine .file-download-btn:hover{background:#ffffff4d}.file-image-preview{position:relative;max-width:min(280px,100%);max-height:440px;width:fit-content;border-radius:12px;overflow:hidden;cursor:pointer;display:flex;align-items:center;justify-content:center;background:#000}.file-image-preview img{display:block;width:100%;height:100%;max-width:100%;max-height:440px;object-fit:cover}.file-image-overlay{position:absolute;top:8px;right:8px;opacity:0;transition:opacity .15s}.file-image-preview:hover .file-image-overlay{opacity:1}.file-image-overlay .file-download-btn{background:#0009;color:#fff;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.file-image-overlay .file-download-btn:hover{background:#000c}.file-audio-card{display:flex;align-items:center;gap:10px;padding:10px 12px;background:#0000000d;border-radius:14px;width:100%;max-width:340px;min-width:0;overflow:hidden}.message-bubble--mine .file-audio-card{background:color-mix(in srgb,var(--message-mine-text) 16%,transparent)}.file-audio-meta{flex:1;min-width:0}.file-audio-title{font-size:13px;font-weight:600;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.file-audio-artist{font-size:11px;color:var(--text-secondary);margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-audio-cover{width:44px;height:44px;border-radius:10px;flex-shrink:0;background:linear-gradient(135deg,var(--accent-primary),color-mix(in srgb,var(--accent-primary) 60%,white));color:#fff;display:inline-flex;align-items:center;justify-content:center;overflow:hidden}.file-audio-cover img{width:100%;height:100%;object-fit:cover}.message-bubble--mine .file-audio-title{color:color-mix(in srgb,var(--message-mine-text) 96%,transparent)}.message-bubble--mine .file-audio-artist{color:color-mix(in srgb,var(--message-mine-text) 76%,transparent)}.file-audio-player{width:100%;height:36px}.file-video-card{border-radius:12px;overflow:hidden;max-width:300px;background:#00000012}.dark-mode .file-video-card{background:#ffffff0f}.message-bubble--mine .file-video-card{background:#ffffff1f}.file-video-player{display:block;width:100%;height:100%;max-height:300px;background:#000;border-radius:12px;outline:none;object-fit:cover}.file-video-thumb{position:relative;display:block;width:100%;height:100%;border:0;background:#000;cursor:pointer;padding:0}.file-video-duration{position:absolute;top:8px;left:8px;font-size:11px;font-weight:700;padding:3px 7px;border-radius:999px;color:#fff;background:#000000ad;z-index:2}.file-video-play-badge{position:absolute;inset:0;margin:auto;width:52px;height:52px;border-radius:999px;display:flex;align-items:center;justify-content:center;color:#fff;background:#00000094;border:1px solid rgba(255,255,255,.3);z-index:2;pointer-events:none}.image-media-viewer{position:fixed;inset:0;z-index:4000;background:#000000e0}.image-media-viewer__btn{width:36px;height:36px;border-radius:10px;border:1px solid rgba(255,255,255,.2);background:#00000059;color:#fff;display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.image-media-viewer__btn:hover{background:#ffffff29}.image-media-viewer__btn--close{margin-inline-start:8px}.image-media-viewer__stage{position:relative;width:100%;height:100%;display:flex;align-items:center;justify-content:center;overflow:hidden;touch-action:none}.image-media-viewer__controls{position:absolute;top:12px;right:12px;z-index:2;display:flex;align-items:center;gap:8px;background:#00000047;border:1px solid rgba(255,255,255,.16);border-radius:14px;padding:6px;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.image-media-viewer__controls{transition:opacity .22s ease}.image-media-viewer__controls--hidden{opacity:0}.image-media-viewer__image{max-width:100%;max-height:100%;object-fit:contain;transform-origin:center center;transition:transform .08s linear;-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.video-media-viewer{position:fixed;inset:0;z-index:4100;background:#000000ed}.video-media-viewer__header{position:absolute;top:12px;right:12px;z-index:4;display:flex;align-items:center;gap:8px;background:#00000047;border:1px solid rgba(255,255,255,.16);border-radius:14px;padding:6px;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.video-media-viewer__stage{position:relative;width:100%;height:100%;display:flex;align-items:center;justify-content:center}.video-media-viewer__video{width:100%;height:100%;object-fit:contain;background:#000}.video-media-viewer__surface{position:relative;width:100%;height:100%}.video-media-viewer__controls{position:absolute;inset:0;opacity:0;transition:opacity .2s ease;pointer-events:none}.video-media-viewer__controls.is-visible{opacity:1;pointer-events:none}.video-media-viewer__overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center}.video-media-viewer__play-btn{width:70px;height:70px;border-radius:999px;border:1px solid rgba(255,255,255,.35);background:#0000008c;color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;pointer-events:auto}.video-media-viewer__seek{position:absolute;top:0;bottom:0;width:24%;border:0;background:transparent;cursor:pointer}.video-media-viewer__seek--left{left:0}.video-media-viewer__seek--right{right:0}.video-media-viewer__seek-feedback{position:absolute;top:50%;transform:translateY(-50%);display:inline-flex;align-items:center;justify-content:center;gap:4px;white-space:nowrap;color:#fff;font-size:18px;line-height:1;font-weight:700;pointer-events:none;text-shadow:0 2px 14px rgba(0,0,0,.9);opacity:0;animation:video-media-viewer-feedback .82s ease-in-out forwards}.video-media-viewer__seek-feedback svg,.video-media-viewer__seek-feedback span{display:block}.video-media-viewer__seek-feedback svg{flex-shrink:0;width:52px;height:52px}.video-media-viewer__seek-feedback span{line-height:1}.video-media-viewer__seek-feedback--left{left:11%}.video-media-viewer__seek-feedback--right{right:11%;direction:ltr;unicode-bidi:isolate;flex-direction:row}.video-media-viewer__seek-feedback--right svg{order:2}.video-media-viewer__seek-feedback--right span{order:1;margin-right:-4px}@keyframes video-media-viewer-feedback{0%{opacity:0;transform:translateY(-50%) scale(.92)}20%{opacity:1;transform:translateY(-50%) scale(1)}75%{opacity:1;transform:translateY(-50%) scale(1)}to{opacity:0;transform:translateY(-46%) scale(1.04)}}.video-media-viewer__timeline-wrap{position:absolute;left:0;right:0;bottom:0;padding:10px 16px 16px;background:linear-gradient(to top,rgba(0,0,0,.58),transparent);pointer-events:auto}.video-media-viewer__timeline-meta{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.video-media-viewer__timeline-time{display:flex;gap:12px;color:#fff;font-size:12px}.video-media-viewer__fullscreen-btn{width:34px;height:34px;border:1px solid rgba(255,255,255,.26);background:#00000073;color:#fff;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.video-media-viewer__timeline{width:100%;accent-color:#2f80ed}.manual-download-wrap{position:absolute;top:10px;right:10px;display:flex;flex-direction:column;align-items:center;gap:6px;z-index:3}.manual-download-wrap--center{top:50%;right:50%;transform:translate(50%,-50%)}.manual-download-wrap--video{top:10px;right:10px;left:auto;transform:none;flex-direction:row-reverse;direction:ltr;gap:4px}.manual-download-wrap--video .manual-download-btn{width:31px;height:31px}.manual-download-wrap--video .manual-download-size-box{font-size:10px;padding:1px 5px}.manual-download-btn{width:36px;height:36px;border-radius:50%;border:none;background:#00000085;color:#fff;display:flex;align-items:center;justify-content:center;position:relative;padding:0;overflow:hidden}.manual-download-btn.is-decrypting{background:#00000085}.manual-download-btn.is-downloading:before{content:"";position:absolute;inset:0;border-radius:50%;background:conic-gradient(#fff var(--download-progress,0%),transparent 0);-webkit-mask-image:radial-gradient(transparent 70%,black 72%);mask-image:radial-gradient(transparent 70%,#000 72%);z-index:1}.manual-download-btn.is-downloading:after,.manual-download-btn.is-decrypting:after{display:none}.manual-download-btn>svg{position:relative;z-index:3}.manual-download-btn.is-decrypting:before{content:"";position:absolute;inset:0;border-radius:50%;border:2.5px solid rgba(255,255,255,.15);border-top-color:#fff;animation:spin .8s linear infinite;z-index:1;box-sizing:border-box}.manual-download-size{font-size:11px;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.8)}.manual-download-size-box{background:#00000085;padding:2px 6px;border-radius:999px}.file-video-center-play{position:absolute;inset:0;margin:auto;width:42px;height:42px;border:none;border-radius:50%;background:#00000073;color:#fff;display:flex;align-items:center;justify-content:center;z-index:3}.file-video-duration--top{top:10px;left:10px;bottom:auto}.notification-center{position:fixed;top:12px;left:0;right:0;width:100%;display:flex;justify-content:center;pointer-events:none;z-index:1100}.notification{position:absolute;top:0;left:0;right:0;margin-inline:auto;width:min(94vw,430px);display:flex;flex-direction:row;align-items:center;justify-content:flex-start;gap:10px;border-radius:14px;border:1px solid transparent;box-shadow:0 14px 34px #0000003d;padding:12px 14px;pointer-events:auto;touch-action:none;cursor:default;-webkit-user-select:none;user-select:none;direction:rtl}.notification--success{background:linear-gradient(135deg,#0f766e,#0d9488);border-color:#14b8a6;color:#f0fdfa}.notification--info{background:linear-gradient(135deg,#1d4ed8,#3b82f6);border-color:#60a5fa;color:#eff6ff}.notification--error{background:linear-gradient(135deg,#b91c1c,#ef4444);border-color:#f87171;color:#fff1f2}.notification__icon{width:18px;height:18px;flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center}.notification__icon svg{width:18px;height:18px;display:block;fill:currentColor}.notification__message{margin:0;text-align:right;font-size:13px;line-height:1.5;font-weight:700;letter-spacing:.01em;word-break:break-word;flex:1}*,*:before,*:after{-webkit-user-select:none!important;-moz-user-select:none!important;-ms-user-select:none!important;user-select:none!important;-webkit-tap-highlight-color:transparent!important;-webkit-touch-callout:none!important;touch-action:manipulation!important}input,textarea{-webkit-user-select:text!important;-moz-user-select:text!important;-ms-user-select:text!important;user-select:text!important}html,body,#root{width:100%;height:100%;background:var(--bg-primary);overscroll-behavior:none;scroll-behavior:smooth}:root{--bg-primary: #ffffff;--bg-secondary: #f9fafb;--bg-tertiary: #f3f4f6;--border-primary: #f3f4f6;--border-secondary: #e5e7eb;--text-primary: #111827;--text-secondary: #6b7280;--text-tertiary: #9ca3af;--text-muted: #9ca3af;--hover-bg: #f3f4f6;--hover-bg-light: #f9fafb;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px rgba(0, 0, 0, .07);--shadow-lg: 0 20px 40px rgba(0, 0, 0, .12);--message-theirs-bg: #ffffff;--message-theirs-text: #111827;--input-bg: #f3f4f6;--input-bg-focus: #f9fafb;--reply-box-bg: #f9fafb;--reply-box-border: #f3f4f6;--reply-box-text: #374151;--reply-box-text-secondary: #6b7280;--message-reply-bg: rgba(255, 255, 255, .12);--message-reply-border: rgba(255, 255, 255, .55);--message-reply-text: rgba(255, 255, 255, .9);--message-reply-text-secondary: rgba(255, 255, 255, .95);--message-reply-bg-theirs: #f3f4f6;--message-reply-border-theirs: var(--accent-primary);--message-reply-text-theirs: rgba(55, 65, 81, .7);--message-reply-text-secondary-theirs: rgba(55, 65, 81, .85);--accent-primary: #2563eb;--accent-hover: #1d4ed8;--accent-soft: #dbeafe;--accent-soft-text: #1e40af;--message-mine-text: #ffffff;--message-link-color-mine: var(--message-mine-text);--message-link-color-theirs: color-mix(in srgb, var(--accent-primary) 10%, var(--message-theirs-text));--status-online-color: var(--accent-soft-text);--motion-fast: .18s;--motion-base: .26s;--motion-slow: .36s;--motion-ease-standard: cubic-bezier(.22, 1, .36, 1);--motion-ease-soft: cubic-bezier(.2, .8, .2, 1)}.dark-mode{--bg-primary: #1b1d21;--bg-secondary: #22252b;--bg-tertiary: #2a2e35;--border-primary: #313741;--border-secondary: #3b4350;--text-primary: #f9fafb;--text-secondary: #d1d5db;--text-tertiary: #9ca3af;--text-muted: #9ca3af;--hover-bg: #323846;--hover-bg-light: #2a303b;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .3);--shadow-md: 0 4px 6px rgba(0, 0, 0, .4);--shadow-lg: 0 20px 40px rgba(0, 0, 0, .6);--message-theirs-bg: #2d323c;--message-theirs-text: #f9fafb;--input-bg: #2d323c;--input-bg-focus: #3a414d;--reply-box-bg: #2d323c;--reply-box-border: #3a414d;--reply-box-text: #f9fafb;--reply-box-text-secondary: #d1d5db;--message-reply-bg: rgba(255, 255, 255, .08);--message-reply-border: rgba(255, 255, 255, .3);--message-reply-text: rgba(255, 255, 255, .8);--message-reply-text-secondary: rgba(255, 255, 255, .9);--message-reply-bg-theirs: rgba(255, 255, 255, .05);--message-reply-border-theirs: var(--accent-primary);--message-reply-text-theirs: rgba(249, 250, 251, .6);--message-reply-text-secondary-theirs: rgba(249, 250, 251, .8);--accent-primary: #60a5fa;--accent-hover: #3b82f6;--accent-soft: rgba(96, 165, 250, .18);--accent-soft-text: #bfdbfe;--message-mine-text: #ffffff;--message-link-color-mine: var(--message-mine-text);--message-link-color-theirs: color-mix(in srgb, var(--accent-primary) 11%, var(--message-theirs-text));--status-online-color: var(--accent-soft-text)}.app{display:flex;height:var(--app-height, 100dvh);width:100%;background:var(--bg-primary);overflow:hidden}.app__sidebar{height:100%;width:100%;flex-shrink:0;border-right:1px solid var(--border-primary)}.app__sidebar--hidden-mobile{display:none}.app__main{height:100%;flex:1;min-width:0}.app__main--full{flex:1 1 100%;max-width:100%}.app__main--hidden-mobile,.app__resizer{display:none}@media(min-width:1024px){.app__sidebar{width:380px}.app__sidebar--hidden-mobile{display:block}.app__sidebar--hidden-desktop{display:none}.app__main--hidden-mobile{display:block}.app__resizer{display:block;width:4px;cursor:col-resize;flex-shrink:0;background:transparent;position:relative}.app__resizer:before{content:"";position:absolute;inset:0 1px;background:var(--border-primary);opacity:0;transition:opacity .15s ease}.app__resizer:hover:before{opacity:1}}@media(min-width:1120px){.app__main{flex:0 0 740px;max-width:740px}.app__main--full{flex:1 1 100%;max-width:100%}.app__sidebar{width:calc(100% - 740px);min-width:380px}}@media(min-width:1024px){.app--resizable-desktop .app__sidebar{width:var(--desktop-sidebar-width, 380px);min-width:320px}.app--resizable-desktop .app__main{flex:1 1 auto;max-width:none;min-width:520px}}@keyframes skeleton-pulse{0%,to{opacity:1}50%{opacity:.5}}.skeleton{background:linear-gradient(90deg,var(--bg-tertiary) 0%,var(--border-secondary) 50%,var(--bg-tertiary) 100%);background-size:200% 100%;animation:skeleton-shimmer 1.5s ease-in-out infinite;border-radius:8px}@keyframes skeleton-shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.skeleton-chat-item{display:flex;align-items:center;gap:12px;padding:12px}.skeleton-avatar{width:48px;height:48px;border-radius:50%;flex-shrink:0}.skeleton-chat-content{flex:1;min-width:0}.skeleton-chat-name{height:16px;width:45%;margin-bottom:8px}.skeleton-chat-message{height:14px;width:70%}.skeleton-message-row{display:flex;margin-top:12px}.skeleton-message-row--mine{justify-content:flex-end}.skeleton-message-row--theirs{justify-content:flex-start}.skeleton-message-bubble{max-width:70%;height:48px;border-radius:16px}.skeleton-message-bubble--mine{background:linear-gradient(90deg,var(--accent-soft) 0%,var(--accent-soft-text) 50%,var(--accent-soft) 100%);background-size:200% 100%;animation:skeleton-shimmer 1.5s ease-in-out infinite}.skeleton-message-bubble--theirs{background:linear-gradient(90deg,var(--bg-tertiary) 0%,var(--border-secondary) 50%,var(--bg-tertiary) 100%);background-size:200% 100%;animation:skeleton-shimmer 1.5s ease-in-out infinite}.avatar{position:relative;flex-shrink:0}.avatar__circle{display:flex;align-items:center;justify-content:center;border-radius:50%;font-weight:600;font-family:Vazir,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;color:#fff;box-shadow:var(--shadow-sm)}.avatar__image{width:100%;height:100%;object-fit:cover;border-radius:50%;display:block;box-shadow:var(--shadow-sm)}.avatar__circle--saved{background:var(--accent-primary)}.avatar--sm .avatar__circle{width:40px;height:40px;font-size:14px}.avatar--md .avatar__circle{width:48px;height:48px;font-size:16px}.avatar--lg .avatar__circle{width:64px;height:64px;font-size:20px}.avatar--xl .avatar__circle{width:96px;height:96px;font-size:30px}.avatar--sm .avatar__image{width:40px;height:40px}.avatar--md .avatar__image{width:48px;height:48px}.avatar--lg .avatar__image{width:64px;height:64px}.avatar--xl .avatar__image{width:96px;height:96px}.avatar__status{position:absolute;bottom:0;right:0;border-radius:50%;border-style:solid;border-color:var(--bg-primary)}.avatar--sm .avatar__status{width:10px;height:10px;border-width:1.5px}.avatar--md .avatar__status{width:12px;height:12px;border-width:2px}.avatar--lg .avatar__status{width:16px;height:16px;border-width:2px}.avatar--xl .avatar__status{width:20px;height:20px;border-width:3px}.avatar__status--online{background-color:var(--accent-primary)}.avatar__status--offline{background-color:#9ca3af}.avatar-color-0{background:linear-gradient(135deg,#8b5cf6,#9333ea)}.avatar-color-1{background:linear-gradient(135deg,#2563eb,#0891b2)}.avatar-color-2{background:linear-gradient(135deg,#10b981,#0d9488)}.avatar-color-3{background:linear-gradient(135deg,#f97316,#dc2626)}.avatar-color-4{background:linear-gradient(135deg,#ec4899,#e11d48)}.avatar-color-5{background:linear-gradient(135deg,#6366f1,#3b82f6)}.avatar-color-6{background:linear-gradient(135deg,#f59e0b,#ca8a04)}.avatar-color-7{background:linear-gradient(135deg,#14b8a6,#16a34a)}.icon-btn{display:flex;align-items:center;justify-content:center;background:none;border:none;border-radius:12px;padding:8px;color:var(--text-secondary);cursor:pointer;transition:transform var(--motion-fast) var(--motion-ease-standard),background var(--motion-fast) var(--motion-ease-standard),color var(--motion-fast) var(--motion-ease-standard),box-shadow var(--motion-fast) var(--motion-ease-standard)}.icon-btn:hover{background:var(--hover-bg);color:var(--text-primary)}.icon-btn:active{transform:scale(.98)}.popover{position:absolute;top:44px;right:0;min-width:160px;background:var(--bg-primary);border:1px solid var(--border-primary);border-radius:14px;box-shadow:var(--shadow-lg);overflow:hidden;z-index:20}.popover--mini{min-width:180px;padding:6px;transform-origin:top right;animation:popover-in var(--motion-base) var(--motion-ease-standard)}@keyframes popover-in{0%{transform:translateY(4px) scale(.98);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}@keyframes screen-soft-in{0%{opacity:0;transform:translateY(8px) scale(.995)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes overlay-soft-in{0%{opacity:0}to{opacity:1}}.popover__item{width:100%;display:flex;align-items:center;gap:8px;padding:10px 12px;font-size:14px;background:none;border:none;cursor:pointer;color:var(--text-primary);font-family:inherit}.popover__item:hover{background:var(--hover-bg-light)}.popover__item--danger{color:#dc2626}.popover__item--danger:hover{background:#fef2f2}.dark-mode .popover__item--danger:hover{background:#7f1d1d}.chat-list{display:flex;flex-direction:column;height:100%;background:var(--bg-primary);animation:screen-soft-in var(--motion-slow) var(--motion-ease-standard)}.chat-list__header{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--border-primary);padding:12px 16px}.chat-list__header-left{display:flex;align-items:center;gap:12px}.chat-list__header-left>button{background:none;border:none;cursor:pointer;transition:transform .15s;padding:0;line-height:0}.chat-list__header-left>button:hover{transform:scale(1.05)}.chat-list__title{font-size:20px;font-weight:700;color:var(--text-primary)}.chat-list__title-wrap{display:flex;align-items:center;gap:8px}.chat-list__reconnect-btn{border:1px solid var(--border-secondary);background:var(--bg-secondary);color:var(--text-primary);border-radius:999px;padding:4px 10px;font-size:12px;cursor:pointer}.chat-list__header-actions{display:flex;align-items:center;gap:4px}.chat-list__menu{position:relative}.chat-list__search{padding:8px 12px}.chat-list__search-wrapper{position:relative}.chat-list__search-icon{position:absolute;right:12px;top:50%;transform:translateY(-50%);color:var(--text-secondary);pointer-events:none;display:flex}.chat-list__search-input{width:100%;border-radius:12px;background:var(--input-bg);padding:10px 36px 10px 16px;font-size:14px;color:var(--text-primary);border:none;outline:none;transition:background var(--motion-fast) var(--motion-ease-standard),box-shadow var(--motion-fast) var(--motion-ease-standard),transform var(--motion-fast) var(--motion-ease-standard);font-family:inherit;direction:rtl;text-align:right}.chat-list__search-input::placeholder{color:var(--text-secondary);direction:rtl;text-align:right}.chat-list__search-input:focus{background:var(--input-bg-focus);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent-primary) 26%,transparent)}.chat-list__items{flex:1;overflow-y:auto}.chat-list__empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:64px 0;color:var(--text-tertiary)}.chat-list__empty p{margin-top:12px;font-size:14px}.chat-list__item{display:flex;width:100%;align-items:center;gap:12px;padding:12px;text-align:left;background:none;border:none;cursor:pointer;transition:background var(--motion-base) var(--motion-ease-soft),transform var(--motion-fast) var(--motion-ease-standard);font-family:inherit}.chat-list__item:hover{background:var(--hover-bg-light);transform:none}.chat-list__item--active,.dark-mode .chat-list__item--active{background:var(--accent-soft)!important}.chat-list__item--drag-hover{background:color-mix(in srgb,var(--accent-primary) 22%,transparent)!important}.dark-mode .chat-list__item--drag-hover{background:color-mix(in srgb,var(--accent-primary) 30%,transparent)!important}.chat-list__item--ai .chat-list__item-name,.chat-list__item--ai .chat-list__item-text{color:var(--text-primary)}.chat-list__item-content{min-width:0;flex:1}.chat-list__item-row{display:flex;align-items:center;justify-content:space-between}.chat-list__item-name{font-size:15px;font-weight:600;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-list__item--active .chat-list__item-name,.dark-mode .chat-list__item--active .chat-list__item-name{color:var(--accent-hover)}.chat-list__item-time{margin-left:8px;flex-shrink:0;font-size:12px;color:var(--text-secondary);direction:rtl}.chat-list__item-preview{display:flex;align-items:center;justify-content:space-between}.chat-list__item-text{font-size:14px;color:var(--text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;direction:rtl;text-align:right}.chat-list__item-text-prefix{color:var(--text-tertiary)}.chat-list__unread-badge{margin-left:8px;display:flex;height:20px;min-width:20px;flex-shrink:0;align-items:center;justify-content:center;border-radius:9999px;background:var(--accent-primary);padding:0 6px;font-size:11px;font-weight:700;color:#fff}.chat-room{display:flex;flex-direction:column;height:100%;min-height:0;overflow:hidden;overscroll-behavior-y:none;background:var(--bg-secondary);animation:screen-soft-in var(--motion-slow) var(--motion-ease-standard)}.chat-room__header{position:relative;display:flex;align-items:center;gap:2px;border-bottom:1px solid var(--border-primary);background:var(--bg-primary);padding:7px 12px;box-shadow:var(--shadow-sm)}.chat-room__close-btn{display:none}@media(min-width:1024px){.chat-room__close-btn{display:flex}}.chat-room__header-clickable{display:flex;align-items:center;gap:12px;min-width:0;flex:1;background:none;border:none;padding:0;cursor:pointer;text-align:left;font-family:inherit}.chat-room__header-clickable:hover{opacity:.95}.chat-room__header-clickable--full{align-self:stretch;padding:5px 8px}.chat-room__header-clickable--full:focus-visible{outline:2px solid color-mix(in srgb,var(--accent-primary) 35%,transparent);outline-offset:2px}.chat-room__header-actions{position:relative}.ai-chat-drawer__overlay{position:absolute;inset:0;background:#00000047;z-index:70;display:flex;justify-content:flex-end}.ai-chat-drawer{width:min(88vw,280px);height:100%;background:var(--bg-primary);border-left:1px solid var(--border-primary);box-shadow:var(--shadow-lg);padding:12px;display:flex;flex-direction:column;gap:12px}.ai-chat-drawer__icon-btn{width:auto;height:auto;border-radius:0;border:none;background:transparent;color:var(--text-secondary);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:color .2s ease;padding:0 2px;align-self:flex-start}.ai-chat-drawer__icon-btn:hover{color:var(--text-primary)}.ai-chat-drawer__new-chat{border:none;border-radius:10px;background:var(--bg-secondary);color:var(--text-primary);height:42px;padding:0 14px;font:inherit;font-weight:650;font-size:16px;display:inline-flex;align-items:center;justify-content:flex-end;flex-direction:row-reverse;gap:8px;cursor:pointer;direction:rtl;text-align:right;transition:all .2s ease;width:100%}.ai-chat-drawer__new-chat:hover{background:var(--hover-bg);transform:translateY(-1px)}.ai-chat-drawer__section-header{display:flex;align-items:center;justify-content:flex-end;gap:6px;color:var(--text-secondary);padding:16px 6px 0;position:sticky;top:0;z-index:1;background:var(--bg-primary)}.ai-chat-drawer__list{display:flex;flex-direction:column;gap:8px;min-height:0;overflow-y:auto;padding-right:10px;margin-top:4px;scrollbar-gutter:stable}.ai-chat-drawer__section-title{font-size:12px;color:var(--text-secondary);font-weight:700;padding:0;text-align:right}.ai-chat-drawer__item{display:flex;align-items:center;gap:4px}.ai-chat-drawer__item-title{flex:1;display:inline-flex;align-items:center;justify-content:flex-start;gap:8px;text-align:right;border:none;border-radius:9px;background:transparent;color:var(--text-primary);font:inherit;font-size:14px;cursor:pointer;transition:all .2s ease;position:relative;padding:7px 9px 7px 28px}.ai-chat-drawer__item-title--active{background:var(--hover-bg);font-weight:700}.ai-chat-drawer__item-title:hover{background:var(--hover-bg)}.ai-chat-drawer__delete{width:28px;height:28px;border:none;border-radius:10px;background:transparent;color:var(--text-secondary);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease}.ai-chat-drawer__delete:hover{background:var(--hover-bg);color:var(--text-primary)}.ai-chat-drawer__loader{width:12px;height:12px;border-radius:999px;border:2px solid color-mix(in srgb,var(--accent-primary) 28%,transparent);border-top-color:var(--accent-primary);animation:ai-chat-drawer-spin .8s linear infinite;flex:0 0 auto;position:absolute;left:8px;top:calc(50% - 6px)}@keyframes ai-chat-drawer-spin{to{transform:rotate(360deg)}}.ai-chat-empty-state{min-height:calc(100dvh - 180px);display:flex;align-items:center;justify-content:center;text-align:center;font-size:24px;font-weight:700;color:var(--text-secondary);padding:20px;direction:rtl;position:relative;overflow:hidden}.ai-reasoning-message-stack{width:100%;display:flex;flex-direction:column;gap:8px}.ai-reasoning-header{all:unset;cursor:pointer;display:flex;align-items:center;justify-content:space-between;direction:rtl;color:var(--text-secondary)}.ai-reasoning-header-main{display:inline-flex;align-items:center;gap:8px}.ai-reasoning-timer{font-variant-numeric:tabular-nums;font-size:12px;opacity:.8}.ai-reasoning-chevron{transition:transform .2s ease}.ai-reasoning-chevron--open{transform:rotate(180deg)}.ai-reasoning-static-title{font-size:14px;font-weight:700;color:var(--text-secondary)}.ai-reasoning-body{overflow:hidden}.ai-reasoning-content{font-size:13px;line-height:1.7;color:var(--text-secondary);white-space:pre-wrap;border-inline-start:2px solid var(--border-secondary);padding-inline-start:10px;direction:rtl;text-align:right}.ai-reasoning-answer{margin-top:6px;border-top:1px solid var(--border-secondary);padding-top:8px;direction:rtl;text-align:right}.chat-room__back-btn{display:flex;align-items:center;justify-content:center;border-radius:12px;padding:6px;color:var(--text-secondary);background:none;border:none;cursor:pointer;transition:background .15s}.chat-room__back-btn:hover{background:var(--hover-bg)}@media(min-width:1024px){.chat-room__back-btn{display:none}}.chat-room__header-info{min-width:0;flex:1}.chat-room__contact-name{display:flex;font-size:15px;font-weight:600;color:var(--text-primary)}.chat-room__contact-name-2{max-width:300px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-room__contact-status{font-size:12px;color:var(--text-secondary);direction:rtl;text-align:left}.chat-room__contact-status--online{color:var(--status-online-color);direction:rtl;text-align:left}.message-row{overflow-x:visible}.chat-room__messages{flex:1;overflow-y:auto;padding:18px 12px 10px;overscroll-behavior-y:contain;overscroll-behavior-x:none;overflow-anchor:none;min-height:0;background:var(--bg-secondary)}@media(min-width:640px){.chat-room__messages{padding:16px 24px}}.chat-room__messages-inner{position:relative}.chat-room__date-separator{display:flex;justify-content:center;padding:16px 0}.chat-room__date-label{border-radius:9999px;background:var(--bg-primary);padding:4px 16px;font-size:12px;font-weight:500;color:var(--text-secondary);box-shadow:var(--shadow-sm);direction:rtl}.message-row{display:flex;margin-top:3px;touch-action:pan-y;position:relative}.message-row--mine{justify-content:flex-end}.message-row--theirs{justify-content:flex-start;padding-left:0}.message-row--theirs.message-row--group{padding-left:48px}.message-row--first{margin-top:5px}.message-bubble{max-width:90%;padding:7px 11px 6px;border-radius:18px;margin-bottom:2px;transition:transform var(--motion-fast) var(--motion-ease-standard),box-shadow var(--motion-base) var(--motion-ease-standard);min-width:0;overflow:visible}@keyframes message-highlight-fade{0%{box-shadow:0 0 #f59e0b00}10%{box-shadow:0 0 0 2px #f59e0bb3}85%{box-shadow:0 0 0 2px #f59e0bb3}to{box-shadow:0 0 #f59e0b00}}.message-bubble--highlighted{animation:message-highlight-fade 1.5s ease-in-out forwards!important;z-index:2}@media(min-width:640px){.message-bubble{max-width:76%}}.message-bubble--mine{background:linear-gradient(180deg,var(--accent-primary) 0%,var(--accent-hover) 100%);color:var(--message-mine-text);box-shadow:0 2px 6px color-mix(in srgb,var(--accent-primary) 14%,transparent);--message-link-color: var(--message-link-color-mine)}.message-bubble--theirs{background:var(--message-theirs-bg);color:var(--message-theirs-text);box-shadow:0 4px 14px #0f172a14;--message-link-color: var(--message-link-color-theirs)}.message-forwarded-label{display:block;margin:0 0 6px auto;padding:2px 8px;border:0;border-radius:999px;background:#0f172a1f;color:inherit;font-size:11px;font-style:normal;font-family:Vazir,sans-serif;font-weight:700;text-align:right;direction:rtl;unicode-bidi:plaintext;cursor:pointer;opacity:.95}.message-forwarded-label:hover{opacity:1;background:#0f172a2e}.message-bubble--mine.msg-shape--single{border-radius:16px}.message-bubble--mine.msg-shape--first{border-radius:16px 16px 8px}.message-bubble--mine.msg-shape--middle{border-radius:16px 8px 8px 16px}.message-bubble--mine.msg-shape--last{border-radius:16px 8px 16px 16px}.message-bubble--theirs.msg-shape--single{border-radius:16px}.message-bubble--theirs.msg-shape--first{border-radius:16px 16px 16px 8px}.message-bubble--theirs.msg-shape--middle{border-radius:8px 16px 16px 8px}.message-bubble--theirs.msg-shape--last{border-radius:8px 16px 16px}.message-bubble--mine .message-reply-box{background:var(--message-reply-bg);border-left:3px solid var(--message-reply-border)}.message-bubble--mine .message-reply-box__label{font-size:12px;opacity:.9;font-weight:600;color:var(--message-reply-text)}.message-bubble--mine .message-reply-box__text{font-size:13px;opacity:.95;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--message-reply-text-secondary);direction:rtl}.message-bubble--theirs .message-reply-box{background:var(--message-reply-bg-theirs);border-left:3px solid var(--message-reply-border-theirs)}.message-bubble--theirs .message-reply-box__label{font-size:12px;opacity:.7;font-weight:600;color:var(--message-reply-text-theirs)}.message-bubble--theirs .message-reply-box__text{font-size:13px;opacity:.85;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--message-reply-text-secondary-theirs);direction:rtl}.message-text{font-size:15px;line-height:1.625;white-space:pre-wrap;word-break:normal;overflow-wrap:anywhere;direction:rtl;text-align:right}.message-bubble--emoji-only{background:transparent!important;box-shadow:none!important;padding-top:10px;padding-bottom:4px;display:flex!important;flex-direction:column;align-items:center}.message-bubble--emoji-only .message-reply-box{background:#0000000d!important;border-left:3px solid var(--accent-primary)!important;width:0;min-width:100%;box-sizing:border-box}.dark-mode .message-bubble--emoji-only .message-reply-box{background:#ffffff1a!important}.message-bubble--emoji-only .message-reply-box__label{color:var(--accent-primary)!important}.message-bubble--emoji-only .message-reply-box__text{color:var(--text-secondary)!important}.message-bubble--emoji-only .message-forwarded-label{background:#0000000d!important;color:var(--text-secondary)!important;width:0;min-width:100%;box-sizing:border-box}.dark-mode .message-bubble--emoji-only .message-forwarded-label{background:#ffffff1a!important;color:#ffffffb3!important}.message-bubble--emoji-only .message-reaction{background:#0000000d!important;border:1px solid rgba(0,0,0,.1)!important}.dark-mode .message-bubble--emoji-only .message-reaction{background:#ffffff1a!important;border:1px solid rgba(255,255,255,.15)!important}.message-bubble--emoji-only .message-reaction__count{color:var(--text-secondary)!important}.dark-mode .message-bubble--emoji-only .message-reaction__count{color:#fffc!important}.message-bubble--emoji-only .message-reaction--active,.dark-mode .message-bubble--emoji-only .message-reaction--active{background:var(--accent-soft)!important;border-color:var(--accent-primary)!important}.message-bubble--emoji-only .message-reaction--active .message-reaction__count{color:var(--accent-hover)!important}.message-bubble--emoji-only .message-reactions{width:100%;display:flex;justify-content:flex-start}.message-bubble--emoji-only .message-meta{width:100%;display:flex;justify-content:flex-end}.message-text--emoji-only{line-height:1.15;letter-spacing:0;text-align:center;white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word;max-inline-size:100%;width:fit-content;min-width:0;margin-inline:auto}.message-text--emoji-only-1{font-size:clamp(76px,13vw,108px)}.message-text--emoji-only-2{font-size:clamp(62px,10.8vw,88px)}.message-text--emoji-only-3{font-size:clamp(54px,9.4vw,78px)}.message-text--emoji-only-4{font-size:clamp(48px,8.4vw,68px)}.message-text--emoji-only-5{font-size:clamp(42px,7.2vw,60px)}.message-text--emoji-only>span{font-family:AppleEmoji,Vazir,sans-serif;overflow-wrap:anywhere;word-break:break-word}.message-text>span{word-break:break-word;overflow-wrap:anywhere}.message-text--markdown{white-space:normal;line-height:1.6;direction:rtl;text-align:right}.message-text--markdown .md-h1{font-size:1.4em;font-weight:700;margin:.5em 0 .3em;line-height:1.3;border-bottom:1px solid rgba(0,0,0,.1);padding-bottom:.2em}.message-text--markdown .md-h2{font-size:1.2em;font-weight:700;margin:.5em 0 .3em;line-height:1.3}.message-text--markdown .md-h3{font-size:1.05em;font-weight:600;margin:.4em 0 .25em;line-height:1.3}.message-text--markdown .md-h4{font-size:1em;font-weight:600;margin:.4em 0 .2em}.message-text--markdown .md-h5{font-size:.9em;font-weight:600;margin:.3em 0 .2em}.message-text--markdown .md-h6{font-size:.85em;font-weight:600;margin:.3em 0 .2em;opacity:.75}.message-text--markdown .md-p{margin:0;white-space:pre-wrap;word-break:normal;overflow-wrap:break-word}.message-text--markdown .md-p:first-child{margin-top:0}.message-text--markdown .md-p:last-child{margin-bottom:0}.message-text--markdown .md-strong{font-weight:700}.message-text--markdown .md-em{font-style:italic}.message-text--markdown .md-del{text-decoration:line-through;opacity:.7}.message-text--markdown .md-ul{list-style:disc;padding-right:1.4em;margin:.3em 0}.message-text--markdown .md-ol{list-style:decimal;padding-right:1.4em;margin:.3em 0}.message-text--markdown .md-li{margin:.1em 0;line-height:1.5}.message-text--markdown .md-blockquote{border-right:3px solid currentColor;opacity:.85;padding:4px 10px;margin:.4em 0;background:#0000000d;border-radius:0 4px 4px 0;font-style:italic}.message-text--markdown .md-code-inline{font-family:Courier New,Courier,monospace;font-size:.87em;background:#0000001a;border-radius:4px;padding:1px 5px}.message-text--markdown .md-code-block-wrapper{margin:.5em 0;border-radius:10px;overflow:hidden;background:#0000001f;direction:ltr;text-align:left}.message-text--markdown .md-code-block-header{display:flex;align-items:center;justify-content:space-between;padding:6px 12px;background:#00000014;border-bottom:1px solid rgba(0,0,0,.08);min-height:34px}.message-text--markdown .md-code-lang{font-family:Courier New,Courier,monospace;font-size:11px;font-weight:600;color:#00000073;text-transform:uppercase;letter-spacing:.06em}.message-text--markdown .md-code-copy-btn{display:inline-flex;align-items:center;gap:4px;padding:3px 8px;border-radius:6px;border:1px solid rgba(0,0,0,.15);background:#ffffff8c;color:#0000008c;font-size:11px;font-weight:500;cursor:pointer;font-family:inherit;transition:all .15s;margin-left:auto;user-select:none!important;-webkit-user-select:none!important}.message-text--markdown .md-code-copy-btn:hover{background:#ffffffd9;color:#000000bf}.message-text--markdown .md-code-copy-btn--copied{background:#d1fae5;border-color:#6ee7b7;color:#047857}.message-text--markdown .md-code-copy-btn--copied:hover{background:#a7f3d0}.message-text--markdown .md-code-block{font-family:Courier New,Courier,monospace;font-size:.84em;padding:10px 14px;margin:0;overflow-x:auto;white-space:pre;display:block;background:transparent}.message-text--markdown .md-code-block code{background:transparent;padding:0;border-radius:0;font-size:inherit}.message-text--markdown .md-link{word-break:break-word}.message-text .md-link,.message-text .md-link:any-link,.message-text .md-link:hover,.message-text .md-link:active,.message-text .md-link:visited,.message-text .md-link:focus{color:var(--message-link-color, currentColor)!important;text-decoration:underline;text-decoration-color:currentColor;word-break:break-word;background:transparent;outline:none;box-shadow:none}.dark-mode .message-text--markdown .md-code-inline{background:#ffffff1f}.dark-mode .message-text--markdown .md-code-block-wrapper{background:#00000059}.dark-mode .message-text--markdown .md-code-block-header{background:#ffffff0f;border-bottom-color:#ffffff14}.dark-mode .message-text--markdown .md-code-lang{color:#fff6}.dark-mode .message-text--markdown .md-code-copy-btn{background:#ffffff1a;border-color:#ffffff26;color:#fff9}.dark-mode .message-text--markdown .md-code-copy-btn:hover{background:#ffffff2e;color:#ffffffe6}.dark-mode .message-text--markdown .md-code-copy-btn--copied{background:#064e3b;border-color:#065f46;color:#6ee7b7}.dark-mode .message-text--markdown .md-blockquote{background:#ffffff0d}.dark-mode .message-text--markdown .md-link,.dark-mode .message-text--markdown .md-link:any-link,.dark-mode .message-text--markdown .md-link:hover,.dark-mode .message-text--markdown .md-link:active,.dark-mode .message-text--markdown .md-link:visited,.dark-mode .message-text--markdown .md-link:focus{color:var(--message-link-color, inherit)}.message-bubble--mine .message-text--markdown .md-code-inline{background:#fff3;color:#fff}.message-bubble--mine .message-text--markdown .md-code-block-wrapper{background:#00000047}.message-bubble--mine .message-text--markdown .md-code-block-header{background:#0000002e;border-bottom-color:#ffffff1a}.message-bubble--mine .message-text--markdown .md-code-lang{color:#ffffff80}.message-bubble--mine .message-text--markdown .md-code-copy-btn{background:#ffffff26;border-color:#ffffff40;color:#ffffffbf}.message-bubble--mine .message-text--markdown .md-code-copy-btn:hover{background:#ffffff47;color:#fff}.message-bubble--mine .message-text--markdown .md-code-copy-btn--copied{background:#6ee7b733;border-color:#6ee7b780;color:#6ee7b7}.message-bubble--mine .message-text--markdown .md-code-block{color:#e2e8f0}.message-bubble--mine .message-text--markdown .md-blockquote{border-right-color:#fff9;background:#ffffff1a}.message-bubble--mine .message-text--markdown .md-link,.message-bubble--mine .message-text--markdown .md-link:any-link,.message-bubble--mine .message-text--markdown .md-link:hover,.message-bubble--mine .message-text--markdown .md-link:active,.message-bubble--mine .message-text--markdown .md-link:visited,.message-bubble--mine .message-text--markdown .md-link:focus{color:var(--message-link-color, inherit)}.message-bubble--mine .message-text--markdown .md-h1{border-bottom-color:#fff3}.message-bubble--emoji-only .message-meta{color:#000!important}.dark-mode .message-bubble--emoji-only .message-meta{color:#fff!important}.message-bubble--emoji-only .message-meta--mine,.message-bubble--emoji-only .message-meta--theirs,.message-bubble--emoji-only .message-meta--mine .message-edited-label,.message-bubble--emoji-only .message-meta--mine .message-ai-model-label,.message-bubble--emoji-only .message-meta--mine .message-seen--single,.message-bubble--emoji-only .message-meta--mine .message-seen--double{color:inherit}.message-meta{display:flex;align-items:center;justify-content:flex-end;gap:4px;margin-top:12px;-webkit-user-select:none;user-select:none}.message-meta--mine{color:color-mix(in srgb,var(--message-mine-text) 78%,transparent)}.message-meta--theirs{color:var(--text-secondary)}.message-time{font-size:10px;order:2}.message-edited-label{font-size:10px;opacity:.75;order:1}.message-meta--mine .message-edited-label{opacity:.75}.message-ai-model-label{font-size:10px;opacity:.8;order:1}.message-meta--mine .message-ai-model-label{opacity:.78}.message-seen{margin-left:2px;order:3;position:relative;display:inline-flex;align-items:center;width:15px;height:12px}.message-seen__check{position:absolute;inset-inline-start:0;top:0}.message-seen__check--second{inset-inline-start:4px}.message-seen--single{opacity:.75;color:color-mix(in srgb,var(--message-mine-text) 88%,transparent)}.message-seen--double{opacity:1;color:var(--message-mine-text)}.message-pending-indicator{font-size:15px;font-weight:700;opacity:.9;margin-left:2px;display:inline-flex;align-items:center;line-height:1;order:3}.chat-room__input-area{border-top:1px solid var(--border-primary);background:var(--bg-primary);padding:10px 12px calc(10px + env(safe-area-inset-bottom,0px))}.chat-room__input-wrapper{width:100%;display:flex;align-items:flex-end;justify-content:center;gap:10px;animation:screen-soft-in var(--motion-base) var(--motion-ease-standard)}.chat-room__text-input{flex:1;min-height:46px;max-height:200px;border-radius:22px;background:var(--input-bg);padding:12px 18px;font-size:15px;line-height:1.4;color:var(--text-primary);border:none;outline:none;resize:none;overflow-y:auto;white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word;transition:all .15s;font-family:inherit;direction:rtl;text-align:right}.chat-room__text-input::placeholder{color:var(--text-secondary)}.chat-room__text-input:focus{background:var(--input-bg-focus);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent-primary) 26%,transparent)}.chat-room__send-btn{display:flex;height:46px;width:46px;flex-shrink:0;align-items:center;justify-content:center;border-radius:16px;border:none;cursor:pointer;transition:all .15s}.chat-room__send-btn--active{background:var(--accent-primary);color:#fff;box-shadow:0 4px 12px color-mix(in srgb,var(--accent-primary) 30%,transparent)}.chat-room__send-btn--active:hover{background:var(--accent-hover)}.chat-room__send-btn--active:active{transform:scale(.95)}.chat-room__send-btn--disabled{background:var(--input-bg);color:var(--text-tertiary);cursor:default}.chat-room__blocked-box{width:100%;border-radius:14px;border:1px solid rgba(239,68,68,.35);background:#ef444414;color:#b91c1c;padding:12px 14px;font-size:13px;font-weight:600;text-align:center;direction:rtl}.chat-room__reply-edit-box{margin:0 auto 8px;padding:8px 10px;border-radius:14px;background:var(--reply-box-bg);border:1px solid var(--reply-box-border);display:flex;align-items:center;justify-content:flex-start;gap:10px;direction:rtl;text-align:right;flex-direction:row-reverse}.chat-room__upload-progress-box{margin:0 auto 8px;display:flex;align-items:center;gap:10px;direction:rtl;flex-direction:row-reverse}.chat-room__upload-progress-track{flex:1;height:10px;border-radius:999px;background:var(--border-secondary);overflow:hidden;position:relative}.chat-room__upload-progress-fill{position:absolute;inset-block:0;inset-inline-start:0;width:0%;background:linear-gradient(90deg,var(--accent-primary),var(--accent-hover));transition:width .16s ease}.chat-room__upload-progress-track--indeterminate .chat-room__upload-progress-fill,.chat-room__upload-progress-fill--indeterminate{width:24%!important;background:linear-gradient(90deg,transparent,var(--accent-primary),transparent);inset-inline-start:auto;inset-inline-end:auto;right:-24%;left:auto;opacity:0;animation:chat-upload-indeterminate 1.25s linear infinite}@keyframes chat-upload-indeterminate{0%{right:-24%;opacity:0}12%{opacity:1}to{right:100%;opacity:1}}.chat-room__upload-progress-cancel{width:34px;height:34px;border-radius:10px;border:1px solid var(--border-primary);background:var(--bg-secondary);color:var(--text-secondary);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;transition:all .15s ease}.chat-room__upload-progress-cancel:hover{color:#ef4444;border-color:#ef444466}.chat-room__reply-edit-box__title{font-size:12px;font-weight:700;color:var(--reply-box-text);text-align:right}.chat-room__reply-edit-box__text{font-size:13px;color:var(--reply-box-text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:520px;direction:rtl;text-align:right}.chat-room-modal-overlay{position:absolute;inset:0;background:#0000004d;display:flex;align-items:center;justify-content:center;z-index:100;animation:overlay-soft-in var(--motion-fast) var(--motion-ease-standard)}@media(min-width:1024px){.chat-room-modal-overlay{position:fixed;z-index:1200}}.dark-mode .chat-room-modal-overlay{background:#0009}.chat-room-confirm-modal{width:100%;max-width:420px;margin:0 16px;border-radius:20px;background:var(--bg-primary);border:1px solid var(--border-primary);box-shadow:var(--shadow-lg);padding:20px;animation:popover-in var(--motion-base) var(--motion-ease-standard);direction:rtl;text-align:right}.chat-room-confirm-modal__title{margin:0;font-size:18px;font-weight:800;color:var(--text-primary)}.chat-room-confirm-modal__text{margin-top:10px;font-size:14px;color:var(--text-secondary);line-height:1.6}.chat-room-confirm-modal__actions{margin-top:18px;display:flex;justify-content:flex-end;gap:10px}.chat-room-confirm-modal__btn{border:none;border-radius:12px;padding:10px 14px;background:var(--bg-tertiary);color:var(--text-primary);cursor:pointer;font-weight:600;font-family:inherit}.chat-room-confirm-modal__btn:hover{background:var(--border-secondary)}.chat-room-confirm-modal__btn--danger{background:#dc2626;color:#fff}.chat-room-confirm-modal__btn--danger:hover{background:#b91c1c}.contact-info{height:100%;background:var(--bg-secondary);display:flex;flex-direction:column;animation:screen-soft-in var(--motion-slow) var(--motion-ease-standard)}.contact-info__header{display:flex;align-items:center;gap:12px;border-bottom:1px solid var(--border-primary);padding:12px 16px;background:var(--bg-primary);box-shadow:var(--shadow-sm)}.contact-info__back{display:flex;align-items:center;justify-content:center;border-radius:12px;padding:6px;color:var(--text-secondary);background:none;border:none;cursor:pointer;transition:background .15s}.contact-info__back:hover{background:var(--hover-bg)}.contact-info__title{font-size:18px;font-weight:700;color:var(--text-primary)}.contact-info__spacer{flex:1}.contact-info__content{flex:1;overflow-y:auto;padding:24px 16px 32px}.contact-info__content>*{max-width:720px;margin-left:auto;margin-right:auto}.contact-info__avatar{display:flex;flex-direction:column;align-items:center;padding:24px 0}.contact-info__name{margin-top:14px;font-size:22px;font-weight:700;color:var(--text-primary);text-align:center}.contact-info__username{font-size:14px;color:var(--text-secondary)}.contact-info__status{margin-top:5px;font-size:12px;color:var(--text-secondary)}.contact-info__status--online,.status-online-text{color:var(--status-online-color)}.contact-info__card{max-width:560px;margin:0 auto 12px;border-radius:16px;background:var(--bg-primary);border:1px solid var(--border-primary);padding:14px 16px}.contact-info__label{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary)}.contact-info__bio{margin-top:8px;font-size:14px;color:var(--text-primary);line-height:1.6}.contact-info__bio--empty{color:var(--text-tertiary);font-style:italic}.contact-info__mono{margin-top:8px;font-family:SF Mono,Fira Code,Fira Mono,Roboto Mono,monospace;font-size:13px;font-weight:600;color:var(--text-primary)}.contact-info__registration-date{margin-top:8px;font-family:Vazir,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:14px;font-weight:600;color:var(--text-primary)}.contact-info__members-title{max-width:560px;margin:0 auto 4px;padding:8px 4px 4px;font-size:12px;color:var(--text-secondary);font-family:Vazir,sans-serif;text-align:left;direction:ltr}.chat-room__drag-upload-overlay{position:absolute;inset:0;z-index:80;border:2px dashed var(--accent-primary);background:color-mix(in srgb,var(--accent-primary) 46%,transparent);border-radius:14px;display:flex;align-items:center;justify-content:center;pointer-events:none}.chat-room__drag-upload-overlay-content{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;color:#fff;text-align:center;font-size:15px;font-weight:700;font-family:Vazir,sans-serif;text-shadow:0 2px 8px rgba(0,0,0,.35)}.contact-info__actions-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}.contact-info__action-btn{width:100%;display:flex;align-items:center;justify-content:center;gap:10px;padding:10px 12px;border-radius:12px;border:1px solid var(--border-primary);background:var(--bg-secondary);color:var(--text-primary, #fff);cursor:pointer;font-size:14px;font-weight:700;font-family:Vazir,sans-serif}.contact-info__action-btn--danger{border-color:#ef444473;background:#ef44441a;color:#dc2626}.contact-info__action-btn--danger-soft{background:#ef44440f;color:#b91c1c}.confirm-modal{width:100%;max-width:420px;border-radius:20px;background:var(--bg-primary);border:1px solid var(--border-primary);box-shadow:var(--shadow-lg);padding:20px;animation:popover-in var(--motion-base) var(--motion-ease-standard)}.confirm-modal__title{margin:0;font-size:18px;font-weight:800;color:var(--text-primary)}.confirm-modal__text{margin-top:10px;font-size:14px;color:var(--text-secondary);line-height:1.6}.confirm-modal__actions{margin-top:18px;display:flex;justify-content:flex-end;gap:10px}.confirm-modal__btn{border:none;border-radius:12px;padding:10px 14px;background:var(--bg-tertiary);color:var(--text-primary);cursor:pointer;font-weight:600;font-family:inherit}.confirm-modal__btn:hover{background:var(--border-secondary)}.confirm-modal__btn--danger{background:#dc2626;color:#fff}.confirm-modal__btn--danger:hover{background:#b91c1c}.profile{display:flex;flex-direction:column;height:100%;background:var(--bg-primary);animation:screen-soft-in var(--motion-slow) var(--motion-ease-standard)}.profile__header{display:flex;align-items:center;gap:12px;border-bottom:1px solid var(--border-primary);padding:12px 16px}.profile__header-back{display:flex;align-items:center;justify-content:center;border-radius:12px;padding:6px;color:var(--text-secondary);background:none;border:none;cursor:pointer;transition:background .15s}.profile__header-back:hover{background:var(--hover-bg)}.profile__header-title{font-size:17px;font-weight:700;color:var(--text-primary)}.profile__header-spacer{flex:1}.profile__edit-btn{display:flex;align-items:center;gap:6px;border-radius:12px;background:var(--accent-primary);padding:6px 12px;font-size:14px;font-weight:500;color:#fff;border:none;cursor:pointer;transition:background .15s;font-family:Vazir,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.profile__edit-btn:hover{background:var(--accent-hover)}.profile__cancel-btn{display:flex;align-items:center;gap:6px;border-radius:12px;background:var(--bg-tertiary);padding:6px 12px;font-size:14px;font-weight:500;color:var(--text-secondary);border:none;cursor:pointer;transition:background .15s;font-family:Vazir,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.profile__cancel-btn:hover{background:var(--border-secondary)}.profile__save-btn{display:flex;align-items:center;gap:6px;border-radius:12px;background:var(--accent-primary);padding:6px 12px;font-size:14px;font-weight:500;color:#fff;border:none;cursor:pointer;transition:background .15s;font-family:Vazir,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.profile__save-btn:hover{background:var(--accent-hover)}.profile__header-actions{display:flex;align-items:center;gap:8px}.profile__content{flex:1;overflow-y:auto}.profile__avatar-section{display:flex;flex-direction:column;align-items:center;padding:32px 24px 24px}.profile__name{margin-top:16px;font-size:24px;font-weight:700;color:var(--text-primary)}.profile__username-display{font-size:14px;color:var(--text-secondary)}.profile__online-badge{margin-top:8px;display:inline-flex;align-items:center;gap:4px;border-radius:9999px;background:#ecfdf5;padding:4px 12px;font-size:12px;font-weight:500;color:#047857}.dark-mode .profile__online-badge{background:#064e3b;color:#6ee7b7}.profile__online-dot{width:6px;height:6px;border-radius:50%;background:var(--accent-primary)}.profile__avatar-actions{margin-top:12px;display:flex;align-items:center;gap:8px}.profile__avatar-btn{display:inline-flex;font-family:Vazir,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;align-items:center;gap:6px;border-radius:999px;border:1px solid var(--border-secondary);background:var(--bg-primary);color:var(--text-secondary);padding:6px 12px;font-size:13px;cursor:pointer}.profile__avatar-btn--danger{color:#dc2626;font-family:Vazir,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;border-color:#dc262640}.profile__avatar-btn:disabled,.profile__avatar-btn[aria-disabled=true]{opacity:.6;cursor:not-allowed;font-family:Vazir,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.profile__fields{max-width:512px;padding:0 16px 32px;margin:0 auto;width:100%}.profile__chat-id-card{margin-bottom:10px;border-radius:16px;background:var(--bg-secondary);padding:16px}.profile__chat-id-row{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.profile__chat-id-row>div{flex:1;min-width:0}.profile__field-label{display:block;font-size:12px;font-weight:500;text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary)}.profile__chat-id-value{margin:6px 0 0;font-family:Vazir,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:14px;font-weight:600;color:var(--text-primary);word-break:break-word;overflow-wrap:break-word}.profile__copy-btn{display:flex;align-items:center;justify-content:center;flex-shrink:0;border-radius:12px;padding:8px;background:none;border:none;color:var(--text-secondary);cursor:pointer;transition:all .15s}.profile__copy-btn:hover{background:var(--border-secondary);color:var(--text-secondary)}.profile__copy-btn--copied{background:#d1fae5;color:#059669}.dark-mode .profile__copy-btn--copied{background:#064e3b;color:#6ee7b7}.profile__copy-btn--copied:hover{background:#d1fae5;color:#059669}.dark-mode .profile__copy-btn--copied:hover{background:#064e3b;color:#6ee7b7}.profile__field-group{margin-bottom:20px}.profile__field-input{width:100%;border-radius:12px;border:1px solid var(--border-secondary);background:var(--bg-primary);padding:10px 16px;font-size:15px;color:var(--text-primary);outline:none;transition:all .15s;font-family:inherit}.profile__field-hint{direction:rtl;text-align:right}.profile__field-input:focus{border-color:var(--accent-primary);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent-primary) 26%,transparent)}.profile__field-input::placeholder{color:var(--text-tertiary)}.profile__field-input--username{padding-left:32px}.profile__username-wrapper{position:relative}.profile__username-at{position:absolute;left:16px;top:50%;transform:translateY(-50%);color:var(--text-tertiary)}.profile__field-static{border-radius:12px;background:var(--bg-secondary);padding:10px 16px}.profile__field-static p{font-size:15px;color:var(--text-primary)}.profile__field-static--with-copy{display:flex;align-items:center;justify-content:space-between}.profile__small-copy-btn{display:flex;align-items:center;justify-content:center;border-radius:8px;padding:4px;background:none;border:none;color:var(--text-secondary);cursor:pointer;transition:color .15s}.profile__small-copy-btn:hover{color:var(--text-secondary)}.profile__small-copy-btn--copied{color:#059669}.profile__textarea{width:100%;resize:none;border-radius:12px;border:1px solid var(--border-secondary);background:var(--bg-primary);padding:10px 16px;font-size:15px;color:var(--text-primary);outline:none;transition:all .15s;font-family:inherit}.profile__textarea:focus{border-color:var(--accent-primary);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent-primary) 26%,transparent)}.profile__textarea::placeholder{color:var(--text-tertiary)}.profile__char-count{margin-top:4px;text-align:right;font-size:12px;color:var(--text-tertiary)}.profile__bio-empty{font-style:italic;color:var(--text-tertiary)!important}.profile__info-note{margin-top:32px;border-radius:16px;background:var(--accent-soft);padding:16px}.profile__info-note p{text-align:center;font-size:12px;line-height:1.625;color:var(--accent-hover);direction:rtl}.profile__groups-card{margin-top:16px;border-radius:16px;background:var(--bg-secondary);padding:14px}.profile__groups-title{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:700;margin-bottom:10px;color:var(--text-primary)}.profile__groups-empty{font-size:13px;color:var(--text-secondary);direction:rtl;text-align:right}.profile__group-item{display:flex;align-items:center;justify-content:space-between;border:1px solid var(--border-primary);border-radius:12px;padding:10px;margin-top:8px}.profile__group-name{margin:0;font-size:14px;color:var(--text-primary)}.profile__group-code{margin:4px 0 0;font-size:12px;color:var(--text-tertiary)}.profile__group-copy{border:none;background:var(--bg-primary);color:var(--text-secondary);border-radius:10px;padding:7px 9px;display:inline-flex;align-items:center;gap:5px;cursor:pointer;font-family:Vazir,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.dark-mode .profile__info-note p{color:var(--accent-soft-text)}.empty-state{display:flex;height:100%;flex-direction:column;align-items:center;justify-content:center;background:var(--bg-secondary);padding:32px;direction:rtl;position:relative;overflow:hidden}.empty-state__background{position:absolute;inset:0;z-index:1;pointer-events:none}.empty-state__content{position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;justify-content:center;pointer-events:none;gap:16px;max-width:480px}.empty-state__icon{display:flex;height:72px;width:72px;align-items:center;justify-content:center;border-radius:20px;background:linear-gradient(135deg,var(--accent-primary),var(--accent-hover));box-shadow:0 8px 20px color-mix(in srgb,var(--accent-primary) 30%,transparent);color:#fff;margin-bottom:8px}.empty-state__title{margin:16px 0 0;font-size:24px;font-weight:800;color:var(--text-primary);text-align:center}.empty-state__description{margin-top:12px;font-size:15px;text-align:center;color:var(--text-secondary);line-height:1.6}.empty-state__footer{margin-top:32px;display:flex;align-items:center;gap:8px;font-size:13px;font-weight:600;color:var(--text-tertiary);background:color-mix(in srgb,var(--bg-primary) 30%,transparent);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);padding:10px 20px;border-radius:999px;border:1px solid color-mix(in srgb,var(--border-primary) 40%,transparent);pointer-events:auto;box-shadow:var(--shadow-sm)}.empty-state__dot{width:6px;height:6px;border-radius:50%;background:var(--accent-primary)}@media(max-width:768px){.empty-state{display:none!important}}.login-page{height:100dvh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,color-mix(in srgb,var(--accent-primary) 14%,#ffffff),color-mix(in srgb,var(--accent-primary) 22%,#ffffff));padding:20px;position:relative}.dark-mode .login-page{background:linear-gradient(135deg,color-mix(in srgb,var(--accent-primary) 20%,#0f172a),color-mix(in srgb,var(--accent-primary) 15%,#1e293b))}.login-page__dark-toggle{position:absolute;top:20px;left:20px;z-index:10}.login-container{background:var(--bg-primary);padding:40px 32px;border-radius:20px;box-shadow:var(--shadow-lg);width:100%;max-width:420px;max-height:90vh;overflow-y:auto}.login-header{text-align:center;margin-bottom:32px}.login-header-icon{color:var(--text-primary)}.login-header h1{font-size:28px;margin:16px 0 8px;color:var(--text-primary)}.login-header p{color:var(--text-secondary)}.form-group{margin-bottom:20px}.form-group label{display:flex;align-items:center;gap:8px;margin-bottom:8px;font-size:14px;font-weight:500;color:var(--text-primary);font-family:Vazir,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;direction:rtl}.form-group label svg{flex-shrink:0}.form-group input{width:100%;padding:12px 16px;border:1px solid var(--border-secondary);border-radius:12px;font-size:15px;background:var(--bg-primary);color:var(--text-primary);font-family:Vazir,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;transition:border-color .15s,box-shadow .15s}.form-group input:focus{outline:none;border-color:var(--accent-primary);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent-primary) 26%,transparent)}.form-group input:invalid{box-shadow:none}.form-group input[type=text][inputmode=numeric]{font-family:SF Mono,Fira Code,monospace;letter-spacing:.3em;text-align:center;font-size:18px;font-weight:600}.login-btn{width:100%;padding:14px;background:var(--accent-primary);color:#fff;border:none;border-radius:12px;font-size:16px;font-weight:600;cursor:pointer;margin-top:8px;font-family:Vazir,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;direction:rtl;transition:background .15s,transform .1s}.login-btn:hover:not(:disabled){background:var(--accent-hover)}.login-btn:active:not(:disabled){transform:scale(.98)}.login-btn:disabled{opacity:.6;cursor:not-allowed}.secondary-btn{width:100%;padding:12px;background:var(--bg-tertiary);color:var(--text-secondary);border:none;border-radius:12px;font-size:15px;font-weight:500;cursor:pointer;font-family:Vazir,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;transition:background .15s,transform .1s;display:flex;align-items:center;justify-content:center;gap:6px;direction:rtl}.secondary-btn svg{flex-shrink:0}.secondary-btn:hover:not(:disabled){background:var(--border-secondary)}.secondary-btn:active:not(:disabled){transform:scale(.98)}.secondary-btn:disabled{opacity:.6;cursor:not-allowed}.error-message{color:#ef4444;font-size:14px;margin:8px 0;padding:10px 12px;background:#fef2f2;border-radius:8px;border:1px solid #fecaca;direction:rtl;text-align:right;font-family:Vazir,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.dark-mode .error-message{background:#7f1d1d;border-color:#991b1b;color:#fca5a5}.success-message{display:flex;align-items:flex-start;gap:10px;color:#059669;font-size:14px;margin:12px 0;padding:12px 14px;background:#f0fdf4;border-radius:10px;border:1px solid #bbf7d0;direction:rtl;text-align:right;font-family:Vazir,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;line-height:1.6}.dark-mode .success-message{background:#064e3b;border-color:#065f46;color:#6ee7b7}.success-message svg{flex-shrink:0;color:var(--accent-primary);margin-top:12px}.dark-mode .success-message svg{color:#34d399}.info-message{display:flex;align-items:flex-start;gap:10px;color:#d97706;font-size:13px;margin:12px 0;padding:12px 14px;background:#fffbeb;border-radius:10px;border:1px solid #fde68a;direction:rtl;text-align:right;font-family:Vazir,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;line-height:1.6}.dark-mode .info-message{background:#78350f;border-color:#92400e;color:#fcd34d}.info-message svg{flex-shrink:0;margin-top:12px;color:#f59e0b}.dark-mode .info-message svg{color:#fbbf24}.login-footer{margin-top:24px;text-align:right;font-size:13px;color:var(--text-secondary);line-height:1.5;direction:rtl}.login-footer a,.login-footer button{color:var(--accent-primary);text-decoration:none;font-weight:500;background:none;border:none;padding:0;cursor:pointer;font-family:Vazir,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:inherit;transition:color .15s}.login-footer a:hover,.login-footer button:hover{color:var(--accent-hover);text-decoration:underline}.modal-overlay{position:fixed;inset:0;min-height:100dvh;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);animation:overlay-soft-in var(--motion-base) var(--motion-ease-standard)}.modal-overlay--new-chat{overflow:hidden}.modal-overlay--new-chat.modal-overlay--closing{animation:modal-overlay-fade-out .2s ease forwards}.new-chat-modal{background:var(--bg-primary);border-radius:20px;width:100%;max-width:420px;font-family:Vazir,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;max-height:85vh;overflow:hidden;box-shadow:var(--shadow-lg);transition:transform var(--motion-base) var(--motion-ease-standard),box-shadow var(--motion-base) var(--motion-ease-standard)}@keyframes modal-overlay-fade-out{0%{opacity:1}to{opacity:0}}.modal-header{padding:20px 24px;border-bottom:1px solid var(--border-primary);display:flex;align-items:center;justify-content:space-between}.modal-header h2{margin:0;font-size:18px;font-weight:700;color:var(--text-primary)}.new-chat-modal__tabs{display:flex;font-family:Vazir,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;gap:10px;padding:12px 16px;border-bottom:1px solid var(--border-primary);background:linear-gradient(180deg,color-mix(in srgb,var(--bg-secondary) 72%,transparent),transparent)}.new-chat-modal__tab{flex:1;border:1px solid var(--border-primary);background:color-mix(in srgb,var(--bg-secondary) 86%,transparent);color:var(--text-secondary);border-radius:14px;padding:10px 12px;display:inline-flex;align-items:center;justify-content:center;gap:8px;cursor:pointer;font-weight:600;font-family:Vazir,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;transition:all .2s ease}.new-chat-modal__tab--active{background:var(--accent-primary);color:#fff;border-color:var(--accent-primary);box-shadow:0 4px 10px color-mix(in srgb,var(--accent-primary) 20%,transparent);font-family:Vazir,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.new-chat-modal__group-box{padding:16px;font-family:Vazir,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:linear-gradient(180deg,color-mix(in srgb,var(--bg-secondary) 55%,transparent),transparent 38%)}.new-chat-modal__label{display:block;margin-bottom:8px;font-family:Vazir,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:13px;color:var(--text-secondary)}.new-chat-modal__input-wrap{display:flex;align-items:center;gap:8px;background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:12px;font-family:Vazir,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;padding:0 10px;margin-bottom:10px}.new-chat-modal__input-wrap input{width:100%;border:none;background:transparent;color:var(--text-primary);height:40px;font-family:Vazir,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;outline:none}.new-chat-modal__input-wrap input::placeholder{color:var(--text-secondary)}.new-chat-modal__action{width:100%;border:none;border-radius:12px;background:var(--accent-primary);color:#fff;font-weight:700;font-family:Vazir,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;padding:10px 12px;cursor:pointer}.new-chat-modal__action--secondary{background:var(--accent-hover);font-family:Vazir,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.search-box{padding:16px 24px;border-bottom:1px solid var(--border-primary);display:flex;align-items:center;gap:12px;background:var(--bg-secondary)}.search-box svg{color:var(--text-secondary);flex-shrink:0}.search-box input{flex:1;border:none;background:none;font-size:15px;outline:none;color:var(--text-primary);font-family:Vazir,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.search-box input::placeholder{color:var(--text-secondary)}.chat-range-loader-wrap{display:flex;justify-content:center;align-items:center;padding:10px 0;pointer-events:none}.chat-range-loader-wrap--top{position:absolute;top:-18px;left:0;right:0;z-index:2}.chat-range-loader-wrap--bottom{position:absolute;bottom:0;left:0;right:0;z-index:2}.chat-range-loader{width:22px;height:22px;border-radius:50%;border:2px solid color-mix(in srgb,var(--accent-primary) 34%,transparent);border-top-color:var(--accent-primary);animation:chatRangeSpin .85s linear infinite;opacity:.95}.chat-range-loader--active{opacity:.95}@keyframes chatRangeSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.results{max-height:min(520px,calc(var(--app-height, 100dvh) - 220px));overflow-y:auto}.loading{direction:rtl;text-align:right}.loading,.no-results{padding:35px 24px;text-align:center;font-size:14px;color:var(--text-secondary)}.user-item{display:flex;align-items:center;gap:14px;padding:14px 24px;width:100%;text-align:left;border:none;background:none;cursor:pointer}.user-item:hover{background:var(--hover-bg-light)}@media(max-width:768px){.modal-overlay--new-chat{align-items:center;justify-content:center;padding:max(10px,env(safe-area-inset-top)) 8px max(12px,env(safe-area-inset-bottom))}.new-chat-modal{max-height:calc(var(--app-height, 100dvh) - 12px);border-radius:18px;margin-top:calc(var(--keyboard-offset, 0px) * -.25);transition:margin-top .2s ease}.results{max-height:calc(var(--app-height, 100dvh) - 190px)}}.user-name{font-weight:600;color:var(--text-primary)}.user-username{font-size:13px;color:var(--text-secondary)}.forward-modal{background:var(--bg-primary);border-radius:20px;width:100%;max-width:420px;max-height:85vh;overflow:hidden;box-shadow:var(--shadow-lg);transition:transform var(--motion-base) var(--motion-ease-standard),box-shadow var(--motion-base) var(--motion-ease-standard)}.reaction-picker{background:var(--bg-primary);border:1px solid var(--border-primary);border-radius:16px;box-shadow:var(--shadow-lg);overflow:hidden;width:268px;max-width:calc(100vw - 32px);animation:popover-in .15s ease-out}.reaction-picker__emojis{display:flex;gap:8px;padding:12px;overflow-x:auto;overflow-y:hidden;scroll-behavior:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;position:relative;touch-action:pan-x;mask-image:linear-gradient(to right,transparent 0,black 14px,black calc(100% - 14px),transparent 100%);-webkit-mask-image:linear-gradient(to right,transparent 0,black 14px,black calc(100% - 14px),transparent 100%)}.reaction-picker__emojis::-webkit-scrollbar{display:none}.reaction-picker__emojis:before,.reaction-picker__emojis:after{content:"";position:sticky;top:0;width:14px;height:100%;pointer-events:none;z-index:1}.reaction-picker__emojis:before{left:0;background:linear-gradient(to right,var(--bg-primary),rgba(255,255,255,0))}.reaction-picker__emojis:after{right:0;margin-left:auto;background:linear-gradient(to left,var(--bg-primary),rgba(255,255,255,0))}.reaction-picker__emoji{font-family:AppleEmoji,Vazir,sans-serif;flex:0 0 auto;display:flex;align-items:center;justify-content:center;width:36px;height:36px;font-size:20px;background:none;border:none;border-radius:50%;cursor:pointer;transition:all .15s}.reaction-picker__emoji:hover{background:var(--hover-bg);transform:scale(1.15)}.reaction-picker__emoji--active{background:var(--accent-soft);transform:scale(1.1)}.dark-mode .reaction-picker__emoji--active{background:var(--accent-soft)}.reaction-picker__menu{padding:6px}.reaction-picker__menu-item{width:100%;display:flex;align-items:center;gap:8px;padding:10px 12px;font-size:14px;background:none;border:none;border-radius:8px;cursor:pointer;color:var(--text-primary);font-family:inherit;transition:background .15s}.reaction-picker__menu-item:hover{background:var(--hover-bg-light)}.reaction-picker__menu-item--danger{color:#dc2626}.reaction-picker__menu-item--danger:hover{background:#fef2f2}.dark-mode .reaction-picker__menu-item--danger:hover{background:#7f1d1d}.message-reactions{display:flex;flex-wrap:wrap;gap:4px;margin-top:6px}.message-reaction{display:inline-flex;align-items:center;gap:4px;min-height:24px;padding:2px 8px;border-radius:12px;border:1.5px solid transparent;background:#0000000d;font-size:14px;cursor:pointer;transition:all .15s}.dark-mode .message-reaction{background:#ffffff14}.message-reaction:hover{transform:scale(1.08);background:#00000014}.dark-mode .message-reaction:hover{background:#ffffff1f}.message-reaction--active,.dark-mode .message-reaction--active{background:var(--accent-soft);border-color:var(--accent-primary)}.message-reaction__emoji{font-family:AppleEmoji,Vazir,sans-serif;line-height:1;display:inline-flex;align-items:center}.message-reaction__count{font-size:11px;font-weight:600;color:var(--text-secondary)}.message-reaction--active .message-reaction__count,.dark-mode .message-reaction--active .message-reaction__count{color:var(--accent-hover)}.message-bubble--mine .message-reaction{background:#ffffff26}.message-bubble--mine .message-reaction:hover{background:#ffffff40}.message-bubble--mine .message-reaction--active{background:#ffffff59;border-color:#fff9}.message-bubble--mine .message-reaction__count{color:color-mix(in srgb,var(--message-mine-text) 92%,transparent)}.dark-mode .message-bubble--mine .message-reaction__count{color:#ffffffe6}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}body[data-music-player=active] .app{padding-top:62px}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.theme-intensity-slider{-webkit-appearance:none;appearance:none;height:6px;border-radius:999px;cursor:pointer}.theme-intensity-slider::-webkit-slider-runnable-track{height:6px;border-radius:999px;background:transparent;border:none}.theme-intensity-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:20px;height:20px;border-radius:999px;margin-top:-7px;background:var(--accent-primary);border:none;box-shadow:0 0 0 1px color-mix(in srgb,var(--accent-primary) 42%,transparent)}.theme-intensity-slider::-moz-range-track{height:6px;border:none;border-radius:999px;background:transparent}.theme-intensity-slider::-moz-range-thumb{width:20px;height:20px;border-radius:999px;background:var(--accent-primary);border:none}.emoji-font{font-family:Vazir,AppleEmoji,sans-serif}
