:root{
  --bg0:#0d0c1e;
  --bg1:#0a0b20;
  --bg2:#07071a;
  --p1:#181a3a;
  --p2:#0d0e26;
  --p3:#12122e;
  --p4:#0a0a1e;
  --pt1:16,18,44;
  --pt2:13,12,30;
  --pt3:9,9,26;
  --pt4:7,7,20;
  --bg:var(--bg0);
  --bg-2:#101344;
  --navy:#1f3e66;
  --navy-dim:rgba(var(--deepA),.12);
  --glass:rgba(255,255,255,.05);
  --glass-border:rgba(255,255,255,.1);
  --text:rgba(255,255,255,.58);
  --text-mid:rgba(255,255,255,.72);
  --text-bright:rgba(255,255,255,.96);
  --text-dim:rgba(255,255,255,.4);
  --heading:'Chillax',sans-serif;
  --sans:'DM Sans',sans-serif;
  --acc:#7aa2f7;
  --acc-rgb:122,162,247;
  --deepA:31,62,102;
  --deepB:16,19,68;
  --deepC:28,43,104;
  --chA:#5578d0;
  --chB:#a8c5f2;
  --blue:var(--acc);
  --red:#f7768e;
  --green:#9ece6a;
  --content-max:1100px;
  --chrome:linear-gradient(90deg,var(--chA) 0%,var(--chB) 18%,#ffffff 34%,#ffffff 66%,var(--chB) 82%,var(--chA) 100%);
  --card-bg:radial-gradient(ellipse 70% 50% at 15% 0%,rgba(var(--deepC),.18) 0%,transparent 70%),linear-gradient(160deg,rgba(var(--pt2),.3) 0%,rgba(var(--pt4),.32) 100%);
  --card-border:rgba(var(--deepC),.15);
  --card-shadow:inset 0 1px 0 rgba(var(--deepC),.14),inset 0 -1px 0 rgba(0,0,0,.4),0 10px 30px rgba(0,0,0,.45);
  --card-shadow-hover:inset 0 1px 0 rgba(var(--deepC),.18),inset 0 -1px 0 rgba(0,0,0,.45),0 0 40px rgba(var(--deepC),.09),0 16px 40px rgba(0,0,0,.55);
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;overflow-x:hidden;background:var(--bg)}
body{
  background:var(--bg);
  color:var(--text);
  font-family:var(--sans);
  font-size:15px;
  line-height:1.65;
  min-height:100vh;
  display:flex;
  flex-direction:column;
  overflow-x:hidden;
  position:relative;
  -webkit-font-smoothing:antialiased;
  opacity:0;
  transition:opacity .45s ease;
}
body.loaded{opacity:1}
::selection{background:rgba(var(--acc-rgb),.3)}
::-webkit-scrollbar{width:5px;height:5px}
::-webkit-scrollbar-track{background:transparent}
::-webkit-scrollbar-thumb{background:rgba(255,255,255,.1);border-radius:10px}
*{scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.1) transparent}
a{color:inherit;text-decoration:none}
img{display:block}
button{font-family:inherit}
.i{width:14px;height:14px;flex-shrink:0}

.bg-gradient{
  position:fixed;inset:0;z-index:0;pointer-events:none;
  background:radial-gradient(ellipse 100% 80% at 50% 50%,var(--bg0),var(--bg1) 55%,var(--bg2));
}
.bg-gradient::before,.bg-gradient::after{
  content:"";position:absolute;inset:0;background-repeat:no-repeat;will-change:transform;
}
@keyframes fadeUp{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}

.btn{
  display:inline-flex;align-items:center;gap:8px;justify-content:center;
  font-family:var(--sans);font-size:14px;font-weight:400;
  color:rgba(255,255,255,.7);
  background:linear-gradient(160deg,rgba(var(--deepC),.34) 0%,rgba(22,32,90,.45) 100%);
  border:none;cursor:pointer;
  padding:14px 34px;border-radius:100px;
  box-shadow:inset 0 1px 0 rgba(var(--deepC),.15),inset 0 -2px 0 rgba(0,0,0,.3);
  transition:background .2s,color .2s,transform .18s;
}
.btn:hover{background:linear-gradient(160deg,rgba(var(--deepA),.5) 0%,rgba(var(--deepB),.6) 100%);color:#fff;transform:translateY(-1px)}
.btn:disabled{opacity:.5;cursor:not-allowed;transform:none}
.btn-primary{
  font-weight:500;color:#fff;
  background:linear-gradient(160deg,rgba(var(--deepA),.72) 0%,rgba(var(--deepB),.82) 100%);
  box-shadow:inset 0 1px 0 rgba(var(--deepC),.2),inset 0 -2px 0 rgba(0,0,0,.3);
}
.btn-primary:hover{background:linear-gradient(160deg,rgba(var(--deepA),.88) 0%,rgba(var(--deepB),.94) 100%)}
.btn-sm{padding:9px 18px;font-size:13px}
.btn .i{width:13px;height:13px}
.btn-danger{color:var(--red);background:rgba(247,118,142,.08);box-shadow:inset 0 0 0 1px rgba(247,118,142,.25)}
.btn-danger:hover{color:#fff;background:rgba(247,118,142,.2)}

.grad{
  background:var(--chrome);background-size:100%;
  -webkit-background-clip:text;background-clip:text;color:transparent;
  -webkit-text-fill-color:transparent;
}

.field{margin-bottom:18px}
.field label{display:block;font-size:13px;color:var(--text-mid);font-weight:500;margin-bottom:8px}
.field input,.field textarea,.field select{
  width:100%;
  background:linear-gradient(180deg,rgba(255,255,255,.055),rgba(255,255,255,.02) 55%,rgba(255,255,255,.012));
  border:1px solid rgba(255,255,255,.09);
  box-shadow:inset 0 1px rgba(255,255,255,.12),inset 0 -1px rgba(0,0,0,.3),0 3px 10px rgba(0,0,0,.28);
  border-radius:14px;
  color:var(--text-bright);padding:13px 16px;font-size:14px;font-family:var(--sans);
  outline:none;transition:border-color .2s,box-shadow .2s;
}
.field input::placeholder,.field textarea::placeholder{color:var(--text-dim)}
.field select option{background:#12142e;color:#fff}
.field input:focus,.field textarea:focus,.field select:focus{
  border-color:rgba(255,255,255,.28);
  box-shadow:inset 0 1px rgba(255,255,255,.22),inset 0 -1px rgba(0,0,0,.38),0 0 0 3px rgba(255,255,255,.05);
}
.field textarea{min-height:90px;resize:vertical}
.form-note{font-size:13px;color:var(--text-dim);margin-top:16px;font-weight:300}
.form-note a{color:var(--blue);cursor:pointer}

.alert{border-radius:14px;padding:13px 16px;font-size:13.5px;margin-bottom:18px;display:none;font-weight:500}
.alert.show{display:block}
.alert-ok{background:rgba(158,206,106,.08);border:1px solid rgba(158,206,106,.25);color:var(--green)}
.alert-err{background:rgba(247,118,142,.07);border:1px solid rgba(247,118,142,.25);color:var(--red)}

.modal-backdrop{
  position:fixed;inset:0;z-index:200;
  background:rgba(0,0,0,.65);backdrop-filter:blur(8px);
  display:none;align-items:center;justify-content:center;padding:24px;
}
.modal-backdrop.open{display:flex}
.modal{
  position:relative;border-radius:26px;padding:38px 34px;
  background:radial-gradient(ellipse 80% 60% at 50% 0%,rgba(var(--deepC),.24) 0%,transparent 70%),linear-gradient(160deg,var(--p3) 0%,var(--p4) 100%);
  border:1px solid rgba(var(--deepC),.3);
  box-shadow:inset 0 1px 0 rgba(var(--deepC),.25),0 30px 80px rgba(0,0,0,.7);
  max-width:440px;width:100%;text-align:left;
  animation:pop .25s cubic-bezier(.16,1,.3,1);
  max-height:calc(100vh - 48px);overflow-y:auto;
}
@keyframes pop{from{transform:scale(.94) translateY(8px);opacity:0}to{transform:scale(1) translateY(0);opacity:1}}
.modal h3{
  font-family:var(--heading);font-size:22px;font-weight:500;margin-bottom:6px;padding-bottom:.06em;
  background:var(--chrome);background-size:100%;
  -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;
}
.modal .modal-sub{color:var(--text-mid);font-size:13.5px;font-weight:300;margin-bottom:22px}
.modal-close{background:none;border:none;color:var(--text-dim);font-size:13px;font-weight:400;cursor:pointer;transition:color .2s;display:block;margin:14px auto 0;font-family:var(--sans)}
.modal-close:hover{color:var(--text-mid)}

.avatar{
  width:40px;height:40px;border-radius:50%;object-fit:cover;flex-shrink:0;
  background:linear-gradient(160deg,rgba(var(--deepA),.6),rgba(var(--deepB),.7));
  border:1px solid rgba(255,255,255,.08);
  display:flex;align-items:center;justify-content:center;
  font-family:var(--heading);font-weight:600;font-size:16px;color:var(--text-mid);
  overflow:hidden;text-transform:uppercase;user-select:none;
}
.avatar img{width:100%;height:100%;object-fit:cover}
.avatar-sm{width:32px;height:32px;font-size:13px}
.avatar-lg{width:72px;height:72px;font-size:28px;border-radius:22px}

.presence-dot{
  width:9px;height:9px;border-radius:50%;flex-shrink:0;
  background:rgba(255,255,255,.18);
}
.presence-dot.online{background:var(--acc);box-shadow:0 0 8px rgba(var(--acc-rgb),.55)}

.auth-wrap{flex:1;display:flex;align-items:center;justify-content:center;padding:24px;position:relative;z-index:1;min-height:100vh}
.auth-card{
  width:100%;max-width:420px;border-radius:26px;padding:44px 38px;
  background:radial-gradient(ellipse 80% 60% at 50% 0%,rgba(var(--deepC),.24) 0%,transparent 70%),linear-gradient(160deg,var(--p3) 0%,var(--p4) 100%);
  border:1px solid rgba(var(--deepC),.3);
  box-shadow:inset 0 1px 0 rgba(var(--deepC),.25),0 30px 80px rgba(0,0,0,.7);
  opacity:0;animation:fadeUp .9s cubic-bezier(.16,1,.3,1) .1s forwards;
}
.auth-brand{
  font-family:var(--heading);font-weight:600;font-size:34px;letter-spacing:-.02em;
  text-align:center;padding-bottom:.08em;margin-bottom:2px;
  background:var(--chrome);background-size:100%;
  -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;
}
.auth-tag{text-align:center;font-size:clamp(10.5px,3vw,12.5px);color:var(--text-mid);font-weight:300;margin-bottom:28px;white-space:nowrap;letter-spacing:-.01em}
.auth-tabs{
  display:flex;gap:6px;padding:6px;border-radius:100px;margin-bottom:26px;
  background:linear-gradient(180deg,rgba(255,255,255,.03),rgba(255,255,255,.012));
  border:1px solid rgba(255,255,255,.07);
  box-shadow:inset 0 1px rgba(255,255,255,.08),0 3px 10px rgba(0,0,0,.25);
}
.auth-tab{
  flex:1;padding:9px 0;border-radius:100px;cursor:pointer;border:none;background:none;
  color:var(--text-dim);font-size:13.5px;font-weight:500;font-family:var(--sans);
  transition:background .2s,color .2s;
}
.auth-tab.active{
  color:var(--text-bright);
  background:linear-gradient(180deg,rgba(255,255,255,.11),rgba(255,255,255,.04));
  box-shadow:inset 0 1px rgba(255,255,255,.22),0 4px 12px rgba(0,0,0,.38);
}
.auth-card .btn{width:100%;margin-top:4px}
.auth-foot{margin-top:22px;text-align:center;font-size:11.5px;color:var(--text-dim);font-weight:400}

.app{
  position:relative;z-index:1;display:flex;width:100%;height:100vh;height:100dvh;
  overflow:hidden;
}
.side{
  width:340px;min-width:280px;flex-shrink:0;display:flex;flex-direction:column;
  background:radial-gradient(ellipse 90% 40% at 30% 0%,rgba(var(--deepC),.16) 0%,transparent 70%),linear-gradient(160deg,rgba(var(--pt1),.65),rgba(var(--pt3),.72));
  border-right:1px solid rgba(var(--deepC),.22);
  box-shadow:inset -1px 0 0 rgba(0,0,0,.4);
}
.side-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:20px 20px 12px}
.side-brand{
  font-family:var(--heading);font-weight:600;font-size:21px;letter-spacing:-.02em;padding-bottom:.06em;
  background:var(--chrome);background-size:100%;
  -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;
}
.icon-btn{
  width:36px;height:36px;border-radius:11px;cursor:pointer;flex-shrink:0;
  display:flex;align-items:center;justify-content:center;
  background:linear-gradient(180deg,rgba(255,255,255,.05),rgba(255,255,255,.015));
  border:1px solid rgba(255,255,255,.09);color:var(--text-dim);
  transition:color .2s,border-color .2s,background .2s;
}
.icon-btn:hover{color:var(--text-bright);border-color:rgba(255,255,255,.2)}
.icon-btn .i{width:15px;height:15px}
.side-actions{display:flex;gap:8px}

.conv-list{flex:1;overflow-y:auto;padding:6px 12px 12px;display:flex;flex-direction:column;gap:2px}
.conv{
  display:flex;align-items:center;gap:12px;padding:11px 12px;border-radius:16px;cursor:pointer;
  border:1px solid transparent;
  transition:background .18s,border-color .18s;
}
.conv:hover{background:rgba(var(--deepC),.12)}
.conv.active{
  background:linear-gradient(160deg,rgba(var(--deepC),.24),rgba(var(--deepB),.28));
  border-color:rgba(var(--deepC),.3);
  box-shadow:inset 0 1px 0 rgba(var(--deepC),.18);
}
.conv-body{flex:1;min-width:0}
.conv-top{display:flex;align-items:center;justify-content:space-between;gap:8px}
.conv-name{font-size:14px;font-weight:600;color:var(--text-bright);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.conv-time{font-size:11px;color:var(--text-dim);flex-shrink:0}
.conv-bottom{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:1px}
.conv-preview{font-size:12.5px;color:var(--text);font-weight:300;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.conv-unread{
  min-width:19px;height:19px;padding:0 6px;border-radius:100px;flex-shrink:0;
  background:linear-gradient(160deg,rgba(var(--deepA),.9),rgba(var(--deepB),.95));
  border:1px solid rgba(var(--acc-rgb),.3);
  color:#fff;font-size:11px;font-weight:600;
  display:flex;align-items:center;justify-content:center;
}
.conv-empty{text-align:center;color:var(--text-dim);padding:48px 20px;font-weight:300;font-size:13.5px}

.side-me{
  display:flex;align-items:center;gap:12px;padding:14px 18px;
  border-top:1px solid rgba(255,255,255,.06);
}
.side-me-body{flex:1;min-width:0}
.side-me-name{font-size:13.5px;font-weight:600;color:var(--text-bright);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:1.3}
.side-me-user{font-size:11.5px;color:var(--text-dim);font-weight:400;line-height:1.3}

.main{flex:1;min-width:0;display:flex;flex-direction:column;position:relative}
.chat-empty{
  flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;
  text-align:center;padding:24px;
}
.chat-empty h2{
  font-family:var(--heading);font-size:clamp(24px,3vw,34px);font-weight:500;letter-spacing:-.02em;padding-bottom:.08em;
  background:var(--chrome);background-size:100%;
  -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;
}
.chat-empty p{color:var(--text-mid);font-weight:300;font-size:14px;max-width:340px}

.chat-view{flex:1;min-height:0;display:none;flex-direction:column}
.chat-view.open{display:flex}
.chat-head{
  display:flex;align-items:center;gap:12px;padding:14px 22px;flex-shrink:0;
  background:linear-gradient(180deg,rgba(var(--pt1),.55),rgba(var(--pt2),.35));
  border-bottom:1px solid rgba(var(--deepC),.2);
  cursor:pointer;
}
.chat-head-body{flex:1;min-width:0}
.chat-title{font-size:15px;font-weight:600;color:var(--text-bright);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:1.3}
.chat-sub{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--text-dim);font-weight:400;line-height:1.4}
.chat-sub.online-txt{color:var(--acc)}
.btn-back{display:none}

.msg-scroll{flex:1;overflow-y:auto;padding:22px 22px 10px;display:flex;flex-direction:column}
.msg-list{display:flex;flex-direction:column;gap:2px;margin-top:auto}
.msg-day{
  align-self:center;margin:16px 0 10px;
  font-size:11px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--text-dim);
  padding:5px 14px;border-radius:100px;
  background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.07);
}
.msg-row{display:flex;gap:10px;align-items:flex-end;max-width:min(72%,640px)}
.msg-row.mine{align-self:flex-end;flex-direction:row-reverse}
.msg-row + .msg-row{margin-top:2px}
.msg-row.gap{margin-top:12px}
.msg-row .avatar-sm{margin-bottom:2px}
.msg-row.mine .avatar-sm{display:none}
.msg-row .av-spacer{width:32px;flex-shrink:0}
.msg-col{display:flex;flex-direction:column;gap:2px;min-width:0}
.msg-sender{font-size:12px;font-weight:600;color:var(--blue);margin:0 4px 2px}
.bubble{
  position:relative;padding:9px 14px;border-radius:18px;max-width:100%;
  background:linear-gradient(180deg,rgba(255,255,255,.055),rgba(255,255,255,.025));
  border:1px solid rgba(255,255,255,.08);
  box-shadow:inset 0 1px rgba(255,255,255,.08),0 4px 12px rgba(0,0,0,.3);
  color:var(--text-bright);font-size:14px;font-weight:400;line-height:1.5;
  word-wrap:break-word;overflow-wrap:break-word;white-space:pre-wrap;
}
.msg-row.mine .bubble{
  background:linear-gradient(160deg,rgba(var(--deepA),.55),rgba(var(--deepB),.68));
  border-color:rgba(var(--deepC),.4);
  box-shadow:inset 0 1px rgba(var(--acc-rgb),.14),0 4px 12px rgba(0,0,0,.35);
}
.bubble .msg-time{
  display:inline-block;margin-left:8px;font-size:10.5px;color:var(--text-dim);
  vertical-align:bottom;white-space:nowrap;user-select:none;float:right;margin-top:6px;
}
.bubble.has-media{padding:5px;overflow:hidden}
.bubble.has-media .media-cap{padding:6px 10px 4px;font-size:13.5px}
.bubble.has-media .msg-time{position:absolute;right:10px;bottom:8px;padding:2px 7px;border-radius:8px;background:rgba(0,0,0,.5);color:rgba(255,255,255,.85);margin:0;float:none}
.msg-media{border-radius:14px;max-width:100%;max-height:360px;display:block;cursor:pointer;background:#000}
video.msg-media{cursor:default}
.file-card{
  display:flex;align-items:center;gap:12px;padding:12px 14px;min-width:220px;
  border-radius:14px;
  background:rgba(255,255,255,.03);
}
.file-ico{
  width:38px;height:38px;border-radius:11px;flex-shrink:0;
  display:flex;align-items:center;justify-content:center;
  background:linear-gradient(160deg,rgba(var(--deepA),.5),rgba(var(--deepB),.6));
  border:1px solid rgba(var(--acc-rgb),.2);color:var(--blue);
}
.file-ico .i{width:16px;height:16px}
.file-body{flex:1;min-width:0}
.file-name{font-size:13.5px;font-weight:600;color:var(--text-bright);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.file-size{font-size:11.5px;color:var(--text-dim)}
.file-dl{color:var(--text-dim);transition:color .2s;flex-shrink:0;display:flex;padding:6px}
.file-dl:hover{color:var(--text-bright)}
.file-dl .i{width:16px;height:16px}

.composer{
  display:flex;align-items:flex-end;gap:10px;padding:14px 18px 18px;flex-shrink:0;
}
.composer-box{
  flex:1;display:flex;align-items:flex-end;gap:6px;
  background:linear-gradient(180deg,rgba(255,255,255,.055),rgba(255,255,255,.02) 55%,rgba(255,255,255,.012));
  border:1px solid rgba(255,255,255,.09);
  box-shadow:inset 0 1px rgba(255,255,255,.12),inset 0 -1px rgba(0,0,0,.3),0 3px 10px rgba(0,0,0,.28);
  border-radius:22px;padding:7px 8px 7px 16px;
  transition:border-color .2s,box-shadow .2s;
}
.composer-box:focus-within{
  border-color:rgba(255,255,255,.28);
  box-shadow:inset 0 1px rgba(255,255,255,.22),inset 0 -1px rgba(0,0,0,.38),0 0 0 3px rgba(255,255,255,.05);
}
#msg-input{
  flex:1;background:none;border:none;outline:none;resize:none;
  color:var(--text-bright);font-size:14px;font-family:var(--sans);line-height:1.5;
  max-height:140px;padding:7px 0;
}
#msg-input::placeholder{color:var(--text-dim)}
.composer .icon-btn{width:38px;height:38px;border-radius:50%}
.btn-send{
  background:linear-gradient(160deg,rgba(var(--deepA),.72),rgba(var(--deepB),.82));
  border-color:rgba(var(--acc-rgb),.25);color:#fff;
}
.btn-send:hover{background:linear-gradient(160deg,rgba(var(--deepA),.88),rgba(var(--deepB),.94))}
.pending-file{
  display:none;align-items:center;gap:10px;margin:0 18px;padding:10px 14px;border-radius:14px;
  background:rgba(var(--deepC),.16);border:1px solid rgba(var(--deepC),.3);
  font-size:13px;color:var(--text-mid);
}
.pending-file.show{display:flex}
.pending-file b{color:var(--text-bright);font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pending-file button{margin-left:auto;background:none;border:none;color:var(--text-dim);cursor:pointer;font-size:13px;flex-shrink:0}
.pending-file button:hover{color:var(--red)}

.search-results{display:flex;flex-direction:column;gap:4px;margin-top:6px;max-height:260px;overflow-y:auto}
.sr-item{
  display:flex;align-items:center;gap:11px;padding:9px 10px;border-radius:14px;cursor:pointer;
  border:1px solid transparent;
  transition:background .18s,border-color .18s;
}
.sr-item:hover{background:rgba(var(--deepC),.14);border-color:rgba(var(--deepC),.24)}
.sr-body{flex:1;min-width:0}
.sr-name{font-size:13.5px;font-weight:600;color:var(--text-bright);line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.sr-user{font-size:11.5px;color:var(--text-dim);line-height:1.3}
.sr-empty{text-align:center;color:var(--text-dim);font-size:13px;font-weight:300;padding:18px 0}
.member-chips{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:12px}
.member-chips:empty{display:none}
.member-chip{
  display:inline-flex;align-items:center;gap:7px;padding:6px 11px;border-radius:100px;
  background:rgba(var(--deepC),.2);border:1px solid rgba(var(--deepC),.35);
  font-size:12.5px;font-weight:500;color:var(--text-bright);
}
.member-chip button{background:none;border:none;color:var(--text-dim);cursor:pointer;line-height:0;padding:0}
.member-chip button:hover{color:var(--red)}
.member-chip button .i{width:11px;height:11px}

.set-avatar-row{display:flex;align-items:center;gap:18px;margin-bottom:22px}
.set-avatar-row .form-note{margin-top:0}
.check-row{display:flex;align-items:flex-start;gap:11px;margin:6px 0 20px;cursor:pointer}
.check-row input{margin-top:3px;accent-color:var(--blue);width:15px;height:15px;flex-shrink:0;cursor:pointer}
.check-row div{font-size:13.5px;color:var(--text-mid);font-weight:400;line-height:1.5}
.check-row div small{display:block;color:var(--text-dim);font-size:12px;font-weight:300}
.modal-actions{display:flex;gap:10px;margin-top:6px}
.modal-actions .btn{flex:1;padding:12px 16px}

.prof-head{display:flex;align-items:center;gap:16px;margin-bottom:16px}
.prof-name{font-size:18px;font-weight:600;color:var(--text-bright);line-height:1.25}
.prof-user{font-size:13px;color:var(--text-dim)}
.prof-presence{display:flex;align-items:center;gap:7px;font-size:12.5px;color:var(--text-dim);margin-top:4px}
.prof-bio{font-size:13.5px;color:var(--text-mid);font-weight:300;line-height:1.7;margin-bottom:18px;white-space:pre-wrap}

.toast{
  position:fixed;left:50%;bottom:26px;transform:translate(-50%,16px);z-index:300;
  padding:12px 20px;border-radius:100px;pointer-events:none;
  background:linear-gradient(160deg,var(--p1),var(--p2));
  border:1px solid rgba(var(--deepC),.4);
  box-shadow:0 14px 40px rgba(0,0,0,.6);
  color:var(--text-bright);font-size:13.5px;font-weight:500;
  opacity:0;transition:opacity .25s,transform .25s;
}
.toast.show{opacity:1;transform:translate(-50%,0)}
.toast.err{color:var(--red);border-color:rgba(247,118,142,.35)}

.loading-dots{color:var(--text-dim);font-size:13px;text-align:center;padding:14px 0}

@media(max-width:760px){
  .side{position:absolute;inset:0;width:100%;min-width:0;z-index:5;border-right:none}
  .app.chat-open .side{display:none}
  .main{display:none}
  .app.chat-open .main{display:flex;position:absolute;inset:0;z-index:6;background:var(--bg)}
  .btn-back{display:flex}
  .msg-row{max-width:86%}
}

.fade-swap{animation:fadeSwapIn .24s cubic-bezier(.16,1,.3,1)}
@keyframes fadeSwapIn{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}

.forgot-txt{font-size:13.5px;color:var(--text-mid);font-weight:300;line-height:1.7;margin-bottom:20px;text-align:center}

.sup-fab{
  position:fixed;right:22px;bottom:22px;z-index:180;
  width:52px;height:52px;border-radius:50%;cursor:pointer;
  display:flex;align-items:center;justify-content:center;
  background:linear-gradient(160deg,rgba(var(--deepA),.85),rgba(var(--deepB),.92));
  border:1px solid rgba(var(--acc-rgb),.3);
  box-shadow:inset 0 1px 0 rgba(var(--acc-rgb),.2),0 12px 30px rgba(0,0,0,.55);
  color:var(--text-bright);
  transition:transform .18s,box-shadow .18s,opacity .2s;
}
.sup-fab:hover{transform:translateY(-2px);box-shadow:inset 0 1px 0 rgba(var(--acc-rgb),.2),0 16px 36px rgba(0,0,0,.6),0 0 24px rgba(var(--deepC),.3)}
.sup-fab.hide{opacity:0;pointer-events:none}
.sup-fab svg{width:22px;height:22px}
.sup-panel{
  position:fixed;right:22px;bottom:22px;z-index:185;
  width:340px;max-width:calc(100vw - 44px);height:440px;max-height:calc(100vh - 44px);
  display:none;flex-direction:column;border-radius:22px;overflow:hidden;
  background:radial-gradient(ellipse 80% 40% at 50% 0%,rgba(var(--deepC),.24) 0%,transparent 70%),linear-gradient(160deg,var(--p3) 0%,var(--p4) 100%);
  border:1px solid rgba(var(--deepC),.35);
  box-shadow:inset 0 1px 0 rgba(var(--deepC),.25),0 30px 80px rgba(0,0,0,.7);
  animation:pop .25s cubic-bezier(.16,1,.3,1);
}
.sup-panel.open{display:flex}
.sup-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:16px 16px 12px;border-bottom:1px solid rgba(255,255,255,.06)}
.sup-title{
  font-family:var(--heading);font-size:17px;font-weight:500;padding-bottom:.06em;
  background:var(--chrome);background-size:100%;
  -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;
}
.sup-sub{font-size:11.5px;color:var(--text-dim);font-weight:300}
.sup-msgs{flex:1;overflow-y:auto;padding:14px;display:flex;flex-direction:column;gap:6px}
.sup-intro{font-size:12.5px;color:var(--text-dim);font-weight:300;line-height:1.6;text-align:center;padding:8px 10px}
.sup-msg{
  align-self:flex-end;max-width:82%;padding:8px 12px;border-radius:15px;
  background:linear-gradient(160deg,rgba(var(--deepA),.55),rgba(var(--deepB),.68));
  border:1px solid rgba(var(--deepC),.4);
  color:var(--text-bright);font-size:13px;line-height:1.5;word-wrap:break-word;white-space:pre-wrap;
}
.sup-msg.from-admin{
  align-self:flex-start;
  background:linear-gradient(180deg,rgba(255,255,255,.055),rgba(255,255,255,.025));
  border-color:rgba(255,255,255,.08);
}
.sup-namebox{padding:0 12px 8px}
.sup-namebox input,.sup-composer input{
  width:100%;
  background:linear-gradient(180deg,rgba(255,255,255,.055),rgba(255,255,255,.02) 55%,rgba(255,255,255,.012));
  border:1px solid rgba(255,255,255,.09);
  box-shadow:inset 0 1px rgba(255,255,255,.12),inset 0 -1px rgba(0,0,0,.3);
  border-radius:100px;color:var(--text-bright);
  padding:10px 15px;font-size:13px;font-family:var(--sans);outline:none;
  transition:border-color .2s;
}
.sup-namebox input::placeholder,.sup-composer input::placeholder{color:var(--text-dim)}
.sup-namebox input:focus,.sup-composer input:focus{border-color:rgba(255,255,255,.28)}
.sup-composer{display:flex;gap:8px;align-items:center;padding:0 12px 14px}
.sup-composer .icon-btn{width:38px;height:38px;border-radius:50%;flex-shrink:0}

.adm-tag{
  font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;
  color:var(--text-mid);padding:4px 9px;border-radius:7px;
  background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.09);
}
.adm-side{width:250px;min-width:220px}
.adm-nav{flex:1;display:flex;flex-direction:column;gap:4px;padding:10px 12px}
.adm-nav-item{
  display:flex;align-items:center;justify-content:space-between;gap:8px;
  padding:11px 14px;border-radius:14px;cursor:pointer;text-align:left;
  background:none;border:1px solid transparent;
  color:var(--text-mid);font-size:13.5px;font-weight:500;font-family:var(--sans);
  transition:background .18s,border-color .18s,color .18s;
}
.adm-nav-item:hover{background:rgba(var(--deepC),.12);color:var(--text-bright)}
.adm-nav-item.active{
  background:linear-gradient(160deg,rgba(var(--deepC),.24),rgba(var(--deepB),.28));
  border-color:rgba(var(--deepC),.3);color:var(--text-bright);
  box-shadow:inset 0 1px 0 rgba(var(--deepC),.18);
}
.adm-badge{
  min-width:19px;height:19px;padding:0 6px;border-radius:100px;
  background:rgba(247,118,142,.15);border:1px solid rgba(247,118,142,.35);
  color:var(--red);font-size:11px;font-weight:600;
  display:flex;align-items:center;justify-content:center;
}
.adm-main{padding:34px 38px;overflow-y:auto;display:block}
.adm-view{max-width:860px}
.adm-head-row{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:20px}
.adm-title{
  font-family:var(--heading);font-size:28px;font-weight:500;letter-spacing:-.02em;padding-bottom:.06em;
  background:var(--chrome);background-size:100%;
  -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;
  margin-bottom:14px;
}
.adm-head-row .adm-title{margin-bottom:0}
.adm-sub{font-size:13.5px;color:var(--text-mid);font-weight:300;line-height:1.7;max-width:560px;margin-bottom:22px}
.adm-tabs{margin-bottom:0;max-width:240px}
.adm-list{display:flex;flex-direction:column;gap:12px}
.adm-card{
  padding:18px 20px;border-radius:18px;
  background:var(--card-bg);border:1px solid var(--card-border);box-shadow:var(--card-shadow);
}
.adm-card-top{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.adm-card-title{font-size:14.5px;font-weight:600;color:var(--text-bright)}
.adm-when{font-size:11.5px;color:var(--text-dim)}
.adm-dim{color:var(--text-dim);font-weight:400}
.adm-card-line{display:flex;gap:7px;flex-wrap:wrap;margin-top:8px}
.adm-pill{
  font-size:11px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;
  color:var(--text-mid);padding:3px 9px;border-radius:7px;
  background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.09);
}
.adm-pill.pill-red{color:var(--red);background:rgba(247,118,142,.07);border-color:rgba(247,118,142,.25)}
.adm-card-detail{font-size:13px;color:var(--text-mid);font-weight:300;line-height:1.6;margin-top:10px;white-space:pre-wrap}
.adm-card-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}
.adm-support{display:flex;gap:18px;height:calc(100vh - 160px);min-height:380px}
.adm-threads{
  width:290px;min-width:230px;overflow-y:auto;padding:8px;border-radius:18px;
  background:var(--card-bg);border:1px solid var(--card-border);box-shadow:var(--card-shadow);
  display:flex;flex-direction:column;gap:2px;
}
.adm-thread-pane{
  flex:1;min-width:0;border-radius:18px;overflow:hidden;display:flex;flex-direction:column;
  background:var(--card-bg);border:1px solid var(--card-border);box-shadow:var(--card-shadow);
}
.adm-thread-empty{flex:1;display:flex;align-items:center;justify-content:center;color:var(--text-dim);font-weight:300;font-size:13.5px}
.adm-thread-open{flex:1;display:flex;flex-direction:column;min-height:0}
.adm-thread-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:14px 16px;border-bottom:1px solid rgba(255,255,255,.06)}
.adm-thread-name{font-size:14.5px;font-weight:600;color:var(--text-bright)}
.adm-msgs{padding:14px 16px}
.adm-msgs .sup-msg{align-self:flex-start}
.adm-msgs .sup-msg.adm-right{align-self:flex-end}
.adm-thread-open .sup-composer{padding:12px 14px 14px}
.adm-reset-row{display:flex;gap:12px;align-items:center;max-width:520px}
.adm-reset-out{
  display:flex;align-items:center;gap:12px;margin-top:18px;padding:14px 16px;border-radius:14px;
  background:rgba(var(--deepC),.16);border:1px solid rgba(var(--deepC),.3);max-width:720px;
}
.adm-reset-out code{
  flex:1;min-width:0;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
  font-size:12px;color:var(--text-bright);word-break:break-all;
}
@media(max-width:760px){
  .adm-side{position:static;width:100%;min-width:0}
  .app.adm{flex-direction:column;height:auto;min-height:100vh;overflow:visible}
  .adm-main{display:block;padding:22px 18px}
  .adm-support{flex-direction:column;height:auto}
  .adm-threads{width:100%;max-height:240px}
  .adm-thread-pane{min-height:360px}
}

.badge-support{
  display:inline-flex;align-items:center;vertical-align:middle;
  margin-right:6px;padding:2px 7px;border-radius:6px;
  font-size:9.5px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;
  color:#fff;
  background:linear-gradient(160deg,rgba(var(--deepA),.9),rgba(var(--deepB),.95));
  border:1px solid rgba(var(--acc-rgb),.45);
  box-shadow:inset 0 1px 0 rgba(var(--acc-rgb),.25),0 2px 6px rgba(0,0,0,.35);
  line-height:1.4;
}
.msg-sender .badge-support{font-size:8.5px;padding:1px 6px}

.page-wrap{position:relative;z-index:1;min-height:100vh;display:flex;justify-content:center;padding:26px 18px 60px;overflow-y:auto}
.page-col{width:100%;max-width:560px;opacity:0;animation:fadeUp .7s cubic-bezier(.16,1,.3,1) .05s forwards}
.page-topbar{display:flex;align-items:center;gap:14px;margin-bottom:22px}
.page-title{
  font-family:var(--heading);font-size:24px;font-weight:500;letter-spacing:-.02em;padding-bottom:.06em;
  background:var(--chrome);background-size:100%;
  -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;
}
.tg-header{
  display:flex;flex-direction:column;align-items:center;text-align:center;gap:0;
  padding:18px 20px 26px;margin-bottom:26px;
}
.tg-avatar{
  width:136px;height:136px;border-radius:50%;font-size:52px;
  box-shadow:0 18px 50px rgba(0,0,0,.55),0 0 0 1px rgba(255,255,255,.07),0 0 60px rgba(var(--deepC),.25);
  cursor:default;
}
.tg-avatar img{cursor:zoom-in}
.tg-avatar-wrap{position:relative;flex-shrink:0}
.tg-avatar-edit{
  position:absolute;right:2px;bottom:2px;width:40px;height:40px;border-radius:50%;cursor:pointer;
  display:flex;align-items:center;justify-content:center;
  background:linear-gradient(160deg,rgba(var(--deepA),.9),rgba(var(--deepB),.95));
  border:1px solid rgba(var(--acc-rgb),.4);color:var(--text-bright);
  box-shadow:0 6px 16px rgba(0,0,0,.5);
  transition:transform .15s;
}
.tg-avatar-edit:hover{transform:scale(1.08)}
.tg-avatar-edit .i{width:17px;height:17px}
.tg-header-body{min-width:0;margin-top:16px;display:flex;flex-direction:column;align-items:center}
.tg-name{
  font-family:var(--heading);font-size:27px;font-weight:600;letter-spacing:-.015em;
  color:var(--text-bright);line-height:1.25;word-break:break-word;
}
.tg-name .badge-support{transform:translateY(-3px)}
.tg-user{font-size:14px;color:var(--text-dim);margin-top:3px}
.tg-presence{display:flex;align-items:center;justify-content:center;gap:7px;font-size:13.5px;color:var(--text-dim);margin-top:6px}
.tg-presence .online-txt{color:var(--acc)}

.sect{margin-bottom:20px}
.sect-label{
  font-size:11.5px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;
  color:var(--text-dim);margin:0 4px 9px;
}
.sect-label-inline{font-size:12.5px;font-weight:600;color:var(--text-mid);margin:14px 2px 8px}
.sect-card{
  padding:20px 22px;border-radius:20px;
  background:var(--card-bg);border:1px solid var(--card-border);box-shadow:var(--card-shadow);
}
.sect-divider{height:1px;background:rgba(255,255,255,.06);margin:16px -4px}
.info-row{display:flex;flex-direction:column;gap:2px}
.info-row-label{font-size:11.5px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--text-dim)}
.info-row-value{font-size:14.5px;color:var(--text-bright);font-weight:500;word-break:break-word}
.info-bio{font-weight:300;color:var(--text-mid);line-height:1.7;white-space:pre-wrap}

.row-toggle{display:flex;align-items:center;gap:16px;cursor:pointer;user-select:none}
.row-toggle-body{flex:1;font-size:14px;color:var(--text-bright);font-weight:500;line-height:1.5}
.row-toggle-body small{display:block;color:var(--text-dim);font-size:12.5px;font-weight:300;margin-top:2px}
.toggle{position:relative;display:inline-flex;flex-shrink:0}
.toggle input{position:absolute;opacity:0;width:100%;height:100%;margin:0;cursor:pointer}
.toggle-track{
  width:46px;height:26px;border-radius:100px;display:block;position:relative;
  background:linear-gradient(180deg,rgba(255,255,255,.05),rgba(255,255,255,.015));
  border:1px solid rgba(255,255,255,.12);
  box-shadow:inset 0 1px rgba(255,255,255,.08),inset 0 -1px rgba(0,0,0,.3);
  transition:background .25s,border-color .25s;
}
.toggle-knob{
  position:absolute;top:2px;left:2px;width:20px;height:20px;border-radius:50%;
  background:linear-gradient(180deg,rgba(255,255,255,.85),rgba(200,210,235,.75));
  box-shadow:0 2px 6px rgba(0,0,0,.45);
  transition:transform .25s cubic-bezier(.16,1,.3,1),background .25s;
}
.toggle input:checked + .toggle-track{
  background:linear-gradient(160deg,rgba(var(--deepA),.85),rgba(var(--deepB),.9));
  border-color:rgba(var(--acc-rgb),.5);
  box-shadow:inset 0 1px rgba(var(--acc-rgb),.25),inset 0 -1px rgba(0,0,0,.3),0 0 14px rgba(var(--deepC),.35);
}
.toggle input:checked + .toggle-track .toggle-knob{
  transform:translateX(20px);
  background:linear-gradient(180deg,#fff,#c9d7f5);
}

.page-col-wide{max-width:920px}
.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;align-items:start}
.settings-col{min-width:0}
@media(max-width:860px){.settings-grid{grid-template-columns:1fr}}

.acc-swatches{display:flex;gap:13px;margin:4px 2px 6px;flex-wrap:wrap}
.acc-swatch{
  width:38px;height:38px;border-radius:50%;cursor:pointer;border:none;position:relative;
  box-shadow:0 4px 12px rgba(0,0,0,.4),inset 0 1px 0 rgba(255,255,255,.25);
  transition:transform .15s;
}
.acc-swatch:hover{transform:scale(1.1)}
.acc-swatch.active::after{
  content:"";position:absolute;inset:-5px;border-radius:50%;
  border:2px solid rgba(255,255,255,.75);
}
.acc-ocean{background:linear-gradient(160deg,#7aa2f7,#1f3e66)}
.acc-violet{background:linear-gradient(160deg,#b48af7,#4a2a7a)}
.acc-rose{background:linear-gradient(160deg,#f77a9e,#7a1f3e)}
.acc-emerald{background:linear-gradient(160deg,#6ee7a0,#175e42)}
.acc-orange{background:linear-gradient(160deg,#f7b27a,#7a481f)}
.acc-silver{background:linear-gradient(160deg,#dfe6f0,#4e5868)}
.acc-black{background:linear-gradient(160deg,#6a6f7a,#0b0c10)}

.size-pills{display:flex;gap:8px;margin:4px 0 6px}
.size-pill{
  flex:1;padding:9px 0;border-radius:100px;cursor:pointer;border:1px solid rgba(255,255,255,.09);
  background:linear-gradient(180deg,rgba(255,255,255,.04),rgba(255,255,255,.012));
  color:var(--text-dim);font-size:13px;font-weight:500;font-family:var(--sans);
  transition:background .2s,color .2s,border-color .2s;
}
.size-pill.active{
  color:var(--text-bright);border-color:rgba(var(--acc-rgb),.4);
  background:linear-gradient(160deg,rgba(var(--deepA),.5),rgba(var(--deepB),.6));
}

[data-textsize="s"] .bubble{font-size:13px}
[data-textsize="l"] .bubble{font-size:15.5px}
.no-anim .bg-gradient::before,.no-anim .bg-gradient::after{animation:none}

.dev-list{display:flex;flex-direction:column;gap:10px}
.dev-item{
  padding:13px 15px;border-radius:15px;
  background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.07);
}
.dev-top{display:flex;align-items:center;gap:9px;flex-wrap:wrap}
.dev-name{font-size:13.5px;font-weight:600;color:var(--text-bright)}
.dev-current{
  font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;
  color:var(--acc);padding:2px 8px;border-radius:7px;
  background:rgba(var(--acc-rgb),.08);border:1px solid rgba(var(--acc-rgb),.3);
}
.dev-meta{font-size:12px;color:var(--text-dim);font-weight:300;margin-top:3px}
.dev-actions{display:flex;gap:7px;margin-top:10px}
.dev-actions .btn{padding:7px 14px;font-size:12px}

.wp-tiles{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:4px 0 6px}
.wp-tile{
  position:relative;height:64px;border-radius:13px;cursor:pointer;overflow:hidden;
  border:1px solid rgba(255,255,255,.1);
  background-color:#0e0e24;
  display:flex;align-items:flex-end;justify-content:center;padding-bottom:6px;
  transition:transform .15s,border-color .2s;
}
.wp-tile:hover{transform:translateY(-2px)}
.wp-tile.active{border-color:rgba(255,255,255,.65);box-shadow:0 0 0 1px rgba(255,255,255,.4)}
.wp-tile span{font-size:10.5px;font-weight:600;color:var(--text-mid);font-family:var(--sans);position:relative;z-index:1}
.wp-dots{background-image:radial-gradient(rgba(255,255,255,.14) 1px,transparent 1.4px);background-size:12px 12px}
.wp-aurora{background-image:radial-gradient(60% 70% at 25% 25%,rgba(var(--acc-rgb),.25),transparent 70%),radial-gradient(55% 65% at 75% 70%,rgba(158,206,106,.14),transparent 70%)}
.wp-lines{background-image:repeating-linear-gradient(135deg,rgba(255,255,255,.07) 0 1px,transparent 1px 11px)}

[data-wallpaper="dots"] .msg-scroll{
  background-image:radial-gradient(rgba(255,255,255,.045) 1px,transparent 1.4px);
  background-size:22px 22px;
}
[data-wallpaper="aurora"] .msg-scroll{
  background-image:radial-gradient(55% 45% at 18% 15%,rgba(var(--acc-rgb),.07),transparent 70%),radial-gradient(50% 45% at 82% 75%,rgba(158,206,106,.05),transparent 70%),radial-gradient(45% 40% at 60% 30%,rgba(180,138,247,.05),transparent 70%);
  background-attachment:local;
}
[data-wallpaper="lines"] .msg-scroll{
  background-image:repeating-linear-gradient(135deg,rgba(255,255,255,.025) 0 1px,transparent 1px 16px);
}

.btn-complete{transition:background .3s,color .3s,box-shadow .3s}
.btn-complete .unlock-i{display:none}
.btn-complete.locked{
  color:var(--red);
  background:rgba(247,118,142,.08);
  box-shadow:inset 0 0 0 1px rgba(247,118,142,.35);
  cursor:not-allowed;
}
.btn-complete.unlocked{
  color:#0d1a0d;
  background:linear-gradient(160deg,#b8e896,#9ece6a);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.4),0 6px 18px rgba(158,206,106,.25);
  font-weight:600;
}
.btn-complete.unlocked:hover{background:linear-gradient(160deg,#c6f0a8,#aada78);transform:translateY(-1px)}
.btn-complete.unlocked .lock-i{display:none}
.btn-complete.unlocked .unlock-i{display:block}

[data-accent="violet"]{--acc:#b48af7;--acc-rgb:180,138,247;--deepA:74,42,122;--deepB:40,16,80;--deepC:66,32,120;--chA:#8055d0;--chB:#c9a8f2}
[data-accent="rose"]{--acc:#f77a9e;--acc-rgb:247,122,158;--deepA:122,31,62;--deepB:80,16,40;--deepC:118,28,64;--chA:#d05578;--chB:#f2a8c5}
[data-accent="emerald"]{--acc:#6ee7a0;--acc-rgb:110,231,160;--deepA:23,94,66;--deepB:12,60,44;--deepC:20,102,70;--chA:#3dbf7e;--chB:#a8f2cd}
[data-accent="orange"]{--acc:#f7b27a;--acc-rgb:247,178,122;--deepA:122,72,31;--deepB:80,44,16;--deepC:118,70,28;--chA:#d08a55;--chB:#f2cfa8}
[data-accent="silver"]{--acc:#c9d3e0;--acc-rgb:201,211,224;--deepA:78,88,104;--deepB:44,50,64;--deepC:84,94,116;--chA:#8a94a8;--chB:#dfe6f0}
[data-accent="black"]{--acc:#a8adb8;--acc-rgb:168,173,184;--deepA:30,32,40;--deepB:14,15,20;--deepC:36,38,48;--chA:#6a6f7a;--chB:#c8ccd6}

body.page-leave{opacity:0!important;transition:opacity .18s ease}

.dev-note{white-space:nowrap}
.sect-card > .row-toggle{padding:2px 0}

.notif-ask{
  display:flex;align-items:center;gap:9px;margin:2px 12px 8px;padding:10px 10px 10px 14px;border-radius:14px;
  background:rgba(var(--deepC),.16);border:1px solid rgba(var(--deepC),.3);
  font-size:12.5px;color:var(--text-mid);
}
.notif-ask span{flex:1;line-height:1.4}
.notif-ask .btn{padding:7px 13px;font-size:12px}
.notif-x{width:28px;height:28px;border-radius:9px}
.notif-x .i{width:11px;height:11px}

.ticks{display:inline-flex;align-items:center;margin-left:5px;vertical-align:bottom;color:var(--text-dim)}
.ticks svg{width:14px;height:14px}
.ticks .tick2{display:none}
.msg-row.mine.msg-read .ticks{color:var(--acc)}
.msg-row.mine.msg-read .ticks .tick1{display:none}
.msg-row.mine.msg-read .ticks .tick2{display:block}

.bubble a{color:var(--acc);text-decoration:underline;text-underline-offset:2px;word-break:break-all}
.bubble .md-h1{font-size:19px;font-weight:700;line-height:1.35;margin:2px 0}
.bubble .md-h2{font-size:16.5px;font-weight:700;line-height:1.35;margin:2px 0}
.bubble .md-h3{font-size:15px;font-weight:700;line-height:1.35;margin:2px 0}
.bubble .md-sub{font-size:11.5px;color:var(--text-dim);line-height:1.5}
.bubble .md-quote{
  border-left:3px solid rgba(var(--acc-rgb),.5);padding:2px 0 2px 10px;margin:2px 0;
  color:var(--text-mid);
}
.bubble .md-li{display:flex;gap:8px;line-height:1.55}
.bubble .md-li::before{content:"\\2022";color:var(--text-dim);flex-shrink:0}
.bubble .md-li.md-num::before{content:attr(data-num)}
.bubble .md-li.md-ind{padding-left:18px}
.bubble code{
  font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12.5px;
  background:rgba(0,0,0,.35);border:1px solid rgba(255,255,255,.08);
  border-radius:6px;padding:1px 6px;
}
.bubble pre{
  font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12.5px;
  background:rgba(0,0,0,.4);border:1px solid rgba(255,255,255,.08);
  border-radius:11px;padding:10px 13px;margin:4px 0;overflow-x:auto;white-space:pre;
}
.bubble .spoiler{
  background:rgba(0,0,0,.85);color:transparent;border-radius:5px;padding:0 4px;cursor:pointer;
  transition:background .2s,color .2s;user-select:none;
}
.bubble .spoiler.shown{background:rgba(255,255,255,.08);color:inherit;cursor:text;user-select:auto}
.bubble .spoiler:not(.shown) *{visibility:hidden}

.info-row-value,.conv-name,.sr-name,.dev-name,.chat-title,.side-me-name,.adm-card-title{font-family:var(--sans)}
.badge-support{vertical-align:middle;position:relative;top:-1px}
.grad-name{
  background:var(--chrome);background-size:100%;
  -webkit-background-clip:text;background-clip:text;
  -webkit-text-fill-color:transparent;color:transparent;
}

.set-app .side{width:270px;min-width:240px}
.set-side-head{display:flex;align-items:center;gap:12px;padding:20px 20px 12px}
.set-main{padding:34px 38px;overflow-y:auto;display:block}
.set-view{max-width:640px;margin:0 auto}
.set-view .tg-header{padding-top:0;margin-bottom:20px}
@media(max-width:760px){
  .set-app{flex-direction:column;height:auto;min-height:100vh;overflow:visible}
  .set-app .side{position:static;width:100%;min-width:0}
  .set-main{padding:22px 18px}
}

.chat-view.chat-swap .msg-scroll,.chat-view.chat-swap .chat-head{animation:chatSwap .24s cubic-bezier(.16,1,.3,1)}
@keyframes chatSwap{from{opacity:0;transform:translateX(12px)}to{opacity:1;transform:none}}

.msg-row{content-visibility:auto;contain-intrinsic-size:auto 48px}

.bg-gradient::before{
  background:
    radial-gradient(40% 32% at 20% 22%,rgba(var(--acc-rgb),.16) 0%,transparent 66%),
    radial-gradient(38% 30% at 80% 28%,rgba(var(--acc-rgb),.11) 0%,transparent 68%),
    radial-gradient(48% 38% at 50% 82%,rgba(var(--acc-rgb),.1) 0%,transparent 68%);
  animation:driftA 16s ease-in-out infinite alternate;
}
.bg-gradient::after{
  background:
    radial-gradient(34% 28% at 26% 72%,rgba(var(--acc-rgb),.09) 0%,transparent 70%),
    radial-gradient(36% 30% at 82% 70%,rgba(var(--acc-rgb),.12) 0%,transparent 66%);
  animation:driftB 22s ease-in-out infinite alternate-reverse;
}
@keyframes driftA{0%{transform:translate3d(-6%,-4%,0) scale(1)}to{transform:translate3d(6%,5%,0) scale(1.12)}}
@keyframes driftB{0%{transform:translate3d(5%,4%,0) scale(1.1)}to{transform:translate3d(-6%,-5%,0) scale(1)}}

.badge-support{font-size:clamp(8.5px,.58em,12px);padding:.18em .65em;border-radius:.5em}

.mention{
  color:var(--acc);font-weight:600;cursor:pointer;
  background:rgba(var(--acc-rgb),.1);border-radius:6px;padding:0 4px;
}
.mention:hover{background:rgba(var(--acc-rgb),.2)}

.react-chips{display:flex;flex-wrap:wrap;gap:5px;margin-top:5px}
.react-chip{
  display:inline-flex;align-items:center;gap:5px;padding:2px 8px;border-radius:100px;cursor:pointer;
  background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);
  font-size:12.5px;color:var(--text-mid);user-select:none;
  transition:background .15s,border-color .15s;
}
.react-chip:hover{background:rgba(255,255,255,.09)}
.react-chip.mine{background:rgba(var(--acc-rgb),.14);border-color:rgba(var(--acc-rgb),.45);color:var(--text-bright)}
.msg-actions{
  position:absolute;top:-13px;display:none;gap:2px;padding:3px;border-radius:11px;z-index:6;
  background:linear-gradient(160deg,var(--p1),var(--p2));
  border:1px solid rgba(var(--acc-rgb),.35);
  box-shadow:0 8px 22px rgba(0,0,0,.6);
}
.msg-row .msg-actions{right:2px}
.msg-row.mine .msg-actions{right:auto;left:2px}
.msg-row:first-child{margin-top:14px}
.msg-row:hover{z-index:5}
.msg-row:hover .msg-actions{display:flex}
.msg-scroll{padding-top:30px}
.msg-actions button{
  width:27px;height:27px;border-radius:8px;border:none;cursor:pointer;background:none;
  color:var(--text-dim);display:flex;align-items:center;justify-content:center;font-size:14px;
  transition:color .15s,background .15s;font-family:var(--sans);
}
.msg-actions button:hover{color:var(--text-bright);background:rgba(255,255,255,.07)}
.msg-col{position:relative}
.emoji-pop{
  position:fixed;z-index:250;display:grid;grid-template-columns:repeat(8,1fr);gap:2px;padding:8px;border-radius:15px;
  background:linear-gradient(160deg,var(--p1),var(--p2));
  border:1px solid rgba(var(--deepC),.45);
  box-shadow:0 16px 44px rgba(0,0,0,.65);
  animation:pop .18s cubic-bezier(.16,1,.3,1);
}
.emoji-pop button{
  width:32px;height:32px;border:none;background:none;border-radius:9px;cursor:pointer;font-size:18px;
  display:flex;align-items:center;justify-content:center;
}
.emoji-pop button:hover{background:rgba(255,255,255,.09)}

.reply-quote{
  display:block;border-left:3px solid rgba(var(--acc-rgb),.6);
  background:rgba(var(--acc-rgb),.07);border-radius:8px;
  padding:4px 9px;margin-bottom:5px;cursor:pointer;max-width:100%;overflow:hidden;
}
.reply-quote .rq-name{font-size:11.5px;font-weight:700;color:var(--acc);display:block}
.reply-quote .rq-body{font-size:12px;color:var(--text-mid);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block}
.reply-bar{
  display:none;align-items:center;gap:10px;margin:0 18px;padding:8px 12px;border-radius:13px;
  background:rgba(var(--deepC),.16);border:1px solid rgba(var(--deepC),.3);font-size:12.5px;color:var(--text-mid);
}
.reply-bar.show{display:flex}
.reply-bar .rb-body{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.reply-bar .rb-name{color:var(--acc);font-weight:600}
.reply-bar button{background:none;border:none;color:var(--text-dim);cursor:pointer;flex-shrink:0}
.reply-bar button:hover{color:var(--red)}
.msg-edited{font-size:10px;color:var(--text-dim);margin-left:5px}
.msg-deleted{font-style:italic;color:var(--text-dim)}

.tier-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
@media(max-width:760px){.tier-grid{grid-template-columns:1fr}}
.tier-card{
  padding:26px 24px;border-radius:22px;display:flex;flex-direction:column;gap:14px;align-items:flex-start;
  background:var(--card-bg);border:1px solid var(--card-border);box-shadow:var(--card-shadow);
}
.tier-mid{border-color:rgba(var(--acc-rgb),.35);box-shadow:var(--card-shadow),0 0 34px rgba(var(--acc-rgb),.08)}
.tier-price{
  font-family:var(--heading);font-size:38px;font-weight:600;padding-bottom:.06em;
  background:var(--chrome);background-size:100%;
  -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;
}
.tier-list{list-style:none;display:flex;flex-direction:column;gap:8px;font-size:13.5px;color:var(--text-mid);font-weight:300}
.tier-list li::before{content:"+ ";color:var(--acc);font-weight:700}
.tier-buy{width:100%;margin-top:auto}

.gm-owner{font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--acc);padding:2px 8px;border-radius:7px;background:rgba(var(--acc-rgb),.08);border:1px solid rgba(var(--acc-rgb),.3)}

.ov-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px}
.ov-card{
  padding:16px 17px;border-radius:16px;
  background:var(--card-bg);border:1px solid var(--card-border);box-shadow:var(--card-shadow);
}
.ov-card-label{font-size:10.5px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--text-dim)}
.ov-card-value{
  font-family:var(--heading);font-size:26px;font-weight:600;margin-top:4px;padding-bottom:.06em;
  background:var(--chrome);background-size:100%;
  -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;
}
.ov-card-sub{font-size:11px;color:var(--text-dim);margin-top:2px}
.ov-chart{width:100%}
.ov-chart svg{width:100%;height:120px;display:block}
.ov-chart .axis-label{font-size:9px;fill:rgba(255,255,255,.35);font-family:var(--sans)}
.adm-select{
  padding:11px 13px;border-radius:12px;font-size:13px;font-family:var(--sans);cursor:pointer;
  background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.1);color:var(--text-bright);
}
.adm-select:focus{outline:none;border-color:rgba(var(--acc-rgb),.5)}
.adm-select option{background:var(--p3)}

[data-accent="violet"]{--bg0:#120c1e;--bg1:#0e0a20;--bg2:#0a071a;--p1:#241a3e;--p2:#140d28;--p3:#1a122e;--p4:#100a20;--pt1:24,18,46;--pt2:18,12,32;--pt3:13,9,28;--pt4:10,7,20}
[data-accent="rose"]{--bg0:#1a0c14;--bg1:#160a12;--bg2:#10070e;--p1:#33182a;--p2:#1e0d18;--p3:#281222;--p4:#160a12;--pt1:40,18,32;--pt2:26,12,20;--pt3:20,9,16;--pt4:14,7,11}
[data-accent="emerald"]{--bg0:#0a1410;--bg1:#08120e;--bg2:#060e0a;--p1:#143024;--p2:#0a1c14;--p3:#102818;--p4:#0a140e;--pt1:16,40,30;--pt2:12,26,20;--pt3:9,20,15;--pt4:7,14,10}
[data-accent="orange"]{--bg0:#171006;--bg1:#140e08;--bg2:#0e0a05;--p1:#33240f;--p2:#1e1408;--p3:#28200e;--p4:#141008;--pt1:40,30,14;--pt2:26,20,10;--pt3:20,15,8;--pt4:14,10,6}
[data-accent="silver"]{--bg0:#0e1014;--bg1:#0c0e12;--bg2:#08090c;--p1:#20242e;--p2:#12141a;--p3:#181c24;--p4:#0e1014;--pt1:28,32,42;--pt2:18,20,28;--pt3:13,15,20;--pt4:9,10,14}
[data-accent="black"]{--bg0:#0a0a0c;--bg1:#08080a;--bg2:#050506;--p1:#17171c;--p2:#0d0d10;--p3:#121216;--p4:#0a0a0c;--pt1:22,22,28;--pt2:14,14,18;--pt3:10,10,13;--pt4:7,7,9}

.bdg{
  display:inline-flex;align-items:center;justify-content:center;vertical-align:middle;
  width:1.35em;height:1.35em;border-radius:.4em;margin-right:.34em;position:relative;top:-.08em;
  cursor:default;flex-shrink:0;
  background:linear-gradient(160deg,rgba(var(--deepA),.9),rgba(var(--deepB),.98));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.16);
}
.bdg svg{width:68%;height:68%;stroke:#fff;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 1px 1px rgba(0,0,0,.4))}
.bdg-vip{background:linear-gradient(160deg,#a8781e,#5e400c);border-color:rgba(240,200,120,.55)}
.bdg-rich{background:linear-gradient(160deg,#118a58,#0a4d32);border-color:rgba(122,232,182,.55)}
.bdg-elite{background:linear-gradient(160deg,#7a3cc8,#3d1a6e);border-color:rgba(200,150,255,.6)}
.bdg-og{background:linear-gradient(160deg,#5a6478,#2c323e);border-color:rgba(201,211,224,.55)}
.bdg-exclusive{background:linear-gradient(160deg,#1c1e38,#08091a);border-color:rgba(255,255,255,.6);box-shadow:inset 0 1px 0 rgba(255,255,255,.25),0 0 10px rgba(255,255,255,.12)}
.bdg-support{background:linear-gradient(160deg,#2563b0,#123564)}
.bdg-council{background:linear-gradient(160deg,#3a56c4,#1a2a70)}
.bdg-admin{background:linear-gradient(160deg,#2a7ac0,#124067)}
.bdg-manager{background:linear-gradient(160deg,#455ad2,#20307e)}
.bdg-ceo{background:linear-gradient(160deg,#c8952a,#6e4c0e);border-color:rgba(245,205,120,.6)}

[hidden]{display:none!important}

.bdg-council{background:linear-gradient(160deg,#3a72d4,#1a3a80);border-color:rgba(120,170,247,.6)}
.bdg-admin{background:linear-gradient(160deg,#d4b02a,#7a5e0c);border-color:rgba(245,220,120,.65)}
.bdg-manager{background:linear-gradient(160deg,#9a4cd8,#4d1a7e);border-color:rgba(210,150,255,.6)}
.bdg-ceo{background:linear-gradient(160deg,#d43a3a,#7a1414);border-color:rgba(247,130,130,.65)}
.bdg-support{background:linear-gradient(160deg,#2578c0,#124067);border-color:rgba(120,180,247,.55)}
.nav-locked{opacity:.35;cursor:not-allowed}
.nav-locked:hover{background:none!important}

.grad-name.gn-ceo{background:linear-gradient(90deg,#d43a3a,#ff8a8a,#fff,#ff8a8a,#d43a3a)}
.grad-name.gn-manager{background:linear-gradient(90deg,#9a4cd8,#d2a0ff,#fff,#d2a0ff,#9a4cd8)}
.grad-name.gn-admin{background:linear-gradient(90deg,#d4b02a,#f5dc78,#fff,#f5dc78,#d4b02a)}
.grad-name.gn-council{background:linear-gradient(90deg,#3a72d4,#8ab4f7,#fff,#8ab4f7,#3a72d4)}
.grad-name.gn-ceo,.grad-name.gn-manager,.grad-name.gn-admin,.grad-name.gn-council{
  background-size:100%;-webkit-background-clip:text;background-clip:text;
  -webkit-text-fill-color:transparent;color:transparent;
}

.lightbox{
  position:fixed;inset:0;z-index:400;display:flex;flex-direction:column;
  background:rgba(4,4,12,.92);backdrop-filter:blur(6px);animation:pop .18s ease;
}
.lb-bar{display:flex;justify-content:flex-end;gap:8px;padding:14px 16px}
.lb-btn{
  width:40px;height:40px;border-radius:11px;border:1px solid rgba(255,255,255,.14);cursor:pointer;
  background:rgba(255,255,255,.06);color:var(--text-bright);font-size:20px;
  display:flex;align-items:center;justify-content:center;transition:background .15s;
}
.lb-btn:hover{background:rgba(255,255,255,.13)}
.lb-btn svg{width:18px;height:18px}
.lb-stage{flex:1;overflow:hidden;display:flex;align-items:center;justify-content:center;cursor:zoom-in}
.lb-stage.dragging{cursor:grabbing}
.lb-stage img{max-width:94vw;max-height:82vh;transform-origin:center;transition:transform .12s ease;user-select:none;-webkit-user-drag:none;border-radius:8px}

.msg-enter{animation:msgIn .26s cubic-bezier(.16,1,.3,1)}
@keyframes msgIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}

.msg-system{align-self:center;max-width:80%;margin:8px 0}
.sys-msg{
  font-size:12px;color:var(--text-dim);text-align:center;
  background:rgba(var(--acc-rgb),.08);border:1px solid rgba(var(--acc-rgb),.18);
  padding:5px 13px;border-radius:100px;
}


.seed-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:14px 0 18px}
.seed-word{
  display:flex;align-items:center;gap:6px;padding:8px 10px;border-radius:10px;font-size:13px;
  background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.09);color:var(--text-bright);
}
.seed-num{font-size:10px;color:var(--text-dim);min-width:14px}
@media(max-width:480px){.seed-grid{grid-template-columns:repeat(2,1fr)}}

.typing-txt{color:var(--acc)!important;font-style:italic}

.contact-req{display:flex;flex-direction:column;gap:8px;max-width:340px}
.cr-btns{display:flex;gap:8px;justify-content:center}

.msg-opts-pop{
  position:absolute;bottom:70px;left:60px;z-index:60;width:250px;padding:14px;border-radius:15px;
  background:linear-gradient(160deg,var(--p1),var(--p2));border:1px solid rgba(var(--acc-rgb),.35);
  box-shadow:0 16px 40px rgba(0,0,0,.6);
}
.mo-label{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-dim);margin:0 0 8px}
.mo-row{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:12px}
.mo-row button{
  padding:6px 11px;border-radius:9px;cursor:pointer;font-size:12px;font-family:var(--sans);
  background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);color:var(--text-dim);
}
.mo-row button.active{background:rgba(var(--acc-rgb),.18);border-color:rgba(var(--acc-rgb),.5);color:var(--text-bright)}
.mo-check{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--text-mid);margin-bottom:12px;cursor:pointer}
.mo-datetime{width:100%;padding:8px;border-radius:9px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);color:var(--text-bright);font-family:var(--sans);font-size:12px}
.composer{position:relative}
.msg-vo{font-size:10px;color:var(--acc);margin-left:5px;font-style:italic}

.msg-row.pinned .bubble{border-left:3px solid rgba(var(--acc-rgb),.7)}
.msg-row.pinned .msg-col::before{content:"pinned";font-size:10px;color:var(--acc);letter-spacing:.05em;text-transform:uppercase;font-weight:700}

.tg-also{font-size:12.5px;color:var(--acc);margin-top:2px}


.chat-head{position:relative}
.chat-ttl-btn{position:relative;flex-shrink:0}
.ttl-dot{position:absolute;top:5px;right:5px;width:7px;height:7px;border-radius:50%;background:var(--acc);box-shadow:0 0 6px rgba(var(--acc-rgb),.8)}
.ttl-pop{
  position:absolute;top:60px;right:14px;z-index:70;width:250px;padding:14px;border-radius:15px;
  background:linear-gradient(160deg,var(--p1),var(--p2));border:1px solid rgba(var(--acc-rgb),.35);
  box-shadow:0 16px 40px rgba(0,0,0,.6);
}
.mo-hint{font-size:11.5px;color:var(--text-dim);line-height:1.5;margin:10px 0 0}

.rk{
  display:inline-flex;align-items:center;vertical-align:baseline;
  margin-left:.4em;padding:0 .5em;height:1.5em;border-radius:.42em;
  font-size:.62em;font-weight:800;letter-spacing:.07em;text-transform:uppercase;
  line-height:1;cursor:default;position:relative;top:-.08em;
  white-space:nowrap;flex-shrink:0;
  color:var(--rk-fg,#fff);
  background:var(--rk-bg,linear-gradient(165deg,rgba(var(--deepA),.95),rgba(var(--deepB),1)));
  border:1px solid var(--rk-br,rgba(var(--acc-rgb),.5));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.16),0 1px 3px rgba(0,0,0,.4);
  text-shadow:0 1px 2px rgba(0,0,0,.5);
}
.rk-ceo{--rk-bg:linear-gradient(165deg,#e04a4a,#8a1818);--rk-br:rgba(255,150,150,.6)}
.rk-manager{--rk-bg:linear-gradient(165deg,#a855e0,#521a8a);--rk-br:rgba(215,160,255,.6)}
.rk-admin{--rk-bg:linear-gradient(165deg,#e0b93a,#8a6a0c);--rk-br:rgba(250,225,130,.65);--rk-fg:#1a1405}
.rk-council{--rk-bg:linear-gradient(165deg,#4a82e0,#1a3f8a);--rk-br:rgba(150,190,255,.6)}
.rk-support{--rk-bg:linear-gradient(165deg,#3a8fd0,#134470);--rk-br:rgba(140,200,250,.6)}
.rk-vip{--rk-bg:linear-gradient(165deg,#d4a326,#7a5a0c);--rk-br:rgba(250,220,130,.6);--rk-fg:#1a1405}
.rk-rich{--rk-bg:linear-gradient(165deg,#1fa876,#0a5236);--rk-br:rgba(130,240,190,.6)}
.rk-elite{--rk-bg:linear-gradient(165deg,#8f4ad0,#421472);--rk-br:rgba(210,160,255,.62)}
.rk-og{--rk-bg:linear-gradient(165deg,#6b7488,#333a48);--rk-br:rgba(205,215,230,.55)}
.rk-exclusive{
  --rk-bg:linear-gradient(165deg,#22243f,#0a0b18);
  --rk-br:rgba(255,255,255,.5);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.22),0 0 8px rgba(255,255,255,.1),0 1px 3px rgba(0,0,0,.45);
}
.rk-admin,.rk-vip{text-shadow:0 1px 1px rgba(255,255,255,.25)}


.conv-name,.chat-title,.sr-name,.msg-sender,.tg-name{
  display:inline-flex;align-items:baseline;gap:0;min-width:0;
}
.conv-name,.sr-name,.msg-sender{font-size:13.5px}
.chat-title{font-size:15px}

.msg-pending .bubble{opacity:.72}
.msg-pending .ticks{opacity:.45}
.msg-pending .ticks svg{animation:tickPulse 1.1s ease-in-out infinite}
@keyframes tickPulse{0%,100%{opacity:.4}50%{opacity:.9}}
.msg-confirmed .bubble{animation:confirmPop .4s cubic-bezier(.16,1,.3,1)}
@keyframes confirmPop{0%{opacity:.72}45%{opacity:1;transform:scale(1.012)}100%{transform:scale(1)}}
.msg-failed .bubble{border-color:rgba(247,118,142,.55)!important;opacity:1}
.msg-retry{
  display:block;margin-top:6px;padding:0;border:none;background:none;cursor:pointer;
  font-size:11px;color:var(--red);font-family:var(--sans);text-decoration:underline;
}

.msg-enter{animation:msgIn .3s cubic-bezier(.16,1,.3,1)}
@keyframes msgIn{
  from{opacity:0;transform:translateY(10px) scale(.985)}
  to{opacity:1;transform:none}
}
.msg-row.mine.msg-enter{animation:msgInMine .3s cubic-bezier(.16,1,.3,1)}
@keyframes msgInMine{
  from{opacity:0;transform:translateY(10px) scale(.985)}
  to{opacity:1;transform:none}
}

.conv{transition:background .16s ease,transform .16s cubic-bezier(.16,1,.3,1)}
.conv:active{transform:scale(.985)}
.icon-btn,.btn{transition:background .16s ease,transform .12s cubic-bezier(.16,1,.3,1),box-shadow .16s ease,color .16s ease,border-color .16s ease}
.icon-btn:active,.btn:active{transform:scale(.94)}
.btn-send:active{transform:scale(.88)}
.avatar{transition:transform .18s cubic-bezier(.16,1,.3,1)}
.conv:hover .avatar{transform:scale(1.04)}
.react-chip{transition:background .14s,border-color .14s,transform .14s cubic-bezier(.16,1,.3,1)}
.react-chip:active{transform:scale(.9)}
.msg-actions{
  animation:actionsIn .16s cubic-bezier(.16,1,.3,1);
  transform-origin:top center;
}
@keyframes actionsIn{from{opacity:0;transform:translateY(4px) scale(.94)}to{opacity:1;transform:none}}
.modal{animation:modalIn .3s cubic-bezier(.16,1,.3,1)}
@keyframes modalIn{from{opacity:0;transform:translateY(16px) scale(.97)}to{opacity:1;transform:none}}
.toast{transition:opacity .22s ease,transform .28s cubic-bezier(.16,1,.3,1)}
.sr-item{transition:background .14s ease,transform .14s cubic-bezier(.16,1,.3,1)}
.sr-item:active{transform:scale(.99)}
.chat-view.chat-swap .msg-scroll{animation:chatSwapIn .3s cubic-bezier(.16,1,.3,1)}
@keyframes chatSwapIn{from{opacity:0;transform:translateX(10px)}to{opacity:1;transform:none}}

@media (prefers-reduced-motion: reduce){
  *,*::before,*::after{
    animation-duration:.01ms!important;animation-iteration-count:1!important;
    transition-duration:.01ms!important;scroll-behavior:auto!important;
  }
}

.cl-backdrop{
  position:fixed;inset:0;z-index:500;display:flex;align-items:center;justify-content:center;padding:24px;
  background:rgba(3,3,10,.8);backdrop-filter:blur(12px);
  opacity:0;transition:opacity .28s ease;
}
.cl-backdrop.show{opacity:1}

.cl-modal{
  width:100%;max-width:680px;height:min(560px,84vh);
  display:flex;flex-direction:column;overflow:hidden;position:relative;
  border-radius:24px;
  background:linear-gradient(168deg,rgba(var(--deepA),.3),var(--p2) 46%,var(--p4));
  border:1px solid rgba(255,255,255,.09);
  box-shadow:0 40px 90px rgba(0,0,0,.65);
  transform:translateY(16px) scale(.975);opacity:0;
  transition:transform .4s cubic-bezier(.16,1,.3,1),opacity .3s ease;
}
.cl-backdrop.show .cl-modal{transform:none;opacity:1}
.cl-modal::before{
  content:"";position:absolute;top:0;left:0;right:0;height:220px;pointer-events:none;
  background:radial-gradient(90% 100% at 30% 0%,rgba(var(--acc-rgb),.13),transparent 72%);
}

.cl-head{
  display:flex;align-items:flex-start;justify-content:space-between;gap:16px;
  padding:24px 24px 18px;position:relative;flex-shrink:0;
}
.cl-eyebrow{
  display:inline-block;font-size:9.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;
  color:var(--acc);padding:3px 8px;border-radius:6px;margin-bottom:8px;
  background:rgba(var(--acc-rgb),.12);border:1px solid rgba(var(--acc-rgb),.25);
}
.cl-title{
  font-family:var(--heading);font-size:25px;font-weight:600;letter-spacing:-.02em;
  line-height:1.1;padding-bottom:.06em;color:var(--text-bright);
}
.cl-x{
  width:32px;height:32px;flex-shrink:0;border-radius:10px;cursor:pointer;
  display:flex;align-items:center;justify-content:center;
  border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.03);color:var(--text-dim);
  transition:background .16s,color .16s;
}
.cl-x:hover{background:rgba(255,255,255,.1);color:var(--text-bright)}
.cl-x svg{width:13px;height:13px}

.cl-body{display:flex;min-height:0;flex:1;position:relative}

.cl-side{
  width:150px;flex-shrink:0;padding:4px 10px 16px 16px;overflow-y:auto;
  display:flex;flex-direction:column;gap:2px;
}
.cl-ver{
  display:block;width:100%;text-align:left;padding:9px 11px;border-radius:10px;
  border:none;background:none;cursor:pointer;font-family:var(--sans);position:relative;
  transition:background .16s;
}
.cl-ver:hover{background:rgba(255,255,255,.04)}
.cl-ver.active{background:rgba(var(--acc-rgb),.13)}
.cl-ver.active::before{
  content:"";position:absolute;left:0;top:9px;bottom:9px;width:2.5px;border-radius:2px;background:var(--acc);
}
.cl-ver-num{
  display:flex;align-items:center;gap:6px;
  font-size:12.5px;font-weight:700;color:var(--text-dim);letter-spacing:.02em;
}
.cl-ver.active .cl-ver-num{color:var(--text-bright)}
.cl-new{
  font-size:8px;font-weight:800;letter-spacing:.09em;text-transform:uppercase;
  color:#0b1020;background:var(--acc);padding:2px 5px;border-radius:4px;line-height:1;
}
.cl-ver-title{
  display:block;font-size:10.5px;color:var(--text-dim);line-height:1.35;margin-top:3px;opacity:.75;
}
.cl-ver.active .cl-ver-title{opacity:1}

.cl-main{flex:1;padding:4px 24px 24px;overflow-y:auto;min-width:0}
.cl-vhead{margin-bottom:14px}
.cl-vtitle{font-family:var(--heading);font-size:17px;font-weight:600;color:var(--text-bright);letter-spacing:-.01em}
.cl-vmeta{font-size:11px;color:var(--text-dim);margin-top:3px;opacity:.8}

.cl-item{
  border-bottom:1px solid rgba(255,255,255,.06);
  opacity:0;animation:clIn .32s cubic-bezier(.16,1,.3,1) forwards;
}
.cl-item:last-child{border-bottom:none}
@keyframes clIn{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}

.cl-item-head{
  width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;
  padding:13px 2px;background:none;border:none;cursor:pointer;font-family:var(--sans);text-align:left;
  transition:opacity .16s;
}
.cl-item-head:hover{opacity:.75}
.cl-item-name{font-size:13.5px;font-weight:500;color:var(--text-bright);transition:color .16s}
.cl-item.open .cl-item-name{color:var(--acc)}
.cl-chev{
  display:flex;align-items:center;justify-content:center;flex-shrink:0;
  width:18px;height:18px;border-radius:5px;color:var(--text-dim);
  transition:transform .32s cubic-bezier(.16,1,.3,1),color .16s;
}
.cl-chev svg{width:12px;height:12px}
.cl-item.open .cl-chev{transform:rotate(180deg);color:var(--acc)}

.cl-item-wrap{
  display:grid;grid-template-rows:0fr;
  transition:grid-template-rows .34s cubic-bezier(.16,1,.3,1);
}
.cl-item.open .cl-item-wrap{grid-template-rows:1fr}
.cl-item-inner{overflow:hidden;min-height:0}

.cl-what{font-size:12.5px;color:var(--text-mid);line-height:1.65;margin:0 0 10px;font-weight:300}
.cl-how-box{
  margin:0 0 14px;padding:10px 12px;border-radius:9px;
  background:rgba(0,0,0,.2);border-left:2px solid rgba(var(--acc-rgb),.5);
}
.cl-how-label{
  font-size:9px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;
  color:var(--acc);margin-bottom:4px;opacity:.9;
}
.cl-how{font-size:12px;color:var(--text-mid);line-height:1.65;margin:0;font-weight:300}

@media(max-width:640px){
  .cl-backdrop{padding:12px}
  .cl-modal{height:90vh;border-radius:18px}
  .cl-body{flex-direction:column}
  .cl-side{
    width:100%;flex-direction:row;overflow-x:auto;overflow-y:hidden;gap:4px;
    padding:0 16px 12px;border-bottom:1px solid rgba(255,255,255,.06);
  }
  .cl-ver{width:auto;flex-shrink:0;padding:7px 12px}
  .cl-ver.active::before{display:none}
  .cl-ver-title{display:none}
  .cl-main{padding:16px}
  .cl-head{padding:18px 18px 14px}
  .cl-title{font-size:21px}
}

.sf-progress{
  position:fixed;top:0;left:0;right:0;height:2.5px;z-index:9999;pointer-events:none;
  opacity:0;transition:opacity .2s ease;
}
.sf-progress.show{opacity:1}
.sf-progress-fill{
  height:100%;width:0;border-radius:0 2px 2px 0;
  background:linear-gradient(90deg,rgba(var(--acc-rgb),.5),var(--acc));
  box-shadow:0 0 10px rgba(var(--acc-rgb),.7),0 0 3px rgba(var(--acc-rgb),.9);
}

.sk{
  position:relative;overflow:hidden;border-radius:8px;
  background:rgba(255,255,255,.045);
}
.sk::after{
  content:"";position:absolute;inset:0;transform:translateX(-100%);
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.07),transparent);
  animation:skShimmer 1.4s ease-in-out infinite;
}
@keyframes skShimmer{to{transform:translateX(100%)}}

.sk-conv{display:flex;align-items:center;gap:12px;padding:11px 14px}
.sk-avatar{width:44px;height:44px;border-radius:50%;flex-shrink:0}
.sk-conv-body{flex:1;display:flex;flex-direction:column;gap:7px;min-width:0}
.sk-line{height:9px}
.sk-line.w60{width:60%}
.sk-line.w40{width:40%}
.sk-line.w80{width:80%}

.sk-msgs{display:flex;flex-direction:column;gap:14px;padding:24px 22px}
.sk-bubble{height:38px;border-radius:16px;max-width:62%}
.sk-bubble.short{width:34%}
.sk-bubble.mid{width:52%}
.sk-bubble.long{width:62%}
.sk-bubble.mine{align-self:flex-end}
.sk-bubble.tall{height:60px}

.sf-boot{
  position:fixed;inset:0;z-index:400;display:flex;align-items:center;justify-content:center;
  background:var(--bg0);
  transition:opacity .32s ease,visibility .32s;
}
.sf-boot.gone{opacity:0;visibility:hidden;pointer-events:none}
.sf-boot-inner{display:flex;flex-direction:column;align-items:center;gap:18px}
.sf-boot-mark{
  font-family:var(--heading);font-size:30px;font-weight:600;letter-spacing:-.02em;
  background:var(--chrome);background-size:200% 100%;
  -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;
  animation:bootShine 2.2s linear infinite;
}
@keyframes bootShine{0%{background-position:100% 0}100%{background-position:-100% 0}}
.sf-boot-dots{display:flex;gap:6px}
.sf-boot-dots span{
  width:6px;height:6px;border-radius:50%;background:var(--acc);opacity:.35;
  animation:bootDot 1.3s ease-in-out infinite;
}
.sf-boot-dots span:nth-child(2){animation-delay:.16s}
.sf-boot-dots span:nth-child(3){animation-delay:.32s}
@keyframes bootDot{0%,100%{opacity:.25;transform:translateY(0)}50%{opacity:1;transform:translateY(-4px)}}

.badge-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:2px}
.badge-row .bdg{
  width:34px;height:34px;top:0;margin:0;border-radius:10px;flex-shrink:0;
  transition:transform .16s cubic-bezier(.16,1,.3,1);
}
.badge-row .bdg:hover{transform:translateY(-2px) scale(1.06)}
.badge-row .bdg svg{width:56%;height:56%}
.bdg-custom{background:linear-gradient(165deg,rgba(var(--deepA),.95),rgba(var(--deepB),1));border-color:rgba(var(--acc-rgb),.45)}
