.composer-wrap{padding:0 var(--space-5) var(--space-5);border-top:1px solid var(--color-border);background:color-mix(in srgb, var(--color-bg) 92%, white);flex-direction:column;flex:none;display:flex}.composer{min-height:54px;margin-top:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-bg);box-shadow:var(--shadow-sm);align-items:flex-end;gap:4px;padding:6px 8px 6px 6px;transition:border-color .18s,box-shadow .18s,background .18s;display:flex}.composer:focus-within{border-color:var(--color-accent);box-shadow:var(--shadow-md)}.composer__context{align-items:center;gap:var(--space-2);margin:var(--space-3) 0 -2px;border:1px solid var(--color-border);border-left:3px solid var(--color-accent);border-radius:var(--radius-md);padding:7px var(--space-2);background:var(--color-bg-subtle);grid-template-columns:28px minmax(0,1fr) 30px;display:grid;overflow:hidden}.composer__upload{align-items:center;gap:var(--space-2);margin:var(--space-3) 0 -2px;border:1px solid var(--color-border);border-left:3px solid var(--color-accent);border-radius:var(--radius-md);padding:8px var(--space-2);background:var(--color-bg-subtle);grid-template-columns:16px minmax(0,1fr);display:grid;overflow:hidden}.composer__upload strong{color:var(--color-text);font-size:var(--text-sm);display:block}.composer__upload p{color:var(--color-text-muted);font-size:var(--text-xs);text-overflow:ellipsis;white-space:nowrap;margin:1px 0 0;overflow:hidden}.composer__upload-spinner{border:2px solid color-mix(in srgb, var(--color-accent) 24%, transparent);border-top-color:var(--color-accent);border-radius:999px;width:16px;height:16px;animation:.9s linear infinite composer-spin}.composer__context-icon{border-radius:var(--radius-sm);width:28px;height:28px;color:var(--color-accent);background:var(--color-accent-subtle);place-items:center;display:grid}.composer__context strong{color:var(--color-text);font-size:var(--text-sm);display:block}.composer__context p{color:var(--color-text-muted);font-size:var(--text-xs);text-overflow:ellipsis;white-space:nowrap;margin:1px 0 0;overflow:hidden}.composer__attach,.composer__emoji-wrap{flex:none;position:relative}.composer__tool,.composer__send,.composer__cancel{border-radius:var(--radius-md);width:38px;height:38px;color:var(--color-text-faint);cursor:pointer;background:0 0;border:0;flex:none;place-items:center;transition:background .12s,color .12s,transform .12s,opacity .12s;display:grid}.composer__tool:hover,.composer__tool.is-active,.composer__cancel:hover{color:var(--color-text-strong);background:var(--color-bg-subtle)}.composer__tool:disabled,.composer__send:disabled{cursor:default;opacity:.42}.composer__input{resize:none;min-width:0;min-height:38px;max-height:160px;color:var(--color-text);font:inherit;background:0 0;border:0;outline:none;flex:1;padding:9px 4px;line-height:1.4;overflow-y:auto}.composer__input::placeholder{color:var(--color-text-faint)}.composer__send{width:36px;height:36px;color:var(--color-text-onAccent);background:var(--color-accent);margin-bottom:1px}.composer__send:hover{background:color-mix(in srgb, var(--color-accent) 88%, black)}.composer__mic:hover{color:var(--color-accent)}.composer .composer__cancel{width:30px;height:30px}.attach-menu{z-index:50;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg);min-width:210px;box-shadow:var(--shadow-md);transform-origin:0 100%;padding:6px;position:absolute;bottom:calc(100% + 8px);left:0}.composer__picker{z-index:50;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg);box-shadow:var(--shadow-md);transform-origin:100% 100%;position:absolute;bottom:calc(100% + 8px);right:0;overflow:hidden}.composer__picker em-emoji-picker{--rgb-background:255, 255, 255;--rgb-color:33, 33, 33;--border-radius:var(--radius-md);width:352px;height:380px}.attach-menu__item{border-radius:var(--radius-sm);width:100%;color:var(--color-text-strong);font:inherit;font-size:var(--text-sm);text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:10px;padding:9px 10px;font-weight:600;transition:background .1s;display:flex}.attach-menu__item svg{color:var(--color-text-muted);flex:none}.attach-menu__item:hover{background:var(--color-bg-subtle)}.attach-menu__item:hover svg{color:var(--color-text-strong)}@keyframes composer-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.forward-overlay{z-index:45;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#0000004d;place-items:center;display:grid;position:fixed;inset:0}.forward-modal{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-bg);width:380px;max-width:calc(100vw - 32px);max-height:min(620px,100vh - 64px);box-shadow:var(--shadow-lg);flex-direction:column;display:flex;overflow:hidden}.forward-modal__head{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-4) var(--space-4) var(--space-3);display:flex}.forward-modal__head strong{font-size:var(--text-base)}.forward-modal__head button{border-radius:var(--radius-pill);width:30px;height:30px;color:var(--color-text-muted);cursor:pointer;background:0 0;border:0;place-items:center;display:grid}.forward-modal__head button:hover{background:var(--color-bg-subtle)}.forward-modal__search{align-items:center;gap:var(--space-2);margin:0 var(--space-4) var(--space-2);border-radius:var(--radius-md);padding:8px var(--space-3);color:var(--color-text-faint);background:var(--color-bg-subtle);grid-template-columns:18px minmax(0,1fr);display:grid}.forward-modal__search input{min-width:0;color:var(--color-text);font:inherit;background:0 0;border:0;outline:none}.forward-modal__list{min-height:0;padding:4px var(--space-2) var(--space-3);overflow:auto}.forward-room{align-items:center;gap:var(--space-3);border-radius:var(--radius-md);width:100%;padding:8px var(--space-2);text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:38px minmax(0,1fr);display:grid}.forward-room:hover{background:var(--color-bg-subtle)}.forward-room__avatar{border-radius:var(--radius-md);width:38px;height:38px;color:var(--color-text-onAccent);place-items:center;font-weight:800;display:grid}.forward-room strong,.forward-room small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.forward-room small{color:var(--color-text-muted);font-size:var(--text-xs);margin-top:2px}.forward-modal__empty{padding:var(--space-5);color:var(--color-text-muted);text-align:center}.message-menu-anchor{z-index:1000;transition:transform .16s cubic-bezier(.2,0,0,1);position:fixed}.message-menu{pointer-events:auto;transform-origin:0 0;flex-direction:column;gap:8px;width:auto;max-width:380px;animation:.14s cubic-bezier(.2,0,0,1) both message-menu-pop;display:flex}@keyframes message-menu-pop{0%{opacity:0;transform:translateY(-4px)scale(.96)}to{opacity:1;transform:none}}.message-menu__fade{animation:.14s cubic-bezier(.2,0,0,1) both message-menu-fade}@keyframes message-menu-fade{0%{opacity:0}to{opacity:1}}.message-menu__quick{border:1px solid var(--color-border);border-radius:var(--radius-pill);background:var(--color-bg);box-shadow:var(--shadow-md);align-items:center;gap:2px;padding:4px;display:flex}.message-menu__quick-btn{border-radius:var(--radius-pill);width:28px;height:28px;color:var(--color-text-muted);cursor:pointer;background:0 0;border:0;flex:none;place-items:center;padding:0;transition:background .12s,color .12s,transform .12s;display:grid}.message-menu__quick-btn:hover{color:var(--color-text-strong);background:var(--color-bg-subtle);transform:scale(1.18)}.message-menu__quick-emoji{font-size:18px;line-height:1}.message-menu__quick-more{margin-left:2px}.message-menu__quick-more:hover,.message-menu__quick-back:hover{transform:scale(1.1)}.message-menu__body{border-radius:var(--radius-md);overflow:hidden}.message-menu__list{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg);min-width:240px;box-shadow:var(--shadow-md);margin:0;padding:6px;list-style:none}.message-menu__action{border-radius:var(--radius-sm);width:100%;color:var(--color-text-strong);font:inherit;font-size:var(--text-sm);text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:10px;padding:8px 10px;font-weight:500;transition:background .1s;display:flex}.message-menu__action svg{color:var(--color-text-muted);flex:none}.message-menu__action:hover{background:var(--color-bg-subtle)}.message-menu__action:hover svg{color:var(--color-text-strong)}.message-menu__action:disabled{cursor:not-allowed;opacity:.48}.message-menu__action:disabled:hover{background:0 0}.message-menu__action:disabled:hover svg{color:var(--color-text-muted)}.message-menu__action--danger,.message-menu__action--danger svg{color:var(--color-danger,#c0392b)}.message-menu__action--danger:hover{background:#c0392b14}.message-menu__picker{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg);width:352px;box-shadow:var(--shadow-md);overflow:hidden}.message-menu__picker em-emoji-picker{--rgb-background:255, 255, 255;--rgb-color:33, 33, 33;--border-radius:var(--radius-md);width:352px;height:380px}.room-list{border-right:1px solid var(--color-border);background:var(--color-bg-subtle);flex-direction:column;width:100%;min-width:0;height:100vh;display:flex;overflow:hidden}.room-list__head{height:var(--header-height);align-items:center;gap:var(--space-2);padding:0 var(--space-3) 0 var(--space-4);display:flex;position:relative}.room-list__head .space-bar__name{flex:1;min-width:0}.room-list.is-collapsed .room-list__head{justify-content:center;padding:0}.room-list__title{white-space:nowrap;gap:2px;display:grid;overflow:hidden}.room-list__head strong{color:var(--color-text-strong);font-size:var(--text-lg)}.room-list__head span{color:var(--color-text-muted);font-size:var(--text-sm)}.room-list__collapse{border-radius:var(--radius-md);width:36px;height:36px;color:var(--color-text-muted);cursor:pointer;background:0 0;border:0;flex:none;place-items:center;margin-left:auto;transition:background .14s,color .14s,width .18s,height .18s;display:grid}.room-list__actions{align-items:center;gap:8px;display:flex;position:relative}.room-list__create{border-radius:var(--radius-pill);height:34px;color:var(--color-text-muted);background:var(--color-bg-sunken);font:inherit;font-size:var(--text-sm);cursor:pointer;border:0;align-items:center;gap:8px;padding:0 12px 0 8px;font-weight:600;transition:background .14s,color .14s,transform .14s,box-shadow .14s;display:inline-flex}.room-list__create:hover,.room-list__create.is-open{color:var(--color-text-strong);background:var(--color-bg);box-shadow:var(--shadow-sm)}.room-list__create:active{transform:scale(.98)}.room-list__createIcon{border-radius:var(--radius-pill);width:20px;height:20px;color:var(--color-text-onAccent);background:var(--color-accent);place-items:center;display:grid}.room-list__createCaret{color:var(--color-text-faint);display:inline-flex}.room-list__createMenu{z-index:30;border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-bg);width:260px;box-shadow:var(--shadow-pop);transform-origin:100% 0;gap:6px;padding:8px;display:grid;position:absolute;top:calc(100% + 8px);right:0}.room-list__createItem{border-radius:var(--radius-md);width:100%;color:var(--color-text);text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:12px;padding:10px;transition:background .14s,transform .14s;display:flex}.room-list__createItem:hover{background:var(--color-bg-subtle);transform:translateY(-1px)}.room-list__createItemIcon{border-radius:var(--radius-md);width:34px;height:34px;color:var(--color-text-strong);background:var(--color-bg-sunken);flex:0 0 34px;place-items:center;display:grid}.room-list__createItemBody{gap:2px;min-width:0;display:grid}.room-list__createItemBody strong,.room-list__createItemBody small{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.room-list__createItemBody strong{color:var(--color-text-strong);font-size:var(--text-sm)}.room-list__createItemBody small{color:var(--color-text-muted);font-size:var(--text-xs)}.room-list__collapse:hover{color:var(--color-text-strong);background:var(--color-bg-sunken)}.room-list.is-collapsed .room-list__collapse{background:var(--color-bg-sunken);width:46px;height:46px;margin:0}.room-list__search{align-items:center;gap:var(--space-2);height:38px;margin:0 var(--space-3) var(--space-2);border-radius:var(--radius-md);padding:0 var(--space-3);color:var(--color-text-faint);background:var(--color-bg-sunken);border:1px solid #0000;transition:background .15s,border-color .15s,color .15s;display:flex}.room-list__search:focus-within{border-color:var(--color-accent-ring);color:var(--color-text-muted);background:var(--color-bg)}.room-list__search input{min-width:0;color:var(--color-text);font:inherit;background:0 0;border:0;outline:0;flex:1}.room-list__search input::placeholder{color:var(--color-text-faint)}.room-list__sections{min-height:0;padding:var(--space-2);overflow:auto}.room-list.is-collapsed .room-list__sections{padding:var(--space-2) 0;overflow-x:visible}.room-list__back{width:100%;margin-bottom:var(--space-2);border-radius:var(--radius-md);color:var(--color-text-muted);font:inherit;font-size:var(--text-sm);cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;padding:8px 10px;font-weight:600;transition:background .14s,color .14s;display:flex}.room-list__back:hover{color:var(--color-text-strong);background:var(--color-bg-subtle)}.room-list__subspaces{margin-bottom:var(--space-3);gap:2px;display:grid}.room-list__subspaces-title{color:var(--color-text-faint);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.04em;padding:4px 10px;font-weight:700}.room-subspace{border-radius:var(--radius-md);width:100%;color:var(--color-text);text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:10px;padding:8px 10px;transition:background .14s;display:flex}.room-subspace:hover{background:var(--color-bg-subtle)}.room-subspace strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:var(--text-sm);flex:1;font-weight:600;overflow:hidden}.room-subspace__chevron{color:var(--color-text-faint);flex:none}.room-subspace__more{border-radius:var(--radius-sm);width:24px;height:24px;color:var(--color-text-faint);cursor:pointer;opacity:0;background:0 0;border:0;flex:none;place-items:center;transition:opacity .12s,color .12s,background .12s;display:grid}.room-subspace:hover .room-subspace__more,.room-subspace__more:focus-visible{opacity:1}.room-subspace__more:hover{color:var(--color-text-strong);background:var(--color-bg-subtle)}.room-subspace__avatar{border-radius:var(--radius-sm);width:28px;height:28px;color:var(--color-text-onAccent);font-size:var(--text-xs);flex:0 0 28px;place-items:center;font-weight:800;display:grid;position:relative;overflow:hidden}.room-subspace__avatar-img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.room-list__empty{margin:var(--space-4);color:var(--color-text-muted);font-size:var(--text-sm)}.room-section+.room-section{margin-top:var(--space-4)}.room-list.is-collapsed .room-section+.room-section{margin-top:var(--space-2)}.room-list.is-collapsed .room-section__body{grid-template-rows:1fr}.room-list.is-collapsed .room-section__items{align-items:center}.room-section__title{align-items:center;gap:var(--space-2);border-radius:var(--radius-sm);width:100%;height:28px;padding:0 var(--space-2);color:var(--color-text-muted);font:inherit;font-size:var(--text-xs);text-align:left;text-transform:uppercase;cursor:pointer;background:0 0;border:0;font-weight:700;transition:color .12s;display:flex}.room-section__title:hover{color:var(--color-text-strong)}.room-section__chevron,.room-section__icon{color:var(--color-text-faint);display:inline-flex}.room-section__title:hover .room-section__chevron,.room-section__title:hover .room-section__icon{color:var(--color-text-muted)}.room-section__title em{color:var(--color-text-faint);margin-left:auto;font-style:normal}.room-section__head{align-items:center;gap:2px;display:flex}.room-section__head .room-section__title{flex:1;width:auto}.room-section__head .room-list__subspaces-title{flex:1;margin:0}.room-section__add{border-radius:var(--radius-sm);width:24px;height:24px;color:var(--color-text-faint);cursor:pointer;opacity:0;background:0 0;border:0;flex:none;place-items:center;transition:color .12s,background .12s,opacity .12s;display:grid}.room-section:hover .room-section__add,.room-section__add:focus-visible{opacity:1}.room-section__add:hover{color:var(--color-text-strong);background:var(--color-bg-subtle)}.space-bar{padding:8px var(--space-3);border-bottom:.5px solid var(--color-border);align-items:center;gap:10px;display:flex;position:relative}.space-bar__avatar{border-radius:var(--radius-md);width:28px;height:28px;color:var(--color-text-onAccent);font-size:var(--text-xs);flex:0 0 28px;place-items:center;font-weight:800;display:grid;position:relative;overflow:hidden}.space-bar__avatar-img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.space-bar__name{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:var(--text-sm);color:var(--color-text-strong);flex:1;font-weight:600;overflow:hidden}.space-bar__more{border-radius:var(--radius-sm);width:30px;height:30px;color:var(--color-text-muted);cursor:pointer;background:0 0;border:0;flex:none;place-items:center;transition:color .12s,background .12s;display:grid}.space-bar__more:hover,.space-bar__more.is-open{color:var(--color-text-strong);background:var(--color-bg-subtle)}.space-bar__menu{top:calc(100% - 2px);right:var(--space-3);z-index:30;border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-bg);min-width:210px;box-shadow:var(--shadow-pop);transform-origin:100% 0;gap:2px;padding:6px;display:grid;position:absolute}.space-bar__menuItem{border-radius:var(--radius-md);width:100%;color:var(--color-text);text-align:left;font:inherit;font-size:var(--text-sm);cursor:pointer;background:0 0;border:0;align-items:center;gap:10px;padding:9px 10px;transition:background .12s;display:flex}.space-bar__menuItem:hover{background:var(--color-bg-subtle)}.space-bar__menuItem--danger{color:var(--color-danger)}.room-section__body{grid-template-rows:0fr;transition:grid-template-rows .22s;display:grid}.room-section__body.is-open{grid-template-rows:1fr}.room-section__body-inner{min-height:0;overflow:hidden}.room-section__items{flex-direction:column;gap:2px;display:flex}.room-row{align-items:center;gap:var(--space-3);border-radius:var(--radius-md);width:100%;min-height:58px;padding:var(--space-2);color:var(--color-text);text-align:left;cursor:pointer;-webkit-user-select:none;user-select:none;background:0 0;border:0;grid-template-columns:40px minmax(0,1fr) auto;display:grid;position:relative}.room-list.is-collapsed .room-row{grid-template-columns:40px;justify-content:center;gap:0;width:56px;min-height:54px;margin:0 auto;padding:7px 8px;overflow:visible}.room-list.is-collapsed .room-row.is-active{background:var(--color-bg-active)}.room-row:hover{background:var(--color-bg-hover)}.room-row.is-active{background:0 0}.room-row__bg{z-index:0;border-radius:var(--radius-md);background:var(--color-accent-subtle);position:absolute;inset:0}.room-row>:not(.room-row__bg){z-index:1;position:relative}.room-row__avatar{border-radius:var(--radius-md);width:40px;height:40px;color:var(--color-text-onAccent);place-items:center;font-weight:700;display:grid;position:relative;overflow:visible}.room-list.is-collapsed .room-row.is-active .room-row__avatar{box-shadow:0 0 0 2px var(--color-bg-subtle), 0 0 0 4px var(--color-accent)}.room-list.is-collapsed .room-row__bg{display:none}.room-row__avatar-img{object-fit:cover;border-radius:inherit;width:100%;height:100%;position:absolute;inset:0}.room-row__avatar-img+svg,.room-row__avatar-img+text{display:none}.room-row__main{gap:3px;min-width:0;display:grid}.room-list.is-collapsed .room-row__main,.room-list.is-collapsed .room-row__meta{display:none}.room-row__top{gap:var(--space-2);align-items:center;min-width:0;display:flex}.room-row__top strong{min-width:0;color:var(--color-text-strong);font-size:var(--text-base);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.room-row__top time{color:var(--color-text-faint);font-size:var(--text-xs);margin-left:auto}.room-row__preview{min-width:0;color:var(--color-text-muted);font-size:var(--text-sm);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.room-row__meta{justify-content:flex-end;align-items:center;gap:8px;min-width:fit-content;display:flex}.room-row__meta:empty{display:none}.room-row__meta>*{flex:none}.room-row__pin{border-radius:var(--radius-sm);width:22px;height:22px;color:var(--color-text-faint);cursor:pointer;opacity:0;pointer-events:none;background:0 0;border:0;place-items:center;padding:0;transition:background .12s,color .12s,opacity .12s;display:grid}.room-row:hover .room-row__pin,.room-row__pin.is-on{opacity:1;pointer-events:auto}.room-row__pin:hover{color:var(--color-text-strong);background:var(--color-bg-sunken)}.room-row__pin.is-on{color:#e0a93b}.room-row__more{border-radius:var(--radius-sm);width:22px;height:22px;color:var(--color-text-faint);cursor:pointer;opacity:0;pointer-events:none;background:0 0;border:0;place-items:center;padding:0;transition:background .12s,color .12s,opacity .12s;display:grid}.room-row:hover .room-row__more{opacity:1;pointer-events:auto}.room-row__more:hover{color:var(--color-text-strong);background:var(--color-bg-sunken)}.row-menu{z-index:200;border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-bg);min-width:210px;box-shadow:var(--shadow-pop);transform-origin:0 0;gap:2px;padding:6px;display:grid;position:fixed}.row-menu__item{border-radius:var(--radius-md);width:100%;color:var(--color-text);text-align:left;font:inherit;font-size:var(--text-sm);cursor:pointer;background:0 0;border:0;align-items:center;gap:10px;padding:9px 10px;transition:background .12s;display:flex}.row-menu__item:hover{background:var(--color-bg-subtle)}.row-menu__item--danger{color:var(--color-danger)}.row-menu__divider{background:var(--color-border);height:.5px;margin:4px 8px}.room-row__badge{border-radius:var(--radius-pill);min-width:20px;height:20px;color:var(--color-text-onAccent);background:var(--color-accent);font-size:var(--text-xs);place-items:center;padding:0 6px;font-weight:700;transition:opacity .12s;display:grid}.room-row__badge--corner{min-width:18px;height:18px;box-shadow:0 0 0 2px var(--color-bg-subtle);padding:0 5px;font-size:11px;line-height:18px;position:absolute;top:-6px;right:-2px}.room-list__tip{z-index:100;border-radius:var(--radius-md);color:#fff;max-width:260px;box-shadow:var(--shadow-pop);font-size:var(--text-sm);pointer-events:none;text-overflow:ellipsis;white-space:nowrap;background:#1f2430;padding:7px 10px;font-weight:650;position:fixed;overflow:hidden}.room-row__reorder-item{list-style:none}.room-settings__topic{border:1px solid var(--color-border);border-radius:var(--radius-md);width:100%;color:var(--color-text);background:var(--color-bg-sunken);font:inherit;font-size:var(--text-sm);resize:vertical;margin-top:14px;padding:10px 12px;line-height:1.5;transition:border-color .15s,background .15s}.room-settings__topic:focus{border-color:var(--color-accent-ring);background:var(--color-bg);outline:0}.room-settings__topic::placeholder{color:var(--color-text-faint)}.room-settings__topic:disabled{opacity:.6;cursor:not-allowed}.space-rail{width:var(--rail-width);min-width:var(--rail-width);align-items:center;gap:var(--space-3);padding:var(--space-3) 0;background:var(--color-rail-bg);flex-direction:column;display:flex}.space-rail__home,.space-rail__item,.space-rail__logout{border-radius:var(--radius-md);width:44px;height:44px;color:var(--color-text-onAccent);cursor:pointer;-webkit-tap-highlight-color:transparent;border:0;outline:none;place-items:center;transition:background .16s,border-radius .16s,transform .16s,box-shadow .16s;display:grid;position:relative}.space-rail__home{background:var(--color-rail-item);font-weight:800}.space-rail__home.is-active{background:var(--color-bg-subtle);color:var(--color-text-strong)}.space-rail__home.is-active,.space-rail__item.is-active{border-radius:14px}.space-rail__spaces{gap:var(--space-2);flex:1;grid-auto-rows:max-content;min-height:0;margin-left:-10px;padding-left:10px;display:grid;overflow:hidden auto}.space-rail__bottom{align-items:center;gap:var(--space-2);padding-top:var(--space-3);margin-top:var(--space-1);border-top:1px solid var(--color-rail-item-hover);flex-direction:column;flex:none;display:flex}.space-rail__item{font-size:var(--text-sm);font-weight:800}.space-rail__avatar{object-fit:cover;border-radius:inherit;width:100%;height:100%;position:absolute;inset:0}.space-rail__item--add{background:var(--color-rail-item-hover)}.space-rail__home:hover,.space-rail__item:hover{transform:translateY(-1px)}.space-rail__home:focus-visible,.space-rail__item:focus-visible,.space-rail__logout:focus-visible{box-shadow:0 0 0 2px var(--color-bg), 0 0 0 4px var(--color-accent-ring)}.space-rail__indicator{border-radius:var(--radius-pill);background:var(--color-rail-indicator);width:4px;height:30px;position:absolute;top:50%;left:-10px;transform:translateY(-50%)}.space-rail__logout{color:var(--color-rail-text);background:0 0}.space-rail__logout:hover{background:var(--color-rail-item-hover)}.tips{align-items:center;gap:var(--space-3);flex-direction:column;width:320px;display:flex}.tips__card{width:100%;padding:var(--space-5) var(--space-4);border-radius:var(--radius-lg);background:var(--color-bg-subtle);border:1px solid var(--color-border);box-shadow:var(--shadow-md);text-align:center;position:relative;overflow:hidden}.tips__viewport{min-height:244px;position:relative}.tips__slide{align-items:center;gap:var(--space-2);will-change:transform, opacity;flex-direction:column;display:flex;position:absolute;inset:0}.tips__visual{width:100%;height:116px;margin-bottom:var(--space-3);border-radius:var(--radius-md);background:var(--color-bg-sunken);place-items:center;display:grid;overflow:hidden}.tipviz{justify-content:center;align-items:center;gap:var(--space-3);width:100%;padding:0 var(--space-3);display:flex}.tipviz__logo-img{object-fit:contain;width:auto;max-width:80%;height:auto;max-height:96px}.tipviz__row{align-items:center;gap:var(--space-2);width:80%;padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);background:var(--color-bg);box-shadow:var(--shadow-sm);display:flex}.tipviz__ava{border-radius:var(--radius-pill);background:var(--color-border-strong);flex:none;width:28px;height:28px}.tipviz__lines{flex-direction:column;flex:1;gap:5px;display:flex}.tipviz__lines i{border-radius:var(--radius-pill);background:var(--color-border-strong);height:6px}.tipviz__lines i.short{opacity:.6;width:60%}.tipviz__star{color:#e0a93b;flex:none;place-items:center;animation:1.4s ease-in-out infinite tipPulse;display:grid}.tipviz--views{align-items:stretch;position:relative}.tipviz__views-cursor{width:14px;height:14px;color:var(--color-text-strong);pointer-events:none;z-index:5;transform-origin:0 0;filter:drop-shadow(0 1px 2px #00000040);position:absolute;top:0;left:0}.tipviz__view{padding:var(--space-2) var(--space-2) 20px;border-radius:var(--radius-sm);background:var(--color-bg);box-shadow:var(--shadow-sm);flex-direction:column;flex:1;justify-content:center;align-items:stretch;gap:5px;display:flex;position:relative}.tipviz__view em{color:var(--color-text-faint);text-align:center;margin-top:0;font-size:10px;font-style:normal;font-weight:600;position:absolute;bottom:5px;left:0;right:0}.tipviz__view-icon{color:var(--color-text-faint);opacity:.55;position:absolute;top:5px;right:6px}.tipviz__msg{border-radius:var(--radius-pill);background:var(--color-border-strong);width:90%;height:5px}.tipviz__msg.short{width:55%}.tipviz__bub{border-radius:var(--radius-sm);background:var(--color-border-strong);width:70%;height:12px}.tipviz__bub.right{background:var(--color-accent-subtle);align-self:flex-end}.tipviz__bub.short{width:45%}.tipviz--sections{flex-direction:column;align-items:stretch;gap:5px;width:70%;position:relative}.tipviz__cursor{width:14px;height:14px;color:var(--color-text-strong);pointer-events:none;z-index:3;transform-origin:0 0;filter:drop-shadow(0 1px 2px #00000040);position:absolute;top:0;left:18px}.tipviz__cursor-icon{line-height:0;display:block;position:absolute;inset:0}.tipviz__cursor-icon--grab{z-index:1;inset:-1px 0 0 -1px}.tipviz__sec{border-radius:var(--radius-sm);height:24px;color:var(--color-text-muted);background:var(--color-bg);align-items:center;gap:6px;padding:0 8px;font-size:11px;font-weight:600;line-height:1;display:flex}.tipviz__sec svg{color:var(--color-text-faint)}.tipviz__sec.is-grab{background:var(--color-bg-subtle);box-shadow:var(--shadow-md);color:var(--color-text-strong)}.tipviz__sec.is-grab svg{color:var(--color-text-strong)}.tipviz__key-wrap{display:inline-flex;position:relative}.tipviz__key-ripple{border-radius:var(--radius-md);border:2px solid var(--color-accent);pointer-events:none;z-index:0;opacity:0;background:0 0;position:absolute;inset:0}.tipviz__key{z-index:1;border-radius:var(--radius-md);background:var(--color-bg);border:1px solid var(--color-border-strong);box-shadow:0 2px 0 var(--color-border-strong);font-size:var(--text-sm);letter-spacing:.04em;color:var(--color-text-muted);padding:8px 16px;font-weight:700;position:relative}.tips__title{font-size:var(--text-base);color:var(--color-text-strong);font-weight:700}.tips__text{font-size:var(--text-sm);color:var(--color-text-muted);max-width:260px;line-height:1.5}.tips__dots{margin-top:var(--space-4);justify-content:center;gap:6px;display:flex}.tips__dot{appearance:none;border-radius:var(--radius-pill);background:var(--color-border-strong);cursor:pointer;border:0;width:7px;height:7px;padding:0;transition:background .15s,transform .15s}.tips__dot.is-active{background:var(--color-accent);transform:scale(1.15)}.tips__nav{justify-content:space-between;gap:var(--space-3);width:100%;display:flex}.tips__btn{padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);background:var(--color-bg-subtle);border:1px solid var(--color-border);font-size:var(--text-sm);color:var(--color-text-muted);cursor:pointer;flex:1;font-weight:600;transition:background .12s,color .12s,opacity .12s}.tips__btn:hover:not(:disabled){background:var(--color-bg-hover);color:var(--color-text-strong)}.tips__btn:disabled{opacity:.4;cursor:default}@keyframes tipPulse{0%,to{transform:scale(1)}50%{transform:scale(1.25)}}.thread-panel{border-left:1px solid var(--color-border);background:var(--color-bg-subtle);flex-direction:column;flex-shrink:0;width:360px;height:100%;animation:.2s cubic-bezier(.2,0,0,1) both thread-panel-in;display:flex;position:relative;overflow:hidden}.thread-panel__resizer{z-index:5;cursor:col-resize;width:7px;position:absolute;top:0;bottom:0;left:-3px}.thread-panel__resizer:after{content:"";background:0 0;width:1px;transition:background .12s;position:absolute;top:0;bottom:0;left:3px}.thread-panel__resizer:hover:after,.thread-panel__resizer.is-active:after{background:var(--color-accent,#6b5bd6)}@keyframes thread-panel-in{0%{opacity:0;transform:translate(16px)}to{opacity:1;transform:none}}.thread-panel__header{flex:0 0 var(--header-height);padding:0 var(--space-4);border-bottom:1px solid var(--color-border);background:color-mix(in srgb, var(--color-bg) 92%, white);justify-content:space-between;align-items:center;display:flex}.thread-panel__title{align-items:center;gap:var(--space-2);color:var(--color-text-strong);font-weight:700;display:flex}.thread-panel__list{gap:var(--space-3);min-height:0;padding:var(--space-4);flex-direction:column;flex:1;display:flex;overflow-y:auto}.gthreads{z-index:70;padding:var(--space-6);background:#0006;place-items:center;animation:.14s cubic-bezier(.2,0,0,1) both gthreads-fade;display:grid;position:fixed;inset:0}.gthreads__card{border-radius:var(--radius-lg,16px);background:var(--color-bg-subtle);width:min(520px,94vw);max-height:80vh;box-shadow:var(--shadow-lg);flex-direction:column;animation:.18s cubic-bezier(.2,0,0,1) both gthreads-pop;display:flex;overflow:hidden}@keyframes gthreads-fade{0%{opacity:0}to{opacity:1}}@keyframes gthreads-pop{0%{opacity:0;transform:translateY(8px)scale(.98)}to{opacity:1;transform:none}}.threads-list{gap:var(--space-1);min-height:0;padding:var(--space-3);flex-direction:column;flex:1;display:flex;overflow-y:auto}.threads-list__empty{padding:var(--space-6);color:var(--color-text-muted);font-size:var(--text-sm);text-align:center;margin:auto}.threads-list__item{border-radius:var(--radius-md);padding:var(--space-3);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;flex-direction:column;gap:2px;transition:background .12s;display:flex}.threads-list__item:hover{background:var(--color-bg)}.threads-list__head{align-items:center;gap:var(--space-2);display:flex}.threads-list__head strong{min-width:0;color:var(--color-text-strong);font-size:var(--text-sm);text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.threads-list__go{color:var(--color-text-faint)}.threads-list__dot{background:var(--color-accent,#6b5bd6);border-radius:50%;width:7px;height:7px}.threads-list__preview{color:var(--color-text);font-size:var(--text-sm);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.threads-list__meta{color:var(--color-text-faint);font-size:var(--text-xs,.72rem)}.thread-msg{gap:var(--space-3);display:flex}.thread-msg--root{padding-bottom:var(--space-3);border-bottom:1px solid var(--color-border)}.thread-msg__avatar{border-radius:var(--radius-pill);width:32px;height:32px;color:var(--color-text-onAccent);font-size:var(--text-sm);flex:0 0 32px;place-items:center;font-weight:700;display:grid;position:relative}.thread-msg__avatar-img{object-fit:cover;border-radius:inherit;width:100%;height:100%;position:absolute;inset:0}.thread-msg__avatar-fallback{z-index:1;position:relative}.thread-msg__body{flex-direction:column;gap:2px;min-width:0;display:flex}.thread-msg__head{align-items:baseline;gap:var(--space-2);display:flex}.thread-msg__head strong{font-size:var(--text-sm)}.thread-msg__head time{color:var(--color-text-faint);font-size:var(--text-xs,.72rem)}.thread-msg__text{color:var(--color-text);font-size:var(--text-sm);white-space:pre-wrap;word-break:break-word;line-height:1.45}.thread-panel .timeline{padding:var(--space-3) var(--space-4);flex:1}.thread-panel__context{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);border-top:1px solid var(--color-border);background:var(--color-bg);flex:none;display:flex}.thread-panel__context-icon{color:var(--color-accent,var(--color-text-muted))}.thread-panel__context-body{flex:1;min-width:0}.thread-panel__context-body strong{color:var(--color-text-strong);font-size:var(--text-xs,.72rem);display:block}.thread-panel__context-body p{color:var(--color-text-muted);font-size:var(--text-sm);text-overflow:ellipsis;white-space:nowrap;margin:0;overflow:hidden}.thread-panel__context-cancel{border-radius:var(--radius-pill);width:26px;height:26px;color:var(--color-text-muted);cursor:pointer;background:0 0;border:0;flex:none;place-items:center;display:grid}.thread-panel__context-cancel:hover{background:var(--color-bg-subtle)}.thread-panel__composer{align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);border-top:1px solid var(--color-border);flex:none;display:flex}.thread-panel__attach{border-radius:var(--radius-pill);width:36px;height:36px;color:var(--color-text-muted);cursor:pointer;background:0 0;border:0;flex:none;place-items:center;transition:background .12s,color .12s;display:grid}.thread-panel__attach:hover{color:var(--color-text-strong);background:var(--color-bg)}.thread-panel__input{resize:none;border:1px solid var(--color-border);border-radius:var(--radius-md);min-width:0;min-height:36px;max-height:120px;padding:8px var(--space-3);color:var(--color-text);background:var(--color-bg);line-height:18px;font:inherit;outline:none;flex:1}.thread-panel__input:focus{border-color:var(--color-accent)}.thread-panel__send{border-radius:var(--radius-pill);width:36px;height:36px;color:var(--color-text-onAccent);background:var(--color-accent);cursor:pointer;border:0;flex:none;place-items:center;transition:opacity .12s;display:grid}.thread-panel__send:disabled{opacity:.4;cursor:default}.message-media{margin:5px 0 4px;display:block}.message-media--image,.message-media--broken{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-bg-subtle);width:340px;max-width:100%;min-height:150px;padding:0;overflow:hidden}.message-media--image{cursor:zoom-in}.message-media--image img{object-fit:cover;width:100%;height:100%;display:block}.message-media__loader{border:3px solid var(--color-border);border-top-color:var(--color-accent);border-radius:var(--radius-pill);width:28px;height:28px;margin:62px auto;animation:.8s linear infinite media-spin;display:block}.message-media--broken{place-content:center;justify-items:center;gap:var(--space-2);color:var(--color-text-muted);display:grid}.message-media--video{border-radius:var(--radius-lg);background:#000;width:380px;max-width:100%;max-height:320px}.message-media--audio{width:360px;max-width:100%}.message-media--file{align-items:center;gap:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-lg);width:360px;max-width:100%;padding:var(--space-3);color:var(--color-text);background:var(--color-bg);text-align:left;cursor:pointer;box-shadow:var(--shadow-sm);grid-template-columns:40px minmax(0,1fr) 32px;display:grid}.message-media--file:hover{background:var(--color-bg-subtle)}.message-media__file-icon,.message-media__download{border-radius:var(--radius-md);width:36px;height:36px;color:var(--color-accent);background:var(--color-accent-subtle);place-items:center;display:grid}.message-media__download{width:32px;height:32px}.message-media__file-body{min-width:0}.message-media__file-body strong,.message-media__file-body small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.message-media__file-body small{color:var(--color-text-muted);font-size:var(--text-xs);margin-top:2px}@keyframes media-spin{to{transform:rotate(360deg)}}.reaction-pill{border:1px solid var(--color-border);border-radius:var(--radius-pill);height:28px;color:var(--color-text-muted);background:var(--color-bg);font:inherit;font-size:var(--text-sm);cursor:pointer;box-shadow:var(--shadow-sm);align-items:center;gap:5px;padding:0 9px;display:inline-flex;position:relative}.reaction-pill:hover{color:var(--color-text);background:var(--color-bg-subtle)}.reaction-pill.is-mine{border-color:color-mix(in srgb, var(--color-accent) 42%, var(--color-border));color:var(--color-accent);background:var(--color-accent-subtle)}.reaction-pill strong{font-size:var(--text-xs);font-weight:800}.reaction-pill__emoji-wrap{place-items:center;display:inline-grid;position:relative}.reaction-pill__emoji{line-height:1;display:inline-block}.reaction-pill__burst{pointer-events:none;filter:drop-shadow(0 8px 12px #00000029);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.timeline{min-height:0;padding:var(--space-5);background:var(--color-bg);flex-direction:column;display:flex;overflow-y:auto}.timeline__spacer{margin-top:auto}.timeline__empty{color:var(--color-text-muted);margin:auto}.thread-chip{align-self:flex-start;align-items:center;gap:var(--space-2);margin-top:var(--space-1);border-radius:var(--radius-pill);color:var(--color-accent,var(--color-text-muted));background:color-mix(in srgb, var(--color-accent,#6b5bd6) 12%, transparent);font:inherit;font-size:var(--text-xs,.75rem);cursor:pointer;border:0;padding:4px 10px;font-weight:600;transition:background .12s;display:inline-flex}.thread-chip:hover{background:color-mix(in srgb, var(--color-accent,#6b5bd6) 20%, transparent)}.thread-chip em{color:var(--color-text-muted);font-style:normal;font-weight:500}.thread-chip--unread:before{content:"";background:var(--color-accent,#6b5bd6);border-radius:50%;width:7px;height:7px}.timeline__loading{padding:var(--space-3) var(--space-4);color:var(--color-text-muted);font-size:var(--text-xs,.75rem);text-align:center}.timeline__intro{align-items:center;gap:var(--space-2);padding:var(--space-6) var(--space-4) var(--space-5);text-align:center;flex-direction:column;display:flex}.timeline__intro-avatar{border-radius:var(--radius-pill);width:64px;height:64px;color:var(--color-text-onAccent);font-size:var(--text-xl);place-items:center;font-weight:800;display:grid}.timeline__intro strong{color:var(--color-text-strong);font-size:var(--text-lg)}.timeline__intro span{color:var(--color-text-faint);font-size:var(--text-sm)}.day-divider{top:var(--space-2);z-index:2;margin:var(--space-4) 0 var(--space-2);pointer-events:none;justify-content:center;display:flex;position:sticky}.day-divider span{border:1px solid var(--color-border);border-radius:var(--radius-pill);color:var(--color-text-muted);background:var(--color-bg-subtle);box-shadow:var(--shadow-sm);font-size:var(--text-xs);padding:3px 12px;font-weight:700}.message{gap:var(--space-3);margin-top:var(--space-4);border-radius:var(--radius-md);padding:2px var(--space-3);transition:background .14s;display:flex;position:relative}.message:hover{background:var(--color-bg-subtle)}.message--compact{margin-top:1px}.message__avatar{border-radius:var(--radius-pill);width:36px;height:36px;color:var(--color-text-onAccent);font-size:var(--text-sm);flex:none;place-items:center;font-weight:700;display:grid}.message__avatar-fallback{z-index:1;position:relative}.message__avatar-img{border-radius:inherit;object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.message__avatar--spacer{background:0 0!important}.message__body{min-width:0;max-width:640px}.message__head{align-items:baseline;gap:var(--space-2);margin-bottom:2px;display:flex}.message__head strong{font-size:var(--text-base);font-weight:700}.message__text{color:var(--color-text);font-size:var(--text-md);overflow-wrap:anywhere;white-space:pre-wrap;line-height:1.45}.message__aside{white-space:nowrap;flex:none;align-self:flex-start;align-items:center;gap:3px;margin-left:auto;padding-top:1px;display:flex}.message__aside time{color:var(--color-text-faint);font-variant-numeric:tabular-nums;font-size:11px}.message__check{color:#4fae6e;flex:none}.message__reply-preview{border:0;border-left:3px solid var(--color-accent);border-radius:0 var(--radius-sm) var(--radius-sm) 0;width:min(360px,100%);padding:5px var(--space-2);color:var(--color-text-muted);background:var(--color-bg-subtle);text-align:left;cursor:default;gap:2px;margin:0 0 6px;display:grid}.message__reply-preview strong{color:var(--color-text);font-size:var(--text-xs)}.message__reply-preview span{font-size:var(--text-xs);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.message__forwarded{color:var(--color-accent);font-size:var(--text-xs);align-items:center;gap:5px;margin-bottom:3px;display:flex}.message__forwarded svg{flex:none}.message__reactions{flex-wrap:wrap;gap:5px;margin-top:6px;display:flex}.message__empty{color:var(--color-text-faint);font-style:italic}.message__edited{color:var(--color-text-faint);margin-left:6px;font-size:11px;font-style:italic}.message--highlight{animation:1.6s timeline-message-highlight}.timeline--bubbles{background:radial-gradient(900px 480px at 75% 0%, #6f7d630d, transparent), var(--color-bg)}.mb{gap:var(--space-2);margin-top:var(--space-3);align-items:flex-end;display:flex;position:relative}.mb--cont{margin-top:5px}.mb--own{justify-content:flex-end}.mb__avatar{border-radius:var(--radius-pill);width:30px;height:30px;color:var(--color-text-onAccent);font-size:var(--text-xs);flex:none;place-items:center;font-weight:600;display:grid;position:relative}.bubble{max-width:72%;color:var(--color-text-strong);background:#f3f4f6;border:1px solid #94a3b824;border-radius:16px;padding:7px 11px;position:relative;box-shadow:0 1px 1.5px #0f172a0d,0 8px 24px #0f172a0d}.mb--own .bubble{background:#efe9dd;border-color:#c9b6961f}.mb--own.mb--tail .bubble{border-bottom-right-radius:0;border-bottom-left-radius:16px}.mb:not(.mb--own).mb--tail .bubble{border-bottom-right-radius:16px;border-bottom-left-radius:0}.bubble__tail{color:#f3f4f6;filter:drop-shadow(0 1px 1px #0f172a0a);pointer-events:none;position:absolute;bottom:-1px}.bubble__tail--own{color:#efe9dd;bottom:0;right:-10px}.bubble__tail--in{bottom:0;left:-10px}.bubble__author{font-size:var(--text-xs);margin-bottom:2px;font-weight:600}.bubble__text{white-space:pre-wrap;word-break:break-word;line-height:1.4}.bubble__time{opacity:.5;font-variant-numeric:tabular-nums;justify-content:flex-end;align-items:center;gap:3px;margin-top:2px;font-size:11px;display:flex}.mb--own .bubble__time{color:var(--color-text-muted);opacity:.8}.mb:not(.mb--own) .bubble__time{color:#1f2937b8}.bubble__time .message__edited{margin-right:2px}.mb--own .bubble__time .message__edited{color:var(--color-text-faint)}.mb--highlight .bubble{animation:1.6s timeline-bubble-highlight}.bubble__reply-preview{border:0;border-left:3px solid var(--color-accent);border-radius:0 var(--radius-sm) var(--radius-sm) 0;width:min(320px,100%);padding:5px var(--space-2);color:var(--color-text-muted);text-align:left;cursor:default;background:#0000000a;gap:2px;margin:0 0 6px;display:grid}.bubble__reply-preview strong{color:var(--color-text);font-size:var(--text-xs)}.bubble__reply-preview span{font-size:var(--text-xs);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}@keyframes timeline-message-highlight{0%,30%{background-color:var(--color-accent-subtle)}to{background-color:#0000}}@keyframes timeline-bubble-highlight{0%,30%{background-color:color-mix(in srgb, var(--color-accent-subtle) 82%, white)}to{background-color:#0000}}.chat-shell{background:var(--color-bg);width:100vw;height:100vh;display:flex;overflow:hidden}.chat-shell__room-list{z-index:2;flex:none;min-width:0;position:relative;overflow:hidden}.chat-shell__room-list-resizer{z-index:6;cursor:col-resize;touch-action:none;width:8px;height:100%;position:absolute;top:0;right:-3px}.chat-shell__room-list-resizer:after{content:"";background:0 0;width:2px;height:100%;transition:background .15s;position:absolute;top:0;right:3px}.chat-shell__room-list-resizer:hover:after,.chat-shell__room-list-resizer.is-active:after{background:var(--color-accent-ring)}.chat-main{grid-template-rows:var(--header-height) minmax(0, 1fr) auto;background:var(--color-bg);flex:1;min-width:0;display:grid}.chat-main.is-empty{grid-template-rows:minmax(0,1fr)}.chat-main__header{justify-content:space-between;align-items:center;gap:var(--space-4);padding:0 var(--space-5);border-bottom:1px solid var(--color-border);background:color-mix(in srgb, var(--color-bg) 92%, white);display:flex}.chat-main__title{align-items:center;gap:var(--space-2);min-width:0;color:var(--color-text-muted);display:flex}.chat-main__title-text{flex-direction:column;justify-content:center;min-width:0;display:flex}.chat-main__header h1{color:var(--color-text-strong);font-size:var(--text-lg);text-overflow:ellipsis;white-space:nowrap;margin:0;overflow:hidden}.chat-main__typing{color:var(--color-accent,var(--color-text-muted));font-size:var(--text-xs,.75rem);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.chat-main__actions{align-items:center;gap:var(--space-1);display:flex}.icon-button{border-radius:var(--radius-md);width:34px;height:34px;color:var(--color-text-muted);cursor:pointer;background:0 0;border:0;place-items:center;transition:background .12s,color .12s,transform .12s;display:grid}.icon-button:hover,.icon-button.is-active{color:var(--color-text-strong);background:var(--color-bg-subtle)}.icon-button:active{transform:scale(.96)}.pinned-bar{width:100%;padding:8px var(--space-5);border:0;border-bottom:1px solid var(--color-border);background:var(--color-bg-subtle);text-align:left;cursor:pointer;align-items:center;gap:10px;transition:background .12s;display:flex;overflow:hidden}.pinned-bar:hover{background:var(--color-bg-sunken)}.pinned-bar__segments{flex-direction:column;flex:none;align-self:stretch;gap:2px;width:3px;padding:2px 0;display:flex}.pinned-bar__segment{background:var(--color-border-strong);border-radius:2px;flex:1;transition:background .15s}.pinned-bar__segment.is-active{background:var(--color-accent)}.pinned-bar__icon{color:var(--color-accent);flex:none}.pinned-bar__body{border-left:2px solid var(--color-accent);flex-direction:column;flex:1;gap:1px;min-width:0;padding-left:10px;display:flex}.pinned-bar__label{color:var(--color-accent);font-size:12px;font-weight:700;line-height:1.2}.pinned-bar__text{color:var(--color-text-muted);text-overflow:ellipsis;white-space:nowrap;font-size:13px;line-height:1.2;overflow:hidden}.chat-main__placeholder{background:var(--color-bg);-webkit-user-select:none;user-select:none;flex:1;justify-content:center;align-items:center;display:flex}.modal-backdrop{z-index:1200;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#0f172a47;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.spacemodal{background:var(--color-bg);width:500px;max-width:calc(100vw - 32px);box-shadow:var(--shadow-lg,0 24px 60px #00000038);text-align:center;border-radius:22px;flex-direction:column;align-items:center;padding:48px 48px 40px;display:flex;position:relative}.spacemodal__close{border-radius:var(--radius-md);width:30px;height:30px;color:var(--color-text-faint);cursor:pointer;background:0 0;border:0;place-items:center;display:grid;position:absolute;top:14px;right:14px}.spacemodal__close:hover{color:var(--color-text-strong);background:var(--color-bg-subtle)}.spacemodal__heading{color:var(--color-text-muted);font-size:var(--text-sm);margin-bottom:20px;font-weight:600}.spacemodal__avatar{border-radius:var(--radius-pill);color:#fff;background:var(--color-accent);cursor:pointer;border:0;place-items:center;width:84px;height:84px;font-size:34px;font-weight:700;transition:filter .15s;display:grid;position:relative}.spacemodal__avatar:hover{filter:brightness(.92)}.spacemodal__avatar--static{cursor:default}.spacemodal__avatar--static:hover{filter:none}.spacemodal__avatarImg{border-radius:var(--radius-pill);object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.spacemodal__avatarCam{z-index:2;border-radius:var(--radius-pill);width:28px;height:28px;color:var(--color-text-muted);background:var(--color-bg);box-shadow:var(--shadow-sm);place-items:center;display:grid;position:absolute;bottom:-2px;right:-2px}.spacemodal__name{border:0;border-bottom:1.5px solid var(--color-border);width:100%;color:var(--color-text-strong);text-align:center;font-size:var(--text-lg);appearance:none;background:0 0;border-radius:0;outline:none;margin-top:24px;padding:10px 4px;font-weight:600;transition:border-color .15s}.spacemodal__name::placeholder{color:var(--color-text-faint);font-weight:500}.spacemodal__name:focus{border-bottom-color:var(--color-accent)}.spacemodal__search{align-items:center;gap:var(--space-2);border-radius:var(--radius-md);width:100%;height:44px;padding:0 var(--space-3);color:var(--color-text-faint);background:var(--color-bg-sunken);border:1px solid #0000;margin-top:24px;transition:border-color .15s,color .15s,background .15s;display:flex}.spacemodal__search:focus-within{border-color:var(--color-accent-ring);color:var(--color-text-muted);background:var(--color-bg)}.spacemodal__searchInput{min-width:0;color:var(--color-text);font:inherit;background:0 0;border:0;outline:0;flex:1}.spacemodal__searchInput::placeholder{color:var(--color-text-faint)}.spacemodal__toggle{border-radius:var(--radius-pill);background:var(--color-bg-sunken,var(--color-bg-subtle));gap:2px;margin-top:28px;padding:4px;display:inline-flex}.spacemodal__toggle button{border-radius:var(--radius-pill);color:var(--color-text-muted);font-size:var(--text-md);cursor:pointer;background:0 0;border:0;padding:9px 24px;font-weight:600;transition:color .14s;position:relative}.spacemodal__toggle button.is-active{color:var(--color-text-strong)}.seg-pill{z-index:0;border-radius:var(--radius-pill);background:var(--color-bg);box-shadow:var(--shadow-sm);position:absolute;inset:0}.seg-label{z-index:1;align-items:center;gap:6px;display:inline-flex;position:relative}.spacemodal__hint{max-width:340px;color:var(--color-text-faint);font-size:var(--text-sm);margin-top:20px;line-height:1.5}.spacemodal__userlist{flex-direction:column;gap:8px;width:100%;max-height:240px;margin-top:18px;display:flex;overflow:auto}.spacemodal__empty{border-radius:var(--radius-md);color:var(--color-text-muted);background:var(--color-bg-sunken);font-size:var(--text-sm);text-align:center;padding:14px 12px}.spacemodal__user{border:1px solid var(--color-border);border-radius:var(--radius-md);width:100%;color:var(--color-text);background:var(--color-bg);text-align:left;cursor:pointer;align-items:center;gap:12px;padding:10px 12px;transition:border-color .14s,background .14s,transform .14s,box-shadow .14s;display:flex}.spacemodal__user:hover{background:var(--color-bg-subtle);transform:translateY(-1px)}.spacemodal__user.is-active{border-color:var(--color-accent);background:var(--color-accent-subtle);box-shadow:var(--shadow-sm)}.spacemodal__userAvatar{border-radius:var(--radius-md);width:38px;height:38px;color:var(--color-text-onAccent);font-size:var(--text-sm);flex:0 0 38px;place-items:center;font-weight:700;display:grid}.spacemodal__userBody{gap:2px;min-width:0;display:grid}.spacemodal__userBody strong,.spacemodal__userBody span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.spacemodal__userBody strong{color:var(--color-text-strong);font-size:var(--text-sm)}.spacemodal__userBody span{color:var(--color-text-muted);font-size:var(--text-xs)}.spacemodal__create{border-radius:var(--radius-md);color:#fff;background:var(--color-accent);width:100%;height:52px;font-size:var(--text-md);cursor:pointer;border:0;margin-top:30px;font-weight:600;transition:opacity .14s,transform .1s}.spacemodal__create:hover{transform:translateY(-1px)}.spacemodal__create:disabled{opacity:.4;pointer-events:none}.spacemodal__addRow{gap:8px;width:100%;margin-top:16px;display:flex}.spacemodal__add{border:1px solid var(--color-border);border-radius:var(--radius-md);min-width:0;height:44px;color:var(--color-text-strong);background:var(--color-bg-subtle);font-size:var(--text-sm);cursor:pointer;flex:1;justify-content:center;align-items:center;gap:6px;font-weight:600;transition:background .14s,transform .1s;display:inline-flex}.spacemodal__add:hover{background:var(--color-bg-hover)}.spacemodal__add:disabled{opacity:.4;pointer-events:none}.spacemodal__chips{flex-wrap:wrap;gap:8px;width:100%;margin-top:16px;display:flex}.spacemodal__chip{border-radius:var(--radius-pill);color:var(--color-text-strong);background:var(--color-accent-subtle);font:inherit;font-size:var(--text-sm);border:0;align-items:center;gap:6px;padding:6px 12px;font-weight:600;display:inline-flex}.spacemodal__chip--btn{cursor:pointer;transition:background .14s,transform .1s}.spacemodal__chip--btn:hover{background:var(--color-accent-ring);transform:translateY(-1px)}.spacemodal__back{border-radius:var(--radius-sm);color:var(--color-text-muted);font:inherit;font-size:var(--text-sm);cursor:pointer;background:0 0;border:0;align-self:flex-start;align-items:center;gap:4px;margin-bottom:4px;padding:4px 6px;font-weight:600;transition:color .14s,background .14s;display:inline-flex}.spacemodal__back:hover{color:var(--color-text-strong);background:var(--color-bg-subtle)}.right-panel{background:var(--color-bg-subtle);flex-shrink:0;overflow:hidden}.right-panel__inner{border-left:1px solid var(--color-border);width:320px;height:100%;padding:var(--space-5);flex-direction:column;align-items:stretch;display:flex;overflow:hidden}.right-panel__content{align-items:center;gap:var(--space-3);flex-direction:column;min-width:0;height:100%;display:flex}.right-panel__avatar{border-radius:var(--radius-pill);width:80px;height:80px;color:var(--color-text-onAccent);font-size:var(--text-xl);place-items:center;font-weight:800;display:grid;position:relative}.right-panel__avatar-img,.right-panel__member-avatar-img{object-fit:cover;border-radius:inherit;width:100%;height:100%;position:absolute;inset:0}.right-panel__avatar-fallback,.right-panel__member-avatar-fallback{z-index:1;position:relative}.right-panel__name{max-width:100%;color:var(--color-text-strong);font-size:var(--text-lg);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.right-panel__sub{color:var(--color-text-muted);font-size:var(--text-sm)}.right-panel__topic{margin-top:var(--space-1);border-radius:var(--radius-md);padding:var(--space-3);color:var(--color-text);background:var(--color-bg);font-size:var(--text-sm);white-space:pre-wrap;word-break:break-word;align-self:stretch;line-height:1.45}.right-panel__rows{margin-top:var(--space-2);flex-direction:column;align-self:stretch;gap:2px;display:flex}.right-panel__row{align-items:center;gap:var(--space-3);border-radius:var(--radius-md);width:100%;padding:var(--space-3);color:var(--color-text);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:22px minmax(0,1fr) auto auto;transition:background .12s,color .12s;display:grid}.right-panel__row:hover{background:var(--color-bg)}.right-panel__row span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.right-panel__row em,.right-panel__row svg:last-child{color:var(--color-text-faint);font-size:var(--text-sm);font-style:normal}.right-panel__section-head{align-items:center;gap:var(--space-3);width:100%;margin-top:var(--space-2);display:flex}.right-panel__back{border-radius:var(--radius-pill);background:var(--color-bg);width:32px;height:32px;color:var(--color-text);cursor:pointer;border:0;place-items:center;transition:background .12s,transform .12s;display:grid}.right-panel__back:hover{background:var(--color-bg-hover);transform:translate(-1px)}.right-panel__section-title{color:var(--color-text-strong);font-size:var(--text-base)}.right-panel__list,.right-panel__cards{gap:var(--space-2);flex-direction:column;width:100%;min-height:0;padding-right:4px;display:flex;overflow:auto}.right-panel__member,.right-panel__media,.right-panel__card,.right-panel__empty{border-radius:var(--radius-md);background:var(--color-bg);width:100%}.right-panel__member{align-items:center;gap:var(--space-3);padding:var(--space-3);grid-template-columns:40px minmax(0,1fr);display:grid}.right-panel__member-avatar{border-radius:var(--radius-pill);width:40px;height:40px;color:var(--color-text-onAccent);place-items:center;font-weight:700;display:grid;position:relative}.right-panel__member-body{flex-direction:column;gap:2px;min-width:0;display:flex}.right-panel__member-body strong,.right-panel__member-body span,.right-panel__media-body strong,.right-panel__media-body span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.right-panel__member-body strong,.right-panel__media-body strong,.right-panel__card strong{color:var(--color-text-strong);font-size:var(--text-sm)}.right-panel__member-body span,.right-panel__media-body span,.right-panel__card span,.right-panel__empty span{color:var(--color-text-muted);font-size:var(--text-xs)}.right-panel__media{align-items:center;gap:var(--space-3);padding:var(--space-3);cursor:pointer;text-align:left;border:0;grid-template-columns:56px minmax(0,1fr);transition:background .12s;display:grid}.right-panel__media:hover{background:var(--color-bg-hover)}.right-panel__media-preview{border-radius:var(--radius-md);background:var(--color-bg-sunken);width:56px;height:56px;color:var(--color-text-faint);place-items:center;font-size:11px;font-weight:700;display:grid;overflow:hidden}.right-panel__media-preview img{object-fit:cover;width:100%;height:100%}.right-panel__media-body{flex-direction:column;gap:3px;min-width:0;display:flex}.right-panel__cards{margin-top:var(--space-1)}.right-panel__card,.right-panel__empty{padding:var(--space-3)}.right-panel__card{justify-content:space-between;align-items:baseline;gap:var(--space-3);display:flex}.right-panel__empty{align-items:center;gap:var(--space-3);display:flex}.lightbox{z-index:60;padding:var(--space-8);background:#000000bd;place-items:center;animation:.14s cubic-bezier(.2,0,0,1) both lightbox-fade;display:grid;position:fixed;inset:0}.lightbox__image{border-radius:var(--radius-md);object-fit:contain;max-width:min(1100px,94vw);max-height:90vh;box-shadow:var(--shadow-lg);animation:.18s cubic-bezier(.2,0,0,1) both lightbox-pop}@keyframes lightbox-fade{0%{opacity:0}to{opacity:1}}@keyframes lightbox-pop{0%{opacity:0;transform:translateY(8px)scale(.96)}to{opacity:1;transform:none}}.lightbox__close{top:var(--space-5);right:var(--space-5);border-radius:var(--radius-pill);color:#fff;cursor:pointer;background:#ffffff29;border:0;place-items:center;width:40px;height:40px;display:grid;position:fixed}.lightbox__close:hover{background:#ffffff3d}.auth-screen{min-height:100vh;padding:var(--space-8);background:var(--color-bg-subtle);place-items:center;display:grid}.auth-card{gap:var(--space-4);width:min(100%,390px);padding:var(--space-8);border:1px solid var(--color-border);border-radius:var(--radius-xl);background:var(--color-bg);box-shadow:var(--shadow-lg);display:grid}.auth-card__mark{border-radius:var(--radius-lg);width:52px;height:52px;color:var(--color-text-onAccent);background:var(--color-rail-bg);font-size:var(--text-xl);place-items:center;font-weight:700;display:grid}.auth-card h1{color:var(--color-text-strong);margin:0;font-size:28px;line-height:1.1}.auth-card p{margin:-8px 0 var(--space-2);color:var(--color-text-muted);font-size:var(--text-base)}.field{gap:var(--space-2);color:var(--color-text-muted);font-size:var(--text-sm);display:grid}.field input{border:1px solid var(--color-border);border-radius:var(--radius-md);width:100%;height:42px;padding:0 var(--space-3);color:var(--color-text);background:var(--color-bg-sunken);outline:none}.field input:focus{border-color:var(--color-accent);box-shadow:0 0 0 3px var(--color-accent-subtle)}.auth-card__sso{gap:var(--space-3);display:grid}.auth-card__submit{justify-content:center;align-items:center;gap:var(--space-2);border-radius:var(--radius-md);height:44px;color:var(--color-text-onAccent);background:var(--color-accent);cursor:pointer;border:0;display:inline-flex}.auth-card__submit:hover{background:var(--color-accent-hover)}.auth-card__submit:disabled{cursor:wait;opacity:.72}.auth-card__submit--sso{background:var(--color-rail-bg)}.auth-card__switch{color:var(--color-text-muted);cursor:pointer;background:0 0;border:0;justify-self:start;padding:0}.auth-card__switch:hover{color:var(--color-text)}.auth-card__error{padding:var(--space-3);border-radius:var(--radius-md);color:var(--color-danger);font-size:var(--text-sm);background:#e5484d1a}:root{--color-bg:#fdfcfa;--color-bg-subtle:#f5f3ee;--color-bg-sunken:#ece9e2;--color-bg-hover:#2b2e340d;--color-bg-active:#2b2e3414;--color-border:#e6e2d9;--color-border-strong:#d6d1c6;--color-text:#2b2e34;--color-text-strong:#1c1f24;--color-text-muted:#6c6f76;--color-text-faint:#9a9ca2;--color-text-onAccent:#fdfcfa;--color-accent:#33373e;--color-accent-hover:#3f444c;--color-accent-pressed:#292c32;--color-accent-subtle:#33373e24;--color-accent-ring:#33373e61;--color-rail-bg:#25282e;--color-rail-item:#ffffff0f;--color-rail-item-hover:#ffffff1f;--color-rail-text:#c9cbcf;--color-rail-indicator:#f5f3ee;--color-online:#34c759;--color-danger:#e5484d;--radius-sm:6px;--radius-md:10px;--radius-lg:14px;--radius-xl:18px;--radius-pill:999px;--shadow-sm:0 1px 2px #1c1f240f;--shadow-md:0 2px 10px #1c1f2414;--shadow-lg:0 8px 30px #1c1f241f;--shadow-pop:0 10px 40px #1c1f2429;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--font-sans:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--text-xs:12px;--text-sm:13px;--text-base:14px;--text-md:15px;--text-lg:17px;--text-xl:20px;--rail-width:72px;--roomlist-width:304px;--rightpanel-width:320px;--header-height:60px;color:var(--color-text);background:var(--color-bg-subtle);font-family:var(--font-sans)}*{box-sizing:border-box}body{text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;min-width:320px;min-height:100vh;margin:0}button,input,textarea{font:inherit}button{color:inherit}.app-shell{min-height:100vh;padding:var(--space-8);place-items:center;display:grid}.welcome{text-align:center;justify-items:center;gap:12px;display:grid}.welcome__mark{border-radius:var(--radius-xl);width:64px;height:64px;color:var(--color-text-onAccent);background:var(--color-rail-bg);box-shadow:var(--shadow-lg);place-items:center;display:grid}.welcome h1{color:var(--color-text-strong);margin:0;font-size:32px;line-height:1.1}.welcome p{color:var(--color-text-muted);margin:0}.welcome__button{border-radius:var(--radius-md);height:38px;padding:0 var(--space-4);color:var(--color-text-onAccent);background:var(--color-accent);cursor:pointer;border:0}
