@import "https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;500;600;700&family=Plus+Jakarta+Sans:wght@300;400;500;600;700&display=swap";
:root{--bg-main:#0a0512;--bg-card:#160e2699;--bg-card-hover:#1e1432cc;--bg-input:#0a0512b3;--border-color:#ffffff14;--border-color-active:#a855f766;--color-primary:#a855f7;--color-secondary:#ec4899;--color-accent:#f43f5e;--color-success:#10b981;--color-warning:#f59e0b;--color-text-main:#f3f4f6;--color-text-muted:#9ca3af;--color-text-dark:#1f2937;--gradient-brand:linear-gradient(135deg, #a855f7 0%, #ec4899 100%);--gradient-glow:radial-gradient(circle at 50% 50%, #a855f726 0%, #0a051200 70%);--font-title:"Outfit", sans-serif;--font-body:"Plus Jakarta Sans", sans-serif;--shadow-lg:0 10px 25px -5px #00000080, 0 8px 10px -6px #00000080;--shadow-glow:0 0 20px #a855f74d;--radius-lg:16px;--radius-md:12px;--radius-sm:8px;--radius-pill:9999px;--transition-smooth:all .3s cubic-bezier(.4, 0, .2, 1)}[data-accent=green]{--color-primary:#22c55e;--color-secondary:#16a34a;--color-accent:#86efac;--gradient-brand:linear-gradient(135deg, #22c55e 0%, #16a34a 100%);--gradient-glow:radial-gradient(circle at 50% 50%, #22c55e26 0%, #0a051200 70%);--border-color-active:#22c55e66;--shadow-glow:0 0 20px #22c55e4d}[data-accent=ocean]{--color-primary:#38bdf8;--color-secondary:#6366f1;--color-accent:#818cf8;--gradient-brand:linear-gradient(135deg, #38bdf8 0%, #6366f1 100%);--gradient-glow:radial-gradient(circle at 50% 50%, #38bdf826 0%, #0a051200 70%);--border-color-active:#38bdf866;--shadow-glow:0 0 20px #38bdf84d}[data-accent=ember]{--color-primary:#f97316;--color-secondary:#ef4444;--color-accent:#fbbf24;--gradient-brand:linear-gradient(135deg, #f97316 0%, #ef4444 100%);--gradient-glow:radial-gradient(circle at 50% 50%, #f9731626 0%, #0a051200 70%);--border-color-active:#f9731666;--shadow-glow:0 0 20px #f973164d}[data-accent=midnight]{--color-primary:#94a3b8;--color-secondary:#64748b;--color-accent:#cbd5e1;--gradient-brand:linear-gradient(135deg, #64748b 0%, #334155 100%);--gradient-glow:radial-gradient(circle at 50% 50%, #64748b26 0%, #0a051200 70%);--border-color-active:#64748b66;--shadow-glow:0 0 20px #64748b4d}*{box-sizing:border-box;margin:0;padding:0}html,body{--keyboard-height:0px;height:100dvh;max-height:100dvh;overflow:hidden}body{background-color:var(--bg-main);background-image:var(--gradient-glow);color:var(--color-text-main);font-family:var(--font-body);-webkit-font-smoothing:antialiased;background-attachment:fixed;flex-direction:column;display:flex}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInRight{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes pulseGlow{0%,to{opacity:.6;transform:scale(1)}50%{opacity:.8;transform:scale(1.05)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes countdown{0%{stroke-dashoffset:0}to{stroke-dashoffset:56.5px}}.glass-panel{background:var(--bg-card);-webkit-backdrop-filter:blur(16px);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg)}.glass-panel-hover:hover{background:var(--bg-card-hover);border-color:var(--border-color-active);transition:var(--transition-smooth)}.btn{font-family:var(--font-body);color:#fff;border-radius:var(--radius-md);cursor:pointer;transition:var(--transition-smooth);border:none;justify-content:center;align-items:center;gap:.5rem;padding:.75rem 1.5rem;font-size:.95rem;font-weight:600;text-decoration:none;display:inline-flex}.btn-primary{background:var(--gradient-brand);box-shadow:0 4px 14px #a855f766}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 6px 20px #a855f799}.btn-primary:active{transform:translateY(0)}.btn-secondary{border:1px solid var(--border-color);background:#ffffff14}.btn-secondary:hover{background:#ffffff26;border-color:#fff3;transform:translateY(-1px)}.btn-danger{background:linear-gradient(135deg,#ef4444,#b91c1c);box-shadow:0 4px 14px #ef44444d}.btn-danger:hover{transform:translateY(-2px);box-shadow:0 6px 20px #ef444480}.btn-icon{border-radius:var(--radius-pill);width:40px;height:40px;padding:0}.btn-disabled,.btn:disabled{opacity:.5;cursor:not-allowed;box-shadow:none!important;transform:none!important}.form-group{width:100%;margin-bottom:1.25rem}.form-label{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.5rem;font-size:.85rem;font-weight:500;display:block}.form-input{background:var(--bg-input);border:1px solid var(--border-color);border-radius:var(--radius-md);width:100%;color:var(--color-text-main);font-family:var(--font-body);transition:var(--transition-smooth);padding:.75rem 1rem;font-size:.95rem}.form-input:focus{border-color:var(--color-primary);outline:none;box-shadow:0 0 0 3px #a855f733}.auth-container{justify-content:center;align-items:center;min-height:100vh;padding:2rem 1rem;animation:.6s ease-out fadeIn;display:flex}.auth-card{width:100%;max-width:440px;padding:2.5rem}.auth-header{text-align:center;margin-bottom:2rem}.logo-container{justify-content:center;margin-bottom:1rem;display:flex}.logo-heart{width:64px;height:64px;animation:4s ease-in-out infinite float}.auth-title{font-family:var(--font-title);background:var(--gradient-brand);-webkit-text-fill-color:transparent;-webkit-background-clip:text;margin-bottom:.5rem;font-size:1.85rem;font-weight:700}.auth-subtitle{color:var(--color-text-muted);font-size:.9rem}.auth-switch{text-align:center;color:var(--color-text-muted);margin-top:1.5rem;font-size:.9rem}.auth-switch-btn{color:var(--color-secondary);cursor:pointer;background:0 0;border:none;padding:0 .25rem;font-weight:600;text-decoration:underline}.chat-container{flex:1;gap:1rem;height:100dvh;max-height:100dvh;padding:1rem;transition:background .4s;display:flex;overflow:hidden}.chat-container.theme-dark{padding:0;background:#000!important}.chat-container.theme-dark .chat-main{border-radius:0;box-shadow:none!important;-webkit-backdrop-filter:none!important;background:#000!important;border:none!important}.chat-container.theme-dark .chat-header{background:#000!important;border-bottom:1px solid #1c1c1e!important}.chat-container.theme-dark .chat-input-bar{background:#000!important;border-top:1px solid #1c1c1e!important}.chat-container.theme-dark .chat-text-input{background:#121212!important;border:1px solid #2c2c2e!important}.message-date-separator{-webkit-user-select:none;user-select:none;z-index:2;justify-content:center;margin:1.5rem 0;display:flex;position:relative}.message-date-separator span{color:var(--color-text-muted);border-radius:var(--radius-pill);-webkit-backdrop-filter:blur(8px);background:#ffffff14;border:1px solid #ffffff0d;padding:.35rem .85rem;font-size:.72rem;font-weight:500;box-shadow:0 2px 6px #00000026}.chat-container.theme-dark .message-date-separator span{color:#8e8e93!important;box-shadow:none!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;background:#121212!important;border:1px solid #2c2c2e!important}.chat-container.theme-custom{background-position:50%;background-repeat:no-repeat;background-size:cover;padding:0}.chat-container.theme-custom .chat-main{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#00000073;border-radius:0}.chat-container.theme-custom .chat-header,.chat-container.theme-custom .chat-input-bar{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#0a0512bf}.chat-container.theme-custom .message-bubble.message-sent,.chat-container.theme-custom .message-bubble.message-received{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.chat-main{flex-direction:column;flex:1;height:100%;animation:.4s ease-out fadeIn;display:flex;position:relative;overflow:hidden}.chat-header{border-bottom:1px solid var(--border-color);border-radius:var(--radius-lg) var(--radius-lg) 0 0;opacity:1;justify-content:space-between;align-items:center;max-height:120px;padding:1rem 1.5rem;transition:max-height .25s cubic-bezier(.4,0,.2,1),padding .25s cubic-bezier(.4,0,.2,1),opacity .2s,border-bottom-color .2s;display:flex;overflow:hidden}.partner-info{align-items:center;gap:.75rem;display:flex}.partner-avatar{border-radius:var(--radius-pill);background:var(--gradient-brand);width:42px;height:42px;font-weight:700;font-family:var(--font-title);justify-content:center;align-items:center;display:flex}.partner-details h3{font-family:var(--font-title);font-size:1.05rem;font-weight:600}.partner-status{color:var(--color-text-muted);align-items:center;gap:.35rem;font-size:.75rem;display:flex}.status-dot{background-color:#6b7280;border-radius:50%;width:7px;height:7px;transition:all .3s}.partner-status.online .status-dot{background-color:var(--color-success);box-shadow:0 0 6px var(--color-success)}.partner-status.typing .status-dot{background-color:var(--color-success);box-shadow:0 0 6px var(--color-success);animation:1.2s ease-in-out infinite statusPulse}@keyframes statusPulse{0%{opacity:.65;transform:scale(.85)}50%{opacity:1;transform:scale(1.15)}to{opacity:.65;transform:scale(.85)}}.chat-actions{align-items:center;gap:.5rem;display:flex}.chat-messages{scroll-behavior:smooth;scrollbar-width:thin;scrollbar-color:transparent transparent;flex-direction:column;flex:1;gap:1rem;padding:1.5rem;transition:scrollbar-color .3s;display:flex;overflow-y:auto}.chat-messages.scrolling,.chat-messages:hover{scrollbar-color:#ffffff4d transparent}.chat-messages::-webkit-scrollbar{width:8px}.chat-messages::-webkit-scrollbar-track{background:0 0}.chat-messages::-webkit-scrollbar-thumb{border-radius:var(--radius-pill);background:#fff0;border:1px solid #0000;transition:background .3s}.chat-messages.scrolling::-webkit-scrollbar-thumb{background:#ffffff59;border:1px solid #0003}.chat-messages:hover::-webkit-scrollbar-thumb{background:#ffffff59;border:1px solid #0003}.chat-messages::-webkit-scrollbar-thumb:hover{background:#fff9}.message-row{width:100%;animation:.25s ease-out fadeIn;display:flex}.message-row-sent{justify-content:flex-end}.message-row-received{justify-content:flex-start}.message-bubble{word-break:break-word;border-radius:18px;max-width:65%;padding:.85rem 1.15rem;font-size:.95rem;line-height:1.45;position:relative;box-shadow:0 2px 5px #0000001a}.message-sent{border:1px solid var(--border-color);color:var(--color-text-main);background:#ffffff14;border-bottom-right-radius:4px}.message-received{border:1px solid var(--border-color);color:var(--color-text-main);background:#ffffff14;border-bottom-left-radius:4px}.message-meta{opacity:.7;justify-content:flex-end;align-items:center;gap:.35rem;margin-top:.25rem;font-size:.7rem;display:flex}.message-sent .message-meta,.message-received .message-meta{color:var(--color-text-muted)}.typing-indicator{border:1px solid var(--border-color);background:#ffffff0a;border-radius:18px;align-self:flex-start;align-items:center;gap:5px;width:fit-content;margin-left:1.5rem;padding:.6rem 1rem;animation:.3s ease-out fadeIn;display:flex}.typing-dot{background-color:var(--color-text-muted);border-radius:50%;width:6px;height:6px;animation:1.4s ease-in-out infinite both bounce}.typing-dot:first-child{animation-delay:-.32s}.typing-dot:nth-child(2){animation-delay:-.16s}@keyframes bounce{0%,80%,to{transform:scale(.3)}40%{transform:scale(1.1)}}.self-destruct-badge{border-radius:var(--radius-sm);color:#f87171;background:#ef444433;border:1px solid #ef44444d;align-items:center;gap:.25rem;padding:.15rem .4rem;font-size:.7rem;font-weight:600;display:inline-flex}.self-destruct-timer{justify-content:center;align-items:center;width:16px;height:16px;display:flex;position:relative}.message-system{border-radius:var(--radius-pill);color:var(--color-text-muted);text-align:center;background:#ffffff0a;border:1px solid #ffffff08;align-self:center;max-width:80%;padding:.4rem .8rem;font-size:.75rem}.chat-input-bar{padding:.75rem 1rem;padding-bottom:max(.75rem, env(safe-area-inset-bottom));border-top:1px solid var(--border-color);border-radius:0 0 var(--radius-lg) var(--radius-lg);z-index:10;box-sizing:border-box;flex-direction:column;flex-shrink:0;gap:.6rem;width:100%;min-width:0;display:flex;position:relative}.chat-input-row{align-items:center;gap:.75rem;width:100%;min-width:0;display:flex}.chat-text-input{background:var(--bg-input);border:1px solid var(--border-color);border-radius:var(--radius-pill);min-width:0;color:var(--color-text-main);font-family:var(--font-body);transition:var(--transition-smooth);flex:1;padding:.85rem 1.25rem;font-size:.95rem}.chat-text-input:focus{border-color:var(--color-primary);outline:none}.chat-toolbar{align-items:center;gap:1.5rem;padding:0 .5rem;display:flex}.toolbar-toggle{color:var(--color-text-muted);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:.5rem;font-size:.8rem;font-weight:600;display:flex}.toolbar-toggle input{display:none}.toggle-switch{border-radius:var(--radius-pill);width:36px;height:20px;transition:var(--transition-smooth);background-color:#ffffff1a;position:relative}.toggle-switch:after{content:"";width:16px;height:16px;transition:var(--transition-smooth);background-color:#fff;border-radius:50%;position:absolute;top:2px;left:2px}.toolbar-toggle input:checked+.toggle-switch{background-color:var(--color-primary)}.toolbar-toggle input:checked+.toggle-switch:after{transform:translate(16px)}.toolbar-toggle-active{color:var(--color-primary)}.toolbar-toggle-active-destruct{color:var(--color-accent)}.toolbar-toggle input:checked+.toggle-switch-destruct{background-color:var(--color-accent)}.destruct-duration-select{border:1px solid var(--border-color);color:var(--color-text-main);border-radius:var(--radius-sm);font-size:.75rem;font-family:var(--font-body);background:#ffffff14;outline:none;padding:.2rem .5rem}.onboard-container{justify-content:center;align-items:center;min-height:100vh;padding:2rem 1rem;display:flex}.onboard-card{text-align:center;width:100%;max-width:500px;padding:2.5rem;animation:.5s ease-out fadeIn}.onboard-card h2{font-family:var(--font-title);background:var(--gradient-brand);-webkit-text-fill-color:transparent;-webkit-background-clip:text;margin-bottom:.75rem;font-size:1.75rem}.onboard-desc{color:var(--color-text-muted);margin-bottom:2rem;font-size:.95rem;line-height:1.5}.secret-key-display{border:1px dashed var(--color-primary);border-radius:var(--radius-md);background:#a855f71a;flex-direction:column;align-items:center;gap:.5rem;margin:1.5rem 0;padding:1.25rem;display:flex}.secret-key-value{color:var(--color-secondary);letter-spacing:.05em;-webkit-user-select:all;user-select:all;font-family:monospace;font-size:1.35rem;font-weight:700}.secret-key-hint{color:var(--color-text-muted);font-size:.75rem}.or-divider{text-align:center;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.1em;align-items:center;margin:1.5rem 0;font-size:.8rem;display:flex}.or-divider:before,.or-divider:after{content:"";border-bottom:1px solid var(--border-color);flex:1}.or-divider:not(:empty):before{margin-right:.75em}.or-divider:not(:empty):after{margin-left:.75em}.modal-overlay{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:100;background:#000000b3;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.modal-content{flex-direction:column;width:100%;max-width:480px;max-height:90vh;animation:.3s cubic-bezier(.34,1.56,.64,1) fadeIn;display:flex;overflow:hidden}.modal-header{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;display:flex}.modal-header h3{font-family:var(--font-title);font-size:1.25rem;font-weight:600}.modal-body{scrollbar-width:thin;scrollbar-color:#fff3 transparent;flex-direction:column;flex:1;gap:1.25rem;padding:1.5rem;display:flex;overflow-y:auto}.modal-footer{border-top:1px solid var(--border-color);justify-content:flex-end;gap:.75rem;padding:1.25rem 1.5rem;display:flex}.settings-section{flex-direction:column;gap:.5rem;display:flex}.settings-section h4{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em;font-size:.85rem}.update-banner{background:var(--gradient-brand);color:#fff;text-align:center;z-index:50;justify-content:center;align-items:center;gap:.5rem;padding:.75rem 1rem;font-size:.9rem;font-weight:600;animation:.3s ease-out fadeIn;display:flex;position:sticky;top:0;box-shadow:0 4px 10px #0000004d}.gdrive-status{border:1px solid var(--border-color);border-radius:var(--radius-md);background:#ffffff0a;justify-content:space-between;align-items:center;padding:.75rem 1rem;font-size:.85rem;display:flex}.gdrive-status-connected{color:var(--color-success);align-items:center;gap:.35rem;font-weight:600;display:flex}@media (max-width:640px){.chat-container{gap:0;padding:0}.chat-main{border:none;border-radius:0;height:100dvh;max-height:100dvh}.chat-header{border-radius:0;padding:.75rem 1rem}.chat-header.keyboard-active{pointer-events:none;opacity:0!important;border-bottom-color:#0000!important;max-height:0!important;padding-top:0!important;padding-bottom:0!important}.chat-input-bar{padding-bottom:max(.75rem, env(safe-area-inset-bottom));border-radius:0}.chat-input-bar.keyboard-active{padding-bottom:max(.5rem, env(safe-area-inset-bottom))}.chat-toolbar.hidden-on-mobile-focus{display:none!important}.message-bubble{max-width:82%}.chat-text-input{padding:.7rem .9rem;font-size:1rem}.chat-input-row{gap:.4rem}.chat-input-row .btn-icon{flex-shrink:0;width:36px!important;min-width:36px!important;height:36px!important;padding:0!important}}.reply-preview-container{border-left:3px solid var(--color-primary);border-radius:var(--radius-sm);background:#ffffff0d;justify-content:space-between;align-items:center;margin-top:.25rem;padding:.5rem .75rem;font-size:.85rem;display:flex}.reply-preview-text{color:var(--color-text-muted);white-space:nowrap;text-overflow:ellipsis;max-width:80%;overflow:hidden}.reply-preview-close{color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;font-size:1.1rem}.message-reply-reference{border-left:2px solid var(--color-primary);border-radius:var(--radius-sm);color:var(--color-text-muted);word-break:break-all;background:#ffffff0a;margin-bottom:.4rem;padding:.35rem .6rem;font-size:.75rem}.reactions-badge-container{flex-wrap:wrap;gap:3px;margin-top:.25rem;display:flex}.reaction-badge{border:1px solid var(--border-color);border-radius:var(--radius-pill);cursor:pointer;-webkit-user-select:none;user-select:none;transition:var(--transition-smooth);background:#ffffff0f;padding:.1rem .35rem;font-size:.75rem}.reaction-badge:hover{background:#ffffff1f}.message-actions-overlay{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-pill);z-index:10;gap:.35rem;padding:.2rem .4rem;animation:.15s ease-out fadeIn;display:flex;position:absolute;top:-36px;right:10px;box-shadow:0 4px 12px #0000004d}.message-row-received .message-actions-overlay{left:10px;right:auto}@keyframes emojiBounce{0%,to{transform:translateY(0)scale(1)}30%{transform:translateY(-18%)scale(1.15)}60%{transform:translateY(-8%)scale(1.05)}}@keyframes emojiPop{0%{opacity:0;transform:scale(.4)rotate(-8deg)}55%{opacity:1;transform:scale(1.18)rotate(3deg)}75%{transform:scale(.95)rotate(-1deg)}to{transform:scale(1)rotate(0)}}@keyframes emojiWiggle{0%,to{transform:rotate(0)}20%{transform:rotate(-10deg)scale(1.1)}40%{transform:rotate(10deg)scale(1.1)}60%{transform:rotate(-6deg)}80%{transform:rotate(6deg)}}@keyframes emojiFloat{0%,to{transform:translateY(0)scale(1)}50%{transform:translateY(-12%)scale(1.05)}}@keyframes emojiSpin{0%{opacity:0;transform:scale(.5)rotate(-180deg)}60%{opacity:1;transform:scale(1.1)rotate(10deg)}80%{transform:scale(.95)rotate(-3deg)}to{transform:scale(1)rotate(0)}}.emoji-animated-container{flex-wrap:wrap;gap:.1em;line-height:1.2;display:inline-flex}.emoji-animated-container.emoji-big .emoji-char{font-size:3.25rem;display:inline-block}.emoji-animated-container.emoji-small .emoji-char{font-size:2rem;display:inline-block}.emoji-char.emoji-bounce{animation:.65s cubic-bezier(.36,.07,.19,.97) both emojiBounce}.emoji-char.emoji-pop{animation:.5s cubic-bezier(.175,.885,.32,1.275) both emojiPop}.emoji-char.emoji-wiggle{animation:.6s ease-in-out both emojiWiggle}.emoji-char.emoji-float{animation:1.2s ease-in-out infinite emojiFloat}.emoji-char.emoji-spin{animation:.55s cubic-bezier(.175,.885,.32,1.275) both emojiSpin}.message-bubble.emoji-only{box-shadow:none!important;background:0 0!important;border:none!important;padding:0 .25rem!important}.message-bubble.emoji-only .message-meta{opacity:.6;margin-top:2px;font-size:.65rem}.message-action-btn{cursor:pointer;background:0 0;border:none;padding:.1rem;font-size:.95rem;transition:transform .1s}.message-action-btn:hover{transform:scale(1.25)}.emoji-picker-container{position:relative}.emoji-picker-drawer{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);width:280px;box-shadow:var(--shadow-lg);z-index:50;grid-template-columns:repeat(6,1fr);gap:.5rem;max-height:200px;padding:.75rem;animation:.2s ease-out fadeIn;display:grid;position:absolute;bottom:45px;left:0;overflow-y:auto}.emoji-picker-btn{cursor:pointer;border-radius:var(--radius-sm);background:0 0;border:none;padding:.2rem;font-size:1.3rem;transition:background .1s}.emoji-picker-btn:hover{background:#ffffff14}.pinned-banner{-webkit-backdrop-filter:blur(10px);border-bottom:1px solid var(--border-color);cursor:pointer;z-index:10;background:#ffffff0d;justify-content:space-between;align-items:center;padding:.5rem 1rem;font-size:.85rem;transition:background .2s;display:flex}.chat-container.theme-dark .pinned-banner{background:#0d0d0d;border-bottom:1px solid #1c1c1e}.pinned-banner:hover{background:#ffffff14}.pinned-banner-content{color:var(--color-primary);white-space:nowrap;text-overflow:ellipsis;flex:1;align-items:center;display:flex;overflow:hidden}.pinned-banner-content span{color:var(--color-text-main);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.pinned-banner-unpin{color:var(--color-text-muted);cursor:pointer;transition:var(--transition-smooth);background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;padding:4px;display:flex}.pinned-banner-unpin:hover{color:var(--color-accent);background:#ffffff0d}.sidebar-drawer{z-index:40;border-left:1px solid var(--border-color);-webkit-backdrop-filter:blur(20px);flex-direction:column;width:320px;height:100%;animation:.3s cubic-bezier(.16,1,.3,1) slideInRight;display:flex;position:absolute;top:0;right:0;background:#0d0914f2!important}@media (max-width:640px){.sidebar-drawer{border-left:none;width:100%}}.sidebar-header{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;padding:1rem;display:flex}.sidebar-header h3{color:var(--color-text-main);font-size:1.1rem}.sidebar-tabs{border-bottom:1px solid var(--border-color);background:#0003;display:flex}.sidebar-tab-btn{color:var(--color-text-muted);cursor:pointer;transition:var(--transition-smooth);background:0 0;border:none;flex:1;padding:.75rem;font-size:.85rem;font-weight:500}.sidebar-tab-btn.active{color:var(--color-primary);border-bottom:2px solid var(--color-primary)}.sidebar-content{scrollbar-width:thin;flex:1;padding:1rem;overflow-y:auto}.sidebar-empty{text-align:center;color:var(--color-text-muted);margin-top:2rem;font-size:.85rem}.sidebar-item{border:1px solid var(--border-color);border-radius:var(--radius-md);cursor:pointer;transition:var(--transition-smooth);background:#ffffff08;margin-bottom:.75rem;padding:.75rem}.sidebar-item:hover{border-color:var(--color-primary);background:#ffffff0f;transform:translateY(-1px)}.sidebar-item-header{justify-content:space-between;margin-bottom:.25rem;font-size:.75rem;display:flex}.sidebar-item-header .sender{color:var(--color-primary);font-weight:600}.sidebar-item-header .time{color:var(--color-text-muted)}.sidebar-item p{color:var(--color-text-main);white-space:nowrap;text-overflow:ellipsis;font-size:.85rem;overflow:hidden}@keyframes slideDown{0%{transform:translateY(-100%)}to{transform:translateY(0)}}.animate-slide-down{animation:.3s cubic-bezier(.16,1,.3,1) both slideDown}.animate-fade-in{animation:.25s ease-out both fadeIn}.message-highlight-flash .message-bubble{animation:2.5s cubic-bezier(.25,1,.5,1) highlightFlash}@keyframes highlightFlash{0%{box-shadow:0 0 0 3px var(--color-primary), 0 0 20px var(--color-primary);transform:scale(1.02)}50%{box-shadow:0 0 0 3px var(--color-primary), 0 0 20px var(--color-primary);transform:scale(1.02)}to{transform:scale(1);box-shadow:0 2px 5px #0000001a}}.image-message-container{border-radius:8px;max-width:100%;position:relative;overflow:hidden}.image-download-btn{color:#fff;cursor:pointer;width:32px;height:32px;transition:var(--transition-smooth);-webkit-backdrop-filter:blur(4px);background:#0009;border:1px solid #fff3;border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;bottom:8px;right:8px}.image-download-btn:hover{background:#000000d9;transform:scale(1.1)}.onetime-image-box{background:#0000004d;transition:transform .2s,background .2s}.onetime-image-box:hover{transform:translateY(-2px);background:#00000073!important}.image-viewer-content img{border:1px solid #ffffff1a;box-shadow:0 10px 40px #000c}
