.pwa-dock{left:50%;top:calc(8px + env(safe-area-inset-top,0px));z-index:1000;pointer-events:none;flex-direction:column;align-items:center;gap:8px;width:max-content;max-width:calc(100vw - 24px);display:flex;position:fixed;transform:translate(-50%)}.pwa-dock>*,.pwa-toast{pointer-events:auto}.pwa-toast{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);color:var(--text);align-items:center;gap:12px;padding:8px 8px 8px 14px;font-size:.92rem;line-height:1.35;display:flex;box-shadow:0 6px 24px #0000002e}.pwa-toast .btn{flex:none}.pwa-close{color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:6px;flex:none;padding:4px 8px;font-size:1.3rem;line-height:1}.pwa-close:hover,.pwa-close:focus-visible{color:var(--text);background:var(--bg)}.pwa-offline{background:var(--warn-soft);color:var(--warn);border:1px solid var(--warn);border-radius:999px;padding:4px 12px;font-size:.85rem;font-weight:600}.pwa-levels{border:0;gap:8px;margin:12px 0 0;padding:0;display:grid}.pwa-levels legend{margin-bottom:6px;padding:0;font-weight:600}.update-toast{align-items:flex-start;width:min(460px,100vw - 24px)}.update-toast .update-icon{color:var(--accent);flex:none;margin-top:2px}.update-toast[data-phase=ready] .update-icon{color:var(--ok)}.update-toast[data-phase=error] .update-icon{color:var(--bad)}.update-body{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.update-title{color:var(--text-strong);font-weight:600}.update-detail{color:var(--muted);font-variant-numeric:tabular-nums;overflow-wrap:anywhere;font-size:.86rem}.update-actions{flex:none;align-self:center;align-items:center;gap:6px;display:flex}.update-bar{background:var(--surface-2);border-radius:999px;height:6px;margin-top:4px;display:block;position:relative;overflow:hidden}.update-bar-fill{border-radius:inherit;background:var(--accent);width:0;height:100%;transition:width .25s ease-out;display:block}[data-phase=ready] .update-bar-fill{background:var(--ok-fill)}.update-bar.indeterminate .update-bar-fill{width:35%;animation:1.2s ease-in-out infinite update-bar-slide}@keyframes update-bar-slide{0%{transform:translate(-100%)}to{transform:translate(290%)}}@media (prefers-reduced-motion:reduce){.update-bar-fill{transition:none}.update-bar.indeterminate .update-bar-fill{opacity:.45;width:100%;animation:none}}.update-dismiss{width:30px;height:30px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:8px;flex:none;justify-content:center;align-items:center;padding:0;display:inline-flex}.update-dismiss:hover,.update-dismiss:focus-visible{color:var(--text);background:var(--hover)}.update-toast.compact{opacity:.94;align-items:center;gap:8px;width:auto;padding:4px 4px 4px 10px;font-size:.84rem}.update-toast.compact .update-icon{margin-top:0}.update-compact-text{white-space:nowrap;font-variant-numeric:tabular-nums}.update-toast.compact .update-bar{width:90px;height:4px;margin-top:0}.update-row{flex-direction:column;gap:3px;max-width:520px;display:flex}.update-row .update-title{font-size:.92rem}.update-row[data-phase=error] .update-title{color:var(--bad)}.username-input{border:1px solid var(--border);background:var(--surface-2);box-sizing:border-box;border-radius:10px;outline:2px solid #0000;align-items:center;min-height:42px;display:flex}.username-input:focus-within{outline-color:var(--focus)}.username-input.ok{outline-color:var(--ok-fill)}.username-input.bad{outline-color:var(--bad)}.username-at{color:var(--muted);-webkit-user-select:none;user-select:none;flex:none;padding-left:12px;font-weight:600}.field .username-input input,.field .username-input input:focus{background:0 0;border:0;border-radius:0;outline:none;flex:1;min-width:0;min-height:0;padding:9px 12px 9px 2px}.username-action{flex:none;align-items:center;padding-right:4px;display:flex}.username-action .btn{min-height:32px;padding:4px 12px;font-size:.85rem}.username-status span{align-items:center;gap:5px;display:inline-flex}.username-status svg{flex:none}.username-suggestions{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.username-chip{font:inherit;border:1px solid var(--border);background:var(--surface);color:var(--text);cursor:pointer;border-radius:999px;padding:3px 10px;font-size:.85rem}.username-chip:hover:not(:disabled){background:var(--accent-soft);border-color:var(--accent)}.username-chip:focus-visible{outline:2px solid var(--focus)}.pe2-handle form{display:grid}.pe2-handle .username-field{gap:8px;width:100%}.pe2-handle .username-field>label{margin:0;font-weight:700}.username-prompt .dialog{max-width:460px}.username-prompt form{gap:14px;margin-top:12px;display:grid}.username-prompt .row{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.optional-tag{text-transform:none;letter-spacing:0;font-weight:500}.plus-badge{background:var(--accent-soft);color:var(--link);white-space:nowrap;vertical-align:middle;border-radius:6px;align-items:center;gap:4px;padding:1px 7px 1px 5px;font-size:11.5px;font-weight:650;line-height:18px;display:inline-flex}.plus-badge.compact{padding:1px 4px}.plus-mark{background:var(--accent);width:18px;height:18px;color:var(--accent-text);pointer-events:none;border-radius:6px;place-items:center;display:inline-grid;position:absolute;top:4px;right:4px}.plus-locked{position:relative}.plus-locked>:not(.plus-mark){opacity:.62}.plus-notice{border-radius:var(--radius);border:1px solid var(--divider-strong);background:var(--accent-soft);color:var(--text);flex-wrap:wrap;align-items:center;gap:6px 10px;margin:8px 0;padding:10px 12px;font-size:13.5px;display:flex}.plus-notice-text{flex:220px}.plus-notice-link{color:var(--link);white-space:nowrap;font-weight:600}.plan-card{border-radius:var(--shape-radius);border:1px solid var(--divider-strong);background:linear-gradient(135deg, var(--accent-soft), transparent 70%);gap:12px;padding:18px;display:grid}.plan-card-head{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.plan-card-head h3{margin:0;font-size:18px}.plan-current{background:var(--surface);color:var(--muted);border-radius:999px;padding:2px 8px;font-size:12px;font-weight:650}.plan-current.plus{background:var(--accent);color:var(--accent-text)}.plan-perks,.plan-free{gap:6px;margin:0;padding:0;list-style:none;display:grid}.plan-perks li,.plan-free li{align-items:flex-start;gap:8px;display:flex}.plan-perks li svg,.plan-free li svg{color:var(--accent);flex:none;margin-top:2px}.plan-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.plan-confirm{border-radius:var(--radius);background:var(--surface);gap:10px;padding:12px;display:grid}.channel-tree{position:relative}.channel-tree.is-dragging,.channel-tree.is-dragging *{-webkit-user-select:none;user-select:none;cursor:grabbing!important}.cat-head{border-radius:4px;padding:0 4px 0 0;position:relative}.cat-toggle{min-width:0;min-height:28px;color:inherit;font:inherit;text-transform:inherit;letter-spacing:inherit;text-align:left;cursor:pointer;background:0 0;border:0;flex:1;align-items:center;gap:2px;padding:0 0 0 2px;display:flex}.cat-toggle:hover,.cat-toggle:focus-visible{color:var(--text)}.cat-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.cat-chevron{flex:none;transition:transform .2s}.is-collapsed .cat-chevron,.rot-90{transform:rotate(-90deg)}.cat-actions,.reorder-btns{flex:none;align-items:center;gap:2px;display:inline-flex}.cat-more{opacity:0}.cat-head:hover .cat-more,.cat-more:focus-visible,.is-mobile .cat-more{opacity:1}.cat-row-wrap{opacity:1;grid-template-rows:1fr;transition:grid-template-rows .2s,opacity .2s,visibility;display:grid}.cat-row-wrap.is-hidden{opacity:0;visibility:hidden;grid-template-rows:0fr;transition:grid-template-rows .2s,opacity .15s,visibility 0s .2s}.cat-row-inner{min-height:0;overflow:hidden}.cat-empty{margin:2px 8px 6px 26px}.sub-group{--sub-block:color-mix(in srgb, var(--text-strong) 5%, var(--sidebar));background:var(--sub-block);border-radius:10px;margin:4px 0 4px 12px;padding:2px 4px 4px;overflow:clip}.sub-wrap>.cat-row-inner{padding:2px 0}.category.sub-head,.category.sub-head:first-child{margin:0;padding:0 2px 0 4px;font-size:.76rem}.sub-group .cat-toggle{min-height:26px}.sub-group .channel-row{margin:1px 0}.sub-group .cat-empty{margin:0 6px 4px 20px}.sub-group.is-collapsed .cat-chevron{transform:rotate(-90deg)}.sub-group:not(.is-collapsed) .cat-chevron{transform:none}.sub-group.drop-before{box-shadow:0 -2px 0 var(--accent)}.sub-group.drop-after{box-shadow:0 2px 0 var(--accent)}.sub-group.drop-into>.cat-head{background:color-mix(in srgb, var(--accent) 22%, transparent);color:var(--text-strong)}.cat-name,.channel-tree .channel-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.cat-picker{border:1px solid var(--border,transparent);background:var(--surface);border-radius:10px;gap:2px;max-height:220px;padding:4px;display:grid;overflow-y:auto}.field-label{color:var(--text-strong);font-size:.86rem;font-weight:600}.cat-option{min-height:36px;color:var(--text);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;align-items:center;gap:8px;padding:6px 10px;display:flex}.cat-option:hover{background:var(--hover)}.cat-option.checked{background:color-mix(in srgb, var(--accent) 18%, transparent);color:var(--text-strong);font-weight:600}.cat-option-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.cat-option.depth-1,.move-to.depth-1{padding-left:28px}@media (prefers-reduced-motion:reduce){.cat-chevron,.cat-row-wrap,.cat-row-wrap.is-hidden{transition:none}}.channel-row.is-dragged,.channel-group.is-dragged{opacity:.4}.channel-row.drop-before{box-shadow:inset 0 2px 0 var(--accent)}.channel-row.drop-after{box-shadow:inset 0 -2px 0 var(--accent)}.channel-group.drop-before{box-shadow:0 -2px 0 var(--accent)}.channel-group.drop-after{box-shadow:0 2px 0 var(--accent)}.channel-group.drop-into>.cat-head{background:color-mix(in srgb, var(--accent) 22%, transparent);color:var(--text-strong)}.tree-ghost{z-index:1000;pointer-events:none;background:var(--floating);max-width:220px;color:var(--text-strong);white-space:nowrap;text-overflow:ellipsis;border-radius:6px;align-items:center;gap:6px;padding:6px 10px;font-size:.875rem;font-weight:600;display:inline-flex;position:fixed;overflow:hidden;box-shadow:0 8px 24px #00000059}.reorder-bar{z-index:2;background:var(--panel);color:var(--text);border-radius:8px;align-items:center;gap:8px;margin:8px 0 4px;padding:8px 10px;font-size:.8125rem;display:flex;position:sticky;top:0}.reorder-bar span{flex:1}.reorder-bar .inline-icon{vertical-align:-2px}.is-reordering .channel-row{outline:1px dashed color-mix(in srgb, var(--muted) 45%, transparent);outline-offset:-1px}.is-reordering .reorder-btns .icon-btn{width:36px;height:36px}.btn-small{padding:4px 10px;font-size:.8125rem}.move-to-list{gap:4px;margin:8px 0 12px;padding:0;list-style:none;display:grid}.move-to{border:1px solid var(--border,transparent);background:var(--surface);width:100%;min-height:44px;color:var(--text);font:inherit;text-align:left;cursor:pointer;border-radius:8px;align-items:center;gap:8px;padding:8px 12px;display:flex}.move-to:hover:not(:disabled){background:var(--hover)}.move-to:disabled{opacity:.6;cursor:default}.forum{flex-direction:column;gap:12px;min-height:100%;padding:12px 16px 24px;display:flex}.forum.forum-thread{flex:1;gap:0;min-height:0;padding:0}.forum-toolbar{flex-direction:column;gap:10px;width:100%;max-width:980px;margin:0 auto;display:flex}.forum-toolbar-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.forum-toolbar-row .btn{align-items:center;gap:6px;display:inline-flex}.forum-search{border-radius:var(--radius);background:var(--surface-2);min-width:0;min-height:38px;color:var(--muted);flex:220px;align-items:center;gap:8px;padding:0 12px;display:flex}.forum-search input{min-width:0;font:inherit;color:var(--text);background:0 0;border:0;flex:1;padding:8px 0}.forum-search:focus-within{outline:2px solid var(--focus)}.forum-search input:focus{outline:none}.forum-sort{background:var(--surface-2);border-radius:999px;padding:3px;display:inline-flex}.forum-sort button{color:var(--interactive);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:999px;padding:6px 14px;font-size:.9em}.forum-sort button.on{background:var(--floating);color:var(--text-strong);box-shadow:0 1px 3px #1e1b4b1f}.forum-manage-tags{margin-left:auto}.forum-tag-filter{flex-wrap:wrap;gap:6px;display:flex}.forum-tag{text-overflow:ellipsis;white-space:nowrap;border:1px solid var(--border);background:var(--bg);max-width:220px;color:var(--interactive);font:inherit;cursor:pointer;border-radius:8px;align-items:center;padding:4px 10px;font-size:.85em;line-height:1.2;display:inline-flex;overflow:hidden}.forum-tag.on{border-color:var(--accent);background:var(--accent-soft);color:var(--text-strong)}.forum-tag.static{cursor:default;background:var(--surface-2);border-color:#0000;padding:2px 8px}.forum-list{flex-direction:column;gap:8px;width:100%;max-width:980px;margin:0 auto;display:flex}.forum-card{text-align:left;border:1px solid var(--divider);background:var(--surface);width:100%;color:var(--text);font:inherit;border-radius:var(--shape-radius);cursor:pointer;align-items:stretch;gap:14px;padding:12px 14px;display:flex}.forum-card:hover{background:color-mix(in srgb, var(--surface) 80%, var(--accent) 6%)}.forum-card:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.forum-card.pinned{border-color:color-mix(in srgb, var(--accent) 45%, transparent)}.forum-card-main{flex-direction:column;flex:1;gap:6px;min-width:0;display:flex}.forum-card-title-row{align-items:center;gap:6px;min-width:0;display:flex}.forum-card-title{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--text-strong);font-size:1.05em;font-weight:500;overflow:hidden}.forum-card.unread .forum-card-title{font-weight:700}.forum-unread-dot{background:var(--accent);border-radius:50%;flex:none;width:8px;height:8px}.forum-badge{color:var(--muted);background:var(--surface-2);border-radius:6px;flex:none;align-items:center;gap:4px;padding:2px 7px;font-size:.78em;font-weight:600;display:inline-flex}.forum-card-tags{flex-wrap:wrap;gap:4px;display:flex}.forum-card-excerpt{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.forum-card-meta{color:var(--muted);flex-wrap:wrap;align-items:center;gap:6px;font-size:.85em;display:flex}.forum-card-author{color:var(--interactive);text-overflow:ellipsis;white-space:nowrap;max-width:180px;font-weight:500;overflow:hidden}.forum-mentions{background:var(--danger-bg);color:var(--danger-text);border-radius:999px;padding:1px 7px;font-weight:700}.forum-card-thumb{background:var(--surface-2);width:76px;height:76px;color:var(--muted);border-radius:12px;flex:none;align-self:center;place-items:center;display:grid;overflow:hidden}.forum-card-thumb img{object-fit:cover;width:100%;height:100%}.forum-note{text-align:center}.forum-empty{text-align:center;color:var(--muted);flex-direction:column;align-items:center;gap:4px;padding:48px 16px;display:flex}.forum-empty p{margin:0}.forum-empty strong{color:var(--text-strong)}.forum-more{align-self:center}.forum-sentinel{justify-content:center;display:flex}.forum-thread-head{border-bottom:1px solid var(--divider);background:var(--bg);flex:none;padding:10px 16px 12px}.forum-thread-top{align-items:center;gap:8px;display:flex}.forum-back{align-items:center;gap:6px;padding-left:6px;display:inline-flex}.forum-thread-title{color:var(--text-strong);overflow-wrap:anywhere;margin:6px 0;font-size:1.25em;line-height:1.3}.forum-thread-meta{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.forum-locked-note{background:var(--warn-soft);color:var(--warn);border-radius:8px;align-items:center;gap:6px;margin:8px 0 0;padding:6px 10px;display:flex}.forum-thread-body{flex-direction:column;flex:1;min-height:0;display:flex}.forum-post-missing{padding:16px}.forum-dialog{width:min(560px,100vw - 32px)}.forum-dialog textarea{width:100%;font:inherit;border:1px solid var(--border);background:var(--bg);color:var(--text);resize:vertical;border-radius:8px;padding:10px 12px}.forum-tag-pick{border:0;margin:0;padding:0}.forum-tag-pick legend{margin-bottom:6px;padding:0;font-weight:600}.forum-add-image{align-self:flex-start;align-items:center;gap:6px;display:inline-flex}.forum-tag-rows{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.forum-tag-rows li{align-items:center;gap:6px;display:flex}.forum-tag-rows input{min-width:0;font:inherit;border:1px solid var(--border);background:var(--bg);color:var(--text);border-radius:8px;flex:1;padding:8px 10px}@media (width<=700px){.forum{padding:10px 10px 20px}.forum-card{gap:10px;padding:10px 12px}.forum-card-thumb{width:60px;height:60px}.forum-manage-tags{margin-left:0}.forum-tag-filter{scrollbar-width:none;flex-wrap:nowrap;padding-bottom:2px;overflow-x:auto}.forum-tag-filter .forum-tag{flex:none}.forum-thread-head{padding:8px 12px 10px}.forum-dialog{width:100vw;max-height:100dvh}}.server-sheet-backdrop{z-index:55;background:var(--backdrop,#00000080);animation:.18s ss-fade;position:fixed;inset:0}.server-sheet{--ss-ring:var(--popover);max-height:min(88dvh, calc(var(--app-height,100dvh) - 24px));background:var(--popover);color:var(--text);box-shadow:var(--shadow);overscroll-behavior:contain;-webkit-user-select:none;user-select:none;border-radius:20px 20px 0 0;flex-direction:column;transition:transform .18s;animation:.24s cubic-bezier(.2,.8,.25,1) ss-up;display:flex;position:fixed;bottom:0;left:0;right:0}.ss-grab{touch-action:none;cursor:grab;flex:none;padding:18px 14px 4px;position:relative}.ss-grip{background:color-mix(in srgb, var(--text) 35%, transparent);z-index:2;border-radius:3px;width:40px;height:5px;margin-left:-20px;position:absolute;top:7px;left:50%}.ss-banner .space-banner{aspect-ratio:auto;border:0;border-radius:16px;height:104px;max-height:none}.ss-ident{align-items:center;gap:12px;min-width:0;padding:4px 2px 6px;display:flex}.ss-ident.over-banner{align-items:flex-end;margin-top:-30px;padding-left:10px}.ss-icon{background:var(--accent);width:60px;height:60px;color:var(--accent-text,#fff);box-shadow:0 0 0 4px var(--ss-ring);border-radius:18px;flex:none;font-size:1.15rem;font-weight:700}.ss-icon.has-pic{background:var(--surface-2)}.ss-titles{gap:2px;min-width:0;display:grid}.ss-name{color:var(--text-strong);text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:1.22rem;line-height:1.25;overflow:hidden}.ss-counts{color:var(--muted);align-items:center;gap:6px;margin:0;font-size:.85rem;display:flex}.ss-dot{border-radius:50%;flex:none;width:8px;height:8px}.ss-dot.online{background:var(--status-online)}.ss-scroll{overscroll-behavior:contain;min-height:0;padding:8px 14px calc(14px + var(--safe-bottom,env(safe-area-inset-bottom)));gap:10px;display:grid;overflow-y:auto}.ss-scroll .space-menu-description{border:0;margin:0;padding:0 4px}.ss-tiles{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.ss-tiles.n1{grid-template-columns:minmax(0,1fr)}.ss-tiles.n1 .ss-tile{grid-template-rows:auto;grid-auto-flow:column;justify-content:start;align-items:center;gap:12px;min-height:60px;padding:10px 12px;font-size:.95rem}.ss-tiles.n2{grid-template-columns:repeat(2,minmax(0,1fr))}.ss-tile{border:1px solid var(--divider-strong);background:var(--surface-2);min-height:76px;color:var(--text);font:inherit;cursor:pointer;border-radius:16px;align-content:center;justify-items:center;gap:6px;padding:10px 6px;font-size:.82rem;font-weight:600;text-decoration:none;display:grid}.ss-tile-icon{background:color-mix(in srgb, var(--accent) 16%, transparent);width:38px;height:38px;color:var(--link);border-radius:12px;place-items:center;display:grid}.ss-tile-label{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.ss-tile:hover,.ss-tile:active{background:var(--hover)}.ss-block{background:color-mix(in srgb, var(--surface-2) 80%, transparent);border-radius:16px;padding:4px;display:grid}.ss-row{width:100%;min-height:48px;color:var(--text);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:12px;align-items:center;gap:12px;padding:8px 12px;font-size:.95rem;display:flex}.ss-row+.ss-row{box-shadow:0 -1px 0 color-mix(in srgb, var(--divider-strong) 70%, transparent)}.ss-row>svg{color:var(--interactive);flex:none}.ss-row:hover,.ss-row:active{background:var(--hover)}.ss-row-text{flex:1;gap:1px;min-width:0;display:grid}.ss-row-label,.ss-row-hint{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.ss-row-label{font-weight:600}.ss-row-hint{color:var(--muted);font-size:.8rem}.ss-row.danger,.ss-row.danger>svg{color:var(--bad)}.ss-row.danger:hover,.ss-row.danger:active{background:var(--bad-soft)}.server-sheet :is(.ss-tile,.ss-row):focus-visible{box-shadow:inset 0 0 0 2px var(--focus);outline:none}.ss-switch{background:color-mix(in srgb, var(--muted) 45%, transparent);border-radius:12px;flex:none;width:42px;height:24px;transition:background .15s;position:relative}.ss-switch-knob{background:#fff;border-radius:50%;width:18px;height:18px;transition:transform .15s;position:absolute;top:3px;left:3px;box-shadow:0 1px 2px #0000004d}.ss-switch.on{background:var(--accent)}.ss-switch.on .ss-switch-knob{transform:translate(18px)}.space-menu [role=menuitemcheckbox]{justify-content:space-between;align-items:center;gap:8px;display:flex}.space-menu .ss-switch{width:34px;height:20px}.space-menu .ss-switch-knob{width:14px;height:14px}.space-menu .ss-switch.on .ss-switch-knob{transform:translate(14px)}.space-menu .ss-row-hint{font-size:.78rem;font-weight:400;display:block}.space-menu-sep{background:var(--divider-strong);height:1px;margin:3px 6px}@keyframes ss-up{0%{transform:translateY(100%)}}@keyframes ss-fade{0%{opacity:0}}@media (prefers-reduced-motion:reduce){.server-sheet,.server-sheet-backdrop{animation:none}.server-sheet,.ss-switch,.ss-switch-knob{transition:none}}.create-channel{width:min(500px,100vw - 32px)}.create-channel h2{margin-bottom:2px}.create-channel-place{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin:0 0 12px;overflow:hidden}.create-channel-place em{color:var(--text);font-style:normal;font-weight:600}.create-channel-label{color:var(--muted);text-transform:uppercase;letter-spacing:.03em;font-size:.85em;font-weight:600}.create-channel-types{flex-direction:column;gap:6px;display:flex}.create-channel-type{text-align:left;border:1px solid var(--divider-strong);border-radius:var(--radius);background:var(--surface);width:100%;color:var(--text);font:inherit;cursor:pointer;align-items:center;gap:12px;padding:10px 12px;display:flex}.create-channel-type:hover{background:var(--hover)}.create-channel-type.on{border-color:var(--accent);background:var(--accent-soft)}.create-channel-type:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.create-channel-type-icon{background:var(--surface-2);width:38px;height:38px;color:var(--interactive);border-radius:12px;flex:none;place-items:center;display:grid}.create-channel-type.on .create-channel-type-icon{background:var(--accent);color:var(--accent-text)}.create-channel-type-body{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.create-channel-type-name{color:var(--text-strong);font-weight:600}.create-channel-type-text{color:var(--muted);font-size:.86em}.create-channel-radio{border:2px solid var(--muted);border-radius:50%;flex:none;width:18px;height:18px}.create-channel-type.on .create-channel-radio{border-color:var(--accent);background:radial-gradient(circle, var(--accent) 0 4px, transparent 5px)}.create-channel-name{display:flex;position:relative}.create-channel-name-icon{color:var(--muted);pointer-events:none;display:grid;position:absolute;top:50%;left:12px;transform:translateY(-50%)}.field .create-channel-name input{flex:1;min-width:0;padding-left:38px}.create-channel-private{border-radius:var(--radius);background:var(--surface);cursor:pointer;align-items:center;gap:12px;padding:10px 12px;display:flex;position:relative}.create-channel-private-icon{color:var(--interactive);flex:none;display:grid}.create-channel-private-body{flex-direction:column;flex:1;min-width:0;display:flex}.create-channel-private-name{color:var(--text-strong);font-weight:600}.create-channel-private-text{color:var(--muted);font-size:.86em}.create-channel-switch-input{opacity:0;cursor:pointer;z-index:1;width:42px;height:24px;margin:-12px 0 0;position:absolute;top:50%;right:12px}.create-channel-private .ss-switch{pointer-events:none}.create-channel-switch-input:focus-visible+.ss-switch{outline:2px solid var(--focus);outline-offset:2px}.access-editor.lists-only{border:0;margin:0;padding:0}.create-channel-actions{justify-content:flex-end;gap:8px;margin-top:4px;display:flex}@media (width<=700px){.create-channel{width:100vw;max-height:100dvh}}.context-menu .menu-switch,.action-sheet .menu-switch{margin-left:auto}.context-menu .menu-switch{width:30px;height:18px}.context-menu .menu-switch .ss-switch-knob{width:12px;height:12px}.context-menu .menu-switch.on .ss-switch-knob{transform:translate(12px)}.context-menu button:hover .menu-switch.on,.context-menu button:focus-visible .menu-switch.on{box-shadow:0 0 0 1px #fff}.my-profile{--pd-ring:var(--popover);z-index:60;background:var(--popover);width:320px;max-height:calc(100dvh - 16px);color:var(--text);border:1px solid var(--divider-strong);box-shadow:var(--shadow);overscroll-behavior:contain;border-radius:16px;animation:.16s my-profile-in;position:fixed;overflow-y:auto}.my-profile.themed{background:linear-gradient(180deg, var(--pf-primary), var(--pf-accent));padding:4px}.my-profile.themed>.mp-head,.my-profile.themed>.mp-body{background:color-mix(in srgb, var(--popover) 88%, transparent)}.my-profile.themed>.mp-top>.pf-banner{border-radius:12px}.my-profile.themed>.mp-body{border-radius:0 0 12px 12px}.mp-top .pf-banner{opacity:1;border-radius:12px;height:72px;margin:6px 6px 0;position:relative;overflow:hidden}.mp-top .pf-banner img{object-fit:cover;width:100%;height:100%}.my-profile-backdrop{z-index:60;position:fixed;inset:0}.my-profile-backdrop.dim{background:var(--backdrop,#00000080)}.my-profile.sheet{width:auto;max-height:min(80dvh, calc(var(--app-height,100dvh) - 24px));padding-bottom:var(--safe-bottom,env(safe-area-inset-bottom));border-radius:16px 16px 0 0;animation:.22s my-profile-up;bottom:0;left:0;right:0}.my-profile .sheet-grip,.mp-flyout .sheet-grip{z-index:2}.mp-head{height:46px;position:relative}.mp-avatar{width:80px;height:80px;position:absolute;top:-40px;left:12px}.mp-avatar .profile-avatar{border:6px solid var(--popover);width:80px;height:80px;font-size:1.9rem;position:static}.mp-avatar .mp-dot{border-width:4px;width:16px;max-width:none;height:16px;max-height:none;bottom:2px;right:2px}.mp-bubble{border:1px solid var(--divider-strong);background:var(--surface);max-width:max-content;min-height:30px;color:var(--text);font:inherit;text-align:left;cursor:pointer;border-radius:10px;align-items:center;padding:5px 10px;font-size:.82rem;line-height:1.25;display:flex;position:absolute;top:6px;left:100px;right:12px}.mp-bubble:before{content:"";border-left:1px solid var(--divider-strong);border-bottom:1px solid var(--divider-strong);background:var(--surface);width:8px;height:8px;margin-top:-4px;position:absolute;top:50%;left:-5px;transform:rotate(45deg)}.mp-bubble:hover,.mp-bubble:focus-visible{border-color:var(--accent)}.mp-bubble-text{overflow-wrap:anywhere;-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.mp-bubble-text svg{vertical-align:-2px;margin-right:4px}.mp-bubble .pf-status-emoji{margin-right:4px;font-size:1rem}.mp-body{gap:10px;padding:2px 12px 12px;display:grid}.mp-names .profile-name{flex-wrap:wrap;align-items:center;gap:6px;margin:0;font-size:1.2rem;line-height:1.25;display:flex}.mp-names .pf-handle{color:var(--text);opacity:.85;margin:1px 0 0;font-size:.86rem}.mp-block{background:color-mix(in srgb, var(--surface-2) 70%, transparent);border-radius:8px;padding:4px}.mp-row,.mp-item{width:100%;min-height:36px;color:var(--text);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:6px;align-items:center;gap:10px;padding:6px 8px;font-size:.9rem;display:flex}.mp-row:hover,.mp-row:focus-visible,.mp-row.open,.mp-item:hover:not([disabled]),.mp-item:focus-visible{background:var(--hover);outline:none}.mp-row:focus-visible,.mp-item:focus-visible{box-shadow:inset 0 0 0 2px var(--focus)}.mp-row-label{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.mp-row svg,.mp-item>svg{color:var(--interactive);flex:none}.mp-row .mp-chev{opacity:.8}.mp-row .mp-row-dot.presence-dot.inline,.mp-item .mp-item-dot.presence-dot.inline{width:12px;height:12px;margin:0 3px}.mp-sep{background:var(--divider-strong);height:1px;margin:4px 8px}.mp-flyout{--pd-ring:var(--popover);z-index:61;background:var(--popover);width:264px;max-height:calc(100dvh - 16px);color:var(--text);overscroll-behavior:contain;border-radius:8px;padding:6px;animation:.12s my-profile-side;position:fixed;overflow-y:auto;box-shadow:0 12px 40px #00000073}.mp-flyout.sheet{z-index:62;width:auto;max-height:min(80dvh, calc(var(--app-height,100dvh) - 24px));padding:22px 10px calc(10px + var(--safe-bottom,env(safe-area-inset-bottom)));border-radius:16px 16px 0 0;animation:.2s my-profile-up;bottom:0;left:0;right:0}.mp-flyout-head{align-items:center;gap:8px;padding:0 4px 8px;font-size:1rem;display:flex}.mp-flyout.sheet .mp-item{min-height:46px}.mp-item-text{flex:1;gap:1px;min-width:0;display:grid}.mp-item-text strong{text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.mp-item-text .tiny{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.mp-item.on{background:color-mix(in srgb, var(--accent) 14%, transparent)}.mp-item.danger,.mp-item.danger>svg{color:var(--bad)}.mp-item[disabled]{cursor:default;opacity:.55}.mp-account .avatar{flex:none}.mp-item .mp-check{color:var(--accent)}.mp-error{color:var(--bad);margin:4px 8px;font-size:.8rem}@keyframes my-profile-in{0%{opacity:0;transform:translateY(6px)}}@keyframes my-profile-side{0%{opacity:0;transform:translate(-4px)}}@keyframes my-profile-up{0%{opacity:0;transform:translateY(40px)}}@media (prefers-reduced-motion:reduce){.my-profile,.my-profile.sheet,.mp-flyout,.mp-flyout.sheet{animation:none}}.bug-page{gap:16px;display:grid}.bug-page h2{margin:0;font-size:1rem}.bug-clear-notice{border-radius:var(--radius);background:var(--warn-soft);color:var(--text);border-left:4px solid var(--warn-fill);padding:12px 14px;font-size:.92rem}.bug-textarea,.bug-page .field input{font:inherit;background:var(--surface-2);color:var(--text);resize:vertical;border:0;border-radius:4px;min-height:40px;padding:10px}.bug-textarea:focus{outline:2px solid var(--focus);outline-offset:0}.bug-page [aria-invalid=true]{outline:2px solid var(--bad)}.field-error{color:var(--bad);font-size:.85rem}.bug-shots{flex-wrap:wrap;gap:12px;margin:0;padding:0;list-style:none;display:flex}.bug-shots li{justify-items:center;gap:4px;display:grid}.bug-shots img{object-fit:cover;border:1px solid var(--divider-strong);background:var(--surface-2);border-radius:6px;width:160px;height:110px}.bug-file{justify-self:start;position:relative;overflow:hidden}.bug-file input{opacity:0;cursor:pointer;position:absolute;inset:0}.bug-tech{gap:10px;font-size:.88rem;display:grid}.bug-tech-grid{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:6px 16px;margin:0;display:grid}.bug-tech-row{border-bottom:1px dashed var(--divider-strong);justify-content:space-between;gap:8px;min-width:0;padding:2px 0;display:flex}.bug-tech-row dt{color:var(--muted)}.bug-tech-row dd{text-align:right;overflow-wrap:anywhere;margin:0}.bug-tech-errors{gap:4px;margin:0;padding-left:20px;display:grid}.bug-tech-errors code{overflow-wrap:anywhere}.bug-stack{background:var(--surface-2);white-space:pre-wrap;overflow-wrap:anywhere;border-radius:4px;max-height:200px;margin:6px 0 0;padding:8px;font-size:.78rem;overflow:auto}.bug-consent{align-items:flex-start}.bug-consent input{margin-top:2px}.bug-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.bug-item{border-radius:var(--radius);background:var(--surface);border:1px solid var(--divider);color:var(--text);align-items:center;gap:12px;padding:12px 14px;text-decoration:none;display:flex}.bug-item:hover{background:var(--hover)}.bug-item.unread{border-left:3px solid var(--accent)}.bug-item-main{flex:1;gap:2px;min-width:0;display:grid}.bug-item-main strong{text-overflow:ellipsis;white-space:nowrap;color:var(--text-strong);overflow:hidden}.bug-new{color:var(--accent-text);background:var(--accent);white-space:nowrap;border-radius:999px;padding:1px 8px;font-size:.78rem;font-weight:700}.badge.bug-status-new{background:var(--info-soft);color:var(--link)}.badge.bug-status-closed{background:var(--surface-2);color:var(--muted)}.bug-text{white-space:pre-wrap;overflow-wrap:anywhere;margin:0}.bug-thread{gap:10px;margin:0;padding:0;list-style:none;display:grid}.bug-msg{border-radius:var(--radius);background:var(--surface-2);gap:4px;padding:10px 12px;display:grid}.bug-msg.team{border-left:3px solid var(--accent)}.bug-msg-head{justify-content:space-between;gap:8px;display:flex}.bug-follow{gap:8px;display:grid}.notify-toasts.bug-toasts{top:calc(120px + var(--safe-top))}.notify-toast.bug-toast{border-left-color:var(--accent)}.bug-page a.btn{text-decoration:none}@media (width<=768px){.bug-shots img{width:120px;height:90px}.bug-item{flex-wrap:wrap}}.login-accounts{margin:4px 0 18px}.login-accounts-title{color:var(--muted);letter-spacing:.02em;text-transform:uppercase;margin:0 0 8px;font-size:.75rem;font-weight:700}.login-accounts ul{gap:6px;margin:0;padding:0;list-style:none;display:grid}.login-account{border:1px solid var(--border);background:var(--surface);width:100%;min-height:48px;color:var(--text);font:inherit;text-align:left;cursor:pointer;border-radius:8px;align-items:center;gap:10px;padding:8px 10px;display:flex}.login-account:hover:not([disabled]),.login-account:focus-visible{border-color:var(--accent)}.login-account[disabled]{cursor:default;opacity:.6}.login-account .avatar{flex:none;width:32px;height:32px;font-size:.9rem}.login-account-text{flex:1;min-width:0;display:grid}.login-account-text strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.dialog-backdrop.host-backdrop{z-index:2000;animation:.12s ease-out host-fade}.dialog.host-dialog{width:min(440px,100%);animation:.14s ease-out host-rise}.dialog.host-dialog h2{margin:0;font-size:1.15rem;line-height:1.3}.host-dialog-content{gap:16px;min-width:0;display:grid}.host-dialog-content p{color:var(--muted);white-space:pre-line;line-height:1.45}.host-dialog-actions{margin-top:2px}@keyframes host-fade{0%{opacity:0}}@keyframes host-rise{0%{opacity:0;transform:translateY(6px)scale(.98)}}@media (prefers-reduced-motion:reduce){.dialog-backdrop.host-backdrop,.dialog.host-dialog{animation:none}}.sc-tooltip{z-index:3500;color:#f7f6ff;white-space:pre-line;overflow-wrap:anywhere;text-align:center;pointer-events:none;background:#16143a;border:1px solid #a5b4fc38;border-radius:8px;max-width:min(280px,100vw - 16px);padding:6px 10px;font-family:inherit;font-size:.82rem;font-weight:500;line-height:1.3;animation:.12s ease-out sc-tooltip-in;position:fixed;top:0;left:0;box-shadow:0 6px 18px #08061e59}.sc-tooltip[hidden]{display:none}@keyframes sc-tooltip-in{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion:reduce){.sc-tooltip{animation:none}}:root{--brand-ink:#1e1b4b;--brand-lavender:#a5b4fc;--bg:#fdfcff;--surface:#f4f3fa;--surface-2:#e9e7f4;--sidebar:#f4f3fa;--rail:#e6e4f2;--panel:#eceaf6;--composer:#eeedf7;--floating:#fff;--hover:#4c40a014;--selected:#4c40a029;--message-hover:#1e1b4b09;--text:#262439;--text-strong:#0f0e1e;--muted:#5f5c7a;--interactive:#4c4a66;--accent:#6c47e8;--accent-hover:#5b37d4;--accent-text:#fff;--accent-soft:#ece8fe;--link:#5038c8;--focus:#6c47e8;--ok:#157a5c;--ok-fill:#11845f;--warn:#8c5208;--warn-fill:#f5b84a;--warn-soft:#fbf1e1;--bad:#c42b54;--bad-soft:#fde8ee;--danger-bg:#c93558;--danger-text:#fff;--success-bg:#1b7a5a;--success-bg-hover:#16684d;--info-soft:#e8ebfe;--btn-secondary:#6e6b8c;--btn-secondary-text:#fff;--border:#d9d7e8;--divider:#1e1b4b14;--divider-strong:#1e1b4b26;--item-border:transparent;--mark-bg:#ffe29a;--mark-text:#1a1300;--status-online:#11845f;--status-idle:#b86e0c;--status-dnd:#cc2f5a;--status-offline:#77748f;--mention-pill-bg:#6c47e824;--mention-pill-text:#4a2fc4;--mention-bg:#6c47e812;--mention-hover-bg:#6c47e81c;--mention-bar:#6c47e8;--popover:#fff;--backdrop:#0f0e1e99;--shadow:0 10px 28px #1e1b4b29;--radius:10px;--shape-radius:14px;--safe-top:env(safe-area-inset-top,0px);--safe-right:env(safe-area-inset-right,0px);--safe-bottom:env(safe-area-inset-bottom,0px);--safe-left:env(safe-area-inset-left,0px);--rail-width:66px;--header-height:54px;--sidebar-width:240px;--slide:.26s cubic-bezier(.2, .8, .2, 1);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font-family:system-ui,-apple-system,Segoe UI,Roboto,Noto Sans,Helvetica Neue,Arial,sans-serif,Apple Color Emoji,Segoe UI Emoji,Noto Color Emoji;font-size:15px;line-height:1.375}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#1e1d33;--surface:#18172b;--surface-2:#121122;--sidebar:#18172b;--rail:#0f0e1d;--panel:#141327;--composer:#28273f;--floating:#0b0a17;--hover:#a5b4fc14;--selected:#a5b4fc29;--message-hover:#08071447;--text:#e2e1f0;--text-strong:#f7f6ff;--muted:#a3a1c2;--interactive:#bdbbd8;--accent-soft:#2f2763;--link:#a5b4fc;--focus:#a5b4fc;--ok:#5fd9ae;--ok-fill:#2fc48d;--warn:#f2b55a;--warn-soft:#3a2e22;--bad:#ff8fa8;--bad-soft:#3a1f33;--info-soft:#232a4f;--btn-secondary:#3f3d63;--border:#34334f;--divider:#a5b4fc12;--divider-strong:#a5b4fc21;--item-border:#2e2d48;--mark-bg:#f5b84a;--mark-text:#1a1300;--status-online:#2fc48d;--status-idle:#f0a43a;--status-dnd:#ef5a7f;--status-offline:#7d7b99;--mention-pill-bg:#6c47e852;--mention-pill-text:#d9d2ff;--mention-bg:#a5b4fc12;--mention-hover-bg:#a5b4fc1c;--mention-bar:#a5b4fc;--popover:#222138;--backdrop:#04030cb8;--shadow:0 10px 28px #04030c80;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=dark]{--bg:#1e1d33;--surface:#18172b;--surface-2:#121122;--sidebar:#18172b;--rail:#0f0e1d;--panel:#141327;--composer:#28273f;--floating:#0b0a17;--hover:#a5b4fc14;--selected:#a5b4fc29;--message-hover:#08071447;--text:#e2e1f0;--text-strong:#f7f6ff;--muted:#a3a1c2;--interactive:#bdbbd8;--accent-soft:#2f2763;--link:#a5b4fc;--focus:#a5b4fc;--ok:#5fd9ae;--ok-fill:#2fc48d;--warn:#f2b55a;--warn-soft:#3a2e22;--bad:#ff8fa8;--bad-soft:#3a1f33;--info-soft:#232a4f;--btn-secondary:#3f3d63;--border:#34334f;--divider:#a5b4fc12;--divider-strong:#a5b4fc21;--item-border:#2e2d48;--mark-bg:#f5b84a;--mark-text:#1a1300;--status-online:#2fc48d;--status-idle:#f0a43a;--status-dnd:#ef5a7f;--status-offline:#7d7b99;--mention-pill-bg:#6c47e852;--mention-pill-text:#d9d2ff;--mention-bg:#a5b4fc12;--mention-hover-bg:#a5b4fc1c;--mention-bar:#a5b4fc;--popover:#222138;--backdrop:#04030cb8;--shadow:0 10px 28px #04030c80;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}html.desktop{--titlebar-height:32px;--safe-top:var(--titlebar-height)}html.android-app{--safe-top:max(env(safe-area-inset-top,0px), var(--safe-area-inset-top,0px));--safe-right:max(env(safe-area-inset-right,0px), var(--safe-area-inset-right,0px));--safe-bottom:max(env(safe-area-inset-bottom,0px), var(--safe-area-inset-bottom,0px));--safe-left:max(env(safe-area-inset-left,0px), var(--safe-area-inset-left,0px))}*{box-sizing:border-box}html,body{height:100%}body{background:var(--bg);color:var(--text);-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;-webkit-tap-highlight-color:transparent;margin:0}a{color:var(--link)}:focus-visible{outline:2px solid var(--focus);outline-offset:2px}::placeholder{color:var(--muted);opacity:1}h1{color:var(--text-strong);margin:0 0 4px;font-size:1.5rem}h2{color:var(--text-strong);margin:0 0 4px;font-size:1.1rem}.muted{color:var(--muted)}.small{font-size:.85rem}.loading{min-height:100dvh;color:var(--muted);place-items:center;display:grid}.sr-only{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;position:absolute;overflow:hidden}.auth-page{min-height:100dvh;padding:calc(16px + var(--safe-top)) 16px calc(16px + var(--safe-bottom));background:radial-gradient(at 12% 8%,#a5b4fc57,#0000 46%),radial-gradient(at 92% 96%,#6c47e88c,#0000 52%),linear-gradient(160deg,#2e2a73,#1e1b4b 55%,#120f33);place-items:center;display:grid;position:relative}.auth-card{background:var(--bg);border-radius:20px;width:min(440px,100%);padding:32px;box-shadow:0 0 0 1px #a5b4fc2e,0 24px 60px #08061e73}.brand{color:var(--text-strong);align-items:center;gap:10px;margin-bottom:20px;font-weight:700;display:flex}.auth-card h1,.auth-card>.muted{text-align:center}.auth-card form{gap:14px;margin-top:20px;display:grid}.auth-links{flex-wrap:wrap;justify-content:space-between;gap:8px;margin:18px 0 0;font-size:.9rem;display:flex}.field{gap:8px;display:grid}.field label{color:var(--text-strong);font-size:.86rem;font-weight:600}.field input{font:inherit;border:1px solid var(--border);background:var(--surface-2);color:var(--text);border-radius:10px;min-height:42px;padding:10px 12px}.field input:focus{outline:2px solid var(--focus);outline-offset:0}.hint{color:var(--muted);font-size:.85rem}.hint .ok{color:var(--ok)}.hint .bad,.problems{color:var(--bad)}.problems{margin:0;padding-left:18px}.btn{font:inherit;cursor:pointer;border:1px solid #0000;border-radius:10px;min-height:38px;padding:8px 18px;font-size:.93rem;font-weight:600;transition:background-color .15s,color .15s,box-shadow .15s}.btn:disabled{opacity:.55;cursor:not-allowed}.btn-primary:disabled,.btn-secondary:disabled,.btn-danger:disabled{opacity:1;background:var(--surface-2);color:var(--muted);border-color:var(--border)}.btn-ghost:disabled{opacity:.6}.btn-primary{background:var(--accent);color:var(--accent-text)}.btn-primary:not(:disabled):hover{background:var(--accent-hover);box-shadow:0 4px 14px #6c47e84d}.btn-secondary{background:var(--btn-secondary);color:var(--btn-secondary-text)}.btn-secondary:not(:disabled):hover{filter:brightness(1.1)}.btn-danger{background:var(--danger-bg);color:var(--danger-text)}.btn-danger:not(:disabled):hover{filter:brightness(.92)}.btn-ghost{color:var(--text);background:0 0}.btn-ghost:not(:disabled):hover{text-decoration:underline}.link-btn{color:var(--link);font:inherit;cursor:pointer;text-align:left;background:0 0;border:0;padding:0}.alert{overflow-wrap:anywhere;border-radius:6px;padding:10px 12px;font-size:.92rem}.alert-error{background:var(--bad-soft);color:var(--bad);border-left:4px solid var(--danger-bg)}.alert-info{background:var(--info-soft);color:var(--text);border-left:4px solid var(--accent)}.alert-success{background:var(--accent-soft);color:var(--text)}.row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.spacer{flex:1}.badge{white-space:nowrap;border-radius:999px;padding:1px 8px;font-size:.75rem;font-weight:700;display:inline-block}.badge-ok{background:var(--accent-soft);color:var(--ok)}.badge-warn{background:var(--warn-soft);color:var(--warn)}.badge-bad{background:var(--bad-soft);color:var(--bad)}.badge-muted{background:var(--hover);color:var(--muted)}.icon-btn{color:var(--interactive);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:8px;place-items:center;padding:4px;line-height:1;text-decoration:none;display:inline-grid}.icon-btn:hover{color:var(--text-strong);background:var(--hover)}.bad{color:var(--bad)}.ok{color:var(--ok)}.warn-text{color:var(--warn)}.app{height:100dvh;height:var(--app-height,100dvh);background:var(--rail);padding:var(--safe-top) var(--safe-right) 0 var(--safe-left);flex-direction:column;display:flex;overflow:hidden}.banner{background:var(--warn-fill);color:#1a1300;text-align:center;flex:none;padding:8px 16px;font-size:.9rem;font-weight:600}.banner a{color:#1a1300;text-decoration:underline}.shell{flex:1;min-height:0;display:flex;position:relative;overflow:hidden}.nav-column{width:calc(var(--rail-width) + var(--channels-width,var(--sidebar-width)));background:linear-gradient(to right, var(--rail) var(--rail-width), var(--sidebar) var(--rail-width));flex-direction:column;flex:none;min-height:0;display:flex;position:relative}.nav-top{flex:1;min-height:0;display:flex}.nav-bottom{background:var(--panel);border:1px solid var(--divider);border-radius:8px;flex:none;margin:0 8px 8px;overflow:hidden}.content{background:var(--bg);flex-direction:column;flex:1;min-width:0;min-height:0;display:flex}.content-scroll{flex:1;min-height:0;position:relative;overflow:auto}:is(.content-scroll:has(>.space-layout),.content-scroll:has(>.dm-layout),.content-scroll:has(>.home-view)){overflow:hidden}.page{align-content:start;gap:18px;max-width:820px;margin:0 auto;padding:28px 24px 60px;display:grid}.page>.btn{justify-self:start}.empty{text-align:center;padding:60px 20px}.loading-inline{text-align:center;color:var(--muted);padding:60px 20px}.rail{width:var(--rail-width);scrollbar-width:none;background:var(--rail);flex-direction:column;flex:none;align-items:center;gap:12px;padding:12px 0 14px;display:flex;overflow-y:auto}.rail::-webkit-scrollbar{display:none}.rail-item{width:var(--rail-width);font:inherit;cursor:pointer;background:0 0;border:0;flex:none;justify-content:center;padding:0;text-decoration:none;display:flex;position:relative}.rail-item:focus-visible{outline:none}.rail-item:focus-visible .rail-icon{outline:2px solid var(--focus);outline-offset:2px}.rail-icon{border-radius:var(--shape-radius);background:var(--surface);width:44px;height:44px;color:var(--text-strong);box-shadow:inset 0 0 0 1px var(--divider-strong);place-items:center;font-size:.95rem;font-weight:650;transition:background-color .18s,color .18s,box-shadow .18s,transform .18s;display:grid;overflow:hidden}.rail-item:hover .rail-icon{background:var(--accent-soft);transform:translateY(-1px)}.rail-item.active .rail-icon{background:var(--accent);color:var(--accent-text);box-shadow:0 0 0 2px var(--rail), 0 0 0 4px var(--brand-lavender)}.logo-mark .logo-plate{fill:var(--logo-plate,#fff)}.logo-mark .logo-top{stroke:var(--logo-top,#fff)}.logo-mark .logo-bottom{stroke:var(--logo-bottom,#a5b4fc)}.logo-mark .logo-key{fill:var(--logo-top,#fff)}.rail-home .rail-icon,.home-empty .empty-art{--logo-top:var(--text-strong);--logo-bottom:color-mix(in srgb, var(--accent) 72%, var(--text-strong));--logo-plate:var(--text-strong)}.rail-home.active .rail-icon{--logo-top:var(--accent-text);--logo-bottom:color-mix(in srgb, var(--accent-text) 62%, var(--accent));--logo-plate:var(--accent-text)}.rail-add .rail-icon{color:var(--link);box-shadow:inset 0 0 0 1.5px var(--divider-strong);background:0 0}.rail-add:hover .rail-icon{background:var(--accent);color:var(--accent-text);box-shadow:none}.rail-pill{background:var(--brand-lavender);opacity:0;border-radius:2px;width:6px;height:3px;margin-left:-3px;transition:opacity .18s,width .18s,margin-left .18s;position:absolute;bottom:-8px;left:50%}.rail-item.active .rail-pill{opacity:1;width:18px;margin-left:-9px}.rail-add .rail-pill{display:none}.rail-sep{background:var(--divider-strong);border-radius:1px;flex:none;width:22px;height:1px}.rail-badge{background:var(--danger-bg);min-width:20px;height:18px;color:var(--danger-text);box-shadow:0 0 0 2px var(--rail);border-radius:6px;place-items:center;padding:0 5px;font-size:.72rem;font-weight:700;display:grid;position:absolute;top:-5px;right:6px}.sidebar{background:var(--sidebar);border-top-left-radius:8px;flex-direction:column;flex:1;min-width:0;min-height:0;display:flex;overflow:hidden}.sidebar-title{height:var(--header-height);border-bottom:1px solid var(--divider-strong);flex:none;align-items:center;gap:8px;padding:0 8px 0 16px;display:flex}.sidebar-title h2{flex:1;margin:0;font-size:1rem}.sidebar-scroll{flex:1;min-height:0;padding:8px;overflow-y:auto}.sidebar-note{padding:8px;list-style:none}.category{letter-spacing:.01em;color:var(--muted);justify-content:space-between;align-items:center;gap:4px;margin:16px 0 4px;padding:0 4px 0 8px;font-size:.8rem;font-weight:600;display:flex}.category:first-child{margin-top:8px}.category .icon-btn{width:24px;height:24px;padding:0}.space-header-wrap{flex:none;position:relative}.space-header{width:100%;height:var(--header-height);border:0;border-bottom:1px solid var(--divider-strong);color:var(--text-strong);font:inherit;cursor:pointer;text-align:left;background:0 0;justify-content:space-between;align-items:center;gap:8px;padding:0 12px 0 16px;font-weight:700;display:flex}.space-header.placeholder{cursor:default}.space-header>span:first-child{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.space-header:hover,.space-header[aria-expanded=true]{background:var(--hover)}.space-menu{top:calc(var(--header-height) + 4px);z-index:20;background:var(--popover);border:1px solid var(--divider-strong);box-shadow:var(--shadow);border-radius:12px;gap:2px;padding:6px;display:grid;position:absolute;left:8px;right:8px}.space-menu>*{text-align:left;color:var(--interactive);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:8px;padding:8px 10px;font-size:.93rem;font-weight:500;text-decoration:none}.space-menu>:hover,.space-menu>:focus-visible{background:var(--selected);color:var(--text-strong)}.space-menu .accent{color:var(--link)}.space-menu .danger{color:var(--bad)}.space-menu .danger:hover,.space-menu .danger:focus-visible{background:var(--bad-soft);color:var(--bad)}.channel-groups{flex:1;min-height:0;padding:0 8px 12px;overflow-y:auto}.channel-row{color:var(--muted);border-radius:8px;flex-wrap:wrap;align-items:center;margin:2px 0;display:flex}.channel-row:hover{background:var(--hover);color:var(--text)}.channel-row.active{background:var(--selected);color:var(--text-strong);box-shadow:inset 3px 0 0 var(--accent)}.channel-row.locked .channel-link{opacity:.7;cursor:default}.channel-link{min-width:0;color:inherit;flex:1;align-items:center;gap:6px;padding:6px 8px;font-weight:500;text-decoration:none;display:flex}.channel-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.channel-row.active .channel-link{font-weight:600}.channel-gear{opacity:0;width:28px;height:28px;margin-right:4px}.channel-row:hover .channel-gear,.channel-row.active .channel-gear,.channel-gear:focus-visible{opacity:1}.channel-icon{color:var(--muted);flex:none;display:inline-flex;position:relative}.channel-icon .lock{background:var(--sidebar);border-radius:50%;padding:1px;position:absolute;top:-3px;right:-4px}.voice-roster{flex-basis:100%;margin:0 0 4px;padding:0 0 0 30px;list-style:none}.voice-roster li{min-height:34px;color:var(--muted);align-items:center;gap:10px;padding:5px 8px 5px 2px;font-size:.88rem;display:flex}.voice-roster .avatar{width:24px;height:24px;font-size:.7rem}.voice-roster-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.voice-roster-icon{color:var(--bad);display:inline-flex}.live-badge{background:var(--danger-bg);color:#fff;text-transform:uppercase;border-radius:4px;padding:0 5px;font-size:.65rem;font-weight:800}.dm-list{gap:2px;margin:0;padding:0;list-style:none;display:grid}.dm-link{min-height:44px;color:var(--muted);border-radius:8px;align-items:center;gap:12px;padding:4px 8px;font-weight:500;text-decoration:none;display:flex}.dm-link .avatar{width:32px;height:32px}.dm-link:hover{background:var(--hover);color:var(--text)}.dm-link.active{background:var(--selected);color:var(--text-strong);box-shadow:inset 3px 0 0 var(--accent)}.dm-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.avatar{background:var(--accent);color:#fff;-webkit-user-select:none;user-select:none;border-radius:50%;flex:none;place-items:center;width:32px;height:32px;font-size:.85rem;font-weight:700;line-height:1;display:inline-grid}.avatar.small{width:24px;height:24px;font-size:.72rem}.tone-0{background:#6c47e8}.tone-1{background:#5e5b7d}.tone-2{background:#217a5b}.tone-3{background:#b4531f}.tone-4{background:#c13a4e}.user-panel{align-items:center;gap:2px;min-height:56px;padding:8px;display:flex}.user-chip{flex:1;align-items:center;gap:8px;min-width:0;padding:2px 4px 2px 2px;display:flex}.user-avatar{flex:none;display:inline-flex;position:relative}.status-dot{border:4px solid var(--panel);background:var(--danger-bg);border-radius:50%;width:16px;height:16px;position:absolute;bottom:-3px;right:-3px}.status-dot.rt-open{background:var(--ok-fill)}.status-dot.rt-connecting{background:var(--warn-fill)}.user-names{min-width:0;line-height:1.25;display:grid}.user-names strong{color:var(--text-strong);text-overflow:ellipsis;white-space:nowrap;font-size:.93rem;overflow:hidden}.user-status{color:var(--muted);font-size:.78rem}.panel-btn{border-radius:6px;flex:none;width:36px;height:36px}.panel-btn.off{color:var(--bad)}.voice-bar{border-bottom:1px solid var(--divider-strong);color:var(--text);align-items:center;gap:8px;padding:10px 8px 10px 12px;font-size:.85rem;display:flex}.voice-bar-info{flex:1;min-width:0;line-height:1.3;display:grid}.voice-bar-status{color:var(--ok);align-items:center;gap:6px;font-size:.9rem;font-weight:700;display:flex}.voice-bar-where{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.voice-bar-where a{color:var(--muted);text-decoration:none}.voice-bar-where a:hover{color:var(--text);text-decoration:underline}.voice-bar-where svg{vertical-align:-2px}.voice-bar-dot{background:var(--ok-fill);border-radius:50%;flex:none;width:8px;height:8px}.voice-hangup{width:36px;height:36px;color:var(--bad)}.voice-hangup:hover{color:#fff;background:var(--danger-bg)}.voice-bar.compact{border-bottom:1px solid var(--divider);background:var(--surface);flex:none;padding:4px 6px 4px 12px}.voice-bar.compact .voice-bar-info{align-items:center;gap:8px;display:flex}.conv-header{height:var(--header-height);border-bottom:1px solid var(--divider-strong);background:var(--bg);flex:none;align-items:center;gap:8px;min-width:0;padding:0 10px 0 18px;display:flex}.conv-title{min-width:0;color:var(--text-strong);text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:1rem;font-weight:700;overflow:hidden}.conv-title:focus{outline:none}.conv-divider{background:var(--divider-strong);flex:none;width:1px;height:24px;margin:0 4px}.conv-topic{min-width:0;color:var(--muted);white-space:nowrap;align-items:center;gap:6px;font-size:.88rem;display:inline-flex;overflow:hidden}.conv-actions{flex:none;align-items:center;gap:4px;display:flex}.header-btn{width:36px;height:36px}.header-btn.on,.header-btn[aria-expanded=true]{color:var(--text-strong)}.back-btn{width:40px;height:40px;color:var(--text-strong);flex:none;margin-left:-8px}.space-layout{grid-template-columns:minmax(0, 1fr) var(--members-width,var(--sidebar-width));height:100%;display:grid;position:relative}.channel-main{background:var(--bg);flex-direction:column;min-width:0;min-height:0;display:flex}.channel-body{flex:1;min-height:0;overflow-y:auto}.member-list{background:var(--sidebar);padding:0 8px 20px;overflow-y:auto}.member{min-height:42px;color:var(--muted);border-radius:6px;align-items:center;gap:10px;padding:4px 8px;display:flex}.member:hover{background:var(--hover);color:var(--text)}@media (width>=901px){.member-list.lazy{position:relative}}.member-virtual{position:relative}.member-virtual>.member,.member-virtual>.member-head{box-sizing:border-box;position:absolute;left:0;right:0}.member-virtual>.member{min-height:0;overflow:hidden}.member-virtual>.member-head{align-items:flex-end;margin:0;padding-bottom:6px;display:flex}.member-skeleton:before,.member-skeleton:after{content:"";background:var(--hover);flex:none;display:block}.member-skeleton:before{border-radius:50%;width:32px;height:32px}.member-skeleton:after{border-radius:5px;width:55%;height:10px}.member-search{z-index:2;background:var(--sidebar);color:var(--muted);align-items:center;gap:6px;padding:8px 0;display:flex;position:sticky;top:0}.member-search .input{flex:1;min-width:0;padding:6px 8px;font-size:.88rem}.member-picker{flex-direction:column;gap:4px;min-width:0;display:flex}.member-picker-list{max-height:260px;overflow-y:auto}.owner{color:var(--link);flex:none;display:inline-flex}.member-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-weight:500;overflow:hidden}.member .icon-btn{opacity:0;margin-left:auto}.member:hover .icon-btn,.member:focus-within .icon-btn{opacity:1}.drawer-backdrop{background:var(--backdrop);z-index:25;position:fixed;inset:0}.drawer-head{border-bottom:1px solid var(--divider-strong);justify-content:space-between;align-items:center;min-height:44px;margin-bottom:4px;padding:0 0 6px 6px;display:flex}.role-colored{color:var(--role-color)}@supports (color:oklch(from red l c h)){.role-colored{color:oklch(from var(--role-color) min(l, .55) c h)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .role-colored{color:oklch(from var(--role-color) max(l, .74) c h)}}:root[data-theme=dark] .role-colored{color:oklch(from var(--role-color) max(l, .74) c h)}}.dm-layout{height:100%;display:flex}.dm-layout .channel-main{flex:1}.home-view{flex-direction:column;height:100%;display:flex}.home-view>.page{flex:1;width:100%;min-height:0;overflow-y:auto}.home-empty .empty-art,.empty-chat-icon{background:var(--brand-ink);width:72px;height:72px;color:var(--brand-lavender);border-radius:22px;place-items:center;margin:0 auto 16px;font-size:2rem;font-weight:700;display:grid;box-shadow:inset 0 0 0 1px #a5b4fc40}.home-empty .empty-art{background:var(--accent-soft);box-shadow:inset 0 0 0 1px var(--divider-strong);border-radius:22px}.server-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px;margin:0;padding:0;list-style:none;display:grid}.server-card{background:var(--surface-2);border:1px solid var(--item-border);color:var(--text);text-align:center;border-radius:8px;flex-direction:column;align-items:center;gap:8px;padding:16px 12px;text-decoration:none;display:flex}.server-card:hover{background:var(--hover)}.server-card-icon{background:var(--accent);color:#fff;border-radius:16px;place-items:center;width:56px;height:56px;font-size:1.2rem;font-weight:700;display:grid}.server-card-name{overflow-wrap:anywhere;font-weight:600}.home-compact{gap:12px;padding:4px 0 8px;display:grid}.home-compact .card{padding:12px}.home-compact .empty{padding:20px 8px}.card{background:var(--surface);border:1px solid var(--divider);border-radius:var(--radius);gap:14px;padding:20px;display:grid}.card-head{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.card-head p{margin:0}.inline-form{gap:12px;max-width:420px;display:grid}.list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.list-item{background:var(--surface-2);border:1px solid var(--item-border);border-radius:6px;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;display:flex}.list-item>*{overflow-wrap:anywhere;min-width:0}.list-item.column{flex-direction:column;align-items:stretch}.list-item.warn{border-left:3px solid var(--warn)}.list-item.selected{outline:2px solid var(--accent)}.card.inset{background:var(--surface-2)}.danger-zone{border-color:var(--danger-bg)}.mfa-setup{flex-wrap:wrap;align-items:flex-start;gap:20px;display:flex}.mfa-setup img{background:#fff;border-radius:8px}.mfa-setup p{margin:0 0 8px}.secret{word-break:break-all;font-size:.85rem}.codes{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:6px 16px;margin:0;font-size:1.05rem;display:grid}.mail-head{color:var(--text);justify-content:space-between;gap:12px;display:flex}.mail-body{white-space:pre-wrap;word-break:break-word;font:inherit;margin:8px 0 0}.pending-grid{flex-wrap:wrap;align-items:flex-start;gap:24px;display:flex}.pending-grid img{background:#fff;border-radius:10px}.steps{gap:4px;margin:0 0 12px;padding-left:20px;display:grid}.link-code{letter-spacing:.06em;word-break:break-all;color:var(--text-strong);margin:4px 0 6px;font-family:ui-monospace,Cascadia Mono,Consolas,monospace;font-size:1.45rem;font-weight:700}.link-code-row{flex-wrap:wrap;align-items:center;gap:4px 12px;display:flex}.link-code-copy{align-items:center;gap:6px;display:inline-flex}.waiting{color:var(--warn);font-weight:600}.waiting:before{content:"";background:var(--warn);border-radius:50%;width:8px;height:8px;margin-right:8px;animation:1.4s ease-in-out infinite pulse;display:inline-block}@keyframes pulse{50%{opacity:.25}}.dialog-backdrop{background:var(--backdrop);padding:calc(16px + var(--safe-top)) calc(16px + var(--safe-right)) calc(16px + var(--safe-bottom)) calc(16px + var(--safe-left));z-index:40;place-items:center;display:grid;position:fixed;inset:0}.dialog{width:min(480px,100%);max-height:calc(100vh - 32px);max-height:calc(100dvh - 32px - var(--safe-top) - var(--safe-bottom));overscroll-behavior:contain;background:var(--bg);box-shadow:var(--shadow);border-radius:8px;gap:14px;padding:22px;display:grid;overflow:auto}.dialog:focus{outline:none}.dialog>*{overflow-wrap:anywhere;min-width:0}.dialog p{margin:0}.tabs{background:var(--surface);border:1px solid var(--divider);scrollbar-width:none;border-radius:8px;gap:4px;padding:4px;display:flex;overflow-x:auto}.tabs button{font:inherit;color:var(--interactive);cursor:pointer;white-space:nowrap;background:0 0;border:0;border-radius:6px;flex:1 0 auto;padding:7px 10px;font-weight:600}.tabs button:hover{color:var(--text-strong);background:var(--hover)}.tabs button.active{background:var(--selected);color:var(--text-strong);box-shadow:inset 0 -2px 0 var(--accent)}.qr-video{background:#000;border-radius:10px;width:100%}.page.wide{max-width:1080px}.split{grid-template-columns:minmax(240px,1fr) minmax(0,1.4fr);align-items:start;gap:18px;display:grid}.input,.field select{font:inherit;background:var(--surface-2);color:var(--text);border:0;border-radius:4px;flex:1;min-width:0;min-height:40px;padding:9px 10px}.check{cursor:pointer;align-items:center;gap:8px;padding:4px 0;display:flex}.check input{width:18px;height:18px;accent-color:var(--accent);flex:none}.perm-group,.access-editor{border:1px solid var(--border);border-radius:8px;margin:0;padding:8px 12px 10px}.perm-group legend,.access-editor legend{padding:0 4px;font-size:.85rem;font-weight:700}.access-lists{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px;max-height:260px;margin-top:8px;display:grid;overflow-y:auto}.role-dot{width:10px;height:10px;box-shadow:0 0 0 1px var(--border);border-radius:50%;flex:none;display:inline-block}.role-chips{flex-wrap:wrap;gap:4px;margin-top:4px;display:flex}.chip{background:var(--surface-2);border:1px solid var(--item-border);overflow-wrap:anywhere;border-radius:999px;align-items:center;gap:5px;max-width:100%;padding:2px 4px 2px 10px;font-size:.82rem;display:inline-flex}.settings-page{min-height:100%}.theme-choices{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px;display:grid}.theme-choice{border:2px solid var(--divider-strong);background:var(--surface-2);cursor:pointer;border-radius:8px;gap:8px;padding:10px;font-weight:600;display:grid;position:relative}.theme-choice:has(input:checked){border-color:var(--accent)}.theme-choice:has(input:focus-visible){outline:2px solid var(--focus);outline-offset:2px}.theme-choice input{opacity:0;pointer-events:none;position:absolute}.theme-swatch{border:1px solid var(--divider-strong);border-radius:6px;height:56px}.theme-swatch.system{background:linear-gradient(135deg,#fdfcff 50%,#1e1d33 50%)}.theme-swatch.light{background:linear-gradient(90deg,#e6e4f2 22%,#f4f3fa 22% 50%,#fdfcff 50%)}.theme-swatch.dark{background:linear-gradient(90deg,#0f0e1d 22%,#18172b 22% 50%,#1e1d33 50%)}.channel-body:has(.chat){flex-direction:column;min-height:0;display:flex;overflow:hidden}.chat{flex-direction:column;flex:1;min-height:0;display:flex}.chat-body{flex-direction:column;flex:1;min-height:0;display:flex;position:relative}.messages{overscroll-behavior:contain;flex-direction:column;flex:1;min-height:0;padding:16px 0 20px;display:flex;overflow-y:auto}.messages-spacer{flex:1 0 auto}.load-older{align-self:center;margin:0 auto 12px}.empty-chat{padding:24px 16px 8px}.empty-chat h2{font-size:1.6rem}.empty-chat-icon{margin:0 0 12px}.day-divider{color:var(--muted);align-items:center;gap:10px;margin:22px 18px 6px;font-size:.75rem;font-weight:600;display:flex}.day-divider:before{content:"";background:var(--divider-strong);flex:none;width:10px;height:1px}.day-divider:after{content:"";background:var(--divider-strong);flex:1;height:1px}.message{grid-template-columns:66px minmax(0,1fr);min-height:24px;margin-top:14px;padding:3px 40px 3px 0;display:grid;position:relative}.message.grouped{margin-top:0}.message:hover,.message:focus-visible{background:var(--message-hover)}.message:has(:focus-visible){background:var(--message-hover)}.message:focus{outline:none}.message.flash:after{content:"";pointer-events:none;animation:2.2s ease-out forwards flash;position:absolute;inset:0}@keyframes flash{0%,40%{background:var(--accent-soft);box-shadow:inset 3px 0 0 var(--accent)}to{box-shadow:none;background:0 0}}.message-avatar{grid-column:1;justify-self:center;width:38px;height:38px;margin-top:2px;font-size:1rem}.message-side-time{color:var(--muted);opacity:0;grid-column:1;place-self:start center;margin-top:3px;font-size:.68rem}.message:hover .message-side-time,.message:focus-visible .message-side-time{opacity:1}.message:has(:focus-visible) .message-side-time{opacity:1}.message-content{grid-column:2;min-width:0}.message header{flex-wrap:wrap;align-items:baseline;gap:2px 8px;min-width:0;display:flex}.message-author{overflow-wrap:anywhere;min-width:0;color:var(--text-strong);font-size:1rem;font-weight:600}.message-time{color:var(--muted);font-size:.75rem}.message-body{min-width:0}.message-text{white-space:pre-wrap;word-break:break-word;overflow-wrap:anywhere;margin:0;font-size:1rem;line-height:1.4}.message-text .badge{margin-left:6px}.edited{color:var(--muted);font-size:.7rem}mark{background:var(--mark-bg);color:var(--mark-text);border-radius:2px;padding:0 1px}.message-actions{z-index:2;background:var(--popover);border:1px solid var(--divider-strong);box-shadow:var(--shadow);border-radius:12px;gap:2px;padding:3px;display:none;position:absolute;top:-16px;right:16px}.message:hover .message-actions,.message:focus-visible .message-actions{display:flex}.message:has(:focus-visible) .message-actions{display:flex}.message-actions .icon-btn{width:32px;height:32px}.message-actions .danger:hover{color:var(--bad)}.edit-form{gap:6px;margin:4px 0;display:grid}.edit-form textarea{font:inherit;color:var(--text);background:var(--composer);resize:none;field-sizing:content;border:0;border-radius:8px;min-height:44px;padding:10px 12px;font-size:1rem}.edit-form textarea:focus{outline:2px solid var(--focus);outline-offset:0}.edit-hint{font-size:.75rem}.chat-error{flex:none;padding:0 16px 8px}.chat-search{border-bottom:1px solid var(--divider);background:var(--bg);flex:none;align-items:center;gap:8px;padding:8px 8px 8px 16px;display:flex}.chat-search-icon{color:var(--muted);flex:none}.chat-search-input{min-width:0;font:inherit;background:var(--surface-2);min-height:36px;color:var(--text);border:0;border-radius:6px;flex:1;padding:8px 10px}.chat-search-input:focus{outline:2px solid var(--focus);outline-offset:0}.chat-search-count{color:var(--muted);white-space:nowrap;flex:none}.search-results{z-index:5;overscroll-behavior:contain;background:var(--bg);align-content:start;gap:12px;padding:12px 16px 16px;display:grid;position:absolute;inset:0;overflow-y:auto}.search-results ul{gap:8px;margin:0;padding:0;list-style:none;display:grid}.search-result{border:1px solid var(--divider);background:var(--surface);width:100%;color:var(--text);font:inherit;text-align:left;cursor:pointer;border-radius:8px;gap:2px;padding:10px 12px;display:grid}.search-result:hover{background:var(--hover)}.search-result-head{flex-wrap:wrap;align-items:baseline;gap:8px;display:flex}.search-result-head strong{color:var(--text-strong)}.search-result-text{white-space:pre-wrap;overflow-wrap:anywhere;-webkit-line-clamp:4;line-clamp:4;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.search-empty,.search-note{margin:0}.composer{background:var(--bg);flex:none;padding:0 16px 20px;position:relative}.pending-files{flex-wrap:wrap;gap:6px;padding:0 0 8px;display:flex}.pending-files .icon-btn{width:24px;height:24px;padding:0}.composer-box{background:var(--composer);border-radius:16px;align-items:flex-end;gap:2px;min-height:46px;padding:0 6px;display:flex}.composer-box textarea{min-width:0;min-height:44px;max-height:40vh;color:var(--text);font:inherit;resize:none;field-sizing:content;background:0 0;border:0;outline:none;flex:1;padding:11px 6px;font-size:1rem;line-height:1.375}.composer-btn{width:40px;height:44px;color:var(--interactive);cursor:pointer;--icon-on-fill:var(--composer);background:0 0;border:0;border-radius:10px;flex:none;place-items:center;display:grid}.composer-btn:hover:not(:disabled){color:var(--text-strong)}.composer-btn:disabled,.composer-btn[aria-disabled=true]{opacity:.45;cursor:not-allowed}.composer-btn.send{color:var(--accent)}.composer-btn.send:hover:not(:disabled){color:var(--accent-hover)}.composer-btn.danger{color:var(--bad)}.composer-box.recording{align-items:center;gap:10px;padding:0 6px 0 4px}.rec-dot{background:var(--danger-bg);border-radius:50%;flex:none;width:10px;height:10px;animation:1.2s ease-in-out infinite pulse}.rec-time{font-variant-numeric:tabular-nums;color:var(--text-strong);flex:none;font-weight:700}.rec-label{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:.88rem;overflow:hidden}.composer-disabled{background:var(--composer);border-radius:8px;margin:0 16px 20px;padding:12px 16px}.emoji-picker{z-index:30;background:var(--sidebar);border:1px solid var(--divider-strong);width:min(380px,100vw - 32px);height:min(420px,60vh);box-shadow:var(--shadow);border-radius:8px;flex-direction:column;display:flex;position:absolute;bottom:calc(100% + 8px);right:16px;overflow:hidden}.emoji-tabs{border-bottom:1px solid var(--divider-strong);scrollbar-width:none;flex:none;gap:2px;padding:6px;display:flex;overflow-x:auto}.emoji-tab{cursor:pointer;filter:grayscale();opacity:.7;background:0 0;border:0;border-radius:6px;flex:none;place-items:center;width:36px;height:36px;font-size:1.25rem;display:grid}.emoji-tab:hover,.emoji-tab[aria-current=true]{filter:none;opacity:1;background:var(--hover)}.emoji-scroll{overscroll-behavior:contain;flex:1;min-height:0;padding:0 8px 8px;position:relative;overflow-y:auto}.emoji-cat{z-index:1;background:var(--sidebar);color:var(--muted);margin:0;padding:8px 4px 4px;font-size:.8rem;font-weight:600;position:sticky;top:0}.emoji-grid{grid-template-columns:repeat(8,minmax(0,1fr));gap:2px;display:grid}.emoji-btn{cursor:pointer;background:0 0;border:0;border-radius:6px;place-items:center;min-height:40px;padding:0;font-family:Apple Color Emoji,Segoe UI Emoji,Noto Color Emoji,sans-serif;font-size:1.6rem;line-height:1;display:grid}.emoji-btn:hover,.emoji-btn:focus-visible{background:var(--hover)}.emoji-btn:focus-visible{outline-offset:-2px}.attachment{border:1px solid var(--divider-strong);background:var(--surface);border-radius:8px;gap:8px;max-width:460px;margin:6px 0;padding:10px 12px;display:grid}.attachment-offer{background:color-mix(in srgb, var(--accent) 10%, var(--surface-2));border-radius:8px;align-items:center;gap:10px;padding:8px 8px 8px 10px;display:flex}.attachment-offer-text{flex:1;gap:2px;min-width:0;display:grid}.attachment-head{align-items:center;gap:10px;display:flex}.attachment-icon{font-size:1.6rem}.attachment-meta{min-width:0;display:grid}.attachment-head>*{min-width:0}.attachment-name{text-overflow:ellipsis;white-space:nowrap;color:var(--link);overflow:hidden}.progress{background:var(--surface-2);border-radius:3px;height:6px;overflow:hidden}.progress-bar{background:var(--accent);height:100%;transition:width .2s}.voice-msg{background:var(--surface);border:1px solid var(--divider-strong);border-radius:24px;align-items:center;gap:10px;width:min(340px,100%);margin:4px 0;padding:6px 14px 6px 6px;display:flex}.voice-msg-play{background:var(--accent);color:#fff;cursor:pointer;border:0;border-radius:50%;flex:none;place-items:center;width:36px;height:36px;display:grid}.voice-msg-play:hover{background:var(--accent-hover)}.voice-msg-play[aria-busy=true]{animation:1.2s ease-in-out infinite pulse}.voice-msg-track{flex:1;gap:2px;min-width:0;display:grid}.voice-msg-seek{width:100%;accent-color:var(--accent);margin:0}.voice-msg-note{color:var(--muted);line-height:1.2}.voice-msg-time{text-align:right;min-width:34px;color:var(--muted);font-variant-numeric:tabular-nums;flex:none}.identity-notices{gap:8px;padding:10px 16px 0;display:grid}.notice{background:var(--info-soft);border-radius:8px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;display:flex}.notice.warn{background:var(--warn-soft);border-left:4px solid var(--warn-fill)}.safety{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.safety img{background:#fff;border-radius:8px}.safety-number{word-spacing:.4ch;max-width:16ch;font-family:ui-monospace,Cascadia Mono,Consolas,monospace;font-size:1.05rem;line-height:1.8}.reset-facts{margin:0;padding-left:18px}@media print{body *{visibility:hidden}.printable,.printable *{visibility:visible}.printable{position:absolute;inset:0}.no-print{display:none}}.voice-room{background:radial-gradient(ellipse 70% 45% at 50% 108%, color-mix(in srgb, var(--accent) 22%, transparent), transparent 70%), var(--bg);min-height:0;color:var(--text);flex-direction:column;flex:1;gap:14px;padding:14px;display:flex}.channel-body:has(.voice-room){flex-direction:column;display:flex;overflow:hidden}.voice-lobby{justify-items:center;gap:10px;max-width:460px;margin:auto;padding:32px 16px;display:grid}.voice-lobby h2{margin:0;font-size:1.5rem}.voice-lobby p{margin:0}.voice-lobby-icon{background:var(--surface);width:80px;height:80px;color:var(--text-strong);border-radius:24px;place-items:center;display:grid}.voice-lobby-people{justify-content:center;margin:0;padding:0;list-style:none;display:flex}.voice-lobby-people li+li{margin-left:-8px}.voice-lobby-people .avatar{border:3px solid var(--bg);width:40px;height:40px}.voice-lobby .btn-primary{min-width:200px}.voice-grid{flex-wrap:wrap;flex:1;place-content:center;gap:10px;min-height:0;display:flex;overflow:auto}.voice-grid .voice-tile{width:var(--tile-w,min(100%, 480px));height:var(--tile-h,auto);aspect-ratio:16/9;flex:none}.voice-focus{flex-direction:column;flex:1;gap:8px;min-height:0;display:flex}.voice-stage{flex:1;min-height:0;display:flex}.voice-stage .voice-tile{flex:1}.voice-strip{flex:none;justify-content:center;gap:8px;padding-bottom:2px;display:flex;overflow-x:auto}.voice-strip .voice-tile{aspect-ratio:16/9;flex:none;height:96px}.voice-strip .voice-avatar{width:40px;height:40px;font-size:1.2rem}.voice-strip .voice-tile figcaption{padding:1px 6px;font-size:.75rem;bottom:4px;left:4px}.voice-tile{background:linear-gradient(160deg, color-mix(in srgb, var(--accent) 14%, var(--surface)), var(--surface-2));border:2px solid color-mix(in srgb, var(--text-strong) 8%, transparent);box-sizing:border-box;background-origin:border-box;border-radius:16px;justify-content:center;align-items:center;margin:0;transition:border-color .15s,box-shadow .15s;display:flex;position:relative;overflow:hidden}.voice-tile.selectable{cursor:pointer}.voice-tile.tinted{background:linear-gradient(180deg, color-mix(in srgb, var(--tile-color) 70%, #000) 0%, var(--tile-color) 18%, var(--tile-color) 100%);background-origin:border-box;border-color:#0000}.voice-tile.speaking{border-color:color-mix(in srgb, var(--accent) 55%, var(--brand-lavender));box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 28%, transparent)}.voice-tile video{object-fit:contain;background:#07060f;width:100%;height:100%}.voice-tile:fullscreen{cursor:default;background:#000;border:0;border-radius:0}.voice-tile:fullscreen figcaption{display:none}.voice-tile:fullscreen video{background:#000}.voice-tile.screen{background:#07060f}.voice-screen-wait{color:#ffffff73;place-items:center;display:grid}.voice-screen-name{align-items:center;gap:4px;display:inline-flex}.voice-tile-actions{z-index:1;opacity:0;gap:4px;transition:opacity .15s;display:flex;position:absolute;top:6px;right:6px}.voice-tile:hover .voice-tile-actions,.voice-tile:focus-within .voice-tile-actions{opacity:1}.voice-tile-btn{color:#fff;cursor:pointer;background:#0009;border:0;border-radius:8px;place-items:center;width:36px;height:36px;font-size:1.1rem;line-height:1;display:grid}.voice-tile-btn:hover{background:#000000d9}.voice-strip .voice-tile-btn{width:28px;height:28px;font-size:.9rem}.voice-tile video.mirror{transform:scaleX(-1)}.voice-avatar{color:#fff;border-radius:50%;place-items:center;width:80px;height:80px;font-size:2rem;font-weight:700;display:grid}.voice-tile figcaption{color:#fff;background:#0c0b1ab8;border-radius:8px;flex-wrap:wrap;align-items:center;gap:2px 6px;max-width:calc(100% - 16px);padding:3px 9px;font-size:.85rem;font-weight:600;line-height:1.35;display:flex;position:absolute;bottom:8px;left:8px}.voice-tile figcaption>span:first-child{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.voice-tile figcaption .muted{color:#e2e1f0;font-weight:400}.voice-tile-error{background:var(--bad-soft);color:var(--bad);border:1px solid var(--bad);-webkit-line-clamp:3;line-clamp:3;overflow-wrap:anywhere;border-radius:6px;-webkit-box-orient:vertical;padding:4px 8px;font-size:.8rem;line-height:1.3;display:-webkit-box;position:absolute;top:8px;left:8px;right:8px;overflow:hidden}.with-icon{vertical-align:middle;align-items:center;gap:4px;display:inline-flex}.with-icon>svg{flex:none}.chip>svg{vertical-align:-2px}.screen-stall{background:var(--warn-soft);max-width:640px;color:var(--text);box-shadow:inset 0 0 0 1px var(--warn);border-radius:10px;flex-wrap:wrap;flex:none;align-items:center;gap:8px 12px;margin:0 auto 8px;padding:10px 12px;display:flex}.screen-stall>svg{color:var(--warn);flex:none}.screen-stall-text{flex:200px;min-width:0}.screen-stall-actions{gap:8px;display:flex}.screen-stall.compact{flex-basis:100%;margin:0 0 6px;padding:8px;font-size:.8rem}.screen-stall.compact>svg{width:16px;height:16px}.screen-stall.compact .screen-stall-text{flex-basis:120px}.screen-stall.compact .btn{min-height:0;padding:4px 10px;font-size:.8rem}.voice-bar:has(>.screen-stall){flex-wrap:wrap}.voice-controls{flex:none;justify-content:center;align-items:center;gap:12px;padding:4px 0;display:flex;position:relative}.voice-buttons{background:color-mix(in srgb, var(--surface) 92%, transparent);box-shadow:inset 0 0 0 1px var(--divider-strong), 0 10px 30px #04030c40;border-radius:22px;justify-content:center;align-items:center;gap:10px;padding:8px;display:flex}.vc-btn{box-sizing:border-box;border-radius:16px;flex:none;place-items:center;width:52px;height:52px;min-height:0;padding:0;display:grid;overflow:hidden}.vc-btn.btn-secondary{background:color-mix(in srgb, var(--accent) 12%, var(--surface-2));color:var(--text-strong)}.vc-btn.btn-secondary:not(:disabled):hover{background:color-mix(in srgb, var(--accent) 22%, var(--surface-2));filter:none}.vc-btn.on{background:var(--brand-lavender);color:var(--brand-ink)}.vc-btn.on:not(:disabled):hover{background:#c3cdfd}.vc-btn.muted{color:var(--bad)}.vc-btn.btn-secondary:disabled{background:var(--surface-2);color:var(--muted);opacity:.6;border-color:#0000}.vc-btn.voice-leave{color:#fff;background:#c93558;margin-left:6px}.vc-btn.voice-leave:not(:disabled):hover{filter:none;background:#a92a49}.vc-icon{place-items:center;display:inline-grid}.vc-label{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;position:absolute;overflow:hidden}.voice-raw{background:var(--surface);min-height:36px;color:var(--text);cursor:pointer;border-radius:12px;align-items:center;gap:6px;padding:0 12px;font-size:.85rem;display:flex;position:absolute;top:50%;left:0;transform:translateY(-50%)}.voice-raw input{accent-color:var(--accent)}@media (width>=901px){.space-layout.members-closed{grid-template-columns:minmax(0,1fr)}.space-layout.members-closed .member-list{display:none}.member-list:before{content:"";height:8px;display:block}}@media (width<=900px){.space-layout{grid-template-columns:minmax(0,1fr)}.split{grid-template-columns:1fr}.member-list{z-index:30;width:min(300px,86vw);padding:calc(8px + var(--safe-top)) calc(10px + var(--safe-right)) calc(16px + var(--safe-bottom)) 10px;visibility:hidden;transition:transform .2s,visibility 0s linear .2s;position:fixed;top:0;bottom:0;right:0;transform:translate(100%);box-shadow:-8px 0 24px #0000004d}.members-open .member-list{visibility:visible;transition:transform .2s;transform:none}.voice-raw{position:static;transform:none}.voice-controls{flex-wrap:wrap}}@media (width<=768px){.mode-list .nav-column,.mode-conv .nav-column{width:auto;transition:transform var(--slide), visibility 0s linear .26s;position:absolute;inset:0}.mode-list .nav-column{visibility:visible;transition:transform var(--slide);transform:none}.mode-conv .nav-column{visibility:hidden;transform:translate(-24%)}.mode-list .content,.mode-conv .content{z-index:2;position:absolute;inset:0;box-shadow:-6px 0 18px #00000040}.mode-list .content{visibility:hidden;transition:transform var(--slide), visibility 0s linear .26s;transform:translate(100%)}.mode-list.leaving .content{visibility:visible}.mode-conv .content{visibility:visible;transition:transform var(--slide);transform:none}.mode-page .content{padding-bottom:var(--safe-bottom)}.mode-page .user-panel{border-top:1px solid var(--divider-strong);background:var(--panel)}.nav-bottom{margin:0 8px calc(8px + var(--safe-bottom))}.rail{padding-top:8px}.sidebar-title,.space-header{height:52px}.sidebar-title h2{font-size:1.15rem}.channel-link{min-height:44px;padding:8px 10px;font-size:1.02rem}.channel-gear{display:none}.category .icon-btn{width:40px;height:40px}.dm-link{min-height:52px;font-size:1.02rem}.dm-link .avatar{width:36px;height:36px}.panel-btn{width:44px;height:44px}.space-menu>*{padding:12px 10px}.voice-roster li{min-height:32px}.conv-header{height:52px;padding:0 4px 0 12px}.conv-title{font-size:1.08rem}.header-btn{width:44px;height:44px}.page{padding:16px 12px calc(40px + var(--safe-bottom));gap:14px}.card{padding:16px 14px}.card-head{flex-direction:column;align-items:flex-start;gap:10px}.tabs,.list-item{flex-wrap:wrap}.inline-form{max-width:none}.empty{padding:40px 16px}.auth-card{padding:24px 18px}h1{font-size:1.35rem}.btn{min-height:44px}.field input,.field select,.input,textarea,select,.chat-search-input{font-size:16px}.dialog-backdrop{padding:calc(10px + var(--safe-top)) calc(10px + var(--safe-right)) calc(10px + var(--safe-bottom)) calc(10px + var(--safe-left))}.dialog{max-height:calc(100dvh - 20px - var(--safe-top) - var(--safe-bottom));padding:18px 16px}.dialog .row>.btn{flex:auto}.settings-page>.conv-header{z-index:5;position:sticky;top:0}.messages{padding:8px 0 12px}.message{grid-template-columns:56px minmax(0,1fr);padding-right:8px}.message-avatar{width:38px;height:38px}.message-actions{right:8px}.message-actions .icon-btn{width:40px;height:40px}.day-divider{margin:16px 12px 6px}.identity-notices{padding:8px 10px 0}.chat-search{padding:6px 4px 6px 12px}.search-results{padding:10px 10px 16px}.composer{padding:6px 8px calc(8px + var(--safe-bottom))}.composer-box{border-radius:24px;padding:0 4px}.composer-box textarea{padding:11px 4px}.composer-box textarea::placeholder{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.composer-btn{width:40px}.composer-btn.send{background:var(--accent);color:#fff;border-radius:50%;width:36px;height:36px;margin:4px 2px}.composer-btn.send:hover:not(:disabled){color:#fff;background:var(--accent-hover)}.composer-btn.send:disabled{background:var(--surface-2);color:var(--muted);opacity:1}.composer-disabled{margin:0 8px calc(8px + var(--safe-bottom))}.chat-error{padding:0 8px 6px}.emoji-picker{width:auto;height:min(320px,42dvh);margin:8px -8px calc(-8px - var(--safe-bottom));padding-bottom:var(--safe-bottom);box-shadow:none;border-width:1px 0 0;border-radius:12px 12px 0 0;position:static}.emoji-grid{grid-template-columns:repeat(8,minmax(0,1fr))}.attachment{max-width:100%}.voice-room{gap:8px;padding:8px 8px 0}.voice-grid{gap:6px}.voice-strip .voice-tile{height:72px}.voice-avatar{width:64px;height:64px;font-size:1.7rem}.voice-controls{padding:8px 0 calc(12px + var(--safe-bottom));gap:10px}.voice-buttons{border-radius:18px;gap:6px;padding:6px}.vc-btn{border-radius:14px;width:46px;height:46px}.vc-btn.voice-leave{margin-left:2px}.voice-raw{flex-basis:auto;order:1}.voice-bar.compact .icon-btn{width:40px;height:40px}}@media (hover:none),(pointer:coarse){.icon-btn{min-width:40px;min-height:40px}.member .icon-btn{opacity:1}.channel-gear{display:none}.tabs button,.check{min-height:40px}.check input{width:20px;height:20px}.message-actions{padding:0}.voice-tile-actions{opacity:1}.message-side-time{display:none}}@media (prefers-reduced-motion:reduce){.shell .content,.shell .nav-column,.member-list,.rail-icon,.rail-pill{transition:none!important}.message.flash:after{background:var(--accent-soft);box-shadow:inset 3px 0 0 var(--accent);animation:none}.rec-dot,.waiting:before,.voice-msg-play[aria-busy=true]{animation:none}}.profile-trigger{color:inherit;font:inherit;text-align:inherit;cursor:pointer;background:0 0;border:0;margin:0;padding:0}.profile-trigger:hover .message-author,.profile-trigger:focus-visible .message-author{text-decoration:underline}.message-avatar-btn{border-radius:50%;grid-column:1;place-self:start center}.message-avatar-btn:active{transform:translateY(1px)}.author-btn{min-width:0}.member-main{border-radius:6px;flex:1;align-items:center;gap:10px;min-width:0;min-height:34px;display:flex}.voice-tile-name{color:inherit;font-weight:600}.voice-tile-name:hover{text-decoration:underline}.mention{background:var(--mention-pill-bg);color:var(--mention-pill-text);white-space:nowrap;border-radius:3px;padding:0 2px;font-weight:500}.mention.gone{background:var(--hover);color:var(--muted);font-style:italic}.mention.channel-mention{text-overflow:ellipsis;vertical-align:bottom;cursor:pointer;align-items:center;gap:2px;max-width:100%;text-decoration:none;display:inline-flex;overflow:hidden}.mention.channel-mention:hover,.mention.channel-mention:focus-visible{text-decoration:underline}.channel-mention-icon{flex:none}.message.mentioned{background:var(--mention-bg);box-shadow:inset 3px 0 0 var(--mention-bar)}.message.mentioned:hover,.message.mentioned:focus-within{background:var(--mention-hover-bg)}.message{touch-action:pan-y}.reply-ref{min-width:0;color:var(--muted);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;grid-column:1/-1;align-items:center;gap:4px;margin:0 0 2px;padding:2px 8px 0 76px;font-size:.85rem;display:flex;position:relative}.reply-ref-spine{background:color-mix(in srgb, var(--brand-lavender) 70%, transparent);border-radius:2px;width:3px;height:14px;position:absolute;top:5px;left:66px}.reply-ref-avatar{flex:none;width:16px;height:16px;font-size:.55rem}.reply-ref-author{text-overflow:ellipsis;white-space:nowrap;min-width:0;max-width:45%;color:var(--text-strong);flex:none;font-weight:600;overflow:hidden}.reply-ref-text{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.reply-ref:hover .reply-ref-text,.reply-ref:focus-visible .reply-ref-text{color:var(--text)}.reply-ref.unavailable{cursor:default}.reply-ref-gone{background:var(--divider-strong);width:16px;height:16px;color:var(--muted);border-radius:50%;flex:none;place-items:center;display:inline-grid}.reply-ref.unavailable .reply-ref-text{font-style:italic}.reply-ref.unavailable:hover .reply-ref-text{color:var(--muted)}.message.has-reply{margin-top:16px}.reply-bar{background:var(--surface-2);min-height:36px;color:var(--muted);border-radius:8px 8px 0 0;align-items:center;gap:8px;padding:0 4px 0 12px;font-size:.88rem;display:flex}.reply-bar+.composer-box,.reply-bar+.mention-popup+.composer-box{border-top-left-radius:0;border-top-right-radius:0}.reply-bar-icon{flex:none}.reply-bar-text{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.reply-bar-text strong{color:var(--text-strong)}.reply-ping{font:inherit;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:8px;flex:none;align-items:center;gap:5px;padding:5px 9px;font-size:.8rem;font-weight:600;display:inline-flex}.reply-ping.on{color:var(--link)}.reply-ping:hover{background:var(--hover)}.mention-popup{z-index:30;background:var(--popover);border:1px solid var(--divider-strong);max-height:min(320px,45vh);box-shadow:var(--shadow);border-radius:8px;padding:8px;position:absolute;bottom:calc(100% - 12px);left:16px;right:16px;overflow-y:auto}.mention-popup-title{color:var(--muted);padding:2px 8px 8px;font-size:.8rem;font-weight:600}.friend-suggest-anchor{flex:1;min-width:0;position:relative}.friend-suggest-anchor>.input{width:100%}.mention-popup.friend-suggest{inset:calc(100% + 4px) 0 auto}.friend-invite{gap:6px;display:grid}.friend-invite-list{border:1px solid var(--divider-strong);border-radius:10px;max-height:min(300px,40vh);margin:0;padding:4px;list-style:none;overflow-y:auto}.friend-invite-row{border-radius:8px;align-items:center;gap:10px;min-height:48px;padding:4px 8px;display:flex}.friend-invite-row:hover{background:var(--selected)}.friend-invite-row .avatar{flex:none;width:32px;height:32px;font-size:.8rem}.friend-invite-names{flex:1;min-width:0;display:grid}.friend-invite-names>*{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.friend-invite-name{color:var(--text-strong);font-weight:600}.friend-invite-row .btn{flex:none;min-height:32px;padding:4px 14px}.friend-invite-empty{margin:0}.mention-option{min-height:40px;color:var(--text);cursor:pointer;border-radius:6px;align-items:center;gap:10px;padding:4px 8px;display:flex}.mention-option.active{background:var(--selected);color:var(--text-strong)}.mention-option .avatar{width:26px;height:26px;font-size:.75rem}.mention-option-at{text-align:center;width:26px;color:var(--muted);font-weight:700}.mention-option-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-weight:600;overflow:hidden}.mention-option-hint{white-space:nowrap;margin-left:auto}.channel-row.unread .channel-link{color:var(--text-strong);font-weight:700}.channel-row.unread .channel-icon{color:var(--text-strong)}.channel-row.muted-channel:not(.active) .channel-link{opacity:.55}.channel-link{position:relative}.unread-pill{background:var(--text-strong);border-radius:0 4px 4px 0;width:4px;height:8px;margin-top:-4px;position:absolute;top:50%;left:-8px}.count-badge{background:var(--danger-bg);min-width:18px;height:18px;color:var(--danger-text);text-align:center;border-radius:9px;flex:none;margin-left:auto;padding:0 5px;font-size:.72rem;font-weight:700;line-height:18px}.dm-link.unread{color:var(--text-strong);font-weight:700}.rail-item.unread:not(.active) .rail-pill{opacity:1;border-radius:50%;height:6px;bottom:-9px}.contact-list{gap:2px;max-height:min(360px,50vh);margin:0;padding:0;list-style:none;display:grid;overflow-y:auto}.contact-row{width:100%;min-height:44px;color:var(--text);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:6px;align-items:center;gap:12px;padding:6px 8px;display:flex}.contact-row:hover,.contact-row:focus-visible{background:var(--hover)}.contact-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-weight:500;overflow:hidden}.contact-action{color:var(--link);font-size:.85rem}.profile-backdrop{z-index:45;position:fixed;inset:0}.profile-backdrop.dim{background:var(--backdrop)}.profile-card{background:var(--popover);width:300px;color:var(--text);box-shadow:var(--shadow);border:1px solid var(--divider-strong);border-radius:8px;position:fixed;overflow:hidden}.profile-card.sheet{width:auto;max-height:85dvh;padding-bottom:var(--safe-bottom);animation:sheet-in var(--slide);border-radius:16px 16px 0 0;bottom:0;left:0;right:0;overflow-y:auto}@keyframes sheet-in{0%{transform:translateY(100%)}}.sheet-grip{z-index:1;background:#ffffff80;border-radius:2px;width:36px;height:4px;margin-left:-18px;position:absolute;top:8px;left:50%}.profile-banner{opacity:.85;height:60px}.profile-head{height:44px;position:relative}.profile-avatar{border:6px solid var(--popover);width:80px;height:80px;font-size:2rem;position:absolute;top:-40px;left:16px}.profile-close{position:absolute;top:6px;right:8px}.profile-body{gap:12px;padding:0 16px 16px;display:grid}.profile-name{color:var(--text-strong);overflow-wrap:anywhere;margin:0;font-size:1.25rem}.profile-section h3{color:var(--muted);margin:0 0 6px;font-size:.8rem;font-weight:650}.profile-section p{margin:0}.profile-spaces{gap:4px;margin:0;padding:0;list-style:none;display:grid}.profile-spaces li{align-items:center;gap:8px;min-width:0;display:flex}.profile-space-icon{background:var(--surface-2);width:24px;height:24px;color:var(--text);border-radius:8px;flex:none;place-items:center;font-size:.65rem;font-weight:700;display:grid}.profile-actions{gap:6px;display:grid}.profile-actions .btn{justify-content:center;align-items:center;gap:6px;min-height:40px;display:inline-flex}.action-sheet{padding:22px 8px calc(8px + var(--safe-bottom));background:var(--popover);box-shadow:var(--shadow);animation:sheet-in var(--slide);border-radius:16px 16px 0 0;display:grid;position:fixed;bottom:0;left:0;right:0}.action-sheet button{min-height:52px;color:var(--text);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;align-items:center;gap:12px;padding:0 14px;font-size:1rem;display:flex}.action-sheet button:hover,.action-sheet button:focus-visible{background:var(--hover)}.action-sheet .danger{color:var(--bad)}.action-sheet .cancel{background:var(--surface-2);justify-content:center;margin-top:4px;font-weight:600}.sheet-glyph{text-align:center;width:20px;font-size:1.1rem}@media (hover:none),(pointer:coarse){.app{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}}.app.is-mobile{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}.nav-column,.member-list,.conv-header,.message header,.message-avatar-btn,.message-side-time,.message-actions,.reply-ref,.day-divider,.swipe-icon,.friends-view,.profile-card,.action-sheet,.context-menu,.rail{-webkit-user-select:none;user-select:none}.app img,.app a{-webkit-user-drag:none}.app input,.app textarea,.app select,.app [contenteditable=true]{-webkit-user-select:text;user-select:text;-webkit-touch-callout:default}.menu-backdrop{z-index:46;position:fixed;inset:0}.menu-backdrop.dim{background:var(--backdrop)}.action-sheet{overscroll-behavior:contain;max-height:85dvh;overflow-y:auto}.menu-header{border-bottom:1px solid var(--divider-strong);margin-bottom:4px;padding:0 14px 8px}.menu-header-text{gap:2px;min-width:0;display:grid}.menu-header-text strong{color:var(--text-strong)}.menu-header-text span{text-overflow:ellipsis;white-space:nowrap;font-size:.88rem;overflow:hidden}.menu-group{display:grid}.menu-group+.menu-group{border-top:1px solid var(--divider);margin-top:4px;padding-top:4px}.menu-icon{flex:none;place-items:center;width:22px;display:inline-grid}.menu-label{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.context-menu{z-index:47;background:var(--floating);border:1px solid var(--divider-strong);min-width:220px;max-width:min(300px,100vw - 16px);max-height:calc(100dvh - 16px);box-shadow:var(--shadow);border-radius:8px;padding:6px;position:fixed;overflow-y:auto}.context-menu button{width:100%;min-height:34px;color:var(--text);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:4px;align-items:center;gap:10px;padding:6px 8px;font-size:.9rem;display:flex}.context-menu button:hover,.context-menu button:focus-visible{background:var(--accent);color:#fff;outline:none}.context-menu .danger{color:var(--bad)}.context-menu .danger:hover,.context-menu .danger:focus-visible{background:var(--danger-bg);color:#fff}.message.pressing{background:var(--message-hover);transition:background .15s .12s}.message.swiping>:not(.swipe-icon){transform:translateX(var(--swipe-x,0px));will-change:transform}.message.swipe-release>:not(.swipe-icon){transition:transform .28s cubic-bezier(.2,.9,.3,1.2)}.swipe-icon{width:32px;height:32px;color:var(--muted);background:var(--surface-2);opacity:0;pointer-events:none;border-radius:50%;place-items:center;margin-top:-16px;display:grid;position:absolute;top:50%;left:14px;transform:scale(.5)}.message.swiping .swipe-icon{opacity:var(--swipe-p,0);transform:scale(calc(.5 + .5 * var(--swipe-p,0)))}.message.swipe-armed .swipe-icon{color:#fff;background:var(--accent);transform:scale(1.1)}.message.swipe-release .swipe-icon{transition:opacity .2s,transform .2s}.message{isolation:isolate}.message.flash:after,.message.reply-target:before{z-index:-1}.message.reply-target:before{content:"";pointer-events:none;background:var(--accent-soft);box-shadow:inset 3px 0 0 var(--accent);position:absolute;inset:0}.message.tombstone .message-body{font-style:italic}.blocked-run{background:var(--surface);color:var(--muted);border-radius:6px;align-items:center;gap:8px;margin:8px 16px 0 66px;padding:6px 10px;font-size:.88rem;display:flex}.blocked-run .link-btn{margin-left:auto}.app-notice{left:50%;bottom:calc(96px + var(--safe-bottom));z-index:60;background:var(--floating);max-width:calc(100vw - 32px);color:var(--text-strong);border:1px solid var(--divider-strong);box-shadow:var(--shadow);pointer-events:none;border-radius:999px;padding:8px 14px;font-size:.9rem;animation:.2s ease-out toast-in;position:fixed;transform:translate(-50%)}.profile-relation{color:var(--muted);margin:-6px 0 0}.profile-menu{background:var(--surface);border-radius:8px;gap:2px;padding:4px;display:grid}.profile-action{min-height:40px;color:var(--text);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:6px;align-items:center;gap:10px;padding:6px 10px;font-size:.92rem;display:flex}.profile-action:hover,.profile-action:focus-visible{background:var(--hover)}.profile-action.danger{color:var(--bad)}.profile-card.popover{max-height:calc(100dvh - 24px);overflow-y:auto}.contact-row.static{cursor:default}.friends-link{margin:8px 8px 4px;font-weight:600}.friends-link-icon{place-items:center;width:32px;display:grid}.friends-view{flex-direction:column;height:100%;min-height:0;display:flex}.friends-tabs{border-bottom:1px solid var(--divider);scrollbar-width:none;flex:none;gap:6px;padding:10px 16px;display:flex;overflow-x:auto}.friends-tab{min-height:34px;color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:6px;flex:none;align-items:center;gap:6px;padding:4px 12px;font-weight:600;display:inline-flex}.friends-tab:hover{background:var(--hover);color:var(--text)}.friends-tab.active{background:var(--selected);color:var(--text-strong)}.friends-tab.add{background:var(--accent);color:var(--accent-text)}.friends-tab.add.active{background:var(--accent-soft);color:var(--link)}.friends-body{flex:1;min-height:0;padding:8px 16px 24px;overflow-y:auto}.friends-heading{color:var(--muted);margin:12px 0 6px;font-size:.82rem;font-weight:600}.friends-empty{margin:4px 0 12px}.friends-list{margin:0;padding:0;list-style:none}.friend-row{border-top:1px solid var(--divider);align-items:center;gap:8px;min-height:56px;display:flex}.friend-main{min-width:0;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;flex:1;align-items:center;gap:12px;padding:8px 6px;display:flex}.friend-main:hover{background:var(--hover)}.friend-avatar{flex:none;position:relative}.friend-avatar .status-dot{position:absolute;bottom:-2px;right:-2px}.friend-names{min-width:0;display:grid}.friend-names strong{color:var(--text-strong);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.friend-actions{flex:none;gap:6px;display:flex}.icon-btn.round{background:var(--surface);border-radius:50%;width:38px;height:38px}.icon-btn.round.ok{color:var(--ok)}.add-friend{gap:12px;max-width:640px;display:grid}.add-friend-form{flex-wrap:wrap;gap:8px;display:flex}.add-friend-form .input{flex:220px;min-width:0}@media (width<=768px){.blocked-run{margin-left:56px;margin-right:8px}.context-menu button{min-height:44px}.friends-tabs{padding:8px 12px}.friends-body{padding:4px 12px calc(24px + var(--safe-bottom))}}@media (hover:none){.message:hover{background:0 0}.message.mentioned:hover{background:var(--mention-bg)}.message:hover .message-actions{display:none}}.app.is-mobile .message-actions{display:none!important}@media (hover:none){.action-sheet button:hover:not(:focus-visible),.profile-action:hover:not(:focus-visible),.friend-main:hover{background:0 0}.action-sheet .cancel:hover{background:var(--surface-2)}}@media (prefers-reduced-motion:reduce){.message.swipe-release>:not(.swipe-icon),.message.swipe-release .swipe-icon,.message.pressing,.app-notice{transition:none;animation:none}}.switch-row,.radio-row{cursor:pointer;align-items:flex-start;gap:10px;display:flex}.switch-row input,.radio-row input{flex:none;width:18px;height:18px;margin-top:3px}.block{display:block}.notify-levels{border:0;gap:10px;margin:0;padding:0;display:grid}.notify-levels legend{color:var(--text-strong);margin-bottom:8px;padding:0;font-size:.86rem;font-weight:600}.notify-levels:disabled{opacity:.5}.notify-toasts{top:calc(56px + var(--safe-top));z-index:50;pointer-events:none;gap:8px;width:max-content;max-width:calc(100vw - 24px);display:grid;position:fixed;left:50%;transform:translate(-50%)}.notify-toast{pointer-events:auto;background:var(--popover);border:1px solid var(--divider-strong);border-left:3px solid var(--danger-bg);box-shadow:var(--shadow);border-radius:8px;align-items:center;gap:4px;padding:4px;animation:.2s ease-out toast-in;display:flex}@keyframes toast-in{0%{opacity:0;transform:translateY(-6px)}}.notify-toast-link{color:var(--text);gap:1px;min-width:0;padding:6px 10px;font-size:.88rem;text-decoration:none;display:grid}.notify-toast-link strong{color:var(--text-strong)}.notify-toast-link span{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}@media (width<=768px){.reply-ref{padding-left:66px}.reply-ref-spine{left:56px}.mention-popup{left:8px;right:8px}.mention-option{min-height:44px}.member-main{min-height:40px}}@media (prefers-reduced-motion:reduce){.profile-card.sheet,.action-sheet,.notify-toast{animation:none}}.device-request{z-index:60;right:calc(16px + var(--safe-right));bottom:calc(96px + var(--safe-bottom));border-radius:var(--radius);border:1px solid var(--divider-strong);background:var(--floating);width:min(380px,100vw - 32px);color:var(--text);box-shadow:var(--shadow);gap:10px;padding:16px;display:grid;position:fixed}.device-request h2{color:var(--text-strong);margin:0;font-size:1rem}.device-request p{margin:0}.device-request .row{flex-wrap:wrap}@media (width<=768px){.device-request{left:calc(12px + var(--safe-left));right:calc(12px + var(--safe-right));top:calc(12px + var(--safe-top));width:auto;bottom:auto}}.approvers ul{margin:4px 0 12px;padding-left:20px}.alert.dismissible{align-items:flex-start;gap:8px;display:flex}.alert.dismissible>span{flex:1;min-width:0}.alert-close{width:32px;height:32px;color:inherit;cursor:pointer;background:0 0;border:0;border-radius:6px;flex:none;place-items:center;margin:-6px -6px -6px 0;font-size:1.3rem;line-height:1;display:grid}.alert-close:hover{background:var(--hover)}.app-bg{z-index:-1;pointer-events:none;background:#0b0a17;position:fixed;inset:0;overflow:hidden}.app-bg.contained{z-index:0;position:absolute}.app-bg-layer,.app-bg-video,.bg-anim,.app-bg-dim{position:absolute;inset:0}.app-bg-video{object-fit:cover;width:100%;height:100%}.app-bg-dim{background:#000}.app-bg.blurred .app-bg-layer,.app-bg.blurred .app-bg-video,.app-bg.blurred .bg-anim{filter:blur(16px)saturate(1.15);transform:scale(1.06)}html.has-wallpaper body,html.has-wallpaper .app,html.has-wallpaper .sidebar{background:0 0}html.has-wallpaper .emoji-picker,html.has-wallpaper .emoji-cat{background:var(--popover)}.bg-anim{background:var(--bg-a);overflow:hidden}.bg-anim span{will-change:transform;position:absolute}.bg-anim-aurora span{filter:blur(70px);opacity:.75;border-radius:50%;width:70vmax;height:70vmax}.bg-anim-aurora span:first-child{background:var(--bg-b);animation:30s ease-in-out infinite alternate bg-drift-a;top:-25vmax;left:-20vmax}.bg-anim-aurora span:nth-child(2){background:var(--bg-c);animation:36s ease-in-out infinite alternate bg-drift-b;bottom:-30vmax;right:-25vmax}.bg-anim-aurora span:nth-child(3){background:var(--bg-b);opacity:.45;width:45vmax;height:45vmax;animation:42s ease-in-out infinite alternate bg-drift-c;top:20%;left:30%}.bg-anim-waves{background:linear-gradient(125deg, var(--bg-a), var(--bg-b), var(--bg-c), var(--bg-a));background-size:300% 300%;animation:40s ease-in-out infinite alternate bg-pan}.bg-anim-waves span{background:#ffffff0f;border-radius:45%;width:200%;height:60%;left:-50%}.bg-anim-waves span:first-child{animation:26s linear infinite bg-wave;bottom:-38%}.bg-anim-waves span:nth-child(2){background:#ffffff0a;animation:34s linear infinite reverse bg-wave;bottom:-42%}.bg-anim-waves span:nth-child(3){background:#00000014;animation:48s linear infinite bg-wave;top:-45%}.bg-anim-particles span,.bg-anim-starfield span{background-image:radial-gradient(circle, var(--bg-b) 0 1.5px, transparent 2.5px);opacity:.55;background-size:64px 64px;height:150%;animation:60s linear infinite bg-rise;inset:-50% 0 0}.bg-anim-particles span:nth-child(2){background-image:radial-gradient(circle, var(--bg-c) 0 2px, transparent 3px);background-position:30px 40px;background-size:110px 110px;animation-duration:90s}.bg-anim-particles span:nth-child(3){opacity:.25;background-size:37px 37px;animation-duration:45s}.bg-anim-starfield span{background-image:radial-gradient(circle, var(--bg-c) 0 1px, transparent 1.5px);background-size:90px 90px;animation:6s ease-in-out infinite alternate bg-twinkle,140s linear infinite bg-rise}.bg-anim-starfield span:nth-child(2){background-position:45px 70px;background-size:140px 140px;animation-delay:-3s,-40s}.bg-anim-starfield span:nth-child(3){background-image:radial-gradient(circle, var(--bg-b) 0 1.5px, transparent 2.5px);background-size:210px 210px;animation-delay:-1s,-90s}@keyframes bg-drift-a{to{transform:translate(28vw,18vh)scale(1.15)}}@keyframes bg-drift-b{to{transform:translate(-30vw,-16vh)scale(1.2)}}@keyframes bg-drift-c{to{transform:translate(-18vw,22vh)scale(.85)}}@keyframes bg-pan{to{background-position:100% 100%}}@keyframes bg-wave{to{transform:translate(25%)rotate(4deg)}}@keyframes bg-rise{to{transform:translateY(33%)}}@keyframes bg-twinkle{to{opacity:.2}}.app-bg.paused .bg-anim,.app-bg.paused .bg-anim span{animation-play-state:paused}@media (prefers-reduced-motion:reduce){.bg-anim,.bg-anim span{animation:none}}html.density-compact .message{margin-top:6px;padding-top:0;padding-bottom:0}.custom-emoji{object-fit:contain;vertical-align:-.3em;width:1.375em;height:1.375em;display:inline-block}.custom-emoji.placeholder{background:var(--hover);border-radius:4px}.custom-emoji-missing{color:var(--muted)}.message-text.jumbo{font-size:2.75rem;line-height:1.25}.message-text.jumbo .custom-emoji{vertical-align:-.35rem;width:3rem;height:3rem}.message-text.jumbo .badge,.message-text.jumbo .edited{font-size:.8rem}.gif-view{background:var(--hover);border-radius:8px;width:min(300px,100%);max-height:340px;margin:4px 0;display:block;position:relative;overflow:hidden}.gif-view img{object-fit:contain;width:100%;height:100%;display:block}.picker-modes{flex:none;gap:4px;padding:6px 6px 0;display:flex}.picker-modes button{min-height:32px;color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:6px;flex:1;font-weight:600}.picker-modes button.on{background:var(--hover);color:var(--text-strong)}.emoji-body{flex-direction:column;flex:1;min-height:0;display:flex}.emoji-tab-server{background:var(--accent);width:26px;height:26px;color:var(--accent-text);border-radius:50%;place-items:center;font-size:.7rem;font-weight:700;display:grid}.emoji-btn .custom-emoji{vertical-align:middle;width:30px;height:30px}.gif-panel{overscroll-behavior:contain;flex:1;min-height:0;padding:0 8px 8px;overflow-y:auto}.gif-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;display:grid}.gif-tile{position:relative}.gif-pick{cursor:pointer;background:0 0;border:0;border-radius:8px;width:100%;padding:0;display:block}.gif-pick .gif-view{width:100%;margin:0}.gif-pick:hover .gif-view,.gif-pick:focus-visible .gif-view{outline:2px solid var(--accent)}.gif-star{color:#fff;cursor:pointer;background:#0000008c;border:0;border-radius:50%;width:30px;height:30px;font-size:1rem;position:absolute;top:4px;right:4px}.gif-star.on{color:#f5b84a}.gif-empty{padding:4px 4px 8px}.theme-editor{grid-template-columns:minmax(0,1fr) minmax(260px,360px);align-items:start;gap:20px;display:grid}.theme-field{border:0;min-width:0;margin:0 0 16px;padding:0}.theme-field legend{color:var(--text-strong);margin-bottom:8px;padding:0;font-size:.86rem;font-weight:600}.preset-grid{grid-template-columns:repeat(auto-fill,minmax(112px,1fr));gap:8px;display:grid}.preset-choice,.seg-item{cursor:pointer;position:relative}.preset-choice input,.seg-item input{opacity:0;pointer-events:none;position:absolute}.preset-choice{background:var(--surface);border:2px solid #0000;border-radius:8px;gap:6px;padding:8px;font-size:.85rem;display:grid}.preset-choice.on{border-color:var(--accent)}:is(.preset-choice:has(input:focus-visible),.seg-item:has(input:focus-visible)){outline:2px solid var(--focus);outline-offset:2px}.preset-swatch{border:1px solid var(--divider-strong);border-radius:6px;height:42px}.preset-system{background:linear-gradient(135deg,#fdfcff 50%,#1e1d33 50%)}.preset-dark{background:linear-gradient(90deg,#0f0e1d 20%,#18172b 20% 45%,#1e1d33 45%);box-shadow:inset -12px 0 #6c47e8}.preset-light{background:linear-gradient(90deg,#e6e4f2 20%,#f4f3fa 20% 45%,#fdfcff 45%);box-shadow:inset -12px 0 #6c47e8}.preset-amoled{background:linear-gradient(90deg,#000 20%,#08080f 20% 45%,#000 45%);box-shadow:inset -12px 0 #a5b4fc}.preset-midnight{background:linear-gradient(90deg,#0f111f 20%,#161929 20% 45%,#1b1e30 45%);box-shadow:inset -12px 0 #8b7cff}.preset-forest{background:linear-gradient(90deg,#121a16 20%,#1a231e 20% 45%,#1f2a24 45%);box-shadow:inset -12px 0 #3fb37f}.preset-sunset{background:linear-gradient(90deg,#1b121d 20%,#251a27 20% 45%,#2c1f2e 45%);box-shadow:inset -12px 0 #f47b67}.preset-ocean{background:linear-gradient(90deg,#0a161c 20%,#102028 20% 45%,#13252e 45%);box-shadow:inset -12px 0 #1fb6c9}.preset-sakura{background:linear-gradient(90deg,#f7d7e3 20%,#fde9f0 20% 45%,#fff6f9 45%);box-shadow:inset -12px 0 #d6457a}.accent-row,.seg{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.seg{gap:4px;margin-bottom:10px}.accent-swatch{cursor:pointer;border:0;border-radius:50%;width:32px;height:32px}.accent-swatch.on{outline:2px solid var(--text-strong);outline-offset:2px}.accent-swatch.auto{background:var(--surface-2);width:auto;color:var(--text);font:inherit;border-radius:16px;padding:0 12px;font-size:.85rem}.accent-custom,.color-field,.select-field{align-items:center;gap:8px;font-size:.9rem;display:inline-flex}.theme-editor input[type=color]{border:1px solid var(--divider-strong);cursor:pointer;background:0 0;border-radius:6px;width:44px;height:34px;padding:2px}.seg-item{background:var(--surface-2);border-radius:16px;padding:7px 12px;font-size:.85rem}.seg-item.on{background:var(--accent);color:var(--accent-text)}.range-field{gap:4px;margin:10px 0;font-size:.9rem;display:grid}.range-field input,.check-field input{accent-color:var(--accent)}.range-field input{width:100%}.check-field{align-items:flex-start;gap:8px;margin:8px 0;font-size:.9rem;display:flex}.check-field input{margin-top:3px}.select-field select{border:1px solid var(--divider-strong);background:var(--surface-2);color:var(--text);font:inherit;border-radius:6px;padding:6px}.gradient-field .row,.animated-field .row,.picture-field .row{flex-wrap:wrap;gap:8px}.bg-thumbs{flex-wrap:wrap;gap:12px;margin:10px 0;padding:0;list-style:none;display:flex}.bg-thumbs li{justify-items:center;gap:2px;display:grid;position:relative}.bg-thumb{background:var(--surface-2);cursor:pointer;border:2px solid #0000;border-radius:8px;width:96px;height:60px;padding:0;position:relative;overflow:hidden}.bg-thumb.on{border-color:var(--accent)}.bg-thumb-img{position:absolute;inset:0}.bg-thumb-video{height:100%;color:var(--text);place-items:center;font-size:1.4rem;display:grid}.bg-thumb-del{background:var(--danger-bg);width:24px;height:24px;color:var(--danger-text);cursor:pointer;border:0;border-radius:50%;line-height:1;position:absolute;top:-8px;right:-8px}.theme-preview{border:1px solid var(--divider-strong);isolation:isolate;background:var(--surface-2);border-radius:12px;height:250px;margin:0;position:sticky;top:12px;overflow:hidden}.tp-app{z-index:1;font-size:.78rem;display:flex;position:absolute;inset:0}.tp-rail{background:var(--rail);flex-direction:column;flex:none;align-items:center;gap:8px;width:44px;padding:10px 0;display:flex}.tp-dot{background:var(--panel);border-radius:8px;width:26px;height:26px}.tp-dot.accent{background:var(--accent);box-shadow:0 0 0 2px var(--rail), 0 0 0 3px var(--brand-lavender)}.tp-side{background:var(--sidebar);width:108px;color:var(--muted);flex-direction:column;flex:none;gap:4px;padding:10px 6px;display:flex}.tp-line{background:var(--text-strong);opacity:.6;border-radius:5px;height:10px;margin:2px 4px 8px}.tp-chan{border-radius:4px;padding:3px 6px}.tp-chan.on{color:var(--text-strong);background:#80808040}.tp-chat{background:var(--bg);min-width:0;color:var(--text);flex-direction:column;flex:1;gap:10px;padding:12px;display:flex}.tp-msg{gap:8px;display:flex}.tp-msg strong{color:var(--text-strong)}.tp-msg p{margin:2px 0 0}.tp-avatar{background:var(--accent);border-radius:50%;flex:none;width:28px;height:28px}.tp-avatar.b{background:#f47b67}.tp-mention{background:var(--mention-pill-bg);color:var(--text-strong);border-radius:3px;padding:0 2px}.tp-composer{background:var(--composer);color:var(--muted);border-radius:8px;margin-top:auto;padding:8px 10px}.upload-row{justify-items:start;gap:8px;margin:8px 0;display:grid}.expr-list{gap:6px;margin:8px 0 0;padding:0;list-style:none;display:grid}.expr-row{background:var(--surface);border-radius:8px;flex-wrap:wrap;align-items:center;gap:12px;padding:6px 8px;display:flex}.expr-pic{flex:none;place-items:center;width:48px;height:48px;display:grid}.expr-pic .custom-emoji{width:40px;height:40px}.expr-pic .gif-view{width:48px;height:48px;margin:0}.expr-name{align-items:center;gap:2px;font-family:ui-monospace,Cascadia Mono,Consolas,monospace;display:inline-flex}.expr-name input{border:1px solid var(--divider-strong);background:var(--surface-2);width:16ch;color:var(--text);font:inherit;border-radius:4px;padding:4px 6px}.expr-meta{margin-left:auto}@media (width<=900px){.theme-editor{grid-template-columns:1fr}.theme-preview{order:-1;height:200px;position:relative;top:0}}.voice-room{position:relative}.vc-split{display:inline-flex;position:relative}.vc-arrow{border:2px solid var(--surface);background:color-mix(in srgb, var(--accent) 30%, var(--surface-2));width:22px;height:22px;color:var(--text-strong);cursor:pointer;border-radius:8px;place-items:center;padding:0;display:grid;position:absolute;top:-6px;right:-6px}.vc-arrow svg{transition:transform .15s;transform:rotate(180deg)}.vc-arrow.open svg{transform:none}.vc-arrow:hover,.vc-arrow.open{background:var(--accent)}.vc-arrow:focus-visible{outline:2px solid var(--focus);outline-offset:1px}.vc-popover{z-index:20;border:1px solid var(--border);background:var(--popover);width:min(330px,100vw - 32px);max-height:min(64vh,540px);color:var(--text);text-align:left;border-radius:14px;gap:10px;padding:12px;font-size:.9rem;display:grid;position:absolute;bottom:calc(100% + 14px);left:50%;overflow:auto;transform:translate(-50%);box-shadow:0 10px 28px #04030c59}.vc-popover-body{gap:12px;display:grid}.vc-popover .field{gap:4px}.vc-popover-link{border-top:1px solid var(--border);color:var(--brand-lavender);padding-top:10px;font-weight:600}.av-radios{border:0;gap:2px;min-width:0;margin:0;padding:0;display:grid}.av-radios legend,.av-segmented legend{color:var(--text-strong);margin-bottom:6px;padding:0;font-size:.86rem;font-weight:600}.av-radio{cursor:pointer;overflow-wrap:anywhere;border-radius:4px;align-items:center;gap:10px;min-height:34px;padding:4px 8px;display:flex}.av-radio:hover{background:var(--hover)}.av-radio input{width:18px;height:18px;accent-color:var(--accent);flex:none;margin:0}.av-checks{gap:2px;display:grid}.av-quality{gap:10px;display:grid}.av-segmented{border:0;flex-wrap:wrap;gap:4px;min-width:0;margin:0;padding:0;display:flex}.av-segmented legend{width:100%}.av-segmented label{background:var(--surface-2);min-width:56px;min-height:36px;color:var(--text);cursor:pointer;border-radius:6px;place-items:center;padding:6px 12px;font-weight:600;display:grid;position:relative}.av-segmented label.on{background:var(--accent);color:var(--accent-text)}.av-segmented label:has(input:disabled){opacity:.45;cursor:not-allowed}.av-segmented label:focus-within{outline:2px solid var(--focus);outline-offset:1px}.av-segmented input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.av-estimate{margin:0}.av-slider input[type=range]{width:100%;accent-color:var(--accent)}.voice-controls-side{position:absolute;top:50%;left:0;transform:translateY(-50%)}.vc-pill{background:var(--surface);min-height:36px;color:var(--text);box-shadow:inset 0 0 0 1px var(--divider-strong);font:inherit;cursor:pointer;border:0;border-radius:12px;padding:0 14px;font-size:.85rem}.vc-pill:hover{background:color-mix(in srgb, var(--accent) 14%, var(--surface))}.vc-pill.on{background:var(--brand-lavender);color:var(--brand-ink)}a.vc-btn{text-decoration:none}.voice-stats{z-index:5;color:#f7f6ff;background:#0c0b1adb;border-radius:12px;width:min(440px,100% - 24px);max-height:55%;padding:8px 10px;font-family:ui-monospace,Cascadia Mono,Consolas,monospace;font-size:.75rem;line-height:1.45;position:absolute;top:12px;left:12px;overflow:auto}.voice-stats p{margin:4px 0}.voice-stats ul{margin:0;padding:0;list-style:none}.voice-stats li{border-top:1px solid #ffffff1f;margin-top:6px;padding-top:6px}.voice-stats-head{justify-content:space-between;align-items:center;display:flex}.voice-stats-head .voice-tile-btn{width:28px;height:28px}.voice-stats-warn{color:#f5b84a}.voice-stats-tag{color:#0f0e1e;background:#f5b84a;border-radius:4px;margin-left:6px;padding:0 6px;font-weight:700}.voice-tile-btn.on{background:var(--accent)}.voice-volume{z-index:3;border:1px solid var(--border);background:var(--popover);width:min(270px,100% - 12px);color:var(--text);cursor:default;border-radius:12px;gap:6px;padding:10px 12px;font-size:.85rem;display:grid;position:absolute;top:48px;right:6px}.voice-volume .field{gap:4px}.voice-volume-foot{justify-content:space-between;align-items:center;gap:8px;display:flex}.voice-volume-foot .btn{white-space:nowrap;flex:none;min-height:30px;padding:2px 10px}.voice-strip .voice-volume{top:4px}.av-sections{gap:18px;display:grid}.av-page .card>h2{margin:0}.av-test{justify-items:start;gap:8px;display:grid}.av-test .hint,.av-test .alert{justify-self:stretch;margin:0}.av-meter{background:var(--surface-2);border-radius:4px;width:100%;height:8px;overflow:hidden}.av-meter span{background:#2fc48d;height:100%;transition:width 80ms linear;display:block}.av-preview{aspect-ratio:16/9;object-fit:contain;background:#000;border-radius:8px;width:min(100%,480px)}.av-preview.mirror{transform:scaleX(-1)}@media (width<=900px){.voice-controls-side{position:static;transform:none}}@media (width<=768px){.voice-controls-side{order:1}.voice-stats{width:calc(100% - 16px);font-size:.7rem;top:8px;left:8px}}.messages>*{flex-shrink:0}.reactions{flex-wrap:wrap;align-items:center;gap:4px;margin:4px 0 2px;display:flex}.reaction-wrap{display:inline-flex;position:relative}.reaction-pill{background:var(--surface);min-height:26px;color:var(--text);font:inherit;cursor:pointer;-webkit-user-select:none;user-select:none;border:1px solid #0000;border-radius:8px;align-items:center;gap:5px;padding:2px 7px;font-size:.875rem;line-height:1;display:inline-flex}.reaction-pill:hover{border-color:var(--divider-strong)}.reaction-pill.mine{background:var(--accent-soft);border-color:var(--accent)}.reaction-pill.mine .reaction-count{color:var(--accent)}.reaction-pill[aria-disabled=true]{cursor:default}.reaction-emoji{font-size:1.05rem;line-height:1}.reaction-pill .custom-emoji{vertical-align:middle;width:18px;height:18px}.reaction-count{font-variant-numeric:tabular-nums;min-width:9px;color:var(--interactive);font-weight:600}.reaction-add{background:var(--surface);width:30px;height:26px;color:var(--interactive);cursor:pointer;border:1px solid #0000;border-radius:8px;place-items:center;display:none}.message:hover .reaction-add,.reaction-add:focus-visible{display:grid}.reaction-tooltip{z-index:20;background:var(--floating);width:max-content;max-width:260px;color:var(--text);box-shadow:var(--shadow);pointer-events:none;border-radius:8px;align-items:center;gap:8px;padding:8px 10px;font-size:.82rem;display:flex;position:absolute;bottom:calc(100% + 6px);left:0}.reaction-tooltip .reaction-emoji,.reaction-tooltip .custom-emoji{flex:none;width:32px;height:32px;font-size:1.8rem}.quick-reactions{align-items:center;gap:2px;display:flex}.quick-reaction{width:32px;height:32px;color:var(--interactive);cursor:pointer;background:0 0;border:0;border-radius:6px;place-items:center;font-size:1.15rem;display:grid}.quick-reaction:hover,.quick-reaction:focus-visible{background:var(--hover)}.quick-reaction .custom-emoji{width:22px;height:22px}.message-actions .quick-reactions{border-right:1px solid var(--divider-strong);margin-right:2px;padding-right:2px}.menu-top{border-bottom:1px solid var(--divider-strong);margin-bottom:4px;padding:4px 6px 10px}.menu-top .quick-reactions{justify-content:space-between}.menu-top .quick-reaction{background:var(--surface);border-radius:50%;width:46px;height:46px;font-size:1.5rem}.action-sheet .menu-top .quick-reaction{justify-content:center;min-height:46px;padding:0}.reaction-picker-layer{z-index:60;pointer-events:none;position:fixed;inset:0}.reaction-picker-layer.sheet{background:var(--backdrop);pointer-events:auto}.reaction-picker-box{pointer-events:auto;position:fixed}.reaction-picker-layer.sheet .reaction-picker-box{bottom:0;left:0;right:0}.emoji-picker.reaction-picker{width:min(380px,100vw - 16px);position:static}.reaction-picker-layer.sheet .emoji-picker.reaction-picker{width:100%;height:min(440px,70dvh);padding-bottom:var(--safe-bottom);border-radius:16px 16px 0 0;margin:0}.menu-backdrop.center{background:var(--backdrop);place-items:center;display:grid}.who-reacted.dialog{flex-direction:column;width:min(420px,100vw - 32px);max-height:min(520px,80dvh);display:flex}.who-reacted-head{justify-content:space-between;align-items:center;padding:0 6px;display:flex}.who-reacted-head h2{margin:0;font-size:1.1rem}.who-reacted-tabs{border-bottom:1px solid var(--divider-strong);gap:4px;padding:8px 6px;display:flex;overflow-x:auto}.who-reacted .who-reacted-tabs button{background:var(--surface);min-height:34px;color:var(--text);font:inherit;cursor:pointer;border:1px solid #0000;border-radius:8px;align-items:center;gap:6px;padding:0 10px;font-weight:600;display:inline-flex}.who-reacted .who-reacted-tabs button.on{border-color:var(--accent);background:var(--accent-soft)}.who-reacted-list{margin:0;padding:8px 6px;list-style:none;overflow-y:auto}.who-reacted-list li{align-items:center;gap:10px;min-height:40px;display:flex}.who-reacted-name{font-weight:600}.poll{background:var(--surface);border:1px solid var(--divider-strong);border-radius:10px;max-width:520px;margin:6px 0 2px;padding:14px 16px 10px}.poll-head{color:var(--text-strong);align-items:flex-start;gap:8px;display:flex}.poll-head svg{color:var(--accent);flex:none;margin-top:2px}.poll-question{overflow-wrap:anywhere;font-size:1.05rem;font-weight:700}.poll-sub{margin:2px 0 10px 26px}.poll-answers{gap:6px;margin:0;padding:0;list-style:none;display:grid}.poll-answer{border:1px solid var(--divider-strong);background:var(--bg);width:100%;min-height:44px;color:var(--text);font:inherit;text-align:left;cursor:pointer;border-radius:8px;align-items:center;gap:10px;padding:8px 12px;display:flex;position:relative;overflow:hidden}.poll-answer:hover:not(:disabled){border-color:var(--accent)}.poll-answer:disabled{cursor:default}.poll-answer.mine{border-color:var(--accent)}.poll-bar{background:var(--hover);transition:width .3s;position:absolute;inset:0 auto 0 0}.poll-answer.mine .poll-bar{background:var(--accent-soft)}.poll-answer.winner{font-weight:700}.poll-answer>:not(.poll-bar){position:relative}.poll-check{border:2px solid var(--interactive);width:20px;height:20px;color:var(--accent-text);border-radius:50%;flex:none;place-items:center;display:grid}.poll-check.box{border-radius:5px}.poll-check.on{border-color:var(--accent);background:var(--accent)}.poll-answer-text{overflow-wrap:anywhere;flex:1;min-width:0}.poll-percent{font-variant-numeric:tabular-nums;flex:none;font-weight:700}.poll-footer{flex-wrap:wrap;align-items:center;gap:6px 10px;margin-top:10px;display:flex}.poll-footer .spacer{flex:1}.poll-footer .link-btn.danger{color:var(--bad)}.poll-note{align-items:center;gap:4px;margin:6px 0 0;display:flex}.poll.closed .poll-head svg{color:var(--muted)}.poll-voters section+section{margin-top:10px}.poll-voters h3{margin:0 0 2px;font-size:.95rem}.poll-voters p{margin:0}.poll-result{background:var(--surface);color:var(--text);border-radius:8px;flex-wrap:wrap;align-items:center;gap:6px 10px;margin:8px 16px 4px 66px;padding:8px 12px;font-size:.9rem;display:flex}.poll-result svg{color:var(--accent);flex:none}.poll-form{gap:8px;display:grid}.poll-form input:not([type=checkbox]),.poll-form select{border:1px solid var(--border);background:var(--bg);width:100%;min-height:40px;color:var(--text);font:inherit;border-radius:6px;padding:8px 10px}.poll-form fieldset{border:0;gap:6px;margin:0;padding:0;display:grid}.poll-form legend{margin-bottom:4px;font-weight:600}.poll-form-answer{align-items:center;gap:6px;display:flex}.poll-form-answer input{flex:1}.poll-form-emoji{flex:none;font-size:1.2rem}.poll-form-add{justify-self:start}.poll-form-row{gap:4px;display:grid}.poll-form .check{align-items:center;gap:8px;display:flex}.dialog:has(.poll-form){width:min(520px,100vw - 32px);max-height:90dvh;overflow-y:auto}.attach-popover{z-index:47;background:var(--floating);border:1px solid var(--divider-strong);width:min(360px,100vw - 16px);box-shadow:var(--shadow);border-radius:10px;padding:8px;position:fixed}.attach-options{gap:2px;display:grid}.attach-sheet .attach-option{min-height:52px;color:var(--text);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;align-items:center;gap:12px;padding:6px 10px;display:flex}.attach-sheet .attach-option:hover,.attach-sheet .attach-option:focus-visible{background:var(--hover)}.attach-option-icon{background:var(--surface);width:40px;height:40px;color:var(--interactive);border-radius:50%;flex:none;place-items:center;display:grid}.attach-option.media .attach-option-icon{color:#2fb88a}.attach-option.camera .attach-option-icon{color:#8b7cff}.attach-option.files .attach-option-icon{color:#f0a43a}.attach-option.poll .attach-option-icon{color:#d65bb0}.attach-option-text{min-width:0;display:grid}.attach-option-label{font-weight:600}.attach-option-hint{color:var(--muted);font-size:.82rem}.attach-recent{border-bottom:1px solid var(--divider);margin-bottom:4px;padding:2px 4px 8px}.attach-recent-title{margin:0 2px 6px;font-weight:600}.attach-recent-row{scrollbar-width:thin;gap:6px;margin:0;padding:0 0 2px;list-style:none;display:flex;overflow-x:auto}.attach-sheet .attach-recent-item{background:var(--surface);cursor:pointer;border:0;border-radius:8px;place-items:center;width:72px;height:72px;min-height:0;padding:0;display:grid;position:relative;overflow:hidden}.attach-recent-item img{object-fit:cover;width:100%;height:100%}.attach-recent-play{color:#fff;background:#0009;border-radius:50%;place-items:center;width:22px;height:22px;display:grid;position:absolute;bottom:4px;right:4px}.attach-note{margin:6px 8px 2px}.attach-tray{background:var(--composer);border-radius:8px;margin:0 0 8px;padding:10px}.attach-tray-items{gap:10px;margin:0;padding:0 0 4px;list-style:none;display:flex;overflow-x:auto}.tray-item{background:var(--bg);border-radius:6px;flex:none;gap:2px;width:132px;padding:8px;display:grid;position:relative}.tray-thumb{background:var(--surface);height:96px;color:var(--interactive);border-radius:4px;place-items:center;display:grid;position:relative;overflow:hidden}.tray-thumb img{object-fit:cover;width:100%;height:100%}.tray-item.spoiler .tray-thumb img{filter:blur(14px)}.tray-spoiler-label{color:#fff;letter-spacing:.04em;background:#000000a6;border-radius:999px;padding:2px 8px;font-size:.7rem;font-weight:700;position:absolute}.tray-progress{color:#fff;background:#0009;border-radius:999px;padding:1px 6px;font-size:.72rem;position:absolute;inset:auto 4px 4px auto}.tray-name{text-overflow:ellipsis;white-space:nowrap;font-size:.8rem;overflow:hidden}.tray-size{font-size:.72rem}.tray-actions{background:var(--floating);border-radius:6px;gap:2px;padding:2px;display:flex;position:absolute;top:-6px;right:-6px;box-shadow:0 1px 4px #0000004d}.tray-actions .icon-btn{width:28px;height:28px}.tray-actions .icon-btn.on{color:var(--accent)}.tray-actions .icon-btn.danger:hover{color:var(--bad)}.tray-original{flex-wrap:wrap;align-items:center;gap:6px;margin-top:6px;display:flex}.media-grid{border-radius:8px;gap:4px;max-width:min(520px,100%);margin:4px 0;display:grid;overflow:hidden}.media-grid.one{grid-template-columns:minmax(0,1fr);max-width:min(420px,100%)}.media-grid.two,.media-grid.four,.media-grid.three{grid-template-columns:repeat(2,minmax(0,1fr))}.media-grid.three .media-tile:first-child{grid-row:span 2}.media-grid.many{grid-template-columns:repeat(3,minmax(0,1fr))}.media-tile{aspect-ratio:1;background:var(--surface);cursor:zoom-in;border:0;width:100%;min-height:0;padding:0;display:block;position:relative;overflow:hidden}.media-grid.one .media-tile{aspect-ratio:4/3;max-height:360px}.media-grid.three .media-tile:first-child{aspect-ratio:auto;height:100%}.media-tile img{object-fit:cover;width:100%;height:100%;display:block}.media-grid.one .media-tile img{object-fit:contain}.media-grid.one .media-tile.sized{border-radius:8px;justify-self:start;max-width:100%;max-height:none}.media-grid.one:has(.media-tile.sized){overflow:visible}.media-tile.contain{background:color-mix(in srgb, var(--surface-2) 75%, transparent)}.media-tile.contain img{object-fit:contain}.media-tile.contain.full img{object-fit:scale-down}.media-tile.preview img{filter:blur(2px);transform:scale(1.03)}.media-tile.spoiler img{filter:blur(28px);transform:scale(1.15)}.media-tile.spoiler{cursor:pointer}.spoiler-label{color:#fff;letter-spacing:.06em;background:#000000b3;border-radius:999px;padding:6px 12px;font-size:.8rem;font-weight:800;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.media-tile-empty{place-items:center;height:100%;font-size:2rem;display:grid}.media-play{color:#fff;background:#0009;border-radius:50%;place-items:center;width:52px;height:52px;display:grid;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.media-duration,.media-progress{color:#fff;font-variant-numeric:tabular-nums;background:#000000a6;border-radius:999px;padding:1px 6px;font-size:.75rem;position:absolute;bottom:6px}.media-duration{left:6px}.media-progress{right:6px}.lightbox{z-index:70;color:#fff;background:#000000eb;flex-direction:column;display:flex;position:fixed;inset:0}.lightbox-bar{padding:calc(8px + var(--safe-top)) 12px 8px;flex:none;align-items:center;gap:8px;display:flex}.lightbox-bar .icon-btn{color:#fff}.lightbox-bar .icon-btn:disabled{opacity:.4}.lightbox-bar .muted{color:#ffffffb3}.lightbox-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-weight:600;overflow:hidden}.lightbox-count{font-variant-numeric:tabular-nums;color:#fffc;flex:none}.lightbox-bar .spacer{flex:1}.lightbox-stage{touch-action:none;flex:1;min-height:0;position:relative;overflow:hidden}.lightbox-area{inset:8px 12px calc(16px + var(--safe-bottom));justify-content:center;align-items:center;display:flex;position:absolute}.lightbox-stage.with-nav>.lightbox-area{left:72px;right:72px}.lightbox-media{object-fit:contain;-webkit-user-select:none;user-select:none;flex:none;max-width:100%;max-height:100%;transition:transform .12s ease-out}.lightbox-stage.gesturing .lightbox-media{transition:none}.lightbox-media.preview{filter:blur(3px)}.lightbox-status{bottom:calc(20px + var(--safe-bottom));text-align:center;background:#000000b3;border-radius:999px;max-width:calc(100% - 32px);margin:0;padding:6px 12px;font-size:.85rem;position:absolute;left:50%;transform:translate(-50%)}.lightbox-nav{color:#fff;cursor:pointer;background:#ffffff1f;border:0;border-radius:50%;place-items:center;width:48px;height:48px;display:grid;position:absolute;top:50%;transform:translateY(-50%)}.lightbox-nav:hover{background:#ffffff38}.lightbox-nav.prev{left:12px}.lightbox-nav.next{right:12px}.chat{position:relative}.drop-overlay{z-index:40;pointer-events:none;background:#0000008c;place-items:center;display:grid;position:absolute;inset:0}.drop-card{border:2px dashed var(--accent);background:var(--accent);color:var(--accent-text);text-align:center;border-radius:16px;gap:6px;padding:28px 36px;display:grid}.drop-card strong{font-size:1.2rem}.voice-split{flex:1;min-width:0;min-height:0;display:flex}.voice-split>.voice-room{flex:1;min-width:0}.voice-chat-panel{border-left:1px solid var(--divider-strong);background:var(--bg);flex-direction:column;flex:none;width:min(420px,42%);min-height:0;display:flex}.voice-chat-head{border-bottom:1px solid var(--divider);flex:none;align-items:center;gap:8px;min-height:44px;padding:0 8px 0 14px;display:flex}.voice-chat-head .spacer{flex:1}.voice-chat-toggle{gap:4px}.voice-chat-toggle-label{font-size:.85rem;font-weight:600}@media (width<=768px){.voice-chat-panel{border-left:0;width:100%}.voice-chat-toggle{width:auto;padding:0 10px}.message-actions .quick-reactions{display:none}.reaction-pill{min-height:30px;padding:3px 9px}.poll-result{margin-left:16px}.media-grid{max-width:100%}.tray-item{width:112px}.tray-thumb{height:84px}.lightbox-nav{display:none}.lightbox-stage.with-nav>.lightbox-area{left:8px;right:8px}}@media (prefers-reduced-motion:reduce){.poll-bar,.lightbox-media{transition:none}}.voice-tile-icon{color:#e2e1f0;align-items:center;display:inline-flex}.voice-tile-icon.off{color:#ff8fa8}:root{--separator:color-mix(in srgb, var(--text) 20%, transparent);--separator-soft:color-mix(in srgb, var(--text) 10%, transparent)}.rail,.nav-column{border-right:1px solid var(--separator)}.member-list{border-left:1px solid var(--separator)}.sidebar-title,.space-header,.conv-header{border-bottom-color:var(--separator)}.rail-sep{background:var(--separator);height:1px}.channel-tree .channel-group+.channel-group{border-top:1px solid var(--separator-soft);margin-top:10px}.channel-tree .channel-group+.channel-group>.category:first-child{margin-top:10px}.nav-bottom{border-color:var(--separator-soft)}.voice-bar{border-bottom-color:var(--separator-soft)}.composer-box{box-shadow:inset 0 0 0 1px var(--separator-soft)}.composer-box:has(textarea:focus-visible){box-shadow:inset 0 0 0 1px var(--separator)}@media (width>=769px){.nav-column{background:0 0;border-right:0}.rail{border-right:0}.sidebar{box-shadow:inset 0 0 0 1px var(--separator-soft);border-radius:16px;margin:8px 0}.content{box-shadow:0 0 0 1px var(--separator-soft);border-radius:16px;margin:8px;overflow:hidden}.nav-bottom{border-radius:14px}}.nav-resizer{z-index:5;cursor:col-resize;touch-action:none;width:10px;position:absolute;top:0;bottom:0;right:-5px}.nav-resizer:after{content:"";background:0 0;border-radius:1px;width:2px;transition:background .12s;position:absolute;top:8px;bottom:8px;left:4px}.nav-resizer:hover:after,.nav-resizer:focus-visible:after,html.nav-resizing .nav-resizer:after{background:var(--accent)}.nav-resizer:focus-visible{outline:none}.nav-resizer.edge-left{right:calc(var(--members-width,var(--sidebar-width)) - 5px)}html.nav-resizing,html.nav-resizing *{cursor:col-resize!important;-webkit-user-select:none!important;user-select:none!important}@media (width<=768px){.nav-resizer{display:none}}.app.is-mobile .nav-resizer{display:none}html.has-wallpaper .sidebar{background:var(--sidebar)}html.has-wallpaper :is(.conv-header,.channel-main,.member-list,.member-search,.composer,.forum-thread-head,.voice-chat-panel){background:0 0}html.has-wallpaper .voice-room{background:radial-gradient(ellipse 70% 45% at 50% 108%, color-mix(in srgb, var(--accent) 22%, transparent), transparent 70%)}html.wall-clear :is(.rail,.sidebar,.content,.nav-bottom){text-shadow:0 1px 2px #0000008c}html.wall-clear :is(.popover,.dialog,[role=menu],[role=dialog],[role=listbox],input,textarea,.composer-input,.tooltip){text-shadow:none}@media (width>=769px){.rail{width:calc(var(--rail-width) - 8px);box-shadow:inset 0 0 0 1px var(--separator-soft);border-radius:16px;flex:none;margin:8px 0 8px 8px}.rail .rail-item{width:100%}.nav-top>.sidebar{margin-left:8px}.nav-bottom{margin-right:0}}html.wall-clear[data-scheme=dark]{--muted:#cfcde6;--interactive:#dddbf0}html.wall-clear[data-scheme=light] :is(.rail,.sidebar,.content,.nav-bottom){--text:#f4f3fb;--text-strong:#fff;--muted:#e2e0f1;--interactive:#ecebf7;--link:#d3daff;color:var(--text)}html.wall-clear[data-scheme=light] .composer-btn{--icon-on-fill:#2c2a45}html.wall-clear[data-scheme=light] :is(.popover,.dialog,[role=menu],[role=dialog],[role=listbox],.tooltip,.emoji-picker){--text:#262439;--text-strong:#0f0e1e;--muted:#5f5c7a;--interactive:#4c4a66;--link:#5038c8}.voice-tile video.own-screen{filter:brightness()}:root{--scrollbar-thumb:color-mix(in srgb, var(--text) 24%, transparent);--scrollbar-thumb-hover:color-mix(in srgb, var(--text) 40%, transparent);accent-color:var(--accent)}::-webkit-scrollbar{background:0 0;width:10px;height:10px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-corner{background:0 0}::-webkit-scrollbar-thumb{background-color:var(--scrollbar-thumb);background-clip:padding-box;border:3px solid #0000;border-radius:999px;min-height:36px}::-webkit-scrollbar-thumb:hover{background-color:var(--scrollbar-thumb-hover)}::-webkit-scrollbar-thumb:active{background-color:var(--scrollbar-thumb-hover)}::-webkit-scrollbar-button{display:none}@supports not selector(::-webkit-scrollbar){*{scrollbar-width:thin;scrollbar-color:var(--scrollbar-thumb) transparent}}:focus:not(:focus-visible){outline:none}::selection{background:color-mix(in srgb, var(--accent) 32%, transparent)}
