:root{color-scheme:dark;--bg:#111519;--side:#161b20;--rail:#101317;--card:#1c2429;--line:#293239;--soft:#98a8ad;--text:#e7eeed;--mint:#8ce4c2;--deep:#19372f;--faint:#73858a;font:15px/1.55 system-ui,-apple-system,Arial,sans-serif}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--text)}
button,input,textarea{font:inherit;color:inherit}
button{border:0;background:transparent;cursor:pointer}
button:focus-visible,input:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--mint);outline-offset:2px}
button:hover{color:var(--mint)}
button[hidden],[hidden]{display:none!important}
svg{width:20px;height:20px;vertical-align:middle;flex:none}
small{display:block;color:var(--soft);font-size:.78rem}
kbd{font:11px system-ui;color:var(--soft);direction:ltr;unicode-bidi:isolate}
.layout{display:grid;grid-template-columns:72px 232px minmax(0,1fr) 220px;height:100vh;height:100dvh}
.layout.no-members{grid-template-columns:72px 232px minmax(0,1fr)}
.no-members .members{display:none}
.rail{background:var(--rail);border-inline-end:1px solid var(--line);display:flex;align-items:center;flex-direction:column;gap:12px;padding:17px 8px;overflow:auto}
.rail #servers{display:grid;gap:10px}
.brand,.rail-btn{width:45px;height:45px;border-radius:14px;background:#222a30;color:var(--soft);display:grid;place-items:center;font-weight:750;font-size:19px;position:relative}
.brand{background:var(--mint);color:#14372c}
.brand:hover,.send:hover{color:#14372c;background:#abf2d6}
.brand svg{width:32px;height:32px}
.rail-line{width:28px;border-top:1px solid var(--line)}
.rail-btn.active{background:var(--deep);color:var(--mint);border:1px solid #42725e}
.rail-btn.active:after{content:"";position:absolute;inset-inline-start:-13px;width:3px;height:20px;background:var(--mint);border-radius:4px}
.add-server{border:1px dashed #425751;background:transparent;color:var(--mint)}
.rail-settings{margin-top:auto}
.channels{background:var(--side);border-inline-end:1px solid var(--line);min-width:0;display:flex;flex-direction:column;overflow:auto}
.workspace,.topbar,.members-head{min-height:70px;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:12px}
.workspace{padding:10px 17px}
.workspace strong{display:block;overflow-wrap:anywhere}
.workspace-logo{height:39px;width:39px;border-radius:12px;background:var(--deep);color:var(--mint);display:grid;place-items:center;flex:none}
.quick-search{margin:17px 13px 12px;padding:8px 10px;background:#101519;border:1px solid var(--line);border-radius:8px;text-align:start;display:flex;align-items:center;gap:8px;color:var(--soft);font-size:.86rem}
.quick-search kbd{margin-inline-start:auto;border:1px solid var(--line);border-radius:4px;padding:1px 4px}
.channel-section{padding:8px 17px 5px;display:flex;align-items:center;justify-content:space-between;color:var(--soft);font-size:.79rem;font-weight:700}
.channel-section .icon-btn{width:25px;height:25px}
.channel-section svg,.quick-search svg,.tools svg{width:16px;height:16px}
.channel-btn,.tools button{margin:2px 10px;width:calc(100% - 20px);min-height:38px;padding:6px 10px;border-radius:8px;display:flex;align-items:center;gap:9px;text-align:start;color:var(--soft);overflow-wrap:anywhere}
.channel-btn svg{width:17px;height:17px}
.channel-btn:hover,.tools button:hover,.icon-btn:hover{background:#222c32;color:var(--text)}
.channel-btn.active{background:#20352f;color:var(--mint);font-weight:700}
.channel-btn.active::after{content:"";margin-inline-start:auto;flex:none;width:6px;height:6px;border-radius:50%;background:var(--mint)}
.tools{margin:17px 0 8px;padding-top:8px;border-top:1px solid var(--line)}
.tools b,.tools i{margin-inline-start:auto;color:var(--mint);font-size:.76rem}
.tools i.on{width:7px;height:7px;background:var(--mint);border-radius:50%}
.profile{margin-top:auto;display:flex;align-items:center;gap:9px;padding:13px;border-top:1px solid var(--line);background:#13191d}
.profile button{margin-inline-start:auto}
.icon-btn{width:34px;height:34px;border-radius:8px;color:var(--soft);display:inline-grid;place-items:center;flex:none}
.icon-btn svg{width:18px;height:18px}
.chat{min-width:0;min-height:0;display:flex;flex-direction:column}
.topbar{padding:0 20px;gap:10px;flex:none}
.top-hash{color:var(--mint)}
.topbar strong,.channel-topic{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.topbar strong{flex:none;max-width:40%}
.channel-topic{color:var(--soft);font-size:.86rem}
.top-divider{height:21px;border-inline-start:1px solid var(--line)}
.top-actions{display:flex;gap:3px;margin-inline-start:auto}
.mobile-menu,.mobile-search{display:none}
.feed{overflow:auto;flex:1;padding:22px clamp(15px,3vw,38px) 10px;scrollbar-color:#405159 transparent}
.welcome{position:relative;isolation:isolate;overflow:hidden;min-height:150px;padding:18px 21px;background:radial-gradient(ellipse at 0% 100%,#243d34,transparent 73%),#1a2528;border:1px solid #324740;border-radius:15px}
.welcome-kicker{font-size:.76rem;color:var(--mint);display:flex;align-items:center;gap:7px;font-weight:650}
.welcome-kicker span{height:6px;width:6px;border-radius:50%;background:var(--mint);box-shadow:0 0 13px #8ce4c288}
.welcome h1{font-size:clamp(1.55rem,3vw,2.25rem);line-height:1.24;margin:8px 0 7px;overflow-wrap:anywhere}
.welcome p{margin:0;color:#b1c4c0;font-size:.91rem;max-width:75%}
.welcome-art{position:absolute;z-index:-1;inset-inline-end:13px;bottom:5px;color:#6fb09a8a}
.welcome-art svg{width:clamp(105px,15vw,173px);height:auto}
.date-rule{display:flex;align-items:center;gap:12px;margin:17px 0 8px;color:var(--soft);font-size:.74rem}
.date-rule span{height:1px;background:var(--line);flex:1}
.message{display:flex;gap:11px;padding:9px 3px;position:relative}
.message + .message{border-top:1px solid #29323970}
.message:target,.message.highlight{background:#22372f;border-radius:8px}
.avatar{width:35px;height:35px;border-radius:12px;display:grid;place-items:center;font-weight:750;flex:none;position:relative}
.avatar.mint,.avatar.me{background:#294d40;color:#a3ebcc}.avatar.lilac{background:#3a344e;color:#dfc7ff}.avatar.sand{background:#4b3d2c;color:#f6d699}.avatar.rose{background:#4b333d;color:#ffc9db}.avatar.slate{background:#304149;color:#b8d0de}
.message-content{min-width:0;flex:1}
.message header{display:flex;align-items:center;gap:8px;padding-inline-end:92px}
.message header time{font-size:.72rem;color:var(--soft)}
.message p{margin:1px 0 0;color:#d3dddd;overflow-wrap:anywhere;white-space:pre-wrap;font-size:.92rem}
.message-actions{display:flex;position:absolute;inset-inline-end:0;top:4px;gap:0}
.message-actions .icon-btn{width:29px;height:27px}
.message-actions svg{width:15px;height:15px}
.message-actions button.on{color:var(--mint)}
.reactions{display:flex;flex-wrap:wrap;gap:5px;margin-top:6px}
.reactions button{font-size:.73rem;background:#1c252b;border:1px solid #314047;border-radius:7px;padding:2px 6px;min-width:34px}
.reactions button.on{border-color:var(--mint);color:var(--mint)}
.composer-wrap{padding:8px clamp(15px,3vw,38px) 13px;position:relative}
.composer{display:flex;align-items:flex-end;gap:8px;padding:7px;background:var(--card);border:1px solid #34434a;border-radius:12px}
.composer:focus-within{border-color:#74b59e}
.composer textarea{background:none;border:0;resize:vertical;max-height:130px;min-height:35px;flex:1;width:0;padding:6px 0;outline:none}
.composer textarea:focus-visible{outline:none}
.composer textarea::placeholder{color:var(--soft)}
.send{background:var(--mint);color:#17382e;width:36px;height:35px;border-radius:8px}
.send svg{transform:scaleX(-1);width:18px;height:18px}
.compose-meta{display:flex;justify-content:space-between;gap:8px;margin-top:6px;color:var(--soft);font-size:.71rem}
.compose-meta i{display:inline-block;height:3px;width:3px;background:var(--faint);vertical-align:middle;border-radius:50%;margin:0 4px}
.emoji-picker{position:absolute;bottom:75px;inset-inline-start:24px;padding:7px;background:#202a2f;border:1px solid var(--line);border-radius:10px;box-shadow:0 8px 25px #0009}
.emoji-picker button{padding:6px;border-radius:6px;font-size:1.2rem}
.emoji-picker button:hover{background:var(--deep)}
.members{background:var(--side);border-inline-start:1px solid var(--line);overflow:auto}
.members-head{justify-content:space-between;padding:0 17px}
.members-head span{color:var(--mint)}
.member-group{margin:16px 14px 5px;color:var(--soft);font-size:.78rem}
.member{display:flex;align-items:center;gap:9px;margin:0 10px;padding:6px 5px}
.member .avatar{width:32px;height:32px}
.member .avatar:after{content:"";position:absolute;inset-inline-end:-2px;bottom:-2px;border:2px solid var(--side);width:9px;height:9px;background:#839399;border-radius:50%}
.member.online .avatar:after{background:var(--mint)}
.member strong{font-size:.88rem}
.member em{font-style:normal;font-size:.65rem;margin-inline-start:6px;color:var(--mint)}
.empty{color:var(--soft);padding:8px 3px}
dialog{width:min(500px,calc(100% - 28px));max-height:80dvh;background:#171e23;color:var(--text);border:1px solid #3b504a;border-radius:15px;padding:17px;box-shadow:0 18px 65px #0009}
dialog::backdrop{background:#080b0dc9}
.dialog-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}
.dialog-head h2{font-size:1.2rem;margin:0}
.dialog-input{display:block;width:100%;padding:9px 11px;background:#11161a;border:1px solid #405055;border-radius:8px;margin:6px 0 10px}
.primary{background:var(--mint);color:#17382e;padding:7px 14px;border-radius:8px;font-weight:700}
.primary:hover{color:#17382e;background:#abf2d6}
.result{display:block;text-align:start;width:100%;padding:8px 10px;border-bottom:1px solid var(--line);overflow-wrap:anywhere}
.result:hover{background:var(--deep);color:var(--text)}
.pref{display:flex;gap:9px;align-items:center;min-height:40px}.pref input{accent-color:var(--mint)}
body.compact .message{padding-block:4px}
body.quiet .member .avatar:after{visibility:hidden}
@media(max-width:1030px){.layout{grid-template-columns:64px 195px minmax(0,1fr) 174px}.layout.no-members{grid-template-columns:64px 195px minmax(0,1fr)}}
@media(max-width:800px){.layout,.layout.no-members{grid-template-columns:60px 165px minmax(0,1fr)}.members{display:none}.layout.show-members .members{display:block;position:fixed;z-index:3;inset-inline-end:0;top:70px;bottom:0;width:200px;box-shadow:0 0 30px #0008}.workspace{padding-inline:10px}.quick-search kbd{display:none}}
@media(max-width:610px){.layout,.layout.no-members{grid-template-columns:51px minmax(0,1fr)}.rail{padding-inline:4px}.brand,.rail-btn{width:37px;height:37px;border-radius:11px}.channels{display:none}.layout.show-menu .channels{display:flex;position:fixed;z-index:4;inset-inline-start:51px;top:0;bottom:0;width:min(230px,calc(100% - 58px));box-shadow:0 0 30px #0009}.mobile-menu,.mobile-search{display:inline-grid}.topbar{padding:0 7px;gap:4px;min-height:60px}.top-actions{gap:0}.top-divider,.channel-topic{display:none}.welcome p{max-width:90%}.welcome-art{opacity:.52}.layout.show-members .members{top:60px}.message header{padding-inline-end:92px}.compose-meta span:first-child{display:none}}
a{color:var(--mint)}
.gate{min-height:100dvh;display:grid;place-items:center;padding:24px;background:radial-gradient(ellipse at 50% 20%,#30343b,#141519 68%)}
.gate-shell{display:grid;grid-template-columns:1fr 1fr;align-items:stretch;width:min(100%,860px);overflow:hidden;border:1px solid #41444d;border-radius:24px;box-shadow:0 24px 90px #0008}
.gate-hero{display:grid;justify-items:center;align-content:center;min-height:420px;padding:24px;color:#f4f5f7;text-align:center;background:radial-gradient(ellipse at 50% 44%,#5b606b,#282b32 53%,#181a1f 88%)}
.gate-emblem{width:min(100%,236px);aspect-ratio:1;display:grid;place-items:center;position:relative;isolation:isolate}
.gate-emblem::before{content:"";position:absolute;inset:8%;z-index:-1;border:1px solid #d2d6e540;border-radius:50%;box-shadow:0 0 0 15px #d2d6e510,0 0 42px #d2d6e533}
.gate-emblem img{display:block;width:100%;height:auto;filter:drop-shadow(0 12px 16px #0008)}
.gate-hero h1{margin:0;font-size:clamp(1.9rem,5vw,2.7rem);line-height:1.2}
.gate-hero h1 span{display:block;margin-block-start:7px;color:#dadde4;font-size:.48em;font-weight:850;letter-spacing:.21em}
.gate-hero p{margin:12px 0 0;color:#c5c8d0}
.gate-card{min-width:0;padding:clamp(20px,4vw,36px);align-content:center;background:var(--side)}
.gate-card h2{margin:0;font-size:1.55rem}
.gate-card p{color:var(--soft);margin:6px 0 18px}
.gate-card .primary{display:inline-block;text-decoration:none}
@media(max-width:650px){
  .gate{padding:14px}
  .gate-shell{grid-template-columns:1fr;max-width:440px;border-radius:18px}
  .gate-hero{min-height:0;padding:10px 16px 18px}
  .gate-emblem{width:140px}
}
.workspace strong{flex:1}.workspace .icon-btn{width:28px}
#navigation{min-height:0}.channel-btn span{min-width:0;overflow-wrap:anywhere}.tools{margin-top:12px}
.channel-btn.active:after{margin-inline-start:auto}
.members-head{position:sticky;top:0;background:var(--side);z-index:1}
.member{width:calc(100% - 20px);text-align:start;border-radius:8px;overflow-wrap:anywhere}.member:hover{background:var(--card)}
.member .avatar,.message .avatar{border-radius:50%}
.profile .profile-info{text-align:start;overflow-wrap:anywhere;padding:0;flex:1}.profile-info small{max-width:120px;overflow:hidden;text-overflow:ellipsis}
.voice-dock{border-top:1px solid var(--line);padding:10px 12px;display:flex;align-items:center;gap:6px;background:var(--deep)}
.voice-dock strong{flex:1;color:var(--mint);overflow-wrap:anywhere}.voice-dock .icon-btn{width:29px}.voice-dock .muted{color:#ffadba}
.message header{padding-inline-end:72px;flex-wrap:wrap;gap:3px 8px}.message header .icon-btn{width:auto;height:auto;padding:0;color:var(--text);font-weight:700}
.message-actions{gap:2px}.message-actions .icon-btn{width:28px}
.message p{unicode-bidi:plaintext}.message small{display:inline}.topbar strong{max-width:58%}
.field{display:block;margin-bottom:10px}.field .dialog-input{margin-bottom:2px}.field span{font-size:.85rem;color:var(--soft)}
.panel-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.secondary{padding:7px 12px;border-radius:8px;border:1px solid #405055;background:#1c272a;color:var(--text)}.secondary:hover{background:var(--deep)}
.danger{color:#ffacb9}.list-card{border:1px solid var(--line);padding:11px;border-radius:9px;margin:8px 0}.list-card p{margin:4px 0;color:var(--soft);white-space:pre-wrap;overflow-wrap:anywhere}.list-card strong{overflow-wrap:anywhere}
#notice{position:fixed;bottom:18px;inset-inline-start:18px;z-index:6;background:#233832;border:1px solid #497965;color:var(--text);padding:8px 13px;border-radius:10px;max-width:calc(100vw - 36px);box-shadow:0 5px 18px #0008}
.more{font-size:.8rem;margin:10px 0}.reactions button{min-width:36px}
body.quiet .members small,body.quiet .member .avatar:after{visibility:hidden}
.voice-room{display:grid;justify-items:start;gap:8px}.voice-room p{color:var(--soft);margin:4px 0}.avatar.large{width:58px;height:58px;font-size:24px}
.badge{margin-inline-end:6px;display:inline-block;border:1px solid #4a5a5f;color:#b9cfce;padding:2px 6px;border-radius:7px;font-size:.72rem}
.badge.mint{color:#a3ebcc}.badge.lilac{color:#dfc7ff}.badge.sand{color:#f6d699}.badge.rose{color:#ffc9db}.badge.slate{color:#b8d0de}
.layout.is-home{grid-template-columns:72px 232px minmax(0,1fr)}.layout.is-home .members{display:none}
@media(max-width:1030px){.layout.is-home{grid-template-columns:64px 195px minmax(0,1fr)}}
@media(max-width:800px){.layout.is-home{grid-template-columns:60px 165px minmax(0,1fr)}}
@media(max-width:610px){.layout.is-home{grid-template-columns:51px minmax(0,1fr)}}

:root {
  --bg:#232428;
  --side:#1c1d21;
  --rail:#141519;
  --card:#2e3035;
  --line:#393b42;
  --soft:#c0c1c7;
  --text:#f4f4f6;
  --mint:#d6d9df;
  --deep:#3c3f47;
  --faint:#a1a3ac;
  --accent:#575d6a;
}
.workspace,.topbar,.members-head{min-height:49px}
.workspace,.topbar{box-shadow:0 1px 0 #17181c70}
.workspace{padding:7px 13px}
.workspace-logo{display:none}
.rail{padding-top:11px;gap:8px}
.rail #servers{gap:8px}
.brand,.rail-btn{width:46px;height:46px;border-radius:50%;background:#303136;color:#e3e5e8;transition:border-radius .16s,background .16s}
.brand:hover,.brand.selected,.rail-btn.active,.rail-btn:hover{border-radius:15px;background:var(--accent);color:white}
.brand,.brand:hover,.brand.selected{background:transparent}
.brand img{width:100%;height:100%;object-fit:contain;display:block;transform:scale(1.25)}
.brand:hover img,.brand.selected img{filter:drop-shadow(0 0 4px #d6d9df65)}
.rail-wordmark{margin-top:-4px;color:var(--soft);font-size:.55rem;font-weight:800;letter-spacing:.12em}
.rail-btn.active{border:0}
.rail-btn.active:after{background:white}
.add-server{border:0;color:#52bd88}
.add-server:hover{background:#248255;color:white}
.quick-search{margin:12px 10px 8px;background:#1f2024;border:0;border-radius:5px;padding:6px 8px}
.channel-btn,.tools button{min-height:33px;border-radius:5px;margin-block:1px}
.channel-btn:hover,.tools button:hover,.icon-btn:hover{background:#383941}
.channel-btn.active{background:#404149;color:#fff}
.channel-btn.active:after{display:none}
.channel-section{padding-block:7px 2px}
.category-toggle{display:flex;align-items:center;gap:4px;color:var(--soft);padding:0;min-width:0;font-size:.8rem;text-align:start}
.category-toggle svg{width:12px;height:12px}
.category-toggle.collapsed svg{transform:rotate(90deg)}
.profile{background:#232428;padding:8px 10px}
.profile .avatar{border-radius:50%}
.top-hash,.members-head span{color:var(--faint)}
.members-head{padding-inline:14px}
.feed{padding:10px 0 0}
.feed>.empty,#messages>.empty,.feed>.more{margin-inline:18px}
.message{padding:4px 15px;gap:10px}
.message + .message{border-top:0}
.message:hover,.message:focus-within{background:#2d2e34}
.message header{padding-inline-end:112px}
.message p{color:#dbdee1}
.message-actions{inset-inline-end:12px;top:-7px;opacity:0;background:#303137;border:1px solid #464850;border-radius:6px;z-index:1}
.message:hover .message-actions,.message:focus-within .message-actions{opacity:1}
@media (hover:none){.message-actions{opacity:1}}
.reply-quote{display:flex;align-items:center;gap:6px;max-width:90%;color:var(--soft);font-size:.78rem;padding:0;text-align:start;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.reply-quote svg{width:15px;height:15px}
#reply-bar{display:flex;justify-content:space-between;align-items:center;padding:3px 10px;background:#25262a;border-radius:8px 8px 0 0;color:var(--soft)}
#reply-bar:not([hidden]) + .composer{border-start-start-radius:0;border-start-end-radius:0}
.composer-wrap{padding:7px 15px 12px}
.composer{background:var(--card);border:1px solid transparent;border-radius:8px}
.composer:focus-within{border-color:#505467}
.send,.primary{background:var(--accent);color:#fff}
.send:hover,.primary:hover{background:color-mix(in srgb,var(--accent),white 12%);color:#fff}
.welcome{margin:12px 16px;background:#303349;border-color:#484d75}
.friends-page{min-height:calc(100dvh - 61px)}
.friend-tabs{display:flex;gap:6px;flex-wrap:wrap;padding:4px 14px 10px;border-bottom:1px solid var(--line)}
.friend-tabs button{padding:4px 9px;border-radius:5px;color:#c9cdd1}
.friend-tabs button:hover,.friend-tabs .active{background:#40414a;color:#fff}
.friend-tabs .add-friend{background:#248045;color:white}
.friend-tabs .add-friend:hover,.friend-tabs .add-friend.active{background:#1b6938;color:white}
.friend-content{padding:16px}
.friend-content h2{font-size:.92rem;margin:0 0 12px}
.friend-content>p,.friend-empty{color:var(--soft)}
.friend-empty{display:grid;justify-items:center;margin:10vh 0 0;text-align:center}
.empty-emblem{background:#404575;border:1px solid #545b9d;border-radius:24px;padding:18px;color:#d7dbff}
.empty-emblem svg{width:38px;height:38px}
.friend-content form{max-width:550px}
.friend-row{display:flex;align-items:center;gap:8px;border-top:1px solid var(--line);padding:8px 4px}
.friend-row:hover{background:#383a41}
.friend-person{flex:1;display:flex;gap:10px;align-items:center;text-align:start;overflow-wrap:anywhere}
.friend-person .avatar{border-radius:50%}
#context-menu,.context-submenu{position:fixed;min-width:185px;max-width:calc(100vw - 8px);max-height:calc(100dvh - 8px);overflow:auto;background:#1c1d21;padding:5px;border:1px solid #41424a;border-radius:6px;box-shadow:0 8px 24px #0009;z-index:8}
.context-submenu{z-index:9}
.menu-item{display:block;text-align:start;padding:7px 10px;width:100%;border-radius:4px;color:#dbdee1}
.menu-item:disabled{opacity:.55;cursor:default}
.menu-mark{float:inline-end;margin-inline-start:15px}
.voice-member{display:flex;align-items:center;gap:6px;margin-inline-start:22px;padding:3px 6px;color:var(--soft);text-align:start;font-size:.82rem}
.voice-member:hover{background:var(--card);border-radius:5px}
.voice-member .avatar{width:22px;height:22px;min-width:22px;font-size:.7rem}
.dm-call-live{color:var(--mint);margin-inline-start:auto}
.message-avatar{padding:0;border-radius:50%;align-self:start}
.menu-item:hover,.menu-item:focus-visible{background:var(--accent);color:#fff}
.menu-item.danger{color:#ff9b9f}
.menu-item.danger:hover,.menu-item.danger:focus-visible{background:#a63e45;color:white}
.switch-results{max-height:44dvh;overflow:auto}
.switch-row{display:flex;align-items:center;gap:9px}
.switch-row small{margin-inline-start:auto}
dialog{background:#2b2d33;border-color:#4b4e5a}
.dialog-input{background:#1e1f24;border-color:#41434a}
@media(max-width:800px){.layout.show-members .members{top:49px}}
@media(max-width:610px){
  .rail{padding-inline:4px}.brand,.rail-btn{width:36px;height:36px}
  .message{padding-inline:8px}.message-actions{inset-inline-end:6px}.message header{padding-inline-end:104px}
  .friend-tabs{padding-inline:8px}.friend-tabs button{padding-inline:6px}
}
.channel-btn.unread{color:#fff;font-weight:700;position:relative}
.channel-btn.unread:before{content:"";width:5px;height:5px;background:#fff;border-radius:50%;position:absolute;inset-inline-start:-7px}

/* Keep desktop navigation in the Discord column order, with bidi text inside. */
.layout[dir="ltr"] .send svg{transform:none}
.workspace strong,.topbar strong,.channel-topic,.nav-name,.profile-info strong,.member strong{unicode-bidi:plaintext}
.message p{white-space:pre-wrap;text-align:start}
.message p[dir="auto"]{unicode-bidi:plaintext}
.composer textarea{direction:rtl;text-align:right}
#reply-bar span{unicode-bidi:plaintext}
.rail-btn{font-size:clamp(.72rem,2vw,1.05rem);overflow-wrap:anywhere}
.rail-btn:active{cursor:grabbing}
.server-tag{display:inline-flex;align-items:center;background:#272831;border:1px solid #494b58;border-radius:5px;color:#dcdeff;padding:0 5px;font-size:.68rem;white-space:nowrap;font-weight:750;line-height:1.5;vertical-align:middle}
.member .server-tag{margin-inline-start:5px}
.channel-btn .server-tag{margin-inline-start:auto;max-width:56px;overflow:hidden}
.server-tag.mint,.role-color.mint{color:#8ce4bd}
.server-tag.lilac,.role-color.lilac{color:#c8b7ff}
.server-tag.sand,.role-color.sand{color:#ecc898}
.server-tag.rose,.role-color.rose{color:#f4aabe}
.server-tag.slate,.role-color.slate{color:#a9bedc}
.access-roles{border:1px solid var(--line);border-radius:8px;padding:7px 10px;margin:6px 0 12px;max-height:200px;overflow:auto}
.access-roles .pref{min-height:32px}
.role-row{display:flex;align-items:center;gap:6px}
.role-row .badge{margin-inline-end:auto}
.channel-btn.muted-channel{color:#90939c}
body[data-accent="mint"]{--accent:#247659}
body[data-accent="rose"]{--accent:#a64c76}
body[data-accent="aqua"]{--accent:#166d69}
body[data-accent="burgundy"]{--accent:#831e48}
body[data-accent="gold"]{--accent:#74571d}
body[data-size="large"] .message p,body[data-size="large"] .composer textarea{font-size:1.1rem}
.channel-entry{position:relative}
.channel-entry .channel-gear{position:absolute;right:12px;top:50%;transform:translateY(-50%);width:24px;height:24px;opacity:0}
.channel-entry .channel-gear svg{width:15px;height:15px}
.channel-entry:hover .channel-gear,.channel-entry:focus-within .channel-gear{opacity:1}
.channel-entry:has(.channel-gear) .channel-btn{padding-right:29px}
@media(hover:none){.channel-entry .channel-gear{opacity:1}}
.layout .rail-btn.active::after{inset-inline-start:auto;left:-11px;right:auto}

.chat-main{display:flex;flex:1;min-height:0;min-width:0;position:relative}
.chat-center{display:flex;flex-direction:column;min-width:0;flex:1}
.chat-feed{display:flex;flex-direction:column;padding:0}
.chat-feed::before{content:"";flex:1 0 12px}
.chat-feed>*{flex:none}
.channel-intro{margin:16px 18px 14px}
.channel-intro h1{margin:8px 0 2px;font-size:1.65rem;line-height:1.25;unicode-bidi:plaintext}
.channel-intro p{margin:0 0 8px;color:var(--soft);unicode-bidi:plaintext}
.channel-emblem{width:54px;height:54px;border-radius:50%;display:grid;place-items:center;background:#45474f}
.channel-emblem svg{width:29px;height:29px}
.date-divider{display:flex;align-items:center;gap:8px;margin:10px 15px;color:var(--soft);font-size:.72rem;text-align:center}
.date-divider::before,.date-divider::after{content:"";height:1px;background:var(--line);flex:1}
.message{padding-block:7px;gap:10px}
.message + .message{margin-top:0}
.message.grouped{padding-block:1px}
.message .grouped-time{width:35px;flex:none;text-align:center;align-self:start;margin-top:4px;color:var(--soft);font-size:.64rem;opacity:0;white-space:nowrap;overflow:hidden}
.message.grouped:hover .grouped-time,.message.grouped:focus-within .grouped-time{opacity:1}
.message.pinned-message{background:#66522c29;box-shadow:inset 2px 0 #a68046}
.message.pinned-message:hover{background:#66522c3b}
.message p.message-text{width:fit-content;max-width:100%;line-height:1.48;overflow-wrap:anywhere}
.message-text code{background:#232429;border:1px solid #494b54;border-radius:4px;padding:0 4px;direction:ltr;unicode-bidi:isolate}
.message-text a{color:#87c5ff}
.message .edited-mark{font-size:.66rem}
#chat-search{display:flex;align-items:center;width:clamp(108px,14vw,186px);height:27px;align-self:center;background:#202127;border-radius:5px}
#chat-search input{flex:1;width:0;padding:4px 0 4px 8px;color:var(--text);background:transparent;border:0;font-size:.82rem}
#chat-search input:focus-visible{outline:none}
#chat-search:focus-within{outline:1px solid var(--accent)}
#chat-search .icon-btn{width:27px;height:25px}
#chat-search svg{width:15px;height:15px}
.mobile-chat-search{display:none}
.chat-results{flex:none;width:min(345px,48%);background:#2b2d32;border-left:1px solid var(--line);overflow:auto}
.result-header{display:flex;justify-content:space-between;align-items:center;gap:7px;padding:7px 12px;border-bottom:1px solid var(--line);position:sticky;top:0;background:#2b2d32;z-index:1}
.result-body{padding:9px}
.result-count{color:var(--soft);font-size:.8rem;margin:0 4px 6px}
.result-body .result{display:block;background:#34363e;margin-bottom:5px;border:1px solid var(--line);border-radius:6px;overflow-wrap:anywhere;padding:8px}
.result-body .result:hover{background:#3f424d}
.layout.show-results{grid-template-columns:72px 232px minmax(0,1fr)}
.layout.show-results .members{display:none}
@media(max-width:1030px){.layout.show-results{grid-template-columns:64px 195px minmax(0,1fr)}}
@media(max-width:800px){.layout.show-results{grid-template-columns:60px 165px minmax(0,1fr)}}
@media(max-width:610px){
  .layout.show-results{grid-template-columns:51px minmax(0,1fr)}
  #chat-search{display:none}
  .mobile-chat-search{display:inline-grid}
  .chat-results{position:absolute;inset:0;z-index:3;width:100%}
}
.composer{align-items:center}
.composer .composer-add{border-right:1px solid var(--line);border-radius:0;padding-right:5px}
.composer .send{width:32px;height:31px;background:transparent;color:var(--soft)}
.composer .send:hover{background:#464950;color:var(--text)}
.composer .send:disabled{opacity:.4;cursor:progress}
#file-preview{display:flex;align-items:center;gap:8px;padding:5px 9px;background:#272930;border-radius:8px 8px 0 0}
#file-preview bdi{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
#file-preview .icon-btn{margin-left:auto}
#file-preview:not([hidden]) + .composer{border-start-start-radius:0;border-start-end-radius:0}
.attachment-card{max-width:min(380px,100%);margin:4px 0 2px}
.attachment-image{display:block;max-width:100%;max-height:280px;object-fit:contain;border-radius:6px;margin-bottom:5px}
.attachment-download{display:flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:6px;padding:6px 9px;background:#2b2d33;text-decoration:none}
.attachment-download bdi{overflow-wrap:anywhere}
.attachment-download small{margin-left:auto;white-space:nowrap}
.channel-intro h1,.channel-intro p{width:fit-content;max-width:100%}

dialog.settings-window{
  width:min(940px,calc(100vw - 28px));
  max-width:none;
  height:min(760px,calc(100dvh - 28px));
  max-height:none;
  padding:0;
  overflow:hidden;
  display:flex;
  flex-direction:column;
}
dialog.settings-window:not([open]){display:none}
.settings-window>.dialog-head{padding:10px 16px;margin:0;border-bottom:1px solid var(--line);flex:none}
.settings-window #dialog-body{flex:1;min-height:0}
.settings-grid{display:grid;grid-template-columns:205px minmax(0,1fr);direction:ltr;height:100%;min-height:0}
.settings-nav{background:var(--side);border-right:1px solid var(--line);padding:14px 10px;overflow:auto}
.settings-caption{padding:4px 8px;font-weight:700;overflow-wrap:anywhere}
.settings-tab{display:block;width:100%;text-align:left;padding:7px 8px;color:var(--soft);border-radius:5px;unicode-bidi:plaintext}
.settings-tab:hover,.settings-tab[aria-current]{color:var(--text);background:#404149}
.settings-content{direction:rtl;background:var(--bg);padding:20px 24px;overflow:auto}
.settings-content h2{margin:0 0 16px;font-size:1.35rem}
.settings-view{max-width:600px}
.settings-view form{margin-bottom:12px}
.settings-view hr{border:0;border-top:1px solid var(--line);margin:16px 0}
.settings-account{display:flex;align-items:center;gap:9px;flex-wrap:wrap;background:var(--card)}
.settings-account .avatar{border-radius:50%}
.settings-note{color:var(--soft)}
.key-list{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:0}
.key-list dt,.key-list dd{margin:0;padding:8px 0;border-bottom:1px solid var(--line)}
.member.status-online .avatar:after{background:#3ab87c}
.member.status-idle .avatar:after{background:#e5b54d}
.member.status-dnd .avatar:after{background:#e86b74}
.member.status-offline .avatar:after{background:#737680}
body[data-theme="midnight"]{--bg:#1d1e24;--side:#191a20;--rail:#121319;--card:#242630;--line:#30323b}
body.reduce-motion *,body.reduce-motion *::before,body.reduce-motion *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
@media(max-width:620px){
  dialog.settings-window{width:100vw;height:100dvh;border-radius:0}
  .settings-grid{grid-template-columns:1fr;grid-template-rows:auto minmax(0,1fr)}
  .settings-nav{display:flex;gap:4px;border-right:0;border-bottom:1px solid var(--line);padding:6px;overflow-x:auto}
  .settings-tab{width:auto;flex:none;white-space:nowrap}
  .settings-caption{display:none}
  .settings-content{padding:14px}
}

.voice-settings h3{margin:0 0 6px}
.voice-range{display:grid;grid-template-columns:1fr auto;gap:5px;margin:8px 0 16px}
.voice-range output{color:var(--soft);direction:ltr;font-variant-numeric:tabular-nums}
.voice-range input{grid-column:1/-1;inline-size:100%;accent-color:var(--accent);direction:ltr}
.mic-meter{display:block;width:100%;height:22px;direction:ltr}

.rail-btn.loading{background:var(--accent);border-radius:15px;color:white}
.chat{position:relative}
.opening-server .chat::after,.opening-room::after{
  content:"";position:absolute;z-index:4;top:0;left:0;right:0;height:2px;background:var(--accent);
  opacity:.85;pointer-events:none;transform-origin:left;animation:navigation-progress 1.25s ease-in-out infinite;
}
.chat-main{min-height:0}
@keyframes navigation-progress{0%{transform:scaleX(.12)}70%{transform:scaleX(.85)}100%{transform:scaleX(.96);opacity:.3}}
.pending-message{display:block;color:var(--soft);font-size:.68rem}

.permission-switch{border:0;border-bottom:1px solid var(--line);padding:7px 0;margin:0 0 8px;min-inline-size:0}
.permission-switch legend{padding:0;color:var(--text);font-size:.88rem}
.permission-options{display:inline-flex;direction:ltr;border:1px solid var(--line);border-radius:6px;background:var(--rail);margin-top:5px}
.permission-options label{position:relative}
.permission-options input{position:absolute;opacity:0;inset:0;width:100%;height:100%;margin:0;cursor:pointer}
.permission-options span{display:grid;place-items:center;width:42px;height:30px;color:var(--soft);border-radius:4px}
.permission-options input:focus-visible + span{outline:2px solid var(--accent);outline-offset:1px}
.permission-deny input:checked + span{background:#962d3b;color:white}
.permission-inherit input:checked + span{background:#4a4d58;color:white}
.permission-allow input:checked + span{background:#247650;color:white}

#conversation{display:flex;flex:1;min-height:0;min-width:0;flex-direction:column}
.layout.viewing-call{grid-template-columns:72px 232px minmax(0,1fr)}
.layout.viewing-call .members{display:none}
.chat-center.in-call{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr)}
.chat-center.in-call.voice-chat-open{grid-template-columns:minmax(0,1fr) minmax(240px,320px)}
#call-stage{min-width:0;min-height:0;display:flex;flex-direction:column;background:var(--rail)}
.call-grid{min-height:0;flex:1;overflow:auto;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:minmax(145px,1fr);gap:8px;padding:10px}
.call-grid:has(> :only-child){grid-template-columns:minmax(0,1fr)}
.call-tile{position:relative;border-radius:10px;overflow:hidden;display:grid;place-items:center;min-height:145px;background:linear-gradient(155deg,#292d39,#454b5d)}
.tile-mint{background:linear-gradient(155deg,#122b28,#345c50)}.tile-lilac{background:linear-gradient(155deg,#261d3c,#514369)}
.tile-sand{background:linear-gradient(155deg,#2e231d,#624b37)}.tile-rose{background:linear-gradient(155deg,#3a191e,#694349)}
.call-tile video{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;background:#111}
.call-tile video.mirrored-camera{transform:scaleX(-1)}
.call-audio-status:not(:empty){display:flex;align-items:center;justify-content:center;gap:8px;padding:6px;color:var(--soft);font-size:.8rem}
.call-tile .avatar.large{width:clamp(52px,10vw,104px);height:clamp(52px,10vw,104px);border-radius:50%;font-size:1.85rem}
[data-speaking="true"] > .avatar::before,.speaker-video[data-speaking="true"]::after{
  content:"";position:absolute;pointer-events:none;inset:-3px;border:2px solid #489bff;
  border-radius:inherit;box-shadow:0 0 5px #489bff80;animation:voice-blue-pulse 1.2s ease-in-out infinite
}
.speaker-video[data-speaking="true"]::after{inset:0}
@keyframes voice-blue-pulse{50%{border-color:#84caff;box-shadow:0 0 10px #489bffb0}}
@media(prefers-reduced-motion:reduce){
  [data-speaking="true"] > .avatar::before,.speaker-video[data-speaking="true"]::after{animation:none}
}
.call-label,.call-muted,.call-live{position:absolute;padding:4px 8px;background:#101116de;color:white;border-radius:7px;line-height:1.4}
.call-label{left:10px;bottom:10px;max-width:80%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.call-muted{bottom:10px;right:10px;font-size:.7rem}
.call-live{right:10px;top:10px;background:#a72d48;font-size:.72rem}
.call-expand-share{position:absolute;top:10px;left:10px;z-index:1;padding:5px 8px;border-radius:7px;background:#101116e8;color:#fff;font-size:.78rem}
.call-expand-share:hover{background:#303642;color:#fff}
.share-viewer{width:calc(100vw - 24px);height:calc(100dvh - 24px);max-width:none;max-height:none;padding:0;border:1px solid var(--line);border-radius:12px;overflow:hidden;background:#101116;color:#f4f4f6}
.share-viewer::backdrop{background:#000c}
.share-viewer-panel{display:grid;grid-template-rows:auto minmax(0,1fr);width:100%;height:100%;background:#101116}
.share-viewer-bar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;padding:8px 12px;border-bottom:1px solid #393b42}
.share-viewer-bar h2{margin:0;font-size:1rem;overflow-wrap:anywhere}
.share-viewer-controls{display:flex;align-items:center;flex-wrap:wrap;gap:5px}
.share-viewer-controls button{min-height:34px;padding:4px 8px;font-size:.82rem}
.share-viewer-controls button:disabled{opacity:.45;cursor:default}
.share-viewer-zoom{min-width:4ch;text-align:center;direction:ltr;font-variant-numeric:tabular-nums}
.share-viewer-viewport{direction:ltr;display:flex;overflow:auto;min-width:0;min-height:0;background:#08090b}
.share-viewer-viewport:focus-visible{outline-offset:-2px}
.share-viewer-surface{flex:none;margin:auto;width:var(--share-zoom,100%);height:var(--share-zoom,100%)}
.share-viewer-surface video{display:block;width:100%;height:100%;object-fit:contain}
.call-empty{display:grid;place-content:center;justify-items:center;text-align:center;min-height:170px;background:var(--bg);border-radius:10px}
.call-empty h1{margin:8px 0 0}.call-empty p{color:var(--soft);margin:2px 0 0}
.call-toolbar{display:flex;justify-content:center;flex-wrap:wrap;gap:8px;padding:10px;background:var(--rail);border-top:1px solid var(--line)}
.call-control{width:42px;height:38px;border-radius:8px;background:var(--card);color:var(--text)}
.call-control:hover,.call-control.on{background:var(--accent);color:white}
.call-control.off,.call-control.hangup{background:#a93049;color:white}
.call-control svg{width:18px;height:18px}
.voice-chat-open #conversation{border-left:1px solid var(--line);background:var(--bg)}
.voice-chat-open #conversation .composer-wrap{padding-inline:6px}
.voice-chat-open #conversation .message header{padding-inline-end:0}
.voice-chat-open #conversation .channel-intro h1{font-size:1.1rem}
.voice-chat-open #conversation .channel-emblem{width:36px;height:36px}
.voice-chat-open #conversation .compose-meta{display:none}
@media(max-width:1030px){.layout.viewing-call{grid-template-columns:64px 195px minmax(0,1fr)}}
@media(max-width:800px){
  .layout.viewing-call{grid-template-columns:60px 165px minmax(0,1fr)}
  .chat-center.in-call.voice-chat-open{grid-template-columns:minmax(0,1fr)}
  .voice-chat-open #conversation{position:absolute;inset:0;z-index:2}
}
@media(max-width:610px){.layout.viewing-call{grid-template-columns:51px minmax(0,1fr)}.call-grid{grid-template-columns:minmax(0,1fr)}}
.log-event{margin-inline:16px;padding:9px 12px;border-block-end:1px solid var(--line)}
.log-event:hover{background:var(--card)}
.log-event header,.log-subject{display:flex;align-items:center;flex-wrap:wrap;gap:5px 8px}
.log-event time,.log-subject{color:var(--soft);font-size:.78rem}
.log-event .message-text{margin-block:4px}
.log-copy{margin-inline-start:auto;padding:3px 8px;font-size:.78rem}
.log-mention{background:color-mix(in srgb,var(--accent),transparent 55%);color:var(--text);border-radius:4px;padding:1px 5px;font-weight:600;overflow-wrap:anywhere}
.log-mention:hover{background:var(--accent);text-decoration:underline}
.boost-panel{display:grid;justify-items:center;text-align:center;gap:8px}
.boost-panel h2,.boost-panel p{margin:0}
.boost-emblem{font-size:2rem;color:#ffa2e4;text-shadow:0 0 20px #f08ed7}
.boost-panel progress{width:min(320px,100%);accent-color:#e76ebd}
.gradient-name{background:var(--name-gradient);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;color:var(--text)}
.nameplate{padding:2px 7px;border-radius:7px;border:1px solid #aeb4db44}
.nameplate:not(.gradient-name).plate-glass{background:#adb4e326}
.nameplate:not(.gradient-name).plate-gold{background:#bc84274d}
.nameplate:not(.gradient-name).plate-violet{background:#a168ef55}
.nameplate.plate-gold{border-color:#e4b96a}
.nameplate.plate-violet{border-color:#af8cf3}
.profile-style-card{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:12px;border-radius:12px;background:var(--card);margin-bottom:12px;border:1px solid var(--line)}
.profile-style-card .avatar{border-radius:50%}
.profile-aurora{background:linear-gradient(120deg,#183947,#354f73,#3f2c62)}
.profile-ember{background:linear-gradient(120deg,#3d1c25,#734021,#3c2e42)}
.profile-stars{background:radial-gradient(circle at 80% 20%,#7b6196,#222643 35%,#232234 85%)}
.avatar-glow{box-shadow:0 0 14px #a99cff}
.avatar-halo{outline:2px dashed #90d7ff;outline-offset:3px}
.avatar-pulse{animation:avatar-pulse 2s ease-in-out infinite}
@keyframes avatar-pulse{0%,100%{box-shadow:0 0 3px #a99cff}50%{box-shadow:0 0 17px #a99cff}}
.avatar.frame-gold{border:2px solid #e3b767}
.avatar.frame-ice{border:2px solid #7fdaec}
.avatar.frame-rainbow{border:2px solid #e6a9ff;outline:1px dashed #8eddd0;outline-offset:2px}
.color-input{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:6px 0;padding:5px 8px;background:var(--card);border-radius:6px}
.color-input input{width:46px;height:28px;padding:0;background:transparent;border:0;cursor:pointer}
.theme-editor h3,.profile-style-preview h3{margin:0 0 8px;font-size:1rem}
.theme-presets{display:grid;grid-template-columns:repeat(auto-fit,minmax(138px,1fr));gap:8px;margin-block:12px 18px}
.theme-preset{display:grid;gap:7px;text-align:start;border:1px solid var(--line);border-radius:10px;padding:9px 10px;background:var(--card)}
.theme-preset[aria-pressed="true"]{border-color:var(--mint);box-shadow:inset 0 0 0 1px var(--mint)}
.theme-swatches{display:flex;gap:5px}
.theme-swatch{width:18px;height:18px;border-radius:50%;border:1px solid #ffffff40}
.theme-preview{display:grid;grid-template-columns:32px minmax(65px,23%) minmax(0,1fr);overflow:hidden;border:1px solid var(--line);border-radius:10px;background:var(--bg);color:var(--text);margin-bottom:12px}
.theme-preview-rail{display:grid;align-content:start;justify-items:center;gap:6px;padding-block:10px;background:var(--rail);border-right:1px solid var(--line)}
.theme-preview-rail span{width:16px;height:16px;border-radius:6px;background:var(--card)}
.theme-preview-rail span:first-child,.theme-preview-accent{background:var(--accent)}
.theme-preview-channels{display:grid;align-content:start;gap:4px;padding:9px;background:var(--side);border-left:1px solid var(--line);font-size:.75rem}
.theme-preview-channels span{color:var(--soft)}
.theme-preview-chat{display:grid;justify-items:start;gap:8px;padding:10px}
.theme-preview-message{width:100%;padding:6px 9px;background:var(--card);border:1px solid var(--line);border-radius:7px}
.theme-preview-accent{border-radius:6px;padding:3px 9px;color:#fff;font-size:.78rem}
.theme-color-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(175px,1fr));gap:4px 8px;margin-bottom:10px}
.theme-color-fields .color-input{margin:0}
.theme-actions{display:flex;flex-wrap:wrap;gap:8px}
.profile-style-preview{padding:12px;margin-bottom:14px;border:1px solid var(--line);border-radius:12px;background:var(--bg)}
.profile-style-preview .profile-style-card{gap:12px;padding:16px}
.profile-style-identity{min-width:0;display:grid;justify-items:start;gap:2px}
.profile-style-identity strong,.profile-name-samples strong{max-width:100%;overflow-wrap:anywhere;line-height:1.35}
.profile-style-preview .profile-style-identity strong{font-size:1.65rem}
.profile-name-samples{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px}
.profile-name-samples > div{display:grid;justify-items:start;min-width:0;padding:7px 9px;border-radius:8px;background:var(--card)}
.profile-name-samples strong{font-size:1.05rem}
@media(min-width:801px) and (min-height:740px){.profile-style-preview{position:sticky;top:0;z-index:1}}
.chat-results,.result-header{background:var(--side)}
#chat-search{background:var(--rail)}
#navigation{overflow:auto;flex:0 1 auto;scrollbar-width:thin}
.channels .tools,.channels .profile,.channels .voice-dock{flex-shrink:0}

.channel-entry[data-room-drop]::after{content:"";position:absolute;z-index:2;left:10px;right:10px;height:2px;background:var(--accent);pointer-events:none}
.channel-entry[data-room-drop="before"]::after{top:0}
.channel-entry[data-room-drop="after"]::after{bottom:0}

.profile-dates{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px 12px;padding:12px 0;margin:10px 0 0;border-top:1px solid var(--line)}
.profile-dates dt{color:var(--soft)}
.profile-dates dd{margin:0;overflow-wrap:anywhere}
.profile-roles{border-top:1px solid var(--line);padding:10px 0 2px}
.profile-roles h3{font-size:.95rem;margin:0 0 7px}
.profile-role-list{display:flex;flex-wrap:wrap;align-items:center;gap:6px}
.profile-role-list .badge{margin:0}
.profile-role-add{display:inline-flex;align-items:center;gap:4px;padding:4px 7px}
.profile-role-add svg{width:15px;height:15px}
.profile-roles form{margin-top:8px}

dialog.profile-window{
  width:min(1040px,calc(100vw - 28px));max-width:none;max-height:calc(100dvh - 28px);
  padding:0;background:#1c1614;border:1px solid #5b4940;overflow:auto;
}
.profile-window>.dialog-head{position:sticky;top:0;z-index:2;padding:10px 18px;margin:0;background:#1b1513f5;border-bottom:1px solid #ffffff15}
.member-profile{display:grid;grid-template-columns:minmax(0,47fr) minmax(0,53fr);gap:24px;padding:18px;direction:ltr;align-items:start}
.member-profile-identity,.member-profile-board{direction:rtl;min-width:0}
.member-profile-identity{overflow:hidden;border-radius:16px;background:linear-gradient(#211713,#473320);border:1px solid #ffffff16}
.member-profile-banner{height:160px;background:radial-gradient(ellipse at 30% 0%,#865c3f,transparent 70%),linear-gradient(130deg,#583727,#241b18);overflow:hidden}
.member-profile-banner img{width:100%;height:100%;object-fit:cover;display:block}
.member-profile-info{padding:0 22px 22px}
.member-profile-info>.avatar{width:88px;height:88px;border-radius:50%;margin-top:-44px;border:5px solid #2b1e18;font-size:2rem}
.member-profile-status{width:19px;height:19px;background:#85848a;border:4px solid #2b1e18;border-radius:50%;position:absolute;bottom:0;inset-inline-end:0}
.member-profile-status.status-online{background:#4bcb90}.member-profile-status.status-idle{background:#f0bc66}.member-profile-status.status-dnd{background:#ea626a}
.member-profile-info h2{font-size:1.65rem;margin:9px 0 4px;overflow-wrap:anywhere}
.member-profile-meta{display:flex;gap:8px;align-items:center;flex-wrap:wrap;color:#e1d8d3}
.member-profile-bubble{display:inline-block;background:#342821;border:1px solid #ffffff25;border-radius:15px;padding:6px 11px;margin:10px 0 0;overflow-wrap:anywhere}
.member-profile-actions{margin:15px 0}
.member-profile-info h3{margin:13px 0 4px;font-size:.92rem}
.member-profile-bio{margin:0 0 14px;white-space:pre-wrap;overflow-wrap:anywhere}
.member-profile-tabs{display:flex;gap:14px;border-bottom:1px solid #ffffff21;margin-bottom:16px}
.profile-tab{padding:8px 3px 12px;color:#cdbfb8;border-bottom:2px solid transparent}
.profile-tab[aria-pressed="true"]{border-color:#f1e9e4;color:#fff;font-weight:700}
.profile-widgets-title{font-size:1rem;margin:6px 0 12px}
.profile-widget{padding:14px;border-radius:16px;background:#332923;border:1px solid #ffffff12;margin-bottom:12px}
.profile-widget header{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px}
.profile-widget h3{margin:0;font-size:.97rem}
.profile-widget small,.profile-widget-empty{color:#ccbdb5}
.profile-widget-empty{margin:6px 0 0}
.profile-widget header button,.profile-game button{background:#ffffff14}
.profile-game-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(78px,1fr));gap:10px}
.profile-game{min-width:0;position:relative}
.profile-game-cover{width:100%;aspect-ratio:3/4;object-fit:cover;display:block;border-radius:9px;background:#24201e}
.profile-game-fallback{display:grid;place-items:center;background:linear-gradient(150deg,#6a5143,#261f1d);font-size:2rem}
.profile-game strong{display:block;font-size:.8rem;overflow-wrap:anywhere;margin-top:5px}
.profile-game button{position:absolute;top:3px;inset-inline-end:3px;width:22px;height:22px;background:#181311da}
.profile-game button svg{width:14px;height:14px}
.profile-game-rotation{grid-template-columns:1fr}
.profile-game-rotation .profile-game{display:grid;grid-template-columns:84px 1fr;gap:12px;align-items:center}
@media(max-width:670px){
  .member-profile{grid-template-columns:1fr;gap:14px;padding:12px}
  .member-profile-banner{height:120px}
}

.avatar > .discord-avatar { width: 100%; height: 100%; display: block; object-fit: cover; border-radius: inherit; }
.auth-panel { display: grid; gap: 10px; }
.auth-panel h3 { margin: 10px 0 0; }
.auth-panel .settings-note { margin: 0; }
.auth-row { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 10px; }
#gate-form .auth-panel > a { text-align: center; }
.auth-panel button:disabled { opacity: .65; cursor: default; }
