/* EasyAiPorn Chat V2 shared navigation and visual theme */
:root{
  --ps-w:244px;
  --nav-drawer-w:244px;
  --eap-bg:#08090d;
  --eap-bg-deep:#05060a;
  --eap-panel:#11131a;
  --eap-panel-2:#171923;
  --eap-line:#272a35;
  --eap-line-soft:rgba(255,255,255,.08);
  --eap-text:#f7f4fa;
  --eap-muted:#a6a8b4;
  --eap-dim:#727583;
  --eap-pink:#ff5f93;
  --eap-pink-soft:#ff9aba;
  --eap-violet:#9b78ff;
  --eap-magenta:#db5fe9;
  --eap-accent:linear-gradient(110deg,#ff5f93,#db5fe9 55%,#9b78ff);
  --eap-accent-soft:linear-gradient(115deg,rgba(255,95,147,.18),rgba(155,120,255,.13));
  --eap-focus:rgba(255,95,147,.92);
}

html{
  --ps-w:244px;
  --nav-drawer-w:244px;
  --eap-bg:#08090d;
  --eap-bg-deep:#05060a;
  --eap-panel:#11131a;
  --eap-panel-2:#171923;
  --eap-line:#272a35;
  --eap-line-soft:rgba(255,255,255,.08);
  --eap-text:#f7f4fa;
  --eap-muted:#a6a8b4;
  --eap-dim:#727583;
  --eap-pink:#ff5f93;
  --eap-pink-soft:#ff9aba;
  --eap-violet:#9b78ff;
  --eap-magenta:#db5fe9;
  --eap-accent:linear-gradient(110deg,#ff5f93,#db5fe9 55%,#9b78ff);
  --eap-accent-soft:linear-gradient(115deg,rgba(255,95,147,.18),rgba(155,120,255,.13));
  --eap-focus:rgba(255,95,147,.92);
}

body.chat-v2-theme{
  color:var(--eap-text);
  background-color:var(--eap-bg);
}
body.chat-v2-theme button,
body.chat-v2-theme input,
body.chat-v2-theme textarea,
body.chat-v2-theme select{font-family:inherit}
body.chat-v2-theme a{text-decoration:none}

/* Shared Chat V2 scrollbars: quiet glass track, rounded thumb, no browser arrows. */
body.chat-v2-theme{
  --eap-scrollbar-thumb:rgba(186,181,206,.48);
  --eap-scrollbar-thumb-hover:rgba(224,219,238,.72);
  --eap-scrollbar-track:transparent;
}
body.chat-v2-theme,
body.chat-v2-theme .primary-sidebar,
body.chat-v2-theme .cs-list,
body.chat-v2-theme .main-char-message,
body.chat-v2-theme .mem-body,
body.chat-v2-theme .mem-right,
body.chat-v2-theme .mem-detail-text,
body.chat-v2-theme .htu-body,
body.chat-v2-theme .htu-card,
body.chat-v2-theme .layui-layer-content,
body.chat-v2-theme .eap-auth-modal,
body.chat-v2-theme .eap-auth-dialog,
body.chat-v2-theme .character-modal,
body.chat-v2-theme .main-char .main-char-input textarea,
body.chat-v2-theme #AskContent{
  scrollbar-width:thin;
  scrollbar-color:var(--eap-scrollbar-thumb) var(--eap-scrollbar-track);
}
body.chat-v2-theme::-webkit-scrollbar,
body.chat-v2-theme .primary-sidebar::-webkit-scrollbar,
body.chat-v2-theme .cs-list::-webkit-scrollbar,
body.chat-v2-theme .main-char-message::-webkit-scrollbar,
body.chat-v2-theme .mem-body::-webkit-scrollbar,
body.chat-v2-theme .mem-right::-webkit-scrollbar,
body.chat-v2-theme .mem-detail-text::-webkit-scrollbar,
body.chat-v2-theme .htu-body::-webkit-scrollbar,
body.chat-v2-theme .htu-card::-webkit-scrollbar,
body.chat-v2-theme .layui-layer-content::-webkit-scrollbar,
body.chat-v2-theme .eap-auth-modal::-webkit-scrollbar,
body.chat-v2-theme .eap-auth-dialog::-webkit-scrollbar,
body.chat-v2-theme .character-modal::-webkit-scrollbar,
body.chat-v2-theme .main-char .main-char-input textarea::-webkit-scrollbar,
body.chat-v2-theme #AskContent::-webkit-scrollbar{width:7px;height:7px}
body.chat-v2-theme::-webkit-scrollbar-track,
body.chat-v2-theme .primary-sidebar::-webkit-scrollbar-track,
body.chat-v2-theme .cs-list::-webkit-scrollbar-track,
body.chat-v2-theme .main-char-message::-webkit-scrollbar-track,
body.chat-v2-theme .mem-body::-webkit-scrollbar-track,
body.chat-v2-theme .mem-right::-webkit-scrollbar-track,
body.chat-v2-theme .mem-detail-text::-webkit-scrollbar-track,
body.chat-v2-theme .htu-body::-webkit-scrollbar-track,
body.chat-v2-theme .htu-card::-webkit-scrollbar-track,
body.chat-v2-theme .layui-layer-content::-webkit-scrollbar-track,
body.chat-v2-theme .eap-auth-modal::-webkit-scrollbar-track,
body.chat-v2-theme .eap-auth-dialog::-webkit-scrollbar-track,
body.chat-v2-theme .character-modal::-webkit-scrollbar-track,
body.chat-v2-theme .main-char .main-char-input textarea::-webkit-scrollbar-track,
body.chat-v2-theme #AskContent::-webkit-scrollbar-track{background:var(--eap-scrollbar-track)}
body.chat-v2-theme::-webkit-scrollbar-thumb,
body.chat-v2-theme .primary-sidebar::-webkit-scrollbar-thumb,
body.chat-v2-theme .cs-list::-webkit-scrollbar-thumb,
body.chat-v2-theme .main-char-message::-webkit-scrollbar-thumb,
body.chat-v2-theme .mem-body::-webkit-scrollbar-thumb,
body.chat-v2-theme .mem-right::-webkit-scrollbar-thumb,
body.chat-v2-theme .mem-detail-text::-webkit-scrollbar-thumb,
body.chat-v2-theme .htu-body::-webkit-scrollbar-thumb,
body.chat-v2-theme .htu-card::-webkit-scrollbar-thumb,
body.chat-v2-theme .layui-layer-content::-webkit-scrollbar-thumb,
body.chat-v2-theme .eap-auth-modal::-webkit-scrollbar-thumb,
body.chat-v2-theme .eap-auth-dialog::-webkit-scrollbar-thumb,
body.chat-v2-theme .character-modal::-webkit-scrollbar-thumb,
body.chat-v2-theme .main-char .main-char-input textarea::-webkit-scrollbar-thumb,
body.chat-v2-theme #AskContent::-webkit-scrollbar-thumb{
  min-height:34px;
  border:2px solid transparent;
  border-radius:999px;
  background:var(--eap-scrollbar-thumb);
  background-clip:padding-box;
}
body.chat-v2-theme::-webkit-scrollbar-thumb:hover,
body.chat-v2-theme .primary-sidebar::-webkit-scrollbar-thumb:hover,
body.chat-v2-theme .cs-list::-webkit-scrollbar-thumb:hover,
body.chat-v2-theme .main-char-message::-webkit-scrollbar-thumb:hover,
body.chat-v2-theme .mem-body::-webkit-scrollbar-thumb:hover,
body.chat-v2-theme .mem-right::-webkit-scrollbar-thumb:hover,
body.chat-v2-theme .mem-detail-text::-webkit-scrollbar-thumb:hover,
body.chat-v2-theme .htu-body::-webkit-scrollbar-thumb:hover,
body.chat-v2-theme .htu-card::-webkit-scrollbar-thumb:hover,
body.chat-v2-theme .layui-layer-content::-webkit-scrollbar-thumb:hover,
body.chat-v2-theme .eap-auth-modal::-webkit-scrollbar-thumb:hover,
body.chat-v2-theme .eap-auth-dialog::-webkit-scrollbar-thumb:hover,
body.chat-v2-theme .character-modal::-webkit-scrollbar-thumb:hover,
body.chat-v2-theme .main-char .main-char-input textarea::-webkit-scrollbar-thumb:hover,
body.chat-v2-theme #AskContent::-webkit-scrollbar-thumb:hover{background:var(--eap-scrollbar-thumb-hover)}
body.chat-v2-theme::-webkit-scrollbar-button,
body.chat-v2-theme .primary-sidebar::-webkit-scrollbar-button,
body.chat-v2-theme .cs-list::-webkit-scrollbar-button,
body.chat-v2-theme .main-char-message::-webkit-scrollbar-button,
body.chat-v2-theme .mem-body::-webkit-scrollbar-button,
body.chat-v2-theme .mem-right::-webkit-scrollbar-button,
body.chat-v2-theme .mem-detail-text::-webkit-scrollbar-button,
body.chat-v2-theme .htu-body::-webkit-scrollbar-button,
body.chat-v2-theme .htu-card::-webkit-scrollbar-button,
body.chat-v2-theme .layui-layer-content::-webkit-scrollbar-button,
body.chat-v2-theme .eap-auth-modal::-webkit-scrollbar-button,
body.chat-v2-theme .eap-auth-dialog::-webkit-scrollbar-button,
body.chat-v2-theme .character-modal::-webkit-scrollbar-button,
body.chat-v2-theme .main-char .main-char-input textarea::-webkit-scrollbar-button,
body.chat-v2-theme #AskContent::-webkit-scrollbar-button{display:none;width:0;height:0}

/* Keep every visible Chat V2 scroll surface on the same low-contrast palette. */
body.chat-v2-theme *{
  scrollbar-width:thin;
  scrollbar-color:var(--eap-scrollbar-thumb) var(--eap-scrollbar-track);
}
body.chat-v2-theme *::-webkit-scrollbar{display:block!important;width:7px!important;height:7px!important}
body.chat-v2-theme *::-webkit-scrollbar-track{background:var(--eap-scrollbar-track)!important}
body.chat-v2-theme *::-webkit-scrollbar-thumb{
  min-height:34px;
  border:2px solid transparent!important;
  border-radius:999px!important;
  background:var(--eap-scrollbar-thumb)!important;
  background-clip:padding-box!important;
  box-shadow:none!important;
}
body.chat-v2-theme *::-webkit-scrollbar-thumb:hover{
  background:var(--eap-scrollbar-thumb-hover)!important;
  background-clip:padding-box!important;
  box-shadow:none!important;
}
body.chat-v2-theme *::-webkit-scrollbar-button{display:none!important;width:0!important;height:0!important}
body.chat-v2-theme *::-webkit-scrollbar-corner{background:transparent!important}

/* Navigation chrome scrolls without adding another visible control. */
body.chat-v2-theme .primary-sidebar,
body.chat-v2-theme.chat-v2-lobby .filters{
  scrollbar-width:none;
  -ms-overflow-style:none;
}
body.chat-v2-theme .primary-sidebar::-webkit-scrollbar,
body.chat-v2-theme.chat-v2-lobby .filters::-webkit-scrollbar{
  display:none!important;
  width:0;
  height:0;
}

/* The composer keeps a visible compact thumb when the message has multiple lines. */
body.chat-v2-theme .main-char .main-char-input textarea,
body.chat-v2-theme #AskContent{
  scrollbar-width:thin!important;
  scrollbar-color:var(--eap-scrollbar-thumb) var(--eap-scrollbar-track)!important;
}
body.chat-v2-theme .main-char .main-char-input textarea::-webkit-scrollbar,
body.chat-v2-theme #AskContent::-webkit-scrollbar{display:block!important;width:7px!important;height:7px!important}

/* Shared navigation */
.primary-sidebar{
  position:fixed;
  inset:0 auto 0 0;
  z-index:2500;
  width:var(--ps-w);
  height:100vh;
  height:100dvh;
  padding:28px 16px 18px;
  display:flex;
  flex-direction:column;
  gap:3px;
  overflow-x:hidden;
  overflow-y:auto;
  border-right:1px solid #20222d;
  background:rgba(8,9,14,.96);
  box-shadow:12px 0 36px rgba(0,0,0,.16);
  backdrop-filter:blur(20px);
  -webkit-backdrop-filter:blur(20px);
  scrollbar-width:none;
  box-sizing:border-box;
  transition:width .28s cubic-bezier(.22,.8,.22,1),padding .28s cubic-bezier(.22,.8,.22,1),transform .24s ease,box-shadow .28s ease;
}
.primary-sidebar::-webkit-scrollbar{display:none}
.ps-sidebar-head{
  position:relative;
  min-height:43px;
  height:43px;
  display:flex;
  align-items:center;
  gap:8px;
  padding:0 4px;
  margin-bottom:0;
}
.ps-brand{
  position:relative;
  min-width:0;
  flex:1;
  display:flex;
  align-items:center;
  height:34px;
  padding:4px 46px 4px 9px;
  color:#f6f3f8;
  font:800 28px/1 Arial,sans-serif;
  letter-spacing:-1.5px;
  white-space:nowrap;
}
.ps-brand-full,.ps-brand-compact{position:absolute;left:9px;top:50%;display:block;transform:translateY(-50%);transition:opacity .18s ease,transform .28s cubic-bezier(.22,.8,.22,1)}
.ps-brand-full{color:#f6f3f8;opacity:1}
.ps-brand-full i{color:var(--eap-pink);font-style:normal}
.ps-brand b{color:#f6f3f8;font-weight:800}
.ps-brand-compact{opacity:0;transform:translateY(-50%) scale(.86)}
.ps-collapse-btn{
  position:absolute;
  top:4px;
  right:4px;
  width:34px;
  height:34px;
  flex:0 0 auto;
  display:grid;
  place-items:center;
  padding:0;
  border:1px solid rgba(255,255,255,.09);
  border-radius:10px;
  background:rgba(20,22,30,.72);
  color:#8f92a0;
  cursor:pointer;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025);
  transition:background-color .16s ease,border-color .16s ease,color .16s ease;
}
.ps-collapse-btn:hover{border-color:rgba(255,143,188,.22);background:rgba(255,95,147,.08);color:#f5edf4}
.ps-collapse-btn:focus-visible{outline:2px solid var(--eap-focus);outline-offset:2px}
.ps-collapse-btn svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.ps-collapse-chevron{transform-origin:14px 12px;transition:transform .2s ease}
.ps-divider{
  width:calc(100% - 8px);
  height:1px;
  min-height:1px;
  margin:12px 4px;
  flex:0 0 auto;
  border:0;
  background:rgba(255,255,255,.105);
  transition:width .28s cubic-bezier(.22,.8,.22,1),margin .28s cubic-bezier(.22,.8,.22,1),background-color .18s ease;
}
.ps-divider-brand{margin-top:16px;margin-bottom:14px}
.ps-section-label{
  padding:19px 13px 9px;
  color:#747786;
  font-size:10px;
  font-weight:600;
  letter-spacing:.18em;
  text-transform:uppercase;
}
.primary-sidebar .ps-item{
  position:relative;
  width:100%;
  min-height:46px;
  margin:1px 0;
  padding:0 13px;
  display:flex;
  align-items:center;
  gap:13px;
  flex:0 0 auto;
  border:1px solid transparent;
  border-radius:12px;
  background:transparent;
  color:#adb0bd;
  cursor:pointer;
  font-size:14px;
  font-weight:600;
  line-height:1.2;
  text-align:left;
  box-sizing:border-box;
  transition:color .16s,background .16s,border-color .16s,transform .16s;
}
.primary-sidebar .ps-item:hover{
  color:#fff;
  background:#171923;
}
.primary-sidebar .ps-item:active{transform:scale(.985)}
.primary-sidebar .ps-item.ps-active{
  color:#fff;
  background:var(--eap-accent-soft);
  border-color:rgba(255,255,255,.07);
  box-shadow:inset 0 0 0 1px rgba(255,95,147,.04);
}
.primary-sidebar .ps-item svg{
  width:20px;
  height:20px;
  flex:0 0 auto;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.primary-sidebar .ps-label{
  position:static;
  opacity:1;
  display:block;
  max-width:170px;
  overflow:hidden;
  color:inherit;
  white-space:nowrap;
  transform:none;
  transition:opacity .16s ease,max-width .28s cubic-bezier(.22,.8,.22,1),transform .22s ease;
}
.primary-sidebar .ps-item:focus-visible,
#mobileNavBtn:focus-visible,
.cs-back-btn:focus-visible,
.cs-delete-btn:focus-visible{
  outline:2px solid var(--eap-focus);
  outline-offset:2px;
}
.ps-sidebar-footer{margin:0;padding:0}
.ps-stage{
  margin:0 0 9px;
  padding:12px 13px;
  border:1px solid #252832;
  border-radius:12px;
  background:#11131a;
}
.ps-stage strong{display:block;color:#dfe0e6;font-size:11px;line-height:1.35}
.ps-stage strong i{
  display:inline-block;
  width:6px;
  height:6px;
  margin-right:6px;
  border-radius:50%;
  background:#5bdd91;
  box-shadow:0 0 9px rgba(91,221,145,.7);
}
.ps-stage span{display:block;margin-top:4px;color:#747785;font-size:9px;line-height:1.4}
.primary-sidebar .ps-logout{color:#9295a2}
#nav-backdrop{
  display:none;
  position:fixed;
  inset:0;
  z-index:2400;
  background:rgba(3,4,8,.68);
  backdrop-filter:blur(3px);
  -webkit-backdrop-filter:blur(3px);
}
#mobileNavBtn{
  display:none;
  position:fixed;
  top:12px;
  left:12px;
  z-index:2450;
  width:42px;
  height:42px;
  padding:0;
  align-items:center;
  justify-content:center;
  border:1px solid rgba(255,255,255,.12);
  border-radius:12px;
  background:rgba(13,14,20,.9);
  color:#f4f1f6;
  box-shadow:0 8px 26px rgba(0,0,0,.34);
  cursor:pointer;
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
}
#mobileNavBtn svg{
  width:21px;
  height:21px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
}

/* Sidebar placement in the different Chat V2 templates */
.idx-layout{
  position:relative;
  z-index:1;
  display:flex;
  flex:1;
  min-height:0;
  overflow:hidden;
  padding-left:var(--ps-w);
  box-sizing:border-box;
  transition:padding-left .28s cubic-bezier(.22,.8,.22,1);
}
.idx-col3{display:flex;flex:1;min-width:0;flex-direction:column;overflow:hidden}
.chat-v2-lobby .shell{display:block;min-height:100vh;margin-left:var(--ps-w);transition:margin-left .28s cubic-bezier(.22,.8,.22,1)}
.primary-sidebar~.shell{margin-left:var(--ps-w);transition:margin-left .28s cubic-bezier(.22,.8,.22,1)}
.primary-sidebar~.app{margin-left:var(--ps-w);transition:margin-left .28s cubic-bezier(.22,.8,.22,1)}
.primary-sidebar~.top,
.primary-sidebar~.layout{margin-left:var(--ps-w);transition:margin-left .28s cubic-bezier(.22,.8,.22,1)}

html.sidebar-collapsed{--ps-w:84px}
html.sidebar-collapsed .primary-sidebar{padding:28px 8px 18px}
html.sidebar-collapsed .ps-sidebar-head{min-height:43px;height:43px;flex-direction:row;justify-content:flex-start;gap:4px;padding:0;margin-bottom:0}
html.sidebar-collapsed .ps-brand{flex:1 1 auto;width:auto;min-width:0;min-height:34px;justify-content:flex-start;padding:0 40px 0 0;font-size:22px;letter-spacing:-1px}
html.sidebar-collapsed .ps-brand-full{opacity:0;transform:translateY(-50%) translateX(-8px) scale(.94);pointer-events:none}
html.sidebar-collapsed .ps-brand-compact{left:0;opacity:1;font-size:20px;letter-spacing:-1.5px;transform:translateY(-50%) scale(1)}
html.sidebar-collapsed .ps-brand-compact i{color:var(--eap-pink);font-style:normal}
html.sidebar-collapsed .ps-collapse-chevron{transform:rotate(180deg)}
html.sidebar-collapsed .ps-section-label{height:43px;min-height:43px;margin:0;padding:19px 13px 9px;box-sizing:border-box;background:transparent;color:transparent;font-size:10px;white-space:nowrap;overflow:hidden}
html.sidebar-collapsed .primary-sidebar .ps-item{min-height:46px;justify-content:flex-start;gap:0;padding:0 23px}
html.sidebar-collapsed .primary-sidebar .ps-label{opacity:0;max-width:0;transform:translateX(-5px);pointer-events:none}
html.sidebar-collapsed .ps-divider{width:calc(100% - 8px);margin-left:4px;margin-right:4px}
html.sidebar-collapsed .ps-sidebar-footer{margin:0;padding:0}
html.sidebar-collapsed .ps-stage{max-height:0;margin:0;padding-top:0;padding-bottom:0;border-width:0;opacity:0;overflow:hidden}

@media(prefers-reduced-motion:reduce){
  .primary-sidebar,.ps-brand-full,.ps-brand-compact,.ps-collapse-chevron,.ps-divider,.primary-sidebar .ps-label,.idx-layout,.chat-v2-lobby .shell,.primary-sidebar~.shell,.primary-sidebar~.app,.primary-sidebar~.top,.primary-sidebar~.layout{transition:none!important}
}

/* Recent chats dialog */
#chatsPopupOverlay{
  display:none;
  position:fixed;
  inset:0;
  z-index:3100;
  padding:20px;
  align-items:center;
  justify-content:center;
  background:rgba(2,3,8,.72);
  backdrop-filter:blur(5px);
  -webkit-backdrop-filter:blur(5px);
}
#chatsPopupOverlay.cp-open{display:flex}
#chatsPopup{
  width:min(390px,100%);
  max-height:min(72vh,650px);
  display:flex;
  flex-direction:column;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.11);
  border-radius:16px;
  background:rgba(15,16,23,.97);
  box-shadow:0 24px 80px rgba(0,0,0,.58),0 0 0 1px rgba(219,95,233,.05);
  animation:chatV2DialogIn .18s ease-out;
}
@keyframes chatV2DialogIn{from{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:none}}
.cs-header{display:flex;align-items:center;gap:10px;padding:13px 14px;border-bottom:1px solid rgba(255,255,255,.07)}
.cs-title{flex:1;padding-left:3px;color:#fff;font-size:14px;font-weight:700}
.cs-back-btn{
  width:38px;
  height:38px;
  padding:0;
  display:grid;
  place-items:center;
  border:0;
  border-radius:10px;
  background:transparent;
  color:#8d909d;
  cursor:pointer;
}
.cs-back-btn:hover{background:rgba(255,255,255,.07);color:#fff}
.cs-back-btn svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round}
.cs-list{min-height:0;padding:8px;overflow-y:auto}
.cs-item{position:relative;display:flex;align-items:center;gap:6px;margin-bottom:3px;padding:6px;border-radius:11px;color:#d7d8df}
.cs-item:hover,.cs-item.cs-item-active{background:rgba(255,255,255,.065);color:#fff}
.cs-item-link{min-width:0;flex:1;display:flex;align-items:center;gap:10px;color:inherit}
.cs-item-img{width:42px;height:42px;flex:0 0 auto;overflow:hidden;border:1px solid rgba(255,255,255,.12);border-radius:50%}
.cs-item-img img{width:100%;height:100%;display:block;object-fit:cover;object-position:center top}
.cs-item-info{min-width:0;display:flex;flex:1;flex-direction:column;gap:3px}
.cs-item-name{display:flex;align-items:center;gap:6px;overflow:hidden;color:inherit;font-size:13px;font-weight:600;text-overflow:ellipsis;white-space:nowrap}
.cs-online-dot{width:6px;height:6px;flex:0 0 auto;border-radius:50%;background:#5bdd91;box-shadow:0 0 8px rgba(91,221,145,.6)}
.cs-item-preview{overflow:hidden;color:#858894;font-size:10px;line-height:1.35;text-overflow:ellipsis;white-space:nowrap}
.cs-delete-btn{
  width:34px;
  height:34px;
  flex:0 0 auto;
  display:grid;
  place-items:center;
  border:0;
  border-radius:9px;
  background:transparent;
  color:#6f7280;
  font-size:20px;
  cursor:pointer;
}
.cs-delete-btn:hover{background:rgba(255,95,147,.11);color:#ff7da7}
#chats-popup-empty{padding:36px 20px;text-align:center;color:#d7d8df;font-size:13px;font-weight:600;line-height:1.55}
#chats-popup-empty span{display:block;margin-top:5px;color:#787b89;font-size:10px;font-weight:400}

/* Shared dark plum surface and pink-violet accent */
.chat-v2-theme .eap-bg{
  background-image:none!important;
  background:
    radial-gradient(circle at 76% -8%,rgba(155,120,255,.18),transparent 30%),
    radial-gradient(circle at 100% 18%,rgba(255,95,147,.10),transparent 25%),
    #08090d!important;
}
.chat-v2-theme .eap-bg:after{background:rgba(5,6,10,.18)!important;backdrop-filter:none!important}
.chat-v2-theme .eap-navbar{
  background:linear-gradient(180deg,rgba(8,9,14,.98),rgba(8,9,14,.82) 76%,transparent)!important;
}
.chat-v2-theme .eap-logo{color:#f7f4fa!important;text-shadow:none!important;font-weight:700!important}
.chat-v2-theme .eap-auth-btn.primary,
.chat-v2-theme .tb-vip-btn,
.chat-v2-theme .prof-btn-primary,
.chat-v2-theme .support-submit,
.chat-v2-theme .pr-sub-btn,
.chat-v2-theme .htu-got-btn,
.chat-v2-theme .layui-layer .layui-layer-btn0{
  border:0!important;
  background:var(--eap-accent)!important;
  color:#fff!important;
  box-shadow:0 10px 28px rgba(201,83,190,.23)!important;
}
.chat-v2-theme .eap-auth-btn.primary:hover,
.chat-v2-theme .tb-vip-btn:hover,
.chat-v2-theme .prof-btn-primary:hover,
.chat-v2-theme .support-submit:hover,
.chat-v2-theme .pr-sub-btn:hover,
.chat-v2-theme .htu-got-btn:hover{filter:brightness(1.07)!important;box-shadow:0 12px 34px rgba(201,83,190,.31)!important}
.chat-v2-theme .eap-user-dropdown{background:#11131a!important;border-color:#292c37!important}

/* Profile */
.chat-v2-theme .prof-card,
.chat-v2-theme .prof-membership,
.chat-v2-theme .eap-nick-inner,
.chat-v2-theme .eap-cancel-inner,
.chat-v2-theme .eap-del-inner{
  background:rgba(17,19,26,.93)!important;
  border-color:rgba(255,255,255,.10)!important;
}
.chat-v2-theme .prof-card-title,
.chat-v2-theme .prof-uid span,
.chat-v2-theme .prof-action-icon:hover,
.chat-v2-theme .eap-nick-title,
.chat-v2-theme .eap-cancel-title,
.chat-v2-theme .eap-del-title{color:var(--eap-pink-soft)!important;text-shadow:none!important}
.chat-v2-theme .prof-avatar-ring{border-color:rgba(219,95,233,.52)!important;box-shadow:0 0 24px rgba(219,95,233,.14)!important}
.chat-v2-theme .prof-btn-cancel{border-color:rgba(219,95,233,.30)!important;color:#edb2eb!important}
.chat-v2-theme .eap-nick-input:focus{border-color:rgba(255,95,147,.56)!important;box-shadow:0 0 0 3px rgba(255,95,147,.08)!important}

/* Pricing */
.chat-v2-theme{--gold:#ff78a6;--gold-dim:rgba(255,95,147,.48);--text-main:#f7f4fa}
.chat-v2-theme .pr-title,
.chat-v2-theme .pr-plan-label,
.chat-v2-theme .pr-epoch-note,
.chat-v2-theme .pr-help-link,
.chat-v2-theme .pr-features li span{color:var(--eap-pink-soft)!important;text-shadow:none!important}
.chat-v2-theme .pr-card{background:rgba(17,19,26,.93)!important;border-color:rgba(219,95,233,.56)!important;box-shadow:0 24px 70px rgba(0,0,0,.40),0 0 30px rgba(219,95,233,.07)!important}
.chat-v2-theme .pr-card:before{background:var(--eap-accent)!important}
.chat-v2-theme .pr-toggle-btn.active{background:var(--eap-accent)!important;color:#fff!important}
.chat-v2-theme .pr-features li:before{color:var(--eap-pink)!important}
.chat-v2-theme .pr-sub-btn.is-current,
.chat-v2-theme .pr-sub-btn.is-current:hover{
  border:1px solid rgba(255,255,255,.12)!important;
  background:rgba(255,255,255,.075)!important;
  color:rgba(255,255,255,.74)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05)!important;
  filter:none!important;
}

/* Support */
.chat-v2-theme .support-card,
.chat-v2-theme .support-info-card,
.chat-v2-theme .support-panel,
.chat-v2-theme .support-tabs{
  background:rgba(17,19,26,.93)!important;
  border-color:rgba(255,255,255,.10)!important;
}
.chat-v2-theme .support-panel-title,
.chat-v2-theme .support-card-title,
.chat-v2-theme .support-info-header,
.chat-v2-theme .si-section-title,
.chat-v2-theme .support-info-card a{color:var(--eap-pink-soft)!important;text-shadow:none!important}
.chat-v2-theme .support-tab-btn.active{background:var(--eap-accent-soft)!important;border-color:rgba(219,95,233,.34)!important;color:#fff!important}
.chat-v2-theme .support-field input:focus,
.chat-v2-theme .support-field textarea:focus{border-color:rgba(255,95,147,.50)!important;box-shadow:0 0 0 3px rgba(255,95,147,.07)!important}

/* Terms */
.chat-v2-theme .terms-left,
.chat-v2-theme .terms-right{background:rgba(17,19,26,.93)!important;border-color:rgba(255,255,255,.10)!important}
.chat-v2-theme .terms-panel-title,
.chat-v2-theme .terms-right-title,
.chat-v2-theme .terms-content a,
.chat-v2-theme .terms-content strong,
.chat-v2-theme .terms-content b,
.chat-v2-theme .terms-content h1,
.chat-v2-theme .terms-content h2,
.chat-v2-theme .terms-content h3{color:var(--eap-pink-soft)!important;text-shadow:none!important}
.chat-v2-theme .terms-nav-item.active{background:var(--eap-accent-soft)!important;border-color:rgba(219,95,233,.34)!important;color:#fff!important;box-shadow:none!important}
.chat-v2-theme .terms-nav-item.active .tn-arrow{color:#fff!important}

/* Standard Roleplay chat */
.chat-v2-theme .chat-dialogue{color:#ff86ad!important}
.chat-v2-theme .msg-edit-textarea:focus{border-color:rgba(255,95,147,.50)!important;box-shadow:0 0 0 3px rgba(255,95,147,.06)!important}
.chat-v2-theme .main-char .main-char-input .more.active{color:#ff86ad!important;background:rgba(255,95,147,.10)!important}
.chat-v2-theme .main-char .main-char-input .send,
.chat-v2-theme .main-char .main-char-input .send-msg{background:var(--eap-accent)!important;color:#fff!important}
.chat-v2-theme .layui-layer-rim,
.chat-v2-theme .layui-layer.del-class{background:rgba(17,19,26,.98)!important;border-color:rgba(255,255,255,.11)!important}
.chat-v2-theme .layui-layer-rim .layui-layer-title,
.chat-v2-theme .layui-layer.del-class .layui-layer-title{background:linear-gradient(180deg,rgba(219,95,233,.08),transparent)!important;color:var(--eap-pink-soft)!important}

/* Dating chat */
.chat-v2-theme .ct-app{
  --ct-gold:#ff6fa0;
  --ct-gold-2:#db5fe9;
  --ct-gold-soft:#d8bcff;
  --ct-user:rgba(70,37,61,.80);
  background:
    radial-gradient(circle at 72% 10%,rgba(155,120,255,.21),transparent 34%),
    radial-gradient(circle at 24% 100%,rgba(255,95,147,.12),transparent 34%),
    linear-gradient(145deg,#080914 0%,#04050c 58%,#0b0712 100%)!important;
}
.chat-v2-theme .ct-app button:focus-visible,
.chat-v2-theme .ct-app textarea:focus-visible,
.chat-v2-theme .ct-lightbox button:focus-visible,
.chat-v2-theme .ct-dialog button:focus-visible{outline-color:var(--eap-focus)!important}
.chat-v2-theme .ct-test-badge{border-color:rgba(219,95,233,.30)!important;background:rgba(110,43,102,.22)!important;color:#efb7ec!important}
.chat-v2-theme .ct-bubble .chat-dialogue{color:#ff91b4!important}
.chat-v2-theme .ct-inline-edit textarea{border-color:rgba(255,95,147,.34)!important}
.chat-v2-theme .ct-inline-edit-actions button:last-child,
.chat-v2-theme .ct-dialog-card button:last-child{background:var(--eap-accent)!important;border-color:transparent!important;color:#fff!important}
.chat-v2-theme .ct-plus.open,
.chat-v2-theme .ct-quick-row button:hover,
.chat-v2-theme .ct-gallery-side:hover,
.chat-v2-theme .ct-open-lightbox:hover,
.chat-v2-theme .ct-lightbox-tools button:hover,
.chat-v2-theme .ct-lightbox-arrow:hover{background:rgba(255,95,147,.10)!important;border-color:rgba(219,95,233,.28)!important;color:#ff9aba!important}
.chat-v2-theme .ct-send:hover{background:rgba(255,95,147,.10)!important;color:#ff7ca7!important}
.chat-v2-theme .ct-thumb.active,
.chat-v2-theme .ct-lightbox-thumb.active{border-color:#ff6fa0!important;box-shadow:0 0 0 2px rgba(219,95,233,.12)!important}
.chat-v2-theme .ct-profile-scene{border-color:rgba(219,95,233,.20)!important;background:rgba(105,40,97,.13)!important}

.chat-v2-theme .ct-compose textarea,
.chat-v2-theme .ct-compose textarea:focus,
.chat-v2-theme .ct-compose textarea:focus-visible{
  outline:0!important;
  outline-offset:0!important;
  border:0!important;
  border-color:transparent!important;
  background:transparent!important;
  box-shadow:none!important;
  caret-color:transparent!important;
}
.chat-v2-theme .rp-premium-composer #AskContent,
.chat-v2-theme .rp-premium-composer #AskContent:focus,
.chat-v2-theme .rp-premium-composer #AskContent:focus-visible{
  outline:0!important;
  outline-offset:0!important;
  border:0!important;
  border-color:transparent!important;
  background:transparent!important;
  box-shadow:none!important;
  caret-color:transparent!important;
}
.chat-v2-theme .ct-premium-composer #ctInput:focus,
.chat-v2-theme .ct-premium-composer #ctInput:focus-visible{background:transparent!important}
.chat-v2-theme .ct-plus.open::after{
  display:none!important;
  content:none!important;
  opacity:0!important;
}

@media(max-width:1180px){
  html{--ps-w:0px;--nav-drawer-w:244px}
  html.sidebar-collapsed{--ps-w:0px}
  .primary-sidebar{width:var(--nav-drawer-w);transform:translateX(-105%);box-shadow:20px 0 55px rgba(0,0,0,.42)}
  .ps-collapse-btn{display:none}
  body.nav-open .primary-sidebar{transform:translateX(0)}
  body.nav-open #nav-backdrop{display:block}
  #mobileNavBtn{display:flex}
  .idx-layout{padding-left:0}
  .chat-v2-lobby .shell{margin-left:0}
  .primary-sidebar~.shell,
  .primary-sidebar~.app,
  .primary-sidebar~.top,
  .primary-sidebar~.layout{margin-left:0}
}

@media(max-width:640px){
  .primary-sidebar{padding-top:22px}
  .ps-brand{font-size:25px;padding-bottom:23px}
  #mobileNavBtn{top:10px;left:10px;width:40px;height:40px}
  #chatsPopupOverlay{padding:12px}
  #chatsPopup{max-height:82vh}
  .chat-v2-theme .eap-navbar{padding-left:58px!important}
}


/* Authentication, password recovery and legacy account flows */
.chat-v2-theme .login_view,
.chat-v2-theme .order-scroll .ask-item{
  background:rgba(17,19,26,.94)!important;
  border-color:rgba(255,255,255,.10)!important;
  box-shadow:0 24px 70px rgba(0,0,0,.42)!important;
}
.chat-v2-theme .login_title,
.chat-v2-theme .login_way .reset,
.chat-v2-theme .login_way .xieyi a{color:var(--eap-pink-soft)!important;text-shadow:none!important}
.chat-v2-theme .login_way input:focus{border-color:rgba(255,95,147,.50)!important;box-shadow:0 0 0 3px rgba(255,95,147,.07)!important}
.chat-v2-theme .login_way .submit.allowed,
.chat-v2-theme .login_way .send_sms.allowed,
.chat-v2-theme .main-btn,
.chat-v2-theme .ContinueBtn,
.chat-v2-theme .RegenerateBtn{
  border:0!important;
  background:var(--eap-accent)!important;
  color:#fff!important;
  box-shadow:0 10px 26px rgba(201,83,190,.22)!important;
}

@media(max-width:1180px){
  .chat-v2-lobby .topbar,
  .chat-v2-standalone .top,
  .chat-v2-theme .ct-chat-header,
  .chat-v2-theme .eap-navbar,
  .chat-v2-theme #chat-topbar{padding-left:64px!important}
}
@media(max-width:640px){
  .chat-v2-lobby .topbar{
    height:auto!important;
    min-height:112px;
    display:grid!important;
    grid-template-columns:40px minmax(0,1fr) auto;
    grid-template-rows:42px 40px;
    gap:8px;
    padding:10px 0 12px!important;
    align-items:center;
  }
  .chat-v2-lobby .topbar .search{
    grid-column:2;
    grid-row:1;
    width:100%;
    max-width:none!important;
    min-width:0;
    height:42px;
    overflow:hidden;
  }
  .chat-v2-lobby .topbar .search input{min-width:0}
  .chat-v2-lobby .topbar .top-spacer{display:none!important}
  .chat-v2-lobby .topbar .ghost{
    grid-column:3;
    grid-row:1;
    display:inline-flex!important;
    height:40px;
    padding:0 12px;
    white-space:nowrap;
  }
  .chat-v2-lobby .topbar .primary{
    grid-column:1 / -1;
    grid-row:2;
    width:100%;
    height:40px;
    white-space:nowrap;
  }
}

@media(max-width:380px){
  .chat-v2-lobby .topbar{grid-template-columns:40px minmax(0,1fr) auto;gap:6px}
  .chat-v2-lobby .topbar .search{padding:0 10px;gap:7px}
  .chat-v2-lobby .topbar .search input,
  .chat-v2-lobby .topbar .ghost,
  .chat-v2-lobby .topbar .primary{font-size:12px!important}
  .chat-v2-lobby .topbar .ghost{padding:0 9px}
}
/* Geometry-stable lobby filters modelled on the reference navigation. */
html:has(body.chat-v2-lobby){scrollbar-gutter:stable;}
body.chat-v2-lobby{overflow-y:scroll;}
.chat-v2-lobby .filters{
  display:flex!important;
  flex-wrap:nowrap;
  align-items:center;
  gap:4px;
  min-height:36px;
  padding:0;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  overscroll-behavior-inline:contain;
  scrollbar-width:none;
  scroll-snap-type:none!important;
  scroll-behavior:auto!important;
  -webkit-overflow-scrolling:touch;
}
.chat-v2-lobby .filters::-webkit-scrollbar{display:none}
.chat-v2-lobby .filters .chip{
  appearance:none;
  -webkit-appearance:none;
  position:relative;
  isolation:isolate;
  display:inline-flex;
  flex:0 0 auto;
  align-items:center;
  justify-content:center;
  box-sizing:border-box;
  width:auto;
  min-width:0;
  height:36px;
  min-height:36px;
  margin:0;
  padding:0 12px!important;
  border:0!important;
  border-radius:999px;
  background:transparent!important;
  box-shadow:none!important;
  color:#9697a1;
  font:500 13px/1 "DM Sans",sans-serif;
  white-space:nowrap;
  cursor:pointer;
  transform:none!important;
  animation:none!important;
  scroll-snap-align:none!important;
  -webkit-tap-highlight-color:transparent;
  transition:color .15s ease!important;
}
.chat-v2-lobby .filters .chip::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  border-radius:inherit;
  background:#2e2e2e;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.035),0 7px 18px rgba(0,0,0,.18);
  opacity:0;
  pointer-events:none;
  transform:none!important;
  transition:none!important;
}
.chat-v2-lobby .filters .chip:hover{background:transparent!important;color:#dedee5;transform:none!important}
.chat-v2-lobby .filters .chip.active{background:transparent!important;color:#fff;transform:none!important}
.chat-v2-lobby .filters .chip.active::before{opacity:1}
.chat-v2-lobby .filters .chip.active:hover,
.chat-v2-lobby .filters .chip:active{background:transparent!important;color:#fff;transform:none!important}
.chat-v2-lobby .filters .chip:not(.active):active{background:transparent!important;color:#dedee5;transform:none!important}
.chat-v2-lobby .filters .chip:focus-visible{outline:2px solid #ff6d9f;outline-offset:3px}
@media(max-width:640px){
  .chat-v2-lobby .filters{gap:4px;padding:0;scroll-snap-type:none!important}
  .chat-v2-lobby .filters .chip{scroll-snap-align:none!important}
}
/* Dating chat mobile controls */
.chat-v2-theme .ct-scroll-bottom.ct-tooltip{
  position:absolute;
  right:18px;
  bottom:14px;
}
@media(max-width:480px){
  .chat-v2-theme .ct-quick-row{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:7px;
    overflow:visible;
    padding:0 0 7px;
  }
  .chat-v2-theme .ct-quick-row button{
    width:100%;
    min-width:0;
    min-height:38px;
    white-space:normal;
    text-align:center;
    line-height:1.3;
  }
  .chat-v2-theme .ct-quick-row button:last-child{grid-column:1 / -1}
  .chat-v2-theme .ct-scroll-bottom.ct-tooltip{right:10px;bottom:10px}
}

/* Unified OurDream-style authentication header v2 ? measured equivalent. */
.chat-auth-actions{
  display:flex;
  flex:0 0 auto;
  align-items:center;
  justify-content:flex-end;
  gap:8px;
  white-space:nowrap;
}
.chat-auth-link{
  height:36px;
  min-height:36px;
  padding:0 12px;
  border:0;
  border-radius:9999px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  color:#fff;
  font-family:"DM Sans",Arial,sans-serif;
  font-size:16px;
  font-weight:500;
  line-height:24px;
  letter-spacing:0;
  text-decoration:none;
  white-space:nowrap;
  box-shadow:none;
  transition:background-color .16s ease,box-shadow .16s ease,filter .16s ease,transform .16s ease;
}
.chat-auth-login{background:transparent;color:#fafafa}
.chat-auth-login:hover{background:rgba(255,255,255,.07);color:#fff}
.chat-auth-join{
  background:linear-gradient(0deg,rgb(255,28,172),rgb(253,95,194) 50%,rgb(255,121,209));
  color:#fff;
}
.chat-auth-join:hover{
  color:#fff;
  filter:saturate(1.08) brightness(1.04);
  box-shadow:0 7px 20px rgba(255,44,177,.22);
  transform:translateY(-1px);
}
.chat-auth-link:active{transform:translateY(0) scale(.98)}
.chat-auth-link:focus-visible{outline:2px solid rgba(255,255,255,.92);outline-offset:2px}

.chat-auth-header{
  position:sticky;
  top:0;
  z-index:2000;
  width:100%;
  min-width:0;
  flex:0 0 auto;
  height:56px;
  min-height:56px;
  padding:0 16px;
  display:flex;
  align-items:center;
  justify-content:flex-end;
  box-sizing:border-box;
  border:0;
  background:#08090d;
  box-shadow:none;
  backdrop-filter:blur(24px);
  -webkit-backdrop-filter:blur(24px);
}
@media(max-width:1180px){
  .chat-auth-header{padding-right:8px;padding-left:64px}
}



/* Roleplay composer and memory — Chat V2 polish */
.chat-v2-theme .main-char .main-char-input .submit-btn.AskBtn{
  position:relative!important;top:auto!important;right:auto!important;flex:0 0 46px!important;
  width:46px!important;height:46px!important;min-width:46px!important;padding:0!important;
  border:1px solid rgba(255,255,255,.13)!important;border-radius:50%!important;
  background:linear-gradient(135deg,#ff5f93 0%,#d85fe8 56%,#9b78ff 100%)!important;
  color:#fff!important;opacity:1!important;cursor:pointer!important;
  box-shadow:0 10px 28px rgba(201,83,190,.25),inset 0 1px rgba(255,255,255,.28)!important;
  transition:filter .16s ease,box-shadow .16s ease,border-color .16s ease!important;
}
.chat-v2-theme .main-char .main-char-input .submit-btn.AskBtn:hover{
  filter:brightness(1.07);border-color:rgba(255,190,216,.25)!important;
  box-shadow:0 12px 32px rgba(201,83,190,.34),inset 0 1px rgba(255,255,255,.34)!important;
}
.chat-v2-theme .main-char .main-char-input .submit-btn.AskBtn:active{filter:brightness(.98);transform:none!important}
.chat-v2-theme .main-char .main-char-input .submit-btn.AskBtn:focus-visible{outline:2px solid rgba(255,255,255,.92)!important;outline-offset:3px}
.chat-v2-theme .main-char .main-char-input .submit-btn.AskBtn svg{
  width:21px!important;height:21px!important;color:#fff!important;stroke-width:1.9!important;
  filter:drop-shadow(0 1px 3px rgba(53,10,58,.28));
}
.chat-v2-theme #memory_modal{
  padding:24px;background:rgba(5,6,10,.74)!important;
  backdrop-filter:blur(20px)!important;-webkit-backdrop-filter:blur(20px)!important;
}
.chat-v2-theme #memory_modal .mem-card{
  width:min(900px,calc(100vw - 48px))!important;max-width:900px!important;
  min-height:430px;background:linear-gradient(145deg,rgba(22,23,32,.96),rgba(10,11,17,.97))!important;
  border:1px solid rgba(255,255,255,.10)!important;border-radius:24px!important;
  box-shadow:0 34px 100px rgba(0,0,0,.64),inset 0 1px rgba(255,255,255,.035)!important;
  overflow:hidden;
}
.chat-v2-theme #memory_modal .mem-card:before{
  content:"";position:absolute;inset:0 0 auto;height:1px;pointer-events:none;
  background:linear-gradient(90deg,transparent,rgba(255,95,147,.72),rgba(155,120,255,.68),transparent);
}
.chat-v2-theme #memory_modal .mem-header{
  min-height:78px;padding:22px 76px 18px 28px!important;justify-content:flex-start!important;
  border-bottom:1px solid rgba(255,255,255,.07);
}
.chat-v2-theme #memory_modal .mem-title{
  max-width:100%;gap:11px!important;color:#f7f4fa!important;font-size:clamp(19px,2.4vw,25px)!important;
  font-weight:760!important;line-height:1.2!important;letter-spacing:-.015em!important;text-transform:none!important;
}
.chat-v2-theme #memory_modal .mem-title svg{width:24px!important;height:24px!important;color:#ff79a8;filter:drop-shadow(0 0 12px rgba(255,95,147,.24))}
.chat-v2-theme #memory_modal .mem-close{
  right:22px!important;width:38px!important;height:38px!important;border-radius:50%!important;
  border:1px solid rgba(255,255,255,.11)!important;background:rgba(255,255,255,.035)!important;
  color:#989aa7!important;font-size:22px!important;
}
.chat-v2-theme #memory_modal .mem-close:hover{background:rgba(255,95,147,.10)!important;border-color:rgba(255,95,147,.24)!important;color:#fff!important}
.chat-v2-theme #memory_modal .mem-body{min-height:300px;max-height:58vh!important;background:rgba(8,9,14,.34)}
.chat-v2-theme #memory_modal .mem-body:has(>.mem-left:only-child){display:grid!important;place-items:center!important;padding:28px!important}
.chat-v2-theme #memory_modal .mem-body>.mem-left:only-child{
  width:min(100%,440px)!important;min-height:220px;padding:34px 32px!important;border:1px solid rgba(255,255,255,.075)!important;
  border-radius:20px;background:linear-gradient(145deg,rgba(255,95,147,.055),rgba(155,120,255,.045))!important;
}
.chat-v2-theme #memory_modal .mem-ink-icon{width:58px!important;height:58px!important;color:#c694ff!important;opacity:.76!important}
.chat-v2-theme #memory_modal .mem-left-title{
  max-width:310px!important;margin-bottom:10px!important;color:#ff9aba!important;
  font-size:14px!important;font-weight:750!important;line-height:1.45!important;letter-spacing:.025em!important;text-transform:none!important;
}
.chat-v2-theme #memory_modal .mem-left-sub{max-width:330px!important;color:#a6a8b4!important;font-size:13px!important;line-height:1.65!important}
.chat-v2-theme #memory_modal .mem-left:not(:only-child){border-right-color:rgba(255,255,255,.07)!important;background:rgba(255,255,255,.012)}
.chat-v2-theme #memory_modal .mem-summary-icon{color:#c694ff!important;opacity:.9!important}
.chat-v2-theme #memory_modal .mem-summary-title{color:#e6dafa!important}
.chat-v2-theme #memory_modal .mem-list{gap:10px!important}
.chat-v2-theme #memory_modal .mem-item{
  background:rgba(255,255,255,.035)!important;border:1px solid rgba(255,255,255,.075)!important;
  border-radius:14px!important;padding:16px 18px!important;
}
.chat-v2-theme #memory_modal .mem-item-key{color:#ff9aba!important;letter-spacing:.07em!important}
.chat-v2-theme #memory_modal .mem-item-val{color:#d8d8df!important;font-size:14px!important;line-height:1.7!important;letter-spacing:0!important}
.chat-v2-theme #memory_modal .mem-footer{
  min-height:72px;padding:13px 22px 17px!important;border-top:1px solid rgba(255,255,255,.065);
  background:linear-gradient(180deg,rgba(10,11,17,.2),rgba(10,11,17,.72));
}
.chat-v2-theme #memory_modal #mem_summarize_btn{
  min-width:168px;height:44px;padding:0 22px!important;border:1px solid rgba(255,135,179,.18)!important;
  border-radius:14px!important;background:linear-gradient(110deg,#ff5f93,#db5fe9 55%,#9b78ff)!important;
  color:#fff!important;font-size:13px!important;font-weight:750!important;
  box-shadow:0 10px 28px rgba(201,83,190,.22),inset 0 1px rgba(255,255,255,.24)!important;
  transition:filter .16s ease,box-shadow .16s ease!important;
}
.chat-v2-theme #memory_modal #mem_summarize_btn:hover:not(:disabled){
  filter:brightness(1.07);box-shadow:0 12px 34px rgba(201,83,190,.31),inset 0 1px rgba(255,255,255,.28)!important;
}
.chat-v2-theme #memory_modal #mem_summarize_btn:disabled{filter:saturate(.5);opacity:.46!important;cursor:not-allowed!important}
.chat-v2-theme #memory_modal #mem_slot_detail{
  background:rgba(12,13,20,.94)!important;border-radius:24px!important;
  backdrop-filter:blur(22px)!important;-webkit-backdrop-filter:blur(22px)!important;
}
.chat-v2-theme #memory_modal .mem-detail-key-label{color:#ff9aba!important;letter-spacing:.08em!important}
.chat-v2-theme #memory_modal .mem-detail-back{border-color:rgba(255,95,147,.18)!important;background:rgba(255,95,147,.08)!important;color:#ffd2e1!important}
@media(max-width:640px){
  .chat-v2-theme .main-char .main-char-input .submit-btn.AskBtn{flex-basis:44px!important;width:44px!important;height:44px!important;min-width:44px!important}
  .chat-v2-theme #memory_modal{padding:12px!important;align-items:center!important}
  .chat-v2-theme #memory_modal .mem-card{width:calc(100vw - 24px)!important;max-height:calc(100dvh - 24px);min-height:0;border-radius:20px!important}
  .chat-v2-theme #memory_modal .mem-header{min-height:68px;padding:18px 60px 15px 18px!important}
  .chat-v2-theme #memory_modal .mem-title{font-size:18px!important;gap:9px!important}
  .chat-v2-theme #memory_modal .mem-close{right:15px!important;width:36px!important;height:36px!important}
  .chat-v2-theme #memory_modal .mem-body{min-height:260px;max-height:calc(100dvh - 176px)!important}
  .chat-v2-theme #memory_modal .mem-body:has(>.mem-left:only-child){padding:16px!important}
  .chat-v2-theme #memory_modal .mem-body>.mem-left:only-child{min-height:200px;padding:28px 20px!important;border-radius:16px!important}
  .chat-v2-theme #memory_modal .mem-footer{min-height:64px;padding:10px 14px 13px!important}
  .chat-v2-theme #memory_modal #mem_summarize_btn{width:100%;min-width:0;height:43px}
}

/* RP Memory uses the same compact right-side interaction pattern as the Dating profile panel. */
body.chat-v2-theme.memory-drawer-open{overflow:hidden!important}
.chat-v2-theme #memory_modal{
  display:block!important;
  position:fixed!important;
  inset:0!important;
  padding:0!important;
  background:transparent!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transition:opacity .22s ease,visibility 0s linear .28s;
}
.chat-v2-theme #memory_modal:before{
  content:"";
  position:absolute;
  inset:0;
  background:rgba(3,3,10,.58);
  backdrop-filter:blur(4px);
  -webkit-backdrop-filter:blur(4px);
}
.chat-v2-theme #memory_modal.mem-show{
  display:block!important;
  opacity:1;
  visibility:visible;
  pointer-events:auto;
  transition:opacity .22s ease;
}
.chat-v2-theme #memory_modal .mem-card{
  position:absolute!important;
  top:0!important;
  right:0!important;
  bottom:0!important;
  width:min(460px,calc(100vw - 20px))!important;
  max-width:none!important;
  min-height:0!important;
  height:100dvh!important;
  border-radius:22px 0 0 22px!important;
  border-right:0!important;
  transform:translateX(101%);
  transition:transform .28s cubic-bezier(.22,.75,.2,1)!important;
  z-index:1;
}
.chat-v2-theme #memory_modal.mem-show .mem-card{transform:translateX(0)}
.chat-v2-theme #memory_modal .mem-header{
  flex:0 0 auto;
  min-height:72px!important;
  padding:17px 62px 17px 23px!important;
  justify-content:flex-start!important;
}
.chat-v2-theme #memory_modal .mem-title{
  min-width:0;
  font-size:20px!important;
  letter-spacing:0!important;
}
.chat-v2-theme #memory_modal .mem-title span{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.chat-v2-theme #memory_modal .mem-close{right:17px!important}
.chat-v2-theme #memory_modal .mem-body{
  flex:1 1 auto!important;
  min-height:0!important;
  max-height:none!important;
  overflow-y:auto!important;
  background:rgba(8,9,14,.34)!important;
}
.chat-v2-theme #memory_modal .mem-body>.mem-left:not(:only-child){
  width:auto!important;
  border-right:0!important;
  border-bottom:1px solid rgba(255,255,255,.07)!important;
}
.chat-v2-theme #memory_modal .mem-body>.mem-left:only-child{
  width:calc(100% - 34px)!important;
  min-height:220px!important;
  margin:auto!important;
  box-sizing:border-box!important;
}
.chat-v2-theme #memory_modal .mem-right{width:auto!important;min-height:0!important}
.chat-v2-theme #memory_modal .mem-list{padding:20px 18px 28px!important}
.chat-v2-theme #memory_modal .mem-footer{
  flex:0 0 auto;
  min-height:70px!important;
  padding:12px 18px 16px!important;
}
.chat-v2-theme #memory_modal #mem_summarize_btn{width:100%;min-width:0!important}
.chat-v2-theme #memory_modal #mem_slot_detail{border-radius:22px 0 0 22px!important}
@media(max-width:640px){
  .chat-v2-theme #memory_modal .mem-card{
    width:calc(100vw - 10px)!important;
    border-radius:18px 0 0 18px!important;
  }
  .chat-v2-theme #memory_modal .mem-header{min-height:68px!important;padding:15px 56px 15px 18px!important}
  .chat-v2-theme #memory_modal .mem-title{font-size:18px!important}
  .chat-v2-theme #memory_modal .mem-close{right:13px!important;width:36px!important;height:36px!important}
  .chat-v2-theme #memory_modal .mem-body>.mem-left:only-child{width:calc(100% - 24px)!important;min-height:200px!important}
  .chat-v2-theme #memory_modal #mem_slot_detail{border-radius:18px 0 0 18px!important}
}

/* Dating chat tools menu - Chat V2 pink-violet glass refresh */
.chat-v2-theme .ct-plus.open{
  transform:none!important;
  background:linear-gradient(135deg,rgba(255,95,147,.17),rgba(155,120,255,.16))!important;
  border-color:rgba(219,95,233,.38)!important;
  color:#ffabd0!important;
  box-shadow:0 0 0 1px rgba(255,95,147,.08),0 10px 28px rgba(117,55,151,.20),inset 0 1px 0 rgba(255,255,255,.08)!important;
}
.chat-v2-theme .ct-plus.open svg{filter:drop-shadow(0 0 8px rgba(255,95,147,.24))}
.chat-v2-theme .ct-plus-menu{
  overflow:hidden;
  isolation:isolate;
  border-color:rgba(205,127,255,.23)!important;
  background:
    radial-gradient(circle at 12% -18%,rgba(255,95,147,.16),transparent 43%),
    radial-gradient(circle at 102% 116%,rgba(155,120,255,.15),transparent 46%),
    linear-gradient(145deg,rgba(18,17,29,.985),rgba(8,9,16,.985))!important;
  box-shadow:0 24px 62px rgba(0,0,0,.60),0 10px 34px rgba(137,74,197,.11),inset 0 1px 0 rgba(255,255,255,.055)!important;
}
.chat-v2-theme .ct-plus-menu:before{
  content:"";
  position:absolute;
  z-index:-1;
  inset:0 16px auto;
  height:1px;
  pointer-events:none;
  background:linear-gradient(90deg,transparent,rgba(255,120,177,.62),rgba(181,127,255,.56),transparent);
}
.chat-v2-theme .ct-plus-menu>button{
  box-sizing:border-box;
  border:1px solid transparent!important;
  color:#eceaf1!important;
  transition:background-color .16s ease,border-color .16s ease,color .16s ease,box-shadow .16s ease!important;
}
.chat-v2-theme .ct-plus-menu>button+button{margin-top:2px}
.chat-v2-theme .ct-plus-menu>button:hover,
.chat-v2-theme .ct-plus-menu>button:focus-visible{
  transform:none!important;
  background:linear-gradient(100deg,rgba(255,95,147,.105),rgba(155,120,255,.085))!important;
  border-color:rgba(221,135,255,.16)!important;
  color:#fff!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025)!important;
}
.chat-v2-theme .ct-plus-menu>button:active{
  transform:none!important;
  background:linear-gradient(100deg,rgba(255,95,147,.14),rgba(155,120,255,.11))!important;
}
.chat-v2-theme .ct-plus-menu>button>span{
  box-sizing:border-box;
  border:1px solid rgba(222,154,255,.15)!important;
  background:linear-gradient(145deg,rgba(255,95,147,.16),rgba(155,120,255,.14))!important;
  color:#ff9fc2!important;
  font-weight:700;
  text-shadow:0 0 13px rgba(255,95,147,.22);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.055),0 7px 20px rgba(73,34,94,.13)!important;
  transition:border-color .16s ease,background .16s ease,color .16s ease,box-shadow .16s ease!important;
}
.chat-v2-theme .ct-plus-menu>button:nth-child(2)>span{color:#ddbfff!important}
.chat-v2-theme .ct-plus-menu>button:nth-child(3)>span{color:#cbbcff!important}
.chat-v2-theme .ct-plus-menu>button:nth-child(4)>span{color:#ffadd5!important}
.chat-v2-theme .ct-plus-menu>button:hover>span,
.chat-v2-theme .ct-plus-menu>button:focus-visible>span{
  border-color:rgba(233,163,255,.27)!important;
  background:linear-gradient(145deg,rgba(255,95,147,.22),rgba(155,120,255,.20))!important;
  color:#ffd2e5!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.09),0 8px 24px rgba(108,51,139,.18)!important;
}
.chat-v2-theme .ct-plus-menu strong{color:#f7f4fa!important;font-weight:720!important;letter-spacing:-.005em}
.chat-v2-theme .ct-plus-menu small{color:#a6a8b4!important}
@media(max-width:640px){
  .chat-v2-theme .ct-plus-menu{border-radius:18px!important;padding:9px!important}
  .chat-v2-theme .ct-plus-menu>button{min-height:62px;padding:10px!important;border-radius:12px!important}
  .chat-v2-theme .ct-plus-menu>button>span{width:40px;height:40px;border-radius:12px!important}
}
/* End dating chat tools menu refresh */

/* Auth state dropdown - shared across Explore and Character Builder. */
.chat-auth-account{
  position:relative;
  z-index:60;
  display:flex;
  min-width:0;
  max-width:min(100%,260px);
  align-items:center;
  justify-content:flex-end;
}
.chat-auth-account-btn{
  width:auto;
  min-width:0;
  max-width:100%;
  height:42px;
  min-height:42px;
  display:inline-flex;
  align-items:center;
  gap:9px;
  padding:0 12px 0 6px;
  border:1px solid rgba(255,255,255,.11);
  border-radius:999px;
  background:rgba(18,18,25,.58);
  color:#f4f1f7;
  font:750 12px/1 "Manrope",sans-serif;
  letter-spacing:.035em;
  text-transform:uppercase;
  cursor:pointer;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.07),0 10px 28px rgba(0,0,0,.18);
  backdrop-filter:blur(18px) saturate(1.12);
  -webkit-backdrop-filter:blur(18px) saturate(1.12);
  transition:border-color .16s ease,background .16s ease,box-shadow .16s ease;
}
.chat-auth-account-btn:hover,
.chat-auth-account.is-open .chat-auth-account-btn{
  border-color:rgba(255,130,192,.31);
  background:rgba(31,25,38,.74);
  color:#fff;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.09),0 12px 32px rgba(0,0,0,.24),0 0 0 1px rgba(219,95,233,.04);
}
.chat-auth-account-btn:focus-visible,
.chat-auth-menu [role="menuitem"]:focus-visible{
  outline:2px solid rgba(255,125,184,.94);
  outline-offset:2px;
}
.chat-auth-account-btn .chat-auth-chevron{
  width:15px;
  height:15px;
  flex:0 0 auto;
  fill:none;
  stroke:currentColor;
  stroke-width:2;
  stroke-linecap:round;
  stroke-linejoin:round;
  opacity:.68;
  transition:transform .16s ease;
}
.chat-auth-account.is-open .chat-auth-chevron{transform:rotate(180deg)}
.chat-auth-avatar{
  width:30px;
  height:30px;
  flex:0 0 auto;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:linear-gradient(135deg,#ff6fa0 0%,#da5de8 56%,#9b78ff 100%);
  color:#fff;
  box-shadow:0 0 0 1px rgba(255,255,255,.16),0 8px 22px rgba(219,95,233,.21);
  font:800 13px/1 "Manrope",sans-serif;
  letter-spacing:0;
}
.chat-auth-name{
  min-width:0;
  max-width:150px;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.chat-auth-menu{
  position:absolute;
  top:calc(100% + 9px);
  right:0;
  width:356px;
  max-width:calc(100vw - 24px);
  padding:10px;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.105);
  border-radius:20px;
  background:linear-gradient(150deg,rgba(27,24,34,.965),rgba(12,13,19,.985) 68%);
  box-shadow:0 26px 68px rgba(0,0,0,.5),inset 0 1px 0 rgba(255,255,255,.065);
  color:#f6f3f8;
  backdrop-filter:blur(28px) saturate(1.18);
  -webkit-backdrop-filter:blur(28px) saturate(1.18);
  transform-origin:top right;
}
.chat-auth-account.is-open .chat-auth-menu{animation:chat-account-menu-in .15s cubic-bezier(.2,.8,.2,1)}
.chat-auth-menu[hidden]{display:none!important}
@keyframes chat-account-menu-in{
  from{opacity:0;transform:translateY(-5px) scale(.985)}
  to{opacity:1;transform:translateY(0) scale(1)}
}
.chat-auth-identity{
  min-width:0;
  display:grid;
  grid-template-columns:38px minmax(0,1fr);
  align-items:center;
  gap:11px;
  padding:5px 6px 11px;
}
.chat-auth-avatar-large{width:38px;height:38px;font-size:15px}
.chat-auth-identity-copy{
  min-width:0;
  display:flex;
  flex:1 1 auto;
  flex-direction:column;
  gap:4px;
}
.chat-auth-identity-copy strong,
.chat-auth-identity-copy small{
  display:block;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.chat-auth-identity-copy strong{color:#fff;font:750 14px/1.2 "Manrope",sans-serif}
.chat-auth-identity-copy small{color:#999ba8;font:500 11px/1.2 "DM Sans",sans-serif}
.chat-auth-credit-breakdown{
  min-width:0;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:6px;
  padding:7px;
  border:1px solid rgba(255,255,255,.075);
  border-radius:15px;
  background:linear-gradient(145deg,rgba(255,255,255,.035),rgba(255,255,255,.014));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025);
}
.chat-auth-credit-unit{
  min-width:0;
  min-height:57px;
  display:grid;
  grid-template-columns:25px minmax(0,1fr);
  align-items:center;
  gap:6px;
  padding:7px 6px;
  border:1px solid rgba(255,255,255,.055);
  border-radius:11px;
  background:rgba(255,255,255,.025);
  color:inherit;
  text-decoration:none;
  cursor:pointer;
  transition:background-color .16s ease,border-color .16s ease,transform .16s ease;
}
.chat-auth-credit-unit:hover,
.chat-auth-credit-unit:focus-visible{
  border-color:rgba(255,139,199,.28);
  background:rgba(255,255,255,.055);
  color:inherit;
  outline:none;
  transform:translateY(-1px);
}
.chat-auth-credit-unit-icon{width:25px;height:25px;display:grid;place-items:center;border-radius:8px;background:rgba(255,255,255,.055)}
.chat-auth-credit-unit.is-image .chat-auth-credit-unit-icon{color:#ff91c1;background:rgba(255,92,167,.095)}
.chat-auth-credit-unit.is-message .chat-auth-credit-unit-icon{color:#cba5ff;background:rgba(168,110,255,.095)}
.chat-auth-credit-unit.is-video .chat-auth-credit-unit-icon{color:#9fc7ff;background:rgba(106,160,255,.09)}
.chat-auth-credit-unit-icon svg,
.chat-auth-menu-item>svg{
  width:19px;
  height:19px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.75;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.chat-auth-credit-unit-copy{min-width:0;min-height:25px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;text-align:center}
.chat-auth-credit-unit-copy small{display:block;min-height:0;overflow:visible;color:#8f919d;font:600 7.2px/1 "DM Sans",sans-serif;text-align:center;text-transform:uppercase;letter-spacing:.02em;white-space:normal}
.chat-auth-credit-unit-copy strong{display:block;overflow:hidden;color:#f3f0f5;font:800 10.5px/1 "Manrope",sans-serif;text-align:center;text-overflow:ellipsis;white-space:nowrap}
.chat-auth-credit-unit-copy strong.is-infinite{font-size:17px;line-height:.82;letter-spacing:0}
.chat-auth-credit-unit.is-video .chat-auth-credit-unit-copy strong{color:#bad5ff}
.chat-auth-credits-link{
  grid-column:1/-1;
  min-height:36px;
  display:grid!important;
  grid-template-columns:25px minmax(0,1fr) 14px;
  align-items:center;
  gap:8px;
  padding:0 10px!important;
  border:1px solid rgba(255,117,188,.16)!important;
  border-radius:11px!important;
  background:linear-gradient(135deg,rgba(255,91,169,.08),rgba(159,105,255,.075))!important;
  color:#e9dce7!important;
  font:700 11.5px/1 "Manrope",sans-serif!important;
  transition:background-color .16s ease,border-color .16s ease,color .16s ease,transform .16s ease;
}
.chat-auth-credits-link:hover,.chat-auth-credits-link:focus-visible{border-color:rgba(255,139,199,.36)!important;background:linear-gradient(135deg,rgba(255,91,169,.15),rgba(159,105,255,.13))!important;color:#fff!important;transform:translateY(-1px)}
.chat-auth-credits-link-icon{width:25px;height:25px;display:grid;place-items:center;border-radius:8px;color:#ff91c1;background:rgba(255,92,167,.09)}
.chat-auth-credits-link-icon svg,.chat-auth-credits-link-arrow{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.chat-auth-credits-link-arrow{width:14px;height:14px;opacity:.42}
.chat-auth-menu-divider{height:1px;margin:9px 5px 7px;background:rgba(255,255,255,.075)}
.chat-auth-menu-item{
  width:100%;
  min-height:42px;
  display:grid!important;
  grid-template-columns:20px minmax(0,1fr) 15px;
  align-items:center;
  gap:10px;
  padding:0 10px!important;
  border:0!important;
  border-radius:12px!important;
  background:transparent!important;
  color:#d7d6df!important;
  text-align:left!important;
  font:650 13px/1.25 "Manrope",sans-serif!important;
  cursor:pointer;
}
.chat-auth-menu-item:hover,
.chat-auth-menu-item:focus-visible{background:rgba(255,255,255,.064)!important;color:#fff!important}
.chat-auth-menu-item span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.chat-auth-menu-item .chat-auth-item-arrow{width:15px;height:15px;opacity:.37}
.chat-auth-logout{grid-template-columns:20px minmax(0,1fr);margin-top:3px;color:#ffacc7!important}
.chat-auth-logout:hover,
.chat-auth-logout:focus-visible{background:rgba(255,81,134,.09)!important;color:#ffc2d4!important}
@media(max-width:640px){
  .chat-auth-account{max-width:calc(100vw - 78px)}
  .chat-auth-account-btn{height:38px;min-height:38px;padding-right:9px;gap:7px}
  .chat-auth-name{max-width:88px}
  .chat-auth-avatar{width:27px;height:27px;font-size:12px}
  .chat-auth-avatar-large{width:38px;height:38px;font-size:15px}
  .chat-auth-menu{right:0;width:min(356px,calc(100vw - 20px));max-width:calc(100vw - 20px)}
  .chat-auth-identity{grid-template-columns:38px minmax(0,1fr);gap:8px}
  .chat-auth-credit-breakdown{gap:5px;padding:6px}
  .chat-auth-credit-unit{grid-template-columns:23px minmax(0,1fr);gap:5px;padding-left:5px;padding-right:5px}
  .chat-auth-credit-unit-icon{width:23px;height:23px}
  .chat-auth-credit-unit-copy{min-height:23px}
  .chat-auth-credit-unit-icon svg{width:16px;height:16px}
  .chat-auth-credit-unit-copy small{font-size:7px}
  .chat-auth-credit-unit-copy strong{font-size:10px}
}
@media(prefers-reduced-motion:reduce){
  .chat-auth-account.is-open .chat-auth-menu{animation:none}
  .chat-auth-account-btn .chat-auth-chevron{transition:none}
}
.chat-v2-theme .ct-send{border-color:rgba(255,255,255,.14)!important;background:#f7f5f8!important;color:#11131a!important;box-shadow:0 8px 20px rgba(0,0,0,.18),inset 0 1px rgba(255,255,255,.78)!important;opacity:1!important}.chat-v2-theme .ct-send:hover:not(:disabled){background:#fff!important;color:#090a0e!important}.chat-v2-theme .ct-send:disabled{border-color:rgba(255,255,255,.08)!important;background:rgba(255,255,255,.085)!important;color:rgba(255,255,255,.36)!important;box-shadow:none!important;cursor:default!important;opacity:1!important}.chat-v2-theme .main-char .main-char-input .submit-btn.AskBtn{border-color:rgba(255,255,255,.08)!important;background:rgba(255,255,255,.085)!important;color:rgba(255,255,255,.36)!important;box-shadow:none!important;cursor:default!important;opacity:1!important}.chat-v2-theme .main-char .main-char-input .submit-btn.AskBtn.is-ready{border-color:rgba(255,255,255,.14)!important;background:#f7f5f8!important;color:#11131a!important;box-shadow:0 8px 20px rgba(0,0,0,.18),inset 0 1px rgba(255,255,255,.78)!important;cursor:pointer!important}.chat-v2-theme .main-char .main-char-input .submit-btn.AskBtn.is-ready:hover{background:#fff!important;color:#090a0e!important;filter:none!important}.chat-v2-theme .main-char .main-char-input .submit-btn.AskBtn svg{color:currentColor!important;filter:none!important}@media(max-width:640px){.chat-auth-account-btn{height:38px;padding-right:10px}.chat-auth-name{max-width:92px}.chat-auth-avatar{width:27px;height:27px}.chat-auth-menu{right:0;min-width:164px}.chat-auth-header .chat-auth-account{max-width:calc(100vw - 84px)}}


/* Unified Roleplay composer: same visual system as Dating chat - 2026-08-02 */
.chat-v2-theme .main-char .main-char-input.rp-composer-enabled{
  padding:0!important;
  background:linear-gradient(to top,rgba(0,0,7,.98) 0%,rgba(0,0,8,.90) 62%,rgba(2,2,13,.58) 100%)!important;
  border-top:1px solid rgba(255,255,255,.045)!important;
  box-shadow:0 -16px 38px rgba(0,0,0,.18)!important;
}
.chat-v2-theme .main-char .rp-compose-shell{
  display:block!important;width:100%!important;min-width:0!important;
  padding:8px clamp(12px,2.7vw,28px) 10px!important;margin:0!important;
  border:0!important;background:transparent!important;box-shadow:none!important;
}
.chat-v2-theme .main-char .rp-compose-shell,
.chat-v2-theme .main-char .rp-compose-shell *{box-sizing:border-box!important}
.chat-v2-theme .main-char .rp-compose-shell>*{width:min(100%,720px)!important;margin-left:auto!important;margin-right:auto!important}
.chat-v2-theme .main-char .rp-compose-shell .ct-quick-row{display:flex!important;gap:8px!important;overflow-x:auto!important;padding:0 45px 9px!important;scrollbar-width:none!important}
.chat-v2-theme .main-char .rp-compose-shell .ct-quick-row::-webkit-scrollbar{display:none!important}
.chat-v2-theme .main-char .rp-compose-shell .ct-quick-row button{
  flex:0 0 auto!important;min-height:34px!important;padding:7px 12px!important;
  border:1px solid rgba(255,255,255,.095)!important;border-radius:999px!important;
  background:rgba(17,17,25,.70)!important;color:rgba(255,255,255,.66)!important;
  font:600 11.5px/1.25 "Manrope",sans-serif!important;white-space:nowrap!important;cursor:pointer!important;
  transition:background .15s,border-color .15s,color .15s!important;
}
.chat-v2-theme .main-char .rp-compose-shell .ct-quick-row button:hover,
.chat-v2-theme .main-char .rp-compose-shell .ct-quick-row button:focus-visible{border-color:rgba(219,95,233,.28)!important;background:rgba(255,95,147,.10)!important;color:#ff9aba!important;outline:0!important}
.chat-v2-theme .main-char .rp-compose{
  min-height:48px!important;display:grid!important;grid-template-columns:minmax(0,1fr) 46px 44px!important;
  align-items:center!important;gap:8px!important;padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important;
}
.chat-v2-theme .main-char .rp-compose .ct-profile-shortcut{
  width:44px!important;height:44px!important;min-width:44px!important;min-height:44px!important;margin:0!important;padding:0!important;
  border:1px solid rgba(255,255,255,.09)!important;border-radius:50%!important;
  background:rgba(20,20,27,.72)!important;color:rgba(255,255,255,.66)!important;
  display:inline-flex!important;align-items:center!important;justify-content:center!important;cursor:pointer!important;
}
.chat-v2-theme .main-char .rp-compose .ct-profile-shortcut:hover{background:rgba(255,255,255,.07)!important;border-color:rgba(255,255,255,.14)!important;color:#fff!important}
.chat-v2-theme .main-char .rp-compose .ct-profile-shortcut>svg{width:22px!important;height:22px!important;flex:none!important}
.chat-v2-theme .main-char .rp-compose #AskContent{
  grid-column:auto!important;display:block!important;width:100%!important;min-width:0!important;
  height:48px!important;min-height:48px!important;max-height:140px!important;margin:0!important;
  padding:12px 17px 10px!important;resize:none!important;overflow-y:auto!important;
  border:1px solid rgba(255,255,255,.11)!important;border-radius:24px!important;outline:0!important;
  background:#1d1d20!important;color:rgba(248,245,240,.94)!important;
  font:500 14px/1.55 "Manrope",sans-serif!important;box-sizing:border-box!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.02)!important;scrollbar-width:thin!important;
}
.chat-v2-theme .main-char .rp-compose #AskContent:focus{border-color:rgba(255,255,255,.10)!important;background:#1d1d20!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.025)!important}
.chat-v2-theme .main-char .rp-compose #AskContent::placeholder{color:rgba(255,255,255,.49)!important;opacity:1!important}
.chat-v2-theme .main-char .rp-compose .submit-btn.AskBtn{
  width:46px!important;height:46px!important;min-width:46px!important;min-height:46px!important;flex-basis:46px!important;
  margin:0!important;padding:0!important;border-radius:50%!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;
}
.chat-v2-theme .main-char .rp-compose .submit-btn.AskBtn svg{width:24px!important;height:24px!important;transform:rotate(-2deg)!important;stroke-width:1.75!important}
.chat-v2-theme .main-char .rp-compose-note{display:flex!important;align-items:center!important;justify-content:space-between!important;padding:6px 48px 0!important;color:rgba(255,255,255,.48)!important;font:500 10.5px/1.3 "Manrope",sans-serif!important}
.chat-v2-theme .main-char .rp-compose .more .list{bottom:52px!important;top:auto!important;left:0!important;transform:none!important}
@media(max-width:768px){
  .chat-v2-theme .main-char .rp-compose{grid-template-columns:minmax(0,1fr) 44px 44px!important;gap:6px!important}
  .chat-v2-theme .main-char .rp-compose #AskContent{height:46px!important;min-height:46px!important;padding:11px 15px 9px!important}
  .chat-v2-theme .main-char .rp-compose .submit-btn.AskBtn{width:44px!important;height:44px!important;min-width:44px!important;min-height:44px!important;flex-basis:44px!important}
  .chat-v2-theme .main-char .rp-compose-note{padding-right:46px!important;font-size:10px!important}
}
@media(max-width:480px){
  .chat-v2-theme .main-char .rp-compose-shell{padding:7px 8px 8px!important}
  .chat-v2-theme .main-char .rp-compose-shell .ct-quick-row{display:flex!important;grid-template-columns:none!important;gap:7px!important;overflow-x:auto!important;overflow-y:hidden!important;padding:0 43px 7px!important;scrollbar-width:none!important}
  .chat-v2-theme .main-char .rp-compose-shell .ct-quick-row button{width:auto!important;min-width:max-content!important;min-height:34px!important;padding:7px 10px!important;font-size:10.5px!important;white-space:nowrap!important;text-align:center!important;line-height:1.25!important}
  .chat-v2-theme .main-char .rp-compose-shell .ct-quick-row button:last-child{grid-column:auto!important}
  .chat-v2-theme .main-char .rp-compose{grid-template-columns:minmax(0,1fr) 44px 44px!important;gap:6px!important}
  .chat-v2-theme .main-char .rp-compose .ct-profile-shortcut{width:44px!important;height:44px!important;min-width:44px!important;min-height:44px!important}
  .chat-v2-theme .main-char .rp-compose .submit-btn.AskBtn{width:44px!important;height:44px!important;min-width:44px!important;min-height:44px!important;flex-basis:44px!important}
  .chat-v2-theme .main-char .rp-compose #AskContent{height:46px!important;min-height:46px!important;padding:11px 15px 9px!important;font-size:14px!important}
  .chat-v2-theme .main-char .rp-compose-note{justify-content:flex-end!important;padding:5px 46px 0!important;font-size:10px!important}
  .chat-v2-theme .main-char .rp-compose-note span:first-child{display:none!important}
}


/* Scene-aware AI suggested replies - 2026-08-03 */
.chat-v2-theme .main-char .rp-compose-shell .rp-suggest-row{
  display:block!important;overflow:visible!important;padding:0 45px 9px!important;
}
.chat-v2-theme .main-char .rp-suggest-meta{
  min-height:23px;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:0 2px 5px;
}
.chat-v2-theme .main-char .rp-suggest-title{
  display:inline-flex;align-items:center;gap:6px;color:rgba(255,255,255,.55);font:700 10.5px/1.2 "Manrope",sans-serif;letter-spacing:.02em;
}
.chat-v2-theme .main-char .rp-suggest-title svg{width:14px;height:14px;fill:#f17bc5;filter:drop-shadow(0 0 7px rgba(241,93,191,.3))}
.chat-v2-theme .main-char .rp-suggest-refresh{
  width:27px!important;height:27px!important;min-width:27px!important;min-height:27px!important;padding:0!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;
  border:1px solid rgba(255,255,255,.08)!important;border-radius:50%!important;background:rgba(255,255,255,.035)!important;color:rgba(255,255,255,.55)!important;cursor:pointer!important;
  transition:background .15s,border-color .15s,color .15s!important;
}
.chat-v2-theme .main-char .rp-suggest-refresh:hover:not(:disabled),
.chat-v2-theme .main-char .rp-suggest-refresh:focus-visible{background:rgba(243,92,184,.1)!important;border-color:rgba(243,112,194,.24)!important;color:#ff9fce!important;outline:0!important}
.chat-v2-theme .main-char .rp-suggest-refresh:disabled{cursor:default!important;opacity:.72!important}
.chat-v2-theme .main-char .rp-suggest-refresh svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.chat-v2-theme .main-char .rp-suggest-refresh.is-spinning svg{animation:rp-suggest-spin 1s linear infinite}
.chat-v2-theme .main-char .rp-suggest-options{display:flex;gap:8px;overflow-x:auto;overflow-y:hidden;padding:0 1px 1px;scrollbar-width:none}
.chat-v2-theme .main-char .rp-suggest-options::-webkit-scrollbar{display:none}
.chat-v2-theme .main-char .rp-compose-shell .rp-suggest-option{
  position:relative;isolation:isolate;flex:1 1 0!important;min-width:150px!important;min-height:38px!important;padding:8px 30px 8px 12px!important;
  display:flex!important;align-items:center!important;border:1px solid rgba(255,255,255,.09)!important;border-radius:13px!important;
  background:linear-gradient(135deg,rgba(45,31,53,.82),rgba(26,24,35,.82))!important;color:rgba(255,255,255,.76)!important;
  box-shadow:inset 0 1px rgba(255,255,255,.025)!important;font:650 11px/1.25 "Manrope",sans-serif!important;white-space:normal!important;text-align:left!important;cursor:pointer!important;
  transition:border-color .16s,background .16s,color .16s,transform .16s!important;overflow:hidden!important;
}
.chat-v2-theme .main-char .rp-compose-shell .rp-suggest-option:hover:not(:disabled),
.chat-v2-theme .main-char .rp-compose-shell .rp-suggest-option:focus-visible{
  border-color:rgba(242,105,189,.28)!important;background:linear-gradient(135deg,rgba(71,36,66,.92),rgba(38,27,46,.9))!important;color:#ffd4e9!important;outline:0!important;transform:translateY(-1px)!important;
}
.chat-v2-theme .main-char .rp-suggest-option>span{position:relative;z-index:1;display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.chat-v2-theme .main-char .rp-suggest-option>svg{position:absolute;right:10px;top:50%;width:15px;height:15px;transform:translateY(-50%);fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;opacity:.5}
.chat-v2-theme .main-char .rp-suggest-option:disabled{cursor:default!important;color:rgba(255,255,255,.4)!important;transform:none!important}
.chat-v2-theme .main-char .rp-suggest-option.is-loading:before{
  content:"";position:absolute;inset:0;z-index:0;background:linear-gradient(105deg,transparent 20%,rgba(255,255,255,.055) 42%,rgba(255,255,255,.1) 50%,rgba(255,255,255,.055) 58%,transparent 80%);transform:translateX(-110%);animation:rp-suggest-shimmer 1.45s ease-in-out infinite;
}
.chat-v2-theme .main-char .rp-suggest-status{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
@keyframes rp-suggest-spin{to{transform:rotate(360deg)}}
@keyframes rp-suggest-shimmer{to{transform:translateX(110%)}}
@media(max-width:768px){
  .chat-v2-theme .main-char .rp-compose-shell .rp-suggest-row{padding:0 44px 8px!important}
  .chat-v2-theme .main-char .rp-compose-shell .rp-suggest-option{flex:0 0 auto!important;min-width:158px!important;max-width:220px!important;min-height:36px!important;padding:8px 29px 8px 11px!important;font-size:10.5px!important}
}
@media(max-width:480px){
  .chat-v2-theme .main-char .rp-compose-shell .rp-suggest-row{display:block!important;padding:0 43px 7px!important;overflow:visible!important}
  .chat-v2-theme .main-char .rp-suggest-meta{padding-bottom:4px}
  .chat-v2-theme .main-char .rp-suggest-options{gap:7px}
  .chat-v2-theme .main-char .rp-compose-shell .rp-suggest-option{min-width:154px!important;min-height:35px!important;padding:7px 28px 7px 10px!important}
}
@media(prefers-reduced-motion:reduce){
  .chat-v2-theme .main-char .rp-suggest-refresh.is-spinning svg,
  .chat-v2-theme .main-char .rp-suggest-option.is-loading:before{animation:none!important}
  .chat-v2-theme .main-char .rp-compose-shell .rp-suggest-option{transition:none!important}
}

/* Reference-proportioned roleplay composer and message tools - 2026-08-03 */
.chat-v2-theme .main-char-menu .RestartBtn,.chat-v2-theme .main-char-menu .UseBtn,.chat-v2-theme .main-char-menu .RemoveBtn{display:none!important}
.chat-v2-theme .main-char-menu{display:none!important}
.msg-stack{display:flex;flex-direction:column;align-items:flex-start;max-width:min(78%,680px);min-width:0}
.li.jend .msg-stack,.msg-action-row.is-user{align-items:flex-end}
.msg-stack>.message{max-width:100%!important;width:auto}
.msg-action-row{display:flex;align-items:center;gap:2px;margin-top:7px;min-height:36px;flex-wrap:nowrap}
.chat-v2-theme .msg-action-row .msg-action-btn{
  position:static!important;
  inset:auto!important;
  transform:none!important;
  display:grid!important;
  place-items:center!important;
  width:36px!important;
  min-width:36px!important;
  max-width:36px!important;
  height:36px!important;
  min-height:36px!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  border-radius:50%!important;
  background:transparent!important;
  color:rgba(238,232,248,.58)!important;
  opacity:1!important;
  box-shadow:none!important;
  cursor:pointer!important;
  transition:color .15s ease,background-color .15s ease,opacity .15s ease!important;
}
.chat-v2-theme .msg-action-row .msg-action-btn svg{width:18px!important;height:18px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.7!important;stroke-linecap:round!important;stroke-linejoin:round!important}
.chat-v2-theme .msg-action-row .msg-action-btn span{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.chat-v2-theme .msg-action-row .msg-action-btn:hover,.chat-v2-theme .msg-action-row .msg-action-btn:focus-visible{color:#fff!important;background:rgba(255,255,255,.07)!important;outline:none!important}
.chat-v2-theme .msg-action-row .msg-delete-btn:hover,.chat-v2-theme .msg-action-row .msg-delete-btn:focus-visible{color:#ff9dad!important;background:rgba(255,91,119,.09)!important}
.chat-v2-theme .msg-action-row .msg-action-btn.is-copied{color:#8ce1b0!important}
.chat-v2-theme .msg-action-row .msg-action-btn.is-unavailable{opacity:.42!important;cursor:help!important}
.chat-v2-theme .msg-action-row .msg-action-btn.is-unavailable:hover{opacity:.48!important;background:rgba(255,255,255,.035)!important;color:rgba(255,255,255,.72)!important}
.msg-edit-area{background:rgba(24,19,35,.96)!important;border-color:rgba(210,158,255,.16)!important}
.msg-edit-textarea:focus{border-color:rgba(215,155,255,.5)!important}
.msg-edit-save-btn{background:linear-gradient(135deg,#f08bd8,#a96dff)!important;color:#fff!important}

.chat-v2-theme .main-char .rp-compose-shell{padding:12px clamp(12px,2.7vw,28px)!important}
.chat-v2-theme .main-char .rp-compose-shell>*{width:min(100%,660px)!important}
.chat-v2-theme .rp-premium-composer{
  position:relative;
  display:flex;
  flex-direction:column;
  gap:4px;
  width:100%;
  min-width:0;
  min-height:112px;
  padding:8px;
  border:1px solid rgba(255,255,255,.10);
  border-radius:28px;
  background:rgba(36,36,36,.82);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035),0 18px 46px rgba(0,0,0,.32);
  backdrop-filter:blur(18px);
  -webkit-backdrop-filter:blur(18px);
  transition:border-color .18s ease,box-shadow .18s ease;
}
.chat-v2-theme .rp-premium-composer #AskContent{
  display:block!important;
  width:100%!important;
  min-width:0!important;
  height:56px!important;
  min-height:56px!important;
  max-height:160px!important;
  margin:0!important;
  padding:8px 5px!important;
  border:0!important;
  border-radius:17px!important;
  outline:0!important;
  resize:none!important;
  background:transparent!important;
  color:rgba(250,249,252,.96)!important;
  box-shadow:none!important;
  font:500 16px/24px "Manrope",sans-serif!important;
  scrollbar-width:thin!important;
  scrollbar-color:rgba(255,255,255,.18) transparent!important;
}
.chat-v2-theme .rp-premium-composer #AskContent:focus,
.chat-v2-theme .rp-premium-composer #AskContent:focus-visible{background:transparent!important}
.chat-v2-theme .rp-premium-composer #AskContent::placeholder{color:rgba(255,255,255,.47)!important;opacity:1!important}
.chat-v2-theme .rp-composer-toolbar{min-height:40px;display:flex;align-items:center;gap:8px;padding:0}
.chat-v2-theme .rp-mode-wrap{position:relative;flex:0 0 auto}
.chat-v2-theme .rp-mode-trigger,.chat-v2-theme .rp-toolbar-btn,.chat-v2-theme .rp-suggest-btn{
  height:40px;
  min-height:40px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  padding:0 12px;
  border:1px solid transparent;
  border-radius:999px;
  background:transparent;
  color:rgba(248,247,251,.84);
  font:650 14px/1 "Manrope",sans-serif;
  cursor:pointer;
  transition:background-color .15s ease,border-color .15s ease,color .15s ease,filter .15s ease;
}
.chat-v2-theme .rp-mode-trigger{width:60px;min-width:60px;padding:0 9px;gap:4px;background:rgba(68,68,72,.88);border-color:rgba(255,255,255,.035)}
.chat-v2-theme .rp-mode-trigger:hover{background:rgba(77,77,82,.96);color:#fff}
.chat-v2-theme .rp-mode-trigger>span{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.chat-v2-theme .rp-mode-trigger>svg:first-child,.chat-v2-theme .rp-toolbar-btn svg,.chat-v2-theme .rp-suggest-btn svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.chat-v2-theme .rp-mode-chevron{width:13px;height:13px;margin-left:-2px;fill:none;stroke:currentColor;stroke-width:1.8;transition:transform .18s ease}
.chat-v2-theme .rp-mode-trigger[aria-expanded="true"] .rp-mode-chevron{transform:rotate(180deg)}
.chat-v2-theme .rp-toolbar-btn{width:40px;min-width:40px;padding:0}
.chat-v2-theme .rp-toolbar-btn span,.chat-v2-theme .rp-suggest-btn span{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.chat-v2-theme .rp-premium-composer .rp-image-shortcut{background:#f6f4f7;color:#17171c;border-color:rgba(255,255,255,.54);box-shadow:0 5px 15px rgba(0,0,0,.16)}
.chat-v2-theme .rp-premium-composer .rp-image-shortcut:hover{background:#fff;color:#0c0c10;filter:brightness(1.02)}
.chat-v2-theme .MemoryBtn{background:rgba(255,255,255,.035);color:rgba(248,247,251,.64)}
.chat-v2-theme .MemoryBtn:hover{background:rgba(255,255,255,.07);color:#fff}
.chat-v2-theme .rp-mode-menu{position:absolute;z-index:80;left:0;bottom:50px;width:250px;padding:7px;border:1px solid rgba(255,255,255,.1);border-radius:17px;background:rgba(19,19,25,.98);box-shadow:0 20px 56px rgba(0,0,0,.48);backdrop-filter:blur(18px)}
.chat-v2-theme .rp-mode-menu[hidden]{display:none!important}
.chat-v2-theme .rp-mode-menu button{width:100%;min-height:58px;padding:8px 10px;display:grid;grid-template-columns:34px minmax(0,1fr) 18px;align-items:center;gap:10px;border:0;border-radius:12px;background:transparent;color:#ddd;text-align:left;cursor:pointer}
.chat-v2-theme .rp-mode-menu button:hover{background:rgba(255,255,255,.055)}
.chat-v2-theme .rp-mode-menu button.active{background:rgba(255,73,174,.08)}
.chat-v2-theme .rp-mode-icon{width:34px;height:34px;display:grid;place-items:center;border-radius:10px;background:rgba(255,255,255,.055);color:#d7d2dc}
.chat-v2-theme .rp-mode-icon svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.chat-v2-theme .rp-mode-menu strong,.chat-v2-theme .rp-mode-menu small{display:block}
.chat-v2-theme .rp-mode-menu strong{font:750 12px/1.2 "Manrope",sans-serif;color:#f5f4f7}
.chat-v2-theme .rp-mode-menu small{margin-top:4px;color:#7f8088;font:500 10px/1.25 "Manrope",sans-serif}
.chat-v2-theme .rp-mode-menu i{color:#ff70c2;font-style:normal}
.chat-v2-theme .rp-toolbar-spacer{flex:1 1 auto;min-width:4px}
.chat-v2-theme .rp-premium-composer .rp-suggest-btn{width:40px;min-width:40px;padding:0;color:rgba(255,255,255,.54)}
.chat-v2-theme .rp-suggest-btn:hover:not(:disabled){background:rgba(255,255,255,.055);color:#fff}
.chat-v2-theme .rp-suggest-btn:disabled{cursor:default;opacity:.38}
.chat-v2-theme .rp-suggest-btn.is-loading svg{animation:rp-wand-loading .9s ease-in-out infinite}
.chat-v2-theme .rp-suggest-btn.is-complete{color:#91e1b2}
.chat-v2-theme .main-char .main-char-input .rp-premium-composer button.submit-btn.rp-premium-send{
  position:static!important;
  inset:auto!important;
  width:40px!important;
  height:40px!important;
  min-width:40px!important;
  min-height:40px!important;
  flex:0 0 40px!important;
  margin:0!important;
  padding:0!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  border:0!important;
  border-radius:50%!important;
  background:#3a3a3f!important;
  color:#77777f!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035)!important;
  cursor:default!important;
  transition:background .18s ease,color .18s ease,filter .18s ease,box-shadow .18s ease!important;
}
.chat-v2-theme .main-char .main-char-input .rp-premium-composer button.submit-btn.rp-premium-send svg{width:20px!important;height:20px!important;fill:currentColor!important;stroke:currentColor!important;stroke-width:1.15!important;stroke-linecap:round!important;stroke-linejoin:round!important;transform:none!important}
.chat-v2-theme .main-char .main-char-input .rp-premium-composer button.submit-btn.rp-premium-send.is-ready{background:linear-gradient(145deg,#ff6ac6,#ff2aa9 62%,#d95ce4)!important;color:#fff!important;box-shadow:0 8px 22px rgba(255,43,169,.28),inset 0 1px 0 rgba(255,255,255,.30)!important;cursor:pointer!important}
.chat-v2-theme .main-char .main-char-input .rp-premium-composer button.submit-btn.rp-premium-send.is-ready:hover{filter:brightness(1.08)}
.chat-v2-theme .main-char .rp-compose-note{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.chat-v2-theme .rp-scroll-bottom{position:absolute;z-index:75;right:clamp(14px,2.2vw,28px);bottom:136px;width:42px;height:42px;padding:0;display:grid;place-items:center;border:1px solid rgba(255,255,255,.11);border-radius:50%;background:rgba(23,23,31,.94);color:#f3edf5;box-shadow:0 14px 34px rgba(0,0,0,.4);backdrop-filter:blur(12px);opacity:0;visibility:hidden;transform:translateY(9px);pointer-events:none;transition:opacity .18s ease,visibility .18s ease,transform .18s ease,background .18s ease;cursor:pointer}
.chat-v2-theme .rp-scroll-bottom.show{opacity:1;visibility:visible;transform:translateY(0);pointer-events:auto}
.chat-v2-theme .rp-scroll-bottom:hover{background:rgba(49,38,52,.98)}
.chat-v2-theme .rp-scroll-bottom svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
@keyframes rp-wand-loading{0%,100%{transform:rotate(-7deg) scale(.94);opacity:.66}50%{transform:rotate(8deg) scale(1.08);opacity:1}}

/* Roleplay composer parity with the Dating composer - 2026-08-04 */
.chat-v2-theme .main-char .rp-chat-corner-actions{
  position:fixed;top:10px;right:max(62px,calc((100vw - var(--ps-w) - 736px) / 2 + 62px));
  z-index:2001;display:flex;align-items:center;justify-content:flex-end;gap:8px;pointer-events:none;
}
#chat-topbar{pointer-events:none}
#chat-topbar .tb-pill{pointer-events:auto}
.chat-v2-theme .main-char .rp-chat-corner-actions .rp-corner-action{
  width:42px;height:42px;display:grid;place-items:center;padding:0;pointer-events:auto;
  border:1px solid rgba(255,255,255,.10);border-radius:14px;background:rgba(13,13,25,.76);
  -webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);color:rgba(247,245,250,.74);
  box-shadow:0 10px 25px rgba(0,0,0,.22),inset 0 1px 0 rgba(255,255,255,.035);
  cursor:pointer;transition:background-color .16s ease,border-color .16s ease,color .16s ease,transform .16s ease;
}
.chat-v2-theme .main-char .rp-chat-corner-actions .rp-corner-action:hover{background:rgba(35,31,47,.92);border-color:rgba(255,117,188,.28);color:#fff;transform:translateY(-1px)}
.chat-v2-theme .main-char .rp-chat-corner-actions .rp-corner-action:active{transform:translateY(0)}
.chat-v2-theme .main-char .rp-chat-corner-actions .rp-corner-action:focus-visible{outline:2px solid rgba(255,86,177,.82);outline-offset:2px}
.chat-v2-theme .main-char .rp-chat-corner-actions .rp-corner-action svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.chat-v2-theme .main-char .rp-chat-corner-actions .rp-corner-action span{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.chat-v2-theme .rp-legacy-expand-control{display:none!important}
.chat-v2-theme .main-char .rp-corner-action .rp-fullscreen-collapse{display:none}
body.full-screen-mode .main-char .rp-corner-action .rp-fullscreen-expand{display:none}
body.full-screen-mode .main-char .rp-corner-action .rp-fullscreen-collapse{display:block}
body.full-screen-mode .main-char .rp-fullscreen-shortcut{color:#fff;border-color:rgba(255,117,188,.34);background:rgba(35,31,47,.92)}

.chat-v2-theme .main-char .rp-compose-shell{padding:12px clamp(14px,2.7vw,28px) 16px!important}
.chat-v2-theme .main-char .rp-compose-shell>.rp-premium-composer{width:min(100%,574px)!important}
.chat-v2-theme .rp-premium-composer{
  min-height:106px!important;gap:8px!important;padding:8px!important;align-items:stretch!important;
  border-color:rgba(255,255,255,.10)!important;border-radius:28px!important;background:rgba(36,36,36,.80)!important;
  box-shadow:0 4px 24px rgba(0,0,0,.15),inset 0 1px 0 rgba(255,255,255,.025)!important;
}
.chat-v2-theme .rp-premium-composer #AskContent{
  flex:0 0 auto!important;height:40px!important;min-height:40px!important;max-height:136px!important;
  padding:8px 4px!important;border:0!important;border-radius:6px!important;background:transparent!important;
  box-shadow:none!important;color:rgba(250,249,252,.96)!important;font:500 16px/24px "Manrope",sans-serif!important;
}
.chat-v2-theme .rp-premium-composer #AskContent:focus,.chat-v2-theme .rp-premium-composer #AskContent:focus-visible{background:transparent!important;border:0!important;box-shadow:none!important}
.chat-v2-theme .rp-premium-composer #AskContent::placeholder{color:rgba(255,255,255,.47)!important}
.chat-v2-theme .rp-composer-toolbar{width:100%!important;min-height:40px!important;gap:8px!important}
.chat-v2-theme .rp-mode-trigger{background:#353536!important;color:#fafafa!important}
.chat-v2-theme .rp-mode-trigger>svg:first-child{fill:currentColor!important;stroke:none!important}
.chat-v2-theme .rp-mode-trigger .rp-mode-chevron{fill:none!important;stroke:currentColor!important}
.chat-v2-theme .rp-premium-composer .rp-suggest-btn{width:40px!important;min-width:40px!important;height:40px!important;padding:0!important;background:transparent!important;color:rgba(255,255,255,.54)!important}
.chat-v2-theme .rp-premium-composer .rp-suggest-btn:hover:not(:disabled){background:rgba(255,255,255,.055)!important;color:#fff!important}
.chat-v2-theme .main-char .main-char-input .rp-premium-composer button.submit-btn.rp-premium-send{
  width:40px!important;height:40px!important;min-width:40px!important;min-height:40px!important;flex:0 0 40px!important;
  border:0!important;border-radius:50%!important;background:linear-gradient(145deg,#ff6ac6,#ff2aa9 62%,#d95ce4)!important;
  color:#fff!important;box-shadow:0 8px 22px rgba(255,43,169,.28),inset 0 1px 0 rgba(255,255,255,.30)!important;
}
.chat-v2-theme .main-char .main-char-input .rp-premium-composer button.submit-btn.rp-premium-send:disabled{background:#3a3a3f!important;color:#77777f!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.035)!important}
.chat-v2-theme .main-char .main-char-input .rp-premium-composer button.submit-btn.rp-premium-send svg{width:20px!important;height:20px!important;fill:currentColor!important;stroke:currentColor!important;stroke-width:1.15!important;transform:none!important}

@media(max-width:740px){
  .chat-v2-theme .main-char .rp-chat-corner-actions{top:66px;right:58px}
  .chat-v2-theme .main-char .rp-chat-corner-actions{gap:6px}
  .chat-v2-theme .main-char .rp-chat-corner-actions .rp-corner-action{width:38px;height:38px;border-radius:12px}
  .chat-v2-theme .main-char .rp-chat-corner-actions .rp-corner-action svg{width:19px;height:19px}
  .chat-v2-theme .main-char .rp-compose-shell{padding:9px 10px 11px!important}
  .chat-v2-theme .rp-premium-composer{min-height:104px!important;gap:6px!important;padding:8px!important;border-radius:26px!important}
  .chat-v2-theme .rp-premium-composer #AskContent{height:40px!important;min-height:40px!important;max-height:136px!important;padding:7px 4px!important}
  .chat-v2-theme .rp-composer-toolbar{gap:6px!important}
}
@media(max-width:430px){
  .chat-v2-theme .main-char .rp-chat-corner-actions{right:56px}
  .chat-v2-theme .main-char .rp-compose-shell{padding-left:8px!important;padding-right:8px!important}
  .chat-v2-theme .rp-premium-composer{min-height:104px!important;border-radius:24px!important}
  .chat-v2-theme .rp-mode-trigger{width:58px!important;min-width:58px!important}
}
@media(max-width:740px){
  .msg-stack{max-width:88%}
  .chat-v2-theme .main-char .rp-compose-shell{padding:8px 8px 9px!important}
  .chat-v2-theme .rp-premium-composer{min-height:104px;padding:7px;border-radius:23px}
  .chat-v2-theme .rp-premium-composer #AskContent{height:54px!important;min-height:54px!important;padding:7px 5px!important;font-size:16px!important}
  .chat-v2-theme .rp-composer-toolbar{gap:6px}
  .chat-v2-theme .rp-mode-trigger{width:58px;min-width:58px;height:40px;padding:0 8px}
  .chat-v2-theme .rp-toolbar-btn,.chat-v2-theme .rp-suggest-btn,.chat-v2-theme .rp-premium-send{width:40px!important;min-width:40px!important;height:40px!important;min-height:40px!important}
  .chat-v2-theme .rp-mode-menu{width:min(250px,calc(100vw - 32px))}
  .chat-v2-theme .rp-scroll-bottom{right:12px;bottom:128px}
  .chat-v2-theme .msg-action-row .msg-action-btn{width:34px!important;min-width:34px!important;max-width:34px!important;height:34px!important;min-height:34px!important}
}
@media(prefers-reduced-motion:reduce){.chat-v2-theme .rp-suggest-btn.is-loading svg{animation:none}.chat-v2-theme .rp-scroll-bottom,.chat-v2-theme .rp-mode-chevron{transition:none}}

/* Measured composer proportions shared with Dating chat. */
.chat-v2-theme .main-char .rp-compose-shell{
  padding:12px clamp(14px,2.7vw,28px) 16px!important;
  width:min(100%,736px)!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
.chat-v2-theme .main-char .rp-compose-shell>*{
  width:min(100%,574px)!important;
}
.chat-v2-theme .rp-premium-composer{
  min-height:106px;
  gap:8px;
  border-color:rgba(255,255,255,.10);
  background:rgba(36,36,36,.80);
  box-shadow:0 4px 24px rgba(0,0,0,.15),inset 0 1px 0 rgba(255,255,255,.025);
}
.chat-v2-theme .rp-premium-composer #AskContent{
  flex:0 0 auto!important;
  height:40px!important;
  min-height:40px!important;
  max-height:136px!important;
  padding:8px 4px!important;
  border-radius:6px!important;
  font-size:16px!important;
  line-height:24px!important;
}
.chat-v2-theme .rp-composer-toolbar{
  min-height:40px;
  gap:8px;
}
.chat-v2-theme .rp-mode-trigger{
  background:#353536;
  color:#fafafa;
}
.chat-v2-theme .rp-mode-trigger>svg:first-child{
  fill:currentColor;
  stroke:none;
}
.chat-v2-theme .rp-mode-trigger.is-image>svg:first-child{
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
}
.chat-v2-theme .rp-mode-trigger .rp-mode-chevron{
  fill:none;
  stroke:currentColor;
}
.chat-v2-theme .msg-action-row{gap:4px}
.chat-v2-theme .msg-action-row .msg-action-btn{
  color:rgba(250,250,250,.95)!important;
}
.chat-v2-theme .msg-action-row .msg-action-btn.is-unavailable{
  color:rgba(255,255,255,.70)!important;
  opacity:.74!important;
}

@media(max-width:740px){
  .chat-v2-theme .main-char .rp-compose-shell{padding:9px 10px 11px!important}
  .chat-v2-theme .rp-premium-composer{min-height:104px;gap:6px;padding:8px;border-radius:26px}
  .chat-v2-theme .rp-premium-composer #AskContent{height:40px!important;min-height:40px!important;max-height:136px!important;padding:7px 4px!important}
  .chat-v2-theme .rp-composer-toolbar{gap:6px}
}

@media(max-width:430px){
  .chat-v2-theme .main-char .rp-compose-shell{padding-left:8px!important;padding-right:8px!important}
  .chat-v2-theme .rp-premium-composer{min-height:104px;border-radius:24px}
  .chat-v2-theme .rp-premium-composer #AskContent{height:40px!important;min-height:40px!important}
  .chat-v2-theme .rp-mode-trigger{width:58px;min-width:58px}
}

@media(max-width:740px){
  body.chat-v2-theme .three-col-layout{
    width:100%!important;
    padding-left:0!important;
  }
  body.chat-v2-theme .three-col-layout>.main-char,
  body.chat-v2-theme .three-col-layout .main-width{
    width:100%!important;
    max-width:100%!important;
    margin-left:0!important;
  }
  body.chat-v2-theme .main-char .main-char-input{
    left:0!important;
    right:0!important;
    width:100%!important;
  }
}

/* Keep the Roleplay mobile proportions aligned with Dating after legacy overrides. */
@media(max-width:740px){
  .chat-v2-theme .main-char .rp-compose-shell{padding:9px 10px 11px!important}
  .chat-v2-theme .rp-premium-composer{min-height:104px!important;gap:6px!important;padding:8px!important;border-radius:26px!important}
  .chat-v2-theme .rp-premium-composer #AskContent{height:40px!important;min-height:40px!important;max-height:136px!important;padding:7px 4px!important}
  .chat-v2-theme .rp-composer-toolbar{gap:6px!important}
}
@media(max-width:430px){
  .chat-v2-theme .main-char .rp-compose-shell{padding-left:8px!important;padding-right:8px!important}
  .chat-v2-theme .rp-premium-composer{min-height:104px!important;border-radius:24px!important}
}

/* Immersive composer surface: keep the scene visible beside the centered input. */
.chat-v2-theme .main-char .main-char-input.rp-composer-enabled{
  background:transparent!important;
  border-top-color:transparent!important;
  box-shadow:none!important;
}
.chat-v2-theme .main-char .rp-compose-shell{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
.chat-v2-theme .main-char .rp-premium-composer{
  box-shadow:0 16px 42px rgba(0,0,0,.34),0 0 0 1px rgba(255,255,255,.04),inset 0 1px 0 rgba(255,255,255,.035)!important;
}
.chat-v2-theme .bg-tavern-chat-box{
  height:0!important;
  background:transparent!important;
}

/* Fullscreen chat must use the complete viewport while keeping the composer visible. */
body.chat-v2-theme.full-screen-mode .three-col-layout{
  padding-left:0!important;
}
body.chat-v2-theme.full-screen-mode .three-col-layout>.main-char{
  width:100%!important;
}
body.chat-v2-theme.full-screen-mode .main-char .main-char-input{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  left:0!important;
  right:0!important;
  width:100%!important;
}
body.chat-v2-theme.ct-fullscreen-mode .ct-app{
  padding-left:0!important;
}
body.chat-v2-theme .ct-app.ct-fullscreen-mode{
  padding-left:0!important;
}
body.chat-v2-theme.ct-fullscreen-mode .ct-app .ct-chat{
  min-width:0!important;
  width:100%!important;
}
body.chat-v2-theme .ct-app.ct-fullscreen-mode .ct-chat{
  min-width:0!important;
  width:100%!important;
}
body.chat-v2-theme.ct-fullscreen-mode .ct-app .ct-form{
  visibility:visible!important;
  opacity:1!important;
}
body.chat-v2-theme .ct-app.ct-fullscreen-mode .ct-form{
  visibility:visible!important;
  opacity:1!important;
}
body.chat-v2-theme.full-screen-mode #primarySidebar,
body.chat-v2-theme.ct-fullscreen-mode #primarySidebar,
body.chat-v2-theme:has(.ct-app.ct-fullscreen-mode) #primarySidebar{
  transform:translateX(-110%)!important;
  opacity:0!important;
  pointer-events:none!important;
}

/* Dating full screen: the character panel must leave the grid entirely. */
body.chat-v2-theme .ct-app.ct-fullscreen-mode{
  grid-template-columns:minmax(0,1fr)!important;
  grid-template-rows:minmax(0,1fr)!important;
}
body.chat-v2-theme .ct-app.ct-fullscreen-mode .ct-panel{
  display:none!important;
}
body.chat-v2-theme .ct-app.ct-fullscreen-mode .ct-chat{
  grid-column:1!important;
  grid-row:1!important;
  min-width:0!important;
  min-height:0!important;
  width:100%!important;
  height:100%!important;
}
