.login-container{display:flex;align-items:center;justify-content:center;min-height:100vh;background:linear-gradient(135deg,var(--color-main) 0%,var(--color-secondary) 100%);padding:1.25rem}.login-box{background:var(--color-background);border-radius:.75rem;box-shadow:0 .625rem 2.5rem #00000026;padding:2.5rem;width:100%;max-width:25rem}.login-title{color:var(--color-main);font-size:2rem;font-weight:700;text-align:center;margin-bottom:.5rem}.login-subtitle{color:var(--color-text-secondary);text-align:center;margin-bottom:2rem;font-size:var(--font-size-base)}.login-form{display:flex;flex-direction:column;gap:1.25rem}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-group label{color:var(--color-text-primary);font-weight:500;font-size:var(--font-size-base)}.form-group input{padding:.75rem 1rem;border:.0625rem solid var(--color-border);border-radius:.5rem;font-size:var(--font-size-base);font-family:inherit;transition:border-color .2s}.form-group input:focus{outline:none;border-color:var(--color-main)}.login-error{background-color:#fee2e2;color:#dc2626;padding:.75rem;border-radius:.5rem;font-size:var(--font-size-base);text-align:center}.login-button{background-color:var(--color-main);color:#fff;border:none;padding:.875rem;border-radius:.5rem;font-size:1rem;font-weight:600;font-family:inherit;cursor:pointer;transition:background-color .2s;margin-top:.5rem}.login-button:hover:not(:disabled){background-color:#2d3d5f}.login-button:disabled{opacity:.6;cursor:not-allowed}@media (max-width: 47.9375rem){.login-box{padding:1.5rem;margin:1rem}.login-title{font-size:1.5rem}}.notification{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);z-index:10000;min-width:18.75rem;max-width:31.25rem;background-color:var(--color-background);border:.0625rem solid var(--color-border);border-radius:.75rem;box-shadow:0 .5rem 1.5rem #0003;animation:toast-slide-in-right .3s cubic-bezier(.4,0,.2,1);transform-origin:center}.notification.closing{animation:toast-slide-out-right .2s cubic-bezier(.4,0,.2,1)}.notification-content{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;gap:1rem}.notification-message{flex:1;font-size:var(--font-size-base);color:var(--color-text-primary);line-height:1.5}.notification-close{width:1.5rem;height:1.5rem;border:none;background:transparent;border-radius:.25rem;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--color-text-secondary);transition:background-color var(--transition-base),transform var(--transition-base),color var(--transition-base);flex-shrink:0}.notification-close:hover{background-color:var(--color-hover);color:var(--color-text-primary);transform:scale(1.1)}.notification-close:active{transform:scale(.95);transition:transform .1s cubic-bezier(.4,0,.2,1)}.notification-info{border-left:.25rem solid var(--color-main)}.notification-success{border-left:.25rem solid #10B981;background-color:#f0fdf4;animation:toast-slide-in-right .3s cubic-bezier(.4,0,.2,1),bounce-subtle .6s cubic-bezier(.4,0,.2,1) .3s}.notification-error{border-left:.25rem solid #DC2626;background-color:#fef2f2;animation:toast-slide-in-right .3s cubic-bezier(.4,0,.2,1),shake .5s cubic-bezier(.4,0,.2,1) .3s}.notification-error .notification-message{color:#dc2626}.notification-warning{border-left:.25rem solid #F59E0B;background-color:#fffbeb;animation:toast-slide-in-right .3s cubic-bezier(.4,0,.2,1)}.notification-warning .notification-message{color:#f59e0b}.sidebar{width:var(--sidebar-width);background-color:var(--color-background);border-right:.0625rem solid var(--color-border);display:flex;flex-direction:column;height:100vh;position:relative;z-index:var(--z-sidebar);transition:transform var(--transition-slow),width var(--transition-slow)}.sidebar-compose{position:absolute;right:1rem;bottom:1rem;z-index:1200}.sidebar-compose-fab{width:3.25rem;height:3.25rem;border-radius:999px;border:none;background-color:var(--color-main);box-shadow:0 .75rem 2rem #3e4f7840;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:transform var(--transition-base),box-shadow var(--transition-base),background-color var(--transition-base)}.sidebar-compose-fab:hover{transform:translateY(-1px);box-shadow:0 1rem 2.25rem #3e4f784d;background-color:#2d3d5f}.sidebar-compose-fab:active{transform:translateY(0)}.sidebar-compose-icon{width:1.25rem;height:1.25rem;filter:brightness(0) invert(1)}.sidebar-compose-menu{position:absolute;right:0;bottom:calc(100% + .5rem);min-width:12rem;background-color:var(--color-background);border:1px solid var(--color-border);border-radius:.75rem;box-shadow:0 .75rem 2rem #00000024;padding:.375rem;display:flex;flex-direction:column;gap:.25rem}.sidebar-compose-item{width:100%;border:none;background:transparent;text-align:left;padding:.625rem .75rem;border-radius:.625rem;cursor:pointer;color:var(--color-text-primary);font-weight:600;transition:background-color var(--transition-base),transform var(--transition-base)}.sidebar-compose-item:hover{background-color:var(--color-hover)}.sidebar-compose-item:active{transform:scale(.99)}.sidebar-compose-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:transparent;border:none;padding:0;margin:0;z-index:-1}@media (max-width: 47.9375rem){.sidebar{position:fixed;left:0;top:0;width:100%;max-width:100vw;transform:translate(-100%);z-index:var(--z-sidebar);box-shadow:.125rem 0 .5rem #0000001a;will-change:transform}.sidebar.open{transform:translate(0)}.sidebar-compose{bottom:1rem;right:1rem}}@media (max-width: 47.9375rem){.sidebar{position:fixed;left:0;top:0;width:100%;max-width:100vw;transform:translate(-100%);z-index:var(--z-sidebar);box-shadow:.125rem 0 .5rem #0000001a;will-change:transform}.sidebar.open{transform:translate(0)}}@media (min-width: 48rem) and (max-width: 63.9375rem){.sidebar{width:var(--sidebar-width-tablet);position:relative;transform:translate(0);transition:width var(--transition-slow)}.sidebar.collapsed{width:var(--sidebar-width-collapsed)}.sidebar.collapsed .sidebar-title,.sidebar.collapsed .sidebar-logo,.sidebar.collapsed .sidebar-brand,.sidebar.collapsed .sidebar-user,.sidebar.collapsed .user-info,.sidebar.collapsed .section-header span:first-child,.sidebar.collapsed .add-channel-button,.sidebar.collapsed .channel-name,.sidebar.collapsed .create-channel-form,.sidebar.collapsed .user-picker,.sidebar.collapsed .logout-button,.sidebar.collapsed .content-tabs{display:none}.sidebar.collapsed .section-header{justify-content:center;padding:0 8px}.sidebar.collapsed .section-header:first-of-type{margin-bottom:8px}.sidebar.collapsed .channel-item{justify-content:center;padding:10px;position:relative}.sidebar.collapsed .channel-icon{margin:0}.sidebar.collapsed .dm-avatar{margin:0 auto}.sidebar.collapsed .unread-badge{position:absolute;top:4px;right:4px;margin:0}.sidebar.collapsed .sidebar-content{padding:12px 4px}}@media (min-width: 64rem){.sidebar{width:var(--sidebar-width);position:relative;transform:translate(0);border-right:.0625rem solid var(--color-border)}.sidebar.collapsed{width:var(--sidebar-width)}.sidebar-collapse-button{display:none}.sidebar-title,.sidebar-logo,.sidebar-brand,.sidebar-user,.user-info,.section-header span,.add-channel-button,.channel-name,.create-channel-form,.user-picker,.logout-button{display:block}.sidebar-header{cursor:default}.channel-item{justify-content:flex-start;padding:10px 16px}.channel-icon{margin-right:8px}.dm-avatar{margin-right:12px}.unread-badge{position:static;margin-left:auto}}.sidebar-toggle-button{width:40px;height:40px;min-width:var(--touch-target-min);min-height:var(--touch-target-min);border:none;background-color:transparent;border-radius:6px;cursor:pointer;color:var(--color-text-primary);display:flex;align-items:center;justify-content:center;transition:background-color .2s;flex-shrink:0;margin:0 auto;touch-action:manipulation}.sidebar-toggle-button:hover{background-color:var(--color-hover)}.sidebar-toggle-button:active{background-color:var(--color-active)}.sidebar-toggle-button.footer-toggle{width:100%;margin-top:8px}.sidebar-collapse-button{display:none;position:absolute;top:20px;right:20px;width:32px;height:32px;border:none;background-color:transparent;border-radius:6px;cursor:pointer;color:var(--color-text-secondary);transition:all .2s;align-items:center;justify-content:center;touch-action:manipulation}.sidebar-collapse-button:hover{background-color:var(--color-hover);color:var(--color-text-primary)}.sidebar-collapse-button:active{background-color:var(--color-active)}@media (min-width: 48rem) and (max-width: 63.9375rem){.sidebar-collapse-button{display:flex}}.sidebar-header{padding:20px;border-bottom:.0625rem solid var(--color-border)}.sidebar-header-content{display:flex;align-items:center;justify-content:space-between;gap:12px}.sidebar-header-back{border:none;background:transparent;padding:.25rem;border-radius:999px;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--color-text-primary)}.sidebar-header-title{display:flex;flex-direction:column;gap:.125rem}.sidebar-header-title-main{font-weight:700;font-size:.95rem;color:var(--color-text-primary)}.sidebar-header-title-sub{font-size:.8rem;color:var(--color-text-secondary)}.sidebar-brand{display:flex;align-items:center;gap:12px;flex:1;min-width:0}.sidebar-logo{width:32px;height:32px;flex-shrink:0;object-fit:contain}.sidebar-search{position:relative;flex:1;min-width:0}.sidebar-search-input{width:100%;padding:.625rem .75rem;border:1px solid var(--color-border);border-radius:.5rem;font-family:inherit;font-size:.875rem;background-color:var(--color-background);color:var(--color-text-primary);transition:border-color var(--transition-base),box-shadow var(--transition-base),transform var(--transition-base)}.sidebar-search-input:focus{outline:none;border-color:var(--color-main)}.sidebar-search-dropdown{position:absolute;top:calc(100% + .5rem);left:0;right:0;background-color:var(--color-background);border:1px solid var(--color-border);border-radius:.75rem;box-shadow:0 .75rem 2rem #0000001f;z-index:1100;padding:.5rem;max-height:20rem;overflow:auto}.sidebar-search-group{padding:.25rem 0}.sidebar-search-group+.sidebar-search-group{border-top:1px solid var(--color-border);margin-top:.25rem;padding-top:.5rem}.sidebar-search-group-title{font-size:.6875rem;font-weight:700;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.5px;padding:.25rem .5rem}.sidebar-search-item{width:100%;display:flex;align-items:center;gap:.625rem;padding:.5rem .625rem;border:none;background:transparent;border-radius:.5rem;cursor:pointer;text-align:left;color:var(--color-text-primary);transition:background-color var(--transition-base),transform var(--transition-base)}.sidebar-search-item:hover{background-color:var(--color-hover)}.sidebar-search-item:active{transform:scale(.99)}.sidebar-search-item-icon{width:1rem;color:var(--color-text-secondary);font-weight:700;flex-shrink:0;text-align:center}.sidebar-search-item-text{display:flex;flex-direction:column;gap:.125rem;min-width:0}.sidebar-search-name{font-size:.875rem;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-search-meta{font-size:.75rem;color:var(--color-text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-search-empty{padding:.75rem;text-align:center;color:var(--color-text-secondary);font-size:.875rem}.sidebar-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000038;z-index:1300;display:flex;align-items:flex-start;justify-content:flex-start}.sidebar-modal{width:var(--sidebar-width);height:100vh;background-color:var(--color-background);border-right:.0625rem solid var(--color-border);display:flex;flex-direction:column}@media (min-width: 48rem) and (max-width: 63.9375rem){.sidebar-modal{width:var(--sidebar-width-tablet)}}.sidebar-modal-header{display:flex;align-items:center;gap:.75rem;padding:1rem;border-bottom:1px solid var(--color-border)}.sidebar-modal-back{width:2.5rem;height:2.5rem;border:none;background:transparent;border-radius:.5rem;cursor:pointer;color:var(--color-text-secondary);display:flex;align-items:center;justify-content:center;transition:background-color var(--transition-base),color var(--transition-base)}.sidebar-modal-back:hover{background-color:var(--color-hover);color:var(--color-text-primary)}.sidebar-modal-title{font-weight:700;font-size:1rem;color:var(--color-text-primary)}.sidebar-modal-error{padding:.75rem 1rem;border-bottom:1px solid var(--color-border);background-color:#fef2f2;color:#dc2626;font-weight:600}.sidebar-modal-search{padding:.75rem 1rem;border-bottom:1px solid var(--color-border)}.sidebar-modal-search-input{width:100%;padding:.625rem .75rem;border:1px solid var(--color-border);border-radius:.75rem;font-family:inherit;font-size:.95rem;background-color:var(--color-background);color:var(--color-text-primary)}.sidebar-modal-search-input:focus{outline:none;border-color:var(--color-main);box-shadow:0 0 0 .1875rem #3e4f781a}.sidebar-modal-search-input.input-error{border-color:#dc3545}.sidebar-modal-search-input.input-error:focus{border-color:#dc3545;box-shadow:0 0 0 .1875rem #dc35451a}.sidebar-modal-search-input.input-success{border-color:#28a745}.sidebar-modal-search-input.input-success:focus{border-color:#28a745;box-shadow:0 0 0 .1875rem #28a7451a}.sidebar-modal-content{flex:1;overflow:auto;padding:.5rem 0}.sidebar-modal-section{padding:.5rem 0}.sidebar-modal-section-title{font-size:.75rem;font-weight:700;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.5px;padding:.5rem 1rem}.sidebar-modal-empty{padding:.75rem 1rem;color:var(--color-text-secondary);font-size:.875rem}.sidebar-modal-list{display:flex;flex-direction:column}.sidebar-modal-item{width:100%;display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;border:none;background:transparent;cursor:pointer;text-align:left;transition:background-color var(--transition-base)}.sidebar-modal-item:hover{background-color:var(--color-hover)}.sidebar-modal-avatar{width:2.5rem;height:2.5rem;border-radius:50%;background-color:var(--color-secondary);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;flex-shrink:0}.sidebar-modal-item-text{flex:1;min-width:0;display:flex;flex-direction:column;gap:.125rem}.sidebar-modal-item-name{font-weight:700;color:var(--color-text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-modal-item-meta{font-size:.8125rem;color:var(--color-text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-modal-badge{min-width:1.5rem;height:1.25rem;padding:0 .4rem;border-radius:999px;background-color:var(--color-main);color:#fff;font-size:.75rem;font-weight:700;display:flex;align-items:center;justify-content:center}.sidebar-modal-online{width:.5rem;height:.5rem;border-radius:50%;background-color:#10b981;flex-shrink:0}.sidebar-modal-footer{border-top:1px solid var(--color-border);padding:.75rem 1rem;display:flex;gap:.75rem;justify-content:flex-end}.sidebar-primary,.sidebar-secondary{padding:.625rem .9rem;border-radius:.75rem;border:none;font-family:inherit;font-weight:700;cursor:pointer;transition:background-color var(--transition-base),transform var(--transition-base)}.sidebar-primary{background-color:var(--color-main);color:#fff}.sidebar-primary:hover:not(:disabled){background-color:#2d3d5f}.sidebar-secondary{background-color:var(--color-hover);color:var(--color-text-primary)}.sidebar-secondary:hover:not(:disabled){background-color:var(--color-active)}.sidebar-primary:disabled,.sidebar-secondary:disabled{opacity:.6;cursor:not-allowed}.sidebar-form{padding:0 1rem 1rem;display:flex;flex-direction:column;gap:.5rem}.sidebar-form-label{font-size:.875rem;font-weight:700;color:var(--color-text-primary);margin-top:.25rem}.sidebar-textarea{width:100%;border:1px solid var(--color-border);border-radius:.75rem;padding:.625rem .75rem;font-family:inherit;font-size:.95rem;background-color:var(--color-background);color:var(--color-text-primary);resize:vertical}.sidebar-textarea:focus{outline:none;border-color:var(--color-main)}.sidebar-help{font-size:.8125rem;color:var(--color-text-secondary)}.sidebar-handle-status{font-size:.8125rem;margin-top:.375rem;padding:.375rem .5rem;border-radius:.25rem;display:flex;align-items:center;gap:.25rem}.sidebar-handle-status.status-available{color:#28a745;background-color:#28a7451a}.sidebar-handle-status.status-checking{color:var(--color-text-secondary);background-color:#3e4f780d}.sidebar-handle-status.status-error{color:#dc3545;background-color:#dc35451a}.sidebar-radio-row{display:flex;flex-direction:column;gap:.75rem;padding:0 1rem 1rem}.sidebar-radio{display:flex;gap:.75rem;align-items:flex-start;padding:.75rem;border:1px solid var(--color-border);border-radius:.75rem;cursor:pointer;background-color:var(--color-background)}.sidebar-radio:hover{background-color:var(--color-hover)}.sidebar-radio input{margin-top:.2rem}.sidebar-radio-title{font-weight:800;color:var(--color-text-primary)}.sidebar-radio-desc{font-size:.875rem;color:var(--color-text-secondary)}.sidebar-check{width:1.25rem;height:1.25rem;border-radius:.375rem;border:2px solid var(--color-border);background-color:transparent;flex-shrink:0}.sidebar-check.checked{border-color:var(--color-main);background-color:var(--color-main)}.sidebar-user{display:flex;align-items:center;gap:12px;padding:8px;border-radius:6px;transition:background-color var(--transition-base);border:none;background-color:transparent;cursor:pointer;width:100%;text-align:left}.sidebar-footer .sidebar-user{margin-bottom:0}.sidebar-user:hover{background-color:var(--color-hover)}.user-avatar{width:40px;height:40px;border-radius:50%;background-color:var(--color-main);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:16px}.user-info{flex:1;min-width:0}.user-username{font-size:14px;color:var(--color-text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-bottom:4px;font-weight:500}.user-name{font-weight:400;font-size:13px;color:var(--color-text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-content{flex:1;overflow-y:auto;overflow-x:hidden;display:flex;flex-direction:column;position:relative;padding-bottom:5.5rem;scrollbar-width:none;-ms-overflow-style:none}.sidebar-content::-webkit-scrollbar{display:none}.content-tabs{display:flex;border-bottom:1px solid var(--color-border);padding:0 var(--spacing-md);margin-bottom:var(--spacing-md);gap:0;background-color:var(--color-background);position:sticky;top:0;z-index:10}.content-tab{flex:1;padding:var(--spacing-sm) var(--spacing-md);border:none;background:transparent;color:var(--color-text-secondary);font-family:inherit;font-size:var(--font-size-base);font-weight:500;cursor:pointer;border-bottom:2px solid transparent;transition:color var(--transition-base),border-color var(--transition-base),background-color var(--transition-base);position:relative}.content-tab:hover{color:var(--color-text-primary);background-color:var(--color-hover)}.content-tab.active{color:var(--color-main);border-bottom-color:var(--color-main);font-weight:600}.content-tab.active:hover{background-color:transparent}.channels-section,.dms-section{flex:1;padding:0 var(--spacing-md);overflow-y:auto;min-height:0;display:flex;flex-direction:column}.channels-section{margin-bottom:0}.section-header{font-size:12px;font-weight:600;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px;padding:0 8px;display:flex;align-items:center;justify-content:space-between}.add-channel-button{width:24px;height:24px;border:none;background-color:transparent;border-radius:4px;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--color-text-secondary);transition:all .2s;padding:0}.add-channel-button:hover{background-color:var(--color-hover);color:var(--color-main)}.create-channel-form{padding:8px;margin-bottom:8px;background-color:var(--color-hover);border-radius:8px}.channel-name-input{width:100%;padding:8px 12px;border:1px solid var(--color-border);border-radius:6px;font-family:inherit;font-size:14px;margin-bottom:8px;transition:border-color var(--transition-base),box-shadow var(--transition-base),transform var(--transition-base);background-color:var(--color-background)}.channel-name-input:disabled{opacity:.6;cursor:not-allowed}.create-channel-actions{display:flex;gap:8px}.create-button,.cancel-button{flex:1;padding:6px 12px;border-radius:6px;font-family:inherit;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s}.create-button{background-color:var(--color-main);color:#fff;border:none}.create-button:hover:not(:disabled){background-color:#2d3d5f;transform:translateY(-1px);box-shadow:0 4px 12px #3e4f784d}.create-button:disabled{opacity:.6;cursor:not-allowed}.cancel-button{background-color:transparent;color:var(--color-text-secondary);border:1px solid var(--color-border)}.cancel-button:hover:not(:disabled){background-color:var(--color-background);border-color:var(--color-secondary);transform:translateY(-1px);box-shadow:0 2px 8px #0000001a}.cancel-button:disabled{opacity:.6;cursor:not-allowed}.dms-section{margin-bottom:24px}.dms-list{display:flex;flex-direction:column;gap:2px}.dm-avatar{width:24px;height:24px;border-radius:50%;background-color:var(--color-secondary);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:12px;flex-shrink:0;overflow:hidden}.dm-avatar-image{width:100%;height:100%;border-radius:50%;object-fit:cover}.unread-badge{background-color:var(--color-main);color:#fff;border-radius:10px;padding:2px 6px;font-size:11px;font-weight:600;margin-left:auto}.profile-section{padding:1rem;display:flex;flex-direction:column;gap:1rem}.profile-header{display:flex;align-items:center;gap:.75rem}.profile-avatar-large{width:3rem;height:3rem;border-radius:999px;background-color:var(--color-secondary);color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:1.25rem;font-weight:700;position:relative;overflow:hidden}.profile-avatar-image{width:100%;height:100%;border-radius:999px;object-fit:cover}.profile-avatar-upload{margin-top:.25rem;display:inline-flex;align-items:center;justify-content:center;padding:.125rem .5rem;border-radius:999px;font-size:.7rem;background-color:#00000059;color:#fff;cursor:pointer;position:absolute;bottom:.2rem;right:.2rem;left:auto}.profile-avatar-upload input[type=file]{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;cursor:pointer}.profile-header-text{display:flex;flex-direction:column;gap:.125rem}.profile-name{font-weight:700;font-size:.95rem;color:var(--color-text-primary)}.profile-username{font-size:.85rem;color:var(--color-text-secondary)}.profile-body{display:flex;flex-direction:column;gap:.75rem}.profile-field{display:flex;flex-direction:column;gap:.125rem}.profile-field-label{font-size:.75rem;text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-secondary);font-weight:600}.profile-field-value{font-size:.9rem;color:var(--color-text-primary);word-break:break-all}.profile-input{width:100%;padding:.4rem .6rem;border-radius:.4rem;border:1px solid var(--color-border-subtle);background-color:var(--color-surface-elevated);color:var(--color-text-primary);font-size:.9rem}.profile-textarea{width:100%;padding:.4rem .6rem;border-radius:.4rem;border:1px solid var(--color-border-subtle);background-color:var(--color-surface-elevated);color:var(--color-text-primary);font-size:.9rem;resize:vertical;min-height:4rem}.profile-actions{margin-top:.5rem;display:flex;gap:.5rem;justify-content:flex-end}.user-picker{padding:8px;margin-bottom:8px;background-color:var(--color-hover);border-radius:8px;max-height:300px;display:flex;flex-direction:column}.picker-loading,.picker-empty{text-align:center;color:var(--color-text-secondary);padding:20px;font-size:13px}.picker-users{max-height:12.5rem;overflow-y:auto;overflow-x:hidden;margin-bottom:var(--spacing-sm);scrollbar-width:none;-ms-overflow-style:none}.picker-users::-webkit-scrollbar{display:none}.picker-user-item{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:6px;cursor:pointer;transition:background-color var(--transition-base),transform var(--transition-base),box-shadow var(--transition-slow);position:relative;overflow:hidden}.picker-user-item:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:#3e4f781a;transform:translate(-50%,-50%);transition:width .3s,height .3s}.picker-user-item:hover:before{width:200px;height:200px}.picker-user-item:hover{background-color:var(--color-background);transform:translate(4px);box-shadow:0 2px 8px #0000001a}.picker-user-avatar{width:32px;height:32px;border-radius:50%;background-color:var(--color-main);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:14px;flex-shrink:0}.picker-user-name{flex:1;font-size:14px;color:var(--color-text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.picker-close{width:100%;padding:6px;background-color:transparent;border:1px solid var(--color-border);border-radius:6px;color:var(--color-text-secondary);font-family:inherit;font-size:13px;cursor:pointer;transition:all .2s}.picker-close:hover{background-color:var(--color-background);border-color:var(--color-secondary);transform:translateY(-1px);box-shadow:0 2px 8px #0000001a}.channels-list{display:flex;flex-direction:column;gap:2px}.channel-item{display:flex;align-items:center;gap:8px;padding:10px 12px;border-radius:6px;cursor:pointer;transition:background-color .2s;font-size:var(--font-size-base);min-height:var(--touch-target-min);touch-action:manipulation}.channel-item:hover{background-color:var(--color-hover)}.channel-item:active{background-color:var(--color-active)}@media (min-width: 64rem){.channel-item{cursor:pointer;transition:background-color var(--transition-base),transform var(--transition-base),box-shadow var(--transition-slow)}.channel-item:hover{background-color:var(--color-hover);transform:translate(2px);box-shadow:0 2px 4px #0000000d}.dm-item{transition:background-color var(--transition-base),transform var(--transition-base),box-shadow var(--transition-slow)}.dm-item:hover{background-color:var(--color-hover);transform:translate(2px);box-shadow:0 2px 4px #0000000d}.add-channel-button,.sidebar-toggle-button,.sidebar-collapse-button{transition:background-color var(--transition-base),transform var(--transition-base),box-shadow var(--transition-slow)}.add-channel-button:hover,.sidebar-toggle-button:hover,.sidebar-collapse-button:hover{background-color:var(--color-hover);transform:scale(var(--hover-scale));box-shadow:0 2px 8px #0000001a}}.channel-item.active{background-color:var(--color-active);color:var(--color-main);font-weight:600}.channel-icon{color:var(--color-text-secondary);font-weight:600}.channel-item.active .channel-icon{color:var(--color-main)}.channel-name{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-footer{padding:16px;border-top:1px solid var(--color-border);display:flex;flex-direction:column;gap:12px}.logout-button{width:100%;padding:10px;background-color:transparent;border:1px solid var(--color-border);border-radius:6px;color:var(--color-text-primary);font-family:inherit;font-size:14px;font-weight:500;cursor:pointer;transition:background-color var(--transition-base),transform var(--transition-base),box-shadow var(--transition-slow),border-color var(--transition-base);position:relative;overflow:hidden}.logout-button:hover{background-color:var(--color-hover);border-color:var(--color-secondary);transform:translateY(-1px);box-shadow:0 2px 8px #0000001a}.sidebar-loading{padding:20px;text-align:center;color:var(--color-text-secondary)}.message-menu{position:absolute;background-color:var(--color-background);border:.0625rem solid var(--color-border);border-radius:.5rem;box-shadow:0 .25rem .75rem #00000026;padding:.25rem;z-index:1000;min-width:11.25rem;animation:dropdown-enter .15s cubic-bezier(.4,0,.2,1);transform-origin:top left}.message-menu.closing{animation:dropdown-exit .1s cubic-bezier(.4,0,.2,1)}.menu-item{width:100%;display:flex;align-items:center;gap:.625rem;padding:.625rem .875rem;border:none;background:transparent;color:var(--color-text-primary);font-family:inherit;font-size:var(--font-size-base);text-align:left;cursor:pointer;border-radius:.375rem;transition:background-color var(--transition-base),transform var(--transition-base),color var(--transition-base);position:relative;overflow:hidden}.menu-item:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:#3e4f781a;transform:translate(-50%,-50%);transition:width .3s,height .3s}.menu-item:hover:before{width:12.5rem;height:12.5rem}.menu-item:hover{background-color:var(--color-hover);transform:translate(.125rem)}.menu-item:active{transform:translate(.125rem) scale(.98);transition:transform .1s cubic-bezier(.4,0,.2,1)}.menu-item.danger{color:#dc2626}.menu-item.danger:hover{background-color:#fee2e2}.menu-item.danger:before{background:#dc26261a}.menu-item svg{flex-shrink:0;color:inherit;transition:transform var(--transition-base)}.menu-item:hover svg{transform:scale(1.1)}.message-status{display:inline-flex;align-items:center;margin-left:.25rem;opacity:.7;flex-shrink:0}.message-status.sending{opacity:.5;animation:pulse 1.5s ease-in-out infinite}.message-status.sent,.message-status.delivered{color:var(--color-text-secondary)}.message-status.read{color:#08c}.message-status.read svg{color:#08c}@keyframes pulse{0%,to{opacity:.5}50%{opacity:.8}}.message-status svg{display:block}.message{display:flex;gap:var(--spacing-md);align-items:flex-start;padding:var(--spacing-sm) var(--spacing-md);border-radius:.5rem;transition:background-color var(--transition-base),transform var(--transition-base),opacity var(--transition-base);position:relative;cursor:pointer;touch-action:manipulation;animation:messageSlideIn var(--animation-duration) var(--animation-timing);will-change:transform,opacity;width:100%;flex:0 0 auto}@keyframes messageSlideIn{0%{opacity:0;transform:translateY(.625rem)}to{opacity:1;transform:translateY(0)}}.message:nth-child(1){animation-delay:0ms}.message:nth-child(2){animation-delay:50ms}.message:nth-child(3){animation-delay:.1s}.message:nth-child(4){animation-delay:.15s}.message:nth-child(5){animation-delay:.2s}.message:nth-child(n+6){animation-delay:.25s}@media (max-width: 47.9375rem){.message{padding:.625rem .875rem;min-height:var(--touch-target-min);align-items:flex-start;margin-bottom:var(--spacing-md)}.message-content{max-width:100%}.message-header{flex-wrap:wrap;row-gap:var(--spacing-xs)}}@media (max-width: 63.9375rem){.message-content{max-width:100%}.message-text{padding:var(--spacing-sm) var(--spacing-md);line-height:1.6}.forwarded-indicator{padding:var(--spacing-sm) var(--spacing-md)}}.message:hover{background-color:var(--color-hover)}@media (min-width: 64rem){.message{cursor:pointer;transition:background-color var(--transition-base),transform var(--transition-base),box-shadow var(--transition-slow)}.message:hover{background-color:var(--color-hover);transform:translate(2px);box-shadow:0 2px 8px #0000000d}.message:hover .message-actions{opacity:1;visibility:visible}.message-actions{opacity:0;visibility:hidden;transition:opacity var(--transition-base),visibility var(--transition-base),transform var(--transition-base)}.message:hover .message-actions{transform:translateY(0)}}.message.own{flex-direction:row-reverse}.message.deleted{opacity:.6}.message-avatar{width:2.25rem;height:2.25rem;border-radius:50%;background-color:var(--color-main);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:var(--font-size-base);flex-shrink:0;overflow:hidden}.message-avatar-image{width:100%;height:100%;border-radius:50%;object-fit:cover}.message-content{flex:1;min-width:0;max-width:min(70%,30rem);display:flex;flex-direction:column;gap:var(--spacing-xs);align-items:flex-start}.message.own .message-content{align-items:flex-end}.message-header{display:flex;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-xs)}.message-sender{font-weight:600;font-size:var(--font-size-base);color:var(--color-text-primary)}.message-time{font-size:var(--font-size-xs);color:var(--color-text-secondary)}.reply-indicator{display:flex;align-items:flex-start;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);margin-bottom:var(--spacing-xs);margin-top:var(--spacing-xs);background-color:#3e4f7814;border-left:.1875rem solid var(--color-main);border-radius:.375rem;cursor:pointer;transition:all var(--transition-base);animation:reply-fade-in .25s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.reply-indicator:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(90deg,transparent,rgba(62,79,120,.05),transparent);opacity:0;transition:opacity var(--transition-base)}.reply-indicator:hover:before{opacity:1}@keyframes reply-fade-in{0%{opacity:0;transform:translate(-.5rem) scale(.98)}to{opacity:1;transform:translate(0) scale(1)}}.reply-indicator:hover{background-color:#3e4f781f;transform:translate(.125rem);box-shadow:0 .125rem .25rem #00000014}.reply-indicator:active{transform:translate(.0625rem) scale(.99)}.reply-indicator-line{width:.1875rem;height:100%;min-height:2.5rem;background:linear-gradient(180deg,var(--color-main),rgba(62,79,120,.7));border-radius:.125rem;flex-shrink:0;transition:width var(--transition-base)}.reply-indicator:hover .reply-indicator-line{width:.25rem}.reply-indicator-content{flex:1;min-width:0;display:flex;flex-direction:column;gap:.25rem}.reply-indicator-header{display:flex;align-items:center;gap:var(--spacing-xs)}.reply-indicator-icon{width:.875rem;height:.875rem;color:var(--color-main);flex-shrink:0;opacity:.8;transition:transform var(--transition-base),opacity var(--transition-base)}.reply-indicator:hover .reply-indicator-icon{transform:translate(-.125rem);opacity:1}.reply-indicator-sender{font-size:var(--font-size-xs);font-weight:600;color:var(--color-main);letter-spacing:.01em}.reply-indicator-text{font-size:var(--font-size-sm);color:var(--color-text-secondary);line-height:1.4;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;word-break:break-word;opacity:.85}.message.reply-highlight{animation:reply-highlight-pulse 2s ease-out}@keyframes reply-highlight-pulse{0%{background-color:#3e4f784d;transform:scale(1.02)}50%{background-color:#3e4f7826}to{background-color:transparent;transform:scale(1)}}.message.own .reply-indicator{background-color:#ffffffb3;border-left-color:#3e4f78b3}.message.own .reply-indicator:hover{background-color:#fff3}.message.own .reply-indicator-line{background:linear-gradient(180deg,#3e4f78b3,#3e4f78b3)}.message.own .reply-indicator-icon,.message.own .reply-indicator-sender,.message.own .reply-indicator-text{color:#3e4f78cc}.message-text{font-size:var(--font-size-base);color:var(--color-text-primary);line-height:1.5;word-wrap:break-word;padding:var(--spacing-sm) var(--spacing-md);background-color:var(--color-background);border-radius:.5rem;border:.0625rem solid var(--color-border);box-shadow:0 .0625rem .125rem #0000000d;transition:background-color var(--transition-base),box-shadow var(--transition-base);display:inline-block;max-width:100%}.message:not(.own) .message-text{background-color:var(--color-background);color:var(--color-text-primary);border-color:var(--color-border)}.message.own .message-text{background-color:var(--color-main);color:#fff;border-color:var(--color-main);box-shadow:0 .0625rem .125rem #3e4f7833}.deleted-text{font-style:italic;color:var(--color-text-secondary);padding:.5rem .75rem;background-color:transparent;border:none}.forwarded-indicator{display:flex;align-items:center;gap:var(--spacing-xs);font-size:var(--font-size-xs);color:var(--color-text-secondary);margin-bottom:var(--spacing-xs);padding:var(--spacing-xs) var(--spacing-sm);background-color:var(--color-hover);border-radius:.25rem;transition:background-color var(--transition-base),transform var(--transition-base);animation:forwarded-fade-in .3s cubic-bezier(.4,0,.2,1)}@keyframes forwarded-fade-in{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.forwarded-indicator svg{width:.75rem;height:.75rem;flex-shrink:0;transition:transform var(--transition-base)}.forwarded-indicator:hover{background-color:var(--color-active);transform:translate(.125rem)}.forwarded-indicator:hover svg{transform:translate(.125rem)}.poll-container{margin-top:var(--spacing-xs);margin-bottom:var(--spacing-xs);padding:var(--spacing-sm) var(--spacing-md);background-color:var(--color-message-background, var(--color-surface));border-radius:.75rem;border:.0625rem solid var(--color-border-soft, var(--color-border));display:flex;flex-direction:column;gap:var(--spacing-sm);box-shadow:0 .0625rem .25rem #0000000a}.message.own .poll-container{background-color:var(--color-message-own-background, var(--color-main-soft))}.poll-question{font-weight:600;font-size:var(--font-size-base);color:var(--color-text-primary);line-height:1.5}.poll-options{display:flex;flex-direction:column;gap:var(--spacing-xs)}.poll-option{width:100%;text-align:left;border:.0625rem solid var(--color-border);background:var(--color-hover);padding:var(--spacing-sm) var(--spacing-md);border-radius:.375rem;cursor:pointer;display:flex;flex-direction:column;gap:.25rem;transition:background-color var(--transition-base),border-color var(--transition-base),transform var(--transition-base),box-shadow var(--transition-base)}.poll-option:hover:not(:disabled){background-color:var(--color-active);border-color:var(--color-main);transform:translateY(-.0625rem);box-shadow:0 .125rem .25rem #0000000f}.poll-option:disabled{opacity:.7;cursor:default}.poll-option.selected{background-color:var(--color-active);border-color:var(--color-main)}.poll-option-main{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-xs)}.poll-option-text{font-size:var(--font-size-sm);color:var(--color-text-primary);word-break:break-word}.poll-option-percentage{font-size:var(--font-size-xs);color:var(--color-text-secondary)}.poll-option-bar{width:100%;height:.375rem;border-radius:999px;background-color:#0000000d;overflow:hidden}.poll-option-bar-fill{height:100%;background-color:var(--color-main);border-radius:999px;transition:width var(--transition-base)}.poll-option-votes{font-size:var(--font-size-xs);color:var(--color-text-secondary)}.poll-footer{display:flex;align-items:center;justify-content:space-between;font-size:var(--font-size-xs);color:var(--color-text-secondary);margin-top:var(--spacing-xs)}.poll-closed-label{font-weight:600}.poll-submit-button{padding:var(--spacing-xs) var(--spacing-md);border-radius:999px;border:none;background-color:var(--color-main);color:#fff;font-size:var(--font-size-xs);font-weight:600;cursor:pointer;transition:background-color var(--transition-base),transform var(--transition-base),box-shadow var(--transition-base)}.poll-submit-button:hover:not(:disabled){background-color:#2d3d5f;transform:translateY(-.0625rem);box-shadow:0 .125rem .25rem #00000014}.poll-submit-button:disabled{opacity:.6;cursor:default;box-shadow:none}.message-footer{display:flex;align-items:center;gap:var(--spacing-sm);margin-top:var(--spacing-xs);font-size:var(--font-size-xs);color:var(--color-text-secondary)}.message.own .message-footer{align-self:flex-end}.message:not(.own) .message-content{align-items:flex-start}.edited-indicator{font-size:11px;color:var(--color-text-secondary);font-style:italic}.message-attachments{margin-top:4px}.file-uploading-placeholder{display:flex;align-items:center;gap:8px;padding:12px;background-color:var(--color-hover);border-radius:8px;color:var(--color-text-secondary);font-size:14px;animation:pulse 2s ease-in-out infinite}.file-error-placeholder{display:flex;align-items:center;gap:8px;padding:12px;background-color:#ffc1071a;border:1px solid rgba(255,193,7,.3);border-radius:8px;color:var(--color-text-secondary);font-size:14px}.file-uploading-placeholder .upload-spinner{animation:spin 1s linear infinite;color:var(--color-main)}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}.pinned-indicator-inline{display:inline-flex;align-items:center;margin-left:var(--spacing-xs);vertical-align:middle;opacity:.7;transition:opacity var(--transition-base)}.pinned-indicator-inline img{flex-shrink:0;filter:brightness(0) saturate(100%) invert(40%) sepia(50%) saturate(2000%) hue-rotate(200deg) brightness(.9) contrast(1.1)}.message:hover .pinned-indicator-inline{opacity:1}.file-attachment{display:flex;align-items:center;gap:.75rem;padding:.75rem;background-color:var(--color-hover);border-radius:.5rem;margin-top:.25rem;transition:background-color var(--transition-base),transform var(--transition-base),opacity var(--transition-base);animation:fadeInScale .3s var(--animation-timing)}@keyframes fadeInScale{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.file-attachment.uploading{opacity:.7;animation:pulse 2s ease-in-out infinite}.file-icon{font-size:1.5rem;flex-shrink:0}.file-name{font-weight:500;font-size:var(--font-size-base);color:var(--color-text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer;margin-bottom:.125rem}.file-name:hover{text-decoration:underline}.file-size{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.file-upload-progress{flex-shrink:0;display:flex;align-items:center;justify-content:center;position:relative}.upload-progress-circle{transition:stroke-dashoffset .3s ease}.progress-bg{fill:none}.progress-fill{transition:stroke-dashoffset .1s linear}.image-attachment{position:relative;padding:0;background:none;border-radius:.5rem;overflow:hidden;max-width:18.75rem;transition:transform var(--transition-slow),box-shadow var(--transition-slow);cursor:pointer}.image-attachment:hover{transform:scale(var(--hover-scale-large));box-shadow:0 .5rem 1.5rem #0003}.image-attachment:active{transform:scale(.98);transition:transform .1s cubic-bezier(.4,0,.2,1)}.file-image-preview{width:100%;height:auto;display:block;cursor:pointer;border-radius:.5rem}.file-info-overlay{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(to top,rgba(0,0,0,.7),transparent);padding:.5rem .75rem;color:#fff}.image-attachment .file-name{color:#fff;margin-bottom:.125rem}.image-attachment .file-size{color:#fffc}.image-attachment .file-upload-progress{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:#0009;border-radius:50%;padding:.5rem;width:2.5rem;height:2.5rem;display:flex;align-items:center;justify-content:center}.image-attachment .upload-progress-circle{width:2.5rem;height:2.5rem}.image-loading-placeholder,.image-error-placeholder{width:100%;min-height:12.5rem;display:flex;flex-direction:column;align-items:center;justify-content:center;background-color:var(--color-hover);border-radius:.5rem;color:var(--color-text-secondary);gap:.5rem}.image-loading-placeholder .loading-spinner{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.image-error-placeholder{font-size:var(--font-size-sm)}.image-error-placeholder span:first-child{font-size:2rem}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:2000;animation:modal-backdrop-enter .2s cubic-bezier(.4,0,.2,1);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal-overlay.closing{animation:modal-backdrop-exit .15s cubic-bezier(.4,0,.2,1)}.forward-modal{background-color:var(--color-background);border-radius:.75rem;width:90%;max-width:31.25rem;max-height:80vh;display:flex;flex-direction:column;box-shadow:0 .625rem 2.5rem #0003;animation:modal-content-enter .3s cubic-bezier(.4,0,.2,1);transform-origin:center;overflow:hidden}@media (max-width: 47.9375rem){.forward-modal{width:95%;max-width:100%;max-height:90vh;border-radius:.75rem .75rem 0 0}}.forward-modal.closing{animation:modal-content-exit .2s cubic-bezier(.4,0,.2,1)}.modal-header{padding:var(--spacing-xl);border-bottom:1px solid var(--color-border);display:flex;flex-direction:column;gap:var(--spacing-md);flex-shrink:0}.modal-header h3{margin:0;font-size:var(--font-size-xl);font-weight:600;color:var(--color-text-primary);display:flex;align-items:center;justify-content:space-between}.modal-close{width:2rem;height:2rem;min-width:2rem;min-height:2rem;border:none;background-color:transparent;border-radius:.375rem;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--color-text-secondary);transition:background-color var(--transition-base),transform var(--transition-base),color var(--transition-base);position:relative;overflow:hidden;flex-shrink:0}.modal-close:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:#0000001a;transform:translate(-50%,-50%);transition:width .3s,height .3s}.modal-close:hover:before{width:2.5rem;height:2.5rem}.modal-close:hover{background-color:var(--color-hover);color:var(--color-text-primary);transform:scale(1.1)}.modal-close:active{transform:scale(.95);transition:transform .1s cubic-bezier(.4,0,.2,1)}.forward-message-preview{background-color:var(--color-hover);border-radius:.5rem;padding:var(--spacing-md);border-left:.1875rem solid var(--color-main);transition:transform var(--transition-base),box-shadow var(--transition-base),background-color var(--transition-base);animation:preview-slide-in .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.forward-message-preview:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(90deg,transparent,rgba(62,79,120,.05),transparent);transform:translate(-100%);transition:transform .6s}.forward-message-preview:hover:before{transform:translate(100%)}.forward-message-preview:hover{transform:translate(.25rem);box-shadow:0 .125rem .5rem #0000001a;background-color:var(--color-active)}@keyframes preview-slide-in{0%{opacity:0;transform:translateY(-.5rem)}to{opacity:1;transform:translateY(0)}}.preview-content{display:flex;flex-direction:column;gap:var(--spacing-sm)}.preview-forwarded-badge{font-size:var(--font-size-xs);color:var(--color-text-secondary);text-transform:uppercase;font-weight:600;letter-spacing:.03125rem;display:flex;align-items:center;gap:var(--spacing-xs)}.preview-text{font-size:var(--font-size-base);color:var(--color-text-primary);line-height:1.4;max-height:3.75rem;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical}.preview-attachment{font-size:var(--font-size-sm);color:var(--color-text-secondary);display:flex;align-items:center;gap:var(--spacing-sm);font-weight:500}.modal-content{flex:1;overflow-y:auto;overflow-x:hidden;padding:var(--spacing-xl);min-height:0;scrollbar-width:none;-ms-overflow-style:none}.modal-content::-webkit-scrollbar{display:none}.loading{display:flex;align-items:center;justify-content:center;padding:var(--spacing-2xl);color:var(--color-text-secondary);font-size:var(--font-size-base);gap:var(--spacing-sm)}.loading:before{content:"";width:1.25rem;height:1.25rem;border:.1875rem solid var(--color-border);border-top-color:var(--color-main);border-radius:50%;animation:spin-smooth .8s linear infinite}.empty{text-align:center;padding:var(--spacing-2xl);color:var(--color-text-secondary);font-size:var(--font-size-base)}.forward-section{margin-bottom:var(--spacing-xl);animation:section-fade-in .3s cubic-bezier(.4,0,.2,1)}.forward-section:last-child{margin-bottom:0}@keyframes section-fade-in{0%{opacity:0;transform:translateY(.5rem)}to{opacity:1;transform:translateY(0)}}.section-title{font-size:var(--font-size-sm);font-weight:600;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.03125rem;margin-bottom:var(--spacing-md);padding:0 var(--spacing-sm)}.channel-list{display:flex;flex-direction:column;gap:var(--spacing-xs)}.channel-option{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md) var(--spacing-lg);border-radius:.5rem;cursor:pointer;transition:background-color var(--transition-base),transform var(--transition-base),box-shadow var(--transition-slow),border-color var(--transition-base);border:.125rem solid transparent;position:relative;overflow:hidden;animation:option-slide-in .2s cubic-bezier(.4,0,.2,1)}.channel-option:nth-child(1){animation-delay:0ms}.channel-option:nth-child(2){animation-delay:30ms}.channel-option:nth-child(3){animation-delay:60ms}.channel-option:nth-child(4){animation-delay:90ms}.channel-option:nth-child(5){animation-delay:.12s}.channel-option:nth-child(n+6){animation-delay:.15s}@keyframes option-slide-in{0%{opacity:0;transform:translate(-.5rem)}to{opacity:1;transform:translate(0)}}.channel-option:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:#3e4f781a;transform:translate(-50%,-50%);transition:width .3s,height .3s}.channel-option:hover:before{width:300px;height:300px}.channel-option:hover{background-color:var(--color-hover);transform:translate(.25rem);box-shadow:0 .125rem .5rem #0000000d}.channel-option.selected{background-color:var(--color-main);color:#fff;border-color:var(--color-main);box-shadow:0 .125rem .5rem #3e4f784d}.channel-option.selected .channel-icon,.channel-option.selected .channel-name,.channel-option.selected .dm-avatar-small{color:#fff}.channel-option.selected:hover{background-color:#2d3d5f;transform:translate(.25rem) scale(1.02)}.channel-icon{font-size:var(--font-size-lg);color:var(--color-text-secondary);font-weight:600;flex-shrink:0;width:1.5rem;text-align:center}.channel-name{flex:1;font-size:var(--font-size-base);color:var(--color-text-primary);font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dm-avatar-small{width:2rem;height:2rem;border-radius:50%;background-color:var(--color-main);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:var(--font-size-sm);flex-shrink:0;overflow:hidden}.dm-avatar-small-image{width:100%;height:100%;border-radius:50%;object-fit:cover}.modal-footer{display:flex;gap:var(--spacing-md);justify-content:flex-end;padding:var(--spacing-lg) var(--spacing-xl);border-top:1px solid var(--color-border);flex-shrink:0;background-color:var(--color-background)}.modal-footer button{min-width:5rem}.cancel-button,.forward-button{padding:.625rem 1.25rem;border-radius:.375rem;font-family:inherit;font-size:var(--font-size-base);font-weight:500;cursor:pointer;transition:background-color var(--transition-base),transform var(--transition-base),box-shadow var(--transition-slow),border-color var(--transition-base);position:relative;overflow:hidden}.cancel-button{background-color:transparent;color:var(--color-text-secondary);border:.125rem solid var(--color-border)}.cancel-button:hover:not(:disabled){background-color:var(--color-hover);border-color:var(--color-secondary);transform:translateY(-.0625rem);box-shadow:0 .125rem .5rem #0000001a}.cancel-button:active:not(:disabled){transform:translateY(0);transition:transform .1s cubic-bezier(.4,0,.2,1)}.forward-button{background-color:var(--color-main);color:#fff;border:none}.forward-button:hover:not(:disabled){background-color:#2d3d5f;transform:translateY(-.0625rem);box-shadow:0 .25rem .75rem #3e4f784d}.forward-button:active:not(:disabled){transform:translateY(0);transition:transform .1s cubic-bezier(.4,0,.2,1)}.forward-button:disabled,.cancel-button:disabled{opacity:.5;cursor:not-allowed;transform:none}.forward-button.button-loading{position:relative;color:transparent}.forward-button.button-loading:after{content:"";position:absolute;top:50%;left:50%;width:1rem;height:1rem;margin:-.5rem 0 0 -.5rem;border:.125rem solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin-smooth .8s linear infinite}.typing-indicator{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;margin:.25rem 0;color:var(--color-text-secondary);font-size:.8125rem;font-style:italic}.typing-dots{display:flex;gap:.25rem;align-items:center}.typing-dot{width:.375rem;height:.375rem;border-radius:50%;background-color:var(--color-text-secondary);opacity:.6;animation:typing-bounce 1.4s infinite ease-in-out}.typing-dot:nth-child(1){animation-delay:-.32s}.typing-dot:nth-child(2){animation-delay:-.16s}.typing-dot:nth-child(3){animation-delay:0}@keyframes typing-bounce{0%,80%,to{transform:scale(.8);opacity:.5}40%{transform:scale(1);opacity:1}}.typing-text{flex:1}.message-list{flex:1;overflow-y:auto;overflow-x:hidden;padding:var(--spacing-md) var(--spacing-xl);display:flex;flex-direction:column;gap:var(--spacing-xs);background-color:#fafbfc;scrollbar-width:none;-ms-overflow-style:none}.message-list::-webkit-scrollbar{display:none}.message-list>*{animation:list-item-enter .2s cubic-bezier(.4,0,.2,1)}.message-edit-container{padding:.75rem;background-color:var(--color-background);border:.125rem solid var(--color-main);border-radius:.5rem;margin:.5rem 0}.message-edit-input{width:100%;padding:.625rem .875rem;border:1px solid var(--color-border);border-radius:.375rem;font-family:inherit;font-size:.875rem;margin-bottom:.5rem}.message-edit-actions{display:flex;gap:.5rem;justify-content:flex-end}.edit-save,.edit-cancel{padding:.375rem 1rem;border-radius:.375rem;font-family:inherit;font-size:.8125rem;font-weight:500;cursor:pointer;transition:background-color var(--transition-base),transform var(--transition-base),box-shadow var(--transition-slow),border-color var(--transition-base);position:relative;overflow:hidden}.edit-save{background-color:var(--color-main);color:#fff;border:none}.edit-save:hover{background-color:#2d3d5f;transform:translateY(-1px);box-shadow:0 4px 12px #3e4f784d}.edit-save:active{transform:translateY(0);transition:transform .1s cubic-bezier(.4,0,.2,1)}.edit-cancel{background-color:transparent;color:var(--color-text-secondary);border:1px solid var(--color-border)}.edit-cancel:hover{background-color:var(--color-hover);transform:translateY(-1px);box-shadow:0 2px 8px #0000001a}.edit-cancel:active{transform:translateY(0);transition:transform .1s cubic-bezier(.4,0,.2,1)}.loading-messages{text-align:center;color:var(--color-text-secondary);padding:2.5rem 1.25rem;font-size:.875rem;animation:fadeIn .3s ease-in}.loading-spinner{display:inline-block;width:1.25rem;height:1.25rem;border:.1875rem solid var(--color-border);border-top-color:var(--color-main);border-radius:50%;animation:spin .8s linear infinite;margin-right:8px;vertical-align:middle}.message-list.empty{justify-content:center;align-items:center}.empty-messages{text-align:center;color:var(--color-text-secondary);font-size:.875rem;background:none;border:none;box-shadow:none;padding:0;margin:0}.typing-indicator{display:inline-flex;align-items:center;gap:.25rem;padding:.625rem .75rem;background-color:var(--color-background);border:1px solid var(--color-border);border-radius:16px;width:fit-content}.typing-dot{width:.375rem;height:.375rem;border-radius:50%;background-color:var(--color-text-secondary);animation:typing 1.2s infinite}.typing-dot:nth-child(1){animation-delay:0s}.typing-dot:nth-child(2){animation-delay:.2s}.typing-dot:nth-child(3){animation-delay:.4s}.typing-text{font-size:.75rem;color:var(--color-text-secondary);margin-left:.25rem}@media (max-width: 47.9375rem){.message-list{padding:var(--spacing-sm) var(--spacing-md);gap:var(--spacing-lg)}}@media (min-width: 48rem) and (max-width: 63.9375rem){.message-list{gap:var(--spacing-sm)}}@keyframes typing{0%{opacity:.2;transform:translateY(0)}50%{opacity:1;transform:translateY(-2px)}to{opacity:.2;transform:translateY(0)}}.image-preview{padding:.75rem;background-color:var(--color-background);border-top:.0625rem solid var(--color-border);border-radius:0 0 .5rem .5rem}.image-preview-container{position:relative;margin-bottom:.5rem;border-radius:.5rem;overflow:hidden;background-color:var(--color-hover)}.image-preview-img{width:100%;max-height:12.5rem;object-fit:contain;display:block}.image-preview-remove{position:absolute;top:.5rem;right:.5rem;width:2rem;height:2rem;border-radius:50%;background-color:#0009;border:none;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}.image-preview-remove:hover{background-color:#000c;transform:scale(1.1)}.image-preview-info{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem;font-size:var(--font-size-sm);color:var(--color-text-secondary)}.image-preview-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-right:.5rem}.image-preview-size{flex-shrink:0}.image-preview-send{width:100%;padding:.625rem;background-color:var(--color-main);color:#fff;border:none;border-radius:.375rem;font-family:inherit;font-size:var(--font-size-base);font-weight:500;cursor:pointer;transition:all .2s}.image-preview-send:hover:not(:disabled){background-color:#2d3d5f}.image-preview-send:disabled{opacity:.6;cursor:not-allowed}.reply-preview{padding:var(--spacing-sm) var(--spacing-md);background-color:var(--color-hover);border-top:.0625rem solid var(--color-border);border-bottom:.0625rem solid var(--color-border);animation:reply-preview-slide-down .2s cubic-bezier(.4,0,.2,1)}@keyframes reply-preview-slide-down{0%{opacity:0;transform:translateY(-.5rem);max-height:0}to{opacity:1;transform:translateY(0);max-height:5rem}}.reply-preview-content{display:flex;align-items:center;gap:var(--spacing-sm);position:relative}.reply-preview-line{width:.25rem;height:2.5rem;background-color:var(--color-main);border-radius:.125rem;flex-shrink:0}.reply-preview-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:var(--spacing-xs)}.reply-preview-header{display:flex;align-items:center;gap:var(--spacing-xs)}.reply-preview-sender{font-size:var(--font-size-sm);font-weight:600;color:var(--color-main)}.reply-preview-text{font-size:var(--font-size-sm);color:var(--color-text-secondary);line-height:1.4;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;word-break:break-word}.reply-preview-close{width:1.5rem;height:1.5rem;min-width:1.5rem;min-height:1.5rem;border:none;background-color:transparent;border-radius:.25rem;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--color-text-secondary);transition:background-color var(--transition-base),transform var(--transition-base),color var(--transition-base);flex-shrink:0;position:relative;overflow:hidden}.reply-preview-close:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:#0000001a;transform:translate(-50%,-50%);transition:width .3s,height .3s}.reply-preview-close:hover:before{width:2rem;height:2rem}.reply-preview-close:hover{background-color:var(--color-active);color:var(--color-text-primary);transform:scale(1.1)}.reply-preview-close:active{transform:scale(.95);transition:transform .1s cubic-bezier(.4,0,.2,1)}.message-input-container{padding:var(--spacing-lg) var(--spacing-xl);border-top:1px solid var(--color-border);background-color:var(--color-background);position:relative;z-index:10}@media (max-width: 47.9375rem){.message-input-container{padding:var(--spacing-md) var(--spacing-lg);padding-bottom:calc(var(--spacing-md) + env(safe-area-inset-bottom,0px))}}.message-input-form{display:flex;align-items:flex-end;gap:var(--spacing-sm)}.attach-button{width:var(--touch-target-min);height:var(--touch-target-min);min-width:var(--touch-target-min);min-height:var(--touch-target-min);border:none;background-color:transparent;border-radius:.375rem;cursor:pointer;font-size:1.25rem;display:flex;align-items:center;justify-content:center;transition:background-color .2s;flex-shrink:0;touch-action:manipulation}.attach-button:active{background-color:var(--color-active)}.attach-button:hover:not(:disabled){background-color:var(--color-hover)}.attach-button:disabled{opacity:.5;cursor:not-allowed}.message-input{flex:1;padding:.625rem .875rem;border:1px solid var(--color-border);border-radius:.5rem;font-family:inherit;font-size:var(--font-size-base);resize:none;min-height:var(--touch-target-min);max-height:7.5rem;line-height:1.5;transition:border-color var(--transition-base),box-shadow var(--transition-base),transform var(--transition-base);background-color:var(--color-background)}.message-input.input-focus-animation:focus{animation:input-focus .3s cubic-bezier(.4,0,.2,1);border-color:var(--color-main);outline:none;transform:scale(1.01)}@media (max-width: 47.9375rem){.message-input{font-size:1rem;min-height:var(--touch-target-min)}}.message-input:disabled{opacity:.6;cursor:not-allowed}.send-button{width:var(--touch-target-min);height:var(--touch-target-min);min-width:var(--touch-target-min);min-height:var(--touch-target-min);border:none;background-color:var(--color-main);color:#fff;border-radius:6px;cursor:pointer;font-size:18px;display:flex;align-items:center;justify-content:center;transition:background-color .2s;flex-shrink:0;touch-action:manipulation}.send-button:active{background-color:#2d3d5f;opacity:.9}@media (min-width: 64rem){.attach-button{transition:background-color var(--transition-base),transform var(--transition-base),box-shadow var(--transition-slow)}.attach-button:hover:not(:disabled){background-color:var(--color-hover);transform:scale(var(--hover-scale));box-shadow:0 2px 8px #0000001a}.send-button{transition:background-color var(--transition-base),transform var(--transition-base),box-shadow var(--transition-slow)}.send-button:hover:not(:disabled){background-color:#4a5f8a;transform:scale(var(--hover-scale));box-shadow:0 4px 12px #3e4f784d}.send-button:active:not(:disabled){transform:scale(.98);transition:transform .1s cubic-bezier(.4,0,.2,1)}}.send-button:hover:not(:disabled){background-color:#2d3d5f}.send-button:disabled{opacity:.5;cursor:not-allowed}.message-input-container.read-only{padding:var(--spacing-lg) var(--spacing-xl);border-top:1px solid var(--color-border);background-color:var(--color-hover);display:flex;align-items:center;justify-content:center}.read-only-message{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md) var(--spacing-lg);background-color:var(--color-background);border-radius:.5rem;color:var(--color-text-secondary);font-size:var(--font-size-sm);border:.0625rem solid var(--color-border)}.read-only-message svg{flex-shrink:0;color:var(--color-text-secondary);opacity:.7}.read-only-message span{line-height:1.5}@media (max-width: 47.9375rem){.message-input-container.read-only{padding:var(--spacing-md) var(--spacing-lg)}.read-only-message{padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-size-xs)}}.pinned-messages-container{background-color:var(--color-hover);border-bottom:.0625rem solid var(--color-border);padding:var(--spacing-sm) var(--spacing-md);animation:slide-down-enter .3s cubic-bezier(.4,0,.2,1)}.pinned-message-single{width:100%}.pinned-message-item{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);background-color:var(--color-background);border-radius:.5rem;cursor:pointer;transition:background-color var(--transition-base),transform var(--transition-base),box-shadow var(--transition-base);box-shadow:0 .0625rem .125rem #0000000d}.pinned-message-item:hover{background-color:var(--color-active);transform:translate(.125rem);box-shadow:0 .125rem .25rem #0000001a}.pinned-message-content{flex:1;min-width:0;display:flex;flex-direction:column;gap:var(--spacing-xs)}.pinned-message-sender{font-size:var(--font-size-xs);font-weight:600;color:var(--color-main);display:flex;align-items:center;gap:var(--spacing-xs)}.pinned-message-sender:before{content:"";display:inline-block;width:.375rem;height:.375rem;background-color:var(--color-main);border-radius:50%;flex-shrink:0}.pinned-message-text{font-size:var(--font-size-sm);color:var(--color-text-secondary);line-height:1.4;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;word-break:break-word}.pinned-message-actions{display:flex;align-items:center;gap:var(--spacing-xs);flex-shrink:0}.pinned-message-navigation{display:flex;align-items:center;gap:var(--spacing-xs);padding:0 var(--spacing-xs);border-right:.0625rem solid var(--color-border);margin-right:var(--spacing-xs)}.pinned-nav-button{width:1.75rem;height:1.75rem;display:flex;align-items:center;justify-content:center;background:none;border:none;color:var(--color-text-tertiary);cursor:pointer;border-radius:.25rem;transition:background-color var(--transition-base),color var(--transition-base);padding:0}.pinned-nav-button:hover{background-color:var(--color-hover);color:var(--color-main)}.pinned-nav-button:active{transform:scale(.95)}.pinned-message-counter{font-size:var(--font-size-xs);color:var(--color-text-secondary);font-weight:500;min-width:2.5rem;text-align:center;-webkit-user-select:none;user-select:none}.pinned-message-unpin{width:1.75rem;height:1.75rem;display:flex;align-items:center;justify-content:center;background:none;border:none;color:var(--color-text-tertiary);cursor:pointer;border-radius:.25rem;transition:background-color var(--transition-base),color var(--transition-base);padding:0}.pinned-message-unpin:hover{background-color:var(--color-hover);color:var(--color-text-primary)}.pinned-message-unpin:active{transform:scale(.95)}@keyframes slide-down-enter{0%{opacity:0;transform:translateY(-.5rem)}to{opacity:1;transform:translateY(0)}}.poll-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background-color:#0006;display:flex;align-items:center;justify-content:center;z-index:1200}.poll-modal{width:90%;max-width:28rem;background-color:var(--color-background);border-radius:.75rem;box-shadow:0 .75rem 2rem #0003;padding:var(--spacing-lg);display:flex;flex-direction:column;gap:var(--spacing-md)}.poll-modal-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--spacing-sm)}.poll-modal-header h2{font-size:var(--font-size-lg);font-weight:600;margin:0;color:var(--color-text-primary)}.poll-modal-close{border:none;background:transparent;border-radius:.375rem;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:var(--spacing-xs);color:var(--color-text-secondary)}.poll-modal-body{display:flex;flex-direction:column;gap:var(--spacing-md)}.poll-field{display:flex;flex-direction:column;gap:var(--spacing-xs)}.poll-label{font-size:var(--font-size-sm);font-weight:500;color:var(--color-text-secondary)}.poll-input{width:100%;padding:.625rem .875rem;border-radius:.5rem;border:.0625rem solid var(--color-border);font-size:var(--font-size-base);font-family:inherit}.poll-options-section{display:flex;flex-direction:column;gap:var(--spacing-sm)}.poll-option-row{display:flex;align-items:center;gap:var(--spacing-xs)}.poll-option-remove{width:2rem;height:2rem;display:flex;align-items:center;justify-content:center;border-radius:999px;border:none;background-color:var(--color-hover);cursor:pointer}.poll-add-option{align-self:flex-start;border:none;border-radius:.5rem;padding:.5rem .875rem;background-color:var(--color-hover);cursor:pointer;font-size:var(--font-size-sm)}.poll-flags{display:flex;flex-direction:column;gap:.25rem;font-size:var(--font-size-sm);color:var(--color-text-secondary)}.poll-flag{display:flex;align-items:center;gap:var(--spacing-xs)}.poll-modal-footer{display:flex;justify-content:flex-end;gap:var(--spacing-sm);margin-top:var(--spacing-md)}.poll-cancel,.poll-create{border-radius:.5rem;border:none;padding:.5rem 1.25rem;font-size:var(--font-size-sm);font-weight:500;cursor:pointer}.poll-cancel{background-color:transparent;color:var(--color-text-secondary);border:.0625rem solid var(--color-border)}.poll-create{background-color:var(--color-main);color:#fff}.poll-create:disabled{opacity:.6;cursor:not-allowed}@media (max-width: 47.9375rem){.poll-modal{padding:var(--spacing-md)}}.chat-area{flex:1;display:flex;flex-direction:column;height:100vh;background-color:var(--color-background)}.chat-area.empty{align-items:center;justify-content:center;position:relative}.empty-state{text-align:center;color:var(--color-text-secondary);animation:fadeIn .5s ease-in}.chat-empty-header{position:absolute;top:var(--spacing-sm);left:var(--spacing-sm)}@keyframes fadeIn{0%{opacity:0;transform:translateY(1.25rem)}to{opacity:1;transform:translateY(0)}}.empty-state h2{color:var(--color-main);margin-bottom:var(--spacing-sm);font-size:var(--font-size-2xl)}.empty-state p{font-size:var(--font-size-base)}.chat-header{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-lg) var(--spacing-xl);border-bottom:.0625rem solid var(--color-border);background-color:var(--color-background);flex-shrink:0}.chat-header-info{flex:1;min-width:0;display:flex;align-items:center;gap:.75rem}.hamburger-button{display:none;width:var(--touch-target-min);height:var(--touch-target-min);min-width:var(--touch-target-min);min-height:var(--touch-target-min);border:none;background-color:transparent;border-radius:.375rem;cursor:pointer;color:var(--color-text-primary);transition:background-color var(--transition-base),transform var(--transition-base),box-shadow var(--transition-slow);flex-shrink:0;padding:var(--spacing-sm);position:relative;overflow:hidden}.hamburger-button:hover{background-color:var(--color-hover)}.hamburger-button:active{background-color:var(--color-active)}@media (max-width: 47.9375rem){.hamburger-button{display:flex;align-items:center;justify-content:center}}@media (min-width: 48rem) and (max-width: 63.9375rem){.chat-area{padding:var(--spacing-md) var(--spacing-lg);transition:padding var(--transition-slow);min-width:0}.chat-header{padding:var(--spacing-md) var(--spacing-lg)}.chat-header h2{font-size:var(--font-size-lg)}.hamburger-button{display:none}}@media (min-width: 64rem){.chat-area{padding:var(--spacing-xl) 2rem;min-width:0;transition:padding var(--transition-slow)}.chat-header{padding:var(--spacing-xl) 2rem;border-bottom:1px solid var(--color-border)}.chat-header h2{font-size:var(--font-size-xl);font-weight:600;letter-spacing:-.01em}.hamburger-button{display:none}.message-list{padding:var(--spacing-lg) 0}}.channel-name{font-size:var(--font-size-lg);font-weight:600;color:var(--color-text-primary);margin:0}.channel-name-button{padding:0;border:none;background:transparent;cursor:pointer;text-align:left}.channel-name-button:hover{text-decoration:underline}.dm-header{display:flex;align-items:center;gap:var(--spacing-md)}.dm-header-avatar{width:2.25rem;height:2.25rem;border-radius:50%;background-color:var(--color-secondary);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:var(--font-size-md);flex-shrink:0;overflow:hidden}.dm-header-avatar-image{width:100%;height:100%;border-radius:50%;object-fit:cover}.chat-header-actions{display:flex;gap:var(--spacing-sm);flex-shrink:0}.header-button{width:2.25rem;height:2.25rem;min-width:2.25rem;min-height:2.25rem;border:none;background-color:transparent;border-radius:.375rem;cursor:pointer;font-size:var(--font-size-lg);display:flex;align-items:center;justify-content:center;transition:background-color var(--transition-base),transform var(--transition-base),box-shadow var(--transition-slow);flex-shrink:0}.header-button:hover{background-color:var(--color-hover);transform:scale(var(--hover-scale));box-shadow:0 2px 8px #0000001a}.header-button:active{transform:scale(.95);transition:transform .1s cubic-bezier(.4,0,.2,1)}.channel-management-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;-webkit-backdrop-filter:blur(.25rem);backdrop-filter:blur(.25rem);display:flex;align-items:stretch;justify-content:flex-end;z-index:1000;animation:modal-backdrop-enter .2s cubic-bezier(.4,0,.2,1)}.channel-management-modal{background-color:var(--color-background);border-radius:0;border-top-left-radius:.75rem;border-bottom-left-radius:.75rem;width:min(24rem,100%);max-width:24rem;height:100vh;max-height:100vh;display:flex;flex-direction:column;box-shadow:0 1.25rem 3.125rem #0000004d;animation:panel-slide-in .25s cubic-bezier(.4,0,.2,1);overflow:hidden}@keyframes panel-slide-in{0%{opacity:0;transform:translate(1.5rem)}to{opacity:1;transform:translate(0)}}.channel-management-header{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-xl);border-bottom:.0625rem solid var(--color-border)}.channel-management-header h2{margin:0;font-size:var(--font-size-xl);font-weight:600;color:var(--color-text-primary)}.close-button{width:2rem;height:2rem;border:none;background-color:transparent;border-radius:.375rem;cursor:pointer;color:var(--color-text-secondary);display:flex;align-items:center;justify-content:center;transition:background-color var(--transition-base),color var(--transition-base)}.close-button:hover{background-color:var(--color-hover);color:var(--color-text-primary)}.channel-management-panel{width:100%;height:100%;display:flex;flex-direction:column}.channel-info-header{display:flex;align-items:flex-start;gap:var(--spacing-lg);padding:var(--spacing-xl);border:.0625rem solid var(--color-border);border-radius:.75rem;background:linear-gradient(135deg,var(--color-background) 0%,var(--color-hover) 100%);margin-bottom:var(--spacing-xl);box-shadow:0 .125rem .5rem #0000000d}.channel-info-avatar{width:5rem;height:5rem;border-radius:50%;background:linear-gradient(135deg,var(--color-main) 0%,var(--color-secondary) 100%);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:2rem;flex-shrink:0;box-shadow:0 .25rem .75rem #00000026;border:.1875rem solid var(--color-background)}.channel-info-content{flex:1;min-width:0;display:flex;flex-direction:column;gap:var(--spacing-xs)}.channel-info-title-row{display:flex;align-items:center;gap:var(--spacing-sm);flex-wrap:wrap}.channel-info-name{font-weight:700;font-size:1.5rem;color:var(--color-text-primary);line-height:1.2;margin:0}.channel-type-badge{display:inline-flex;align-items:center;gap:.25rem;padding:.25rem .625rem;border-radius:999px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.025em;border:.0625rem solid transparent;transition:all var(--transition-base)}.channel-type-badge svg{width:.875rem;height:.875rem;stroke-width:2.5}.channel-type-private{background-color:#ffc10726;color:#ff9800;border-color:#ffc1074d}.channel-type-public{background-color:#4caf5026;color:#4caf50;border-color:#4caf504d}.channel-info-handle{color:var(--color-main);font-size:var(--font-size-base);font-weight:500;margin-top:.125rem}.channel-info-subtitle{color:var(--color-text-secondary);font-size:var(--font-size-sm);margin-top:.125rem}.channel-info-meta{display:flex;align-items:center;gap:.375rem;color:var(--color-text-secondary);font-size:var(--font-size-sm);margin-top:.25rem}.channel-info-meta svg{width:.875rem;height:.875rem;opacity:.7;flex-shrink:0}.about-display{color:var(--color-text-primary);line-height:1.5;white-space:pre-wrap}.edit-about-form{display:flex;flex-direction:column;gap:var(--spacing-md)}.about-textarea{padding:var(--spacing-sm) var(--spacing-md);border:.0625rem solid var(--color-border);border-radius:.375rem;font-size:var(--font-size-base);background-color:var(--color-background);color:var(--color-text-primary);width:100%;resize:vertical}.privacy-form{display:flex;flex-direction:column;gap:var(--spacing-sm)}.privacy-option{display:flex;align-items:center;gap:var(--spacing-sm);color:var(--color-text-primary)}.handle-row{display:flex;gap:var(--spacing-sm);align-items:center}.handle-input-wrap{flex:1;display:flex;align-items:center;border:.0625rem solid var(--color-border);border-radius:.375rem;overflow:hidden;background:var(--color-background)}.handle-prefix{padding:0 var(--spacing-sm);color:var(--color-text-secondary);border-right:.0625rem solid var(--color-border)}.handle-input{flex:1;padding:var(--spacing-sm) var(--spacing-md);border:none;outline:none;background:transparent;color:var(--color-text-primary);font-size:var(--font-size-base)}.handle-status{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.status-available{color:#1f8a4c}.status-checking{color:var(--color-text-secondary)}.status-taken,.status-invalid{color:#c0392b}.privacy-display .privacy-badge{display:inline-flex;align-items:center;padding:.125rem .5rem;border-radius:999px;font-size:.75rem;border:.0625rem solid var(--color-border);color:var(--color-text-secondary);margin-bottom:var(--spacing-xs)}.privacy-note{color:var(--color-text-secondary);font-size:var(--font-size-sm)}.channel-management-content{padding:var(--spacing-xl);overflow-y:auto;flex:1;-ms-overflow-style:none;scrollbar-width:none}.channel-management-content::-webkit-scrollbar{display:none}.management-section{margin-bottom:var(--spacing-xl)}.management-section:last-child{margin-bottom:0}.management-section h3{margin:0 0 var(--spacing-md) 0;font-size:var(--font-size-lg);font-weight:600;color:var(--color-text-primary)}.section-title{display:flex;align-items:center;gap:var(--spacing-sm);margin:0;font-size:var(--font-size-lg);font-weight:600;color:var(--color-text-primary)}.section-title svg{width:1.125rem;height:1.125rem;color:var(--color-main);flex-shrink:0}.section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--spacing-md)}.section-header h3{margin:0}.add-member-button{display:flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-sm) var(--spacing-md);border:none;background-color:var(--color-main);color:#fff;border-radius:.375rem;cursor:pointer;font-size:var(--font-size-sm);font-weight:500;transition:background-color var(--transition-base),transform var(--transition-base)}.add-member-button:hover{background-color:var(--color-main-dark, #3a4d78);transform:scale(var(--hover-scale))}.name-display{display:flex;align-items:center;gap:var(--spacing-md)}.channel-name-display{font-size:var(--font-size-lg);font-weight:500;color:var(--color-text-primary)}.edit-name-form{display:flex;flex-direction:column;gap:var(--spacing-md)}.name-input{padding:var(--spacing-sm) var(--spacing-md);border:.0625rem solid var(--color-border);border-radius:.375rem;font-size:var(--font-size-base);background-color:var(--color-background);color:var(--color-text-primary);width:100%}.edit-actions{display:flex;gap:var(--spacing-sm)}.edit-button{display:flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-xs) var(--spacing-sm);border:.0625rem solid var(--color-border);background-color:transparent;color:var(--color-text-secondary);border-radius:.375rem;cursor:pointer;font-size:var(--font-size-sm);transition:background-color var(--transition-base),color var(--transition-base)}.edit-button:hover{background-color:var(--color-hover);color:var(--color-text-primary)}.save-button,.add-button{padding:var(--spacing-sm) var(--spacing-lg);border:none;background-color:var(--color-main);color:#fff;border-radius:.375rem;cursor:pointer;font-size:var(--font-size-sm);font-weight:500;transition:background-color var(--transition-base)}.save-button:hover,.add-button:hover{background-color:var(--color-main-dark, #3a4d78)}.save-button:disabled,.add-button:disabled{opacity:.5;cursor:not-allowed}.cancel-button{padding:var(--spacing-sm) var(--spacing-lg);border:.0625rem solid var(--color-border);background-color:transparent;color:var(--color-text-secondary);border-radius:.375rem;cursor:pointer;font-size:var(--font-size-sm);transition:background-color var(--transition-base),color var(--transition-base)}.cancel-button:hover{background-color:var(--color-hover);color:var(--color-text-primary)}.add-member-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#0009;display:flex;align-items:center;justify-content:center;z-index:10000;animation:fade-in .2s ease-out;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.add-member-modal{background-color:var(--color-background);width:100%;height:100%;max-width:28rem;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 .5rem 2rem #0000004d;animation:modal-slide-up .3s cubic-bezier(.4,0,.2,1);border-radius:.75rem;overflow:hidden}@media (max-width: 768px){.add-member-modal{max-width:100%;max-height:100%;border-radius:0}}@keyframes modal-slide-up{0%{opacity:0;transform:translateY(2rem) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.add-member-header{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-lg) var(--spacing-xl);border-bottom:.0625rem solid var(--color-border);background-color:var(--color-background);position:relative;min-height:3.5rem}.add-member-back-button{width:2.5rem;height:2.5rem;border:none;background-color:transparent;color:var(--color-text-primary);cursor:pointer;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:background-color var(--transition-base);flex-shrink:0;padding:0}.add-member-back-button:hover{background-color:var(--color-hover)}.add-member-header h3{margin:0;font-size:1.125rem;font-weight:600;color:var(--color-text-primary);flex:1;text-align:center}.add-member-done-button{padding:var(--spacing-sm) var(--spacing-md);background-color:var(--color-main);color:#fff;border:none;border-radius:.5rem;font-size:.875rem;font-weight:500;cursor:pointer;transition:all var(--transition-base);flex-shrink:0}.add-member-done-button:hover:not(:disabled){background-color:var(--color-main-dark, #0056b3)}.add-member-done-button:disabled{opacity:.6;cursor:not-allowed}.add-member-search-container{padding:var(--spacing-md) var(--spacing-xl);background-color:var(--color-background);border-bottom:.0625rem solid var(--color-border)}.add-member-search{position:relative;display:flex;align-items:center}.add-member-search-input{width:100%;padding:var(--spacing-md) var(--spacing-md) var(--spacing-md) 2.75rem;border:.0625rem solid var(--color-border);border-radius:1.5rem;background-color:var(--color-hover);color:var(--color-text-primary);font-size:.9375rem;transition:all var(--transition-base)}.add-member-search-input:focus{outline:none;border-color:var(--color-main);background-color:var(--color-background);box-shadow:0 0 0 .125rem rgba(var(--color-main-rgb, 0, 123, 255),.1)}.add-member-search .search-icon{position:absolute;left:var(--spacing-md);top:50%;transform:translateY(-50%);color:var(--color-text-secondary);pointer-events:none;z-index:1}.add-member-search .clear-search-button{position:absolute;right:var(--spacing-sm);top:50%;transform:translateY(-50%);width:2rem;height:2rem;border:none;background-color:transparent;color:var(--color-text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all var(--transition-base)}.add-member-search .clear-search-button:hover{background-color:var(--color-hover);color:var(--color-text-primary)}.add-member-list{flex:1;overflow-y:auto;overflow-x:hidden;padding:0;min-height:0}.add-member-list::-webkit-scrollbar{width:.375rem}.add-member-list::-webkit-scrollbar-track{background:transparent}.add-member-list::-webkit-scrollbar-thumb{background-color:var(--color-border);border-radius:.1875rem}.add-member-list::-webkit-scrollbar-thumb:hover{background-color:var(--color-text-secondary)}.add-member-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-xxl);color:var(--color-text-secondary);gap:var(--spacing-md)}.loading-spinner{width:2.5rem;height:2.5rem;border:.25rem solid var(--color-border);border-top-color:var(--color-main);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.add-member-loading p{margin:0;font-size:.9375rem;color:var(--color-text-secondary)}.add-member-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-xxl);color:var(--color-text-secondary);gap:var(--spacing-md);text-align:center}.add-member-empty svg{color:var(--color-text-secondary);opacity:.4}.add-member-empty p{margin:0;font-size:1rem;font-weight:500;color:var(--color-text-primary)}.add-member-empty span{font-size:.875rem;color:var(--color-text-secondary)}.add-member-user-item{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md) var(--spacing-xl);cursor:pointer;transition:background-color var(--transition-base);position:relative;border-bottom:.0625rem solid var(--color-border)}.add-member-user-item:last-child{border-bottom:none}.add-member-user-item:hover:not(.disabled){background-color:var(--color-hover)}.add-member-user-item.selected{background-color:rgba(var(--color-main-rgb, 0, 123, 255),.08)}.add-member-user-item.disabled{opacity:.5;cursor:not-allowed;background-color:transparent}.add-member-user-avatar{width:3rem;height:3rem;border-radius:50%;background:linear-gradient(135deg,var(--color-main),var(--color-main-dark, #0056b3));color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:1.125rem;flex-shrink:0;box-shadow:0 .125rem .5rem #0000001a}.add-member-user-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:.125rem}.add-member-user-name{font-weight:500;color:var(--color-text-primary);font-size:.9375rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:1.4}.add-member-user-email{font-size:.8125rem;color:var(--color-text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:1.3}.add-member-user-badge{padding:.25rem .625rem;background-color:var(--color-hover);color:var(--color-text-secondary);border-radius:.75rem;font-size:.75rem;font-weight:500;flex-shrink:0;white-space:nowrap}.add-member-user-check{color:var(--color-main);flex-shrink:0;display:flex;align-items:center;justify-content:center;width:1.5rem;height:1.5rem;background-color:var(--color-main);border-radius:50%;color:#fff;animation:check-appear .2s ease-out}@keyframes check-appear{0%{transform:scale(0);opacity:0}to{transform:scale(1);opacity:1}}.add-member-user-checkbox{width:1.5rem;height:1.5rem;border:.125rem solid var(--color-border);border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all var(--transition-base)}.add-member-user-item:hover:not(.disabled) .add-member-user-checkbox{border-color:var(--color-main)}.checkbox-inner{width:.75rem;height:.75rem;border-radius:50%;background-color:transparent;transition:background-color var(--transition-base)}.add-member-footer{padding:var(--spacing-md) var(--spacing-xl);border-top:.0625rem solid var(--color-border);display:flex;justify-content:center;background-color:var(--color-background)}.add-member-confirm-button{width:100%;padding:var(--spacing-md) var(--spacing-xl);background-color:var(--color-main);color:#fff;border:none;border-radius:.5rem;font-size:.9375rem;font-weight:500;cursor:pointer;transition:all var(--transition-base);box-shadow:0 .125rem .5rem rgba(var(--color-main-rgb, 0, 123, 255),.3)}.add-member-confirm-button:hover:not(:disabled){background-color:var(--color-main-dark, #0056b3);transform:translateY(-1px);box-shadow:0 .25rem .75rem rgba(var(--color-main-rgb, 0, 123, 255),.4)}.add-member-confirm-button:active:not(:disabled){transform:translateY(0)}.add-member-confirm-button:disabled{opacity:.6;cursor:not-allowed;transform:none}.promote-dialog-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#0009;display:flex;align-items:center;justify-content:center;z-index:10000;animation:fade-in .2s ease-out;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.promote-dialog{background-color:var(--color-background);border-radius:.75rem;width:90%;max-width:28rem;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 .5rem 2rem #0000004d;animation:modal-slide-up .3s cubic-bezier(.4,0,.2,1);overflow:hidden}.promote-dialog-header{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-xl);border-bottom:.0625rem solid var(--color-border)}.promote-dialog-header h3{margin:0;font-size:1.25rem;font-weight:600;color:var(--color-text-primary)}.promote-dialog-content{padding:var(--spacing-xl);overflow-y:auto;flex:1}.promote-user-info{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-lg);background-color:var(--color-hover);border-radius:.75rem;margin-bottom:var(--spacing-xl)}.promote-user-avatar{width:3.5rem;height:3.5rem;border-radius:50%;background:linear-gradient(135deg,var(--color-main),var(--color-main-dark, #0056b3));color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:1.5rem;flex-shrink:0;box-shadow:0 .125rem .5rem #00000026}.promote-user-details{flex:1;min-width:0}.promote-user-name{font-weight:600;color:var(--color-text-primary);font-size:1.0625rem;margin-bottom:.25rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.promote-user-email{font-size:.875rem;color:var(--color-text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.promote-permissions{display:flex;flex-direction:column;gap:var(--spacing-md)}.promote-permission-title{font-weight:600;color:var(--color-text-primary);font-size:.9375rem;margin-bottom:var(--spacing-sm)}.promote-permission-list{display:flex;flex-direction:column;gap:var(--spacing-sm)}.promote-permission-item{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md);background-color:var(--color-hover);border-radius:.5rem;color:var(--color-text-primary);font-size:.9375rem;transition:background-color var(--transition-base)}.promote-permission-item svg{color:var(--color-main);flex-shrink:0}.promote-permission-item.removed{background-color:#c0392b1a}.promote-permission-item.removed svg{color:#c0392b}.promote-warning,.promote-info{display:flex;align-items:flex-start;gap:var(--spacing-sm);padding:var(--spacing-md);border-radius:.5rem;font-size:.875rem;line-height:1.5;margin-top:var(--spacing-sm)}.promote-warning{background-color:#ffc1071a;color:#856404;border:.0625rem solid rgba(255,193,7,.3)}.promote-warning svg{color:#ffc107;flex-shrink:0;margin-top:.125rem}.promote-info{background-color:rgba(var(--color-main-rgb, 0, 123, 255),.1);color:var(--color-text-secondary);border:.0625rem solid rgba(var(--color-main-rgb, 0, 123, 255),.2)}.promote-info svg{color:var(--color-main);flex-shrink:0;margin-top:.125rem}.promote-dialog-actions{display:flex;gap:var(--spacing-md);padding:var(--spacing-xl);border-top:.0625rem solid var(--color-border);background-color:var(--color-background)}.promote-cancel-button{flex:1;padding:var(--spacing-md) var(--spacing-xl);border:.0625rem solid var(--color-border);background-color:transparent;color:var(--color-text-primary);border-radius:.5rem;font-size:.9375rem;font-weight:500;cursor:pointer;transition:all var(--transition-base)}.promote-cancel-button:hover:not(:disabled){background-color:var(--color-hover)}.promote-cancel-button:disabled{opacity:.6;cursor:not-allowed}.promote-confirm-button{flex:1;padding:var(--spacing-md) var(--spacing-xl);background-color:var(--color-main);color:#fff;border:none;border-radius:.5rem;font-size:.9375rem;font-weight:500;cursor:pointer;transition:all var(--transition-base);display:flex;align-items:center;justify-content:center;gap:var(--spacing-sm);box-shadow:0 .125rem .5rem rgba(var(--color-main-rgb, 0, 123, 255),.3)}.promote-confirm-button:hover:not(:disabled){background-color:var(--color-main-dark, #0056b3);transform:translateY(-1px);box-shadow:0 .25rem .75rem rgba(var(--color-main-rgb, 0, 123, 255),.4)}.promote-confirm-button:active:not(:disabled){transform:translateY(0)}.promote-confirm-button.demote{background-color:#c0392b;box-shadow:0 .125rem .5rem #c0392b4d}.promote-confirm-button.demote:hover:not(:disabled){background-color:#e74c3c;box-shadow:0 .25rem .75rem #c0392b66}.promote-confirm-button:disabled{opacity:.6;cursor:not-allowed;transform:none}.loading-spinner-small{width:1rem;height:1rem;border:.125rem solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}.role-button{display:flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-sm) var(--spacing-md);border:.0625rem solid var(--color-border);background-color:transparent;color:var(--color-text-primary);border-radius:.375rem;font-size:.875rem;font-weight:500;cursor:pointer;transition:all var(--transition-base)}.role-button:hover{background-color:var(--color-hover);border-color:var(--color-main);color:var(--color-main)}.role-button.promote-button{color:var(--color-main);border-color:var(--color-main)}.role-button.promote-button:hover{background-color:rgba(var(--color-main-rgb, 0, 123, 255),.1)}.role-button.demote-button{color:#c0392b;border-color:#c0392b}.role-button.demote-button:hover{background-color:#c0392b1a}.members-list-clean{display:flex;flex-direction:column}.member-row{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md) var(--spacing-lg);border-bottom:.0625rem solid var(--color-border);transition:background-color var(--transition-base);position:relative}.member-row:last-child{border-bottom:none}.member-row:hover{background-color:var(--color-hover)}.member-row-avatar{width:2.5rem;height:2.5rem;border-radius:50%;background:linear-gradient(135deg,var(--color-main),var(--color-main-dark, #0056b3));color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:1rem;flex-shrink:0;position:relative}.member-row-avatar.admin{background:linear-gradient(135deg,#ffc107,#ff9800)}.member-owner-badge{position:absolute;bottom:-.125rem;right:-.125rem;width:1rem;height:1rem;font-size:.75rem;display:flex;align-items:center;justify-content:center;background-color:var(--color-background);border-radius:50%;border:.125rem solid var(--color-background)}.member-row-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:.125rem}.member-row-name{font-weight:500;color:var(--color-text-primary);font-size:.9375rem;display:flex;align-items:center;gap:var(--spacing-sm);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.member-row-email{font-size:.8125rem;color:var(--color-text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.member-role-badge{font-size:.75rem;font-weight:500;padding:.125rem .5rem;border-radius:.75rem;white-space:nowrap}.member-role-badge.owner{background-color:#ffc10726;color:#ffc107}.member-role-badge.admin{background-color:rgba(var(--color-main-rgb, 0, 123, 255),.15);color:var(--color-main)}.member-row-actions{display:flex;align-items:center;gap:var(--spacing-xs);flex-shrink:0}.member-action-btn{width:2rem;height:2rem;border:none;background-color:transparent;color:var(--color-text-secondary);border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all var(--transition-base);padding:0}.member-action-btn:hover{background-color:var(--color-hover);color:var(--color-text-primary)}.member-action-btn.promote-btn:hover{color:var(--color-main);background-color:rgba(var(--color-main-rgb, 0, 123, 255),.1)}.member-action-btn.demote-btn:hover,.member-action-btn.remove-btn:hover{color:#c0392b;background-color:#c0392b1a}.members-list{display:flex;flex-direction:column;gap:var(--spacing-sm)}.member-item{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-md);background-color:var(--color-hover);border-radius:.5rem;transition:background-color var(--transition-base)}.member-item:hover{background-color:var(--color-active)}.member-info{display:flex;flex-direction:column;gap:var(--spacing-xs);flex:1}.member-name{font-weight:500;color:var(--color-text-primary)}.member-role{font-size:var(--font-size-sm);font-weight:500;padding:.125rem .5rem;border-radius:.25rem;display:inline-block;width:fit-content}.role-owner{background-color:#ffc10733;color:#ffc107}.role-admin{background-color:#3e4f7833;color:var(--color-main)}.role-member{background-color:#6c757d33;color:#6c757d}.member-actions{display:flex;align-items:center;gap:var(--spacing-sm)}.role-button{padding:var(--spacing-xs) var(--spacing-sm);border:.0625rem solid var(--color-border);background-color:transparent;color:var(--color-text-secondary);border-radius:.375rem;cursor:pointer;font-size:var(--font-size-xs);transition:background-color var(--transition-base),color var(--transition-base)}.role-button:hover{background-color:var(--color-hover);color:var(--color-text-primary)}.remove-button{width:2rem;height:2rem;border:none;background-color:transparent;color:var(--color-text-secondary);border-radius:.375rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background-color var(--transition-base),color var(--transition-base)}.remove-button:hover{background-color:#dc35451a;color:#dc3545}.loading-members{padding:var(--spacing-lg);text-align:center;color:var(--color-text-secondary)}.role-display{padding:var(--spacing-lg);background-color:var(--color-hover);border-radius:.5rem}.role-description{margin:var(--spacing-sm) 0 0 0;color:var(--color-text-secondary);font-size:var(--font-size-sm);line-height:1.5}.view-all-button{padding:var(--spacing-xs) var(--spacing-md);border:.0625rem solid var(--color-border);background-color:transparent;color:var(--color-text-secondary);border-radius:.375rem;cursor:pointer;font-size:var(--font-size-sm);transition:background-color var(--transition-base),color var(--transition-base)}.view-all-button:hover{background-color:var(--color-hover);color:var(--color-text-primary)}.loading-files{padding:var(--spacing-lg);text-align:center;color:var(--color-text-secondary);font-size:var(--font-size-sm)}.empty-section{padding:var(--spacing-lg);text-align:center;color:var(--color-text-secondary);font-size:var(--font-size-sm);font-style:italic}.files-list{display:flex;flex-direction:column;gap:var(--spacing-sm)}.file-item{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md);background-color:var(--color-hover);border-radius:.5rem;transition:background-color var(--transition-base)}.file-item:hover{background-color:var(--color-active)}.file-icon{width:2.5rem;height:2.5rem;display:flex;align-items:center;justify-content:center;background-color:var(--color-main);color:#fff;border-radius:.375rem;flex-shrink:0}.file-icon svg{width:1.25rem;height:1.25rem}.file-name{font-weight:500;color:var(--color-text-primary);margin-bottom:.25rem;word-break:break-word}.file-meta{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.files-preview{display:flex;flex-direction:column;gap:var(--spacing-xs)}.file-preview-item{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);background-color:var(--color-hover);border-radius:.375rem;font-size:var(--font-size-sm);color:var(--color-text-primary)}.file-preview-item svg{width:1rem;height:1rem;color:var(--color-text-secondary);flex-shrink:0}.file-preview-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-preview-more{padding:var(--spacing-sm) var(--spacing-md);color:var(--color-text-secondary);font-size:var(--font-size-sm);font-style:italic;text-align:center}.action-buttons-section{margin-top:var(--spacing-2xl);padding-top:var(--spacing-xl);border-top:.125rem solid var(--color-border);display:flex;flex-direction:column;gap:var(--spacing-md)}.action-button-group{display:flex;flex-direction:column}.action-button{display:flex;align-items:center;justify-content:center;gap:var(--spacing-sm);padding:var(--spacing-md) var(--spacing-lg);border:.0625rem solid var(--color-border);border-radius:.5rem;background-color:var(--color-background);color:var(--color-text-primary);font-size:var(--font-size-base);font-weight:500;cursor:pointer;transition:all var(--transition-base);width:100%}.action-button:hover:not(:disabled){background-color:var(--color-hover);transform:translateY(-.0625rem);box-shadow:0 .125rem .5rem #0000001a}.action-button:active:not(:disabled){transform:translateY(0)}.action-button:disabled{opacity:.6;cursor:not-allowed}.action-button svg{width:1.125rem;height:1.125rem;flex-shrink:0}.action-button.primary-button{background-color:var(--color-main);color:#fff;border-color:var(--color-main)}.action-button.primary-button:hover:not(:disabled){background-color:var(--color-main-dark, #3a4d78);border-color:var(--color-main-dark, #3a4d78)}.action-button.destructive-button{background-color:transparent;color:#dc3545;border-color:#dc3545}.action-button.destructive-button:hover:not(:disabled){background-color:#dc35451a;color:#c82333;border-color:#c82333}.action-button.notification-toggle{background-color:transparent;color:var(--color-text-primary)}.action-button.notification-toggle.muted{color:var(--color-text-secondary);opacity:.7}.action-button.notification-toggle:hover:not(:disabled){background-color:var(--color-hover)}.action-button.share-button{background-color:transparent;color:var(--color-main);border-color:var(--color-main)}.action-button.share-button:hover:not(:disabled){background-color:#3e4f781a}@media (max-width: 47.9375rem){.channel-management-modal{width:95%;max-height:90vh}.channel-management-header,.channel-management-content{padding:var(--spacing-lg)}}.channel-header-section{position:relative;display:flex;flex-direction:column;align-items:center;padding:var(--spacing-xl) var(--spacing-xl) var(--spacing-lg);gap:var(--spacing-md);text-align:center}.channel-header-avatar{width:5.5rem;height:5.5rem;border-radius:50%;background:linear-gradient(135deg,var(--color-main) 0%,var(--color-secondary) 100%);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:2.25rem;box-shadow:0 .25rem .75rem #00000026;border:.1875rem solid var(--color-background);flex-shrink:0}.channel-header-name{font-weight:700;font-size:1.5rem;color:var(--color-text-primary);margin-top:var(--spacing-xs)}.channel-header-members{display:flex;align-items:center;gap:var(--spacing-xs);color:var(--color-text-secondary);font-size:.875rem;margin-top:var(--spacing-xs)}.channel-header-members svg{flex-shrink:0}.channel-header-type-badge{display:inline-flex;align-items:center;gap:var(--spacing-xs);padding:.25rem .75rem;border-radius:1rem;font-size:.75rem;font-weight:600;margin-top:var(--spacing-xs)}.channel-header-type-badge.channel-type-private{background-color:#ff98001a;color:#ff9800}.channel-header-type-badge.channel-type-public{background-color:#4caf501a;color:#4caf50}.channel-header-type-badge svg{flex-shrink:0}.channel-header-handle,.channel-header-invite{color:var(--color-text-secondary);font-size:.875rem;margin-top:var(--spacing-xs)}.channel-header-separator{width:100%;height:.0625rem;background-color:var(--color-border);margin:var(--spacing-md) 0}.channel-bio-section{padding:0 var(--spacing-xl) var(--spacing-lg)}.channel-bio-content{position:relative}.channel-bio-text{color:var(--color-text-primary);font-size:.9375rem;line-height:1.5;margin:0;white-space:pre-wrap;word-wrap:break-word}.channel-bio-empty{color:var(--color-text-secondary);font-style:italic;font-size:.9375rem;margin:0}.bio-edit-button{margin-top:var(--spacing-sm);display:inline-flex;align-items:center;gap:var(--spacing-xs);padding:.375rem .75rem;background-color:transparent;border:.0625rem solid var(--color-border);border-radius:.375rem;color:var(--color-text-secondary);font-size:.875rem;cursor:pointer;transition:all var(--transition-base)}.bio-edit-button:hover{background-color:var(--color-hover);color:var(--color-text-primary);border-color:var(--color-main)}.bio-edit-button svg{flex-shrink:0}.channel-notification-section{padding:var(--spacing-md) var(--spacing-xl);border-bottom:.0625rem solid var(--color-border)}.notification-toggle-container{display:flex;align-items:center;gap:var(--spacing-md)}.notification-icon{flex-shrink:0;color:var(--color-text-secondary);transition:color var(--transition-base)}.notification-icon.muted{color:var(--color-text-tertiary);opacity:.6}.notification-label{flex:1;color:var(--color-text-primary);font-size:.9375rem;font-weight:500}.toggle-switch{position:relative;display:inline-block;width:2.75rem;height:1.5rem;flex-shrink:0}.toggle-switch input{opacity:0;width:0;height:0}.toggle-slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:var(--color-border);transition:var(--transition-base);border-radius:1.5rem}.toggle-slider:before{position:absolute;content:"";height:1.125rem;width:1.125rem;left:.1875rem;bottom:.1875rem;background-color:#fff;transition:var(--transition-base);border-radius:50%}.toggle-switch input:checked+.toggle-slider{background-color:var(--color-main)}.toggle-switch input:checked+.toggle-slider:before{transform:translate(1.25rem)}.channel-content-tabs{display:flex;flex-direction:column;flex:1;min-height:0}.tabs-header{display:flex;gap:0;border-bottom:.0625rem solid var(--color-border);background-color:var(--color-background);overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:var(--color-border) transparent;touch-action:pan-x;scroll-behavior:smooth;flex-shrink:0}.tabs-header::-webkit-scrollbar{height:4px}.tabs-header::-webkit-scrollbar-track{background:transparent}.tabs-header::-webkit-scrollbar-thumb{background-color:var(--color-border);border-radius:2px}.tabs-header::-webkit-scrollbar-thumb:hover{background-color:var(--color-text-secondary)}.tab-button{padding:var(--spacing-md) var(--spacing-lg);background-color:transparent;border:none;border-bottom:.125rem solid transparent;color:var(--color-text-secondary);font-size:.9375rem;font-weight:500;cursor:pointer;transition:all var(--transition-base);white-space:nowrap;flex-shrink:0;min-width:fit-content;min-height:44px}.tab-button:hover{color:var(--color-text-primary);background-color:var(--color-hover)}.tab-button:active{background-color:var(--color-hover);transform:scale(.98)}.tab-button.active{color:var(--color-main);border-bottom-color:var(--color-main);background-color:transparent;font-weight:600;position:relative;z-index:1}@media (max-width: 768px){.tabs-header{padding:0 var(--spacing-sm)}.tab-button{padding:var(--spacing-md) var(--spacing-md);font-size:.875rem;min-height:48px}}@media (max-width: 480px){.tab-button{padding:var(--spacing-sm) var(--spacing-md);font-size:.8125rem}}.tabs-content{flex:1;overflow-y:auto;padding:var(--spacing-lg) var(--spacing-xl);min-height:0}.tab-panel{display:flex;flex-direction:column;gap:var(--spacing-md)}.tab-panel-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--spacing-md)}.tab-panel-header h4{margin:0;font-size:1.125rem;font-weight:600;color:var(--color-text-primary)}.media-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:var(--spacing-sm)}.media-item{aspect-ratio:1;border-radius:.5rem;overflow:hidden;cursor:pointer;transition:transform var(--transition-base)}.media-item:hover{transform:scale(1.05)}.media-thumbnail{width:100%;height:100%;object-fit:cover}.settings-section{margin-bottom:var(--spacing-xl);padding-bottom:var(--spacing-xl);border-bottom:.0625rem solid var(--color-border)}.settings-section:last-child{border-bottom:none}.settings-section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--spacing-md)}.settings-label{font-size:.9375rem;font-weight:600;color:var(--color-text-primary);margin-bottom:var(--spacing-sm);display:block}.settings-actions{display:flex;flex-direction:column;gap:var(--spacing-md);margin-top:var(--spacing-xl);padding-top:var(--spacing-xl);border-top:.0625rem solid var(--color-border)}.channel-header-menu{position:absolute;top:var(--spacing-md);right:var(--spacing-md);z-index:10}.channel-menu-button{width:2.5rem;height:2.5rem;border:none;background-color:transparent;border-radius:50%;cursor:pointer;color:var(--color-text-secondary);display:flex;align-items:center;justify-content:center;transition:all var(--transition-base)}.channel-menu-button:hover{background-color:var(--color-hover);color:var(--color-text-primary)}.channel-menu-dropdown{position:absolute;top:100%;right:0;margin-top:var(--spacing-xs);background-color:var(--color-background);border:.0625rem solid var(--color-border);border-radius:.5rem;box-shadow:0 .25rem .75rem #00000026;min-width:12rem;z-index:100;overflow:hidden}.channel-menu-item{width:100%;padding:var(--spacing-md) var(--spacing-lg);border:none;background-color:transparent;text-align:left;color:var(--color-text-primary);font-size:.9375rem;cursor:pointer;display:flex;align-items:center;gap:var(--spacing-md);transition:background-color var(--transition-base)}.channel-menu-item:hover{background-color:var(--color-hover)}.channel-menu-item svg{flex-shrink:0;color:var(--color-text-secondary)}.channel-menu-item:hover svg{color:var(--color-text-primary)}.channel-menu-item-danger{color:#c0392b;border-top:.0625rem solid var(--color-border);margin-top:var(--spacing-xs);padding-top:var(--spacing-md)}.channel-menu-item-danger:hover{background-color:#c0392b1a;color:#a93226}.channel-menu-item-danger svg{color:#c0392b}.channel-menu-item-danger:hover svg{color:#a93226}.channel-menu-item:disabled,.channel-menu-item-danger:disabled{opacity:.5;cursor:not-allowed}.channel-menu-item:disabled:hover,.channel-menu-item-danger:disabled:hover{background-color:transparent}.owner-leave-dialog{background-color:var(--color-background);border-radius:.75rem;width:90%;max-width:28rem;max-height:90vh;overflow-y:auto;box-shadow:0 1.25rem 3.125rem #0000004d;animation:modal-slide-up .25s cubic-bezier(.4,0,.2,1)}@keyframes modal-slide-up{0%{opacity:0;transform:translateY(1.5rem)}to{opacity:1;transform:translateY(0)}}.owner-leave-dialog-header{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-xl);border-bottom:.0625rem solid var(--color-border)}.owner-leave-dialog-header h3{margin:0;font-size:1.25rem;font-weight:600;color:var(--color-text-primary)}.owner-leave-dialog-content{padding:var(--spacing-xl)}.owner-leave-warning{color:var(--color-text-primary);margin-bottom:var(--spacing-lg);line-height:1.5}.owner-leave-options{display:flex;flex-direction:column;gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}.owner-leave-option{padding:var(--spacing-lg);border:.125rem solid var(--color-border);border-radius:.5rem;background-color:var(--color-background);cursor:pointer;transition:all var(--transition-base);text-align:left}.owner-leave-option:hover{border-color:var(--color-main);background-color:var(--color-hover)}.owner-leave-option.selected{border-color:var(--color-main);background-color:rgba(var(--color-main-rgb, 0, 123, 255),.1)}.owner-leave-option-header{display:flex;align-items:center;gap:var(--spacing-md);margin-bottom:var(--spacing-sm)}.owner-leave-option-header svg{color:var(--color-text-secondary);flex-shrink:0}.owner-leave-option.selected .owner-leave-option-header svg{color:var(--color-main)}.owner-leave-option-title{font-weight:600;font-size:1rem;color:var(--color-text-primary)}.owner-leave-option-description{margin:0;font-size:.875rem;color:var(--color-text-secondary);line-height:1.4}.owner-leave-transfer-section{margin-top:var(--spacing-lg);padding:var(--spacing-lg);background-color:var(--color-hover);border-radius:.5rem}.owner-leave-transfer-label{display:block;font-weight:500;color:var(--color-text-primary);margin-bottom:var(--spacing-sm);font-size:.9375rem}.owner-leave-transfer-select{width:100%;padding:var(--spacing-md);border:.0625rem solid var(--color-border);border-radius:.375rem;background-color:var(--color-background);color:var(--color-text-primary);font-size:.9375rem}.owner-leave-no-admins{margin-top:var(--spacing-sm);color:#c0392b;font-size:.875rem;font-style:italic}.owner-leave-dialog-actions{display:flex;gap:var(--spacing-md);justify-content:flex-end;margin-top:var(--spacing-lg);padding-top:var(--spacing-lg);border-top:.0625rem solid var(--color-border)}.owner-leave-cancel-button{padding:var(--spacing-md) var(--spacing-lg);border:.0625rem solid var(--color-border);border-radius:.375rem;background-color:transparent;color:var(--color-text-primary);font-size:.9375rem;font-weight:500;cursor:pointer;transition:all var(--transition-base)}.owner-leave-cancel-button:hover{background-color:var(--color-hover)}.owner-leave-confirm-button{padding:var(--spacing-md) var(--spacing-lg);border:none;border-radius:.375rem;background-color:var(--color-main);color:#fff;font-size:.9375rem;font-weight:500;cursor:pointer;transition:all var(--transition-base)}.owner-leave-confirm-button:hover:not(:disabled){background-color:var(--color-main-dark, #0056b3);transform:translateY(-1px)}.owner-leave-confirm-button:disabled{opacity:.5;cursor:not-allowed}.channel-search-section{padding:var(--spacing-md) var(--spacing-xl);border-bottom:.0625rem solid var(--color-border)}.channel-search-header{display:flex;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-md)}.channel-search-back{width:2rem;height:2rem;border:none;background-color:transparent;border-radius:.375rem;cursor:pointer;color:var(--color-text-secondary);display:flex;align-items:center;justify-content:center;transition:all var(--transition-base);flex-shrink:0}.channel-search-back:hover{background-color:var(--color-hover);color:var(--color-text-primary)}.channel-search-input{flex:1;padding:var(--spacing-sm) var(--spacing-md);border:.0625rem solid var(--color-border);border-radius:.5rem;background-color:var(--color-background);color:var(--color-text-primary);font-size:.9375rem}.channel-search-input:focus{outline:none;border-color:var(--color-main)}.channel-search-clear{width:2rem;height:2rem;border:none;background-color:transparent;border-radius:.375rem;cursor:pointer;color:var(--color-text-secondary);display:flex;align-items:center;justify-content:center;transition:all var(--transition-base);flex-shrink:0}.channel-search-clear:hover{background-color:var(--color-hover);color:var(--color-text-primary)}.channel-search-loading{padding:var(--spacing-lg);text-align:center;color:var(--color-text-secondary);font-size:.875rem}.channel-search-results{max-height:20rem;overflow-y:auto}.channel-search-empty{padding:var(--spacing-xl);text-align:center;color:var(--color-text-secondary);font-size:.875rem}.channel-search-group{margin-bottom:var(--spacing-lg)}.channel-search-group-title{padding:var(--spacing-sm) var(--spacing-md);font-size:.75rem;font-weight:600;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.05em}.channel-search-item{padding:var(--spacing-md);border-bottom:.0625rem solid var(--color-border);cursor:pointer;transition:background-color var(--transition-base)}.channel-search-item:hover{background-color:var(--color-hover)}.channel-search-item:last-child{border-bottom:none}.channel-search-item-content{color:var(--color-text-primary);font-size:.9375rem;margin-bottom:var(--spacing-xs);display:flex;align-items:center;gap:var(--spacing-xs);word-break:break-word}.channel-search-item-content svg{flex-shrink:0;color:var(--color-text-secondary)}.channel-search-item-meta{color:var(--color-text-secondary);font-size:.75rem}.right-panel{width:var(--right-panel-width);background-color:var(--color-background);border-left:.0625rem solid var(--color-border);display:flex;flex-direction:column;height:100vh;position:relative;z-index:var(--z-right-panel);transition:transform var(--transition-slow),opacity var(--transition-slow)}@media (max-width: 47.9375rem){.right-panel{position:fixed;right:0;top:0;width:100%;max-width:100vw;transform:translate(100%);z-index:var(--z-right-panel);box-shadow:-.125rem 0 .5rem #0000001a;will-change:transform}.right-panel.open{transform:translate(0)}}@media (min-width: 48rem) and (max-width: 63.9375rem){.right-panel{position:fixed;right:0;top:0;width:min(70%,var(--right-panel-width));max-width:25rem;min-width:18rem;transform:translate(100%);z-index:var(--z-right-panel);box-shadow:-.125rem 0 .5rem #0000001a;will-change:transform}.right-panel.open{transform:translate(0)}}@media (min-width: 64rem){.right-panel{position:relative;width:var(--right-panel-width);transform:translate(0);box-shadow:none}}.right-panel-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--color-border)}.right-panel-header h3{font-size:16px;font-weight:600;color:var(--color-text-primary);margin:0}.close-button{width:32px;height:32px;border:none;background-color:transparent;border-radius:6px;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--color-text-secondary);transition:background-color var(--transition-base),color var(--transition-base),transform var(--transition-base),box-shadow var(--transition-slow)}.close-button:hover{background-color:var(--color-hover);color:var(--color-text-primary);transform:scale(var(--hover-scale));box-shadow:0 2px 8px #0000001a}.close-button:active{transform:scale(.95);transition:transform .1s cubic-bezier(.4,0,.2,1)}.right-panel-content{flex:1;overflow-y:auto;overflow-x:hidden;padding:var(--spacing-lg);scrollbar-width:none;-ms-overflow-style:none}.right-panel-content::-webkit-scrollbar{display:none}.loading,.empty{text-align:center;color:var(--color-text-secondary);padding:40px 20px;font-size:14px}.files-list{display:flex;flex-direction:column;gap:8px}.file-item{display:flex;align-items:center;gap:12px;padding:12px;border-radius:8px;border:1px solid var(--color-border);transition:background-color var(--transition-base),border-color var(--transition-base),transform var(--transition-base),box-shadow var(--transition-slow);cursor:pointer}.file-item:hover{background-color:var(--color-hover);border-color:var(--color-main);transform:translate(4px);box-shadow:0 2px 8px #3e4f7826}.file-icon{flex-shrink:0;color:var(--color-main)}.file-info{flex:1;min-width:0}.file-name{font-weight:500;font-size:14px;color:var(--color-text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-bottom:4px}.file-meta{font-size:12px;color:var(--color-text-secondary)}.search-form{display:flex;gap:8px;margin-bottom:16px}.search-input{flex:1;padding:10px 14px;border:1px solid var(--color-border);border-radius:8px;font-family:inherit;font-size:14px;transition:border-color var(--transition-base),box-shadow var(--transition-base),transform var(--transition-base);background-color:var(--color-background)}.search-input.input-focus-animation:focus{animation:input-focus .3s cubic-bezier(.4,0,.2,1);border-color:var(--color-main);outline:none;transform:scale(1.01)}.search-button{padding:10px 20px;background-color:var(--color-main);color:#fff;border:none;border-radius:8px;font-family:inherit;font-size:14px;font-weight:500;cursor:pointer;transition:background-color var(--transition-base),transform var(--transition-base),box-shadow var(--transition-slow);white-space:nowrap;position:relative;overflow:hidden}.search-button:hover:not(:disabled){background-color:#2d3d5f;transform:translateY(-1px);box-shadow:0 4px 12px #3e4f784d}.search-button:active:not(:disabled){transform:translateY(0);transition:transform .1s cubic-bezier(.4,0,.2,1)}.search-button:disabled{opacity:.6;cursor:not-allowed}.search-results{display:flex;flex-direction:column;gap:24px}.results-section h4{font-size:14px;font-weight:600;color:var(--color-text-primary);margin-bottom:12px;text-transform:uppercase;letter-spacing:.5px;font-size:12px}.result-item{padding:12px;border-radius:8px;border:1px solid var(--color-border);margin-bottom:8px;transition:background-color var(--transition-base),border-color var(--transition-base),transform var(--transition-base),box-shadow var(--transition-slow);cursor:pointer;position:relative;overflow:hidden}.result-item:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:#3e4f781a;transform:translate(-50%,-50%);transition:width .3s,height .3s}.result-item:hover:before{width:300px;height:300px}.result-item:hover{background-color:var(--color-hover);border-color:var(--color-main);transform:translate(4px);box-shadow:0 2px 8px #3e4f7826}.result-content{font-size:14px;color:var(--color-text-primary);margin-bottom:6px;line-height:1.5}.result-meta{font-size:12px;color:var(--color-text-secondary)}.chat-layout{display:flex;height:100vh;width:100vw;max-width:100vw;overflow:hidden;background-color:var(--color-background);position:fixed;top:0;left:0;right:0;bottom:0}.sidebar-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background-color:#0000;z-index:var(--z-backdrop);display:none;opacity:0;transition:opacity var(--transition-slow),background-color var(--transition-slow);pointer-events:none}.sidebar-backdrop.active{background-color:#00000080;opacity:1;pointer-events:all}@media (max-width: 47.9375rem){.sidebar-backdrop{display:block}}.right-panel-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background-color:#0000;z-index:var(--z-backdrop);display:none;opacity:0;transition:opacity var(--transition-slow),background-color var(--transition-slow);pointer-events:none}.right-panel-backdrop.active{background-color:#00000080;opacity:1;pointer-events:all}@media (max-width: 63.9375rem){.right-panel-backdrop{display:block}}@media (max-width: 47.9375rem){.chat-layout{display:flex;flex-direction:column}}@media (min-width: 48rem) and (max-width: 63.9375rem){.chat-layout{display:grid;grid-template-columns:var(--sidebar-width-tablet) 1fr;transition:grid-template-columns var(--transition-slow);gap:0}.chat-layout.sidebar-collapsed{grid-template-columns:var(--sidebar-width-collapsed) 1fr}}@media (min-width: 64rem){.chat-layout{display:grid;grid-template-columns:var(--sidebar-width) 1fr var(--right-panel-width);gap:0;transition:grid-template-columns var(--transition-slow)}.sidebar{position:relative;width:var(--sidebar-width);transform:translate(0);z-index:var(--z-base)}.right-panel{position:relative;width:var(--right-panel-width);transform:translate(0);z-index:var(--z-base);box-shadow:none}.sidebar-backdrop,.right-panel-backdrop{display:none!important}}@property --tw-animation-delay{syntax:"*";inherits:false;initial-value:0s}@property --tw-animation-direction{syntax:"*";inherits:false;initial-value:normal}@property --tw-animation-duration{syntax:"*";inherits:false}@property --tw-animation-fill-mode{syntax:"*";inherits:false;initial-value:none}@property --tw-animation-iteration-count{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-blur{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-opacity{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-rotate{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-scale{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-blur{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-opacity{syntax:"*";inherits:false;initial-value:1}@property --tw-exit-rotate{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-scale{syntax:"*";inherits:false;initial-value:1}@property --tw-exit-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-translate-y{syntax:"*";inherits:false;initial-value:0}@theme inline{--animation-delay-0: 0s; --animation-delay-75: 75ms; --animation-delay-100: .1s; --animation-delay-150: .15s; --animation-delay-200: .2s; --animation-delay-300: .3s; --animation-delay-500: .5s; --animation-delay-700: .7s; --animation-delay-1000: 1s; --animation-repeat-0: 0; --animation-repeat-1: 1; --animation-repeat-infinite: infinite; --animation-direction-normal: normal; --animation-direction-reverse: reverse; --animation-direction-alternate: alternate; --animation-direction-alternate-reverse: alternate-reverse; --animation-fill-mode-none: none; --animation-fill-mode-forwards: forwards; --animation-fill-mode-backwards: backwards; --animation-fill-mode-both: both; --percentage-0: 0; --percentage-5: .05; --percentage-10: .1; --percentage-15: .15; --percentage-20: .2; --percentage-25: .25; --percentage-30: .3; --percentage-35: .35; --percentage-40: .4; --percentage-45: .45; --percentage-50: .5; --percentage-55: .55; --percentage-60: .6; --percentage-65: .65; --percentage-70: .7; --percentage-75: .75; --percentage-80: .8; --percentage-85: .85; --percentage-90: .9; --percentage-95: .95; --percentage-100: 1; --percentage-translate-full: 1; --animate-in: enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none); --animate-out: exit var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none); @keyframes enter { from { opacity: var(--tw-enter-opacity,1); transform: translate3d(var(--tw-enter-translate-x,0),var(--tw-enter-translate-y,0),0)scale3d(var(--tw-enter-scale,1),var(--tw-enter-scale,1),var(--tw-enter-scale,1))rotate(var(--tw-enter-rotate,0)); filter: blur(var(--tw-enter-blur,0)); }}@keyframes exit { to { opacity: var(--tw-exit-opacity,1); transform: translate3d(var(--tw-exit-translate-x,0),var(--tw-exit-translate-y,0),0)scale3d(var(--tw-exit-scale,1),var(--tw-exit-scale,1),var(--tw-exit-scale,1))rotate(var(--tw-exit-rotate,0)); filter: blur(var(--tw-exit-blur,0)); }}--animate-accordion-down: accordion-down var(--tw-animation-duration,var(--tw-duration,.2s))var(--tw-ease,ease-out)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none); --animate-accordion-up: accordion-up var(--tw-animation-duration,var(--tw-duration,.2s))var(--tw-ease,ease-out)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none); --animate-collapsible-down: collapsible-down var(--tw-animation-duration,var(--tw-duration,.2s))var(--tw-ease,ease-out)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none); --animate-collapsible-up: collapsible-up var(--tw-animation-duration,var(--tw-duration,.2s))var(--tw-ease,ease-out)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none); @keyframes accordion-down { from { height: 0; }to { height: var(--radix-accordion-content-height,var(--bits-accordion-content-height,var(--reka-accordion-content-height,var(--kb-accordion-content-height,var(--ngp-accordion-content-height,auto))))); }}@keyframes accordion-up { from { height: var(--radix-accordion-content-height,var(--bits-accordion-content-height,var(--reka-accordion-content-height,var(--kb-accordion-content-height,var(--ngp-accordion-content-height,auto))))); }to { height: 0; }}@keyframes collapsible-down { from { height: 0; }to { height: var(--radix-collapsible-content-height,var(--bits-collapsible-content-height,var(--reka-collapsible-content-height,var(--kb-collapsible-content-height,auto)))); }}@keyframes collapsible-up { from { height: var(--radix-collapsible-content-height,var(--bits-collapsible-content-height,var(--reka-collapsible-content-height,var(--kb-collapsible-content-height,auto)))); }to { height: 0; }}--animate-caret-blink: caret-blink 1.25s ease-out infinite; @keyframes caret-blink { 0%,70%,100% { opacity: 1; }20%,50% { opacity: 0; }}}@utility animation-duration-*{--tw-animation-duration: calc(--value(number)*1ms) ; --tw-animation-duration: --value(--animation-duration-*,[duration],"initial",[*]); animation-duration: calc(--value(number)*1ms) ; animation-duration: --value(--animation-duration-*,[duration],"initial",[*]);}@utility delay-*{animation-delay: calc(--value(number)*1ms) ; animation-delay: --value(--animation-delay-*,[duration],"initial",[*]); --tw-animation-delay: calc(--value(number)*1ms) ; --tw-animation-delay: --value(--animation-delay-*,[duration],"initial",[*]);}@utility repeat-*{animation-iteration-count: --value(--animation-repeat-*,number,"initial",[*]); --tw-animation-iteration-count: --value(--animation-repeat-*,number,"initial",[*]);}@utility direction-*{animation-direction: --value(--animation-direction-*,"initial",[*]); --tw-animation-direction: --value(--animation-direction-*,"initial",[*]);}@utility fill-mode-*{animation-fill-mode: --value(--animation-fill-mode-*,"initial",[*]); --tw-animation-fill-mode: --value(--animation-fill-mode-*,"initial",[*]);}@utility running{animation-play-state: running;}@utility paused{animation-play-state: paused;}@utility play-state-*{animation-play-state: --value("initial",[*]);}@utility blur-in{--tw-enter-blur: 20px;}@utility blur-in-*{--tw-enter-blur: calc(--value(number)*1px) ; --tw-enter-blur: --value(--blur-*,[*]);}@utility blur-out{--tw-exit-blur: 20px;}@utility blur-out-*{--tw-exit-blur: calc(--value(number)*1px) ; --tw-exit-blur: --value(--blur-*,[*]);}@utility fade-in{--tw-enter-opacity: 0;}@utility fade-in-*{--tw-enter-opacity: calc(--value(number)*.01) ; --tw-enter-opacity: --value(--percentage-*,[*]);}@utility fade-out{--tw-exit-opacity: 0;}@utility fade-out-*{--tw-exit-opacity: calc(--value(number)*.01) ; --tw-exit-opacity: --value(--percentage-*,[*]);}@utility zoom-in{--tw-enter-scale: 0;}@utility zoom-in-*{--tw-enter-scale: calc(--value(number)*1%) ; --tw-enter-scale: --value(ratio) ; --tw-enter-scale: --value(--percentage-*,[*]);}@utility -zoom-in-*{--tw-enter-scale: calc(--value(number)*-1%) ; --tw-enter-scale: calc(--value(ratio)*-1) ; --tw-enter-scale: --value(--percentage-*,[*]);}@utility zoom-out{--tw-exit-scale: 0;}@utility zoom-out-*{--tw-exit-scale: calc(--value(number)*1%) ; --tw-exit-scale: --value(ratio) ; --tw-exit-scale: --value(--percentage-*,[*]);}@utility -zoom-out-*{--tw-exit-scale: calc(--value(number)*-1%) ; --tw-exit-scale: calc(--value(ratio)*-1) ; --tw-exit-scale: --value(--percentage-*,[*]);}@utility spin-in{--tw-enter-rotate: 30deg;}@utility spin-in-*{--tw-enter-rotate: calc(--value(number)*1deg) ; --tw-enter-rotate: calc(--value(ratio)*360deg) ; --tw-enter-rotate: --value(--rotate-*,[*]);}@utility -spin-in{--tw-enter-rotate: -30deg;}@utility -spin-in-*{--tw-enter-rotate: calc(--value(number)*-1deg) ; --tw-enter-rotate: calc(--value(ratio)*-360deg) ; --tw-enter-rotate: --value(--rotate-*,[*]);}@utility spin-out{--tw-exit-rotate: 30deg;}@utility spin-out-*{--tw-exit-rotate: calc(--value(number)*1deg) ; --tw-exit-rotate: calc(--value(ratio)*360deg) ; --tw-exit-rotate: --value(--rotate-*,[*]);}@utility -spin-out{--tw-exit-rotate: -30deg;}@utility -spin-out-*{--tw-exit-rotate: calc(--value(number)*-1deg) ; --tw-exit-rotate: calc(--value(ratio)*-360deg) ; --tw-exit-rotate: --value(--rotate-*,[*]);}@utility slide-in-from-top{--tw-enter-translate-y: -100%;}@utility slide-in-from-top-*{--tw-enter-translate-y: calc(--value(integer)*var(--spacing)*-1); --tw-enter-translate-y: calc(--value(--percentage-*,--percentage-translate-*)*-100%) ; --tw-enter-translate-y: calc(--value(ratio)*-100%) ; --tw-enter-translate-y: calc(--value(--translate-*,[percentage],[length])*-1) ;}@utility slide-in-from-bottom{--tw-enter-translate-y: 100%;}@utility slide-in-from-bottom-*{--tw-enter-translate-y: calc(--value(integer)*var(--spacing)); --tw-enter-translate-y: calc(--value(--percentage-*,--percentage-translate-*)*100%) ; --tw-enter-translate-y: calc(--value(ratio)*100%) ; --tw-enter-translate-y: --value(--translate-*,[percentage],[length]);}@utility slide-in-from-left{--tw-enter-translate-x: -100%;}@utility slide-in-from-left-*{--tw-enter-translate-x: calc(--value(integer)*var(--spacing)*-1); --tw-enter-translate-x: calc(--value(--percentage-*,--percentage-translate-*)*-100%) ; --tw-enter-translate-x: calc(--value(ratio)*-100%) ; --tw-enter-translate-x: calc(--value(--translate-*,[percentage],[length])*-1) ;}@utility slide-in-from-right{--tw-enter-translate-x: 100%;}@utility slide-in-from-right-*{--tw-enter-translate-x: calc(--value(integer)*var(--spacing)); --tw-enter-translate-x: calc(--value(--percentage-*,--percentage-translate-*)*100%) ; --tw-enter-translate-x: calc(--value(ratio)*100%) ; --tw-enter-translate-x: --value(--translate-*,[percentage],[length]);}@utility slide-in-from-start{&:dir(ltr){ --tw-enter-translate-x: -100%; }&:dir(rtl){ --tw-enter-translate-x: 100%; }}@utility slide-in-from-start-*{&:where(:dir(ltr),[dir="ltr"],[dir="ltr"]*){ --tw-enter-translate-x: calc(--value(integer)*var(--spacing)*-1); --tw-enter-translate-x: calc(--value(--percentage-*,--percentage-translate-*)*-100%) ; --tw-enter-translate-x: calc(--value(ratio)*-100%) ; --tw-enter-translate-x: calc(--value(--translate-*,[percentage],[length])*-1) ; }&:where(:dir(rtl),[dir="rtl"],[dir="rtl"]*){ --tw-enter-translate-x: calc(--value(integer)*var(--spacing)); --tw-enter-translate-x: calc(--value(--percentage-*,--percentage-translate-*)*100%) ; --tw-enter-translate-x: calc(--value(ratio)*100%) ; --tw-enter-translate-x: --value(--translate-*,[percentage],[length]); }}@utility slide-in-from-end{&:dir(ltr){ --tw-enter-translate-x: 100%; }&:dir(rtl){ --tw-enter-translate-x: -100%; }}@utility slide-in-from-end-*{&:where(:dir(ltr),[dir="ltr"],[dir="ltr"]*){ --tw-enter-translate-x: calc(--value(integer)*var(--spacing)); --tw-enter-translate-x: calc(--value(--percentage-*,--percentage-translate-*)*100%) ; --tw-enter-translate-x: calc(--value(ratio)*100%) ; --tw-enter-translate-x: --value(--translate-*,[percentage],[length]); }&:where(:dir(rtl),[dir="rtl"],[dir="rtl"]*){ --tw-enter-translate-x: calc(--value(integer)*var(--spacing)*-1); --tw-enter-translate-x: calc(--value(--percentage-*,--percentage-translate-*)*-100%) ; --tw-enter-translate-x: calc(--value(ratio)*-100%) ; --tw-enter-translate-x: calc(--value(--translate-*,[percentage],[length])*-1) ; }}@utility slide-out-to-top{--tw-exit-translate-y: -100%;}@utility slide-out-to-top-*{--tw-exit-translate-y: calc(--value(integer)*var(--spacing)*-1); --tw-exit-translate-y: calc(--value(--percentage-*,--percentage-translate-*)*-100%) ; --tw-exit-translate-y: calc(--value(ratio)*-100%) ; --tw-exit-translate-y: calc(--value(--translate-*,[percentage],[length])*-1) ;}@utility slide-out-to-bottom{--tw-exit-translate-y: 100%;}@utility slide-out-to-bottom-*{--tw-exit-translate-y: calc(--value(integer)*var(--spacing)); --tw-exit-translate-y: calc(--value(--percentage-*,--percentage-translate-*)*100%) ; --tw-exit-translate-y: calc(--value(ratio)*100%) ; --tw-exit-translate-y: --value(--translate-*,[percentage],[length]);}@utility slide-out-to-left{--tw-exit-translate-x: -100%;}@utility slide-out-to-left-*{--tw-exit-translate-x: calc(--value(integer)*var(--spacing)*-1); --tw-exit-translate-x: calc(--value(--percentage-*,--percentage-translate-*)*-100%) ; --tw-exit-translate-x: calc(--value(ratio)*-100%) ; --tw-exit-translate-x: calc(--value(--translate-*,[percentage],[length])*-1) ;}@utility slide-out-to-right{--tw-exit-translate-x: 100%;}@utility slide-out-to-right-*{--tw-exit-translate-x: calc(--value(integer)*var(--spacing)); --tw-exit-translate-x: calc(--value(--percentage-*,--percentage-translate-*)*100%) ; --tw-exit-translate-x: calc(--value(ratio)*100%) ; --tw-exit-translate-x: --value(--translate-*,[percentage],[length]);}@utility slide-out-to-start{&:dir(ltr){ --tw-exit-translate-x: -100%; }&:dir(rtl){ --tw-exit-translate-x: 100%; }}@utility slide-out-to-start-*{&:where(:dir(ltr),[dir="ltr"],[dir="ltr"]*){ --tw-exit-translate-x: calc(--value(integer)*var(--spacing)*-1); --tw-exit-translate-x: calc(--value(--percentage-*,--percentage-translate-*)*-100%) ; --tw-exit-translate-x: calc(--value(ratio)*-100%) ; --tw-exit-translate-x: calc(--value(--translate-*,[percentage],[length])*-1) ; }&:where(:dir(rtl),[dir="rtl"],[dir="rtl"]*){ --tw-exit-translate-x: calc(--value(integer)*var(--spacing)); --tw-exit-translate-x: calc(--value(--percentage-*,--percentage-translate-*)*100%) ; --tw-exit-translate-x: calc(--value(ratio)*100%) ; --tw-exit-translate-x: --value(--translate-*,[percentage],[length]); }}@utility slide-out-to-end{&:dir(ltr){ --tw-exit-translate-x: 100%; }&:dir(rtl){ --tw-exit-translate-x: -100%; }}@utility slide-out-to-end-*{&:where(:dir(ltr),[dir="ltr"],[dir="ltr"]*){ --tw-exit-translate-x: calc(--value(integer)*var(--spacing)); --tw-exit-translate-x: calc(--value(--percentage-*,--percentage-translate-*)*100%) ; --tw-exit-translate-x: calc(--value(ratio)*100%) ; --tw-exit-translate-x: --value(--translate-*,[percentage],[length]); }&:where(:dir(rtl),[dir="rtl"],[dir="rtl"]*){ --tw-exit-translate-x: calc(--value(integer)*var(--spacing)*-1); --tw-exit-translate-x: calc(--value(--percentage-*,--percentage-translate-*)*-100%) ; --tw-exit-translate-x: calc(--value(ratio)*-100%) ; --tw-exit-translate-x: calc(--value(--translate-*,[percentage],[length])*-1) ; }}@keyframes ripple{0%{transform:scale(0);opacity:1}to{transform:scale(4);opacity:0}}.button-ripple{position:relative;overflow:hidden}.button-ripple:after{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:#ffffff80;transform:translate(-50%,-50%);opacity:0}.button-ripple:active:after{animation:ripple .6s cubic-bezier(.4,0,.2,1);width:6.25rem;height:6.25rem}@keyframes focus-ring{0%{box-shadow:0 0 #3e4f7866}50%{box-shadow:0 0 0 .25rem #3e4f7833}to{box-shadow:0 0 #3e4f7800}}.focus-ring:focus-visible{outline:none;animation:focus-ring .3s cubic-bezier(.4,0,.2,1);box-shadow:0 0 0 .1875rem #3e4f784d}@keyframes modal-backdrop-enter{0%{opacity:0}to{opacity:1}}@keyframes modal-backdrop-exit{0%{opacity:1}to{opacity:0}}@keyframes modal-content-enter{0%{opacity:0;transform:scale(.95) translateY(-.625rem)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes modal-content-exit{0%{opacity:1;transform:scale(1) translateY(0)}to{opacity:0;transform:scale(.95) translateY(-.625rem)}}.modal-backdrop-enter{animation:modal-backdrop-enter .2s cubic-bezier(.4,0,.2,1)}.modal-backdrop-exit{animation:modal-backdrop-exit .15s cubic-bezier(.4,0,.2,1)}.modal-content-enter{animation:modal-content-enter .3s cubic-bezier(.4,0,.2,1)}.modal-content-exit{animation:modal-content-exit .2s cubic-bezier(.4,0,.2,1)}@keyframes dropdown-enter{0%{opacity:0;transform:scale(.95) translateY(-.5rem)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes dropdown-exit{0%{opacity:1;transform:scale(1) translateY(0)}to{opacity:0;transform:scale(.95) translateY(-.5rem)}}.dropdown-enter{animation:dropdown-enter .15s cubic-bezier(.4,0,.2,1)}.dropdown-exit{animation:dropdown-exit .1s cubic-bezier(.4,0,.2,1)}@keyframes toast-slide-in-right{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}@keyframes toast-slide-out-right{0%{transform:translate(0);opacity:1}to{transform:translate(100%);opacity:0}}.toast-enter{animation:toast-slide-in-right .3s cubic-bezier(.4,0,.2,1)}.toast-exit{animation:toast-slide-out-right .2s cubic-bezier(.4,0,.2,1)}@keyframes input-focus{0%{box-shadow:0 0 #3e4f7866}to{box-shadow:0 0 0 .1875rem #3e4f781a}}.input-focus-animation:focus{animation:input-focus .3s cubic-bezier(.4,0,.2,1);border-color:var(--color-main)}@keyframes spin-smooth{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes pulse-ring{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(1.1)}}.spinner-smooth{animation:spin-smooth 1s linear infinite}.spinner-pulse{animation:pulse-ring 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes list-item-enter{0%{opacity:0;transform:translate(-.625rem)}to{opacity:1;transform:translate(0)}}.list-item-enter{animation:list-item-enter .2s cubic-bezier(.4,0,.2,1)}.list-item-enter:nth-child(1){animation-delay:0ms}.list-item-enter:nth-child(2){animation-delay:50ms}.list-item-enter:nth-child(3){animation-delay:.1s}.list-item-enter:nth-child(4){animation-delay:.15s}.list-item-enter:nth-child(5){animation-delay:.2s}.list-item-enter:nth-child(n+6){animation-delay:.25s}@keyframes sidebar-slide-in{0%{transform:translate(-100%)}to{transform:translate(0)}}@keyframes sidebar-slide-out{0%{transform:translate(0)}to{transform:translate(-100%)}}.sidebar-enter{animation:sidebar-slide-in .3s cubic-bezier(.4,0,.2,1)}.sidebar-exit{animation:sidebar-slide-out .25s cubic-bezier(.4,0,.2,1)}@keyframes panel-slide-in-right{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes panel-slide-out-right{0%{transform:translate(0)}to{transform:translate(100%)}}.panel-enter{animation:panel-slide-in-right .3s cubic-bezier(.4,0,.2,1)}.panel-exit{animation:panel-slide-out-right .25s cubic-bezier(.4,0,.2,1)}@keyframes button-loading{0%,to{opacity:1}50%{opacity:.5}}.button-loading{position:relative;pointer-events:none}.button-loading:after{content:"";position:absolute;top:50%;left:50%;width:1rem;height:1rem;margin:-.5rem 0 0 -.5rem;border:.125rem solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin-smooth .8s linear infinite}@keyframes shimmer{0%{background-position:-62.5rem 0}to{background-position:62.5rem 0}}.shimmer{background:linear-gradient(to right,#f0f0f0,#e0e0e0,#f0f0f0 40%,#f0f0f0);background-size:62.5rem 100%;animation:shimmer 2s infinite}@keyframes bounce-subtle{0%,to{transform:translateY(0)}50%{transform:translateY(-.25rem)}}.bounce-subtle{animation:bounce-subtle .6s cubic-bezier(.4,0,.2,1)}@keyframes shake{0%,to{transform:translate(0)}10%,30%,50%,70%,90%{transform:translate(-.25rem)}20%,40%,60%,80%{transform:translate(.25rem)}}.shake{animation:shake .5s cubic-bezier(.4,0,.2,1)}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@font-face{font-family:Vazirmatn;src:url(/fonts/webfonts/Vazirmatn-Regular.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Vazirmatn;src:url(/fonts/webfonts/Vazirmatn-Medium.woff2) format("woff2");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Vazirmatn;src:url(/fonts/webfonts/Vazirmatn-SemiBold.woff2) format("woff2");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:Vazirmatn;src:url(/fonts/webfonts/Vazirmatn-Bold.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap}:root{--color-main: #3E4F78;--color-secondary: #42494E;--color-background: #FFFFFF;--color-text-primary: #42494E;--color-text-secondary: #6B7280;--color-border: #E5E7EB;--color-hover: #F3F4F6;--color-active: #EBEDF0;font-size:16px;--sidebar-width: 18.75rem;--sidebar-width-tablet: 16rem;--sidebar-width-collapsed: 4rem;--right-panel-width: 18rem;--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: .75rem;--spacing-lg: 1rem;--spacing-xl: 1.25rem;--spacing-2xl: 1.5rem;--font-size-xs: .6875rem;--font-size-sm: .75rem;--font-size-base: .875rem;--font-size-md: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--touch-target-min: 2.75rem;--transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--transition-base: .2s cubic-bezier(.4, 0, .2, 1);--transition-slow: .3s cubic-bezier(.4, 0, .2, 1);--animation-duration: .3s;--animation-timing: cubic-bezier(.4, 0, .2, 1);--hover-scale: 1.05;--hover-scale-large: 1.09;--z-backdrop: 999;--z-sidebar: 1000;--z-right-panel: 1001;--z-modal: 1002;--z-tooltip: 1003}@media (min-width: 48rem){:root{--sidebar-width: 16rem;--right-panel-width: 20rem;--spacing-xs: .375rem;--spacing-sm: .625rem;--spacing-md: .875rem;--spacing-lg: 1.125rem;--spacing-xl: 1.375rem;--spacing-2xl: 1.75rem;--font-size-xs: .75rem;--font-size-sm: .8125rem;--font-size-base: .875rem;--font-size-md: 1rem;--font-size-lg: 1.25rem;--font-size-xl: 1.375rem;--font-size-2xl: 1.625rem}}@media (min-width: 64rem){:root{--sidebar-width: 18.75rem;--right-panel-width: 22rem;--spacing-xs: .5rem;--spacing-sm: .75rem;--spacing-md: 1rem;--spacing-lg: 1.25rem;--spacing-xl: 1.5rem;--spacing-2xl: 2rem;--font-size-xs: .75rem;--font-size-sm: .8125rem;--font-size-base: .875rem;--font-size-md: .9375rem;--font-size-lg: 1.25rem;--font-size-xl: 1.5rem;--font-size-2xl: 1.75rem}}@media (min-width: 80rem){:root{--sidebar-width: 20rem;--right-panel-width: 24rem}}*{margin:0;padding:0;box-sizing:border-box}html{height:100%;overflow:hidden}body{font-family:Vazirmatn,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--color-background);color:var(--color-text-primary);line-height:1.6;height:100%;overflow:hidden;position:fixed;width:100%}#root{width:100%;height:100vh;overflow:hidden;position:fixed;top:0;left:0}*{scrollbar-width:none;-ms-overflow-style:none}*::-webkit-scrollbar{display:none}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}
