:root{--title-bar: 0px;--rail: #0d0d14;--panel: #1a1a26;--room: #12121a;--raised: #262636;--hover: #2f2f43;--row-hover: #222232;--tile-bg: #1d1d2b;--tile-hover: #28283b;--sunken: #16161f;--field: #0f0f17;--line: #2c2c40;--text: #e8e6f5;--text-soft: #c9c6e0;--muted: #9592b0;--faint: #8a86a8;--violet: #8b7cf6;--violet-hover: #a194ff;--violet-tint: rgba(139, 124, 246, .14);--accent-fill: #6e5de6;--accent-fill-hover: #7a6aef;--on-accent: #fff;--hay: #e9c46a;--hay-text: #e9c46a;--on-hay: #1a1a26;--danger: #f2837a;--danger-fill: #bf4a41;--danger-fill-hover: #cd554c;--online: #4fc98d;--idle: #d8a64e;--dnd: #f2837a;--offline: #6c6987;--scrim: rgba(6, 6, 12, .72);--shadow: 0 12px 32px rgba(0, 0, 0, .45);--panel-shadow: 0 0 transparent;--panel-edge: rgba(255, 255, 255, .035);--gap: 0px;--backdrop: var(--rail);--msg-gap: 12px;--msg-pad: 3px;--row-h: 34px;--item-pad: 6px;--radius: 8px;--panel-radius: 14px;--tile: 44px;--font: "Onest Variable", system-ui, -apple-system, "Segoe UI", sans-serif;color-scheme:dark;font-family:var(--font);font-size:15px;line-height:1.47;color:var(--text);background:var(--room);-webkit-font-smoothing:antialiased}:root[data-density=compact]{--msg-gap: 4px;--msg-pad: 1px;--row-h: 28px;--item-pad: 3px}:root[data-density=spacious]{--msg-gap: 20px;--msg-pad: 5px;--row-h: 40px;--item-pad: 9px}:root[data-theme=midnight]{--rail: #000;--panel: #0b0b10;--room: #050507;--raised: #1a1a24;--hover: #23232f;--row-hover: #15151d;--tile-bg: #121219;--tile-hover: #1d1d27;--sunken: #08080c;--field: #000;--line: #20202c;--scrim: rgba(0, 0, 0, .8)}:root[data-theme=light]{color-scheme:light;--rail: #e4e2ed;--panel: #f3f2f8;--room: #fff;--raised: #e7e5f0;--hover: #dcd9e8;--row-hover: #e9e7f1;--tile-bg: #fff;--tile-hover: #f6f5fb;--sunken: #eae8f2;--field: #fff;--line: #d8d5e4;--text: #1c1b27;--text-soft: #383650;--muted: #5d5a76;--faint: #75728e;--violet: #6a59e0;--violet-hover: #5646cf;--violet-tint: rgba(106, 89, 224, .12);--accent-fill: #6a59e0;--accent-fill-hover: #5a49d4;--hay: #f0c75e;--hay-text: #8a5d00;--danger: #c23b31;--danger-fill: #c23b31;--danger-fill-hover: #ad3229;--online: #1f9a5f;--idle: #c08419;--dnd: #d2453b;--offline: #8f8ca8;--scrim: rgba(28, 27, 39, .45);--shadow: 0 12px 32px rgba(40, 36, 70, .18);--panel-shadow: 0 1px 3px rgba(40, 36, 70, .08);--panel-edge: rgba(40, 36, 70, .06)}*{box-sizing:border-box}body{margin:0;background:var(--room)}h1,h2,h3,p{margin:0}button,input,textarea{font:inherit;color:inherit}::selection{background:var(--violet-tint)}*{scrollbar-width:thin;scrollbar-color:var(--line) transparent}:focus-visible{outline:2px solid var(--violet);outline-offset:2px}button{cursor:pointer;border:none;border-radius:var(--radius);background:var(--raised);padding:9px 14px;font-weight:550}button:hover{background:var(--hover)}button:disabled{opacity:.55;cursor:default}button.primary{background:var(--accent-fill);color:var(--on-accent)}button.primary:hover:not(:disabled){background:var(--accent-fill-hover)}button.ghost{background:transparent;color:var(--text-soft)}button.ghost:hover{background:var(--raised)}button.link{background:none;padding:0;color:var(--violet-hover);font-weight:550}button.link:hover{text-decoration:underline}button.wide{width:100%;padding:11px 14px}.icon-button{display:inline-grid;place-items:center;padding:6px;background:none;color:var(--muted)}.icon-button:hover{background:var(--raised);color:var(--text)}.icon-button.on{color:var(--text)}.icon-button.small{padding:3px}.field{display:grid;gap:6px}.field>span{font-size:13px;font-weight:550;color:var(--text-soft)}.field small{font-size:12px;color:var(--muted)}input,textarea{width:100%;background:var(--field);border:1px solid var(--line);border-radius:var(--radius);padding:10px 12px;outline:none}input:focus{border-color:var(--violet);box-shadow:0 0 0 3px var(--violet-tint)}input::placeholder,textarea::placeholder{color:var(--faint)}.form-error{color:var(--danger);font-size:14px}.muted{color:var(--muted)}.splash{display:grid;place-items:center;height:calc(100vh - var(--title-bar));background:var(--room)}html.desktop-app{--title-bar: 32px}html.desktop-app body{padding-top:var(--title-bar)}.title-bar{position:fixed;top:0;left:env(titlebar-area-x,0);width:env(titlebar-area-width,calc(100% - 140px));height:var(--title-bar);z-index:1000;display:flex;align-items:center;gap:8px;padding-left:14px;background:var(--backdrop) fixed;color:var(--muted);font-size:12px;font-weight:650;letter-spacing:.02em;-webkit-user-select:none;user-select:none;-webkit-app-region:drag}.title-bar-place{position:fixed;top:0;left:50%;max-width:40vw;line-height:var(--title-bar);transform:translate(-50%);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-soft);font-size:12.5px;font-weight:600;pointer-events:none}html.desktop-app .title-bar~*{-webkit-app-region:no-drag}.avatar-wrap.has-still .avatar-moving{display:none}.avatar-wrap.has-still:hover .avatar-moving,.message:hover .avatar-wrap.has-still .avatar-moving,.member:hover .avatar-wrap.has-still .avatar-moving,.dm-item:hover .avatar-wrap.has-still .avatar-moving,.me-button:hover .avatar-wrap.has-still .avatar-moving,.friend-list li:hover .avatar-wrap.has-still .avatar-moving{display:inline-block}.avatar-wrap.has-still:hover .avatar-still,.message:hover .avatar-wrap.has-still .avatar-still,.member:hover .avatar-wrap.has-still .avatar-still,.dm-item:hover .avatar-wrap.has-still .avatar-still,.me-button:hover .avatar-wrap.has-still .avatar-still,.friend-list li:hover .avatar-wrap.has-still .avatar-still{display:none}.has-name-color{color:var(--name)}:root[data-theme=light] .has-name-color{color:color-mix(in srgb,var(--name) 58%,#000)}.avatar.initials{color:var(--av-fg);background:var(--av-bg)}:root[data-theme=light] .avatar.initials{color:var(--av-bg);background:color-mix(in srgb,var(--av-fg) 55%,#fff)}.avatar-wrap{position:relative;display:inline-block;flex-shrink:0}.avatar{object-fit:cover;display:inline-grid;place-items:center;flex-shrink:0;border-radius:50%;font-weight:650;letter-spacing:.02em;line-height:1;-webkit-user-select:none;user-select:none}.auth{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);min-height:calc(100vh - var(--title-bar))}.auth-intro{display:flex;flex-direction:column;justify-content:center;padding:56px clamp(24px,6vw,88px);background:var(--panel)}.wordmark{display:flex;align-items:center;gap:12px;font-size:20px;font-weight:700;letter-spacing:-.01em}.auth-pitch{margin:44px 0 40px;max-width:16ch;font-size:clamp(30px,3.6vw,44px);font-weight:650;line-height:1.08;letter-spacing:-.025em}.promises{list-style:none;margin:0;padding:0;display:grid;gap:18px;max-width:40ch}.promises li{display:grid;gap:2px;padding-left:16px;border-left:2px solid var(--line)}.promises span{color:var(--muted);font-size:14px}.auth-form{align-self:center;justify-self:center;width:min(380px,calc(100% - 32px));display:grid;gap:18px;padding:40px 0}.auth-form h1{font-size:24px;font-weight:650;letter-spacing:-.015em}.forgot-link{justify-self:end;font-size:13px}.link-page{display:grid;place-items:center;min-height:calc(100vh - var(--title-bar));min-height:calc(100dvh - var(--title-bar));padding:24px 16px;background:var(--room)}.link-card{width:min(400px,100%);display:grid;gap:18px;padding:32px;border-radius:14px;background:var(--panel)}.link-card h1{font-size:22px;font-weight:650;letter-spacing:-.015em}.link-form{display:grid;gap:18px}.update-bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:6px 16px;padding:8px 20px;background:var(--violet-tint);font-size:14px}.update-bar-actions{display:flex;align-items:center;gap:14px;flex-shrink:0}button.small{padding:5px 12px;font-size:13px}.dialog.whats-new{width:min(560px,calc(100vw - 32px));max-height:min(640px,calc(100vh - 64px));overflow-y:auto}.release-list{list-style:none;margin:0;padding:0;display:grid;gap:18px}.release-head{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 10px;margin-bottom:4px}.release-head .muted{font-size:13px}.release-tag{padding:1px 8px;border-radius:999px;background:var(--raised);color:var(--text-soft);font-size:12px;font-weight:600}.release-notes{white-space:pre-wrap;color:var(--text-soft);font-size:14px}.app-card{display:grid;gap:12px;padding:18px;margin-bottom:28px;border-radius:12px;background:var(--raised)}.app-toggles{display:grid;gap:12px;padding-top:12px;border-top:1px solid var(--line)}.toggle-row{display:flex;align-items:flex-start;gap:10px;cursor:pointer}.toggle-row input{width:auto;margin:4px 0 0;accent-color:var(--violet)}.toggle-row span{display:grid;gap:2px}.toggle-row small{color:var(--muted);font-size:13px}a.button-link{display:inline-block;padding:9px 14px;border-radius:var(--radius);background:var(--raised);color:inherit;font-weight:550;text-decoration:none}a.button-link.primary{background:var(--accent-fill);color:var(--on-accent)}a.button-link.primary:hover{background:var(--violet-hover)}.verify-banner{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:6px 16px;padding:9px 20px;background:var(--violet-tint);font-size:14px}.verify-banner-actions{display:flex;gap:14px;flex-shrink:0}.email-settings{display:grid;gap:10px}.email-status{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.email-pill{padding:1px 8px;border-radius:999px;font-size:12px;font-weight:600;background:#f2837a24;color:var(--danger)}.email-pill.ok{background:#4fc98d24;color:var(--online)}.download-link{margin-top:36px;color:var(--violet-hover);font-weight:550;font-size:14px}.switch-mode{color:var(--muted);font-size:14px;text-align:center}.layout{display:grid;grid-template-columns:72px 248px minmax(0,1fr);grid-template-rows:minmax(0,1fr);height:calc(100vh - var(--title-bar));height:calc(100dvh - var(--title-bar))}.layout.with-members{grid-template-columns:72px 248px minmax(0,1fr) 232px}@media(min-width:701px){:root{--gap: 8px}.layout{gap:var(--gap);padding:var(--gap) var(--gap) var(--gap) 0;background:var(--backdrop) fixed}.layout>.rail{margin:calc(-1 * var(--gap)) 0;padding-top:calc(12px + var(--gap))}.layout>.sidebar{margin-left:calc(-1 * var(--gap));border-radius:0 var(--panel-radius) var(--panel-radius) 0;overflow:hidden;box-shadow:var(--panel-shadow)}.layout>.main,.layout>.members{border-radius:var(--panel-radius);overflow:hidden;box-shadow:var(--panel-shadow),0 0 0 1px var(--panel-edge)}.layout>.members{overflow-y:auto}.layout{position:relative;--me-height: 56px}.layout>.sidebar{margin-bottom:calc(var(--me-height) + var(--gap));border-radius:0 var(--panel-radius) var(--panel-radius) 0}.layout>.sidebar>.me-panel{position:absolute;left:var(--gap);bottom:var(--gap);z-index:3;width:320px;height:var(--me-height);padding:0 8px 0 12px;border:none;border-radius:var(--panel-radius);background:var(--panel);box-shadow:var(--panel-shadow),0 0 0 1px var(--panel-edge)}.layout>.rail{padding-bottom:calc(var(--me-height) + 3 * var(--gap))}}.rail{background:var(--backdrop) fixed;padding:12px 0;overflow-y:auto;scrollbar-width:none}.rail-item{position:relative;display:flex;align-items:center;height:56px;padding-left:14px}.tile{position:relative;z-index:1;display:grid;place-items:center;width:var(--tile);height:var(--tile);padding:0;border-radius:14px;background:var(--tile-bg);color:var(--text-soft);font-size:14px;font-weight:650;letter-spacing:.02em}.tile:hover{background:var(--tile-hover);color:var(--text)}.tile.action{color:var(--violet-hover)}.rail-item.active:before{content:"";position:absolute;inset:2px 0 2px 8px;background:var(--panel);border-radius:18px 0 0 18px}.rail-item.active:after{content:"";position:absolute;right:0;top:-12px;bottom:-12px;width:12px;background:radial-gradient(circle at 0 0,transparent 11.5px,var(--panel) 12px) top / 12px 14px no-repeat,radial-gradient(circle at 0 100%,transparent 11.5px,var(--panel) 12px) bottom / 12px 14px no-repeat}.rail-item.active .tile{background:var(--accent-fill);color:var(--on-accent)}.rail-divider{width:28px;margin:8px 0 8px 22px;border:none;border-top:1px solid var(--line)}.sidebar{display:flex;flex-direction:column;min-width:0;background:var(--panel)}.sidebar-header{padding:18px 16px 14px;border-bottom:1px solid var(--line)}.server-name{font-size:17px;font-weight:650;letter-spacing:-.01em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.invite-chip{display:inline-flex;align-items:center;gap:8px;margin-top:10px;padding:5px 8px 5px 10px;background:none;border:1px solid var(--line);color:var(--muted);font-size:13px;font-weight:500}.invite-chip:hover{background:var(--raised);color:var(--text-soft)}.invite-chip code{font-family:inherit;font-weight:600;color:var(--text);letter-spacing:.03em}.channel-group{flex:1;overflow-y:auto;padding:0 8px 12px}.group-title{display:flex;align-items:center;justify-content:space-between;padding:16px 6px 6px 10px;font-size:13px;font-weight:600;color:var(--muted)}.group-title .count{font-weight:500}.channel{display:flex;align-items:center;gap:8px;width:100%;height:var(--row-h);margin-bottom:2px;padding:0 10px;background:none;color:var(--muted);font-weight:500;text-align:left}.channel span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.channel:hover{background:var(--row-hover);color:var(--text-soft)}.channel.active{background:var(--raised);color:var(--text)}.me-panel{display:flex;align-items:center;gap:10px;padding:10px 10px 10px 12px;background:var(--sunken);border-top:1px solid var(--line)}.me-names{display:grid;flex:1;min-width:0;line-height:1.3}.me-names strong{font-size:14px;font-weight:600}.me-names span{font-size:12px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.main{display:flex;flex-direction:column;min-width:0;background:var(--room)}.error-banner{width:100%;border-radius:0;padding:10px 20px;background:#f2837a1f;color:var(--danger);text-align:left;font-weight:500}.chat{display:flex;flex-direction:column;height:100%;min-height:0}.chat-header{display:flex;align-items:center;gap:8px;height:56px;flex-shrink:0;padding:0 12px 0 20px;border-bottom:1px solid var(--line);color:var(--muted)}.chat-header h2{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:16px;font-weight:650;color:var(--text)}.chat-header .icon-button{margin-left:0}.messages{flex:1;overflow-y:auto;padding-bottom:16px}.channel-start{padding:40px 20px 8px}.channel-start h3{font-size:24px;font-weight:650;letter-spacing:-.02em}.channel-start p{margin-top:4px;color:var(--muted)}.load-older{display:block;margin:16px auto 4px;background:none;border:1px solid var(--line);color:var(--text-soft);font-size:13px}.day-divider{display:flex;align-items:center;gap:12px;margin:20px 20px 4px;font-size:12px;font-weight:600;color:var(--muted)}.day-divider:after{content:"";flex:1;height:1px;background:var(--line)}.new-divider{display:flex;align-items:center;margin:14px 20px 4px;font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--danger)}.new-divider:before{content:"";flex:1;height:1px;margin-right:10px;background:var(--danger);opacity:.6}.new-bar-holder{position:sticky;top:0;z-index:4;height:0}.new-bar{display:flex;align-items:stretch;margin:8px 16px 0;border-radius:10px;background:var(--accent-fill);color:var(--on-accent);box-shadow:var(--shadow);overflow:hidden}.new-bar button{border-radius:0;background:none;color:inherit;font-size:13px}.new-bar button:hover{background:#ffffff1f}.new-bar-jump{display:flex;flex:1;align-items:center;justify-content:space-between;gap:12px;padding:7px 14px;text-align:left}.new-bar-jump span{font-weight:700}.new-bar-close{display:grid;place-items:center;padding:0 12px;border-left:1px solid rgba(255,255,255,.2)!important}.message{position:relative;margin-top:var(--msg-gap);padding:var(--msg-pad) 20px var(--msg-pad) 10px}.message-main{display:grid;grid-template-columns:56px minmax(0,1fr)}.message.grouped{margin-top:0;padding-top:1px;padding-bottom:1px}.message:hover{background:#8b7cf60b}.message-gutter{display:flex;align-items:flex-start;justify-content:center;padding-top:2px}.hover-time{font-size:11px;line-height:22px;color:var(--muted);opacity:0}.message:hover .hover-time{opacity:1}.message-meta{display:flex;align-items:baseline;gap:8px}.message-meta strong{font-weight:600}.message-meta time{font-size:12px;color:var(--muted)}.message-content{white-space:pre-wrap;overflow-wrap:anywhere;color:var(--text)}.composer{padding:0 20px 20px}.composer .form-error{padding:0 4px 8px}.composer-box{position:relative;background:var(--raised);border:1px solid transparent;border-radius:12px}.composer-box:focus-within{border-color:#8b7cf680}.composer-box textarea{display:block;max-height:40vh;padding:13px 52px 13px 16px;background:none;border:none;resize:none;overflow-y:auto}.char-count{position:absolute;right:14px;bottom:12px;font-size:12px;font-weight:600;color:var(--hay-text)}.empty-state{margin:auto;max-width:420px;padding:24px}.empty-state h2{font-size:24px;font-weight:650;letter-spacing:-.02em}.empty-state p{margin-top:8px;color:var(--muted)}.empty-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}.members{min-width:0;overflow-y:auto;padding:0 8px 12px;background:var(--panel)}.members .group-title{padding-top:20px}.member{display:flex;align-items:center;gap:10px;padding:var(--item-pad) 8px;border-radius:var(--radius)}.member:hover{background:var(--row-hover)}.member-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:500}.role-tag{margin-left:auto;padding:1px 7px;border:1px solid var(--line);border-radius:6px;font-size:11px;font-weight:600;color:var(--muted)}.overlay{position:fixed;inset:0;z-index:10;display:grid;place-items:center;padding:16px;background:var(--scrim)}.dialog{display:grid;gap:20px;width:min(420px,100%);padding:24px;background:var(--panel);border:1px solid var(--line);border-radius:14px;animation:dialog-in .14s ease-out}.dialog h2{font-size:19px;font-weight:650;letter-spacing:-.01em}.dialog-description{margin-top:4px;color:var(--muted);font-size:14px}.dialog-buttons{display:flex;justify-content:flex-end;gap:8px}@keyframes dialog-in{0%{opacity:0;transform:translateY(6px) scale(.985)}}@media(prefers-reduced-motion:reduce){.dialog{animation:none}}.message-actions .quick-reaction{font-size:17px;line-height:1}.message-actions .quick-reaction img{width:20px;height:20px}.message-actions .quick-reaction.on{background:var(--violet-tint)}.actions-divider{align-self:stretch;width:1px;margin:6px 2px;background:var(--line)}.activity-line{display:flex!important;align-items:center;gap:4px;min-width:0}.activity-line svg{flex-shrink:0;color:var(--online)}.activity-line span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.activity-card{display:grid;gap:8px;padding:10px 12px;border-radius:10px;background:color-mix(in srgb,var(--online) 9%,var(--raised))}.activity-card.listening{background:color-mix(in srgb,#1db954 10%,var(--raised))}.activity-card h3{font-size:11px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--muted)}.activity-body{display:flex;align-items:center;gap:10px}.activity-icon{display:grid;place-items:center;flex-shrink:0;width:44px;height:44px;border-radius:10px;background:var(--panel);color:var(--online)}.activity-card.listening .activity-icon{color:#1db954}.activity-text{display:grid;min-width:0;font-size:13px;line-height:1.35}.activity-text>*{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.activity-text strong{font-size:14px}.switch-row{display:flex;align-items:center;gap:16px;padding:12px 0;border-bottom:1px solid var(--line);cursor:pointer}.switch-row>span{display:grid;flex:1;gap:2px}.switch-row small{color:var(--muted);font-size:13px}.switch-row.disabled{opacity:.55;cursor:default}.activity-now{display:flex;align-items:center;gap:8px;margin:14px 0 4px;padding:10px 12px;border-radius:10px;background:var(--raised);font-size:14px}.activity-now svg{flex-shrink:0;color:var(--online)}.settings-subtitle{margin-top:24px;font-size:15px;font-weight:650}.game-list{display:grid;gap:6px;margin:10px 0;padding:0;list-style:none}.game-list li{display:flex;align-items:center;gap:10px;padding:8px 8px 8px 12px;border:1px solid var(--line);border-radius:10px}.add-game{display:grid;gap:10px;margin:10px 0;padding:14px;border:1px solid var(--line);border-radius:12px}.activity-unavailable{display:grid;justify-items:start;gap:10px;padding:16px;border:1px solid var(--line);border-radius:12px;color:var(--text-soft)}.activity-unavailable svg{color:var(--violet-hover)}.device-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}.device-grid .field>span{display:flex;align-items:center;gap:6px}.device-grid select{max-width:none;text-overflow:ellipsis}.device-names{display:flex;flex-wrap:wrap;align-items:center;gap:8px;font-size:13px}.mic-test{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:20px}.mic-meter{flex:1;min-width:140px;height:8px;overflow:hidden;border-radius:999px;background:var(--raised);box-shadow:inset 0 0 0 1px var(--line)}.mic-meter-fill{height:100%;transform-origin:left;transform:scaleX(0);background:linear-gradient(90deg,var(--online),color-mix(in srgb,var(--online) 55%,#f5c542) 75%,#f0883e);transition:transform 60ms linear}.volume-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(120px,220px) 44px;align-items:center;gap:16px;padding:12px 0;border-top:1px solid var(--line)}.volume-row>span{display:grid;gap:2px}.volume-row small{color:var(--muted);font-size:13px}.volume-row output{font-size:13px;font-variant-numeric:tabular-nums;color:var(--text-soft);text-align:right}input[type=range]{padding:0;border:0;background:transparent;accent-color:var(--violet);box-shadow:none}@media(max-width:520px){.volume-row{grid-template-columns:minmax(0,1fr) 44px}.volume-row>span{grid-column:1 / -1}}.quick-overlay{place-items:start center;padding-top:14vh}.quick-switcher{display:grid;gap:8px;width:min(560px,100%);padding:14px;border:1px solid var(--line);border-radius:14px;background:var(--panel);box-shadow:var(--shadow);animation:dialog-in .14s ease-out}.quick-switcher input{width:100%;padding:12px 14px;font-size:16px}.quick-results{max-height:min(380px,50vh);overflow-y:auto;margin:0;padding:0;list-style:none}.quick-results li{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:var(--radius);color:var(--text-soft);cursor:pointer}.quick-results li.selected{background:var(--raised);color:var(--text)}.quick-results .quick-empty{color:var(--muted);cursor:default}.quick-icon{display:grid;place-items:center;width:24px;color:var(--muted)}.quick-label{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:550}.quick-where{flex-shrink:0;max-width:40%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;color:var(--muted)}.quick-tips{margin:2px 4px 0;font-size:12px;color:var(--muted)}kbd{padding:1px 5px;border:1px solid var(--line);border-bottom-width:2px;border-radius:4px;font-family:inherit;font-size:11px;color:var(--text-soft)}.find-button{display:flex;align-items:center;gap:8px;width:100%;margin-top:10px;padding:7px 10px;background:var(--field);border:1px solid var(--line);color:var(--muted);font-size:13px;font-weight:500;text-align:left}.find-button span{flex:1}.find-button:hover{background:var(--field);border-color:var(--violet);color:var(--text-soft)}.presence-dot{position:absolute;right:-2px;bottom:-2px;border-radius:50%;border:3px solid var(--panel);background:var(--offline)}.presence-dot.online{background:var(--online)}.presence-dot.idle{background:var(--idle)}.presence-dot.dnd{background:var(--dnd)}.presence-dot.offline{background:var(--panel);box-shadow:inset 0 0 0 2.5px var(--offline)}.presence-dot.inline{position:static;display:inline-block;width:10px;height:10px;border:none;flex-shrink:0}.message .presence-dot{border-color:var(--room)}.me-button{display:flex;align-items:center;gap:10px;flex:1;min-width:0;padding:4px 6px 4px 2px;background:none;text-align:left;font-weight:inherit}.me-button:hover{background:var(--raised)}.me-button .presence-dot{border-color:var(--sunken)}.me-button:hover .presence-dot{border-color:var(--raised)}.avatar-button,.author-name{padding:0;background:none;border-radius:50%}.avatar-button:hover{background:none;filter:brightness(1.1)}.author-name{border-radius:4px;font-weight:600}.author-name:hover{background:none;text-decoration:underline}.member{width:100%;background:none;text-align:left;font-weight:inherit}.member.is-offline .member-name{opacity:.72}.member.is-offline .avatar{opacity:.6}.member-text{display:grid;min-width:0;line-height:1.3}.member-status{font-size:12px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.members section+section .group-title{padding-top:18px}.popover{position:fixed;z-index:20;background:var(--panel);border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow)}.profile-card{width:300px;padding:20px;display:grid;gap:14px}.profile-card .presence-dot{border-color:var(--panel)}.profile-loading{height:160px}.profile-names h2{font-size:20px;font-weight:650;letter-spacing:-.015em;overflow-wrap:anywhere}.profile-names p{color:var(--muted);font-size:14px}.profile-presence{display:grid;gap:2px;font-size:13px;color:var(--muted)}.profile-custom-status{color:var(--text);font-size:14px}.profile-section{padding-top:12px;border-top:1px solid var(--line)}.profile-section h3{font-size:12px;font-weight:600;color:var(--muted);margin:0 0 4px}.profile-section p{font-size:14px}.profile-bio{white-space:pre-wrap;overflow-wrap:anywhere}.status-menu{width:280px;padding:8px}.menu-list{display:grid;gap:2px}.menu-item{display:flex;align-items:center;gap:12px;width:100%;padding:8px 10px;background:none;text-align:left;font-weight:500}.menu-item.selected{background:var(--violet-tint)}.menu-text{display:grid;line-height:1.3}.menu-text small{font-size:12px;color:var(--muted);font-weight:400}.custom-status{display:grid;gap:10px;margin:8px 0;padding:12px 10px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.custom-status-buttons{display:flex;justify-content:flex-end;gap:8px}.custom-status-buttons button{padding:6px 12px;font-size:14px}.settings-link{color:var(--text-soft)}.settings{position:fixed;inset:0;z-index:15;display:grid;grid-template-columns:minmax(200px,1fr) minmax(0,2.4fr);background:var(--room);animation:dialog-in .14s ease-out}.settings-nav{display:flex;flex-direction:column;align-items:flex-end;gap:2px;padding:56px 16px;background:var(--panel)}.settings-nav h2{width:200px;padding:0 10px 10px;font-size:13px;font-weight:600;color:var(--muted)}.settings-tab{width:200px;padding:8px 10px;background:none;text-align:left;color:var(--text-soft);font-weight:500}.settings-tab.active{background:var(--raised);color:var(--text)}.danger-text{color:var(--danger)}.settings-body{position:relative;overflow-y:auto;padding:56px 48px}.settings-close{position:absolute;top:48px;right:40px;border:1px solid var(--line);border-radius:50%;padding:8px}.settings-section{display:grid;gap:20px;max-width:640px}.settings-section h1{font-size:24px;font-weight:650;letter-spacing:-.02em}.section-intro{margin-top:-14px;color:var(--muted)}.profile-editor{display:grid;grid-template-columns:minmax(0,1fr) 220px;gap:28px;align-items:start}.profile-fields{display:grid;gap:18px}.bio-input{resize:vertical;min-height:96px}textarea:focus{border-color:var(--violet);box-shadow:0 0 0 3px var(--violet-tint)}.composer-box textarea:focus{box-shadow:none}.profile-preview{display:grid;justify-items:start;gap:4px;padding:18px;background:var(--panel);border:1px solid var(--line);border-radius:12px}.profile-preview .avatar-wrap{margin-bottom:8px}.profile-preview strong{font-size:17px;font-weight:650;overflow-wrap:anywhere}.profile-preview span{color:var(--muted);font-size:13px}.profile-preview p{margin-top:10px;font-size:14px;white-space:pre-wrap;overflow-wrap:anywhere}.profile-side{display:grid;gap:10px}.picture-buttons{display:flex;gap:8px}.picture-buttons button{padding:6px 12px;font-size:13px}.media-rows{display:grid;gap:6px;padding:10px 12px;border:1px solid var(--line);border-radius:12px}.media-row{display:flex;align-items:center;gap:6px;min-height:30px}.media-remove:hover{color:var(--danger)}.media-row>span{flex:1;font-size:13px;font-weight:550;color:var(--text-soft)}.color-swatch-button{display:inline-flex;align-items:center;gap:8px;padding:4px 12px 4px 4px;border:1px solid var(--line);border-radius:999px;background:var(--field);color:var(--text-soft);font-size:13px;font-weight:550}.color-swatch-button:hover{border-color:var(--violet);background:var(--field)}.color-swatch{display:inline-block;width:22px;height:22px;flex-shrink:0;border-radius:50%;box-shadow:inset 0 0 0 1px #ffffff2e,0 0 0 1px #00000040}.color-popover{display:grid;gap:10px;width:232px;padding:12px}.color-palette{display:grid;grid-template-columns:repeat(8,1fr);gap:6px}.color-dot{aspect-ratio:1;padding:0;border-radius:50%;box-shadow:inset 0 0 0 1px #ffffff26}.color-dot:hover{transform:scale(1.12)}.color-dot.on{box-shadow:0 0 0 2px var(--panel),0 0 0 4px var(--text)}.color-custom{display:flex;align-items:center;gap:8px}.color-custom input:not([type=color]){width:0;flex:1;padding:6px 8px;font-family:ui-monospace,Consolas,monospace;font-size:13px}.color-custom button{white-space:nowrap}.settings-actions{display:flex;align-items:center;justify-content:flex-end;gap:14px}.saved-note{color:var(--online);font-size:14px;font-weight:550}.account-facts{display:grid;gap:14px;margin:0}.account-facts dt{font-size:13px;font-weight:550;color:var(--muted)}.account-facts dd{margin:2px 0 0}.small-print{max-width:60ch;font-size:13px}.server-name-button{display:flex;align-items:center;gap:6px;width:100%;margin:-4px 0 0 -6px;padding:4px 6px;background:none;color:var(--muted);text-align:left}.server-name-button .server-name{color:var(--text);min-width:0}.server-name-button:hover{background:var(--raised)}.server-banner{position:relative;height:112px;margin:-18px -16px 10px;overflow:hidden}.server-banner img{width:100%;height:100%;object-fit:cover;display:block}.server-banner:after{content:"";position:absolute;inset:40% 0 0;background:linear-gradient(transparent,var(--panel))}.sidebar-header.with-banner .server-name-button{position:relative;z-index:1;margin-top:-34px;text-shadow:0 1px 6px rgba(0,0,0,.5)}:root[data-theme=light] .sidebar-header.with-banner .server-name-button{text-shadow:none}.server-banner-preview{display:grid;place-items:center;height:120px;border:1px dashed var(--line);border-radius:10px;overflow:hidden}.server-banner-preview img{width:100%;height:100%;object-fit:cover}.server-description{margin-top:4px;font-size:13px;color:var(--muted);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere}.server-menu{width:232px;padding:6px}.server-menu .menu-item{gap:10px;color:var(--text-soft)}.server-menu .menu-item:hover{background:var(--raised);color:var(--text)}.server-menu .menu-item.danger-text{color:var(--danger)}.tile{overflow:hidden}.tile img{width:100%;height:100%;object-fit:cover}.server-icon-img,.server-icon-initials{flex-shrink:0;border-radius:22px;object-fit:cover}.server-icon-initials{display:grid;place-items:center;background:var(--tile-bg);color:var(--text-soft);font-weight:650}button.danger{background:var(--danger-fill);color:#fff}button.danger:hover:not(:disabled){background:var(--danger-fill-hover)}.icon-row{display:flex;align-items:center;gap:20px}.icon-row-text{display:grid;gap:10px;max-width:320px;font-size:14px}.invite-big{display:flex;align-items:center;gap:12px;padding:14px 16px;background:var(--field);border:1px solid var(--line);border-radius:10px;max-width:420px}.invite-big code{flex:1;font-family:inherit;font-size:22px;font-weight:650;letter-spacing:.06em}.invite-big button{display:inline-flex;align-items:center;gap:6px}.channel-admin{list-style:none;margin:0;padding:0;border:1px solid var(--line);border-radius:10px}.channel-admin li{display:flex;align-items:center;gap:6px;min-height:52px;padding:6px 8px 6px 14px}.channel-admin li+li{border-top:1px solid var(--line)}.channel-admin-name{display:flex;align-items:center;gap:8px;flex:1;min-width:0;color:var(--text-soft);font-weight:500}.channel-admin-name svg{color:var(--muted)}.channel-rename{display:flex;gap:8px;flex:1}.channel-rename input{flex:1;padding:7px 10px}.home-tile{color:var(--violet-hover)}.dm-item{display:flex;align-items:center;gap:10px;width:100%;margin-bottom:2px;padding:var(--item-pad) 8px;background:none;text-align:left;font-weight:500;color:var(--muted)}.dm-item:first-child{margin-top:8px}.dm-item:hover{background:var(--row-hover);color:var(--text-soft)}.dm-item.active{background:var(--raised);color:var(--text)}.dm-item .member-name{color:inherit}.dm-item .member-text{flex:1}.dm-top{display:flex;align-items:baseline;gap:8px;min-width:0}.dm-top .member-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dm-when{flex-shrink:0;font-size:11px;font-weight:500;color:var(--muted)}.dm-item.unread .member-status{color:var(--text-soft)}.dm-item .presence-dot{border-color:var(--panel)}.dm-item:hover .presence-dot{border-color:var(--row-hover)}.dm-item.active .presence-dot{border-color:var(--raised)}.sidebar-empty{margin:16px 10px;font-size:14px;color:var(--muted)}.chat-header .avatar-wrap{margin-right:2px}.dm-profile{display:flex;flex-direction:column;gap:14px;padding:28px 20px}.dm-profile .presence-dot{border-color:var(--panel)}.unread-pip{position:absolute;z-index:2;left:2px;top:50%;width:8px;height:8px;margin-top:-4px;border-radius:50%;background:var(--hay)}.unread-dot{width:8px;height:8px;margin-left:auto;flex-shrink:0;border-radius:50%;background:var(--hay)}.channel.unread,.dm-item.unread{color:var(--text);font-weight:650}.choice-list{display:grid;gap:8px;margin:0;padding:0;border:none}.choice-list legend{margin-bottom:10px;font-size:13px;font-weight:550;color:var(--text-soft)}.choice{display:flex;align-items:flex-start;gap:12px;padding:12px 14px;border:1px solid var(--line);border-radius:10px;cursor:pointer}.choice.selected{border-color:var(--violet);background:var(--violet-tint)}.choice input{width:auto;margin:3px 0 0;accent-color:var(--violet)}.choice span{display:grid;gap:2px}.choice strong{color:var(--text);font-weight:600}.choice small{font-size:13px;color:var(--muted)}.theme-picker{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px;margin:0;padding:0;border:none}.theme-picker legend{margin-bottom:10px;font-size:13px;font-weight:550;color:var(--text-soft)}.theme-option{position:relative;display:grid;gap:2px;padding:10px;border:1px solid var(--line);border-radius:12px;cursor:pointer}.theme-option:hover{background:var(--row-hover)}.theme-option.selected{border-color:var(--violet);background:var(--violet-tint);box-shadow:0 0 0 1px var(--violet)}.theme-option input{position:absolute;opacity:0;pointer-events:none}.theme-option:has(input:focus-visible){outline:2px solid var(--violet);outline-offset:2px}.theme-option strong{margin-top:8px;font-weight:600}.theme-option small{font-size:12px;color:var(--muted)}.theme-preview{display:grid;grid-template-columns:34% 1fr;gap:4px;height:76px;padding:5px 5px 5px 14px;border-radius:8px;border:1px solid rgba(128,128,128,.2)}.theme-preview-side,.theme-preview-room{display:grid;align-content:start;gap:5px;padding:7px 6px;border-radius:5px}.theme-preview i{display:block;height:5px;border-radius:3px}.theme-preview i:nth-child(2){width:80%}.theme-preview i.accent{width:45%;margin-top:auto;background:#7262e8}.custom-colors{display:grid;gap:12px;margin-top:14px;padding:14px;border:1px solid var(--line);border-radius:12px}.gradient-bar{height:36px;border-radius:8px}.custom-color-row{display:flex;flex-wrap:wrap;align-items:center;gap:12px}.gradient-presets{display:flex;flex-wrap:wrap;gap:8px}.gradient-preset{width:36px;height:36px;padding:0;border-radius:50%;border:2px solid var(--line)}.gradient-preset:hover{border-color:var(--text-soft);transform:scale(1.06)}.density-picker{margin-top:24px}.timer-button{display:inline-flex;align-items:center;gap:6px;margin-left:auto;padding:6px 8px;background:none;color:var(--muted);font-size:13px;font-weight:550}.timer-button:hover{background:var(--raised);color:var(--text)}.timer-button.on{color:var(--violet-hover);background:var(--violet-tint)}.timer-button+.icon-button{margin-left:4px}.timer-menu{width:300px;padding:8px}.timer-head{padding:8px 10px 10px}.timer-head h2{font-size:15px;font-weight:650}.timer-head p{margin-top:4px;font-size:13px;color:var(--muted)}.timer-menu .menu-item:disabled{opacity:.5}.timer-menu .menu-item:hover:not(:disabled){background:var(--raised)}.timer-menu .menu-item.selected{background:var(--violet-tint)}.clear-history{margin-top:6px;border-top:1px solid var(--line);border-radius:0 0 var(--radius) var(--radius)}.timer-note{display:flex;align-items:center;gap:6px;margin-top:10px!important;font-size:14px;color:var(--violet-hover)!important}.expiry-mark{display:inline-flex;margin-left:6px;vertical-align:-1px;color:var(--muted);opacity:.7}select{width:100%;max-width:320px;padding:9px 10px;background:var(--field);border:1px solid var(--line);border-radius:var(--radius);color:var(--text);font:inherit}select:focus{outline:none;border-color:var(--violet);box-shadow:0 0 0 3px var(--violet-tint)}.timer-default{margin-top:8px;padding-top:20px;border-top:1px solid var(--line)}.composer-box textarea{padding-right:92px}.emoji-button{position:absolute;right:8px;bottom:7px;padding:6px;background:none;color:var(--muted)}.emoji-button:hover{background:none;color:var(--violet-hover)}.char-count{right:50px}.custom-emoji{display:inline-block;width:22px;height:22px;margin:0 1px;vertical-align:-5px;object-fit:contain}.custom-emoji.big{width:44px;height:44px;vertical-align:middle}.jumbo{font-size:40px;line-height:1.25}.emoji-picker{display:flex;flex-direction:column;width:340px;height:380px;padding:10px 0 0}.emoji-search{margin:0 10px 8px;width:auto}.emoji-scroll{flex:1;overflow-y:auto;padding:0 6px 10px}.emoji-scroll h3{position:sticky;top:0;margin:0;padding:8px 6px 6px;background:var(--panel);font-size:12px;font-weight:600;color:var(--muted)}.emoji-grid{display:grid;grid-template-columns:repeat(8,1fr)}.emoji-grid button{display:grid;place-items:center;height:38px;padding:0;background:none;font-size:22px;line-height:1}.emoji-grid button:hover{background:var(--raised)}.emoji-grid img{object-fit:contain}.emoji-empty{padding:20px 10px;color:var(--muted);font-size:14px}.emoji-upload{display:flex;align-items:flex-start;gap:16px;flex-wrap:wrap}.emoji-upload .field{flex:1;min-width:180px}.emoji-upload .primary{margin-top:25px}.emoji-drop{display:grid;place-items:center;width:72px;height:72px;padding:0;background:var(--field);border:1px dashed var(--line);color:var(--muted);font-size:12px;font-weight:500;line-height:1.2}.emoji-drop img{width:56px;height:56px;object-fit:contain}.emoji-admin{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:8px}.emoji-admin li{display:flex;align-items:center;gap:10px;padding:6px 6px 6px 10px;border:1px solid var(--line);border-radius:10px}.emoji-admin img{object-fit:contain}.emoji-admin code{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;font-family:inherit;font-size:14px;color:var(--text-soft)}.section-intro code{font-family:inherit;color:var(--text-soft)}.message-actions{position:absolute;top:-14px;right:20px;z-index:2;display:none;gap:2px;padding:2px;background:var(--panel);border:1px solid var(--line);border-radius:8px;box-shadow:0 4px 12px #0000004d}.message:hover .message-actions,.message-actions:focus-within{display:flex}.message-actions button{display:grid;place-items:center;padding:5px;background:none;color:var(--muted)}.message-actions button:hover{background:var(--raised);color:var(--text)}.message-actions button.danger-text:hover{color:var(--danger)}.message.editing{background:#8b7cf60f}.message.highlighted{background:#e9c46a1f;transition:background .4s}.reply-quote{display:flex;align-items:center;gap:6px;width:100%;min-width:0;margin:2px 0;padding:0 0 0 28px;background:none;font-size:13px;font-weight:400;color:var(--muted);text-align:left}.reply-quote:hover{background:none;color:var(--text-soft)}.reply-line{flex-shrink:0;width:26px;height:10px;margin-top:8px;border-top:2px solid var(--line);border-left:2px solid var(--line);border-top-left-radius:6px}.reply-quote strong{flex-shrink:0;font-weight:600}.reply-text{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.reply-text .custom-emoji{width:16px;height:16px}.reply-text .jumbo{font-size:inherit}.edited-mark{margin-left:6px;font-size:11px;color:var(--muted)}.edit-box textarea{display:block;margin-top:2px;resize:none;background:var(--raised);border-color:transparent;max-height:40vh}.edit-hint{margin-top:4px;font-size:12px;color:var(--muted)}.edit-hint button{padding:0;background:none;color:var(--violet-hover);font-size:12px;font-weight:500}.edit-hint button:hover{text-decoration:underline}.reply-bar{display:flex;align-items:center;justify-content:space-between;padding:6px 8px 6px 14px;background:var(--panel);border-radius:12px 12px 0 0;font-size:13px;color:var(--muted)}.reply-bar strong{color:var(--text-soft);font-weight:600}.composer-box.with-reply{border-top-left-radius:0;border-top-right-radius:0}button.composer-error{display:block;margin-bottom:6px;padding:0 4px;background:none;text-align:left;font-weight:500}.reactions{display:flex;flex-wrap:wrap;gap:4px;margin-top:4px}.reaction{display:inline-flex;align-items:center;gap:5px;height:26px;padding:0 8px;background:var(--panel);border:1px solid transparent;border-radius:8px;font-size:15px;font-weight:500;line-height:1}.reaction:hover{background:var(--raised);border-color:var(--line)}.reaction.mine{background:var(--violet-tint);border-color:#8b7cf68c}.reaction .custom-emoji{width:18px;height:18px;margin:0;vertical-align:middle}.reaction .jumbo{font-size:inherit;line-height:1}.reaction .jumbo .custom-emoji.big{width:18px;height:18px}.reaction-count{font-size:13px;font-weight:600;color:var(--text-soft)}.reaction.mine .reaction-count{color:var(--violet-hover)}.add-reaction{color:var(--muted);opacity:0}.message:hover .add-reaction,.add-reaction:focus-visible{opacity:1}.composer{padding-bottom:2px}.typing-line{display:flex;align-items:center;gap:6px;height:22px;padding:0 4px;font-size:12px;color:var(--muted)}.typing-dots{display:inline-flex;gap:3px}.typing-dots span{width:5px;height:5px;border-radius:50%;background:var(--text-soft);animation:typing-pulse 1.2s ease-in-out infinite}.typing-dots span:nth-child(2){animation-delay:.15s}.typing-dots span:nth-child(3){animation-delay:.3s}@keyframes typing-pulse{0%,60%,to{opacity:.3}30%{opacity:1}}@media(prefers-reduced-motion:reduce){.typing-dots span{animation:none;opacity:.7}}.settings-section.wide{max-width:820px}.role-create{display:flex;gap:8px;max-width:480px}.role-create button,.inline-field button{white-space:nowrap}.role-layout{display:grid;grid-template-columns:220px minmax(0,1fr);gap:24px;align-items:start}.role-list{list-style:none;margin:0;padding:6px;border:1px solid var(--line);border-radius:10px}.role-list li{display:flex;align-items:center;border-radius:var(--radius)}.role-list li.active{background:var(--raised)}.role-pick{display:flex;align-items:center;gap:8px;flex:1;min-width:0;padding:8px 6px 8px 10px;background:none;text-align:left;font-weight:500}.role-pick:hover{background:none}.role-pick-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.role-dot{display:inline-block;flex-shrink:0;width:10px;height:10px;border-radius:50%}.role-lock{margin-left:auto;font-size:11px;color:var(--muted)}.role-move{display:none;flex-direction:column}.role-list li:hover .role-move,.role-list li.active .role-move,.role-move:focus-within{display:flex}.role-move button{padding:0 4px;background:none;color:var(--muted);line-height:0}.role-move button:first-child svg{transform:rotate(180deg)}.role-move button:hover:not(:disabled){color:var(--text);background:none}.role-editor{display:grid;gap:20px}.inline-field{display:flex;gap:8px}.color-field,.perm-list{margin:0;padding:0;border:none;min-width:0}.color-field legend,.perm-list legend{margin-bottom:8px;font-size:13px;font-weight:550;color:var(--text-soft)}.color-swatches{display:flex;flex-wrap:wrap;gap:8px}.swatch{width:28px;height:28px;padding:0;border-radius:50%;border:2px solid transparent}.swatch.selected{border-color:var(--text);box-shadow:0 0 0 2px var(--room)}.swatch.none{background:linear-gradient(135deg,transparent 45%,var(--danger) 45%,var(--danger) 55%,transparent 55%),var(--field);border-color:var(--line)}.swatch.none.selected{border-color:var(--text)}.color-field:disabled .swatch,.perm-list:disabled .perm{opacity:.5;cursor:default}.perm{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 0;border-top:1px solid var(--line)}.perm span{display:grid;gap:2px}.perm strong{font-weight:600}.perm small{font-size:13px;color:var(--muted)}.perm .perm-note{color:var(--idle)}.perm.disabled{opacity:.6}input.toggle{appearance:none;flex-shrink:0;width:40px;height:22px;margin:0;padding:0;border:none;border-radius:999px;background:var(--raised);position:relative;cursor:pointer;transition:background .15s}input.toggle:after{content:"";position:absolute;top:3px;left:3px;width:16px;height:16px;border-radius:50%;background:var(--muted);transition:transform .15s,background .15s}input.toggle:checked{background:var(--accent-fill)}input.toggle:checked:after{transform:translate(18px);background:#fff}input.toggle:disabled{cursor:default}input.toggle:focus{box-shadow:0 0 0 3px var(--violet-tint)}.role-chips{display:flex;flex-wrap:wrap;gap:6px}.role-chip{display:inline-flex;align-items:center;gap:6px;padding:3px 8px;background:var(--raised);border-radius:6px;font-size:12px;font-weight:550}button.role-chip.add{background:none;border:1px dashed var(--line);color:var(--muted)}button.role-chip.add:hover{color:var(--text)}.role-picker{list-style:none;margin:8px 0 0;padding:6px;max-height:180px;overflow-y:auto;background:var(--field);border-radius:var(--radius)}.role-picker label{display:flex;align-items:center;gap:8px;padding:5px 6px;font-size:14px;color:var(--text);cursor:pointer}.role-picker input{width:auto;margin:0;accent-color:var(--violet)}.composer-box textarea{padding-left:48px}.attach-button{position:absolute;left:8px;bottom:7px;padding:6px;background:none;color:var(--muted)}.attach-button:hover{background:none;color:var(--violet-hover)}.pending-tray{list-style:none;display:flex;gap:8px;margin:0;padding:10px;overflow-x:auto;background:var(--panel);border-radius:12px 12px 0 0}.reply-bar+.pending-tray{border-radius:0}.pending-tray li{position:relative;display:grid;grid-template-rows:64px auto auto;gap:4px;flex-shrink:0;width:120px;padding:6px;background:var(--raised);border-radius:10px}.pending-tray li.failed{outline:1px solid var(--danger)}.pending-tray img,.file-glyph{width:100%;height:64px;border-radius:6px;object-fit:cover}.file-glyph{display:grid;place-items:center;background:var(--field);color:var(--muted)}.pending-name{font-size:12px;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pending-bar{height:4px;border-radius:2px;background:var(--field);overflow:hidden}.pending-bar span{display:block;height:100%;background:var(--violet);transition:width .2s}.pending-error{font-size:11px;line-height:1.3;color:var(--danger)}.pending-remove{position:absolute;top:-6px;right:-6px;display:grid;place-items:center;width:22px;height:22px;padding:0;border-radius:50%;background:var(--panel);border:1px solid var(--line);color:var(--text-soft)}.pending-remove:hover{background:var(--danger);color:#fff}.attachments{display:flex;flex-wrap:wrap;gap:8px;margin-top:6px}.image-attachment{padding:0;background:var(--panel);border-radius:8px;overflow:hidden;line-height:0}.image-attachment:hover{background:var(--panel);filter:brightness(1.05)}.image-attachment img{display:block;max-width:min(400px,100%);max-height:300px;height:auto;object-fit:contain}.file-card{display:flex;align-items:center;gap:12px;width:min(360px,100%);padding:12px 14px;background:var(--panel);border:1px solid var(--line);border-radius:10px;color:var(--text);text-decoration:none}.file-card:hover{border-color:var(--violet)}.file-card>svg:first-child{flex-shrink:0;color:var(--violet-hover)}.file-card>svg:last-child{margin-left:auto;color:var(--muted)}.file-card span{display:grid;min-width:0}.file-card strong{font-size:14px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-card small{font-size:12px;color:var(--muted)}.file-card.expired{opacity:.6}.file-card.expired:hover{border-color:var(--line)}.image-viewer{flex-direction:column;gap:12px}.image-viewer img{max-width:92vw;max-height:82vh;border-radius:8px;object-fit:contain}.image-viewer-bar{display:flex;align-items:center;gap:14px;color:var(--text-soft);font-size:14px}.image-viewer-bar a{display:inline-flex;align-items:center;gap:6px;color:var(--violet-hover);text-decoration:none;font-weight:550}.chat{position:relative}.drop-hint{position:absolute;inset:12px;z-index:5;display:grid;place-content:center;justify-items:center;gap:10px;border:2px dashed var(--violet);border-radius:16px;background:color-mix(in srgb,var(--room) 88%,transparent);color:var(--text);font-weight:600;pointer-events:none}@media(max-width:1000px){.layout,.layout.with-members{grid-template-columns:72px 220px minmax(0,1fr)}.members{display:none}}@media(max-width:820px){.settings{grid-template-columns:1fr;grid-template-rows:auto 1fr}.settings-nav{flex-direction:row;flex-wrap:wrap;align-items:center;padding:12px}.settings-nav h2{display:none}.settings-tab{width:auto}.settings-body{padding:24px 16px}.settings-close{top:16px;right:16px}.profile-editor,.role-layout,.auth{grid-template-columns:1fr}.auth-intro{padding:40px 24px 32px}.auth-pitch{margin:28px 0 24px}}.composer-box.no-attach textarea{padding-left:16px}.composer-blocked{display:flex;align-items:center;gap:10px;margin:0;padding:13px 16px;background:var(--panel);border:1px dashed var(--line);border-radius:12px;color:var(--muted);font-size:14px}.composer-blocked svg{flex-shrink:0}.composer-blocked strong{color:var(--text-soft);font-weight:600}.composer-status{display:flex;align-items:center;gap:12px}.composer-status .typing-line{flex:1;min-width:0}.slowmode-note{display:inline-flex;align-items:center;gap:5px;flex-shrink:0;font-size:12px;color:var(--muted);font-variant-numeric:tabular-nums}.slowmode-note.cooling{color:var(--hay-text)}.timeout-badge{margin-left:auto;display:inline-flex;color:var(--idle)}.timeout-note{display:flex;align-items:center;gap:6px;margin:0;padding:8px 10px;background:#d8a64e1a;border-radius:var(--radius);color:var(--idle);font-size:13px}.mod-buttons{display:flex;justify-content:center;gap:4px;margin-top:-4px}.mod-buttons button{padding:5px 10px;font-size:13px;white-space:nowrap;color:var(--muted)}.mod-buttons button.danger-text{color:var(--danger)}.slowmode-pick{display:inline-flex;align-items:center;gap:6px;color:var(--muted)}.slowmode-pick select{width:auto;padding:6px 8px;font-size:13px}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.perm-group+.perm-group{margin-top:18px}.perm-group h3{margin:0 0 2px;font-size:12px;font-weight:600;color:var(--violet-hover)}.role-list li.role-everyone{margin-top:6px;border-top:1px solid var(--line);border-radius:0 0 var(--radius) var(--radius)}.role-everyone .role-pick{color:var(--text-soft)}.role-everyone .role-pick svg{color:var(--muted)}.role-editor-title{margin:0 0 4px;font-size:18px}.ban-list{list-style:none;margin:0;padding:0;border:1px solid var(--line);border-radius:10px}.ban-list li{display:flex;align-items:center;gap:12px;padding:10px 10px 10px 14px}.ban-list li+li{border-top:1px solid var(--line)}.ban-text{display:grid;flex:1;min-width:0}.ban-text span{font-size:13px;color:var(--muted);overflow-wrap:anywhere}.mod-log{list-style:none;margin:0;padding:0}.mod-log-entry{display:flex;align-items:flex-start;gap:12px;padding:10px 0}.mod-log-entry+.mod-log-entry{border-top:1px solid var(--line)}.mod-log-blank{width:28px;flex-shrink:0}.mod-log-text{flex:1;min-width:0}.mod-log-text p{margin:0;padding-top:4px;font-size:14px;color:var(--text-soft)}.mod-log-text strong{color:var(--text);font-weight:600}.mod-log-entry.ban .mod-log-text>p:first-child strong:last-child,.mod-log-entry.kick .mod-log-text>p:first-child strong:last-child{color:var(--danger)}.mod-log-extra{display:flex;flex-wrap:wrap;gap:4px 12px;font-size:13px!important;color:var(--muted)!important}.mod-log-entry time{flex-shrink:0;padding-top:5px;font-size:12px;color:var(--muted)}.badge-row{display:flex;flex-wrap:wrap;gap:6px}.badge{display:inline-grid;place-items:center;flex-shrink:0;border-radius:8px;background:color-mix(in srgb,var(--badge) 16%,transparent);color:var(--badge);--badge: #c8c6dc}:root[data-theme=light] .badge{color:color-mix(in srgb,var(--badge) 55%,#000)}.badge-early_member{--badge: var(--violet-hover)}.badge-server_founder{--badge: #5fd4c4}.badge-community_builder{--badge: #9be37a}.badge-one_year{--badge: #f39bd6}.badge-settings{list-style:none;margin:0;padding:0;border:1px solid var(--line);border-radius:10px}.badge-settings li{display:flex;align-items:center;gap:14px;padding:12px 14px}.badge-settings li+li{border-top:1px solid var(--line)}.badge-settings li.not-earned .badge{filter:grayscale(1);opacity:.45}.badge-settings-text{display:grid;gap:2px;flex:1;min-width:0}.badge-settings-text small{font-size:13px;color:var(--muted)}.not-earned .badge-settings-text strong{color:var(--text-soft);font-weight:500}.badge-show{display:flex;align-items:center;gap:10px;font-size:13px;color:var(--muted)}.message-content code{padding:1px 5px;background:var(--rail);border-radius:5px;font-family:ui-monospace,Cascadia Code,Consolas,monospace;font-size:.88em}.message-content .code-block{margin:4px 0;padding:10px 12px;max-width:100%;overflow-x:auto;background:var(--rail);border:1px solid var(--line);border-radius:var(--radius);white-space:pre}.message-content .code-block code{padding:0;background:none;font-size:13px}.message-content blockquote{display:block;margin:2px 0;padding-left:12px;border-left:3px solid var(--line);color:var(--text-soft)}.message-content a{color:var(--violet-hover);text-decoration:none}.message-content a:hover{text-decoration:underline}.spoiler{padding:0 2px;border-radius:4px;background:var(--text-soft);color:transparent;cursor:pointer;transition:background .15s}.spoiler *{visibility:hidden}.spoiler.shown{background:var(--raised);color:inherit;cursor:text}.spoiler.shown *{visibility:visible}.mention{--mention: var(--violet-hover);display:inline;padding:0 3px;border:none;border-radius:4px;background:color-mix(in srgb,var(--mention) 18%,transparent);color:var(--mention);font:inherit;font-weight:550;line-height:inherit}button.mention:hover{background:color-mix(in srgb,var(--mention) 30%,transparent)}.mention.me{--mention: var(--hay-text)}.message.mentions-me{background:#e9c46a0f;box-shadow:inset 2px 0 0 var(--hay)}.mention-pip{position:absolute;z-index:2;right:-2px;bottom:-2px;min-width:18px;height:18px;padding:0 5px;border:3px solid var(--rail);border-radius:9px;box-sizing:content-box;background:var(--hay);color:var(--on-hay);font-size:11px;font-weight:700;line-height:18px;text-align:center}.unread-count{margin-left:auto;flex-shrink:0;min-width:18px;padding:0 6px;border-radius:9px;background:var(--raised);color:var(--text-soft);font-size:11px;font-weight:700;line-height:18px;text-align:center}.mention-count{margin-left:auto;flex-shrink:0;min-width:18px;padding:0 6px;border-radius:9px;background:var(--hay);color:var(--on-hay);font-size:11px;font-weight:700;line-height:18px;text-align:center}.mention-suggest{list-style:none;margin:0 0 6px;padding:6px;background:var(--panel);border:1px solid var(--line);border-radius:10px;box-shadow:0 8px 24px #00000059}.mention-suggest li{display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:6px;cursor:pointer;font-size:14px}.mention-suggest li.active{background:var(--raised)}.mention-suggest li .muted{margin-left:auto;font-size:12px}.friends{display:flex;flex-direction:column;min-height:0;height:100%}.friends-tabs{display:flex;gap:4px;margin-left:16px}.friends-tabs button{display:inline-flex;align-items:center;gap:6px;padding:5px 10px;background:none;color:var(--muted);font-weight:500}.friends-tabs button:hover{color:var(--text);background:var(--raised)}.friends-tabs button.active{background:var(--raised);color:var(--text)}.friends-tabs .mention-count{margin-left:0}.friends-body{flex:1;overflow-y:auto;padding:20px 24px}.add-friend{display:grid;gap:8px;max-width:560px;padding-bottom:20px;margin-bottom:8px;border-bottom:1px solid var(--line)}.add-friend label{font-weight:600}.add-friend-row{display:flex;gap:8px}.add-friend-row input{flex:1}.friends-empty{display:grid;justify-items:center;gap:8px;max-width:380px;margin:48px auto 0;text-align:center}.friends-empty-icon{display:grid;place-items:center;width:64px;height:64px;margin-bottom:6px;border-radius:20px;background:var(--violet-tint);color:var(--violet-hover)}.friends-empty h3{font-size:16px;font-weight:650}.friends-empty p{color:var(--muted);font-size:14px}.friends-empty button{margin-top:8px}.username-chip{display:inline-flex;align-items:center;gap:8px;color:var(--text-soft);font-weight:500}.username-chip strong{color:var(--text)}.friend-list-title{margin:4px 0 8px;font-size:12px;font-weight:650;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}.friend-list{list-style:none;margin:0;padding:0}.friend-list li{display:flex;align-items:center;gap:12px;padding:8px 0;border-bottom:1px solid var(--line)}.friend-who{display:flex;align-items:center;gap:12px;flex:1;min-width:0;padding:4px 8px 4px 0;background:none;text-align:left}.friend-who:hover{background:none}.friend-actions{display:flex;gap:6px}.friends-link{margin-bottom:8px}.friends-link-icon{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:var(--raised);color:var(--text-soft)}.friends-link .mention-count{margin-left:auto}.friend-buttons{display:flex;justify-content:center;gap:4px;margin-top:-4px}.friend-buttons button{display:inline-flex;align-items:center;gap:5px;padding:5px 10px;font-size:13px;white-space:nowrap}.blocked-message{display:flex;align-items:center;gap:8px;padding:4px 20px 4px 72px;font-size:13px;color:var(--muted)}.link-button{padding:0;background:none;color:var(--violet-hover);font-size:inherit}.link-button:hover{background:none;text-decoration:underline}.header-search{display:flex;align-items:center;gap:6px;margin-left:auto;padding:0 8px;height:30px;width:180px;background:var(--field);border:1px solid var(--line);border-radius:var(--radius);color:var(--muted);transition:width .15s}.header-search:focus-within{width:240px;border-color:var(--violet)}.header-search input{flex:1;min-width:0;padding:0;background:none;border:none;box-shadow:none;font-size:13px}.header-search input:focus{outline:none;box-shadow:none}.header-search~.timer-button{margin-left:0}.pinned-mark{display:inline-flex;align-items:center;gap:3px;margin-left:6px;font-size:11px;color:var(--muted)}.popover-title{margin:0 0 8px;font-size:14px}.pins-popover{width:380px;max-height:70vh;overflow-y:auto;padding:14px}.pins-empty{font-size:13px}.pin-list,.search-results{list-style:none;margin:0;padding:0}.pin-list li{display:flex;gap:10px;padding:10px 0;border-top:1px solid var(--line)}.pin-body{flex:1;min-width:0}.pin-meta,.search-result-meta{display:flex;align-items:center;gap:6px;margin:0;font-size:13px}.pin-meta time,.search-result-meta time,.search-result-meta span{font-size:11px;color:var(--muted)}.pin-text{margin:2px 0 4px;font-size:14px;white-space:pre-wrap;overflow-wrap:anywhere}.pin-actions{display:flex;gap:12px;margin:0;font-size:12px}.muted-link{color:var(--muted)}.search-panel{display:flex;flex-direction:column;padding:0 0 12px}.search-panel-header{display:flex;align-items:center;justify-content:space-between;gap:8px;height:56px;flex-shrink:0;padding:0 8px 0 16px;border-bottom:1px solid var(--line)}.search-panel-header h2{display:flex;align-items:center;gap:6px;min-width:0;margin:0;overflow:hidden;font-size:14px;text-overflow:ellipsis;white-space:nowrap}.search-scope{padding:10px 16px 4px;font-size:12px}.search-status{padding:16px;font-size:13px}.search-results li{border-bottom:1px solid var(--line)}.search-result{display:grid;gap:4px;width:100%;padding:10px 16px;background:none;border-radius:0;text-align:left}.search-result:hover{background:var(--raised)}.search-result-text{display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden;font-size:13px;font-weight:400}.load-more{margin:10px 16px 0}.embeds{display:grid;gap:6px;margin-top:6px}.embed{display:grid;gap:4px;max-width:440px;padding:10px 12px 12px;background:var(--panel);border-left:3px solid var(--violet);border-radius:6px}.embed-site{margin:0;font-size:12px;color:var(--muted)}.embed-title{color:var(--violet-hover);font-weight:600;text-decoration:none}.embed-title:hover{text-decoration:underline}.embed-description{margin:0;font-size:13px;color:var(--text-soft);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.embed-image{display:block;max-width:100%;max-height:240px;margin-top:6px;border-radius:6px;object-fit:cover}.search-result-meta{flex-wrap:wrap;row-gap:2px}.search-result-meta strong{white-space:nowrap}.search-result-meta time{margin-left:auto}.channel.is-muted,.dm-item.is-muted{opacity:.5}.channel.is-muted.active,.dm-item.is-muted.active{opacity:.8}.mute-menu{width:260px;padding:10px}.mute-menu-title{margin:0 4px 4px;font-weight:600;font-size:14px}.mute-menu-hint{margin:0 4px 8px;font-size:12px}.group-actions{display:inline-flex;gap:2px}.category{margin-top:14px}.category-header{display:flex;align-items:center;justify-content:space-between;padding:0 4px 2px 2px;border-top:2px solid transparent}.category-name{display:flex;align-items:center;gap:4px;min-width:0;padding:2px 4px;background:none;color:var(--muted);font-size:12px;font-weight:600}.category-name:hover{background:none;color:var(--text-soft)}.category-name span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.category-name svg{transition:transform .15s}.category-name[aria-expanded=false] svg{transform:rotate(-90deg)}.drop-before{box-shadow:0 -2px 0 var(--violet)}.channel.dragging,.category.dragging{opacity:.4}.drop-end{height:16px}.channel-type-choice{display:grid;gap:8px;margin:0;padding:0;border:none}.channel-type-choice legend{margin-bottom:6px;font-size:13px;font-weight:550;color:var(--text-soft)}.channel-type-choice .choice{display:flex;align-items:center;gap:12px}.channel-type-choice .choice span{display:grid}.channel-type-choice .choice small{color:var(--muted)}.settings-subtitle{margin:12px 0 0;font-size:18px}.channel-row{position:relative}.channel-gear{position:absolute;top:50%;right:6px;transform:translateY(-50%);opacity:0}.channel-row:hover .channel-gear,.channel-gear:focus-visible{opacity:1}.channel-row:hover .channel .unread-dot,.channel-row:hover .channel .mention-count{visibility:hidden}.channel-lock{display:inline-flex;color:var(--muted)}.private-switch strong{display:inline-flex;align-items:center;gap:6px}.private-switch{max-width:820px;margin-bottom:8px;border-top:none}.add-role-select{width:100%;margin-top:8px;font-size:13px}.tri-state{display:inline-flex!important;grid-auto-flow:column;gap:0!important;flex-shrink:0;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}.tri{width:32px;height:28px;padding:0;border-radius:0;background:var(--field);color:var(--muted);font-size:13px}.tri+.tri{border-left:1px solid var(--line)}.tri.deny.on{background:color-mix(in srgb,var(--danger) 30%,transparent);color:var(--danger)}.tri.inherit.on{background:var(--raised);color:var(--text)}.tri.allow.on{background:color-mix(in srgb,var(--online) 25%,transparent);color:var(--online)}.settings-nav h2{display:flex;align-items:center;gap:4px}.voice-room{display:flex;flex-direction:column;height:100%;min-height:0}.voice-body{flex:1;overflow-y:auto;padding:20px 24px}.voice-notice{display:flex;align-items:center;gap:8px;margin:0 0 20px;padding:10px 12px;background:var(--violet-tint);border-radius:var(--radius);font-size:13px;color:var(--text-soft)}.voice-empty{padding:60px 0;text-align:center}.voice-empty h3{margin:0 0 4px}.voice-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px;list-style:none;margin:0;padding:0}.voice-tile{display:grid;justify-items:center;gap:8px;padding:20px 12px 14px;background:var(--panel);border:1px solid var(--line);border-radius:12px;text-align:center}.voice-tile .avatar,.voice-members li .avatar{transition:box-shadow .12s}.voice-tile.speaking .avatar{box-shadow:0 0 0 3px var(--room),0 0 0 6px var(--online)}.voice-members li.speaking .avatar{box-shadow:0 0 0 2px var(--online)}.dialog.screen-picker{width:min(720px,calc(100vw - 32px));max-height:calc(100vh - 64px);overflow-y:auto}.picker-tabs{display:flex;gap:4px}.picker-tabs button{background:none;color:var(--muted)}.picker-tabs button.active{background:var(--raised);color:var(--text)}.picker-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px}.picker-grid button{width:100%;display:grid;gap:6px;padding:8px;background:var(--panel);border:1px solid var(--line);text-align:left}.picker-grid button:hover{border-color:var(--violet);background:var(--panel)}.picker-grid img{width:100%;aspect-ratio:16 / 9;object-fit:contain;border-radius:6px;background:#000}.picker-grid span{font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.screen-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:12px;margin-bottom:16px}.screen-view{margin:0;display:grid;gap:6px}.screen-view video{width:100%;max-height:60vh;border-radius:10px;background:#000;cursor:zoom-in}.screen-view figcaption{display:flex;align-items:center;justify-content:space-between;font-size:13px;color:var(--muted)}.voice-tile.muted .avatar{opacity:.6}.voice-flags{display:flex;flex-wrap:wrap;justify-content:center;gap:4px 8px;min-height:16px;font-size:12px;color:var(--muted)}.voice-mod{display:flex;flex-wrap:wrap;justify-content:center;gap:4px}.voice-mod button,.voice-mod select{padding:4px 8px;font-size:12px;width:auto}.voice-controls{display:flex;justify-content:center;gap:8px;padding:14px;border-top:1px solid var(--line)}.voice-toggle{display:inline-flex;align-items:center;gap:6px}.voice-toggle.on{background:color-mix(in srgb,var(--danger) 22%,var(--raised));color:var(--danger)}.voice-join{min-width:160px}.voice-members{list-style:none;margin:0 0 4px;padding:0 0 0 30px}.voice-members li{display:flex;align-items:center;gap:6px;padding:3px 6px;font-size:13px;color:var(--text-soft)}.voice-members li svg{margin-left:auto;color:var(--muted)}.voice-bar{display:flex;align-items:center;gap:2px;padding:8px 8px 8px 12px;border-top:1px solid var(--line);background:color-mix(in srgb,var(--online) 6%,var(--panel))}.voice-bar-text{display:grid;flex:1;min-width:0}.voice-bar-text strong{font-size:13px;color:var(--online)}.voice-bar-text .link-button{overflow:hidden;font-size:12px;color:var(--muted);text-align:left;text-overflow:ellipsis;white-space:nowrap}.voice-bar .icon-button.on,.me-panel .icon-button.on{color:var(--danger)}.me-panel{gap:2px!important}.me-panel .me-button{margin-right:6px}.nickname-button{justify-self:start;font-size:12px}.nickname-edit{display:flex;flex-wrap:wrap;gap:6px}.nickname-edit input{flex:1;min-width:0;padding:6px 8px;font-size:13px}.nickname-edit button{padding:6px 10px;font-size:13px}.nickname-edit .form-error{flex-basis:100%}.invite-dialog{width:min(520px,calc(100vw - 32px))}.invite-custom{display:grid;gap:10px;margin:0;padding:14px 0 0;border:none;border-top:1px solid var(--line)}.invite-custom legend{padding:0;font-size:13px;font-weight:550;color:var(--text-soft)}.invite-options{display:grid;grid-template-columns:1fr 1fr;gap:10px}.invite-big code{overflow-wrap:anywhere}.join-invite{justify-items:center;text-align:center}.join-invite h2{margin:0}.join-invite .dialog-buttons{justify-self:stretch}.invite-row{display:grid!important;gap:2px}.invite-big code{font-size:14px;letter-spacing:0;font-weight:500}.gif-button{position:absolute;right:44px;bottom:17px;padding:2px 5px;background:none;border:1.5px solid currentColor;border-radius:5px;color:var(--muted);font-size:10px;font-weight:800;letter-spacing:.04em;line-height:1.3}.gif-button:hover{background:none;color:var(--violet-hover)}.composer-box:has(.gif-button) textarea{padding-right:130px}.composer-box:has(.gif-button) .char-count{right:88px}.gif-picker{display:flex;flex-direction:column;width:360px;height:440px;padding:10px}.gif-search{flex-shrink:0}.gif-results{flex:1;min-height:0;margin-top:8px;overflow-y:auto}.gif-columns{display:grid;grid-template-columns:1fr 1fr;gap:6px;align-items:start}.gif-column{display:grid;gap:6px}.gif-pick{display:block;padding:0;overflow:hidden;background:var(--raised);border-radius:6px}.gif-pick img{display:block;width:100%;height:auto}.gif-pick:hover{outline:2px solid var(--violet)}.gif-tabs{display:flex;gap:4px;margin-bottom:8px}.gif-tabs button{display:inline-flex;align-items:center;gap:6px;padding:5px 10px;background:none;color:var(--muted);font-size:13px}.gif-tabs button.active{background:var(--raised);color:var(--text)}.gif-empty{padding:16px 4px;font-size:13px;text-align:center}.gif-cell,.chat-gif-wrap{position:relative;display:block}.chat-gif-wrap{display:inline-block;max-width:100%}.gif-star{position:absolute;top:6px;right:6px;display:grid;place-items:center;width:30px;height:30px;padding:0;border-radius:8px;background:#0a0a10b3;color:#fff;opacity:0;transition:opacity .12s}.gif-star:hover{background:#0a0a10d9}.gif-star.on{color:var(--hay);opacity:1}.gif-cell:hover .gif-star,.chat-gif-wrap:hover .gif-star,.gif-star:focus-visible{opacity:1}.gif-star.on svg{fill:currentColor}@media(hover:none){.gif-star{opacity:1}}.gif-credit{flex-shrink:0;margin:8px 0 0;font-size:10px;font-weight:700;letter-spacing:.08em;text-align:center;color:var(--muted)}.chat-gif{display:block;max-width:min(320px,100%);max-height:320px;margin:4px 0;border-radius:8px}.security-block{display:grid;gap:12px;padding-top:20px;border-top:1px solid var(--line)}.security-block .settings-subtitle{margin:0}.security-block>p{margin:0}.two-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}.confirm-row{display:grid;gap:8px;max-width:420px}.totp-setup{display:grid;gap:10px}.totp-setup ol{margin:0;padding-left:20px}.totp-qr{padding:8px;background:#fff;border-radius:10px}.totp-secret{padding:2px 6px;background:var(--rail);border-radius:4px;letter-spacing:.05em;overflow-wrap:anywhere}.backup-codes{display:grid;gap:12px;padding:14px;background:var(--panel);border:1px solid var(--hay);border-radius:10px}.backup-codes p{margin:0}.backup-codes ul{display:grid;grid-template-columns:repeat(2,max-content);gap:6px 24px;margin:0;padding:0;list-style:none}.backup-codes code{font-family:ui-monospace,Cascadia Code,Consolas,monospace;font-size:15px;letter-spacing:.05em}.danger-zone .settings-subtitle{color:var(--danger)}@media(max-width:640px){.two-fields,.invite-options{grid-template-columns:1fr}}.nav-button,.nav-backdrop,.message-actions .touch-only{display:none}@keyframes slide-from-right{0%{transform:translate(100%)}}@keyframes fade-in{0%{opacity:0}}@media(hover:none){.message{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}.message:hover{background:none}.message:hover .message-actions,.message:hover .hover-time{display:none}.message.show-actions{background:var(--violet-tint)}.message.show-actions .message-actions{display:flex}.message.show-actions .add-reaction{opacity:1}.message-actions .touch-only{display:grid}.message-actions button{padding:8px}}@media(max-width:700px){html:not(.desktop-app){--title-bar: env(safe-area-inset-top, 0px);--safe-bottom: env(safe-area-inset-bottom, 0px)}html.keyboard-open{--safe-bottom: 0px}html:not(.desktop-app) body{padding-top:var(--title-bar)}input,textarea,select{font-size:16px!important}.layout,.layout.with-members{grid-template-columns:minmax(0,1fr);height:calc(var(--app-height, 100dvh) - var(--title-bar));padding-bottom:max(0px,calc(var(--safe-bottom) - 22px));background:var(--room)}html:has(.layout),html:has(.layout) body{height:100%;overflow:hidden;overscroll-behavior:none}.rail,.sidebar{position:fixed;z-index:9;top:var(--title-bar);bottom:0;transform:translate(-100vw);visibility:hidden;transition:transform .22s ease,visibility 0s .22s}.rail{left:0;width:72px;padding-bottom:calc(12px + var(--safe-bottom))}.sidebar{left:72px;width:min(300px,calc(100vw - 120px));padding-bottom:var(--safe-bottom);box-shadow:8px 0 24px #00000059}.layout.nav-open .rail,.layout.nav-open .sidebar{transform:none;visibility:visible;transition:transform .22s ease}.members{display:block;position:fixed;z-index:9;top:var(--title-bar);bottom:0;right:0;width:min(320px,86vw);padding-bottom:var(--safe-bottom);box-shadow:-8px 0 24px #00000059;animation:slide-from-right .22s ease}.members.search-panel{display:flex;width:100vw}.nav-backdrop{display:block;position:fixed;inset:0;z-index:8;padding:0;border:none;border-radius:0;background:#06060c99;animation:fade-in .22s ease}.nav-button{display:grid;place-items:center;flex-shrink:0;margin-left:-6px;padding:6px;background:none;color:var(--text-soft)}.main{position:relative}.empty-state>.nav-button{position:absolute;top:10px;left:16px}.chat-header{gap:4px;padding:0 6px 0 12px}.chat-header h2{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.header-search{position:relative;flex-shrink:0;width:34px;padding:0 8px;border-color:transparent;background:none}.header-search input{position:absolute;inset:0;padding-left:30px}.header-search input::placeholder{color:transparent}.header-search:focus-within{width:150px;background:var(--field)}.timer-button span,.friends-header h2{display:none}.friends-header{overflow-x:auto;scrollbar-width:none}.friends-tabs{flex-shrink:0}.settings{top:var(--title-bar);padding-bottom:var(--safe-bottom)}.overlay{padding:calc(16px + var(--title-bar)) 12px calc(16px + var(--safe-bottom))}.popover{max-width:calc(100vw - 16px)}.popover.profile-card{top:auto!important;bottom:calc(8px + var(--safe-bottom))!important;left:8px!important;right:8px;width:auto;max-width:none;max-height:calc(var(--app-height, 100dvh) - var(--title-bar) - 24px);overflow-y:auto;animation:sheet-up .2s ease}}@keyframes sheet-up{0%{transform:translateY(40px);opacity:0}}.install-tip svg{vertical-align:-3px}.legal-note{color:var(--muted);font-size:13px;text-align:center}.legal-note a{color:var(--violet-hover)}.vanity-row{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:16px}.vanity-input{display:flex;align-items:center;flex:1;min-width:240px;background:var(--field);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}.vanity-input:focus-within{border-color:var(--violet)}.vanity-input span{padding-left:12px;color:var(--muted);white-space:nowrap}.vanity-input input{flex:1;min-width:0;padding-left:1px;border:none;background:none;box-shadow:none}.vanity-input input:focus{outline:none;box-shadow:none}.context-menu{display:grid;gap:1px;min-width:210px;max-width:280px;padding:6px}.context-menu .menu-item{gap:10px;padding:7px 10px;color:var(--text-soft);font-size:14px}.context-menu .menu-item:hover,.context-menu .menu-item:focus-visible{background:var(--raised);color:var(--text);outline:none}.context-menu .menu-item.danger-text{color:var(--danger)}.context-menu .menu-item.danger-text:hover,.context-menu .menu-item.danger-text:focus-visible{background:#f2837a1f}.context-menu-title{padding:6px 10px 8px;color:var(--muted);font-size:12px;font-weight:650;letter-spacing:.04em;text-transform:uppercase;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.context-menu-divider{margin:4px 6px;border:none;border-top:1px solid var(--line)}.context-menu.sheet{left:8px;right:8px;bottom:calc(8px + var(--safe-bottom, 0px));max-width:none;max-height:75dvh;overflow-y:auto;animation:sheet-up .2s ease}.context-menu.sheet .menu-item{padding:13px 12px;font-size:16px}.menu-sheet-backdrop{position:fixed;inset:0;z-index:19;background:#06060c8c;animation:fade-in .2s ease}.files-tabs{display:flex;gap:4px;padding:10px 12px 0}.files-tabs button{flex:1;padding:6px 10px;background:none;color:var(--muted);font-size:14px}.files-tabs button.active{background:var(--raised);color:var(--text)}.media-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;margin:0;padding:10px 12px;list-style:none}.media-tile{display:block;width:100%;aspect-ratio:1;padding:0;overflow:hidden;border-radius:6px;background:var(--raised)}.media-tile img{width:100%;height:100%;object-fit:cover;transition:transform .15s}.media-tile:hover img{transform:scale(1.04)}.file-list{display:grid;gap:2px;margin:0;padding:10px 8px;list-style:none}.file-row{display:flex;align-items:center;gap:4px;border-radius:var(--radius)}.file-row:hover{background:var(--raised)}.file-row-main{display:flex;align-items:center;gap:10px;flex:1;min-width:0;padding:8px;background:none;text-align:left}.file-row-icon{display:grid;place-items:center;flex-shrink:0;width:36px;height:36px;border-radius:8px;background:var(--violet-tint);color:var(--violet-hover)}.file-row-text{display:grid;min-width:0;line-height:1.35}.file-row-text strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:560}.file-row-text span{display:flex;align-items:center;gap:4px;flex-wrap:wrap;color:var(--muted);font-size:12px}.file-row .icon-button{flex-shrink:0;margin-right:4px}.group-picture{flex-shrink:0;border-radius:50%;object-fit:cover}.group-picture.placeholder{display:grid;place-items:center;background:var(--violet-tint);color:var(--violet-hover)}.group-title .icon-button.small{margin-left:auto;padding:2px}.friend-picker{display:grid;gap:8px}.friend-picker ul{display:grid;gap:2px;max-height:260px;overflow-y:auto;margin:0;padding:0;list-style:none}.friend-pick{display:flex;align-items:center;gap:10px;padding:6px 8px;border-radius:var(--radius);cursor:pointer}.friend-pick:hover{background:var(--raised)}.friend-pick.disabled{opacity:.5;cursor:default}.friend-pick .member-name{flex:1;min-width:0}.friend-pick input{width:18px;height:18px;accent-color:var(--violet)}.friend-picker-empty{padding:8px}.group-panel{display:flex;flex-direction:column;gap:2px}.group-panel-top{display:grid;justify-items:center;gap:8px;padding:24px 8px 12px}.group-picture-button{position:relative;padding:0;border-radius:50%;background:none}.group-picture-edit{position:absolute;right:-2px;bottom:-2px;display:grid;place-items:center;width:26px;height:26px;border:3px solid var(--panel);border-radius:50%;background:var(--raised);color:var(--text)}.group-name-form{display:flex;gap:6px;width:100%}.group-name-form input{flex:1;min-width:0;text-align:center;font-weight:650}.group-member{display:flex;align-items:center;padding:0}.group-member-main{display:flex;align-items:center;gap:10px;flex:1;min-width:0;padding:6px 8px;background:none;text-align:left}.group-add{display:grid;gap:8px;padding:8px 4px}.group-add-buttons{display:flex;justify-content:flex-end;gap:6px}.group-add-button,.group-leave{display:flex;align-items:center;gap:8px;margin-top:8px}.group-leave{margin-top:auto;margin-bottom:12px}.profile-top.with-banner{display:grid}.profile-banner{height:96px;margin:-20px -20px 0;overflow:hidden;border-radius:12px 12px 0 0;background:var(--raised)}.profile-banner img{display:block;width:100%;height:100%;object-fit:cover}.profile-top.with-banner .avatar-wrap{justify-self:start;margin-top:-38px;border-radius:50%;box-shadow:0 0 0 5px var(--profile-ring, var(--panel))}.dm-profile .profile-banner{margin:-28px -20px 0;border-radius:0}.profile-preview .profile-top{justify-self:stretch}.profile-preview .profile-banner{height:76px;margin:-18px -18px 0}.profile-preview .profile-top.with-banner .avatar-wrap{margin-top:-32px}.themed{--profile-ring: color-mix(in srgb, var(--profile-a) 30%, var(--panel));background:linear-gradient(180deg,color-mix(in srgb,var(--profile-a) 30%,var(--panel)),color-mix(in srgb,var(--profile-b) 30%,var(--panel)))}.profile-pronouns{color:var(--muted)}.profile-links{display:grid;gap:4px;margin:0;padding:0;list-style:none}.profile-links a{display:inline-flex;align-items:center;gap:6px;max-width:100%;color:var(--violet-hover);font-size:14px;text-decoration:none}.profile-links a span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.profile-links a:hover span{text-decoration:underline}.profile-color-row{display:flex;flex-wrap:wrap;align-items:center;gap:12px}.color-pick{display:inline-flex;align-items:center;gap:6px;color:var(--text-soft);font-size:14px;cursor:pointer}.color-pick input{width:38px;height:30px;padding:0;border:1px solid var(--line);border-radius:6px;background:none;cursor:pointer}.link-row{display:flex;gap:6px}.link-row input{flex:1;min-width:0}.invite-embed{width:min(420px,100%);padding:14px 16px;border:1px solid var(--line);border-radius:12px;background:var(--panel)}.invite-embed.loading{height:102px;opacity:.6}.invite-embed-label{margin-bottom:10px;color:var(--muted);font-size:12px;font-weight:650;letter-spacing:.04em;text-transform:uppercase}.invite-embed-row{display:flex;align-items:center;gap:12px}.invite-embed-row .server-icon-img,.invite-embed-row .server-icon-initials{flex-shrink:0;border-radius:14px}.invite-embed-icon.dead{display:grid;place-items:center;flex-shrink:0;width:48px;height:48px;border-radius:14px;background:var(--raised);color:var(--muted);font-size:20px;font-weight:700}.invite-embed-text{display:grid;flex:1;min-width:0;line-height:1.35}.invite-embed-text strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:16px;font-weight:650}.invite-embed-text span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted);font-size:13px}.invite-embed-button{flex-shrink:0;min-width:76px}.invite-embed-button.joined{background:var(--raised);color:var(--text-soft)}.report-dialog{width:min(460px,100%);max-height:calc(100dvh - 32px);overflow-y:auto}.report-reasons{display:grid;gap:4px}.report-reason{display:flex;text-align:left;align-items:center;gap:10px;padding:9px 12px;border:1px solid var(--line);border-radius:var(--radius);color:var(--text-soft);cursor:pointer}.report-reason:hover{background:var(--raised)}.report-reason.selected{border-color:var(--violet);background:var(--violet-tint);color:var(--text)}.report-reason input{flex:none;width:16px;height:16px;margin:0;padding:0;accent-color:var(--violet)}.report-help{padding:10px 12px;border-radius:var(--radius);background:#e9c46a1a;color:var(--hay-text);font-size:14px}.my-reports{display:grid;gap:6px;margin:0;padding:0;list-style:none}.my-reports li{display:flex;align-items:center;gap:12px;padding:10px 14px;border:1px solid var(--line);border-radius:var(--radius);background:var(--panel)}.my-report-text{display:grid;flex:1;min-width:0;line-height:1.35}.my-report-text strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:560}.my-report-text .muted{font-size:13px}.report-status{flex-shrink:0;padding:3px 10px;border-radius:999px;background:var(--raised);color:var(--text-soft);font-size:12px;font-weight:650}.report-status.action{background:#4fc98d24;color:var(--online)}
